xref: /dragonfly/contrib/file/magic/Magdir/maple (revision 7b80531f545c7d3c51c1660130c71d01f6bccbe0)
1
2#------------------------------------------------------------------------------
3# $File: maple,v 1.10 2021/08/30 13:31:25 christos Exp $
4# maple:  file(1) magic for maple files
5# "H. Nanosecond" <aldomel@ix.netcom.com>
6# Maple V release 4, a multi-purpose math program
7#
8
9# maple library .lib
10# URL:              https://en.wikipedia.org/wiki/Maple_(software)
11# Reference:        http://mark0.net/download/triddefs_xml.7z/defs/l/lib-maple-v-r4.trid.xml
12# Update: Joerg Jenderek
130         string    \000MVR4\nI         Maple Vr4 library
14#!:mime   application/octet-stream
15!:mime    application/x-maple-lib
16!:ext     lib
17
18# URL:              https://en.wikipedia.org/wiki/Maple_(software)
19# Reference:        http://mark0.net/download/triddefs_xml.7z/defs/l/lib-maple-v-r5.trid.xml
20# From:             Joerg Jenderek
210         string    \000MVR5\n          Maple Vr5 library
22#!:mime   application/octet-stream
23!:mime    application/x-maple-lib
24!:ext     lib
25
26# From:             Joerg Jenderek
270x400     string    M7R0\nI             Maple Vr7 library
28#!:mime   application/octet-stream
29!:mime    application/x-maple-lib
30!:ext     lib
31# null terminated library name like: C:\Maple12/Cliffordlib\maple.lib ../Maplets/Tutors.lib
32>5        string    x                   %s
33# probably library name padding with nil or points (0x2E)
34#>0xF8    uquad     x                   \b, PADDING 0x%16.16llx
35# null terminated strings like: Exterior Clifford FunctionArithmetics
36# like: 1 20 40
37>0x115    ulelong   x                   \b, %u string
38# plural s
39>0x115    ulelong   >1                  \bs
40>0x119    string    x                   1st '%s'
41# probably second name section padding with nil or points (0x2E)
42#>0x3F0   uquad     x                   \b, 2nd PADDING 0x%16.16llx
43# line feed separated ASCII string with maximal 79 length
44#>0x407   string    x                   \b, section "%s"
45>0x454    ubyte     !0x0a               \b, at 0x454 0x%x
46
47# .ind
48# no magic for these :-(
49# they are compiled indexes for maple files
50
51# .hdb
52# Update: Joerg Jenderek
53# URL:              https://www.maplesoft.com/support/help/maple/view.aspx?path=Formats/HDB
54# Reference:        http://mark0.net/download/triddefs_xml.7z/defs/h/hdb-maple.trid.xml
55# Note:             This format was replaced in Maple 18 by the Maple Help format (*.help)
560         string    \000\004\000\000
57# skip xBASE Compound Index file *.CDX by looking for version
58>1028     string              version   Maple help database
59# length of string version
60#>>1024   ulelong             !7        \b, at 0x400 unexpected %u
61#!:mime application/octet-stream
62!:mime application/x-maple-hdb
63!:ext     hdb
64>1028     default             x
65# skip more xBASE Compound Index file *.CDX by looking for keyword Maple
66# like hsum.hdb
67>>4       search/0xCC41       Maple     Maple help database
68!:mime    application/x-maple-hdb
69!:ext     hdb
70
71# .mhp
72# this has the form <PACKAGE=name>
730         string    \<PACKAGE=          Maple help file
740         string    \<HELP\ NAME=       Maple help file
750         string    \n\<HELP\ NAME=     Maple help file with extra carriage return at start (yuck)
76#0        string    #\ Newton Maple help file, old style
770         string    #\ daub   Maple help file, old style
78#0        string    #===========        Maple help file, old style
79
80# .mws
810         string    \000\000\001\044\000\221      Maple worksheet
82#this is anomalous
830         string    WriteNow\000\002\000\001\000\000\000\000\100\000\000\000\000\000      Maple worksheet, but weird
84# this has the form {VERSION 2 3 "IBM INTEL NT" "2.3" }\n
85# that is {VERSION major_version miunor_version computer_type version_string}
860         string    {VERSION\           Maple worksheet
87>9        string    >\0       version %.1s.
88>>11      string    >\0       %.1s
89
90# .mps
910         string    \0\0\001$ Maple something
92# from byte 4 it is either 'nul E' or 'soh R'
93# I think 'nul E' means a file that was saved as  a different name
94# a sort of revision marking
95# 'soh R' means new
96>4        string    \000\105  An old revision
97>4        string    \001\122  The latest save
98
99# .mpl
100# some of these are the same as .mps above
101#0000000 000 000 001 044 000 105 same as .mps
102#0000000 000 000 001 044 001 122 same as .mps
103
1040         string    #\n##\ <SHAREFILE=  Maple something
1050         string    \n#\n##\ <SHAREFILE=          Maple something
1060         string    ##\ <SHAREFILE=     Maple something
1070         string    #\r##\ <SHAREFILE=  Maple something
1080         string    \r#\r##\ <SHAREFILE=          Maple something
1090         string    #\ \r##\ <DESCRIBE> Maple something anomalous.
110