Jetpac on ZX Spectrum
-
Has anyone got Jetpac to work? I cant get it to go past the boot screen where it says Jetpac is loading.
-
@Yorick According to World of Spectrum, Jetpac runs on a 16k machine. By default, lr-fuse, which I assume is you are using, runs the the 128k machine - you will see the line
fuse_machine = "Spectrum 128K"
in the file/opt/retropie/configs/all/retroarch-core-options.cfg
.If you change to 48k machine type in the RGUI, then Jetpac will run. Now this will be a pain to change between 48k and 128k machine for newer games that require the extra memory.
This is my solution. It may be not be optimum but it works.
In the folder
/opt/retropie/configs/all/
, create a text file calledretroarch-core-options-fuse48k.cfg
and add the following line:fuse_machine = "Spectrum 48K"
Now we need to make sure Jetpac uses the 48k machine so in the ZX Spectrum roms folder, create a text file called
Jetpac.tzx.cfg
. The file name must match the tape so you may have to amend. In this file, add the following line:core_options_path = /opt/retropie/configs/all/retroarch-core-options-fuse48K.cfg
Save and Jetpac should now run. If you take a look at
retroarch-core-options-fuse48k.cfg
after launching Jetpac, you'll notice RetroArch will have added extra lines. It's best to leave these.For any other games that run a 16k machine such as Deathchase, all you need to do is copy the cfg file and rename it so that it matches the tape.
-
@dudleydes Awesome, I was wondering about this as well. I'm not at my cabinet just now but I'm hoping I can specify the control mapping in that cfg file too - the problem I have with Jetpac is that it uses fixed keys, or Kempston stick, but other spectrum games allow redefined keys (e.g. Chuckie Egg) I wanted to keep the option to redefine the keys to my joystick for some games, but have the joystick behave like a Kempston for others.
-
@dudleydes @GtBFilms Or it can be done the easy way. Set the default emulator as fuse-128k and then when loading Jetpac press a key to open the runcommand menu and choose option 2 and set to run this rom with fuse-48k.
-
@windale I believe those options are available if you are using standalone version of fuse, not the libretro core.
@GtBFilms The way I have my Speccy games setup is that, to make Kempston the default joystick in lr-fuse, I have added the following line to
/opt/tetropie/configs/all/zxspectrum/retroarch.cfg
:input_libretro_device_p1 = "513"
I've not been able to get my PS3 controller working in Chuckie Egg using lr-fuse so I use ZEsarUX instead. It lets me use config files to map the keyboard to a gamepad which I don't believe is possible in lr-fuse.
Incidentally, I have found this issue to be relevant to all games from Ultimate Play the Game, such as Atic Atac and The Great Escape, even if they can run on a 48k machine.
-
@dudleydes Yeah, I don't use lr-fuse because it's horribly outdated. It's still based on Fuse 1.1 and the porter said he's not bothered about updating it till 2017 at the earliest. Standard Fuse is v1.3, has better compatibility, autoboots TRDOS disks and supports the Recreated ZX Spectrum Keyboard.
-
Thanks for the replies! I have got Jetpac running now, however my controller doesn't work in it. I am using XBOX 360 wireless controller and I set it up as Kempston joystick which works fine in other games such as Manic Miner. I can get to an options screen by pressing the B button which has an option for selecting Joysticks which I set to Kempston but it didn't help.
-
@Yorick How did you set up your controller as Kempston?
The default joystick emulated in lr-fuse is Cursor. You can play Manic Miner with the arrow keys which explains why your controller works here.
To change the default to Kempston, you can either change the joystick emulated in RGUI or, for a permanent solution, you can edit
/opt/tetropie/configs/all/zxspectrum/retroarch.cfg
as described in my previous post. -
@dudleydes I changed the line in /opt/retropie/configs/all/zxspectrum/retroarch.cfg to input_libretro_device_p1 = "513" like you suggested.
Then in the Jetpac game there is an option menu called peripherals with an option to select Kempston where you have to press space bar to select it and then enter to save settings.
-
@Yorick I'm not sure about the peripherals menu you are speaking about.
This is the menu I see
https://www.mobygames.com/game/zx-spectrum/jetpac/screenshots/gameShotId,87771/If I press SELECT on my controller, then a keyboard overlay appears. I can then use my controller to "press" 4 to select Kempston and 5 to start a game.
-
My Xbox controller doesn't work at that screen so I press 4 on my Keyboard to select Kempston and then 5 to start game. Then the game runs but my controller still doesn't work except for the B button which opens a menu where you can select option-peripherals and activate Kempston by pressing space and enter.
-
@Yorick I cannot see the "option-peripherals" - can you confirm which emulator you are using?
-
lr-fuse and run Rom as 48k
-
@Yorick I'm stumped! All I can suggest is to test with other games.
-
Sorry to dredge up an old topic, but hopefully this is a quick fix.
I've updated my /opt/retropie/configs/zxspectrum/retroarch.cfg to add
input_libretro_device_p1 = "513"
And JETPAC now works fine with Kempston joystick. BUT my other favourite game is Chuckie Egg, which doesn't support Kempston.
So for that game I need to switch the mapping to Kempston off, and go back to the default cursor joystick (which works fine).
On the runcommand window there is an option to 'edit custom Retroarch.cfg config for this RoM' but when I type the original contents of retroarch.cfg in there, the joystick still appears to be mapped as a Kempston.
Is there another code I need to explicitly set to revert back to a cursor joystick just for this one particular game?
Thanks
-
@gtbfilms I'm pretty sure that in the RGUI you can just save a game specific configuration file that'll do the trick. I think that's how I have mine set up.
-
@dudleydes said in Jetpac on ZX Spectrum:
@Yorick According to World of Spectrum, Jetpac runs on a 16k machine. By default, lr-fuse, which I assume is you are using, runs the the 128k machine - you will see the line
fuse_machine = "Spectrum 128K"
in the file/opt/retropie/configs/all/retroarch-core-options.cfg
.If you change to 48k machine type in the RGUI, then Jetpac will run. Now this will be a pain to change between 48k and 128k machine for newer games that require the extra memory.
This is my solution. It may be not be optimum but it works.
In the folder
/opt/retropie/configs/all/
, create a text file calledretroarch-core-options-fuse48k.cfg
and add the following line:fuse_machine = "Spectrum 48K"
Now we need to make sure Jetpac uses the 48k machine so in the ZX Spectrum roms folder, create a text file called
Jetpac.tzx.cfg
. The file name must match the tape so you may have to amend. In this file, add the following line:core_options_path = /opt/retropie/configs/all/retroarch-core-options-fuse48K.cfg
Save and Jetpac should now run. If you take a look at
retroarch-core-options-fuse48k.cfg
after launching Jetpac, you'll notice RetroArch will have added extra lines. It's best to leave these.For any other games that run a 16k machine such as Deathchase, all you need to do is copy the cfg file and rename it so that it matches the tape.
Hello Dudleydes,
Apologies for digging this post from it's grave, but I'm struggling trying to get your fix to work for loading 48K Roms in LR-Fuse? Is there any chance you could give me some guidance?
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.