Next: CPU 6502 module, Previous: Terminology, Up: Module formats [Contents][Index]
The VICE snapshot file starts with the magic string and includes the fileformat version number.
Type | Name | Description |
19 BYTE | MAGIC | "VICE Snapshot File\032", padded with 0 |
BYTE | VMAJOR | fileformat major version number |
BYTE | VMINOR | fileformat minor version number |
16 BYTE | MACHINENAME | Name of emulated machine, like "PET", "CBM-II", "VIC20", "C64" or "C128". zerobyte-padded. |
13 BYTE | VERSION MAGIC | "VICE Version\032", padded with 0 |
4 BYTE | VERSION | Release version (major, minor, micro). Byte 4 is always zero. |
DWORD | SVNVERSION | SVN revision (or 0 if not available) |
The file header is followed by a number of different snapshot modules.
Each module has a header with the information given in the table below. The header includes two version numbers, VMAJOR and VMINOR. In the past the idea was that modules with the same VMAJOR should be able to be exchanged. This however proved to be too difficult to maintain, and insanely hard to test for correctness, which is why now the emulator will reject the snapshot when it finds a module that is too old. Because of this you should not use snapshots for permanent/long term storage.
Type | Name | Description |
16 BYTE | MODULENAME | The name of the module in ASCII, padded with 0 to 16 byte. |
BYTE | VMAJOR | major version number |
BYTE | VMINOR | minor version number |
DWORD | SIZE | size of the module, including this header |