Sam’s Journey with two fire buttons

I figured out how to play Sam’s Journey on the Commodore 64 using two fire buttons! One as a normal fire button and another for jumping.

C64 joysticks only have one fire button so jumping up in platform games requires you press up on the joystick. Back in the day we knew no better and did our best using the directional movements. It’s not very precise as it’s easy to slip into left and right too. Pressing a second button to jump was a luxury NES owners had! C64GS owners had a joystick with 2 separate fire buttons but I think there was only ever one game that took advantage of that feature.

Unfortunately you’ll have to use the Vice C64 emulator, Virtual C64, or another C64 emulator that allows you to map keys to joystick actions.

First of all, open the joystick settings in Vice. Here’s the one from version 3.1.

Assign a keyset to joystick 2. I used the keys T, G, “,” and “.” and the right CTRL to fire. Sam’s Journey actually plays reasonably well using those keys if you don’t want to go any further.

However, if you want to use a controller you’ll need another program to map those keys to controller actions. On MacOS I found Enjoyable, a free application that allows you to map controller buttons and other inputs to keyboard keys or mouse movements.

I simply assigned left, right and down on the d-pad to the correct keys, and then two fire buttons to CTRL (fire) and T (up) respectively and it worked!

The game is definitely more enjoyable but it’s just as hard as before. I could have sworn I ran out of lives in the past to be thrown back to the start of the level. Now I kept getting put back at the last checkpoint, which is an improvement I have to admit as I died quite often. 🙂

VirtualC64 for Mac OS X

VirtualC64 is a new Commodore 64 emulator for Mac OS X. It’s a promising project, let down by the fact that it’s still in beta but by the looks of things development is moving at a steady pace.

When you first run the emulator it will ask you for C64 roms: basic, kernal, chargen and vc1541. Ironically, you can find all these roms inside Vice, another C64 emulator. Look in /Applications/VICE.app/Contents/Resources/ROM/. The 1541 ROM is DRIVES/dos1541.

Loading a game or demo is as easy as dragging the d64 or t64 image into VirtualC64. When you do you’ll see a dialog like this.

picture-6

“Flash file into memory” works great for single load programmes but multiload could be a problem. I tried Armalyte. Mounting the d64 as a disk didn’t work. I couldn’t type anything. Loading the first file on the disk by flashing it brought up the crack intro but failed to load. The neat integrated debugger (click “Inspect”) showed the emulator had died doing jsr $2020 and unfortunately at 2020 was another jsr … ($20 is the character code for a space if memory serves, and the machine code for jsr was $20, so memory was full of spaces!)

picture-3

Blue Max worked much better, as did a 3D Pool game I tried. the crack by Remember included the documentation and again using the debugger I watched as the programme checked for the various key presses. Geeky I know but it brought a smile of recognition to my lips. Here’s that debugger in all it’s glory. Anyone familiar with the C64 should recognise the code beginning at 1AA0. (I had to look up what D016 does. It’s the screen mode. I had completely forgotten. It’s only been 16 years.)

picture-10

One thing it has going for it over Vice, is a real fullscreen mode. The current version of Vice uses some dodgy resolution changing in Linux (that I rarely got to work properly without screwing up my desktop) and I couldn’t get to work in Mac OS X at all. Fire this baby up in fullscreen mode and you’ve got your very own C64 laptop! Cool or what eh?

As luck would have it VirtualC64 has blown a fuse just as I finish this post. If you have a usb joystick plugged in and activated in port 2 it does strange things. First the keyboard wouldn’t work, and flashing a file didn’t run it automatically. Then the keyboard sort of worked but the left arrow character appeared for most key presses. Odd stuff. Unplugging the joystick and restarting the emulator fixed that problem.
Even my Bits ‘n’ Bobs demo worked in it! (Bah, all my screenshots failed. They only show white. I wonder if the emulator does strange things to the Mac while emulating mixed video modes? I mixed character and video modes in the screens I tried to capture, ah well.)

VirtualC64 is a very promising C64 emulator, and it’s GPL too! I’ll certainly be keeping an interested eye on it, and I wish Dirk and the other project members the best of luck with it.