[SOLVED] Windows vice_x64 core - 2 players?

Hi guys,

I really love the new vice_x64 core (using it on win10 x64), especially the possibility to swap discs, swap joystick ports and map key presses to a gamepad. Everything would be perfect … if only I could find out how to control a second player for couch co-op.

I literally tried everything. But I just can’t get the second player to work:

  • messing around with vicerc0
  • messing around with “VICE x64.rmp” file
  • messing around with EVERY core option (retropad, vice keyboard, vice joystick …)
  • playing around with retroarch-core-options
  • placing system\data folder -> then even player 1 didn’t work anymore
  • tried retroarch 1.6.9, 1.7.0, several nightly builds, x86 and x64 versions
  • tried to use a c64.cfg file as a parameter for the core (-L vice_x64_libretro.dll x64 -c x64.cfg … and so on)
  • even installed original vice 3.0 emulator on different machine, configured 2 joysticks and then tried to implement settings to vice_x64 core
  • I can’t even get the second player with keyboard controls to work (and then using xpadder for example= - just nothing happens)
  • asking google for hours and hours again - nobody else seem to have the problem I have!

I cannot control player 2 (except by swapping jaystick ports - but I’m tired of playing with myself :wink: )

Please, can anyone help me? I’m completely wasted after messing around more than 10 hours right now …

Am I really that dumb? What am I doing wrong? How is it supposed to work?

How do you do this? Thanks.

I use vice’s integrated capability to handle flipdisks. I will give you an example for Summer Games II. This game has 2 disks and you can also play Summer Games 1 events, so there are 3 disks to flip:

My disk images are named SUMMER1A.G64, SUMMER2A.G64 and SUMMER2B.G64

Now you have to create a textfile with the extension “.vfl” which stands for “vice flip list”. Let’s call it “summergames.vfl”

Put these 5 lines into summergames.vfl:

# Vice fliplist file
UNIT 8
SUMMER1A.G64
SUMMER2A.G64
SUMMER2B.G64

Now I start Retroarch using the following command line options:

retroarch -L vice_x64_libretro.dll "x64 -flipname SummerGames.vfl summer2a.g64"

(hint: the latter “summer2a.g64” option tells vice, which disk image will be the first one to use)

The only thing left to do is to adjust your core settings within retroarch:

Quick Menu => Options =>

Retro joy0 : enabled

Controller0 type : joystick

RetroPad L : RETROK_KP_MINUS

RetroPad R : RETROK_KP_PLUS

With these options I map the function “previous disk” to the left shoulder button (RetroPad L) and “next disk” to the right shoulder button. You can of course choose any other button for the mapping :slight_smile:

I hope this will work for you as it does for me. Cheers, Frenki.

PS: I have set up an instance of retroarch for every of my favourite games to make them 100% portable and optimized for the game with all keypresses needed. I then start the games with a batch file including the command line options mentioned above. If you want to start the vice core within the retroarch gui, you might have to create a game options file. But I haven’t tried this yet …

Hi, thanks for the clear explanation on how to use multigame disk games. My question is how did you know those keyboard shortcuts (KP_MINUS, KP_PLUS) are the right ones to flip disks. Is there a list of useful shortcuts for Vice?

Thanks in advance

1 Like

Hi CafeteroCordoba, sorry, I couldn’t find a list of shortcuts, too. I just tested the default control options for the vice core and read some forums. As far I discovered:

RETROK_KP_DIVIDE: Open Vice GUI

RETROK_KP_F9: Open Virtual Keyboard

RETROK_KP_MULTIPLAY: Swap Joystick Ports

RETROK_KP_PLUS: Flip disc next

RETROK_KP_MINUS: Flip disc previous

Everyone is welcome to complete the list. I would especially be interested if there’s a shortcut for savestate/loadstate (=ALT-S and ALT-L in the standalone version of winvice) as the official libretro savestates aren’t supported by the core yet.

By the way: GOOD NEWS! My problem with getting player 2 to work wasn’t lack of knowledge, but just a missing feature from the vice core itself. Yesterday a new version of the 32-bit version of vice_x64_libretro has been released: [https://buildbot.libretro.com/nightly/windows/x86/latest/] Usually I use RetroArch 64bit, but the 64bit-core of vice hasn’t been updated since december, so I installed the 32 bit version and the most recent core, and voila: it finally works :smiley:

Cheers.

1 Like

Ah, very good news. It’s a shame SaveStates are not implemented yet. :slight_smile:

1 Like

Thanks. This topic is a nice tutorial on how to configure Retroarch with the vice_x64_libretro core. When people say that save states aren’t supported on the Vice core does it also mean that in-game saves can’t be made? Was thinking about firing up some old great RPGs I played on the C64 way back when like the Ultimas, Dragon Wars and Neuromancer (actually an adventure game) but I would’t bother if Saves can’t be made at all.

Hey Jack, savestates have nothing to do with ingame saves. Those should work, I guess. But I haven’t tested it yet. I assume you need disk-based games (.d64), so that the game is able to write its saves to the disk. Usually you need a blank disk (not the disk with the game prg), so you have to swap first before saving. Eventually I will try ingame saves with Racing Destruction Set. This game consists of 2 disks and includes a track editor, so it definitely needs an ingame save function :wink:

I tested in-game saves with Neuromancer (5 disks) on Vice x64 and it worked fine. Was able to completely exit the game/retroarch then go back in and load the game normally so in-game saves work at least. I wonder where it puts the save files. Possibly in the c64 roms folder? I’m happy that at least in-game saves work so I can save in games when you were meant to save. I’ve always felt ambivalent about emulator Save States. They’re convenient but they always felt like a cheat. Which is not to say that I don’t use them because I most certainly do. Haha.

I’m really happy with the VICE x64 core. I have my Retroarch viewports modified to fill my Vizio 43" big screen TV (with borders on either side of course) and with shaders it looks like a dream. Disk loading times still suck but at least there’s warp. Right now I’m trying to figure out how to re-map the right trigger on my Xbox 360 emulated DS4 controller. By default, Vice x64 uses it as some kind of break key. I’d like to disable that and add my own. Do you know the default Vice x64 gamepad keys?

Hi, just for curiosity: how do you warp loading times in the VICE x64 core? also which shaders do you use?

Hello,

As a new member I’m unable to start a new thread therefore replying to this.

I’m very new to emulators and having trouble with getting the joystick to work on the C64 games. I’m using Launchbox, with Retroarch as the emulator. The core is set to Vice x64 3.3. If I press F11 whilst in the game the virtual keyboard appears and I can use the joystick to move the cursor. I’ve also tried switching the joystick ports from here but still nothing.

Can anyone help?

The joystick works on the MAME, SNES, Megadrive etc.