Home | History | Annotate | Line # | Download | only in magdir
spectrum revision 1.1.1.4
      1      1.1  christos 
      2      1.1  christos #------------------------------------------------------------------------------
      3  1.1.1.4  christos # $File: spectrum,v 1.9 2021/04/26 15:56:00 christos Exp $
      4      1.1  christos # spectrum:  file(1) magic for Spectrum emulator files.
      5      1.1  christos #
      6      1.1  christos # John Elliott <jce (a] seasip.demon.co.uk>
      7      1.1  christos 
      8      1.1  christos #
      9      1.1  christos # Spectrum +3DOS header
     10      1.1  christos #
     11      1.1  christos 0       string          PLUS3DOS\032    Spectrum +3 data
     12      1.1  christos >15     byte            0               - BASIC program
     13      1.1  christos >15     byte            1               - number array
     14      1.1  christos >15     byte            2               - character array
     15      1.1  christos >15     byte            3               - memory block
     16      1.1  christos >>16    belong          0x001B0040      (screen)
     17      1.1  christos >15     byte            4               - Tasword document
     18      1.1  christos >15     string          TAPEFILE        - ZXT tapefile
     19      1.1  christos #
     20      1.1  christos # Tape file. This assumes the .TAP starts with a Spectrum-format header,
     21      1.1  christos # which nearly all will.
     22      1.1  christos #
     23  1.1.1.2  christos # Update: Sanity-check string contents to be printable.
     24  1.1.1.2  christos #  -Adam Buchbinder <adam.buchbinder (a] gmail.com>
     25  1.1.1.2  christos #
     26  1.1.1.2  christos 0       string          \023\000\000
     27  1.1.1.2  christos >4      string          >\0
     28  1.1.1.2  christos >>4     string          <\177           Spectrum .TAP data "%-10.10s"
     29  1.1.1.2  christos >>>3    byte            0               - BASIC program
     30  1.1.1.2  christos >>>3    byte            1               - number array
     31  1.1.1.2  christos >>>3    byte            2               - character array
     32  1.1.1.2  christos >>>3    byte            3               - memory block
     33  1.1.1.2  christos >>>>14  belong          0x001B0040      (screen)
     34      1.1  christos 
     35      1.1  christos # The following three blocks are from pak21-spectrum (a] srcf.ucam.org
     36      1.1  christos # TZX tape images
     37      1.1  christos 0      string          ZXTape!\x1a     Spectrum .TZX data
     38      1.1  christos >8     byte            x               version %d
     39      1.1  christos >9     byte            x               \b.%d
     40      1.1  christos 
     41      1.1  christos # RZX input recording files
     42      1.1  christos 0      string          RZX!            Spectrum .RZX data
     43      1.1  christos >4     byte            x               version %d
     44      1.1  christos >5     byte            x               \b.%d
     45      1.1  christos 
     46      1.1  christos # Floppy disk images
     47      1.1  christos 0      string          MV\ -\ CPCEMU\ Disk-Fil Amstrad/Spectrum .DSK data
     48      1.1  christos 0      string          MV\ -\ CPC\ format\ Dis Amstrad/Spectrum DU54 .DSK data
     49      1.1  christos 0      string          EXTENDED\ CPC\ DSK\ Fil Amstrad/Spectrum Extended .DSK data
     50      1.1  christos 0      string          SINCLAIR        Spectrum .SCL Betadisk image
     51      1.1  christos 
     52      1.1  christos # Hard disk images
     53      1.1  christos 0      string          RS-IDE\x1a      Spectrum .HDF hard disk image
     54  1.1.1.4  christos >7     byte            x               \b, version %#02x
     55  1.1.1.3  christos 
     56  1.1.1.3  christos # SZX snapshots (fuse and spectaculator)
     57  1.1.1.3  christos # Martin M. S. Pedersen <martin (a] linux.com>
     58  1.1.1.3  christos # http://www.spectaculator.com/docs/zx-state/header.shtml
     59  1.1.1.3  christos #
     60  1.1.1.3  christos 0      string		ZXST	       zx-state snapshot
     61  1.1.1.3  christos >4     byte		x	       version %d
     62  1.1.1.3  christos >5     byte		x	       \b.%d
     63  1.1.1.3  christos >>6    byte		0	       16k ZX Spectrum
     64  1.1.1.3  christos >>6    byte		1	       48k ZX Spectrum/ZX Spectrum+
     65  1.1.1.3  christos >>6    byte		2	       ZX Spectrum 128
     66  1.1.1.3  christos >>6    byte		3	       ZX Spectrum +2
     67  1.1.1.3  christos >>6    byte		4	       ZX Spectrum +2A/+2B
     68  1.1.1.3  christos >>6    byte		5	       ZX Spectrum +3
     69  1.1.1.3  christos >>6    byte		6	       ZX Spectrum +3e
     70  1.1.1.3  christos >>6    byte		7	       Pentagon 128
     71  1.1.1.3  christos >>6    byte		8	       Timex Sinclair TC2048
     72  1.1.1.3  christos >>6    byte		9	       Timex Sinclair TC2068
     73  1.1.1.3  christos >>6    byte	       10	       Scorpion ZS-256
     74  1.1.1.3  christos >>6    byte	       11	       ZX Spectrum SE
     75  1.1.1.3  christos >>6    byte	       12	       Timex Sinclair TS2068
     76  1.1.1.3  christos >>6    byte	       13	       Pentagon 512
     77  1.1.1.3  christos >>6    byte	       14	       Pentagon 1024
     78  1.1.1.3  christos >>6    byte	       15	       48k ZX Spectrum (NTSC)
     79  1.1.1.3  christos >>6    byte	       16	       ZX Spectrum 12Ke
     80  1.1.1.3  christos >>>7   byte		1	       (alternate timings)
     81