]> granicus.if.org Git - file/commitdiff
lots more magic
authorChristos Zoulas <christos@zoulas.com>
Fri, 23 May 2003 21:05:57 +0000 (21:05 +0000)
committerChristos Zoulas <christos@zoulas.com>
Fri, 23 May 2003 21:05:57 +0000 (21:05 +0000)
31 files changed:
magic/Magdir/animation
magic/Magdir/apple
magic/Magdir/archive
magic/Magdir/audio
magic/Magdir/communications [new file with mode: 0644]
magic/Magdir/compress
magic/Magdir/console
magic/Magdir/database
magic/Magdir/elf
magic/Magdir/fcs [new file with mode: 0644]
magic/Magdir/filesystems
magic/Magdir/fonts
magic/Magdir/games [new file with mode: 0644]
magic/Magdir/images
magic/Magdir/linux
magic/Magdir/mail.news
magic/Magdir/mathematica
magic/Magdir/misctools [new file with mode: 0644]
magic/Magdir/motorola
magic/Magdir/msdos
magic/Magdir/ocaml [new file with mode: 0644]
magic/Magdir/palm
magic/Magdir/perl
magic/Magdir/printer
magic/Magdir/riff
magic/Magdir/sgml
magic/Magdir/sinclair [new file with mode: 0644]
magic/Magdir/spectrum
magic/Magdir/ti-8x
magic/Magdir/vorbis
magic/Magdir/wordprocessors [moved from magic/Magdir/wordperfect with 88% similarity]

index 56f25cf3b776e820ea9e883099667c43e45e9f7f..77c64eb752ff9ff57f1aee5f04d4da361d2bbbc0 100644 (file)
 #>3     byte&0x03       1               \b, Emphasis 5
 #>3     byte&0x03       3               \b, Emphasis c
 
+#From: Johan Gade <jgade@diku.dk>
+
+# MPEG-4 Advanced Audio Coding (AAC) file (perhaps also MPEG-2 ACC?)
+16     string          M4A             MPEG-4 Advanced Audio Coding file (ACC)
+
+
 # FLI animation format
 4      leshort         0xAF11                  FLI file
 >6     leshort         x                       - %d frames,
 0      string                  \x8aMNG         MNG video data,
 >4     belong                  !0x0d0a1a0a     CORRUPTED,
 >4     belong                  0x0d0a1a0a
+>>16    belong x                               %ld x
+>>20    belong x                               %ld
+
+# JNG Video Format, <URL:http://www.libpng.org/pub/mng/spec/>
+0      string                  \x8bJNG         JNG video data,
+>4     belong                  !0x0d0a1a0a     CORRUPTED,
+>4     belong                  0x0d0a1a0a
+>>16    belong x                               %ld x
+>>20    belong x                               %ld
+
+# Vivo video (Wolfram Kleff)
+3      string          \x0D\x0AVersion:Vivo    Vivo video data
+
+# VRML (Virtual Reality Modelling Language)
+0       string/b        #VRML\ V1.0\ ascii     VRML 1 file
+0      string/b        #VRML\ V2.0\ utf8       ISO/IEC 14772 VRML 97 file
index c2b372bf3e5b137b1ff05c27a440d700346929dc..659043c4bed8ddfde93fe5847d5f3374de71c479 100644 (file)
 >12    belong  &0x02000000     UseFasterCompression,
 >16    belong  x               version %d
 
+0      string  package4        Newton package,
+>8     byte    8               NOS 1.x,
+>8     byte    9               NOS 2.x,
+>12    belong  &0x80000000     AutoRemove,
+>12    belong  &0x40000000     CopyProtect,
+>12    belong  &0x10000000     NoCompression,
+
 # The following entries for the Apple II are for files that have
 # been transferred as raw binary data from an Apple, without having
 # been encapsulated by any of the above archivers.
index 133e50caf177de9ccaf13a360f332eaa02e388ee..d8fc6d40c43e2a48509d0b4490b6b25d599bad2f 100644 (file)
@@ -32,7 +32,9 @@
 0      string          !<arch>\ndebian
 >8     string          debian-split    part of multipart Debian package
 >8     string          debian-binary   Debian binary package
->68    string          >\n             (format %s)
+>68    string          >\0             (format %s)
+>81    string          bz2             \b, uses bzip2 compression
+>84    string          gz              \b, uses gzip compression
 >136   ledate          x               created: %s
 
 # other archives
 0       string          PAR\0  PARity archive data
 >48    leshort         =0      - Index file
 >48    leshort         >0      - file number %d
+
+# Felix von Leitner <felix-file@fefe.de>
+0      string  d8:announce     BitTorrent file
+
+# ACE archive (Nikolay Petrov, nik@techlab.office1.bg)
+7      string          **ACE**         Winace archive data
+
+# Atari MSA archive - Teemu Hukkanen <tjhukkan@iki.fi>
+0       beshort 0x0e0f          Atari MSA archive data
+>2      beshort x       \b, %d sectors per track
+>4      beshort 0       \b, 1 sided
+>4      beshort 1       \b, 2 sided
+>6      beshort x       \b, starting track: %d
+>8      beshort x       \b, ending track: %d
+
+# Alternate ZIP string (amc@arwen.cs.berkeley.edu)
+0      string          PK00PK\003\004  Zip archive data
index 9507c128264e643530018a3195004038188f29dd..fb7c79f311309e8596d63471f3e07d1fcb3e68e9 100644 (file)
@@ -8,14 +8,14 @@
 
 # Sun/NeXT audio data
 0      string          .snd            Sun/NeXT audio data:
->12    belong          1               8-bit ISDN u-law,
+>12    belong          1               8-bit ISDN mu-law,
 >12    belong          2               8-bit linear PCM [REF-PCM],
 >12    belong          3               16-bit linear PCM,
 >12    belong          4               24-bit linear PCM,
 >12    belong          5               32-bit linear PCM,
 >12    belong          6               32-bit IEEE floating point,
 >12    belong          7               64-bit IEEE floating point,
->12    belong          23              8-bit ISDN u-law compressed (CCITT G.721 ADPCM voice data encoding),
+>12    belong          23              8-bit ISDN mu-law compressed (CCITT G.721 ADPCM voice data encoding),
 >12    belong          24              compressed (8-bit G.722 ADPCM)
 >12    belong          25              compressed (3-bit G.723 ADPCM),
 >12    belong          26              compressed (5-bit G.723 ADPCM),
 # DEC systems (e.g. DECstation 5000) use a variant of the Sun/NeXT format
 # that uses little-endian encoding and has a different magic number
 0      lelong          0x0064732E      DEC audio data:
->12    lelong          1               8-bit ISDN u-law,
+>12    lelong          1               8-bit ISDN mu-law,
 >12    lelong          2               8-bit linear PCM [REF-PCM],
 >12    lelong          3               16-bit linear PCM,
 >12    lelong          4               24-bit linear PCM,
 >12    lelong          5               32-bit linear PCM,
 >12    lelong          6               32-bit IEEE floating point,
 >12    lelong          7               64-bit IEEE floating point,
->12    lelong          23              8-bit ISDN u-law compressed (CCITT G.721 ADPCM voice data encoding),
+>12    lelong          23              8-bit ISDN mu-law compressed (CCITT G.721 ADPCM voice data encoding),
 >20    lelong          1               mono,
 >20    lelong          2               stereo,
 >20    lelong          4               quad,
 >14    string  >/0             ultratracker V1.%.1s module sound data
 0      string  UN05            MikMod UNI format module sound data
 0      string  Extended\ Module: Fasttracker II module sound data
-21     string  !SCREAM!        Screamtracker 2 module sound data
+21     string/c        !SCREAM!        Screamtracker 2 module sound data
+21     string  BMOD2STM        Screamtracker 2 module sound data
 1080   string  M.K.            4-channel Protracker module sound data
 1080   string  M!K!            4-channel Protracker module sound data
 1080   string  FLT4            4-channel Startracker module sound data
 1080   string  4CHN            4-channel Fasttracker module sound data
 1080   string  6CHN            6-channel Fasttracker module sound data
 1080   string  8CHN            8-channel Fasttracker module sound data
-1080   string  CD81            8-channel Oktalyzer module sound data
+1080   string  CD81            8-channel Octalyser module sound data
 1080   string  OKTA            8-channel Oktalyzer module sound data
 # Not good enough.
 #1082  string  CH
 # From: Dan Fandrich <dan@coneharvesters.com>
 0      string          fLaC            FLAC audio stream data
 
+# (ISDN) VBOX voice message file (Wolfram Kleff)
+0       string          VBOX            VBOX voice message data
+
+# ReBorn Song Files (.rbs)
+# David J. Singer <doc@deadvirgins.org.uk>
+8       string          RB40             RBS Song file
+>29     string          ReBorn           created by ReBorn
+>37     string          Propellerhead    created by ReBirth
+
+# Synthesizer Generator and Kimwitu share their file format
+0      string          A#S#C#S#S#L#V#3     Synthesizer Generator or Kimwitu data
+# Kimwitu++ uses a slightly different magic
+0      string          A#S#C#S#S#L#HUB     Kimwitu++ data
diff --git a/magic/Magdir/communications b/magic/Magdir/communications
new file mode 100644 (file)
index 0000000..bdc19d8
--- /dev/null
@@ -0,0 +1,21 @@
+
+#----------------------------------------------------------------------------
+# communcation
+
+# TTCN is the Tree and Tabular Combined Notation described in ISO 9646-3.
+# It is used for conformance testing of communication protocols.
+# Added by W. Borgert <debacle@debian.org>.
+0      string          $Suite                  TTCN Abstract Test Suite
+>&1    string          $SuiteId
+>>&1   string          >\n                     %s
+>&2    string          $SuiteId
+>>&1   string          >\n                     %s
+>&3    string          $SuiteId
+>>&1   string          >\n                     %s
+
+# MSC (message sequence charts) are a formal description technique,
+# described in ITU-T Z.120, mainly used for communication protocols.
+# Added by W. Borgert <debacle@debian.org>.
+0      string          mscdocument     Message Sequence Chart (document)
+0      string          msc             Message Sequence Chart (chart)
+0      string          submsc          Message Sequence Chart (subchart)
index 01305416595b63e65a1c279142a05fdc5d7b7300..2496184256bfac298fb501fdc4025982bea5cb8f 100644 (file)
 0      string          7z\274\257\047\034      7z archive data,
 >6     byte            x                       version %d
 >7     byte            x                       \b.%d
+
+# AFX compressed files (Wolfram Kleff)
+2      string          -afx-           AFX compressed file data
index f8d2ebb5ae07261c3bfc3e7055551fc095f9589f..d3fcc1add135d15f6498db751f56bf550c4c0f52 100644 (file)
 #------------------------------------------------------------------------------
 # msx: file(1) magic for MSX game cartridge dumps
 0 beshort 0x4142 MSX game cartridge dump 
+
+# Sony Playstation executables (Adam Sjoegren <asjo@diku.dk>) :
+0      string  PS-X\ EXE       Sony Playstation executable
+#  Area:
+>113   string  x               (%s)
index 9d5fe1970dabb6308aeaae99f98190c01b380e95..9a81c631f815010211a60bed6be1172a55b9acae 100644 (file)
 0       string  root\0  ROOT file
 >4      belong  x       Version %d
 >33     belong  x       (Compression: %d)
+
+# XXX: Weak magic.
+# Alex Ott <ott@jet.msk.su>
+## Paradox file formats
+#2       leshort       0x0800  Paradox 
+#>0x39   byte          3       v. 3.0 
+#>0x39   byte          4       v. 3.5 
+#>0x39   byte          9       v. 4.x 
+#>0x39   byte          10      v. 5.x 
+#>0x39   byte          11      v. 5.x 
+#>0x39   byte          12      v. 7.x 
+#>>0x04          byte          0       indexed .DB data file 
+#>>0x04          byte          1       primary index .PX file 
+#>>0x04          byte          2       non-indexed .DB data file 
+#>>0x04          byte          3       non-incrementing secondary index .Xnn file 
+#>>0x04          byte          4       secondary index .Ynn file 
+#>>0x04          byte          5       incrementing secondary index .Xnn file 
+#>>0x04          byte          6       non-incrementing secondary index .XGn file 
+#>>0x04          byte          7       secondary index .YGn file 
+#>>>0x04         byte          8       incrementing secondary index .XGn file 
+## XBase database files
+#0      byte       0x02        
+#>8     leshort          >0
+#>>12   leshort    0   FoxBase 
+#>>>0x04       lelong          0               (no records)
+#>>>0x04       lelong          >0              (%ld records)
+#
+#0      byte       0x03        
+#>8     leshort          >0
+#>>12   leshort    0   FoxBase+, FoxPro, dBaseIII+, dBaseIV, no memo 
+#>>>0x04       lelong          0               (no records)
+#>>>0x04       lelong          >0              (%ld records)
+#
+#0      byte       0x04        
+#>8     leshort          >0
+#>>12   leshort    0   dBASE IV no memo file 
+#>>>0x04       lelong          0               (no records)
+#>>>0x04       lelong          >0              (%ld records)
+#
+#0      byte       0x05        
+#>8     leshort          >0
+#>>12   leshort    0   dBASE V no memo file 
+#>>>0x04       lelong          0               (no records)
+#>>>0x04       lelong          >0              (%ld records)
+#
+#0      byte       0x30
+#>8     leshort          >0
+#>>12   leshort    0   Visual FoxPro 
+#>>>0x04       lelong          0               (no records)
+#>>>0x04       lelong          >0              (%ld records)
+#
+#0      byte       0x43
+#>8     leshort          >0
+#>>12   leshort    0   FlagShip with memo var size 
+#>>>0x04       lelong          0               (no records)
+#>>>0x04       lelong          >0              (%ld records)
+#
+#0      byte       0x7b
+#>8     leshort          >0
+#>>12   leshort    0   dBASEIV with memo 
+#>>>0x04       lelong          0               (no records)
+#>>>0x04       lelong          >0              (%ld records)
+#
+#0      byte       0x83        
+#>8     leshort          >0
+#>>12   leshort    0   FoxBase+, dBaseIII+ with memo 
+#>>>0x04       lelong          0               (no records)
+#>>>0x04       lelong          >0              (%ld records)
+#
+#0      byte       0x8b
+#>8     leshort          >0
+#>>12   leshort    0   dBaseIV with memo 
+#>>>0x04       lelong          0               (no records)
+#>>>0x04       lelong          >0              (%ld records)
+#
+#0      byte       0x8e        
+#>8     leshort          >0
+#>>12   leshort    0   dBaseIV with SQL Table 
+#>>>0x04       lelong          0               (no records)
+#>>>0x04       lelong          >0              (%ld records)
+#
+#0      byte       0xb3
+#>8     leshort          >0
+#>>12   leshort    0   FlagShip with .dbt memo 
+#>>>0x04       lelong          0               (no records)
+#>>>0x04       lelong          >0              (%ld records)
+#
+#0      byte       0xf5
+#>8     leshort          >0
+#>>12   leshort    0   FoxPro with memo 
+#>>>0x04       lelong          0               (no records)
+#>>>0x04       lelong          >0              (%ld records)
+#
+#0     leshort         0x0006          DBase 3 index file
+
+# MS Access database
+4        string        Standard\ Jet\ DB       Microsoft Access Database
+
+# TDB database from Samba et al - Martin Pool <mbp@samba.org>
+0      string  TDB\ file               TDB database
+>32    lelong  0x2601196D              version 6, little-endian
+>>36   lelong  x                       hash size %d bytes
+
+# SE Linux policy database
+0       lelong  0xf97cff8c      SE Linux policy
+>16     lelong  x               v%d
+>20     lelong  1      MLS
+>24     lelong  x       %d symbols
+>28     lelong  x       %d ocons
+
+# ICE authority file data (Wolfram Kleff)
+2      string          ICE             ICE authority data
+
+# X11 Xauthority file (Wolfram Kleff)
+14     string          MIT-MAGIC-COOKIE-1      X11 Xauthority data
index bac7f71c93abed1d5185e449ed5f09c536a74997..9635af76bf8e1588fdd9b0b52b901a9ecd5ba9ab 100644 (file)
 >>18   leshort         17              Fujitsu VPP500,
 >>18   leshort         18              SPARC32PLUS,
 >>18   leshort         20              PowerPC,
+>>18   leshort         22              IBM S/390,
 >>18   leshort         36              NEC V800,
 >>18   leshort         37              Fujitsu FR20,
 >>18   leshort         38              TRW RH-32,
 >>18   leshort         39              Motorola RCE,
 >>18   leshort         40              ARM,
 >>18   leshort         41              Alpha,
+>>18   leshort         0xa390          IBM S/390 (obsolete),
 >>18   leshort         42              Hitachi SH,
 >>18   leshort         43              SPARC V9 - invalid byte order,
 >>18   leshort         44              Siemens Tricore Embedded Processor,
 >>>36  belong&0xffff00 &0x000800       Sun UltraSPARC3 Extensions Required,
 >>18   beshort         20              PowerPC or cisco 4500,
 >>18   beshort         21              cisco 7500,
+>>18   beshort         22              IBM S/390,
 >>18   beshort         24              cisco SVIP,
 >>18   beshort         25              cisco 7200,
 >>18   beshort         36              NEC V800 or cisco 12000,
 >>18   beshort         75              Digital VAX,
 >>18   beshort         97              NatSemi 32k,
 >>18   beshort         0x9026          Alpha (unofficial),
+>>18   beshort         0xa390          IBM S/390 (obsolete),
 >>20   belong          0               invalid version
 >>20   belong          1               version 1
 >>36   belong          1               MathCoPro/FPU/MAU Required
+# Up to now only 0, 1 and 2 are defined; I've seen a file with 0x83, it seemed
+# like proper ELF, but extracting the string had bad results.
+>4      byte            <0x80
 >8     string          >\0             (%s)
->8     string          \0
 >>7    byte            0               (SYSV)
 >>7    byte            1               (HP-UX)
 >>7    byte            2               (NetBSD)
diff --git a/magic/Magdir/fcs b/magic/Magdir/fcs
new file mode 100644 (file)
index 0000000..ac4b02c
--- /dev/null
@@ -0,0 +1,8 @@
+
+#------------------------------------------------------------------------------
+# fcs: file(1) magic for FCS (Flow Cytometry Standard) data files
+# From Roger Leigh <roger@whinlatter.uklinux.net>
+0       string          FCS1.0          Flow Cytometry Standard (FCS) data, version 1.0
+0       string          FCS2.0          Flow Cytometry Standard (FCS) data, version 2.0
+0       string          FCS3.0          Flow Cytometry Standard (FCS) data, version 3.0
+
index f34c8235c2b0ef5abdb76117188a0d3834dcb6d3..df259c55a57ae6470bc525a1496bc0bc7410a77c 100644 (file)
 
 # SGI XFS filesystem - Nathan Scott <nathans@debian.org>
 0      belong          0x58465342      SGI XFS filesystem data
->0x4   belong          x               (blksz=3D%d,
->0x68  beshort         x               inosz=3D%d,
+>0x4   belong          x               (blksz %d,
+>0x68  beshort         x               inosz %d,
 >0x64  beshort         ^0x2004         v1 dirs)
 >0x64  beshort         &0x2004         v2 dirs)
 
 
 # CDROM Filesystems
 32769    string    CD001     ISO 9660 CD-ROM filesystem data
+# "application id" which appears to be used as a volume label
+>32808  string    >\0       '%s'
+>34816  string    \000CD001\001EL\ TORITO\ SPECIFICATION    (bootable)
 37633    string    CD001     ISO 9660 CD-ROM filesystem data (raw 2352 byte sectors)
 32776    string    CDROM     High Sierra CD-ROM filesystem data
+
+# cramfs filesystem - russell@coker.com.au
+0       lelong    0x28cd3d45      Linux Compressed ROM File System data, little endian
+>4      lelong  x size %d
+>8      lelong  &1 version #2
+>8      lelong  &2 sorted_dirs
+>8      lelong  &4 hole_support
+>32     lelong  x CRC 0x%x,
+>36     lelong  x edition %d,
+>40     lelong  x %d blocks,
+>44     lelong  x %d files
+
+0       belong    0x28cd3d45      Linux Compressed ROM File System data, big endian
+>4      belong  x size %d
+>8      belong  &1 version #2
+>8      belong  &2 sorted_dirs
+>8      belong  &4 hole_support
+>32     belong  x CRC 0x%x,
+>36     belong  x edition %d,
+>40     belong  x %d blocks,
+>44     belong  x %d files
+
+# reiserfs - russell@coker.com.au
+0x10034                string  ReIsErFs        ReiserFS V3.5
+0x10034                string  ReIsEr2Fs       ReiserFS V3.6
+>0x1002c       leshort x               block size %d
+>0x10032       leshort &2              (mounted or unclean)
+>0x10000       lelong  x               num blocks %d
+>0x10040       lelong  1               tea hash
+>0x10040       lelong  2               yura hash
+>0x10040       lelong  3               r5 hash
+
+# JFFS - russell@coker.com.au
+0      lelong  0x34383931      Linux Journalled Flash File system, little endian
+0      belong  0x34383931      Linux Journalled Flash File system, big endian
+
+# EST flat binary format (which isn't, but anyway)
+# From: Mark Brown <broonie@sirena.org.uk>
+0      string  ESTFBINR        EST flat binary
+
+# Aculab VoIP firmware
+# From: Mark Brown <broonie@sirena.org.uk>
+0      string  VoIP\ Startup\ and      Aculab VoIP firmware
+>35    string  x       format %s
+
+# PPCBoot image file
+# From: Mark Brown <broonie@sirena.org.uk>
+0      belong  0x27051956      PPCBoot image
+>4     string  PPCBoot
+>>12   string  x               version %s
+
index d0dc225993c67d7a81a1c42598953089d0f0b431..e313b06c38ad80601ee657610a4adc37e986e40b 100644 (file)
@@ -7,9 +7,9 @@
 0      short           017001          byte-swapped Berkeley vfont data
 
 # PostScript fonts (must precede "printer" entries), quinlan@yggdrasil.com
-0      string          %!PS-AdobeFont-1.0      PostScript Type 1 font text
+0      string          %!PS-AdobeFont-1.       PostScript Type 1 font text
 >20    string          >\0                     (%s)
-6      string          %!PS-AdobeFont-1.0      PostScript Type 1 font program data
+6      string          %!PS-AdobeFont-1.       PostScript Type 1 font program data
 
 # X11 font files in SNF (Server Natural Format) format
 0      belong          00000004                X11 SNF font data, MSB first
@@ -49,3 +49,9 @@
 # downloadable fonts for browser (prints type) anthon@mnt.org
 0      string          PFR1            PFR1 font
 >102   string          >0              \b: %s
+
+# True Type fonts
+0      string  \000\001\000\000\000    TrueType font data
+
+0      string          \007\001\001\000Copyright\ (c)\ 199     Adobe Multiple Master font
+0      string          \012\001\001\000Copyright\ (c)\ 199     Adobe Multiple Master font
diff --git a/magic/Magdir/games b/magic/Magdir/games
new file mode 100644 (file)
index 0000000..ff0f4fa
--- /dev/null
@@ -0,0 +1,26 @@
+#------------------------------------------------------------------------------
+# games:  file(1) for games
+
+# Thomas M. Ott (ThMO)
+1      string  =WAD            DOOM data,
+>0     string  =I              main wad
+>0     string  =P              patch wad
+>0     byte    x               unknown junk
+
+# Fabio Bonelli <fabiobonelli@libero.it>
+# Quake II - III data files
+0       string  IDP2           Quake II 3D Model file,
+>20     long    x               %lu skin(s),
+>8      long    x               (%lu x
+>12     long    x              %lu),
+>40     long    x               %lu frame(s),
+>16     long    x               Frame size %lu bytes,
+>24     long   x               %lu vertices/frame,
+>28     long    x              %lu texture coordinates,
+>32     long    x               %lu triangles/frame
+
+0       string  IBSP            Quake
+>4      long    0x26            II Map file (BSP)
+>4      long    0x2E           III Map file (BSP)
+
+0       string  IDS2            Quake II SP2 sprite file
index 19130733832762ff9b7afd5c8c386df661348b39..466d4dbaa356be4e1fd6a0cec9e2cf8922b404c9 100644 (file)
 # `tgatoppm' recognizes a superset (Index may be anything)
 1      belong&0xfff7ffff       0x01010000      Targa image data - Map
 >2     byte&8                  8               - RLE
+>12    leshort                 >0              %hd x
+>14    leshort                 >0              %hd
 1      belong&0xfff7ffff       0x00020000      Targa image data - RGB
 >2     byte&8                  8               - RLE
+>12    leshort                 >0              %hd x
+>14    leshort                 >0              %hd
 1      belong&0xfff7ffff       0x00030000      Targa image data - Mono
 >2     byte&8                  8               - RLE
+>12    leshort                 >0              %hd x
+>14    leshort                 >0              %hd
 
 # PBMPLUS images
 # The next byte following the magic is always whitespace.
 # DICOM medical imaging data
 128    string  DICM                    DICOM medical imaging data
 
-# XWD - X-Windows Dump file.
+# XWD - X Window Dump file.
 #   As described in /usr/X11R6/include/X11/XWDFile.h
 #   used by the xwd program.
 #   Bradford Castalia, idaeim, 1/01
-4      belong  7                       XWD X-Windows Dump image data
+4      belong  7                       XWD X Window Dump image data
 >100   string  >\0                     \b, "%s"
 >16    belong  x                       \b, %dx
 >20    belong  x                       \b%dx
 
 # Adobe Photoshop
 0      string          8BPS Adobe Photoshop Image
+
+# XV thumbnail indicator (ThMO)
+0      string          P7\ 332         XV thumbnail image data
+
+# NITF is defined by United States MIL-STD-2500A
+0      string  NITF    National Imagery Transmission Format
+>25    string  >\0     dated %.14s
+
+# GEM Image: Version 1, Headerlen 8 (Wolfram Kleff)
+0      belong          0x00010008      GEM Image data
+>12    beshort         x               %d x
+>14    beshort         x               %d,
+>4     beshort         x               %d planes,
+>8     beshort         x               %d x
+>10    beshort         x               %d pixelsize
+
+# GEM Metafile (Wolfram Kleff)
+0      lelong          0x0018FFFF      GEM Metafile data
+>4     leshort         x               version %d
+
+#
+# SMJPEG. A custom Motion JPEG format used by Loki Entertainment
+# Software Torbjorn Andersson <d91tan@Update.UU.SE>.
+#
+0      string  \0\nSMJPEG      SMJPEG
+>8     belong  x               %d.x data
+# According to the specification you could find any number of _TXT
+# headers here, but I can't think of any way of handling that. None of
+# the SMJPEG files I tried it on used this feature. Even if such a
+# file is encountered the output should still be reasonable.
+>16    string  _SND            \b,
+>>24   beshort >0              %d Hz
+>>26   byte    8               8-bit
+>>26   byte    16              16-bit
+>>28   string  NONE            uncompressed
+# >>28 string  APCM            ADPCM compressed
+>>27   byte    1               mono
+>>28   byte    2               stereo
+# Help! Isn't there any way to avoid writing this part twice?
+>>32   string  _VID            \b,
+# >>>48        string  JFIF            JPEG
+>>>40  belong  >0              %d frames
+>>>44  beshort >0              (%d x
+>>>46  beshort >0              %d)
+>16    string  _VID            \b,
+# >>32 string  JFIF            JPEG
+>>24   belong  >0              %d frames
+>>28   beshort >0              (%d x
+>>30   beshort >0              %d)
+
+0      string  Paint\ Shop\ Pro\ Image\ File   Paint Shop Pro Image File
+
+# "thumbnail file" (icon)
+# descended from "xv", but in use by other applications as well (Wolfram Kleff)
+0       string          P7\ 332         XV "thumbnail file" (icon) data
+
+# taken from fkiss: (<yav@mte.biglobe.ne.jp> ?)
+0       string          KiSS            KISS/GS
+>4      byte            16              color
+>>5     byte            x               %d bit
+>>8     leshort         x               %d colors
+>>10    leshort         x               %d groups
+>4      byte            32              cell
+>>5     byte            x               %d bit
+>>8     leshort         x               %d x
+>>10    leshort         x               %d
+>>12    leshort         x               +%d
+>>14    leshort         x               +%d
+
+# Webshots (www.webshots.com), by John Harrison
+0       string          C\253\221g\230\0\0\0 Webshots Desktop .wbz file
+
+# Hercules DASD image files
+# From Jan Jaeger <jj@septa.nl>
+0       string  CKD_P370        Hercules CKD DASD image file
+>8      long    x               \b, %d heads per cylinder
+>12     long    x               \b, track size %d bytes
+>16     byte    x               \b, device type 33%2.2X
+
+0       string  CKD_C370        Hercules compressed CKD DASD image file
+>8      long    x               \b, %d heads per cylinder
+>12     long    x               \b, track size %d bytes
+>16     byte    x               \b, device type 33%2.2X
+
+0       string  CKD_S370        Hercules CKD DASD shadow file
+>8      long    x               \b, %d heads per cylinder
+>12     long    x               \b, track size %d bytes
+>16     byte    x               \b, device type 33%2.2X
+
+# Squeak images and - etoffi@softhome.net
+0 string \146\031\0\0  Squeak image data
+0 string 'From\040Squeak  Squeak program text
index 4db4958a4d2d1bd0dfbeb7745b49901dbea89d0f..a0ea7e84b14614d011311271839836a92c33e8bc 100644 (file)
@@ -60,6 +60,8 @@
 4086   string          SWAP-SPACE      Linux/i386 swap file
 # according to man page of mkswap (8) March 1999
 4086   string          SWAPSPACE2      Linux/i386 swap file (new style)
+>0x400 long            x               %d (4K pages)
+>0x404 long            x               size %d pages
 # ECOFF magic for OSF/1 and Linux (only tested under Linux though)
 #
 #      from Erik Troan (ewt@redhat.com) examining od dumps, so this
 # and others such as Axel Kohlmeyer <akohlmey@rincewind.chemie.uni-ulm.de>
 # and Nicolás Lichtmaier <nick@debian.org>
 # All known start with: b8 c0 07 8e d8 b8 00 90 8e c0 b9 00 01 29 f6 29
-514            string  HdrS            Linux kernel
->518           leshort >0
->>529          byte    0               zImage data,
->>529          byte    1               bzImage data,
->0x048c                byte    0x31
->>0x048c       string  x               version %s
->0x0493                byte    0x31
->>0x0493       string  x               version %s
->0x048c                byte    0x32
->>0x048c       string  x               version %s
->0x0493                byte    0x32
->>0x0493       string  x               version %s
->0x04df                byte    0x32
->>0x04df       string  x               version %s
->0x04fb                byte    0x32
->>0x04fb       string  x               version %s
+# Linux kernel boot images (i386 arch) (Wolfram Kleff)
+514    string          HdrS            Linux kernel
+>510   leshort         0xAA55          x86 boot executable
+>>518  leshort         >=3D0x200
+>>529  byte            0               zImage,
+>>>529 byte            1               bzImage,
+>>>(526.s+0x200) string        >\0             version %s,
+>>498  leshort         1               RO-rootFS,
+>>498  leshort         0               RW-rootFS,
+>>508  leshort         >0              root_dev 0x%X,
+>>502  leshort         >0              swap_dev 0x%X,
+>>504  leshort         >0              RAMdisksize %u KB,
+>>506  leshort         0xFFFF          Normal VGA
+>>506  leshort         0xFFFE          Extended VGA
+>>506  leshort         0xFFFD          Prompt for Videomode
+>>506  leshort         >0              Video mode %d
 # This also matches new kernels, which were caught above by "HdrS".
 0              belong  0xb8c0078e      Linux kernel
 >0x1e3         string  Loading         version 1.3.79 or older
 >0x1e9         string  Loading         from prehistoric times
-# LSM entries - Nicolás Lichtmaier <nick@feedback.net.ar>
+
+# System.map files - Nicol=EF=BF=BDs Lichtmaier <nick@debian.org>
+8      string  \ A\ _text      Linux kernel symbol map text
+
+# LSM entries - Nicol=EF=BF=BDs Lichtmaier <nick@debian.org>
 0      string  Begin3  Linux Software Map entry text
+0      string  Begin4  Linux Software Map entry text (new format)
+
+# From Matt Zimmerman
+0       belong  0x4f4f4f4d      User-mode Linux COW file
+>4      belong  x               \b, version %d
+>8      string  >\0             \b, backing file %s
 
 ############################################################################
 # Linux kernel versions
index 2288ad4114cd92e203db5bc98b9d8633d55eab6e..2cace95cb33a0111b7025c7b0da875e38cfdf1ec 100644 (file)
 
 # From: Simon Matter <simon.matter@invoca.ch>
 0      string          \241\002\213\015skiplist\ file\0\0\0    Cyrus skiplist DB
+
+# JAM(mbp) Fidonet message area databases
+# JHR file
+0      string  JAM\0                   JAM message area header file
+>12    leshort >0                      (%d messages)
+
+# Squish Fidonet message area databases
+# SQD file (requires at least one message in the area)
+256    leshort 0xAFAE4453              Squish message area data file
+>4     leshort >0                      (%d messages)
index 136c25361eed130bf7ec9ad0ef0d3e68d1307070..86e3b7bd0b2e29507c2e655cc7f10fb8fe0c28e9 100644 (file)
 
 # other (* matches it is a comment start in these langs
 0      string  (*      Mathematica, or Pascal,  Modula-2 or 3 code
+
+#########################
+# MatLab v5
+0       string  MATLAB  Matlab v5 mat-file
+>126    short   0x494d  (big endian)
+>>124   beshort x       version 0x%04x
+>126    short   0x4d49  (little endian)
+>>124   leshort x       version 0x%04x
+
diff --git a/magic/Magdir/misctools b/magic/Magdir/misctools
new file mode 100644 (file)
index 0000000..c32d52c
--- /dev/null
@@ -0,0 +1,5 @@
+#-----------------------------------------------------------------------------
+# misctools:  file(1) magic for miscelanous UNIX tools.
+#
+0      string          %%!!            X-Post-It-Note text
+0      string          BEGIN:VCALENDAR         vCalendar calendar file
index 1a3174cc600cad9d5a24674c6a55dcd7cf007cad..bfe7ea030ee84a9d193c828dfb4768c2297500ef 100644 (file)
 >6     belong                  x               dat=%ld,
 >10    belong                  x               bss=%ld,
 >14    belong                  x               sym=%ld)
+
+# Atari ST/TT... program format (sent by Wolfram Kleff <kleff@cs.uni-bonn.de>)
+0       beshort         0x601A          Atari 68xxx executable,
+>2      belong          x               text len %lu,
+>6      belong          x               data len %lu,
+>10     belong          x               BSS len %lu,
+>14     belong          x               symboltab len %lu,
+>18     belong          0
+>22     belong          &0x01           fastload flag,
+>22     belong          &0x02           may be loaded to alternate RAM,
+>22     belong          &0x04           malloc may be from alternate RAM,
+>22     belong          x               flags: 0x%lX,
+>26     beshort         0               no relocation tab
+>26     beshort         !0              + relocation tab
+>30     string          SFX             [Self-Extracting LZH SFX archive]
+>38     string          SFX             [Self-Extracting LZH SFX archive]
+>44     string          ZIP!            [Self-Extracting ZIP SFX archive]
+
+0       beshort         0x0064          Atari 68xxx CPX file
+>8      beshort         x               (version %04lx)
index 99f11095812df5db404eaf5a9962f23a5886c3a0..ed451d8718b64be73f0d4ade19b31fe58ea8ca56 100644 (file)
@@ -4,7 +4,7 @@
 #
 
 # .BAT files (Daniel Quinlan, quinlan@yggdrasil.com)
-0      string  @echo\ off      MS-DOS batch file text
+0      string/c        @echo\ off      MS-DOS batch file text
 
 # XXX - according to Microsoft's spec, at an offset of 0x3c in a
 # PE-format executable is the offset in the file of the PE header;
 #
 
 #
-# Windows NT Registry files.
+# Windows Registry files.
 #
-0      string          regf            Windows NT Registry file
+0      string          regf            Windows NT registry file
+0      string          CREG            Windows 95 registry file
 
 # Popular applications
 2080   string  Microsoft\ Word\ 6.0\ Document  %s
 0       string  PO^Q`                          Microsoft Word 6.0 Document
 #
 0      string  \376\067\0\043                  Microsoft Office Document
-0      string  \320\317\021\340\241\261        Microsoft Office Document
+0      string  \320\317\021\340\241\261\032\341        Microsoft Office Document
 0      string  \333\245-\0\0\0                 Microsoft Office Document
 #
 2080   string  Microsoft\ Excel\ 5.0\ Worksheet        %s
 
 # TNEF magic From "Joomy" <joomy@se-ed.net> 
 0      leshort         0x223e9f78      TNEF
+
+# HtmlHelp files (.chm)
+0      string  ITSF\003\000\000\000\x60\000\000\000\001\000\000\000    MS Windows HtmlHelp Data
+
+# GFA-BASIC (Wolfram Kleff)
+2      string          GFA-BASIC3      GFA-BASIC 3 data
+
+# DJGPP compiled files
+# v >2, uses DPMI & small(2k) stub (Robert vd Boon, rjvdboon@europe.com)
+0x200  string          go32stub        DOS-executable compiled w/DJGPP
+>0x20c string          >0              (stub v%.4s)
+>>0x8b2        string          djp             [compressed w/%s
+>>>&1  string          >\0             %.4s]
+>>0x8ad        string          UPX             [compressed w/%s
+>>>&1  string          >\0             %.4s]
+>>0x1c string          pmodedj         stubbed with %s
diff --git a/magic/Magdir/ocaml b/magic/Magdir/ocaml
new file mode 100644 (file)
index 0000000..f8ba976
--- /dev/null
@@ -0,0 +1,13 @@
+
+#------------------------------------------------------------------------------
+# ocaml: file(1) magic for Objective Caml files.
+0      string  Caml1999        Objective caml
+>8     string  X               exec file
+>8     string  I               interface file (.cmi)
+>8     string  O               object file (.cmo)
+>8     string  A               library file (.cma)
+>8     string  Y               native object file (.cmx)
+>8     string  Z               native library file (.cmxa)
+>8     string  M               abstract syntax tree implementation file
+>8     string  N               abstract syntax tree interface file
+>9     string  >\0             (Version %3.3s).
index 46bc632e1521f0f20a8e6290d77fbdfa1147c39e..01de0041e73298cce0c7910e889842652421cc99 100644 (file)
 # HACK
 60      belong                  0x4841434b      HackMaster hack
 >0      string                  >\0             "%s"
+
+# Variety of PalmOS document types
+# Michael-John Turner <mj@debian.org>
+# Thanks to Hasan Umit Ezerce <humit@tr-net.net.tr> for his DocType
+60     string                  BVokBDIC        BDicty PalmOS document
+>0     string                  >\0             "%s"
+60     string                  DB99DBOS        DB PalmOS document
+>0     string                  >\0             "%s"
+60     string                  vIMGView        FireViewer/ImageViewer PalmOS document
+>0     string                  >\0             "%s"
+60     string                  PmDBPmDB        HanDBase PalmOS document
+>0     string                  >\0             "%s"
+60     string                  InfoINDB        InfoView PalmOS document
+>0     string                  >\0             "%s"
+60     string                  ToGoToGo        iSilo PalmOS document
+>0     string                  >\0             "%s"
+60     string                  JfDbJBas        JFile PalmOS document
+>0     string                  >\0             "%s"
+60     string                  JfDbJFil        JFile Pro PalmOS document
+>0     string                  >\0             "%s"
+60     string                  DATALSdb        List PalmOS document
+>0     string                  >\0             "%s"
+60     string                  Mdb1Mdb1        MobileDB PalmOS document
+>0     string                  >\0             "%s"
+60     string                  PNRdPPrs        PeanutPress PalmOS document
+>0     string                  >\0             "%s"
+60     string                  DataPlkr        Plucker PalmOS document
+>0     string                  >\0             "%s"
+60     string                  DataSprd        QuickSheet PalmOS document
+>0     string                  >\0             "%s"
+60     string                  SM01SMem        SuperMemo PalmOS document
+>0     string                  >\0             "%s"
+60     string                  DataTlPt        TealDoc PalmOS document
+>0     string                  >\0             "%s"
+60     string                  InfoTlIf        TealInfo PalmOS document
+>0     string                  >\0             "%s"
+60     string                  DataTlMl        TealMeal PalmOS document
+>0     string                  >\0             "%s"
+60     string                  DataTlPt        TealPaint PalmOS document
+>0     string                  >\0             "%s"
+60     string                  dataTDBP        ThinkDB PalmOS document
+>0     string                  >\0             "%s"
+60     string                  TdatTide        Tides PalmOS document
+>0     string                  >\0             "%s"
+60     string                  ToRaTRPW        TomeRaider PalmOS document
+>0     string                  >\0             "%s"
+
+# A GutenPalm zTXT etext for use on Palm Pilots (http://gutenpalm.sf.net)
+# For version 1.xx zTXTs, outputs version and numbers of bookmarks and
+#   annotations.
+# For other versions, just outputs version.
+#
+0x3C           string          zTXT            A GutenPalm zTXT e-book
+>0             string          >\0             "%s"
+>(0x4E.L)      byte            0
+>>(0x4E.L+1)   byte            x               (v0.%02d)
+>(0x4E.L)      byte            1
+>>(0x4E.L+1)   byte            x               (v1.%02d)
+>>>(0x4E.L+10) beshort         >0
+>>>>(0x4E.L+10) beshort                <2              - 1 bookmark
+>>>>(0x4E.L+10) beshort                >1              - %d bookmarks
+>>>(0x4E.L+14) beshort         >0
+>>>>(0x4E.L+14) beshort                <2              - 1 annotation
+>>>>(0x4E.L+14) beshort                >1              - %d annotations
+>(0x4E.L)      byte            >1              (v%d.
+>>(0x4E.L+1)   byte            x               %02d)
+
+# Palm OS .prc file types
+0x3C           string          libr            Palm OS dynamic library data
+>0             string          >\0             "%s"
+0x3C           string          ptch            Palm OS operating system patch data
+>0             string          >\0             "%s"
index 28b608667f13308604b397a225f20f71e887a9a7..f70b8dccb8544cbc48066a0b5537cc536c059687 100644 (file)
@@ -11,6 +11,7 @@
 0      string          eval\ "exec\ /usr/bin/perl      perl script text
 0      string/b        #!\ /usr/local/bin/perl         perl script text
 0      string          eval\ "exec\ /usr/local/bin/perl        perl script text executable
+0      string          eval\ '(exit\ $?0)'\ &&\ eval\ 'exec    perl script text
 
 # a couple more, by me
 # XXX: christos matches
index dfbd5b97ceeec126b40443e57c55ddcc31c6df31..c359c3577e9164da010404ba3e975bb50e771dd9 100644 (file)
 # From <mike@flyn.org>
 # These are the /etc/magic entries to decode data sent to an Epson printer.
 0       string          \x1B\x40\x1B\x28\x52\x08\x00\x00REMOTE1P        Epson Stylus Color 460 data
+
+
+#------------------------------------------------------------------------------
+# zenographics:  file(1) magic for Zenographics ZjStream printer data
+# Rick Richardson  rickr@mn.rr.com
+0      string          JZJZ
+>0x12  string          ZZ              Zenographics ZjStream printer data (big-endian)
+0      string          ZJZJ
+>0x12  string          ZZ              Zenographics ZjStream printer data (little-endian)
+
+
+#------------------------------------------------------------------------------
+# Oak Technologies printer stream
+# Rick Richardson <rickr@mn.rr.com>
+0       string          OAK
+>0x07  byte            0
+>0x0b  byte            0       Oak Technologies printer stream
+
+# This would otherwise be recognized as PostScript - nick@debian.org
+0      string          %!VMF           SunClock's Vector Map Format data
index fc8f0e601fa1bd21ab2d9b0c31941afac1a829fe..2381400c803871642041c9f8a17612df2ee54767 100644 (file)
 >8     string          RMMP            \b, multimedia movie
 # Microsoft WAVE format (*.wav)
 >8     string          WAVE            \b, WAVE audio
+# Corel Draw Picture
+>8     string          CDRA            \b, Corel Draw Picture
 >>20   leshort         1               \b, Microsoft PCM
 >>>34  leshort         >0              \b, %d bit
 >>20   leshort         2               \b, Microsoft ADPCM
 >>20   leshort         6               \b, ITU G.711 a-law
->>20   leshort         7               \b, ITU G.711 u-law
+>>20   leshort         7               \b, ITU G.711 mu-law
 >>20   leshort         17              \b, IMA ADPCM
 >>20   leshort         20              \b, ITU G.723 ADPCM (Yamaha)
 >>20   leshort         49              \b, GSM 6.10
@@ -89,6 +91,8 @@
 >8     string          RMMP            \b, multimedia movie
 # Microsoft WAVE format (*.wav)
 >8     string          WAVE            \b, WAVE audio
+# Corel Draw Picture
+>8     string          CDRA            \b, Corel Draw Picture
 >>20   leshort         1               \b, Microsoft PCM
 >>>34  leshort         >0              \b, %d bit
 >>22   beshort         =1              \b, mono
index 55b8301ee3ec1251b40ce70a67c764c2e1f521c0..a333818e631b7e4b10a902d065fe85e242fb026c 100644 (file)
 
 # Extensible markup language (XML), a subset of SGML
 # from Marc Prud'hommeaux (marc@apocalypse.org)
-0   string/cb  \<?xml                  XML document text
+0      string/cb       \<?xml                  XML document text
+0      string          \<?xml\ version "       XML
+>15    string          >\0                     %.3s document text
+>>23   string          \<xsl:stylesheet        (XSL stylesheet)
+>>24   string          \<xsl:stylesheet        (XSL stylesheet)
+0      string/b        \<?xml                  XML document text
+0      string/cb       \<?xml                  broken XML document text
 
 
 # SGML, mostly from rph@sq
diff --git a/magic/Magdir/sinclair b/magic/Magdir/sinclair
new file mode 100644 (file)
index 0000000..702875e
--- /dev/null
@@ -0,0 +1,126 @@
+
+#------------------------------------------------------------------------------
+# sinclair:  file(1) sinclair QL
+
+# additions to /etc/magic by Thomas M. Ott (ThMO)
+
+# Sinclair QL floppy disk formats (ThMO)
+0      string  =QL5            QL disk dump data,
+>3     string  =A              720 KB,
+>3     string  =B              1.44 MB,
+>3     string  =C              3.2 MB,
+>4     string  >\0             label:%.10s
+
+# Sinclair QL OS dump (ThMO)
+# (NOTE: if `file' would be able to use indirect references in a endian format
+#       differing from the natural host format, this could be written more
+#       reliably and faster...)
+#
+# we *can't* lookup QL OS code dumps, because `file' is UNABLE to read more
+# than the first 8K of a file... #-(
+#
+#0             belong  =0x30000
+#>49124                belong  <47104
+#>>49128               belong  <47104
+#>>>49132      belong  <47104
+#>>>>49136     belong  <47104  QL OS dump data,
+#>>>>>49148    string  >\0     type %.3s,
+#>>>>>49142    string  >\0     version %.4s
+
+# Sinclair QL firmware executables (ThMO)
+0      string  NqNqNq`\004     QL firmware executable (BCPL)
+
+# Sinclair QL libraries (ThMO)
+0      beshort =0xFB01         QL library archive data
+
+# Sinclair QL executbables (ThMO)
+6      beshort =0x4AFB         QL executable,
+>10    string  =\0             un-named
+>8     beshort =1
+>>10   string  >\0             named: %.1s
+>8     beshort =2
+>>10   string  >\0             named: %.2s
+>8     beshort =3
+>>10   string  >\0             named: %.3s
+>8     beshort =4
+>>10   string  >\0             named: %.4s
+>8     beshort =5
+>>10   string  >\0             named: %.5s
+>8     beshort =6
+>>10   string  >\0             named: %.6s
+>8     beshort =7
+>>10   string  >\0             named: %.7s
+>8     beshort =8
+>>10   string  >\0             named: %.8s
+>8     beshort =9
+>>10   string  >\0             named: %.9s
+>8     beshort =10
+>>10   string  >\0             named: %.10s
+>8     beshort =11
+>>10   string  >\0             named: %.11s
+>8     beshort =12
+>>10   string  >\0             named: %.12s
+>8     beshort =13
+>>10   string  >\0             named: %.13s
+>8     beshort =14
+>>10   string  >\0             named: %.14s
+>8     beshort =15
+>>10   string  >\0             named: %.15s
+>8     beshort =16
+>>10   string  >\0             named: %.16s
+>8     beshort =17
+>>10   string  >\0             named: %.17s
+>8     beshort =18
+>>10   string  >\0             named: %.18s
+>8     beshort =19
+>>10   string  >\0             named: %.19s
+>8     beshort =20
+>>10   string  >\0             named: %.20s
+>8     beshort >20
+>>10   string  >\0             (truncated) named: %.20s
+
+# Sinclair QL rom (ThMO)
+0      belong  =0x4AFB0001     QL plugin-ROM data,
+>10    string  =\0             un-named
+>8     beshort =1
+>>10   string  >\0             named: %.1s
+>8     beshort =2
+>>10   string  >\0             named: %.2s
+>8     beshort =3
+>>10   string  >\0             named: %.3s
+>8     beshort =4
+>>10   string  >\0             named: %.4s
+>8     beshort =5
+>>10   string  >\0             named: %.5s
+>8     beshort =6
+>>10   string  >\0             named: %.6s
+>8     beshort =7
+>>10   string  >\0             named: %.7s
+>8     beshort =8
+>>10   string  >\0             named: %.8s
+>8     beshort =9
+>>10   string  >\0             named: %.9s
+>8     beshort =10
+>>10   string  >\0             named: %.10s
+>8     beshort =11
+>>10   string  >\0             named: %.11s
+>8     beshort =12
+>>10   string  >\0             named: %.12s
+>8     beshort =13
+>>10   string  >\0             named: %.13s
+>8     beshort =14
+>>10   string  >\0             named: %.14s
+>8     beshort =15
+>>10   string  >\0             named: %.15s
+>8     beshort =16
+>>10   string  >\0             named: %.16s
+>8     beshort =17
+>>10   string  >\0             named: %.17s
+>8     beshort =18
+>>10   string  >\0             named: %.18s
+>8     beshort =19
+>>10   string  >\0             named: %.19s
+>8     beshort =20
+>>10   string  >\0             named: %.20s
+>8     beshort >20
+>>10   string  >\0             (truncated) named: %.20s
index e7a5549b675aae5e7ceff5f78b78eba27a39384a..ab9fd0467f424ba75717cf28655e01918ace6e12 100644 (file)
 >3      byte            2               - character array
 >3      byte            3               - memory block
 >>14    belong          0x001B0040      (screen)
+
+# The following three blocks are from pak21-spectrum@srcf.ucam.org
+# TZX tape images
+0      string          ZXTape!\x1a     Spectrum .TZX data
+>8     byte            x               version %d
+>9     byte            x               .%d
+
+# RZX input recording files
+0      string          RZX!            Spectrum .RZX data
+>4     byte            x               version %d
+>5     byte            x               .%d
+
+# And three sorts of disk image
+0      string          MV\ -\ CPCEMU\ Disk-Fil Amstrad/Spectrum .DSK data
+0      string          MV\ -\ CPC\ format\ Dis Amstrad/Spectrum DU54 .DSK data
+0      string          EXTENDED\ CPC\ DSK\ Fil Amstrad/Spectrum Extended .DSK data
index d740060a5b4426b82bf405f11367d4f96a9dd65d..25cf00e0f5dfe7660ad8e381f9ef99c44534874a 100644 (file)
 #
 # From: Ryan McGuire (rmcguire@freenet.columbus.oh.us).
 #
+# Update: Romain Lievin (roms@lpg.ticalc.org).
+#
 # NOTE: This list is not complete.
+# Files for the TI-80 and TI-81 are pretty rare. I'm not going to put the
+# program/group magic numbers in here because I cannot find any.
+0              string          **TI80**        TI-80 Graphing Calculator File.
+0              string          **TI81**        TI-81 Graphing Calculator File.
+#
+# Magic Numbers for the TI-73
 #
+0              string          **TI73**        TI-73 Graphing Calculator
+>0x00003B      byte            0x00            (real number)
+>0x00003B      byte            0x01            (list)
+>0x00003B      byte            0x02            (matrix)
+>0x00003B      byte            0x03            (equation)
+>0x00003B      byte            0x04            (string)
+>0x00003B      byte            0x05            (program)
+>0x00003B      byte            0x06            (assembly program)
+>0x00003B      byte            0x07            (picture)
+>0x00003B      byte            0x08            (gdb)
+>0x00003B      byte            0x0C            (complex number)
+>0x00003B      byte            0x0F            (window settings)
+>0x00003B      byte            0x10            (zoom)
+>0x00003B      byte            0x11            (table setup)
+>0x00003B      byte            0x13            (backup)
+
 # Magic Numbers for the TI-82
 #
-0               string          **TI82**        TI-82 Graphing Calculator
->0x000037       byte            0x0B            TI-BASIC Group/Program File.
+0              string          **TI82**        TI-82 Graphing Calculator
+>0x00003B      byte            0x00            (real)
+>0x00003B      byte            0x01            (list)
+>0x00003B      byte            0x02            (matrix)
+>0x00003B      byte            0x03            (Y-variable)
+>0x00003B      byte            0x05            (program)
+>0x00003B      byte            0x06            (protected prgm)
+>0x00003B      byte            0x07            (picture)
+>0x00003B      byte            0x08            (gdb)
+>0x00003B      byte            0x0B            (window settings)
+>0x00003B      byte            0x0C            (window settings)
+>0x00003B      byte            0x0D            (table setup)
+>0x00003B      byte            0x0E            (screenshot)
+>0x00003B      byte            0x0F            (backup)
 #
 # Magic Numbers for the TI-83
 #
-0               string          **TI83**        TI-83 Graphing Calculator
->0x000037       byte            0x0B            TI-BASIC Group/Program File.
+0              string          **TI83**        TI-83 Graphing Calculator
+>0x00003B      byte            0x00            (real)
+>0x00003B      byte            0x01            (list)
+>0x00003B      byte            0x02            (matrix)
+>0x00003B      byte            0x03            (Y-variable)
+>0x00003B      byte            0x04            (string)
+>0x00003B      byte            0x05            (program)
+>0x00003B      byte            0x06            (protected prgm)
+>0x00003B      byte            0x07            (picture)
+>0x00003B      byte            0x08            (gdb)
+>0x00003B      byte            0x0B            (window settings)
+>0x00003B      byte            0x0C            (window settings)
+>0x00003B      byte            0x0D            (table setup)
+>0x00003B      byte            0x0E            (screenshot)
+>0x00003B      byte            0x13            (backup)
+#
+# Magic Numbers for the TI-83+
+#
+0              string          **TI83F*        TI-83+ Graphing Calculator
+>0x00003B      byte            0x00            (real number)
+>0x00003B      byte            0x01            (list)
+>0x00003B      byte            0x02            (matrix)
+>0x00003B      byte            0x03            (equation)
+>0x00003B      byte            0x04            (string)
+>0x00003B      byte            0x05            (program)
+>0x00003B      byte            0x06            (assembly program)
+>0x00003B      byte            0x07            (picture)
+>0x00003B      byte            0x08            (gdb)
+>0x00003B      byte            0x0C            (complex number)
+>0x00003B      byte            0x0F            (window settings)
+>0x00003B      byte            0x10            (zoom)
+>0x00003B      byte            0x11            (table setup)
+>0x00003B      byte            0x13            (backup)
+>0x00003B      byte            0x15            (application variable)
+>0x00003B      byte            0x17            (group of variable)
+
 #
 # Magic Numbers for the TI-85
 #
-0               string          **TI85**        TI-85 Graphing Calculator
->11             string          Backup          Backup File.
->0x000032       string          ZS4             - ZShell Version 4 File.
->0x000032       string          ZS3             - ZShell Version 3 File.
->0x00000B       string          GDatabase       Graphics Database.
->0x00003B       byte            0x12            TI-BASIC Group/Program File.
+0              string          **TI85**        TI-85 Graphing Calculator
+>0x00003B      byte            0x00            (real number)
+>0x00003B      byte            0x01            (complex number)
+>0x00003B      byte            0x02            (real vector)
+>0x00003B      byte            0x03            (complex vector)
+>0x00003B      byte            0x04            (real list)
+>0x00003B      byte            0x05            (complex list)
+>0x00003B      byte            0x06            (real matrix)
+>0x00003B      byte            0x07            (complex matrix)
+>0x00003B      byte            0x08            (real constant)
+>0x00003B      byte            0x09            (complex constant)
+>0x00003B      byte            0x0A            (equation)
+>0x00003B      byte            0x0C            (string)
+>0x00003B      byte            0x0D            (function GDB)
+>0x00003B      byte            0x0E            (polar GDB)
+>0x00003B      byte            0x0F            (parametric GDB)
+>0x00003B      byte            0x10            (diffeq GDB)
+>0x00003B      byte            0x11            (picture)
+>0x00003B      byte            0x12            (program)
+>0x00003B      byte            0x13            (range)
+>0x00003B      byte            0x17            (window settings)
+>0x00003B      byte            0x18            (window settings)
+>0x00003B      byte            0x19            (window settings)
+>0x00003B      byte            0x1A            (window settings)
+>0x00003B      byte            0x1B            (zoom)
+>0x00003B      byte            0x1D            (backup)
+>0x00003B      byte            0x1E            (unknown)
+>0x00003B      byte            0x2A            (equation)
+>0x000032      string          ZS4             - ZShell Version 4 File.
+>0x000032      string          ZS3             - ZShell Version 3 File.
+#
+# Magic Numbers for the TI-86
+#
+0              string          **TI86**        TI-86 Graphing Calculator
+>0x00003B      byte            0x00            (real number)
+>0x00003B      byte            0x01            (complex number)
+>0x00003B      byte            0x02            (real vector)
+>0x00003B      byte            0x03            (complex vector)
+>0x00003B      byte            0x04            (real list)
+>0x00003B      byte            0x05            (complex list)
+>0x00003B      byte            0x06            (real matrix)
+>0x00003B      byte            0x07            (complex matrix)
+>0x00003B      byte            0x08            (real constant)
+>0x00003B      byte            0x09            (complex constant)
+>0x00003B      byte            0x0A            (equation)
+>0x00003B      byte            0x0C            (string)
+>0x00003B      byte            0x0D            (function GDB)
+>0x00003B      byte            0x0E            (polar GDB)
+>0x00003B      byte            0x0F            (parametric GDB)
+>0x00003B      byte            0x10            (diffeq GDB)
+>0x00003B      byte            0x11            (picture)
+>0x00003B      byte            0x12            (program)
+>0x00003B      byte            0x13            (range)
+>0x00003B      byte            0x17            (window settings)
+>0x00003B      byte            0x18            (window settings)
+>0x00003B      byte            0x19            (window settings)
+>0x00003B      byte            0x1A            (window settings)
+>0x00003B      byte            0x1B            (zoom)
+>0x00003B      byte            0x1D            (backup)
+>0x00003B      byte            0x1E            (unknown)
+>0x00003B      byte            0x2A            (equation)
+#
+# Magic Numbers for the TI-89
+#
+0              string          **TI89**        TI-89 Graphing Calculator
+>0x000048      byte            0x00            (expression)
+>0x000048      byte            0x04            (list)
+>0x000048      byte            0x06            (matrix)
+>0x000048      byte            0x0A            (data)
+>0x000048      byte            0x0B            (text)
+>0x000048      byte            0x0C            (string)
+>0x000048      byte            0x0D            (graphic data base)
+>0x000048      byte            0x0E            (figure)
+>0x000048      byte            0x10            (picture)
+>0x000048      byte            0x12            (program)
+>0x000048      byte            0x13            (function)
+>0x000048      byte            0x14            (macro)
+>0x000048      byte            0x1C            (zipped)
+>0x000048      byte            0x21            (assembler)
 #
 # Magic Numbers for the TI-92
 #
-0               string          **TI92**        TI-92 Graphing Calculator
->0x000058       byte            0x12            TI-BASIC Group File.
->0x000012       string          Function        Function.
->0x000048       byte            0x12            TI-BASIC Program.
-# Files for the TI-80 and TI-81 are pretty rare. I'm not going to put the
-# program/group magic numbers in here because I cannot find any.
-0               string          **TI80**        TI-80 Graphing Calculator File.
-0               string          **TI81**        TI-81 Graphing Calculator File.
+0              string          **TI92**        TI-92 Graphing Calculator
+>0x000048      byte            0x00            (expression)
+>0x000048      byte            0x04            (list)
+>0x000048      byte            0x06            (matrix)
+>0x000048      byte            0x0A            (data)
+>0x000048      byte            0x0B            (text)
+>0x000048      byte            0x0C            (string)
+>0x000048      byte            0x0D            (graphic data base)
+>0x000048      byte            0x0E            (figure)
+>0x000048      byte            0x10            (picture)
+>0x000048      byte            0x12            (program)
+>0x000048      byte            0x13            (function)
+>0x000048      byte            0x14            (macro)
+>0x000048      byte            0x1D            (backup)
+#
+# Magic Numbers for the TI-92+/V200
+#
+0              string          **TI92P*        TI-92+/V200 Graphing Calculator
+>0x000048      byte            0x00            (expression)
+>0x000048      byte            0x04            (list)
+>0x000048      byte            0x06            (matrix)
+>0x000048      byte            0x0A            (data)
+>0x000048      byte            0x0B            (text)
+>0x000048      byte            0x0C            (string)
+>0x000048      byte            0x0D            (graphic data base)
+>0x000048      byte            0x0E            (figure)
+>0x000048      byte            0x10            (picture)
+>0x000048      byte            0x12            (program)
+>0x000048      byte            0x13            (function)
+>0x000048      byte            0x14            (macro)
+>0x000048      byte            0x1C            (zipped)
+>0x000048      byte            0x21            (assembler)
+#
+# Magic Numbers for the TI-73/83+/89/92+/V200 FLASH upgrades
+#
+0x0000016      string          Advanced        TI-XX Graphing Calculator (FLASH)
+0              string          **TIFL**        TI-XX Graphing Calculator (FLASH)
+>8             byte            >0              - Revision %d
+>>9            byte            x               \b.%d,
+>12            byte            >0              Revision date %02x
+>>13           byte            x               \b/%02x
+>>14           beshort         x               \b/%04x,
+>17            string          >/0             name: '%s',
+>48            byte            0x74            device: TI-73,
+>48            byte            0x73            device: TI-83+,
+>48            byte            0x98            device: TI-89,
+>48            byte            0x88            device: TI-92+,
+>49            byte            0x23            type: OS upgrade,
+>49            byte            0x24            type: application,
+>49            byte            0x25            type: certificate,
+>49            byte            0x3e            type: license,
+>74            lelong          >0              size: %ld bytes
+
+# VTi & TiEmu skins (TI Graphing Calculators).
+# From: Romain Lievin (roms@lpg.ticalc.org).
+# Magic Numbers for the VTi skins
+0               string          VTI            Virtual TI skin
+>3             string          v               - Version
+>>4            byte            >0              \b %c
+>>6            byte            x               \b.%c
+# Magic Numbers for the TiEmu skins
+0              string          TiEmu           TiEmu skin
+>6              string          v               - Version
+>>7             byte            >0              \b %c
+>>9             byte            x               \b.%c
+>>10           byte            x               \b%c
index 8977845d0f707c90e8ba75d7c5d0c37cc88641e1..a4859a1cb001b2c21c8ced2c863f4a07df35ba07 100644 (file)
@@ -52,7 +52,7 @@
 # in a different place, so we must use an indirect offset.
 >>>(84.b+85)           string          \x03vorbis
 >>>>(84.b+96)          string/c        Xiphophorus\ libVorbis\ I       \b, created by: Xiphophorus libVorbis I
->>>>>(84.b+120)                string          >00000000       %.8s
+>>>>>(84.b+120)                string          >00000000       
 # Map to beta version numbers:
 >>>>>>(84.b+120)       string          <20000508       (<beta1 - prepublic)
 >>>>>>(84.b+120)       string          20000508        (beta1/2)
@@ -74,6 +74,7 @@
 >>>>>>(84.b+120)       string          >20011231       (pre-1.0 CVS)
 # For the 1.0 release, Xiphophorus is replaced by Xiph.Org
 >>>>(84.b+96)          string/c        Xiph.Org\ libVorbis\ I  \b, created by: Xiph.Org libVorbis I
->>>>>(84.b+117)                string          >00000000       %.8s
+>>>>>(84.b+117)                string          >00000000       
 >>>>>>(84.b+117)       string          <20020717       (pre-1.0 CVS)
 >>>>>>(84.b+117)       string          20020717        (1.0)
+>>>>>>(84.b+117)       string          >20020717       (post-1.0 CVS)
similarity index 88%
rename from magic/Magdir/wordperfect
rename to magic/Magdir/wordprocessors
index c77ac8d1b88810ef7aeb84448612cfc3ff0e09a2..563b82248cb46af6a3b6658165aa9647f8b83f61 100644 (file)
@@ -1,3 +1,16 @@
+
+#------------------------------------------------------------------------------
+# wordprocessors:  file(1) magic fo word processors.
+#
+####### PWP file format used on Smith Corona Personal Word Processors:
+2      string  \040\040\040\040\040\040\040\040\040\040\040ML4D\040\'92        Smith Corona PWP
+>24    byte    2       \b, single spaced
+>24    byte    3       \b, 1.5 spaced
+>24    byte    4       \b, double spaced
+>25    byte    0x42    \b, letter
+>25    byte    0x54    \b, legal
+>26    byte    0x46    \b, A4
+
 #WordPerfect type files Version 1.6 - PLEASE DO NOT REMOVE THIS LINE
 0      string  \377WPC\020\000\000\000\022\012\001\001\000\000\000\000 (WP) loadable text
 >15    byte    0       Optimized for Intel