xref: /minix3/external/bsd/file/dist/magic/magdir/macintosh (revision 0a6a1f1d05b60e214de2f05a7310ddd1f0e590e7)
1ef01931fSBen Gras
2ef01931fSBen Gras#------------------------------------------------------------------------------
3*0a6a1f1dSLionel Sambuc# $File: macintosh,v 1.25 2014/09/03 13:34:16 christos Exp $
4ef01931fSBen Gras# macintosh description
5ef01931fSBen Gras#
6ef01931fSBen Gras# BinHex is the Macintosh ASCII-encoded file format (see also "apple")
7ef01931fSBen Gras# Daniel Quinlan, quinlan@yggdrasil.com
8ef01931fSBen Gras11	string	must\ be\ converted\ with\ BinHex	BinHex binary text
9ef01931fSBen Gras!:mime	application/mac-binhex40
10ef01931fSBen Gras>41	string	x					\b, version %.3s
11ef01931fSBen Gras
12ef01931fSBen Gras# Stuffit archives are the de facto standard of compression for Macintosh
13ef01931fSBen Gras# files obtained from most archives. (franklsm@tuns.ca)
14ef01931fSBen Gras0	string		SIT!			StuffIt Archive (data)
15ef01931fSBen Gras!:mime	application/x-stuffit
16ef01931fSBen Gras!:apple	SIT!SIT!
17ef01931fSBen Gras>2	string		x			: %s
18ef01931fSBen Gras0	string		SITD			StuffIt Deluxe (data)
19ef01931fSBen Gras>2	string		x			: %s
20ef01931fSBen Gras0	string		Seg			StuffIt Deluxe Segment (data)
21ef01931fSBen Gras>2	string		x			: %s
22ef01931fSBen Gras
23ef01931fSBen Gras# Newer StuffIt archives (grant@netbsd.org)
24ef01931fSBen Gras0	string		StuffIt			StuffIt Archive
25ef01931fSBen Gras!:mime	application/x-stuffit
26ef01931fSBen Gras!:apple	SIT!SIT!
27ef01931fSBen Gras#>162	string		>0			: %s
28ef01931fSBen Gras
29ef01931fSBen Gras# Macintosh Applications and Installation binaries (franklsm@tuns.ca)
30ef01931fSBen Gras# GRR: Too weak
31ef01931fSBen Gras#0	string		APPL			Macintosh Application (data)
32ef01931fSBen Gras#>2	string		x			\b: %s
33ef01931fSBen Gras
34ef01931fSBen Gras# Macintosh System files (franklsm@tuns.ca)
35ef01931fSBen Gras# GRR: Too weak
36ef01931fSBen Gras#0	string		zsys			Macintosh System File (data)
37ef01931fSBen Gras#0	string		FNDR			Macintosh Finder (data)
38ef01931fSBen Gras#0	string		libr			Macintosh Library (data)
39ef01931fSBen Gras#>2	string		x			: %s
40ef01931fSBen Gras#0	string		shlb			Macintosh Shared Library (data)
41ef01931fSBen Gras#>2	string		x			: %s
42ef01931fSBen Gras#0	string		cdev			Macintosh Control Panel (data)
43ef01931fSBen Gras#>2	string		x			: %s
44ef01931fSBen Gras#0	string		INIT			Macintosh Extension (data)
45ef01931fSBen Gras#>2	string		x			: %s
46ef01931fSBen Gras#0	string		FFIL			Macintosh Truetype Font (data)
47ef01931fSBen Gras#>2	string		x			: %s
48ef01931fSBen Gras#0	string		LWFN			Macintosh Postscript Font (data)
49ef01931fSBen Gras#>2	string		x			: %s
50ef01931fSBen Gras
51ef01931fSBen Gras# Additional Macintosh Files (franklsm@tuns.ca)
52ef01931fSBen Gras# GRR: Too weak
53ef01931fSBen Gras#0	string		PACT			Macintosh Compact Pro Archive (data)
54ef01931fSBen Gras#>2	string		x			: %s
55ef01931fSBen Gras#0	string		ttro			Macintosh TeachText File (data)
56ef01931fSBen Gras#>2	string		x			: %s
57ef01931fSBen Gras#0	string		TEXT			Macintosh TeachText File (data)
58ef01931fSBen Gras#>2	string		x			: %s
59ef01931fSBen Gras#0	string		PDF			Macintosh PDF File (data)
60ef01931fSBen Gras#>2	string		x			: %s
61ef01931fSBen Gras
62ef01931fSBen Gras# MacBinary format (Eric Fischer, enf@pobox.com)
63ef01931fSBen Gras#
64ef01931fSBen Gras# Unfortunately MacBinary doesn't really have a magic number prior
65ef01931fSBen Gras# to the MacBinary III format.  The checksum is really the way to
66ef01931fSBen Gras# do it, but the magic file format isn't up to the challenge.
67ef01931fSBen Gras#
68ef01931fSBen Gras# 0	byte		0
69ef01931fSBen Gras# 1	byte				# filename length
70ef01931fSBen Gras# 2	string				# filename
71ef01931fSBen Gras# 65    string				# file type
72ef01931fSBen Gras# 69	string				# file creator
73ef01931fSBen Gras# 73	byte				# Finder flags
74ef01931fSBen Gras# 74	byte		0
75ef01931fSBen Gras# 75	beshort				# vertical posn in window
76ef01931fSBen Gras# 77	beshort				# horiz posn in window
77ef01931fSBen Gras# 79	beshort				# window or folder ID
78ef01931fSBen Gras# 81    byte				# protected?
79ef01931fSBen Gras# 82	byte		0
80ef01931fSBen Gras# 83	belong				# length of data segment
81ef01931fSBen Gras# 87	belong				# length of resource segment
82ef01931fSBen Gras# 91	belong				# file creation date
83ef01931fSBen Gras# 95	belong				# file modification date
84ef01931fSBen Gras# 99	beshort				# length of comment after resource
85ef01931fSBen Gras# 101	byte				# new Finder flags
86ef01931fSBen Gras# 102	string		mBIN		# (only in MacBinary III)
87ef01931fSBen Gras# 106	byte				# char. code of file name
88ef01931fSBen Gras# 107	byte				# still more Finder flags
89ef01931fSBen Gras# 116	belong				# total file length
90ef01931fSBen Gras# 120	beshort				# length of add'l header
91ef01931fSBen Gras# 122	byte		129		# for MacBinary II
92ef01931fSBen Gras# 122	byte		130		# for MacBinary III
93ef01931fSBen Gras# 123	byte		129		# minimum version that can read fmt
94ef01931fSBen Gras# 124	beshort				# checksum
95ef01931fSBen Gras#
96ef01931fSBen Gras# This attempts to use the version numbers as a magic number, requiring
97ef01931fSBen Gras# that the first one be 0x80, 0x81, 0x82, or 0x83, and that the second
98ef01931fSBen Gras# be 0x81.  This works for the files I have, but maybe not for everyone's.
99ef01931fSBen Gras
100ef01931fSBen Gras# Unfortunately, this magic is quite weak - MPi
101ef01931fSBen Gras#122	beshort&0xFCFF	0x8081		Macintosh MacBinary data
102ef01931fSBen Gras
103ef01931fSBen Gras# MacBinary I doesn't have the version number field at all, but MacBinary II
104ef01931fSBen Gras# has been in use since 1987 so I hope there aren't many really old files
105ef01931fSBen Gras# floating around that this will miss.  The original spec calls for using
106ef01931fSBen Gras# the nulls in 0, 74, and 82 as the magic number.
107ef01931fSBen Gras#
108ef01931fSBen Gras# Another possibility, that would also work for MacBinary I, is to use
109ef01931fSBen Gras# the assumption that 65-72 will all be ASCII (0x20-0x7F), that 73 will
110ef01931fSBen Gras# have bits 1 (changed), 2 (busy), 3 (bozo), and 6 (invisible) unset,
111ef01931fSBen Gras# and that 74 will be 0.  So something like
112ef01931fSBen Gras#
113ef01931fSBen Gras# 71 	belong&0x80804EFF 0x00000000 	Macintosh MacBinary data
114ef01931fSBen Gras#
115ef01931fSBen Gras# >73	byte&0x01	0x01		\b, inited
116ef01931fSBen Gras# >73	byte&0x02	0x02		\b, changed
117ef01931fSBen Gras# >73	byte&0x04	0x04		\b, busy
118ef01931fSBen Gras# >73	byte&0x08	0x08		\b, bozo
119ef01931fSBen Gras# >73	byte&0x10	0x10		\b, system
120ef01931fSBen Gras# >73	byte&0x10	0x20		\b, bundle
121ef01931fSBen Gras# >73	byte&0x10	0x40		\b, invisible
122ef01931fSBen Gras# >73	byte&0x10	0x80		\b, locked
123ef01931fSBen Gras
124ef01931fSBen Gras#>65	string		x		\b, type "%4.4s"
125ef01931fSBen Gras
126ef01931fSBen Gras#>65	string		8BIM		(PhotoShop)
127ef01931fSBen Gras#>65	string		ALB3		(PageMaker 3)
128ef01931fSBen Gras#>65	string		ALB4		(PageMaker 4)
129ef01931fSBen Gras#>65	string		ALT3		(PageMaker 3)
130ef01931fSBen Gras#>65	string		APPL		(application)
131ef01931fSBen Gras#>65	string		AWWP		(AppleWorks word processor)
132ef01931fSBen Gras#>65	string		CIRC		(simulated circuit)
133ef01931fSBen Gras#>65	string		DRWG		(MacDraw)
134ef01931fSBen Gras#>65	string		EPSF		(Encapsulated PostScript)
135ef01931fSBen Gras#>65	string		FFIL		(font suitcase)
136ef01931fSBen Gras#>65	string		FKEY		(function key)
137ef01931fSBen Gras#>65	string		FNDR		(Macintosh Finder)
138ef01931fSBen Gras#>65	string		GIFf		(GIF image)
139ef01931fSBen Gras#>65	string		Gzip		(GNU gzip)
140ef01931fSBen Gras#>65	string		INIT		(system extension)
141ef01931fSBen Gras#>65	string		LIB\ 		(library)
142ef01931fSBen Gras#>65	string		LWFN		(PostScript font)
143ef01931fSBen Gras#>65	string		MSBC		(Microsoft BASIC)
144ef01931fSBen Gras#>65	string		PACT		(Compact Pro archive)
145ef01931fSBen Gras#>65	string		PDF\ 		(Portable Document Format)
146ef01931fSBen Gras#>65	string		PICT		(picture)
147ef01931fSBen Gras#>65	string		PNTG		(MacPaint picture)
148ef01931fSBen Gras#>65	string		PREF		(preferences)
149ef01931fSBen Gras#>65	string		PROJ		(Think C project)
150ef01931fSBen Gras#>65	string		QPRJ		(Think Pascal project)
151ef01931fSBen Gras#>65	string		SCFL		(Defender scores)
152ef01931fSBen Gras#>65	string		SCRN		(startup screen)
153ef01931fSBen Gras#>65	string		SITD		(StuffIt Deluxe)
154ef01931fSBen Gras#>65	string		SPn3		(SuperPaint)
155ef01931fSBen Gras#>65	string		STAK		(HyperCard stack)
156ef01931fSBen Gras#>65	string		Seg\ 		(StuffIt segment)
157ef01931fSBen Gras#>65	string		TARF		(Unix tar archive)
158ef01931fSBen Gras#>65	string		TEXT		(ASCII)
159ef01931fSBen Gras#>65	string		TIFF		(TIFF image)
160ef01931fSBen Gras#>65	string		TOVF		(Eudora table of contents)
161ef01931fSBen Gras#>65	string		WDBN		(Microsoft Word word processor)
162ef01931fSBen Gras#>65	string		WORD		(MacWrite word processor)
163ef01931fSBen Gras#>65	string		XLS\ 		(Microsoft Excel)
164ef01931fSBen Gras#>65	string		ZIVM		(compress (.Z))
165ef01931fSBen Gras#>65	string		ZSYS		(Pre-System 7 system file)
166ef01931fSBen Gras#>65	string		acf3		(Aldus FreeHand)
167ef01931fSBen Gras#>65	string		cdev		(control panel)
168*0a6a1f1dSLionel Sambuc#>65	string		dfil		(Desk Accessory suitcase)
169ef01931fSBen Gras#>65	string		libr		(library)
170ef01931fSBen Gras#>65	string		nX^d		(WriteNow word processor)
171ef01931fSBen Gras#>65	string		nX^w		(WriteNow dictionary)
172ef01931fSBen Gras#>65	string		rsrc		(resource)
173ef01931fSBen Gras#>65	string		scbk		(Scrapbook)
174ef01931fSBen Gras#>65	string		shlb		(shared library)
175ef01931fSBen Gras#>65	string		ttro		(SimpleText read-only)
176ef01931fSBen Gras#>65	string		zsys		(system file)
177ef01931fSBen Gras
178ef01931fSBen Gras#>69	string		x		\b, creator "%4.4s"
179ef01931fSBen Gras
180ef01931fSBen Gras# Somewhere, Apple has a repository of registered Creator IDs.  These are
181ef01931fSBen Gras# just the ones that I happened to have files from and was able to identify.
182ef01931fSBen Gras
183ef01931fSBen Gras#>69	string		8BIM		(Adobe Photoshop)
184ef01931fSBen Gras#>69	string		ALD3		(PageMaker 3)
185ef01931fSBen Gras#>69	string		ALD4		(PageMaker 4)
186ef01931fSBen Gras#>69	string		ALFA		(Alpha editor)
187ef01931fSBen Gras#>69	string		APLS		(Apple Scanner)
188ef01931fSBen Gras#>69	string		APSC		(Apple Scanner)
189ef01931fSBen Gras#>69	string		BRKL		(Brickles)
190ef01931fSBen Gras#>69	string		BTFT		(BitFont)
191ef01931fSBen Gras#>69	string		CCL2 		(Common Lisp 2)
192ef01931fSBen Gras#>69	string		CCL\ 		(Common Lisp)
193ef01931fSBen Gras#>69	string		CDmo		(The Talking Moose)
194ef01931fSBen Gras#>69	string		CPCT		(Compact Pro)
195ef01931fSBen Gras#>69	string		CSOm		(Eudora)
196ef01931fSBen Gras#>69	string		DMOV		(Font/DA Mover)
197ef01931fSBen Gras#>69	string		DSIM		(DigSim)
198ef01931fSBen Gras#>69	string		EDIT		(Macintosh Edit)
199ef01931fSBen Gras#>69	string		ERIK		(Macintosh Finder)
200ef01931fSBen Gras#>69	string		EXTR		(self-extracting archive)
201ef01931fSBen Gras#>69	string		Gzip		(GNU gzip)
202ef01931fSBen Gras#>69	string		KAHL		(Think C)
203ef01931fSBen Gras#>69	string		LWFU		(LaserWriter Utility)
204ef01931fSBen Gras#>69	string		LZIV		(compress)
205ef01931fSBen Gras#>69	string		MACA		(MacWrite)
206ef01931fSBen Gras#>69	string		MACS		(Macintosh operating system)
207ef01931fSBen Gras#>69	string		MAcK		(MacKnowledge terminal emulator)
208ef01931fSBen Gras#>69	string		MLND		(Defender)
209ef01931fSBen Gras#>69	string		MPNT		(MacPaint)
210ef01931fSBen Gras#>69	string		MSBB		(Microsoft BASIC (binary))
211ef01931fSBen Gras#>69	string		MSWD		(Microsoft Word)
212ef01931fSBen Gras#>69	string		NCSA		(NCSA Telnet)
213ef01931fSBen Gras#>69	string		PJMM		(Think Pascal)
214ef01931fSBen Gras#>69	string		PSAL		(Hunt the Wumpus)
215ef01931fSBen Gras#>69	string		PSI2		(Apple File Exchange)
216ef01931fSBen Gras#>69	string		R*ch		(BBEdit)
217ef01931fSBen Gras#>69	string		RMKR		(Resource Maker)
218ef01931fSBen Gras#>69	string		RSED		(Resource Editor)
219ef01931fSBen Gras#>69	string		Rich		(BBEdit)
220ef01931fSBen Gras#>69	string		SIT!		(StuffIt)
221ef01931fSBen Gras#>69	string		SPNT		(SuperPaint)
222ef01931fSBen Gras#>69	string		Unix		(NeXT Mac filesystem)
223ef01931fSBen Gras#>69	string		VIM!		(Vim editor)
224ef01931fSBen Gras#>69	string		WILD		(HyperCard)
225ef01931fSBen Gras#>69	string		XCEL		(Microsoft Excel)
226ef01931fSBen Gras#>69	string		aCa2		(Fontographer)
227ef01931fSBen Gras#>69	string		aca3		(Aldus FreeHand)
228ef01931fSBen Gras#>69	string		dosa		(Macintosh MS-DOS file system)
229ef01931fSBen Gras#>69	string		movr		(Font/DA Mover)
230ef01931fSBen Gras#>69	string		nX^n		(WriteNow)
231ef01931fSBen Gras#>69	string		pdos		(Apple ProDOS file system)
232ef01931fSBen Gras#>69	string		scbk		(Scrapbook)
233ef01931fSBen Gras#>69	string		ttxt		(SimpleText)
234ef01931fSBen Gras#>69	string		ufox		(Foreign File Access)
235ef01931fSBen Gras
236ef01931fSBen Gras# Just in case...
237ef01931fSBen Gras
238ef01931fSBen Gras102	string		mBIN		MacBinary III data with surprising version number
239ef01931fSBen Gras
240ef01931fSBen Gras# sas magic from Bruce Foster (bef@nwu.edu)
241ef01931fSBen Gras#
242ef01931fSBen Gras#0	string		SAS		SAS
243ef01931fSBen Gras#>8	string		x		%s
244ef01931fSBen Gras0	string		SAS		SAS
245ef01931fSBen Gras>24	string		DATA		data file
246ef01931fSBen Gras>24	string		CATALOG		catalog
247ef01931fSBen Gras>24	string		INDEX		data file index
248ef01931fSBen Gras>24	string		VIEW		data view
249ef01931fSBen Gras# sas 7+ magic from Reinhold Koch (reinhold.koch@roche.com)
250ef01931fSBen Gras#
251ef01931fSBen Gras0x54    string          SAS             SAS 7+
252ef01931fSBen Gras>0x9C   string          DATA            data file
253ef01931fSBen Gras>0x9C   string          CATALOG         catalog
254ef01931fSBen Gras>0x9C   string          INDEX           data file index
255ef01931fSBen Gras>0x9C   string          VIEW            data view
256ef01931fSBen Gras
257ef01931fSBen Gras# spss magic for SPSS system and portable files,
258ef01931fSBen Gras#	 from Bruce Foster (bef@nwu.edu).
259ef01931fSBen Gras
260ef01931fSBen Gras0	long		0xc1e2c3c9	SPSS Portable File
261ef01931fSBen Gras>40	string 		x		%s
262ef01931fSBen Gras
263ef01931fSBen Gras0	string		$FL2		SPSS System File
264ef01931fSBen Gras>24	string		x		%s
265ef01931fSBen Gras
266*0a6a1f1dSLionel Sambuc0	string		$FL3		SPSS System File
267*0a6a1f1dSLionel Sambuc>24	string		x		%s
268*0a6a1f1dSLionel Sambuc
269ef01931fSBen Gras# Macintosh filesystem data
270ef01931fSBen Gras# From "Tom N Harris" <telliamed@mac.com>
271ef01931fSBen Gras# Fixed HFS+ and Partition map magic: Ethan Benson <erbenson@alaska.net>
272ef01931fSBen Gras# The MacOS epoch begins on 1 Jan 1904 instead of 1 Jan 1970, so these
273ef01931fSBen Gras# entries depend on the data arithmetic added after v.35
274ef01931fSBen Gras# There's also some Pascal strings in here, ditto...
275ef01931fSBen Gras
276ef01931fSBen Gras# The boot block signature, according to IM:Files, is
277ef01931fSBen Gras# "for HFS volumes, this field always contains the value 0x4C4B."
278ef01931fSBen Gras# But if this is true for MFS or HFS+ volumes, I don't know.
279ef01931fSBen Gras# Alternatively, the boot block is supposed to be zeroed if it's
280ef01931fSBen Gras# unused, so a simply >0 should suffice.
281ef01931fSBen Gras
282ef01931fSBen Gras0x400	beshort			0xD2D7		Macintosh MFS data
283ef01931fSBen Gras>0	beshort			0x4C4B		(bootable)
284ef01931fSBen Gras>0x40a	beshort			&0x8000		(locked)
285ef01931fSBen Gras>0x402	beldate-0x7C25B080	x		created: %s,
286ef01931fSBen Gras>0x406	beldate-0x7C25B080	>0		last backup: %s,
287ef01931fSBen Gras>0x414	belong			x		block size: %d,
288ef01931fSBen Gras>0x412	beshort			x		number of blocks: %d,
289ef01931fSBen Gras>0x424	pstring			x		volume name: %s
290ef01931fSBen Gras
291*0a6a1f1dSLionel Sambuc# *.hfs updated by Joerg Jenderek
292*0a6a1f1dSLionel Sambuc# http://en.wikipedia.org/wiki/Hierarchical_File_System
293835f6802SDirk Vogt# "BD" gives many false positives
294*0a6a1f1dSLionel Sambuc0x400	beshort			0x4244
295*0a6a1f1dSLionel Sambuc# ftp://ftp.mars.org/pub/hfs/hfsutils-3.2.6.tar.gz/hfsutils-3.2.6/libhfs/apple.h
296*0a6a1f1dSLionel Sambuc# first block of volume bit map (always 3)
297*0a6a1f1dSLionel Sambuc>0x40e	ubeshort		0x0003
298*0a6a1f1dSLionel Sambuc# maximal length of volume name is 27
299*0a6a1f1dSLionel Sambuc>>0x424		ubyte			<28	Macintosh HFS data
300*0a6a1f1dSLionel Sambuc#!:mime	application/octet-stream
301*0a6a1f1dSLionel Sambuc# these mime and apple types are not sure
302*0a6a1f1dSLionel Sambuc!:mime	application/x-apple-diskimage
303*0a6a1f1dSLionel Sambuc#!:apple	hfsdINIT
304*0a6a1f1dSLionel Sambuc#!:apple	MACSdisk
305*0a6a1f1dSLionel Sambuc>>>0		beshort			0x4C4B	(bootable)
306*0a6a1f1dSLionel Sambuc#>>>0		beshort			0x0000	(not bootable)
307*0a6a1f1dSLionel Sambuc>>>0x40a	beshort			&0x8000	(locked)
308*0a6a1f1dSLionel Sambuc>>>0x40a	beshort			^0x0100	(mounted)
309*0a6a1f1dSLionel Sambuc>>>0x40a	beshort			&0x0200	(spared blocks)
310*0a6a1f1dSLionel Sambuc>>>0x40a	beshort			&0x0800	(unclean)
311*0a6a1f1dSLionel Sambuc>>>0x47C	beshort			0x482B	(Embedded HFS+ Volume)
312*0a6a1f1dSLionel Sambuc# http://www.epochconverter.com/
313*0a6a1f1dSLionel Sambuc# 0x7C245F00 seconds	~ 2082758400	~ 01 Jan 2036 00:00:00	~ 66 years to 1970
314*0a6a1f1dSLionel Sambuc# 0x7C25B080 seconds	~ 2082844800	~ 02 Jan 2036 00:00:00
315*0a6a1f1dSLionel Sambuc# construct not working
316*0a6a1f1dSLionel Sambuc#>>>0x402	beldate-0x7C25B080	x	created: %s,
317*0a6a1f1dSLionel Sambuc#>>>0x406	beldate-0x7C25B080	x	last modified: %s,
318*0a6a1f1dSLionel Sambuc#>>>0x440	beldate-0x7C25B080	>0	last backup: %s,
319*0a6a1f1dSLionel Sambuc# found block sizes 200h,1200h,2800h
320*0a6a1f1dSLionel Sambuc>>>0x414	belong			x	block size: %d,
321*0a6a1f1dSLionel Sambuc>>>0x412	beshort			x	number of blocks: %d,
322*0a6a1f1dSLionel Sambuc>>>0x424	pstring			x	volume name: %s
323ef01931fSBen Gras
324ef01931fSBen Gras0x400	beshort			0x482B		Macintosh HFS Extended
325ef01931fSBen Gras>&0	beshort			x		version %d data
326ef01931fSBen Gras>0	beshort			0x4C4B		(bootable)
327ef01931fSBen Gras>0x404	belong			^0x00000100	(mounted)
328ef01931fSBen Gras>&2	belong			&0x00000200	(spared blocks)
329ef01931fSBen Gras>&2	belong			&0x00000800	(unclean)
330ef01931fSBen Gras>&2	belong			&0x00008000	(locked)
331ef01931fSBen Gras>&6	string			x		last mounted by: '%.4s',
332ef01931fSBen Gras# really, that should be treated as a belong and we print a string
333ef01931fSBen Gras# based on the value. TN1150 only mentions '8.10' for "MacOS 8.1"
334ef01931fSBen Gras>&14	beldate-0x7C25B080	x		created: %s,
335ef01931fSBen Gras# only the creation date is local time, all other timestamps in HFS+ are UTC.
336ef01931fSBen Gras>&18	bedate-0x7C25B080	x		last modified: %s,
337ef01931fSBen Gras>&22	bedate-0x7C25B080	>0		last backup: %s,
338ef01931fSBen Gras>&26	bedate-0x7C25B080	>0		last checked: %s,
339ef01931fSBen Gras>&38	belong			x		block size: %d,
340ef01931fSBen Gras>&42	belong			x		number of blocks: %d,
341ef01931fSBen Gras>&46	belong			x		free blocks: %d
342ef01931fSBen Gras
343ef01931fSBen Gras## AFAIK, only the signature is different
344*0a6a1f1dSLionel Sambuc# same as Apple Partition Map
345*0a6a1f1dSLionel Sambuc# GRR: This magic is too weak, it is just "TS"
346ef01931fSBen Gras#0x200		beshort		0x5453		Apple Old Partition data
347ef01931fSBen Gras#>0x2		beshort		x		block size: %d,
348ef01931fSBen Gras#>0x230		string		x		first type: %s,
349ef01931fSBen Gras#>0x210		string		x		name: %s,
350ef01931fSBen Gras#>0x254		belong		x		number of blocks: %d,
351ef01931fSBen Gras#>0x400		beshort		0x504D
352ef01931fSBen Gras#>>0x430		string		x		second type: %s,
353ef01931fSBen Gras#>>0x410		string		x		name: %s,
354ef01931fSBen Gras#>>0x454		belong		x		number of blocks: %d,
355ef01931fSBen Gras#>>0x800		beshort		0x504D
356ef01931fSBen Gras#>>>0x830	string		x		third type: %s,
357ef01931fSBen Gras#>>>0x810	string		x		name: %s,
358ef01931fSBen Gras#>>>0x854	belong		x		number of blocks: %d,
359ef01931fSBen Gras#>>>0xa00	beshort		0x504D
360ef01931fSBen Gras#>>>>0xa30	string		x		fourth type: %s,
361ef01931fSBen Gras#>>>>0xa10	string		x		name: %s,
362ef01931fSBen Gras#>>>>0xa54	belong		x		number of blocks: %d
363ef01931fSBen Gras
364ef01931fSBen Gras# From: Remi Mommsen <mommsen@slac.stanford.edu>
365ef01931fSBen Gras0		string		BOMStore	Mac OS X bill of materials (BOM) file
366835f6802SDirk Vogt
367835f6802SDirk Vogt# From: Adam Buchbinder <adam.buchbinder@gmail.com>
368835f6802SDirk Vogt# URL: http://en.wikipedia.org/wiki/Datafork_TrueType
369835f6802SDirk Vogt# Derived from the 'fondu' and 'ufond' source code (fondu.sf.net). 'sfnt' is
370835f6802SDirk Vogt# TrueType; 'POST' is PostScript. 'FONT' and 'NFNT' sometimes appear, but I
371835f6802SDirk Vogt# don't know what they mean.
372835f6802SDirk Vogt0	belong	0x100
373835f6802SDirk Vogt>(0x4.L+24)	beshort	x
374835f6802SDirk Vogt>>&4	belong	0x73666e74	Mac OSX datafork font, TrueType
375835f6802SDirk Vogt>>&4	belong	0x464f4e54	Mac OSX datafork font, 'FONT'
376835f6802SDirk Vogt>>&4	belong	0x4e464e54	Mac OSX datafork font, 'NFNT'
377835f6802SDirk Vogt>>&4	belong	0x504f5354	Mac OSX datafork font, PostScript
378