[TUTORIAL] Painless Apple ][ game emulation
VictimRLSH last edited by
First off, most Retropie users prefer games they can start directly from the Emulation Station game carousel with a controller without the use of a keyboard. This is especially true if your Pi build is portable and you don't want to lug a keyboard around with it. This IS possible, but it is far from painless. So, if you want EASY Apple emulation, you're going to need a keyboard, at least to set things up.
If you ARE going to use something to bind controller keys to keyboard functions, here are some recommended settings. These will work for most single-disk arcade games, as keyboard controls were more or less standard A,Z, arrows, and space bar.
Select button - map to Enter key. Some title screens use Enter to continue
Start button - map to Space Bar. Most title screens use Space Bar to continue
Directional pad - map left and right to respective arrow keys, map up to A and down to Z.
Y button - also map to Space Bar. The analog joystick/paddle emulation is already using the A and B buttons.
Additional controller buttons such as triggers or shoulder buttons can be mapped to Pause/break (pauses Linapple), F11 (save state), F12 (load state), and most importantly F10 (exit Linapple).
These settings should allow you to get past most title screens and into the game without a keyboard.
Before trying to play Apple games, you need to do some prep work on the disk images, otherwise navigating through them is going to be a real mess.
Step 1: Clean up your Apple roms folder. If you have already moved eight zillion rom files in here just so you can see something like 3000+ games available from the system select carousel in Emulation Station, you will have to clean things up a bit. Linapple will hang up if you get thousands of files in here, and swapping disks for multi-disk games will turn into a nightmare because Linapple always starts file selection at the top of the list and you will have to scroll through EVERYTHING before finding the next disk to swap. Create another folder on an external drive or elsewhere on your SD card to store Apple disk images you won't be using anytime soon.
Step 2: Download a blank disk image. Google search for Apple Blank Dos Disk. Unzip this so you have a .dsk file with the blank disk image. You will be using this a LOT. Linapple can't create a blank disk image on its own.
Step 3: Create a separate folder in the Apple roms folder for each game you want to play. This will also reduce clutter, especially from multi-disk games. Unzip your .dsk images before putting them in the folder.
Step 4: After you put the unzipped .dsk images in the game folders, you need to simplify your file names, otherwise they will be cut off and you might not be able to tell which disk you need to swap in. "Spizzy The Spazoid III - Expedition to the Depths of Spazville (disk 1 of 2) (Side B) (OUTER SPAZVILLE) [Cracked by Crimson Swirls of Congealing Gore].dsk" can be renamed to Spizzy3 (OUTER SPAZVILLE).dsk. That way when the game asks to insert the OUTER SPAZVILLE disk, it won't look like all the rest because the ridiculously long file name got cut off. This is another reason to have each game in its own folder. The filename can simply be OUTER SPAZVILLE.dsk if it is already in a folder identifying the game.
Step 5: If the game requires you to create a save game or scenario disk (such as the Wizardry series will require) put a copy of the blank disk in the directory for this purpose. You can rename it accordingly if you want.
Step 6: If you want to be able to Save State in a particular game, put ANY small file in the folder with the game, then rename that file to SaveState. It doesn't matter what kind of file it is, Linapple will overwrite it with the save state, we just need a filename to save to, and Linapple will NOT allow you to create one from the emulator. If you quick-save a save state, Linapple only keeps ONE save state file for EVERYTHING, so you will only be able to quick load the last save state file saved. Prepare your save state file by starting up the game, then using F11 to bring up the save state function. Select your file to save state to. Proceed into the game until you get to a screen change, then hit F12 and load your save state file to test it.
These steps will prepare your games to run with a minimum of confusion. Simply choose the game folder and boot disk from Emulation Station to start your game. F1 will bring up the help menu, and F3 will swap disks. F10 to exit Linapple and return to Emulation Station. Shift F11 will quick save state, Shift F12 to load it. F11/F12 without the shift will allow you to use the save state file you prepared earlier that will be exclusive to that game.
NOTE: Games written in Apple PASCAL, such as the first three Wizardry installments, MUST have the disk write-protected in order to boot, otherwise they will hang up on boot. Linapple does not emulate write-protect like many other Apple emulators, you'll need to do this yourself. If you are using Windows Explorer, just right click on the file name, go to PROPERTIES and click on the Security tab and EDIT permissions. Remove WRITE permissions from all groups on the boot disk image. This should allow the game to start. If any game hangs on boot with a white block cursor at the top of the screen, trying write protecting the boot disk image in this fashion. Linux gurus can use the CHMOD function from the Raspbian shell command line and remove write permission from all groups.
VictimRLSH last edited by
BTW, steps 1-5 will reduce the grief from many other types of emulators as well, VICE in particular.