spectrum revision 226048
1238384Sjkim
2238384Sjkim#------------------------------------------------------------------------------
3238384Sjkim# $File: spectrum,v 1.7 2010/09/20 18:55:20 rrt Exp $
4238384Sjkim# spectrum:  file(1) magic for Spectrum emulator files.
5238384Sjkim#
6238384Sjkim# John Elliott <jce@seasip.demon.co.uk>
7238384Sjkim
8238384Sjkim#
9238384Sjkim# Spectrum +3DOS header
10238384Sjkim#
11238384Sjkim0       string          PLUS3DOS\032    Spectrum +3 data
12238384Sjkim>15     byte            0               - BASIC program
13238384Sjkim>15     byte            1               - number array
14238384Sjkim>15     byte            2               - character array
15238384Sjkim>15     byte            3               - memory block
16238384Sjkim>>16    belong          0x001B0040      (screen)
17238384Sjkim>15     byte            4               - Tasword document
18238384Sjkim>15     string          TAPEFILE        - ZXT tapefile
19238384Sjkim#
20238384Sjkim# Tape file. This assumes the .TAP starts with a Spectrum-format header,
21238384Sjkim# which nearly all will.
22238384Sjkim#
23238384Sjkim# Update: Sanity-check string contents to be printable.
24238384Sjkim#  -Adam Buchbinder <adam.buchbinder@gmail.com>
25238384Sjkim#
26238384Sjkim0       string          \023\000\000
27238384Sjkim>4      string          >\0
28238384Sjkim>>4     string          <\177           Spectrum .TAP data "%-10.10s"
29238384Sjkim>>>3    byte            0               - BASIC program
30238384Sjkim>>>3    byte            1               - number array
31238384Sjkim>>>3    byte            2               - character array
32238384Sjkim>>>3    byte            3               - memory block
33238384Sjkim>>>>14  belong          0x001B0040      (screen)
34238384Sjkim
35238384Sjkim# The following three blocks are from pak21-spectrum@srcf.ucam.org
36238384Sjkim# TZX tape images
37238384Sjkim0      string          ZXTape!\x1a     Spectrum .TZX data
38238384Sjkim>8     byte            x               version %d
39238384Sjkim>9     byte            x               \b.%d
40238384Sjkim
41238384Sjkim# RZX input recording files
42238384Sjkim0      string          RZX!            Spectrum .RZX data
43238384Sjkim>4     byte            x               version %d
44238384Sjkim>5     byte            x               \b.%d
45
46# Floppy disk images
470      string          MV\ -\ CPCEMU\ Disk-Fil Amstrad/Spectrum .DSK data
480      string          MV\ -\ CPC\ format\ Dis Amstrad/Spectrum DU54 .DSK data
490      string          EXTENDED\ CPC\ DSK\ Fil Amstrad/Spectrum Extended .DSK data
500      string          SINCLAIR        Spectrum .SCL Betadisk image
51
52# Hard disk images
530      string          RS-IDE\x1a      Spectrum .HDF hard disk image
54>7     byte            x               \b, version 0x%02x
55