WHDLoad Support in FS-UAE Launcher

FS-UAE Launcher has special support for running individually zipped (or compressed with LHA) WHDLoad Games. It will even store save-games in the state directory.

Alternative Ways to use WHDLoad

This page contains details about how the WHDLoad feature is manually enabled, there are two other ways to use WHDLoad games in FS-UAE:

  • Use the online game database (recommended), this will give you automatic support for running WHDLoad games, no configuration needed.
  • Create an Amiga Workbench environment on an emulated hard drive and install the WHDLoad package and games manually.

Enabling the WHDLoad Feature

This feature is enabled by:

  • Inserting a zip/lha file containing a WHDLoad game as the primary hard drive.
  • Write the name of the slave in the WHDLoad Arguments text box, optionally along with slave options.
  • Just write the full name of the slave only, do not include the directory name.

You should currently not use save states when you use this feature. The temporary creation of hard drives will confuse the save state system

Example WHDLoad Arguments:

Lotus2.slave

The following automatically happens when WHDLoad arguments is specified and you start the game:

  • The contents of the zip/lha file is unpacked to a temporary folder, which is what is really used as the primary hard drive in FS-UAE.
  • WHDLoad is downloaded (if not already downloaded) and merged into the temporary drive.
  • Kickstart images are copied into the temporary drive -needed for several WHDLoad slaves.
  • If any modified files (from an earlier launch) are found in the state dir, these are copied/merged into the temporary drive.
  • The slave is located and a startup-sequence file is created to boot the WHDLoad game.
  • The contents of the temporary drive is analyzed and checksummed, so any modified files can be saved to the state dir when FS-UAE is done running.

Here is a more advanced example of WHDLoad Arguments, showing how to specify slave options:

Lotus2.slave PRELOAD BUTTONWAIT CUSTOM1=1 CUSTOM2=1

Details Regarding the Temporary Drive

You don’t need to read the following information unless you are interested in the exact details on how the WHDLoad support is implemented.

First of all, the zip/lha file containing the game is unpack to the temporary drive, and then a routine is performed to transform this into a bootable system. At the time of writing, the following files are downloaded and copied into the drive:

Devs/Kickstarts/kick40068.A1200.RTB
Devs/Kickstarts/kick34005.A500.RTB
Devs/Kickstarts/kick40068.A4000.RTB
C/WHDLoad

The following kickstart files are copied from your kickstart directory if they are available (matched by checksum, not names):

Devs/Kickstarts/kick34005.A500
Devs/Kickstarts/kick40068.A1200
Devs/Kickstarts/kick40068.A4000

The following file is populated with some default values:

S/WHDLoad.prefs

The registration key (if found) is copied to:

S/WHDLoad.key

SetPatch from Workbench 3.0 is copied, provided that a Workbench 3.0 disk is indexed by the file database function:

C/SetPatch

Finally, the startup sequence is written to:

S/startup-sequence

The startup sequence consists of starting WHDLoad with the slave, followed by running uae-configuration SPC_QUIT 1 to quit the emulation when the slave is done running.

Registered WHDLoad

If Documents/FS-UAE/WHDLoad.key is found, it will be copied to DH0:S/WHDLoad.key when preparing the temporary hard drive. This only applies to people having purchased WHDLoad before the full version became free, and who wants to use the registered version.