www.jupiter-ace.co.uk

Previous Page > Index FAQs > ACE snapshot file format.


ACE snapshot file format.

Many thanks to Edwin Blink for his work on finding this out after many hours looking at the ACE32 emulators snapshots. It was thought that the ACE32 snapshot format information had been lost, but we know the following:
The ACE snapshot file is a memory dump from address 2000h up to and inclusive 3FFFh, 7FFFh or BFFFh depending on the memory configuration that is being used. It uses a simple compression algorithm to reduce the snapshots file size. Three or more bytes of the same values are compressed into a three byte sequence. Byte ED has special meanings:
1) ED 00       end of file
2) ED xx yy    repeat byte yy, xx times.
Note:
  • one, two or three of more ED bytes are always stored in it's three byte form.
  • ACE32 uses a maximum repeat value of F0 so a maximum of 240 repeated bytes are reduced to a three byte sequence. More repeats are stored in separate sequences.
ACE32 configuration settings and Z80 Registers.

In the ACEs memory map there are several shadows of other memory parts that are normally filled with 0s ( in emulation). However the first shadow at 2000-23FF is used to store ACE32 configurations and the Z80 registers.
Because an ACE snapshot is compressed an offset seems out of place and the Ace memory addresses instead. All numbers used by ACE32 are 32-bit words in little Indian format. (Least significant byte first).
ACE32 Configuration.

Addr:   Defaults                Description

2000    01, 80, 00, 00      ?

2080    00, 80, 00, 00       Ramtop 4000 (3K), 8000(19K), C000(35K)
2084    00, 00, 00, 00       Debugger Data Address
2088    00, 00, 00, 00       Debugger Breakpoint Address
208C    03, 00, 00, 00       Frame Skip Rate (3)
2090    03, 00, 00, 00       Frames per TV Tick (3)
2094    FD, FD, 00, 00       ? 
2098    XX, XX, XX, XX       Time emulator is running probably in milliseconds
209C    00, 00, 00, 00       Emulator Colours 0(white on Black), 1(green on Black),
                                             2(purple on Black),3(Black on White)
Z80 Register dump.

Addr:	last state             Registers

2100	50, 04, 00, 00		AF
	00, 00, 00, 00		BC
	E2, 26, 00, 00		DE
	28, 3C, 00, 00		HL
	00, 3C, 00, 00		IX
	C8, 04, 00, 00		IY
	FE, 7F, 00, 00		SP
	9D, 05, 00, 00		PC
	40, 20, 00, 00		AF'
	00, 01, 00, 00		BC'
	60, 00, 00, 00		DE'
	80, 26, 00, 00		HL'
	01, 00, 00, 00		IM
	01, 00, 00, 00		IFF1
	01, 00, 00, 00		IFF2
	00, 00, 00, 00		I
	11, 00, 00, 00		R
	80, 00, 00, 00		?
	   
Creating ACE Snapshots.

Using ACE snapshots is a good workaround for some emulators to get programs running as not all emulators can deal with TAP or WAV files. Besides this it is also a good way of omitting the sometimes awkward loading instructions as they are only needed once when the snapshot is created. To make it as user friendly as possible consider the following when making ACE snapshots:
  • Before loading your program you wan't to save make sure the emulator has been reset. This ensures a clean and shorter ACE file.

  • Load programs using their loading instructions but do not type the part that will run them automatically. ie when the loading instructions say 'LOAD D D' to load and start the game enter 'LOAD D' instead to just load the program. After the program has loaded successfully. Type the command needed to start the program. But instead of pressing enter you save the snapshot. When a snapshot is loaded back. Enter needs to be pressed to start the program. But the advantage is that you can see which command is used to start the program. so you know what to type again in case the program stops.


How to make an ACE format file.

The 3 steps to create an ACE file are:
  • Make a wav sound recording.

  • Load the WAV file into EightyOne emulator.

  • Save a ACE file from the menu of EightyOne emulator.

Step 1. Make a wav sound recording.

First you need to record the tape with the some Windows sound recorder software. We recommend using Audacity its also Free! When you have installed Audacity Connect your cassette recorder's Ear socket to the MIC socket of your sound card, using a 3.5" jack lead. Click on Audacities icon to start the program. Choose New from the file menu to start a new sound recording. Audacities default option is the record "what you here" which will be fine, but you can change this "Microphone" if you wish . Press play on your cassette player to run the tape as if you were loading it into a real Jupiter Ace.

Next press the Audacities button with the red circle to start the recording the session from the tape. When the cassette tape has run to the end of the tape Audacity will have captured the sounds from the tape. Audacities window will look something like the image below.


To Save to wav file to you hard drive, from Audacities File menu choose "Export as WAV". A window will open for you to enter a save to location and file name. Please note that these types of files can be very large. We suggest that you record two or three recordings and both sides of the tape, just incase there's a different version of the software on the other side!

Step 2. Load the Wav into EightyOne

First download and install EightyOne emulator and choose it to emulate the Jupiter Ace. To Load a wav file into EightyOne we nee to tell the emulator the source for the tape loading. From EightyOnes "Options" menu choose TAPE, then SAUCE and WAV. This means that when you type the Jupiter Aces LOAD command the emulator will look for a WAV file.


Next, in EightyOne's menu bar choose TOOLS, and select the Wav Loader. A window will appear.You use the wav loader window to navigate to where your savedwav file is store on your hard drive which was recorded with Audacity. see the image below.


Next, click on EightOne's main window, and type in the loading instructions as they appear on the original tapes inlay. In this example its load gobblegook. EightyOne will then load the wav as if was loading the program from a cassette recorder.

Step 3. Save the ACE snapshot.

When the wav loader has finished type in the command to run the program, but DO NOT PRESS ENTER! Instead from the EightOne's FILE option on the menu bar select SAVE SNAPSHOT. A window will appear prompting you for a file name and a location.


Once entered the ACE Snapshot file will be saved. The ACE snapshot file can also be reloaded by choosing LOAD Snapshot, the same window will appear asking for a file name and its location. Once the snapshot file has been reloaded EightyOne carries on emulating the Jupiter Ace from exactly from the point the snapshot was saved. All you have to do to run the program is press enter. Thats it now you have a wav file and an ACE snapshot file you can also save a .tap file