fb05cbe9658843f9bbf54b753840b4aa36226924
[dragonfly.git] / contrib / file-4 / magic / Magdir / adventure
1
2 #------------------------------------------------------------------------------
3 # adventure: file(1) magic for Adventure game files
4 #
5 # from Allen Garvin <earendil@faeryland.tamu-commerce.edu>
6 # Edited by Dave Chapeskie <dchapes@ddm.on.ca> Jun 28, 1998
7 # Edited by Chris Chittleborough <cchittleborough@yahoo.com.au>, March 2002
8 #
9 # ALAN
10 # I assume there are other, lower versions, but these are the only ones I
11 # saw in the archive.
12 0       beshort 0x0206  ALAN game data
13 >2      byte    <10     version 2.6%d
14
15 # Conflicts with too much other stuff!
16 # Infocom
17 # (Note: to avoid false matches Z-machine version 1 and 2 are not
18 # recognized since only the oldest Zork I and II used them.  Similarly
19 # there are 4 Infocom games that use version 4 that are not recognized.)
20 #0      byte    3       Infocom game data (Z-machine 3,
21 #>2     beshort <0x7fff Release %3d,
22 #>26    beshort >0      Size %d*2
23 #>18    string  >\0     Serial %.6s)
24 #0      byte    5       Infocom game data (Z-machine 5,
25 #>2     beshort <0x7fff Release %3d,
26 #>26    beshort >0      Size %d*4
27 #>18    string  >\0     Serial %.6s)
28 #0      byte    6       Infocom game data (Z-machine 6,
29 #>2     beshort <0x7fff Release %3d,
30 #>26    beshort >0      Size %d*8
31 #>18    string  >\0     Serial %.6s)
32 #0      byte    8       Infocom game data (Z-machine 8,
33 #>2     beshort <0x7fff Release %3d,
34 #>26    beshort >0      Size %d*8
35 #>18    string  >\0     Serial %.6s)
36
37 # TADS (Text Adventure Development System)
38 #  All files are machine-independent (games compile to byte-code) and are tagged
39 #  with a version string of the form "V2.<digit>.<digit>\0" (but TADS 3 is
40 #  on the way).
41 #  Game files start with "TADS2 bin\n\r\032\0" then the compiler version.
42 0       string  TADS2\ bin      TADS
43 >9      belong  !0x0A0D1A00     game data, CORRUPTED
44 >9      belong   0x0A0D1A00
45 >>13    string  >\0             %s game data
46 #  Resource files start with "TADS2 rsc\n\r\032\0" then the compiler version.
47 0       string  TADS2\ rsc      TADS
48 >9      belong  !0x0A0D1A00     resource data, CORRUPTED
49 >9      belong   0x0A0D1A00
50 >>13    string  >\0             %s resource data
51 #  Some saved game files start with "TADS2 save/g\n\r\032\0", a little-endian
52 #  2-byte length N, the N-char name of the game file *without* a NUL (darn!),
53 # "TADS2 save\n\r\032\0" and the interpreter version. 
54 0       string  TADS2\ save/g   TADS
55 >12     belong  !0x0A0D1A00     saved game data, CORRUPTED
56 >12     belong   0x0A0D1A00
57 >>(16.s+32) string >\0          %s saved game data
58 #  Other saved game files start with "TADS2 save\n\r\032\0" and the interpreter
59 #  version.
60 0       string  TADS2\ save     TADS
61 >10     belong  !0x0A0D1A00     saved game data, CORRUPTED
62 >10     belong   0x0A0D1A00
63 >>14    string  >\0             %s saved game data