A showcase of magical computing on the Exidy Sorcerer (1978 - 1980)

JSorcerer - Exidy Sorcerer Emulator Features

  • Operates as Java Application or Applet
  • CP/M Emulation of 4 Disk units
  • Tape interface support including 300/1200 baud WAV files
  • Quick Load of .COM, .SNP and .BIN files.
  • ROM Pack Support
  • 48KB RAM

JSorcerer in an web-page

The emulator can be embedded into a web-page as an applet...

An example applet tag would look like...
<applet archive="sorcerer.jar" code="sorcererII.JSorcerer.class" width="512" height="480">
  <param name="showStats" value="No">
  <param name="scale" value="1">
  <param name="snapshot" value="snaps/galx.snp">
  <p>Sorry, this browser is not Java(tm) enabled.</p>
  <p>It either cannot run Java(tm) applets, or the running of applets is currently disabled in your browser.</p>
The supported parameters are...

Parameter Type Description
refreshRateNumberRefresh screen every 'X' interrupts (default=1)
sleepHackNumberRleep per interrupt in ms, for old VMs (default=0)
scaleNumberScreen pixel width per sorcerer pixel width
rom8kURLFilename of ROM (default=none)
snapshotURLFilename of snapshot file(default=none)
diskaURLDisk file for drive A
diskbURLDisk file for drive
diskcURLDisk file for drive C
diskdURLDisk file for drive D
tape1URLTape file for tape unit 1
tape2URLTape file for tape unit 2
hardKeyMaptrue/falseMap keyboard by keys or characters

JSorcerer Stand alone emulator

Starting the emulator

You will need a Java 6 JRE installed on your computer. Download the JSorcerer ZIP file and extract it to a folder. Open a command prompt in this folder and execute the following command:
java sorcererII.SorcererFrame
This should start the stand-alone emulator which looks like...

Stand alone emulator controls

Insert/Eject Floppy Disk
The emulator supports four disk units A, B, C and D. Clicking the disk icon allows a disk file to be inserted into the emulation; a further click to the icon removes the disk. Opening a new file will insert an unformatted disk, ready for formatting.

Insert/Eject Audio Cassette
The emulator supports two tape units 1 and 2. Clicking the tape icon allows a tape file to be inserted into the emulation; a further click to the icon removes the tape. Two formats are supported 300/1220 baud audio as a .WAV file or .TAPE format. .TAPE format files are a compressed version of audio files containing only the digital data; they are postfixed '.tape'. Opening a new file will insert a blank tape, which can be written to; if the file extension is .WAV then an audio file will be created.

Insert/Eject ROM Pack
The emulator supports the use of 8K ROM packs. Clicking the ROM icon allows a ROM pack to be inserted into the emulation; a further click to the icon removes the pack. Inserting or ejecting a ROM pack will cause the Sorcerer to reset.

Full/Normal Speed
Set this control to allow the emulator to run at full speed. Normally the emulator attempts to run at the speed of the original hardware.

Key/Character Keyboard Mapping
Normally the emulator maps keys on the physical keyboard to the Sorcerer's virtual keys. Setting this control tells the emulator to try and map the character of a pressed key to the Sorcerer's keyboard; this is much better for typing text but not so good for games.

Quick Load
Loads a file directly into the Sorcerer's memory and optionally executes it. The emulator can load .COM, .BIN, and .SNP formats.
Quick Load File Types
This is the CP/M binary format which loads to 0x0100
This is a binary format from the MESS emulator. It can contain BASIC programs and machine-code. BASIC programs will need the correct ROM-Pack installed to run.
Snapshot files contain the entire machine state. Snapshot files can contain BASIC programs and machine-code.

Create a Snapshot
Saves a Snapshot (.SNP) file to the host file system. Saves snapshots can be reloaded using the Quick Load control.

Reset the Emulator
Resets the emulator.

Save a screen shot
Saves an image file to the host file system of the current contents of the emulator's screen. Can save .PNG, .GIF and .JPG formats.

Running CP/M

To start CP/M insert a disk initaialised with CP/M (e.g. disk1.dsk) in drive A, then...
> GO BC00

Loading Programs from Tape in the Monitor

Insert the tape to load into unit 1, then for 1200 baud .WAV files or .TAPE files...
> LO
...or for 300 baud .WAV files...
> SE T=1                
> LO
See monitor commands for more detailed information.

Loading Programs from Tape in BASIC

Load the BASIC interpreter, of which several are available on ROM Pack, e.g. 'Exidy Standard Basic Ver 1.0 (1978).ROM'. Insert the tape to load into unit 1, then for 1200 baud .WAV files or .TAPE files...
...or for 300 baud .WAV files...
> SE T=1                
See Storing and Loading Programs from Cassette Tape for more detailed information.

Further documentation