1#	$OpenBSD: filesystems,v 1.6 2022/12/26 19:16:01 jmc Exp $
2
3#------------------------------------------------------------------------------
4# filesystems:  file(1) magic for different filesystems
5#
60	string	\366\366\366\366	PC formatted floppy with no filesystem
7# Sun disk labels
8# From /usr/include/sun/dklabel.h:
90774	beshort		0xdabe		
10# modified by Joerg Jenderek, because original test
11# succeeds for Cabinet archive dao360.dl_ with negative blocks
12>0770	long		>0		Sun disk label
13>>0	string		x		'%s
14>>>31	string		>\0		\b%s
15>>>>63	string		>\0		\b%s
16>>>>>95	string		>\0		\b%s
17>>0	string		x		\b'
18>>0734	short		>0		%d rpm,
19>>0736	short		>0		%d phys cys,
20>>0740	short		>0		%d alts/cyl,
21>>0746	short		>0		%d interleave,
22>>0750	short		>0		%d data cyls,
23>>0752	short		>0		%d alt cyls,
24>>0754	short		>0		%d heads/partition,
25>>0756	short		>0		%d sectors/track,
26>>0764	long		>0		start cyl %ld,
27>>0770	long		x		%ld blocks
28# Is there a boot block written 1 sector in?
29>512    belong&077777777	0600407	\b, boot block present
30# Joerg Jenderek: Smart Boot Manager backup file is 41 byte header + first sectors of disc
31# (http://btmgr.sourceforge.net/docs/user-guide-3.html)
320		string	SBMBAKUP_	Smart Boot Manager backup file
33>9		string	x		\b, version %-5.5s
34>>14		string	=_		
35>>>15		string	x		%-.1s
36>>>>16		string	=_		\b.
37>>>>>17		string	x		\b%-.1s
38>>>>>>18	string	=_		\b.
39>>>>>>>19	string	x		\b%-.1s
40>>>22		ubyte	0		
41>>>>21		ubyte	x		\b, from drive 0x%x
42>>>22		ubyte	>0		
43>>>>21		string	x		\b, from drive %s
44
45# Joerg Jenderek
46# DOS Emulator image is 128 byte, null right padded header + harddisc image
470	string	DOSEMU\0			
48>0x27E	leshort	0xAA55			
49#offset is 128
50>>19	ubyte	128			
51>>>(19.b-1)	ubyte	0x0	DOS Emulator image
52>>>>7	ulelong	>0		\b, %u heads
53>>>>11	ulelong	>0		\b, %d sectors/track
54>>>>15	ulelong	>0		\b, %d cylinders
55
56# updated by Joerg Jenderek at Sep 2007
57# only for sector sizes with 512 or more Bytes
580x1FE	leshort	0xAA55			x86 boot sector
59# to do also for sectors < than 512 Bytes and some other files, GRR
60#30	search/481	\x55\xAA	x86 boot sector
61# not for BeOS floppy 1440k, MBRs
62#(11.s-2) uleshort	0xAA55		x86 boot sector
63>2	string	OSBS			\b, OS/BS MBR
64# J\xf6rg Jenderek <joerg dot jenderek at web dot de>
65>0x8C	string	Invalid\ partition\ table	\b, MS-DOS MBR
66# dr-dos with some upper-, lowercase variants
67>0x9D	string	Invalid\ partition\ table$	
68>>181	string	No\ Operating\ System$		
69>>>201	string	Operating\ System\ load\ error$	\b, DR-DOS MBR, Version 7.01 to 7.03
70>0x9D	string	Invalid\ partition\ table$	
71>>181	string	No\ operating\ system$		
72>>>201	string	Operating\ system\ load\ error$	\b, DR-DOS MBR, Version 7.01 to 7.03
73>342	string	Invalid\ partition\ table$	
74>>366	string	No\ operating\ system$		
75>>>386	string	Operating\ system\ load\ error$	\b, DR-DOS MBR, version 7.01 to 7.03
76>295	string	NEWLDR\0				
77>>302	string	Bad\ PT\ $				
78>>>310	string	No\ OS\ $				
79>>>>317	string	OS\ load\ err$				
80>>>>>329	string	Moved\ or\ missing\ IBMBIO.LDR\n\r	
81>>>>>>358	string	Press\ any\ key\ to\ continue.\n\r$	
82>>>>>>>387	string	Copyright\ (c)\ 1984,1998	
83>>>>>>>>411	string	Caldera\ Inc.\0		\b, DR-DOS MBR (IBMBIO.LDR)
84>0x10F	string	Ung\201ltige\ Partitionstabelle	\b, MS-DOS MBR, german version 4.10.1998, 4.10.2222
85>>0x1B8	ubelong	>0				\b, Serial 0x%-.4x
86>0x8B	string	Ung\201ltige\ Partitionstabelle	\b, MS-DOS MBR, german version 5.00 to 4.00.950
87>271	string	Invalid\ partition\ table\0		
88>>295	string	Error\ loading\ operating\ system\0	
89>>>326	string	Missing\ operating\ system\0		\b, mbr
90#
91>139	string	Invalid\ partition\ table\0		
92>>163	string	Error\ loading\ operating\ system\0	
93>>>194	string	Missing\ operating\ system\0		\b, Microsoft Windows XP mbr
94# http://www.heise.de/ct/05/09/006/ page 184
95#HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices\DosDevices\?:=Serial4Bytes+8Bytes
96>>>>0x1B8	ulelong	>0				\b,Serial 0x%-.4x
97>300	string	Invalid\ partition\ table\0	
98>>324	string	Error\ loading\ operating\ system\0
99>>>355	string	Missing\ operating\ system\0		\b, Microsoft Windows XP MBR
100#??>>>389	string	Invalid\ system\ disk		
101>>>>0x1B8	ulelong	>0				\b, Serial 0x%-.4x
102>300	string	Ung\201ltige\ Partitionstabelle
103#split string to avoid error: String too long
104>>328	string	Fehler\ beim\ Laden\ 	
105>>>346	string	des\ Betriebssystems	
106>>>>366	string	Betriebssystem\ nicht\ vorhanden	\b, Microsoft Windows XP MBR (german)
107>>>>>0x1B8	ulelong	>0				\b, Serial 0x%-.4x
108>0x145	string	Default:\ F				\b, FREE-DOS MBR
109>64	string	no\ active\ partition\ found	
110>>96	string	read\ error\ while\ reading\ drive	\b, FREE-DOS Beta 0.9 MBR
111>271	string	Operating\ system\ loading 		
112>>296	string	error\r					\b, SYSLINUX MBR (2.10)
113# http://www.acronis.de/
114>362	string	MBR\ Error\ \0\r			
115>>376	string	ress\ any\ key\ to\ 			
116>>>392	string	boot\ from\ floppy...\0			\b, Acronis MBR
117# added by Joerg Jenderek
118# http://www.visopsys.org/
119# http://partitionlogic.org.uk/
120>309	string	No\ bootable\ partition\ found\r	
121>>339	string	I/O\ Error\ reading\ boot\ sector\r	\b, Visopsys MBR
122>349	string	No\ bootable\ partition\ found\r	
123>>379	string	I/O\ Error\ reading\ boot\ sector\r	\b, simple Visopsys MBR
124# bootloader, bootmanager
125>0x40	string	SBML				
126# label with 11 characters of FAT 12 bit filesystem
127>>43	string	SMART\ BTMGR			
128>>>430	string	SBMK\ Bad!\r			
129>>>>3	string	SBM				\b, Smart Boot Manager
130>>>>>6	string	>\0                             \b, version %s
131>382	string	XOSLLOADXCF			\b, eXtended Operating System Loader
132>6	string	LILO				\b, LInux i386 boot LOader
133>>120	string	LILO				\b, version 22.3.4 SuSe
134>>172	string	LILO				\b, version 22.5.8 Debian
135# updated by Joerg Jenderek
136# variables according to grub-0.97/stage1/stage1.S or
137# http://www.gnu.org/software/grub/manual/grub.html#Embedded-data
138# usual values are marked with comments to get only information of strange GRUB loaders
139>0		ulelong		0x009048EB	
140>>0x41		ubyte		<2		
141>>>0x3E		ubyte		>2		\b; GRand Unified Bootloader
142# 0x3 for 0.5.95,0.93,0.94,0.96 0x4 for 1.90 
143>>>>0x3E	ubyte		x		\b, stage1 version 0x%x
144#If it is 0xFF, use a drive passed by BIOS
145>>>>0x40	ubyte		<0xFF		\b, boot drive 0x%x
146# in most case 0,1,0x2e for GRUB 0.5.95
147>>>>0x41	ubyte		>0		\b, LBA flag 0x%x
148>>>>0x42	uleshort	<0x8000		\b, stage2 address 0x%x
149#>>>>0x42	uleshort	=0x8000		\b, stage2 address 0x%x (usual)
150>>>>0x42	uleshort	>0x8000		\b, stage2 address 0x%x
151#>>>>0x44	ulelong		=1		\b, 1st sector stage2 0x%x (default)
152>>>>0x44	ulelong		>1		\b, 1st sector stage2 0x%x
153>>>>0x48	uleshort	<0x800		\b, stage2 segment 0x%x
154#>>>>0x48	uleshort	=0x800		\b, stage2 segment 0x%x (usual)
155>>>>0x48	uleshort	>0x800		\b, stage2 segment 0x%x
156>>>>402		string	Geom\0Hard\ Disk\0Read\0\ Error\0
157>>>>>394	string	stage1			\b, GRUB version 0.5.95
158>>>>382		string	Geom\0Hard\ Disk\0Read\0\ Error\0
159>>>>>376	string	GRUB\ \0		\b, GRUB version 0.93 or 1.94
160>>>>383		string	Geom\0Hard\ Disk\0Read\0\ Error\0
161>>>>>377	string	GRUB\ \0		\b, GRUB version 0.94
162>>>>385		string	Geom\0Hard\ Disk\0Read\0\ Error\0
163>>>>>379	string	GRUB\ \0		\b, GRUB version 0.95 or 0.96
164>>>>391		string	Geom\0Hard\ Disk\0Read\0\ Error\0
165>>>>>385	string	GRUB\ \0		\b, GRUB version 0.97
166#unknown version
167>>>343		string	Geom\0Read\0\ Error\0	
168>>>>321		string	Loading\ stage1.5	\b, GRUB version x.y
169>>>380		string	Geom\0Hard\ Disk\0Read\0\ Error\0
170>>>>374		string	GRUB\ \0		\b, GRUB version n.m
171# http://syslinux.zytor.com/
172>478	string	Boot\ failed\r			
173>>495	string	LDLINUX\ SYS			\b, SYSLINUX bootloader (1.62)
174>480	string	Boot\ failed\r			
175>>495	string	LDLINUX\ SYS			\b, SYSLINUX bootloader (2.06 or 2.11)
176>484	string	Boot\ error\r			\b, SYSLINUX bootloader (3.11)
177>395	string	chksum\0\ ERROR!\0		\b, Gujin bootloader
178# http://www.bcdwb.de/bcdw/index_e.htm
179>3	string	BCDL				
180>>498	string	BCDL\ \ \ \ BIN			\b, Bootable CD Loader (1.50Z)
181# mbr partition table entries
182# OEM-ID not Microsoft,SYSLINUX,or MTOOLs
183>3			string		!MS
184>>3			string		!SYSLINUX
185>>>3			string		!MTOOL
186# not FAT (32 bit)
187>>>>82			string		!FAT32	
188#not IO.SYS
189>>>>>472		string		!IO\ \ \ \ \ \ SYS
190>>>>>>480		string		!IO\ \ \ \ \ \ SYS
191#not Linux kernel
192>>>>>>>514		string		!HdrS
193#not BeOS
194>>>>>>>>422		string		!Be\ Boot\ Loader
195# active flag 0 or 0x80 and type > 0
196>>>>>>>>>446		ubyte		<0x81	
197>>>>>>>>>>446		ubyte&0x7F	0	
198>>>>>>>>>>>450		ubyte		>0	\b; partition 1: ID=0x%x
199>>>>>>>>>>>>446		ubyte		0x80	\b, active
200>>>>>>>>>>>>447		ubyte		x	\b, starthead %u
201#>>>>>>>>>>>>448		ubyte		x	\b, start C_S: 0x%x
202#>>>>>>>>>>>>448		ubeshort&1023	x	\b, startcylinder? %d
203>>>>>>>>>>>>454		ulelong		x	\b, startsector %u
204>>>>>>>>>>>>458		ulelong		x	\b, %u sectors
205#
206>>>>>>>>>462		ubyte		<0x81	
207>>>>>>>>>>462		ubyte&0x7F	0		
208>>>>>>>>>>>466		ubyte		>0	\b; partition 2: ID=0x%x
209>>>>>>>>>>>>462		ubyte		0x80	\b, active
210>>>>>>>>>>>>463		ubyte		x	\b, starthead %u
211#>>>>>>>>>>>>464		ubyte		x	\b, start C_S: 0x%x
212#>>>>>>>>>>>>464		ubeshort&1023	x	\b, startcylinder? %d
213>>>>>>>>>>>>470		ulelong		x	\b, startsector %u
214>>>>>>>>>>>>474		ulelong		x	\b, %u sectors
215#
216>>>>>>>>>478		ubyte		<0x81		
217>>>>>>>>>>478		ubyte&0x7F	0		
218>>>>>>>>>>>482		ubyte		>0	\b; partition 3: ID=0x%x
219>>>>>>>>>>>>478		ubyte		0x80	\b, active
220>>>>>>>>>>>>479		ubyte		x	\b, starthead %u
221#>>>>>>>>>>>>480		ubyte		x	\b, start C_S: 0x%x
222#>>>>>>>>>>>>481		ubyte		x	\b, start C2S: 0x%x
223#>>>>>>>>>>>>480		ubeshort&1023	x	\b, startcylinder? %d
224>>>>>>>>>>>>486		ulelong		x	\b, startsector %u
225>>>>>>>>>>>>490		ulelong		x	\b, %u sectors
226#
227>>>>>>>>>494		ubyte		<0x81	
228>>>>>>>>>>494		ubyte&0x7F	0		
229>>>>>>>>>>>498		ubyte		>0	\b; partition 4: ID=0x%x
230>>>>>>>>>>>>494		ubyte		0x80	\b, active
231>>>>>>>>>>>>495		ubyte		x	\b, starthead %u
232#>>>>>>>>>>>>496		ubyte		x	\b, start C_S: 0x%x
233#>>>>>>>>>>>>496		ubeshort&1023	x	\b, startcylinder? %d
234>>>>>>>>>>>>502		ulelong		x	\b, startsector %u
235>>>>>>>>>>>>506		ulelong		x	\b, %u sectors
236# mbr partition table entries end
237# http://www.acronis.de/
238#FAT label=ACRONIS\ SZ
239#OEM-ID=BOOTWIZ0
240>442	string	Non-system\ disk,\ 	
241>>459	string	press\ any\ key...\x7\0		\b, Acronis Startup Recovery Loader
242# DOS names like F11.SYS are 8 right space padded bytes+3 bytes
243>>>477		ubyte&0xDF	>0		
244>>>>477		string		x 		\b %-.3s
245>>>>>480	ubyte&0xDF	>0		
246>>>>>>480	string		x 		\b%-.5s
247>>>>485		ubyte&0xDF	>0		
248>>>>>485	string		x 		\b.%-.3s
249#
250>185	string	FDBOOT\ Version\ 			
251>>204	string	\rNo\ Systemdisk.\ 			
252>>>220	string	Booting\ from\ harddisk.\n\r		
253>>>245	string	Cannot\ load\ from\ harddisk.\n\r	
254>>>>273 string	Insert\ Systemdisk\ 			
255>>>>>291 string and\ press\ any\ key.\n\r		\b, FDBOOT harddisk Bootloader
256>>>>>>200 string	>\0                             \b, version %-3s
257>242	string	Bootsector\ from\ C.H.\ Hochst\204	
258>>278	string	No\ Systemdisk.\ 			
259>>>293	string	Booting\ from\ harddisk.\n\r		
260>>>441	string	Cannot\ load\ from\ harddisk.\n\r	
261>>>>469 string	Insert\ Systemdisk\ 			
262>>>>>487 string and\ press\ any\ key.\n\r		\b, WinImage harddisk Bootloader
263>>>>>>209 string	>\0                             \b, version %-4.4s
264>(1.b+2)	ubyte		0xe			
265>>(1.b+3)	ubyte		0x1f			
266>>>(1.b+4)	ubyte		0xbe			
267>>>>(1.b+5)	ubyte		0x77			
268>>>>(1.b+6)	ubyte		0x7c			
269>>>>>(1.b+7)	ubyte		0xac			
270>>>>>>(1.b+8)	ubyte		0x22			
271>>>>>>>(1.b+9)	ubyte		0xc0			
272>>>>>>>>(1.b+10)	ubyte	0x74			
273>>>>>>>>>(1.b+11)	ubyte	0xb			
274>>>>>>>>>>(1.b+12)	ubyte	0x56			
275>>>>>>>>>>(1.b+13)	ubyte	0xb4			\b, mkdosfs boot message display
276>103	string	This\ is\ not\ a\ bootable\ disk.\ 	
277>>132	string	Please\ insert\ a\ bootable\ 		
278>>>157	string	floppy\ and\r\n				
279>>>>169	string	press\ any\ key\ to\ try\ again...\r	\b, FREE-DOS message display
280#
281>66	string	Solaris\ Boot\ Sector    		
282>>99	string	Incomplete\ MDBoot\ load.		
283>>>89	string	Version 				\b, Sun Solaris Bootloader
284>>>>97	byte	x					version %c
285#
286>408	string	OS/2\ !!\ SYS01475\r\0			
287>>429	string	OS/2\ !!\ SYS02025\r\0			
288>>>450	string	OS/2\ !!\ SYS02027\r\0			
289>>>469	string	OS2BOOT\ \ \ \ 				\b, IBM OS/2 Warp bootloader
290#
291>409	string	OS/2\ !!\ SYS01475\r\0			
292>>430	string	OS/2\ !!\ SYS02025\r\0			
293>>>451	string	OS/2\ !!\ SYS02027\r\0			
294>>>470	string	OS2BOOT\ \ \ \ 				\b, IBM OS/2 Warp Bootloader
295>112		string	This\ disk\ is\ not\ bootable\r			
296>>142		string	If\ you\ wish\ to\ make\ it\ bootable		
297>>>176		string	run\ the\ DOS\ program\ SYS\  			
298>>>200		string	after\ the\r					
299>>>>216		string	system\ has\ been\ loaded\r\n			
300>>>>>242	string	Please\ insert\ a\ DOS\ diskette\ 		
301>>>>>271	string	into\r\n\ the\ drive\ and\ 			
302>>>>>>292	string	strike\ any\ key...\0		\b, IBM OS/2 Warp message display
303# XP
304>430	string	NTLDR\ is\ missing\xFF\r\n		
305>>449	string	Disk\ error\xFF\r\n			
306>>>462	string	Press\ any\ key\ to\ restart\r		\b, Microsoft Windows XP Bootloader
307# DOS names like NTLDR,CMLDR,$LDR$ are 8 right space padded bytes+3 bytes
308>>>>417		ubyte&0xDF	>0			
309>>>>>417	string		x			%-.5s
310>>>>>>422	ubyte&0xDF	>0			
311>>>>>>>422	string		x 			\b%-.3s
312>>>>>425	ubyte&0xDF	>0			
313>>>>>>425	string		>\ 			\b.%-.3s
314#
315>>>>371		ubyte		>0x20			
316>>>>>368	ubyte&0xDF	>0			
317>>>>>>368	string		x 			%-.5s
318>>>>>>>373	ubyte&0xDF	>0			
319>>>>>>>>373	string		x 			\b%-.3s
320>>>>>>376	ubyte&0xDF	>0			
321>>>>>>>376	string		x 			\b.%-.3s
322#
323>430	string	NTLDR\ nicht\ gefunden\xFF\r\n		
324>>453	string	Datentr\204gerfehler\xFF\r\n		
325>>>473	string	Neustart\ mit\ beliebiger\ Taste\r	\b, Microsoft Windows XP Bootloader (german)
326>>>>417		ubyte&0xDF	>0			
327>>>>>417	string		x			%-.5s
328>>>>>>422	ubyte&0xDF	>0			
329>>>>>>>422	string		x 			\b%-.3s
330>>>>>425	ubyte&0xDF	>0			
331>>>>>>425	string		>\ 			\b.%-.3s
332# offset variant
333>>>>379	string	\0					
334>>>>>368	ubyte&0xDF	>0			
335>>>>>>368	string		x 			%-.5s
336>>>>>>>373	ubyte&0xDF	>0			
337>>>>>>>>373	string		x 			\b%-.3s
338#
339>430	string	NTLDR\ fehlt\xFF\r\n			
340>>444	string	Datentr\204gerfehler\xFF\r\n		
341>>>464	string	Neustart\ mit\ beliebiger\ Taste\r	\b, Microsoft Windows XP Bootloader (2.german)
342>>>>417		ubyte&0xDF	>0			
343>>>>>417	string		x			%-.5s
344>>>>>>422	ubyte&0xDF	>0			
345>>>>>>>422	string		x 			\b%-.3s
346>>>>>425	ubyte&0xDF	>0			
347>>>>>>425	string		>\ 			\b.%-.3s
348# variant
349>>>>371		ubyte		>0x20			
350>>>>>368	ubyte&0xDF	>0			
351>>>>>>368	string		x 			%-.5s
352>>>>>>>373	ubyte&0xDF	>0			
353>>>>>>>>373	string		x 			\b%-.3s
354>>>>>>376	ubyte&0xDF	>0			
355>>>>>>>376	string		x 			\b.%-.3s
356#
357>430	string	NTLDR\ fehlt\xFF\r\n			
358>>444	string	Medienfehler\xFF\r\n			
359>>>459	string	Neustart:\ Taste\ dr\201cken\r		\b, Microsoft Windows XP Bootloader (3.german)
360>>>>371		ubyte		>0x20			
361>>>>>368	ubyte&0xDF	>0			
362>>>>>>368	string		x 			%-.5s
363>>>>>>>373	ubyte&0xDF	>0			
364>>>>>>>>373	string		x 			\b%-.3s
365>>>>>>376	ubyte&0xDF	>0			
366>>>>>>>376	string		x 			\b.%-.3s
367# variant
368>>>>417		ubyte&0xDF	>0			
369>>>>>417	string		x			%-.5s
370>>>>>>422	ubyte&0xDF	>0			
371>>>>>>>422	string		x 			\b%-.3s
372>>>>>425	ubyte&0xDF	>0			
373>>>>>>425	string		>\ 			\b.%-.3s
374#
375>430	string	Datentr\204ger\ entfernen\xFF\r\n	
376>>454	string	Medienfehler\xFF\r\n			
377>>>469	string	Neustart:\ Taste\ dr\201cken\r		\b, Microsoft Windows XP Bootloader (4.german)
378>>>>368		ubyte&0xDF	>0			
379>>>>>368	string		x 			%-.5s
380>>>>>>373	ubyte&0xDF	>0			
381>>>>>>>373	string		x 			\b%-.3s
382>>>>>376	ubyte&0xDF	>0			
383>>>>>>376	string		x 			\b.%-.3s
384#>3	string	NTFS\ \ \ \ 				
385>389	string	Fehler\ beim\ Lesen\ 
386>>407	string	des\ Datentr\204gers
387>>>426	string	NTLDR\ fehlt				
388>>>>440	string	NTLDR\ ist\ komprimiert
389>>>>>464 string	Neustart\ mit\ Strg+Alt+Entf\r		\b, Microsoft Windows XP Bootloader NTFS (german)
390#>3	string	NTFS\ \ \ \ 				
391>313	string	A\ disk\ read\ error\ occurred.\r
392>>345	string	A\ kernel\ file\ is\ missing\ 	
393>>>370	string	from\ the\ disk.\r		
394>>>>484	string	NTLDR\ is\ compressed		
395>>>>>429 string	Insert\ a\ system\ diskette\ 	
396>>>>>>454 string and\ restart\r\nthe\ system.\r		\b, Microsoft Windows XP Bootloader NTFS
397# DOS loader variants different languages,offsets
398>472	ubyte&0xDF	>0
399>>389	string	Invalid\ system\ disk\xFF\r\n		
400>>>411	string	Disk\ I/O\ error			
401>>>>428	string	Replace\ the\ disk,\ and\ 		
402>>>>>455 string	press\ any\ key				\b, Microsoft Windows 98 Bootloader
403#IO.SYS
404>>>>>>472	ubyte&0xDF	>0			
405>>>>>>>472	string		x 			\b %-.2s
406>>>>>>>>474	ubyte&0xDF	>0			
407>>>>>>>>>474	string		x 			\b%-.5s
408>>>>>>>>>>479	ubyte&0xDF	>0			
409>>>>>>>>>>>479 string		x 			\b%-.1s
410>>>>>>>480	ubyte&0xDF	>0			
411>>>>>>>>480	string		x 			\b.%-.3s
412#MSDOS.SYS
413>>>>>>>483	ubyte&0xDF	>0			\b+
414>>>>>>>>483	string		x 			\b%-.5s
415>>>>>>>>>488	ubyte&0xDF	>0			
416>>>>>>>>>>488	string		x 			\b%-.3s
417>>>>>>>>491	ubyte&0xDF	>0			
418>>>>>>>>>491	string		x 			\b.%-.3s
419#
420>>390	string	Invalid\ system\ disk\xFF\r\n		
421>>>412	string	Disk\ I/O\ error\xFF\r\n		
422>>>>429	string	Replace\ the\ disk,\ and\ 		
423>>>>>451 string	then\ press\ any\ key\r			\b, Microsoft Windows 98 Bootloader
424>>388	string	Ungueltiges\ System\ \xFF\r\n		
425>>>410	string	E/A-Fehler\ \ \ \ \xFF\r\n		
426>>>>427	string	Datentraeger\ wechseln\ und\ 		
427>>>>>453 string	Taste\ druecken\r			\b, Microsoft Windows 95/98/ME Bootloader (german)
428#WINBOOT.SYS only not spaces (0xDF)
429>>>>>>497	ubyte&0xDF	>0			
430>>>>>>>497	string		x 			%-.5s
431>>>>>>>>502	ubyte&0xDF	>0			
432>>>>>>>>>502	string		x 			\b%-.1s
433>>>>>>>>>>503	ubyte&0xDF	>0			
434>>>>>>>>>>>503	string		x 			\b%-.1s
435>>>>>>>>>>>>504	ubyte&0xDF	>0			
436>>>>>>>>>>>>>504 string		x 			\b%-.1s
437>>>>>>505	ubyte&0xDF	>0			
438>>>>>>>505	string		x 			\b.%-.3s
439#IO.SYS
440>>>>>>472	ubyte&0xDF	>0			or
441>>>>>>>472	string		x 			\b %-.2s
442>>>>>>>>474	ubyte&0xDF	>0			
443>>>>>>>>>474	string		x 			\b%-.5s
444>>>>>>>>>>479	ubyte&0xDF	>0			
445>>>>>>>>>>>479 string		x 			\b%-.1s
446>>>>>>>480	ubyte&0xDF	>0			
447>>>>>>>>480	string		x 			\b.%-.3s
448#MSDOS.SYS
449>>>>>>>483	ubyte&0xDF	>0			\b+
450>>>>>>>>483	string		x 			\b%-.5s
451>>>>>>>>>488	ubyte&0xDF	>0			
452>>>>>>>>>>488	string		x 			\b%-.3s
453>>>>>>>>491	ubyte&0xDF	>0			
454>>>>>>>>>491	string		x 			\b.%-.3s
455#
456>>390	string	Ungueltiges\ System\ \xFF\r\n		
457>>>412	string	E/A-Fehler\ \ \ \ \xFF\r\n		
458>>>>429	string	Datentraeger\ wechseln\ und\ 		
459>>>>>455 string	Taste\ druecken\r			\b, Microsoft Windows 95/98/ME Bootloader (German)
460#WINBOOT.SYS only not spaces (0xDF)
461>>>>>>497	ubyte&0xDF	>0			
462>>>>>>>497	string		x 			%-.7s
463>>>>>>>>504	ubyte&0xDF	>0			
464>>>>>>>>>504	string		x 			\b%-.1s
465>>>>>>505	ubyte&0xDF	>0			
466>>>>>>>505	string		x 			\b.%-.3s
467#IO.SYS
468>>>>>>472	ubyte&0xDF	>0			or
469>>>>>>>472	string		x 			\b %-.2s
470>>>>>>>>474	ubyte&0xDF	>0			
471>>>>>>>>>474	string		x 			\b%-.6s
472>>>>>>>480	ubyte&0xDF	>0			
473>>>>>>>>480	string		x 			\b.%-.3s
474#MSDOS.SYS
475>>>>>>>483	ubyte&0xDF	>0			\b+
476>>>>>>>>483	string		x 			\b%-.5s
477>>>>>>>>>488	ubyte&0xDF	>0			
478>>>>>>>>>>488	string		x 			\b%-.3s
479>>>>>>>>491	ubyte&0xDF	>0			
480>>>>>>>>>491	string		x 			\b.%-.3s
481#
482>>389	string	Ungueltiges\ System\ \xFF\r\n		
483>>>411	string	E/A-Fehler\ \ \ \ \xFF\r\n		
484>>>>428	string	Datentraeger\ wechseln\ und\ 		
485>>>>>454 string	Taste\ druecken\r			\b, Microsoft Windows 95/98/ME Bootloader (GERMAN)
486# DOS names like IO.SYS,WINBOOT.SYS,MSDOS.SYS,WINBOOT.INI are 8 right space padded bytes+3 bytes
487>>>>>>472	string		x 			%-.2s
488>>>>>>>474	ubyte&0xDF	>0			
489>>>>>>>>474	string		x 			\b%-.5s
490>>>>>>>>479	ubyte&0xDF	>0			
491>>>>>>>>>479	string		x 			\b%-.1s
492>>>>>>480	ubyte&0xDF	>0			
493>>>>>>>480	string		x 			\b.%-.3s
494>>>>>>483	ubyte&0xDF	>0			\b+
495>>>>>>>483	string		x 			\b%-.5s
496>>>>>>>488	ubyte&0xDF	>0			
497>>>>>>>>488	string		x 			\b%-.2s
498>>>>>>>>490	ubyte&0xDF	>0			
499>>>>>>>>>490	string		x 			\b%-.1s
500>>>>>>>491	ubyte&0xDF	>0			
501>>>>>>>>491	string		x 			\b.%-.3s
502>479	ubyte&0xDF	>0
503>>416	string	Kein\ System\ oder\ 			
504>>>433	string	Laufwerksfehler				
505>>>>450	string	Wechseln\ und\ Taste\ dr\201cken	\b, Microsoft DOS Bootloader (german)
506#IO.SYS
507>>>>>479	string		x 			\b %-.2s
508>>>>>>481	ubyte&0xDF	>0			
509>>>>>>>481	string		x 			\b%-.6s
510>>>>>487	ubyte&0xDF	>0			
511>>>>>>487	string		x 			\b.%-.3s
512#MSDOS.SYS
513>>>>>>490	ubyte&0xDF	>0			\b+
514>>>>>>>490	string		x 			\b%-.5s
515>>>>>>>>495	ubyte&0xDF	>0			
516>>>>>>>>>495	string		x 			\b%-.3s
517>>>>>>>498	ubyte&0xDF	>0			
518>>>>>>>>498	string		x 			\b.%-.3s
519#
520>376	search/41	Non-System\ disk\ or\ 		
521>>395	search/41	disk\ error\r			
522>>>407	search/41	Replace\ and\ 			
523>>>>419	search/41	press\ 				\b,
524>>>>419	search/41	strike\ 			\b, old
525>>>>426	search/41	any\ key\ when\ ready\r		MS or PC-DOS bootloader
526#449			Disk\ Boot\ failure\r		MS 3.21
527#466			Boot\ Failure\r			MS 3.30
528>>>>>468 search/18	\0				
529#IO.SYS,IBMBIO.COM
530>>>>>>&0	string		x 			\b %-.2s
531>>>>>>>&-20	ubyte&0xDF	>0			
532>>>>>>>>&-1	string		x 			\b%-.4s
533>>>>>>>>>&-16	ubyte&0xDF	>0			
534>>>>>>>>>>&-1	string		x 			\b%-.2s
535>>>>>>&8	ubyte&0xDF	>0			\b.
536>>>>>>>&-1	string		x 			\b%-.3s
537#MSDOS.SYS,IBMDOS.COM
538>>>>>>&11	ubyte&0xDF	>0			\b+
539>>>>>>>&-1	string		x 			\b%-.5s
540>>>>>>>>&-6	ubyte&0xDF	>0			
541>>>>>>>>>&-1	string		x 			\b%-.1s
542>>>>>>>>>>&-5	ubyte&0xDF	>0			
543>>>>>>>>>>>&-1	string		x 			\b%-.2s
544>>>>>>>&7	ubyte&0xDF	>0			\b.
545>>>>>>>>&-1	string		x 			\b%-.3s
546>441	string	Cannot\ load\ from\ harddisk.\n\r
547>>469	string	Insert\ Systemdisk\ 			
548>>>487	string	and\ press\ any\ key.\n\r		\b, MS (2.11) DOS bootloader
549#>43	string	\224R-LOADER\ \ SYS			=label					
550>54	string	SYS
551>>324	string	VASKK
552>>>495	string	NEWLDR\0				\b, DR-DOS Bootloader (LOADER.SYS)
553#
554>98	string	Press\ a\ key\ to\ retry\0\r		
555>>120	string	Cannot\ find\ file\ \0\r		
556>>>139	string	Disk\ read\ error\0\r			
557>>>>156	string	Loading\ ...\0				\b, DR-DOS (3.41) Bootloader
558#DRBIOS.SYS
559>>>>>44		ubyte&0xDF	>0			
560>>>>>>44	string		x			\b %-.6s
561>>>>>>>50	ubyte&0xDF	>0			
562>>>>>>>>50	string		x 			\b%-.2s
563>>>>>>52	ubyte&0xDF	>0			
564>>>>>>>52	string		x 			\b.%-.3s
565#
566>70	string	IBMBIO\ \ COM				
567>>472	string	Cannot\ load\ DOS!\ 			
568>>>489	string	Any\ key\ to\ retry			\b, DR-DOS Bootloader
569>>471	string	Cannot\ load\ DOS\ 			
570>>487	string	press\ key\ to\ retry			\b, Open-DOS Bootloader
571>444	string	KERNEL\ \ SYS					
572>>314	string	BOOT\ error!				\b, FREE-DOS Bootloader
573>499	string	KERNEL\ \ SYS				
574>>305	string	BOOT\ err!\0				\b, Free-DOS Bootloader
575>449	string	KERNEL\ \ SYS				
576>>319	string	BOOT\ error!				\b, FREE-DOS 0.5 Bootloader
577>125	string	Loading\ FreeDOS...\r			
578>>311	string	BOOT\ error!\r				\b, FREE-DOS bootloader
579>>>441		ubyte&0xDF	>0			
580>>>>441		string		x 			\b %-.6s
581>>>>>447	ubyte&0xDF	>0			
582>>>>>>447	string		x 			\b%-.1s
583>>>>>>>448	ubyte&0xDF	>0			
584>>>>>>>>448	string		x 			\b%-.1s
585>>>>449		ubyte&0xDF	>0			
586>>>>>449	string		x 			\b.%-.3s
587>124	string	FreeDOS\0				
588>>331	string	\ err\0					\b, FREE-DOS BETa 0.9 Bootloader
589# DOS names like KERNEL.SYS,KERNEL16.SYS,KERNEL32.SYS,METAKERN.SYS are 8 right space padded bytes+3 bytes
590>>>497		ubyte&0xDF	>0			
591>>>>497		string		x 			\b %-.6s
592>>>>>503	ubyte&0xDF	>0			
593>>>>>>503	string		x 			\b%-.1s
594>>>>>>>504	ubyte&0xDF	>0			
595>>>>>>>>504	string		x 			\b%-.1s
596>>>>505		ubyte&0xDF	>0			
597>>>>>505	string		x 			\b.%-.3s
598>>333	string	\ err\0					\b, FREE-DOS BEta 0.9 Bootloader
599>>>497		ubyte&0xDF	>0			
600>>>>497		string		x 			\b %-.6s
601>>>>>503	ubyte&0xDF	>0			
602>>>>>>503	string		x 			\b%-.1s
603>>>>>>>504	ubyte&0xDF	>0			
604>>>>>>>>504	string		x 			\b%-.1s
605>>>>505		ubyte&0xDF	>0			
606>>>>>505	string		x 			\b.%-.3s
607>>334	string	\ err\0					\b, FREE-DOS Beta 0.9 Bootloader
608>>>497		ubyte&0xDF	>0			
609>>>>497		string		x 			\b %-.6s
610>>>>>503	ubyte&0xDF	>0			
611>>>>>>503	string		x 			\b%-.1s
612>>>>>>>504	ubyte&0xDF	>0			
613>>>>>>>>504	string		x 			\b%-.1s
614>>>>505		ubyte&0xDF	>0			
615>>>>>505	string		x 			\b.%-.3s
616>336	string	Error!\ 				
617>>343	string	Hit\ a\ key\ to\ reboot.		\b, FREE-DOS Beta 0.9sr1 Bootloader
618>>>497		ubyte&0xDF	>0			
619>>>>497		string		x 			\b %-.6s
620>>>>>503	ubyte&0xDF	>0			
621>>>>>>503	string		x 			\b%-.1s
622>>>>>>>504	ubyte&0xDF	>0			
623>>>>>>>>504	string		x 			\b%-.1s
624>>>>505		ubyte&0xDF	>0			
625>>>>>505	string		x 			\b.%-.3s
626# added by Joerg Jenderek
627# http://www.visopsys.org/
628# http://partitionlogic.org.uk/
629# OEM-ID=Visopsys
630>478		ulelong	0					
631>>(1.b+326)	string	I/O\ Error\ reading\ 			
632>>>(1.b+344)	string	Visopsys\ loader\r			
633>>>>(1.b+361)	string	Press\ any\ key\ to\ continue.\r	\b, Visopsys loader
634# http://alexfru.chat.ru/epm.html#bootprog
635>494	ubyte	>0x4D					
636>>495	string	>E					
637>>>495	string	<S					
638#OEM-ID is not reliable
639>>>>3	string	BootProg				
640# It just looks for a program file name at the root directory
641# and loads corresponding file with following execution.
642# DOS names like STARTUP.BIN,STARTUPC.COM,STARTUPE.EXE are 8 right space padded bytes+3 bytes
643>>>>499			ubyte&0xDF	>0		\b, COM/EXE Bootloader
644>>>>>499		string		x 		\b %-.1s
645>>>>>>500		ubyte&0xDF	>0		
646>>>>>>>500		string		x 		\b%-.1s
647>>>>>>>>501		ubyte&0xDF	>0		
648>>>>>>>>>501		string		x 		\b%-.1s
649>>>>>>>>>>502		ubyte&0xDF	>0		
650>>>>>>>>>>>502		string		x 		\b%-.1s
651>>>>>>>>>>>>503		ubyte&0xDF	>0		
652>>>>>>>>>>>>>503	string		x 		\b%-.1s
653>>>>>>>>>>>>>>504	ubyte&0xDF	>0		
654>>>>>>>>>>>>>>>504	string		x 		\b%-.1s
655>>>>>>>>>>>>>>>>505	ubyte&0xDF	>0		
656>>>>>>>>>>>>>>>>>505	string		x 		\b%-.1s
657>>>>>>>>>>>>>>>>>>506	ubyte&0xDF	>0		
658>>>>>>>>>>>>>>>>>>>506	string		x 		\b%-.1s
659#name extension
660>>>>>507		ubyte&0xDF	>0		\b.
661>>>>>>507		string		x 		\b%-.1s
662>>>>>>>508		ubyte&0xDF	>0		
663>>>>>>>>508		string		x 		\b%-.1s
664>>>>>>>>>509		ubyte&0xDF	>0		
665>>>>>>>>>>509		string		x 		\b%-.1s
666#If the boot sector fails to read any other sector,
667#it prints a very short message ("RE") to the screen and hangs the computer.
668#If the boot sector fails to find needed program in the root directory,
669#it also hangs with another message ("NF").
670>>>>>492		string		RENF		\b, FAT (12 bit)
671>>>>>495		string		RENF		\b, FAT (16 bit)
672# http://alexfru.chat.ru/epm.html#bootprog
673>494	ubyte	>0x4D					
674>>495	string	>E					
675>>>495	string	<S					
676#OEM-ID is not reliable
677>>>>3	string	BootProg				
678# It just looks for a program file name at the root directory
679# and loads corresponding file with following execution.
680# DOS names like STARTUP.BIN,STARTUPC.COM,STARTUPE.EXE are 8 right space padded bytes+3 bytes
681>>>>499			ubyte&0xDF	>0		\b, COM/EXE Bootloader
682>>>>>499		string		x 		\b %-.1s
683>>>>>>500		ubyte&0xDF	>0		
684>>>>>>>500		string		x 		\b%-.1s
685>>>>>>>>501		ubyte&0xDF	>0		
686>>>>>>>>>501		string		x 		\b%-.1s
687>>>>>>>>>>502		ubyte&0xDF	>0		
688>>>>>>>>>>>502		string		x 		\b%-.1s
689>>>>>>>>>>>>503		ubyte&0xDF	>0		
690>>>>>>>>>>>>>503	string		x 		\b%-.1s
691>>>>>>>>>>>>>>504	ubyte&0xDF	>0		
692>>>>>>>>>>>>>>>504	string		x 		\b%-.1s
693>>>>>>>>>>>>>>>>505	ubyte&0xDF	>0		
694>>>>>>>>>>>>>>>>>505	string		x 		\b%-.1s
695>>>>>>>>>>>>>>>>>>506	ubyte&0xDF	>0		
696>>>>>>>>>>>>>>>>>>>506	string		x 		\b%-.1s
697#name extension
698>>>>>507		ubyte&0xDF	>0		\b.
699>>>>>>507		string		x 		\b%-.1s
700>>>>>>>508		ubyte&0xDF	>0		
701>>>>>>>>508		string		x 		\b%-.1s
702>>>>>>>>>509		ubyte&0xDF	>0		
703>>>>>>>>>>509		string		x 		\b%-.1s
704#If the boot sector fails to read any other sector,
705#it prints a very short message ("RE") to the screen and hangs the computer.
706#If the boot sector fails to find needed program in the root directory,
707#it also hangs with another message ("NF").
708>>>>>492		string		RENF		\b, FAT (12 bit)
709>>>>>495		string		RENF		\b, FAT (16 bit)
710# added by Joerg Jenderek
711# http://syslinux.zytor.com/iso.php
7120	ulelong	0x7c40eafa		isolinux Loader
713# http://syslinux.zytor.com/pxe.php
7140	ulelong	0x007c05ea		pxelinux Loader
7150	ulelong	0x60669c66		pxelinux Loader
716# loader end
717# updated by Joerg Jenderek at Sep 2007
718>3	ubyte	0			
719#no active flag
720>>446	ubyte	0			
721# partition 1 not empty
722>>>450	ubyte	>0			
723# partitions 3,4 empty
724>>>>482		ubyte	0			
725>>>>>498	ubyte	0			
726# partition 2 ID=0,5,15
727>>>>>>466	ubyte	<0x10			
728>>>>>>>466	ubyte	0x05			\b, extended partition table
729>>>>>>>466	ubyte	0x0F			\b, extended partition table (LBA)
730>>>>>>>466	ubyte	0x0			\b, extended partition table (last)	
731# JuMP short     bootcodeoffset NOP assembler instructions will usually be EB xx 90
732# http://mirror.href.com/thestarman/asm/2bytejumps.htmm#FWD
733# older drives may use Near JuMP instruction E9 xx xx
734>0		lelong&0x009000EB	0x009000EB 
735>0		lelong&0x000000E9	0x000000E9 
736# maximal short forward jump is 07fx
737>1		ubyte			<0xff	\b, code offset 0x%x
738# mtools-3.9.8/msdos.h
739# usual values are marked with comments to get only information of strange FAT systems
740# valid sectorsize must be a power of 2 from 32 to 32768
741>>11		uleshort&0x000f	x		
742>>>11		uleshort	<32769		
743>>>>11		uleshort	>31		
744>>>>>3		string		>\0		\b, OEM-ID "%8.8s"
745#http://mirror.href.com/thestarman/asm/debug/debug2.htm#IHC
746>>>>>>8		string		IHC		\b cached by Windows 9M
747>>>>>11		uleshort	>512		\b, Bytes/sector %u
748#>>>>>11	uleshort	=512		\b, Bytes/sector %u=512 (usual)
749>>>>>11		uleshort	<512		\b, Bytes/sector %u
750>>>>>13		ubyte		>1		\b, sectors/cluster %u
751#>>>>>13	ubyte		=1		\b, sectors/cluster %u (usual on Floppies)
752>>>>>14		uleshort	>32		\b, reserved sectors %u
753#>>>>>14	uleshort	=32		\b, reserved sectors %u (usual Fat32)
754#>>>>>14	uleshort	>1		\b, reserved sectors %u
755#>>>>>14	uleshort	=1		\b, reserved sectors %u (usual FAT12,FAT16)
756>>>>>14		uleshort	<1		\b, reserved sectors %u
757>>>>>16		ubyte		>2		\b, FATs %u
758#>>>>>16	ubyte		=2		\b, FATs %u (usual)
759>>>>>16		ubyte		=1		\b, FAT  %u
760>>>>>16		ubyte		>0
761>>>>>17		uleshort	>0		\b, root entries %u
762#>>>>>17	uleshort	=0		\b, root entries %u=0 (usual Fat32)
763>>>>>19		uleshort	>0		\b, sectors %u (volumes <=32 MB) 
764#>>>>>19	uleshort	=0		\b, sectors %u=0 (usual Fat32)
765>>>>>21		ubyte		>0xF0		\b, Media descriptor 0x%x
766#>>>>>21	ubyte		=0xF0		\b, Media descriptor 0x%x (usual floppy)
767>>>>>21		ubyte		<0xF0		\b, Media descriptor 0x%x
768>>>>>22		uleshort	>0		\b, sectors/FAT %u
769#>>>>>22	uleshort	=0		\b, sectors/FAT %u=0 (usual Fat32)
770>>>>>26		ubyte		>2		\b, heads %u
771#>>>>>26	ubyte		=2		\b, heads %u (usual floppy)
772>>>>>26		ubyte		=1		\b, heads %u
773#skip for Digital Research DOS (version 3.41) 1440 kB Bootdisk
774>>>>>38		ubyte		!0x70		
775>>>>>>28	ulelong		>0		\b, hidden sectors %u
776#>>>>>>28	ulelong		=0		\b, hidden sectors %u (usual floppy)
777>>>>>>32	ulelong		>0		\b, sectors %u (volumes > 32 MB) 
778#>>>>>>32	ulelong		=0		\b, sectors %u (volumes > 32 MB)
779# FAT<32 specific 
780>>>>>82		string		!FAT32
781#>>>>>>36	ubyte		0x80		\b, physical drive 0x%x=0x80 (usual harddisk)
782#>>>>>>36	ubyte		0		\b, physical drive 0x%x=0 (usual floppy)
783>>>>>>36	ubyte		!0x80		
784>>>>>>>36	ubyte		!0		\b, physical drive 0x%x
785>>>>>>37	ubyte		>0		\b, reserved 0x%x
786#>>>>>>37	ubyte		=0		\b, reserved 0x%x
787>>>>>>38	ubyte		>0x29		\b, dos < 4.0 BootSector (0x%x)
788>>>>>>38	ubyte		<0x29		\b, dos < 4.0 BootSector (0x%x)
789>>>>>>38	ubyte		=0x29
790>>>>>>>39	ulelong		x		\b, serial number 0x%x
791>>>>>>>43	string		<NO\ NAME	\b, label: "%11.11s"
792>>>>>>>43	string		>NO\ NAME	\b, label: "%11.11s"
793>>>>>>>43	string		=NO\ NAME	\b, unlabeled
794>>>>>>54	string		FAT		\b, FAT
795>>>>>>>54	string		FAT12		\b (12 bit)
796>>>>>>>54	string		FAT16		\b (16 bit)
797# FAT32 specific
798>>>>>82		string		FAT32		\b, FAT (32 bit)
799>>>>>>36	ulelong		x		\b, sectors/FAT %u
800>>>>>>40	uleshort	>0		\b, extension flags %u
801#>>>>>>40	uleshort	=0		\b, extension flags %u
802>>>>>>42	uleshort	>0		\b, fsVersion %u
803#>>>>>>42	uleshort	=0		\b, fsVersion %u (usual)
804>>>>>>44	ulelong		>2		\b, rootdir cluster %u
805#>>>>>>44	ulelong		=2		\b, rootdir cluster %u
806#>>>>>>44	ulelong		=1		\b, rootdir cluster %u
807>>>>>>48	uleshort	>1		\b, infoSector %u
808#>>>>>>48	uleshort	=1		\b, infoSector %u (usual)
809>>>>>>48	uleshort	<1		\b, infoSector %u
810>>>>>>50	uleshort	>6		\b, Backup boot sector %u
811#>>>>>>50	uleshort	=6		\b, Backup boot sector %u (usual) 
812>>>>>>50	uleshort	<6		\b, Backup boot sector %u
813>>>>>>54	ulelong		>0		\b, reserved1 0x%x
814>>>>>>58	ulelong		>0		\b, reserved2 0x%x
815>>>>>>62	ulelong		>0		\b, reserved3 0x%x
816# same structure as FAT1X 
817>>>>>>64	ubyte		>0x80		\b, physical drive 0x%x
818#>>>>>>64	ubyte		=0x80		\b, physical drive 0x%x=80 (usual harddisk)
819>>>>>>64	ubyte&0x7F	>0		\b, physical drive 0x%x
820#>>>>>>64	ubyte		=0		\b, physical drive 0x%x=0 (usual floppy)
821>>>>>>65	ubyte		>0		\b, reserved 0x%x
822>>>>>>66	ubyte		>0x29		\b, dos < 4.0 BootSector (0x%x)
823>>>>>>66	ubyte		<0x29		\b, dos < 4.0 BootSector (0x%x)
824>>>>>>66	ubyte		=0x29
825>>>>>>>67	ulelong		x		\b, serial number 0x%x
826>>>>>>>71	string		<NO\ NAME	\b, label: "%11.11s"
827>>>>>>71	string		>NO\ NAME	\b, label: "%11.11s"
828>>>>>>71	string		=NO\ NAME	\b, unlabeled
829### FATs end
830>0x200	lelong	0x82564557		\b, BSD disklabel
831# FATX 
8320		string		FATX		FATX filesystem data
833
834
835# Minix filesystems - Juan Cespedes <cespedes@debian.org>
8360x410	leshort		0x137f		Minix filesystem
8370x410	beshort		0x137f		Minix filesystem (big endian)
838>0x402	beshort		!0		\b, %d zones
839>0x1e	string		minix		\b, bootable
8400x410	leshort		0x138f		Minix filesystem, 30 char names
8410x410	leshort		0x2468		Minix filesystem, version 2
8420x410	leshort		0x2478		Minix filesystem, version 2, 30 char names
843
844# romfs filesystems - Juan Cespedes <cespedes@debian.org>
8450	string		-rom1fs-\0	romfs filesystem, version 1
846>8	belong	x			%d bytes,
847>16	string	x			named %s.
848
849# netboot image - Juan Cespedes <cespedes@debian.org>
8500	lelong		0x1b031336L	Netboot image,
851>4	lelong&0xFFFFFF00	0
852>>4	lelong&0x100	0x000		mode 2
853>>4	lelong&0x100	0x100		mode 3
854>4	lelong&0xFFFFFF00	!0	unknown mode
855
8560x18b	string	OS/2	OS/2 Boot Manager
857
858# added by Joerg Jenderek
859# In the second sector (+0x200) are variables according to grub-0.97/stage2/asm.S or
860# grub-1.94/kern/i386/pc/startup.S
861# http://www.gnu.org/software/grub/manual/grub.html#Embedded-data
862# usual values are marked with comments to get only information of strange GRUB loaders
8630x200	uleshort		0x70EA		
864# found only version 3.{1,2}
865>0x206		ubeshort	>0x0300		
866# GRUB version (0.5.)95,0.93,0.94,0.96,0.97 > "00"
867>>0x212 	ubyte		>0x29		
868>>>0x213 	ubyte		>0x29		
869# not iso9660_stage1_5
870#>>>0	ulelong&0x00BE5652	0x00BE5652	
871>>>>0x213 	ubyte		>0x29		GRand Unified Bootloader
872# config_file for stage1_5 is 0xffffffff + default "/boot/grub/stage2"
873>>>>0x217 	ubyte		0xFF		stage1_5
874>>>>0x217 	ubyte		<0xFF		stage2
875>>>>0x206	ubyte		x		\b version %u
876>>>>0x207	ubyte		x		\b.%u
877# module_size for 1.94
878>>>>0x208	ulelong		<0xffffff	\b, installed partition %u
879#>>>>0x208	ulelong		=0xffffff	\b, %u (default)
880>>>>0x208	ulelong		>0xffffff	\b, installed partition %u
881# GRUB 0.5.95 unofficial
882>>>>0x20C	ulelong&0x2E300000 0x2E300000	
883# 0=stage2	1=ffs	2=e2fs	3=fat	4=minix	5=reiserfs
884>>>>>0x20C	ubyte		x		\b, identifier 0x%x
885#>>>>>0x20D	ubyte		=0		\b, LBA flag 0x%x (default)
886>>>>>0x20D	ubyte		>0		\b, LBA flag 0x%x
887# GRUB version as string
888>>>>>0x20E 	string		>\0		\b, GRUB version %-s
889# for stage1_5 is 0xffffffff + config_file "/boot/grub/stage2" default
890>>>>>>0x215 	ulong		0xffffffff	
891>>>>>>>0x219 	string		>\0		\b, configuration file %-s
892>>>>>>0x215 	ulong		!0xffffffff	
893>>>>>>>0x215 	string		>\0		\b, configuration file %-s
894# newer GRUB versions
895>>>>0x20C	ulelong&0x2E300000 !0x2E300000	
896##>>>>>0x20C	ulelong		=0		\b, saved entry %d (usual)
897>>>>>0x20C	ulelong		>0		\b, saved entry %d
898# for 1.94 contains kernel image size
899# for 0.93,0.94,0.96,0.97
900# 0=stage2	1=ffs	2=e2fs	3=fat	4=minix	5=reiserfs	6=vstafs	7=jfs	8=xfs	9=iso9660	a=ufs2	
901>>>>>0x210	ubyte		x		\b, identifier 0x%x
902# The flag for LBA forcing is in most cases 0
903#>>>>>0x211	ubyte		=0		\b, LBA flag 0x%x (default)
904>>>>>0x211	ubyte		>0		\b, LBA flag 0x%x
905# GRUB version as string
906>>>>>0x212 	string		>\0		\b, GRUB version %-s
907# for stage1_5 is 0xffffffff + config_file "/boot/grub/stage2" default
908>>>>>0x217 	ulong		0xffffffff	
909>>>>>>0x21b 	string		>\0		\b, configuration file %-s
910>>>>>0x217 	ulong		!0xffffffff	
911>>>>>>0x217 	string		>\0		\b, configuration file %-s
912
9139564	lelong		0x00011954	Unix Fast File system [v1] (little-endian),
914>8404	string		x		last mounted on %s,
915#>9504	ledate		x		last checked at %s,
916>8224	ledate		x		last written at %s,
917>8401	byte		x		clean flag %d,
918>8228	lelong		x		number of blocks %d,
919>8232	lelong		x		number of data blocks %d,
920>8236	lelong		x		number of cylinder groups %d,
921>8240	lelong		x		block size %d,
922>8244	lelong		x		fragment size %d,
923>8252	lelong		x		minimum percentage of free blocks %d,
924>8256	lelong		x		rotational delay %dms,
925>8260	lelong		x		disk rotational speed %drps,
926>8320	lelong		0		TIME optimization
927>8320	lelong		1		SPACE optimization
928
92942332	lelong		0x19540119	Unix Fast File system [v2] (little-endian)
930>&-1164	string		x		last mounted on %s,
931>&-696	string		>\0		volume name %s,
932>&-304	leqldate	x		last written at %s,
933>&-1167	byte		x		clean flag %d,
934>&-1168	byte		x		readonly flag %d,
935>&-296	lequad		x		number of blocks %lld,
936>&-288	lequad		x		number of data blocks %lld,
937>&-1332	lelong		x		number of cylinder groups %d,
938>&-1328	lelong		x		block size %d,
939>&-1324	lelong		x		fragment size %d,
940>&-180	lelong		x		average file size %d,
941>&-176	lelong		x		average number of files in dir %d,
942>&-272	lequad		x		pending blocks to free %lld,
943>&-264	lelong		x		pending inodes to free %ld,
944>&-664	lequad		x		system-wide uuid %0llx,
945>&-1316	lelong		x		minimum percentage of free blocks %d,
946>&-1248	lelong		0		TIME optimization
947>&-1248	lelong		1		SPACE optimization
948
94966908	lelong		0x19540119	Unix Fast File system [v2] (little-endian)
950>&-1164	string		x		last mounted on %s,
951>&-696	string		>\0		volume name %s,
952>&-304	leqldate	x		last written at %s,
953>&-1167	byte		x		clean flag %d,
954>&-1168	byte		x		readonly flag %d,
955>&-296	lequad		x		number of blocks %lld,
956>&-288	lequad		x		number of data blocks %lld,
957>&-1332	lelong		x		number of cylinder groups %d,
958>&-1328	lelong		x		block size %d,
959>&-1324	lelong		x		fragment size %d,
960>&-180	lelong		x		average file size %d,
961>&-176	lelong		x		average number of files in dir %d,
962>&-272	lequad		x		pending blocks to free %lld,
963>&-264	lelong		x		pending inodes to free %ld,
964>&-664	lequad		x		system-wide uuid %0llx,
965>&-1316	lelong		x		minimum percentage of free blocks %d,
966>&-1248	lelong		0		TIME optimization
967>&-1248	lelong		1		SPACE optimization
968
9699564	belong		0x00011954	Unix Fast File system [v1] (big-endian),
970>7168   belong		0x4c41424c	Apple UFS Volume
971>>7186  string		x		named %s,
972>>7176  belong		x		volume label version %d,
973>>7180  bedate		x		created on %s,
974>8404	string		x		last mounted on %s,
975#>9504	bedate		x		last checked at %s,
976>8224	bedate		x		last written at %s,
977>8401	byte		x		clean flag %d,
978>8228	belong		x		number of blocks %d,
979>8232	belong		x		number of data blocks %d,
980>8236	belong		x		number of cylinder groups %d,
981>8240	belong		x		block size %d,
982>8244	belong		x		fragment size %d,
983>8252	belong		x		minimum percentage of free blocks %d,
984>8256	belong		x		rotational delay %dms,
985>8260	belong		x		disk rotational speed %drps,
986>8320	belong		0		TIME optimization
987>8320	belong		1		SPACE optimization
988
98942332	belong		0x19540119	Unix Fast File system [v2] (big-endian)
990>&-1164	string		x		last mounted on %s,
991>&-696	string		>\0		volume name %s,
992>&-304	beqldate	x		last written at %s,
993>&-1167	byte		x		clean flag %d,
994>&-1168	byte		x		readonly flag %d,
995>&-296	bequad		x		number of blocks %lld,
996>&-288	bequad		x		number of data blocks %lld,
997>&-1332	belong		x		number of cylinder groups %d,
998>&-1328	belong		x		block size %d,
999>&-1324	belong		x		fragment size %d,
1000>&-180	belong		x		average file size %d,
1001>&-176	belong		x		average number of files in dir %d,
1002>&-272	bequad		x		pending blocks to free %lld,
1003>&-264	belong		x		pending inodes to free %ld,
1004>&-664	bequad		x		system-wide uuid %0llx,
1005>&-1316	belong		x		minimum percentage of free blocks %d,
1006>&-1248	belong		0		TIME optimization
1007>&-1248	belong		1		SPACE optimization
1008
100966908	belong		0x19540119	Unix Fast File system [v2] (big-endian)
1010>&-1164	string		x		last mounted on %s,
1011>&-696	string		>\0		volume name %s,
1012>&-304	beqldate	x		last written at %s,
1013>&-1167	byte		x		clean flag %d,
1014>&-1168	byte		x		readonly flag %d,
1015>&-296	bequad		x		number of blocks %lld,
1016>&-288	bequad		x		number of data blocks %lld,
1017>&-1332	belong		x		number of cylinder groups %d,
1018>&-1328	belong		x		block size %d,
1019>&-1324	belong		x		fragment size %d,
1020>&-180	belong		x		average file size %d,
1021>&-176	belong		x		average number of files in dir %d,
1022>&-272	bequad		x		pending blocks to free %lld,
1023>&-264	belong		x		pending inodes to free %ld,
1024>&-664	bequad		x		system-wide uuid %0llx,
1025>&-1316	belong		x		minimum percentage of free blocks %d,
1026>&-1248	belong		0		TIME optimization
1027>&-1248	belong		1		SPACE optimization
1028
1029# ext2/ext3 filesystems - Andreas Dilger <adilger@dilger.ca>
1030# ext4 filesystem - Eric Sandeen <sandeen@sandeen.net>
10310x438   leshort         0xEF53          Linux
1032>0x44c  lelong          x               rev %d
1033>0x43e  leshort         x               \b.%d
1034# No journal?  ext2
1035>0x45c  lelong          ^0x0000004      ext2 filesystem data
1036>>0x43a leshort         ^0x0000001      (mounted or unclean)
1037# Has a journal?  ext3 or ext4
1038>0x45c  lelong          &0x0000004
1039#  and small INCOMPAT?
1040>>0x460 lelong          <0x0000040
1041#   and small RO_COMPAT?
1042>>>0x464 lelong         <0x0000008      ext3 filesystem data
1043#   else large RO_COMPAT?
1044>>>0x464 lelong         >0x0000007      ext4 filesystem data
1045#  else large INCOMPAT?
1046>>0x460 lelong          >0x000003f      ext4 filesystem data
1047# General flags for any ext* fs
1048>0x460  lelong          &0x0000004      (needs journal recovery)
1049>0x43a  leshort         &0x0000002      (errors)
1050# INCOMPAT flags
1051>0x460  lelong          &0x0000001      (compressed)
1052#>0x460 lelong          &0x0000002      (filetype)
1053#>0x460 lelong          &0x0000010      (meta bg)
1054>0x460  lelong          &0x0000040      (extents)
1055>0x460  lelong          &0x0000080      (64bit)
1056#>0x460 lelong          &0x0000100      (mmp)
1057#>0x460 lelong          &0x0000200      (flex bg)
1058# RO_INCOMPAT flags
1059#>0x464 lelong          &0x0000001      (sparse super)
1060>0x464  lelong          &0x0000002      (large files)
1061>0x464  lelong          &0x0000008      (huge files)
1062#>0x464 lelong          &0x0000010      (gdt checksum)
1063#>0x464 lelong          &0x0000020      (many subdirs)
1064#>0x463 lelong          &0x0000040      (extra isize)
1065
1066# SGI disk labels - Nathan Scott <nathans@debian.org>
10670	belong		0x0BE5A941	SGI disk label (volume header)
1068
1069# SGI XFS filesystem - Nathan Scott <nathans@debian.org>
10700	belong		0x58465342	SGI XFS filesystem data
1071>0x4	belong		x		(blksz %d,
1072>0x68	beshort		x		inosz %d,
1073>0x64	beshort		^0x2004		v1 dirs)
1074>0x64	beshort		&0x2004		v2 dirs)
1075
1076############################################################################
1077# Minix-ST kernel floppy
10780x800	belong		0x46fc2700	Atari-ST Minix kernel image
1079>19	string		\240\5\371\5\0\011\0\2\0	\b, 720k floppy
1080>19	string		\320\2\370\5\0\011\0\1\0	\b, 360k floppy
1081
1082############################################################################
1083# Hmmm, is this a better way of detecting _standard_ floppy images ?
108419	string		\320\2\360\3\0\011\0\1\0	DOS floppy 360k
1085>0x1FE	leshort		0xAA55		\b, x86 hard disk boot sector
108619	string		\240\5\371\3\0\011\0\2\0	DOS floppy 720k
1087>0x1FE	leshort		0xAA55		\b, x86 hard disk boot sector
108819	string		\100\013\360\011\0\022\0\2\0	DOS floppy 1440k
1089>0x1FE	leshort		0xAA55		\b, x86 hard disk boot sector
1090
109119	string		\240\5\371\5\0\011\0\2\0	DOS floppy 720k, IBM
1092>0x1FE	leshort		0xAA55		\b, x86 hard disk boot sector
109319	string		\100\013\371\5\0\011\0\2\0	DOS floppy 1440k, mkdosfs
1094>0x1FE	leshort		0xAA55		\b, x86 hard disk boot sector
1095
109619	string		\320\2\370\5\0\011\0\1\0	Atari-ST floppy 360k
109719	string		\240\5\371\5\0\011\0\2\0	Atari-ST floppy 720k
1098
1099#  Valid media descriptor bytes for MS-DOS:
1100#
1101#     Byte   Capacity   Media Size and Type
1102#     -------------------------------------------------
1103#
1104#     F0     2.88 MB    3.5-inch, 2-sided, 36-sector
1105#     F0     1.44 MB    3.5-inch, 2-sided, 18-sector
1106#     F9     720K       3.5-inch, 2-sided, 9-sector
1107#     F9     1.2 MB     5.25-inch, 2-sided, 15-sector
1108#     FD     360K       5.25-inch, 2-sided, 9-sector
1109#     FF     320K       5.25-inch, 2-sided, 8-sector
1110#     FC     180K       5.25-inch, 1-sided, 9-sector
1111#     FE     160K       5.25-inch, 1-sided, 8-sector
1112#     FE     250K       8-inch, 1-sided, single-density
1113#     FD     500K       8-inch, 2-sided, single-density
1114#     FE     1.2 MB     8-inch, 2-sided, double-density
1115#     F8     -----      Fixed disk 
1116#
1117#     FC     xxxK       Apricot 70x1x9 boot disk.
1118#
1119# Originally a bitmap:
1120#  xxxxxxx0	Not two sided
1121#  xxxxxxx1	Double sided
1122#  xxxxxx0x	Not 8 SPT
1123#  xxxxxx1x	8 SPT
1124#  xxxxx0xx	Not Removable drive
1125#  xxxxx1xx	Removable drive
1126#  11111xxx	Must be one.
1127#
1128# But now it's rather random:
1129#  111111xx	Low density disk
1130#        00	SS, Not 8 SPT
1131#        01	DS, Not 8 SPT
1132#        10	SS, 8 SPT
1133#        11	DS, 8 SPT
1134#
1135#  11111001	Double density 3� floppy disk, high density 5�
1136#  11110000	High density 3� floppy disk
1137#  11111000	Hard disk any format
1138#
1139
1140# CDROM Filesystems
1141# Modified for UDF by gerardo.cacciari@gmail.com
114232769	string    CD001
1143!:mime	application/x-iso9660-image
1144>38913	string   !NSR0      ISO 9660 CD-ROM filesystem data
1145>38913	string    NSR0      UDF filesystem data
1146>>38917	string    1         (version 1.0)
1147>>38917	string    2         (version 1.5)
1148>>38917	string    3         (version 2.0)
1149>>38917	byte     >0x33      (unknown version, ID 0x%X)
1150>>38917	byte     <0x31      (unknown version, ID 0x%X)
1151# "application id" which appears to be used as a volume label
1152>32808	string    >\0       '%s'
1153>34816	string    \000CD001\001EL\ TORITO\ SPECIFICATION    (bootable)
115437633	string    CD001     ISO 9660 CD-ROM filesystem data (raw 2352 byte sectors)
1155!:mime	application/x-iso9660-image
115632776	string    CDROM     High Sierra CD-ROM filesystem data
1157
1158# cramfs filesystem - russell@coker.com.au
11590       lelong    0x28cd3d45      Linux Compressed ROM File System data, little endian
1160>4      lelong  x size %lu
1161>8      lelong  &1 version #2
1162>8      lelong  &2 sorted_dirs
1163>8      lelong  &4 hole_support
1164>32     lelong  x CRC 0x%x,
1165>36     lelong  x edition %lu,
1166>40     lelong  x %lu blocks,
1167>44     lelong  x %lu files
1168
11690       belong    0x28cd3d45      Linux Compressed ROM File System data, big endian
1170>4      belong  x size %lu
1171>8      belong  &1 version #2
1172>8      belong  &2 sorted_dirs
1173>8      belong  &4 hole_support
1174>32     belong  x CRC 0x%x,
1175>36     belong  x edition %lu,
1176>40     belong  x %lu blocks,
1177>44     belong  x %lu files
1178
1179# reiserfs - russell@coker.com.au
11800x10034		string	ReIsErFs	ReiserFS V3.5
11810x10034		string	ReIsEr2Fs	ReiserFS V3.6
1182>0x1002c 	leshort	x		block size %d
1183>0x10032	leshort	&2		(mounted or unclean)
1184>0x10000	lelong	x		num blocks %d
1185>0x10040	lelong	1		tea hash
1186>0x10040	lelong	2		yura hash
1187>0x10040	lelong	3		r5 hash
1188
1189# JFFS - russell@coker.com.au
11900	lelong	0x34383931	Linux Journalled Flash File system, little endian
11910	belong	0x34383931	Linux Journalled Flash File system, big endian
1192
1193# EST flat binary format (which isn't, but anyway)
1194# From: Mark Brown <broonie@sirena.org.uk>
11950	string	ESTFBINR	EST flat binary
1196
1197# Aculab VoIP firmware
1198# From: Mark Brown <broonie@sirena.org.uk>
11990	string	VoIP\ Startup\ and	Aculab VoIP firmware
1200>35	string	x	format %s
1201
1202# u-boot/PPCBoot image file
1203# From: Mark Brown <broonie@sirena.org.uk>
12040	belong	0x27051956	u-boot/PPCBoot image
1205>4	string  PPCBoot
1206>>12	string  x		version %s
1207
1208# JFFS2 file system
12090	leshort	0x1984		Linux old jffs2 filesystem data little endian
12100	leshort	0x1985		Linux jffs2 filesystem data little endian
1211
1212# Squashfs
12130	string	sqsh	Squashfs filesystem, big endian,
1214>28	beshort	x	version %d.
1215>30	beshort x	\b%d,
1216>28	beshort <3
1217>>8	belong	x	%d bytes,
1218>28	beshort >2
1219>>63	bequad x	%lld bytes,
1220#>>67	belong	x	%d bytes,
1221>4	belong	x	%d inodes,
1222>28	beshort <2
1223>>32	beshort	x	blocksize: %d bytes,
1224>28	beshort >1
1225>>51	belong	x	blocksize: %d bytes,
1226>39	bedate	x	created: %s
12270	string	hsqs	Squashfs filesystem, little endian,
1228>28	leshort	x	version %d.
1229>30	leshort	x	\b%d,
1230>28	leshort <3
1231>>8	lelong	x	%d bytes,
1232>28	leshort >2
1233>>63	lequad x	%lld bytes,
1234#>>63	lelong	x	%d bytes,
1235>4	lelong	x	%d inodes,
1236>28	leshort <2
1237>>32	leshort	x	blocksize: %d bytes,
1238>28	leshort >1
1239>>51	lelong	x	blocksize: %d bytes,
1240>39	ledate	x	created: %s
1241
12420	string		td\000		floppy image data (TeleDisk)
1243
1244# AFS Dump Magic
1245# From: Ty Sarna <tsarna@sarna.org> 
12460       string                  \x01\xb3\xa1\x13\x22    AFS Dump
1247>&0     belong                  x                       (v%d)
1248>>&0    byte                    0x76
1249>>>&0   belong                  x                       Vol %d,
1250>>>>&0  byte                    0x6e
1251>>>>>&0 string                  x                       %s
1252>>>>>>&1        byte            0x74
1253>>>>>>>&0       beshort         2
1254>>>>>>>>&4      bedate          x                       on: %s
1255>>>>>>>>&0      bedate          =0                      full dump
1256>>>>>>>>&0      bedate          !0                      incremental since: %s
1257
1258#----------------------------------------------------------
1259# VMS backup savesets - gerardo.cacciari@gmail.com
1260#
12614            string  \x01\x00\x01\x00\x01\x00
1262>(0.s+16)    string  \x01\x01
1263>>&(&0.b+8)  byte    0x42       OpenVMS backup saveset data
1264>>>40        lelong  x          (block size %d,
1265>>>49        string  >\0        original name '%s',
1266>>>2         short   1024       VAX generated)
1267>>>2         short   2048       AXP generated)
1268>>>2         short   4096       I64 generated)
1269
1270# Compaq/HP RILOE floppy image
1271# From: Dirk Jagdmann <doj@cubic.org>
12720	string	CPQRFBLO	Compaq/HP RILOE floppy image
1273
1274#------------------------------------------------------------------------------
1275# Files-11 On-Disk Structure (OpenVMS file system) - gerardo.cacciari@gmail.com
1276# These bits come from LBN 1 (home block) of ODS-2 and ODS-5 volumes, which is
1277# mapped to VBN 2 of [000000]INDEXF.SYS;1
1278#
12791008    string          DECFILE11B      Files-11 On-Disk Structure
1280>525    byte            x               Level %d
1281>525    byte            x               (ODS-%d OpenVMS file system),
1282>984    string          x               volume label is '%-12.12s'
1283
1284# From: Thomas Klausner <wiz@NetBSD.org>
1285# http://filext.com/file-extension/DAA
1286# describes the daa file format. The magic would be:
12870	string		DAA\x0\x0\x0\x0\x0	PowerISO Direct-Access-Archive
1288
1289# From Albert Cahalan <acahalan@gmail.com>
1290# really le32 operation,destination,payloadsize (but quite predictable)
1291# 01 00 00 00 00 00 00 c0 00 02 00 00
12920	string		\1\0\0\0\0\0\0\300\0\2\0\0	Marvell Libertas firmware
1293