Merge from vendor branch FILE:
[dragonfly.git] / contrib / file-4 / magic / Magdir / filesystems
1
2 #------------------------------------------------------------------------------
3 # filesystems:  file(1) magic for different filesystems
4 #
5 0       string  \366\366\366\366        PC formatted floppy with no filesystem
6 # Sun disk labels
7 # From /usr/include/sun/dklabel.h:
8 0774    beshort         0xdabe          Sun disk label
9 >0      string          x               '%s
10 >>31    string          >\0             \b%s
11 >>>63   string          >\0             \b%s
12 >>>>95  string          >\0             \b%s
13 >0      string          x               \b'
14 >0734   short           >0              %d rpm,
15 >0736   short           >0              %d phys cys,
16 >0740   short           >0              %d alts/cyl,
17 >0746   short           >0              %d interleave,
18 >0750   short           >0              %d data cyls,
19 >0752   short           >0              %d alt cyls,
20 >0754   short           >0              %d heads/partition,
21 >0756   short           >0              %d sectors/track,
22 >0764   long            >0              start cyl %ld,
23 >0770   long            x               %ld blocks
24 # Is there a boot block written 1 sector in?
25 >512    belong&077777777        0600407 \b, boot block present
26 # Joerg Jenderek: Smart Boot Manager backup file is 41 byte header + first sectors of disc
27 # (http://btmgr.sourceforge.net/docs/user-guide-3.html)
28 0               string  SBMBAKUP_       Smart Boot Manager backup file
29 >9              string  x               \b, version %-5.5s
30 >>14            string  =_              
31 >>>15           string  x               %-.1s
32 >>>>16          string  =_              \b.
33 >>>>>17         string  x               \b%-.1s
34 >>>>>>18        string  =_              \b.
35 >>>>>>>19       string  x               \b%-.1s
36 >>>22           ubyte   0               
37 >>>>21          ubyte   x               \b, from drive 0x%x
38 >>>22           ubyte   >0              
39 >>>>21          string  x               \b, from drive %s
40
41 # Joerg Jenderek
42 # DOS Emulator image is 128 byte, null right padded header + harddisc image
43 0       string  DOSEMU\0                        
44 >0x27E  leshort 0xAA55                  
45 #offset is 128
46 >>19    ubyte   128                     
47 >>>(19.b-1)     ubyte   0x0     DOS Emulator image
48 >>>>7   ulelong >0              \b, %u heads
49 >>>>11  ulelong >0              \b, %d sectors/track
50 >>>>15  ulelong >0              \b, %d cylinders
51
52 0x1FE   leshort 0xAA55                  x86 boot sector
53 >2      string  OSBS                    \b, OS/BS MBR
54 # J\xf6rg Jenderek <joerg dot jenderek at web dot de>
55 >0x8C   string  Invalid\ partition\ table       \b, MS-DOS MBR
56 # dr-dos with some upper-, lowercase variants
57 >0x9D   string  Invalid\ partition\ table$      
58 >>181   string  No\ Operating\ System$          
59 >>>201  string  Operating\ System\ load\ error$ \b, DR-DOS MBR, Version 7.01 to 7.03
60 >0x9D   string  Invalid\ partition\ table$      
61 >>181   string  No\ operating\ system$          
62 >>>201  string  Operating\ system\ load\ error$ \b, DR-DOS MBR, Version 7.01 to 7.03
63 >342    string  Invalid\ partition\ table$      
64 >>366   string  No\ operating\ system$          
65 >>>386  string  Operating\ system\ load\ error$ \b, DR-DOS MBR, version 7.01 to 7.03
66 >295    string  NEWLDR\0                                
67 >>302   string  Bad\ PT\ $                              
68 >>>310  string  No\ OS\ $                               
69 >>>>317 string  OS\ load\ err$                          
70 >>>>>329        string  Moved\ or\ missing\ IBMBIO.LDR\n\r      
71 >>>>>>358       string  Press\ any\ key\ to\ continue.\n\r$     
72 >>>>>>>387      string  Copyright\ (c)\ 1984,1998       
73 >>>>>>>>411     string  Caldera\ Inc.\0         \b, DR-DOS MBR (IBMBIO.LDR)
74 >0x10F  string  Ung\201ltige\ Partitionstabelle \b, MS-DOS MBR, german version 4.10.1998, 4.10.2222
75 >>0x1B8 ubelong >0                              \b, Serial 0x%-.4x
76 >0x8B   string  Ung\201ltige\ Partitionstabelle \b, MS-DOS MBR, german version 5.00 to 4.00.950
77 >271    string  Invalid\ partition\ table\0             
78 >>295   string  Error\ loading\ operating\ system\0     
79 >>>326  string  Missing\ operating\ system\0            \b, mbr
80 #
81 >139    string  Invalid\ partition\ table\0             
82 >>163   string  Error\ loading\ operating\ system\0     
83 >>>194  string  Missing\ operating\ system\0            \b, Microsoft Windows XP mbr
84 # http://www.heise.de/ct/05/09/006/ page 184
85 #HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices\DosDevices\?:=Serial4Bytes+8Bytes
86 >>>>0x1B8       ulelong >0                              \b,Serial 0x%-.4x
87 >300    string  Invalid\ partition\ table\0     
88 >>324   string  Error\ loading\ operating\ system\0
89 >>>355  string  Missing\ operating\ system\0            \b, Microsoft Windows XP MBR
90 #??>>>389       string  Invalid\ system\ disk           
91 >>>>0x1B8       ulelong >0                              \b, Serial 0x%-.4x
92 >300    string  Ung\201ltige\ Partitionstabelle
93 #split string to avoid error: String too long
94 >>328   string  Fehler\ beim\ Laden\    
95 >>>346  string  des\ Betriebssystems    
96 >>>>366 string  Betriebssystem\ nicht\ vorhanden        \b, Microsoft Windows XP MBR (german)
97 >>>>>0x1B8      ulelong >0                              \b, Serial 0x%-.4x
98 >0x145  string  Default:\ F                             \b, FREE-DOS MBR
99 >64     string  no\ active\ partition\ found    
100 >>96    string  read\ error\ while\ reading\ drive      \b, FREE-DOS Beta 0.9 MBR
101 >271    string  Operating\ system\ loading              
102 >>296   string  error\r                                 \b, SYSLINUX MBR (2.10)
103 # bootloader, bootmanager
104 >43     string  SMART\ BTMGRFAT12\ \ \          
105 >>430   string  SBMK\ Bad!\r                    
106 >>>3    string  SBM                             \b, Smart Boot Manager
107 >>>>6   string  >\0                             \b, version %s
108 >382    string  XOSLLOADXCF                     \b, eXtended Operating System Loader
109 >6      string  LILO                            \b, LInux i386 boot LOader
110 >>120   string  LILO                            \b, version 22.3.4 SuSe
111 >>172   string  LILO                            \b, version 22.5.8 Debian
112 >402    string  Geom\0Hard\ Disk\0Read\0\ Error\0
113 >>394   string  stage1                          \b, GRand Unified Bootloader (0.5.95)
114 >343    string  Geom\0Read\0\ Error\0           
115 >>321   string  Loading\ stage1.5               \b, Grand Unified Bootloader
116 >380    string  Geom\0Hard\ Disk\0Read\0\ Error\0
117 >>374   string  GRUB\ \0                        \b, GRand Unified Bootloader
118 >382    string  Geom\0Hard\ Disk\0Read\0\ Error\0
119 >>376   string  GRUB\ \0                        \b, GRand Unified Bootloader (0.93)
120 >383    string  Geom\0Hard\ Disk\0Read\0\ Error\0
121 >>377   string  GRUB\ \0                        \b, GRand Unified Bootloader (0.94)
122 >385    string  Geom\0Hard\ Disk\0Read\0\ Error\0
123 >>379   string  GRUB\ \0                        \b, GRand Unified Bootloader (0.95)
124 >480    string  Boot\ failed\r                  
125 >>495   string  LDLINUX\ SYS                    \b, SYSLINUX bootloader (2.06)
126 >395    string  chksum\0\ ERROR!\0              \b, Gujin bootloader
127 # mbr partion table entries, if not fat boot secor, activ flag 0 or 0x80 and type > 0
128 >3                      string          !MS     
129 >>3                     string          !SYSLINUX
130 >>>82                   string          !FAT32  
131 >>>>446                 ubyte           <0x81   
132 >>>>>446                ubyte&0x7F      0       
133 >>>>>>450               ubyte           >0      \b; partition 1: ID=0x%x
134 >>>>>>>446              ubyte           0x80    \b, active
135 >>>>>>>447              ubyte           x       \b, starthead %u
136 #>>>>>>>448             ubyte           x       \b, start C_S: 0x%x
137 #>>>>>>448              ubeshort&1023   x       \b, startcylinder? %d
138 >>>>>>>454              ulelong         x       \b, startsector %u
139 >>>>>>>458              ulelong         x       \b, %u sectors
140 #
141 >>>>462                 ubyte           <0x81   
142 >>>>>462                ubyte&0x7F      0               
143 >>>>>>466               ubyte           >0      \b; partition 2: ID=0x%x
144 >>>>>>>462              ubyte           0x80    \b, active
145 >>>>>>>463              ubyte           x       \b, starthead %u
146 #>>>>>>>464             ubyte           x       \b, start C_S: 0x%x
147 #>>>>>>>464             ubeshort&1023   x       \b, startcylinder? %d
148 >>>>>>>470              ulelong         x       \b, startsector %u
149 >>>>>>>474              ulelong         x       \b, %u sectors
150 #
151 >>>>478                 ubyte           <0x81           
152 >>>>>478                ubyte&0x7F      0               
153 >>>>>>482               ubyte           >0      \b; partition 3: ID=0x%x
154 >>>>>>>478              ubyte           0x80    \b, active
155 >>>>>>>479              ubyte           x       \b, starthead %u
156 #>>>>>>>480             ubyte           x       \b, start C_S: 0x%x
157 #>>>>>>>481             ubyte           x       \b, start C2S: 0x%x
158 #>>>>>>>480             ubeshort&1023   x       \b, startcylinder? %d
159 >>>>>>>486              ulelong         x       \b, startsector %u
160 >>>>>>>490              ulelong         x       \b, %u sectors
161 #
162 >>>>494                 ubyte           <0x81   
163 >>>>>494                ubyte&0x7F      0               
164 >>>>>>498               ubyte           >0      \b; partition 4: ID=0x%x
165 >>>>>>>494              ubyte           0x80    \b, active
166 >>>>>>>495              ubyte           x       \b, starthead %u
167 #>>>>>>>496             ubyte           x       \b, start C_S: 0x%x
168 #>>>>>>>496             ubeshort&1023   x       \b, startcylinder? %d
169 >>>>>>>502              ulelong         x       \b, startsector %u
170 >>>>>>>506              ulelong         x       \b, %u sectors
171 # mbr partion table entries end
172 >185    string  FDBOOT\ Version\                        
173 >>204   string  \rNo\ Systemdisk.\                      
174 >>>220  string  Booting\ from\ harddisk.\n\r            
175 >>>245  string  Cannot\ load\ from\ harddisk.\n\r       
176 >>>>273 string  Insert\ Systemdisk\                     
177 >>>>>291 string and\ press\ any\ key.\n\r               \b, FDBOOT harddisk Bootloader
178 >>>>>>200 string        >\0                             \b, version %-3s
179 >242    string  Bootsector\ from\ C.H.\ Hochst\204      
180 >>278   string  No\ Systemdisk.\                        
181 >>>293  string  Booting\ from\ harddisk.\n\r            
182 >>>441  string  Cannot\ load\ from\ harddisk.\n\r       
183 >>>>469 string  Insert\ Systemdisk\                     
184 >>>>>487 string and\ press\ any\ key.\n\r               \b, WinImage harddisk Bootloader
185 >>>>>>209 string        >\0                             \b, version %-4.4s
186 >(1.b+2)        ubyte           0xe                     
187 >>(1.b+3)       ubyte           0x1f                    
188 >>>(1.b+4)      ubyte           0xbe                    
189 >>>>(1.b+5)     ubyte           0x77                    
190 >>>>(1.b+6)     ubyte           0x7c                    
191 >>>>>(1.b+7)    ubyte           0xac                    
192 >>>>>>(1.b+8)   ubyte           0x22                    
193 >>>>>>>(1.b+9)  ubyte           0xc0                    
194 >>>>>>>>(1.b+10)        ubyte   0x74                    
195 >>>>>>>>>(1.b+11)       ubyte   0xb                     
196 >>>>>>>>>>(1.b+12)      ubyte   0x56                    
197 >>>>>>>>>>(1.b+13)      ubyte   0xb4                    \b, mkdosfs boot message display
198 >103    string  This\ is\ not\ a\ bootable\ disk.\      
199 >>132   string  Please\ insert\ a\ bootable\            
200 >>>157  string  floppy\ and\r\n                         
201 >>>>169 string  press\ any\ key\ to\ try\ again...\r    \b, FREE-DOS message display
202 #
203 >66     string  Solaris\ Boot\ Sector                   
204 >>99    string  Incomplete\ MDBoot\ load.               
205 >>>89   string  Version                                 \b, Sun Solaris Bootloader
206 >>>>97  byte    x                                       version %c
207 #
208 >408    string  OS/2\ !!\ SYS01475\r\0                  
209 >>429   string  OS/2\ !!\ SYS02025\r\0                  
210 >>>450  string  OS/2\ !!\ SYS02027\r\0                  
211 >>>469  string  OS2BOOT\ \ \ \                          \b, IBM OS/2 Warp bootloader
212 #
213 >409    string  OS/2\ !!\ SYS01475\r\0                  
214 >>430   string  OS/2\ !!\ SYS02025\r\0                  
215 >>>451  string  OS/2\ !!\ SYS02027\r\0                  
216 >>>470  string  OS2BOOT\ \ \ \                          \b, IBM OS/2 Warp Bootloader
217 >112            string  This\ disk\ is\ not\ bootable\r                 
218 >>142           string  If\ you\ wish\ to\ make\ it\ bootable           
219 >>>176          string  run\ the\ DOS\ program\ SYS\                    
220 >>>200          string  after\ the\r                                    
221 >>>>216         string  system\ has\ been\ loaded\r\n                   
222 >>>>>242        string  Please\ insert\ a\ DOS\ diskette\               
223 >>>>>271        string  into\r\n\ the\ drive\ and\                      
224 >>>>>>292       string  strike\ any\ key...\0           \b, IBM OS/2 Warp message display
225 # XP
226 >430    string  NTLDR\ is\ missing\xFF\r\n              
227 >>449   string  Disk\ error\xFF\r\n                     
228 >>>462  string  Press\ any\ key\ to\ restart\r          \b, Microsoft Windows XP Bootloader
229 # DOS names like NTLDR,CMLDR,$LDR$ are 8 right space padded bytes+3 bytes
230 >>>>417         ubyte&0xDF      >0                      
231 >>>>>417        string          x                       %-.5s
232 >>>>>>422       ubyte&0xDF      >0                      
233 >>>>>>>422      string          x                       \b%-.3s
234 >>>>>425        ubyte&0xDF      >0                      
235 >>>>>>425       string          >\                      \b.%-.3s
236 #
237 >>>>371         ubyte           >0x20                   
238 >>>>>368        ubyte&0xDF      >0                      
239 >>>>>>368       string          x                       %-.5s
240 >>>>>>>373      ubyte&0xDF      >0                      
241 >>>>>>>>373     string          x                       \b%-.3s
242 >>>>>>376       ubyte&0xDF      >0                      
243 >>>>>>>376      string          x                       \b.%-.3s
244 #
245 >430    string  NTLDR\ nicht\ gefunden\xFF\r\n          
246 >>453   string  Datentr\204gerfehler\xFF\r\n            
247 >>>473  string  Neustart\ mit\ beliebiger\ Taste\r      \b, Microsoft Windows XP Bootloader (german)
248 >>>>417         ubyte&0xDF      >0                      
249 >>>>>417        string          x                       %-.5s
250 >>>>>>422       ubyte&0xDF      >0                      
251 >>>>>>>422      string          x                       \b%-.3s
252 >>>>>425        ubyte&0xDF      >0                      
253 >>>>>>425       string          >\                      \b.%-.3s
254 #
255 >>>>368         ubyte&0xDF      >0                      
256 >>>>>368        string          x                       %-.5s
257 >>>>>>373       ubyte&0xDF      >0                      
258 >>>>>>>373      string          x                       \b%-.3s
259 >>>>>376        ubyte&0xDF      >0                      
260 >>>>>>376       string          x                       \b.%-.3s
261 #
262 >430    string  NTLDR\ fehlt\xFF\r\n                    
263 >>444   string  Datentr\204gerfehler\xFF\r\n            
264 >>>464  string  Neustart\ mit\ beliebiger\ Taste\r      \b, Microsoft Windows XP Bootloader (2.german)
265 >>>>417         ubyte&0xDF      >0                      
266 >>>>>417        string          x                       %-.5s
267 >>>>>>422       ubyte&0xDF      >0                      
268 >>>>>>>422      string          x                       \b%-.3s
269 >>>>>425        ubyte&0xDF      >0                      
270 >>>>>>425       string          >\                      \b.%-.3s
271 # variant
272 >>>>371         ubyte           >0x20                   
273 >>>>>368        ubyte&0xDF      >0                      
274 >>>>>>368       string          x                       %-.5s
275 >>>>>>>373      ubyte&0xDF      >0                      
276 >>>>>>>>373     string          x                       \b%-.3s
277 >>>>>>376       ubyte&0xDF      >0                      
278 >>>>>>>376      string          x                       \b.%-.3s
279 #
280 >430    string  NTLDR\ fehlt\xFF\r\n                    
281 >>444   string  Medienfehler\xFF\r\n                    
282 >>>459  string  Neustart:\ Taste\ dr\201cken\r          \b, Microsoft Windows XP Bootloader (3.german)
283 >>>>371         ubyte           >0x20                   
284 >>>>>368        ubyte&0xDF      >0                      
285 >>>>>>368       string          x                       %-.5s
286 >>>>>>>373      ubyte&0xDF      >0                      
287 >>>>>>>>373     string          x                       \b%-.3s
288 >>>>>>376       ubyte&0xDF      >0                      
289 >>>>>>>376      string          x                       \b.%-.3s
290 # variant
291 >>>>417         ubyte&0xDF      >0                      
292 >>>>>417        string          x                       %-.5s
293 >>>>>>422       ubyte&0xDF      >0                      
294 >>>>>>>422      string          x                       \b%-.3s
295 >>>>>425        ubyte&0xDF      >0                      
296 >>>>>>425       string          >\                      \b.%-.3s
297 #
298 >430    string  Datentr\204ger\ entfernen\xFF\r\n       
299 >>454   string  Medienfehler\xFF\r\n                    
300 >>>469  string  Neustart:\ Taste\ dr\201cken\r          \b, Microsoft Windows XP Bootloader (4.german)
301 >>>>368         ubyte&0xDF      >0                      
302 >>>>>368        string          x                       %-.5s
303 >>>>>>373       ubyte&0xDF      >0                      
304 >>>>>>>373      string          x                       \b%-.3s
305 >>>>>376        ubyte&0xDF      >0                      
306 >>>>>>376       string          x                       \b.%-.3s
307 #>3     string  NTFS\ \ \ \                             
308 >389    string  Fehler\ beim\ Lesen\ 
309 >>407   string  des\ Datentr\204gers
310 >>>426  string  NTLDR\ fehlt                            
311 >>>>440 string  NTLDR\ ist\ komprimiert
312 >>>>>464 string Neustart\ mit\ Strg+Alt+Entf\r          \b, Microsoft Windows XP Bootloader NTFS (german)
313 #>3     string  NTFS\ \ \ \                             
314 >313    string  A\ disk\ read\ error\ occurred.\r
315 >>345   string  A\ kernel\ file\ is\ missing\   
316 >>>370  string  from\ the\ disk.\r              
317 >>>>484 string  NTLDR\ is\ compressed           
318 >>>>>429 string Insert\ a\ system\ diskette\    
319 >>>>>>454 string and\ restart\r\nthe\ system.\r         \b, Microsoft Windows XP Bootloader NTFS
320 # DOS loader variants different languages,offsets
321 >472    ubyte&0xDF      >0
322 >>389   string  Invalid\ system\ disk\xFF\r\n           
323 >>>411  string  Disk\ I/O\ error                        
324 >>>>428 string  Replace\ the\ disk,\ and\               
325 >>>>>455 string press\ any\ key                         \b, Microsoft Windows 98 Bootloader
326 #IO.SYS
327 >>>>>>472       ubyte&0xDF      >0                      
328 >>>>>>>472      string          x                       \b %-.2s
329 >>>>>>>>474     ubyte&0xDF      >0                      
330 >>>>>>>>>474    string          x                       \b%-.5s
331 >>>>>>>>>>479   ubyte&0xDF      >0                      
332 >>>>>>>>>>>479 string           x                       \b%-.1s
333 >>>>>>>480      ubyte&0xDF      >0                      
334 >>>>>>>>480     string          x                       \b.%-.3s
335 #MSDOS.SYS
336 >>>>>>>483      ubyte&0xDF      >0                      \b+
337 >>>>>>>>483     string          x                       \b%-.5s
338 >>>>>>>>>488    ubyte&0xDF      >0                      
339 >>>>>>>>>>488   string          x                       \b%-.3s
340 >>>>>>>>491     ubyte&0xDF      >0                      
341 >>>>>>>>>491    string          x                       \b.%-.3s
342 #
343 >>390   string  Invalid\ system\ disk\xFF\r\n           
344 >>>412  string  Disk\ I/O\ error\xFF\r\n                
345 >>>>429 string  Replace\ the\ disk,\ and\               
346 >>>>>451 string then\ press\ any\ key\r                 \b, Microsoft Windows 98 Bootloader
347 >>388   string  Ungueltiges\ System\ \xFF\r\n           
348 >>>410  string  E/A-Fehler\ \ \ \ \xFF\r\n              
349 >>>>427 string  Datentraeger\ wechseln\ und\            
350 >>>>>453 string Taste\ druecken\r                       \b, Microsoft Windows 95/98/ME Bootloader (german)
351 #WINBOOT.SYS only not spaces (0xDF)
352 >>>>>>497       ubyte&0xDF      >0                      
353 >>>>>>>497      string          x                       %-.5s
354 >>>>>>>>502     ubyte&0xDF      >0                      
355 >>>>>>>>>502    string          x                       \b%-.1s
356 >>>>>>>>>>503   ubyte&0xDF      >0                      
357 >>>>>>>>>>>503  string          x                       \b%-.1s
358 >>>>>>>>>>>>504 ubyte&0xDF      >0                      
359 >>>>>>>>>>>>>504 string         x                       \b%-.1s
360 >>>>>>505       ubyte&0xDF      >0                      
361 >>>>>>>505      string          x                       \b.%-.3s
362 #IO.SYS
363 >>>>>>472       ubyte&0xDF      >0                      or
364 >>>>>>>472      string          x                       \b %-.2s
365 >>>>>>>>474     ubyte&0xDF      >0                      
366 >>>>>>>>>474    string          x                       \b%-.5s
367 >>>>>>>>>>479   ubyte&0xDF      >0                      
368 >>>>>>>>>>>479 string           x                       \b%-.1s
369 >>>>>>>480      ubyte&0xDF      >0                      
370 >>>>>>>>480     string          x                       \b.%-.3s
371 #MSDOS.SYS
372 >>>>>>>483      ubyte&0xDF      >0                      \b+
373 >>>>>>>>483     string          x                       \b%-.5s
374 >>>>>>>>>488    ubyte&0xDF      >0                      
375 >>>>>>>>>>488   string          x                       \b%-.3s
376 >>>>>>>>491     ubyte&0xDF      >0                      
377 >>>>>>>>>491    string          x                       \b.%-.3s
378 #
379 >>390   string  Ungueltiges\ System\ \xFF\r\n           
380 >>>412  string  E/A-Fehler\ \ \ \ \xFF\r\n              
381 >>>>429 string  Datentraeger\ wechseln\ und\            
382 >>>>>455 string Taste\ druecken\r                       \b, Microsoft Windows 95/98/ME Bootloader (German)
383 #WINBOOT.SYS only not spaces (0xDF)
384 >>>>>>497       ubyte&0xDF      >0                      
385 >>>>>>>497      string          x                       %-.7s
386 >>>>>>>>504     ubyte&0xDF      >0                      
387 >>>>>>>>>504    string          x                       \b%-.1s
388 >>>>>>505       ubyte&0xDF      >0                      
389 >>>>>>>505      string          x                       \b.%-.3s
390 #IO.SYS
391 >>>>>>472       ubyte&0xDF      >0                      or
392 >>>>>>>472      string          x                       \b %-.2s
393 >>>>>>>>474     ubyte&0xDF      >0                      
394 >>>>>>>>>474    string          x                       \b%-.6s
395 >>>>>>>480      ubyte&0xDF      >0                      
396 >>>>>>>>480     string          x                       \b.%-.3s
397 #MSDOS.SYS
398 >>>>>>>483      ubyte&0xDF      >0                      \b+
399 >>>>>>>>483     string          x                       \b%-.5s
400 >>>>>>>>>488    ubyte&0xDF      >0                      
401 >>>>>>>>>>488   string          x                       \b%-.3s
402 >>>>>>>>491     ubyte&0xDF      >0                      
403 >>>>>>>>>491    string          x                       \b.%-.3s
404 #
405 >>389   string  Ungueltiges\ System\ \xFF\r\n           
406 >>>411  string  E/A-Fehler\ \ \ \ \xFF\r\n              
407 >>>>428 string  Datentraeger\ wechseln\ und\            
408 >>>>>454 string Taste\ druecken\r                       \b, Microsoft Windows 95/98/ME Bootloader (GERMAN)
409 # DOS names like IO.SYS,WINBOOT.SYS,MSDOS.SYS,WINBOOT.INI are 8 right space padded bytes+3 bytes
410 >>>>>>472       string          x                       %-.2s
411 >>>>>>>474      ubyte&0xDF      >0                      
412 >>>>>>>>474     string          x                       \b%-.5s
413 >>>>>>>>479     ubyte&0xDF      >0                      
414 >>>>>>>>>479    string          x                       \b%-.1s
415 >>>>>>480       ubyte&0xDF      >0                      
416 >>>>>>>480      string          x                       \b.%-.3s
417 >>>>>>483       ubyte&0xDF      >0                      \b+
418 >>>>>>>483      string          x                       \b%-.5s
419 >>>>>>>488      ubyte&0xDF      >0                      
420 >>>>>>>>488     string          x                       \b%-.2s
421 >>>>>>>>490     ubyte&0xDF      >0                      
422 >>>>>>>>>490    string          x                       \b%-.1s
423 >>>>>>>491      ubyte&0xDF      >0                      
424 >>>>>>>>491     string          x                       \b.%-.3s
425 >479    ubyte&0xDF      >0
426 >>416   string  Kein\ System\ oder\                     
427 >>>433  string  Laufwerksfehler                         
428 >>>>450 string  Wechseln\ und\ Taste\ dr\201cken        \b, Microsoft DOS Bootloader (german)
429 #IO.SYS
430 >>>>>479        string          x                       \b %-.2s
431 >>>>>>481       ubyte&0xDF      >0                      
432 >>>>>>>481      string          x                       \b%-.6s
433 >>>>>487        ubyte&0xDF      >0                      
434 >>>>>>487       string          x                       \b.%-.3s
435 #MSDOS.SYS
436 >>>>>>490       ubyte&0xDF      >0                      \b+
437 >>>>>>>490      string          x                       \b%-.5s
438 >>>>>>>>495     ubyte&0xDF      >0                      
439 >>>>>>>>>495    string          x                       \b%-.3s
440 >>>>>>>498      ubyte&0xDF      >0                      
441 >>>>>>>>498     string          x                       \b.%-.3s
442 #
443 >486    ubyte&0xDF      >0
444 >>416   string  Non-System\ disk\ or\                   
445 >>>435  string  disk\ error\r                           
446 >>>>447 string  Replace\ and\ press\ any\ key\          
447 >>>>>473 string when\ ready\r                           \b, Microsoft DOS Bootloader
448 >480    ubyte&0xDF      >0                      
449 >>393   string  Non-System\ disk\ or\                   
450 >>>412  string  disk\ error\r                           
451 >>>>424 string  Replace\ and\ press\ any\ key\          
452 >>>>>450 string when\ ready\r                           \b, Microsoft DOS bootloader
453 #IO.SYS
454 >>>>>480        string          x                       \b %-.2s
455 >>>>>>482       ubyte&0xDF      >0                      
456 >>>>>>>48       string          x                       \b%-.6s
457 >>>>>488        ubyte&0xDF      >0                      
458 >>>>>>488       string          x                       \b.%-.3s
459 #MSDOS.SYS
460 >>>>>>491       ubyte&0xDF      >0                      \b+
461 >>>>>>>491      string          x                       \b%-.5s
462 >>>>>>>>496     ubyte&0xDF      >0                      
463 >>>>>>>>>496    string          x                       \b%-.3s
464 >>>>>>>499      ubyte&0xDF      >0                      
465 >>>>>>>>499     string          x                       \b.%-.3s
466 #>43    string  \224R-LOADER\ \ SYS                     =label                                  
467 >54     string  SYS
468 >>324   string  VASKK
469 >>>495  string  NEWLDR\0                                \b, DR-DOS Bootloader (LOADER.SYS)
470 #
471 >70     string  IBMBIO\ \ COM                           
472 >>472   string  Cannot\ load\ DOS!\                     
473 >>>489  string  Any\ key\ to\ retry                     \b, DR-DOS Bootloader
474 >>471   string  Cannot\ load\ DOS\                      
475 >>487   string  press\ key\ to\ retry                   \b, Open-DOS Bootloader
476 >444    string  KERNEL\ \ SYS                                   
477 >>314   string  BOOT\ error!                            \b, FREE-DOS Bootloader
478 >499    string  KERNEL\ \ SYS                           
479 >>305   string  BOOT\ err!\0                            \b, Free-DOS Bootloader
480 >449    string  KERNEL\ \ SYS                           
481 >>319   string  BOOT\ error!                            \b, FREE-DOS 0.5 Bootloader
482 >125    string  Loading\ FreeDOS...\r                   
483 >>311   string  BOOT\ error!\r                          \b, FREE-DOS bootloader
484 >>>441          ubyte&0xDF      >0                      
485 >>>>441         string          x                       \b %-.6s
486 >>>>>447        ubyte&0xDF      >0                      
487 >>>>>>447       string          x                       \b%-.1s
488 >>>>>>>448      ubyte&0xDF      >0                      
489 >>>>>>>>448     string          x                       \b%-.1s
490 >>>>449         ubyte&0xDF      >0                      
491 >>>>>449        string          x                       \b.%-.3s
492 >124    string  FreeDOS\0                               
493 >>331   string  \ err\0                                 \b, FREE-DOS BETa 0.9 Bootloader
494 # DOS names like KERNEL.SYS,KERNEL16.SYS,KERNEL32.SYS,METAKERN.SYS are 8 right space padded bytes+3 bytes
495 >>>497          ubyte&0xDF      >0                      
496 >>>>497         string          x                       \b %-.6s
497 >>>>>503        ubyte&0xDF      >0                      
498 >>>>>>503       string          x                       \b%-.1s
499 >>>>>>>504      ubyte&0xDF      >0                      
500 >>>>>>>>504     string          x                       \b%-.1s
501 >>>>505         ubyte&0xDF      >0                      
502 >>>>>505        string          x                       \b.%-.3s
503 >>333   string  \ err\0                                 \b, FREE-DOS BEta 0.9 Bootloader
504 >>>497          ubyte&0xDF      >0                      
505 >>>>497         string          x                       \b %-.6s
506 >>>>>503        ubyte&0xDF      >0                      
507 >>>>>>503       string          x                       \b%-.1s
508 >>>>>>>504      ubyte&0xDF      >0                      
509 >>>>>>>>504     string          x                       \b%-.1s
510 >>>>505         ubyte&0xDF      >0                      
511 >>>>>505        string          x                       \b.%-.3s
512 >>334   string  \ err\0                                 \b, FREE-DOS Beta 0.9 Bootloader
513 >>>497          ubyte&0xDF      >0                      
514 >>>>497         string          x                       \b %-.6s
515 >>>>>503        ubyte&0xDF      >0                      
516 >>>>>>503       string          x                       \b%-.1s
517 >>>>>>>504      ubyte&0xDF      >0                      
518 >>>>>>>>504     string          x                       \b%-.1s
519 >>>>505         ubyte&0xDF      >0                      
520 >>>>>505        string          x                       \b.%-.3s
521 >336    string  Error!\                                 
522 >>343   string  Hit\ a\ key\ to\ reboot.                \b, FREE-DOS Beta 0.9sr1 Bootloader
523 >>>497          ubyte&0xDF      >0                      
524 >>>>497         string          x                       \b %-.6s
525 >>>>>503        ubyte&0xDF      >0                      
526 >>>>>>503       string          x                       \b%-.1s
527 >>>>>>>504      ubyte&0xDF      >0                      
528 >>>>>>>>504     string          x                       \b%-.1s
529 >>>>505         ubyte&0xDF      >0                      
530 >>>>>505        string          x                       \b.%-.3s
531 # loader end
532 # Joerg Jenderek
533 >446    ubyte   0                       
534 >>450   ubyte   >0                      
535 >>>482  ubyte   0                       
536 >>>>498 ubyte   0                       
537 >>>>466 ubyte   0x05                    \b, extended partition table
538 >>>>466 ubyte   0x0F                    \b, extended partition table (LBA)
539 >>>>466 ubyte   0x0                     \b, extended partition table (last)     
540 # JuMP short     bootcodeoffset NOP assembler instructions will usually be EB xx 90
541 # older drives may use E9 xx xx
542 >0              lelong&0x009000EB       0x009000EB 
543 >0              lelong&0x000000E9       0x000000E9 
544 >>1             ubyte                   >37     \b, code offset 0x%x
545 # mtools-3.9.8/msdos.h
546 # usual values are marked with comments to get only informations of strange FAT systems
547 # valid sectorsize are from 32 to 2048
548 >>>11           uleshort        <2049   
549 >>>>11          uleshort        >31     
550 >>>>>3          string          >\0             \b, OEM-ID "%8.8s"
551 >>>>>11         uleshort        >512            \b, Bytes/sector %u
552 #>>>>>11        uleshort        =512            \b, Bytes/sector %u=512 (usual)
553 >>>>>11         uleshort        <512            \b, Bytes/sector %u
554 >>>>>13         ubyte           >1              \b, sectors/cluster %u
555 #>>>>>13        ubyte           =1              \b, sectors/cluster %u (usual on Floppies)
556 >>>>>14         uleshort        >32             \b, reserved sectors %u
557 #>>>>>14        uleshort        =32             \b, reserved sectors %u (usual Fat32)
558 #>>>>>14        uleshort        >1              \b, reserved sectors %u
559 #>>>>>14        uleshort        =1              \b, reserved sectors %u (usual FAT12,FAT16)
560 >>>>>14         uleshort        <1              \b, reserved sectors %u
561 >>>>>16         ubyte           >2              \b, FATs %u
562 #>>>>>16        ubyte           =2              \b, FATs %u (usual)
563 >>>>>16         ubyte           =1              \b, FAT  %u
564 >>>>>16         ubyte           >0
565 >>>>>17         uleshort        >0              \b, root entries %u
566 #>>>>>17        uleshort        =0              \b, root entries %u=0 (usual Fat32)
567 >>>>>19         uleshort        >0              \b, sectors %u (volumes <=32 MB) 
568 #>>>>>19        uleshort        =0              \b, sectors %u=0 (usual Fat32)
569 >>>>>21         ubyte           >0xF0           \b, Media descriptor 0x%x
570 #>>>>>21        ubyte           =0xF0           \b, Media descriptor 0x%x (usual floppy)
571 >>>>>21         ubyte           <0xF0           \b, Media descriptor 0x%x
572 >>>>>22         uleshort        >0              \b, sectors/FAT %u
573 #>>>>>22        uleshort        =0              \b, sectors/FAT %u=0 (usual Fat32)
574 >>>>>26         ubyte           >2              \b, heads %u
575 #>>>>>26        ubyte           =2              \b, heads %u (usual floppy)
576 >>>>>26         ubyte           =1              \b, heads %u
577 >>>>>28         ulelong         >0              \b, hidden sectors %u
578 #>>>>>28        ulelong         =0              \b, hidden sectors %u (usual floppy)
579 >>>>>32         ulelong         >0              \b, sectors %u (volumes > 32 MB) 
580 #>>>>>32        ulelong         =0              \b, sectors %u (volumes > 32 MB) 
581 # FAT<32 specific 
582 # NOT le FAT3=NOT 3TAF=0xCCABBEB9
583 >>>>>82         ulelong&0xCCABBEB9      >0
584 >>>>>>36        ubyte           >0x80           \b, physical drive 0x%x
585 #>>>>>>36       ubyte           =0x80           \b, physical drive 0x%x=0x80 (usual harddisk)
586 >>>>>>36        ubyte&0x7F      >0              \b, physical drive 0x%x
587 #>>>>>>36       ubyte           =0              \b, physical drive 0x%x=0 (usual floppy)
588 >>>>>>37        ubyte           >0              \b, reserved 0x%x
589 #>>>>>>37       ubyte           =0              \b, reserved 0x%x
590 >>>>>>38        ubyte           >0x29           \b, dos < 4.0 BootSector (0x%x)
591 >>>>>>38        ubyte           <0x29           \b, dos < 4.0 BootSector (0x%x)
592 >>>>>>38        ubyte           =0x29
593 >>>>>>>39       ulelong         x               \b, serial number 0x%x
594 >>>>>>>43       string          <NO\ NAME       \b, label: "%11.11s"
595 >>>>>>>43       string          >NO\ NAME       \b, label: "%11.11s"
596 >>>>>>>43       string          =NO\ NAME       \b, unlabeled
597 >>>>>>54        string          FAT             \b, FAT
598 >>>>>>>54       string          FAT12           \b (12 bit)
599 >>>>>>>54       string          FAT16           \b (16 bit)
600 # FAT32 specific
601 >>>>>82         string          FAT32           \b, FAT (32 bit)
602 >>>>>>36        ulelong         x               \b, sectors/FAT %u
603 >>>>>>40        uleshort        >0              \b, extension flags %u
604 #>>>>>>40       uleshort        =0              \b, extension flags %u
605 >>>>>>42        uleshort        >0              \b, fsVersion %u
606 #>>>>>>42       uleshort        =0              \b, fsVersion %u (usual)
607 >>>>>>44        ulelong         >2              \b, rootdir cluster %u
608 #>>>>>>44       ulelong         =2              \b, rootdir cluster %u
609 #>>>>>>44       ulelong         =1              \b, rootdir cluster %u
610 >>>>>>48        uleshort        >1              \b, infoSector %u
611 #>>>>>>48       uleshort        =1              \b, infoSector %u (usual)
612 >>>>>>48        uleshort        <1              \b, infoSector %u
613 >>>>>>50        uleshort        >6              \b, Backup boot sector %u
614 #>>>>>>50       uleshort        =6              \b, Backup boot sector %u (usual) 
615 >>>>>>50        uleshort        <6              \b, Backup boot sector %u
616 >>>>>>54        ulelong         >0              \b, reserved1 0x%x
617 >>>>>>58        ulelong         >0              \b, reserved2 0x%x
618 >>>>>>62        ulelong         >0              \b, reserved3 0x%x
619 # same structure as FAT1X 
620 >>>>>>64        ubyte           >0x80           \b, physical drive 0x%x
621 #>>>>>>64       ubyte           =0x80           \b, physical drive 0x%x=80 (usual harddisk)
622 >>>>>>64        ubyte&0x7F      >0              \b, physical drive 0x%x
623 #>>>>>>64       ubyte           =0              \b, physical drive 0x%x=0 (usual floppy)
624 >>>>>>65        ubyte           >0              \b, reserved 0x%x
625 >>>>>>66        ubyte           >0x29           \b, dos < 4.0 BootSector (0x%x)
626 >>>>>>66        ubyte           <0x29           \b, dos < 4.0 BootSector (0x%x)
627 >>>>>>66        ubyte           =0x29
628 >>>>>>>67       ulelong         x               \b, serial number 0x%x
629 >>>>>>>71       string          <NO\ NAME       \b, label: "%11.11s"
630 >>>>>>71        string          >NO\ NAME       \b, label: "%11.11s"
631 >>>>>>71        string          =NO\ NAME       \b, unlabeled
632 ### FATs end
633 >0x200  lelong  0x82564557              \b, BSD disklabel
634 # FATX 
635 0               string          FATX            FATX filesystem data
636
637
638 # Minix filesystems - Juan Cespedes <cespedes@debian.org>
639 0x410   leshort         0x137f          Minix filesystem
640 0x410   beshort         0x137f          Minix filesystem (big endian),
641 >0x402  beshort         !0              \b, %d zones
642 >0x1e   string          minix           \b, bootable
643 0x410   leshort         0x138f          Minix filesystem, 30 char names
644 0x410   leshort         0x2468          Minix filesystem, version 2
645 0x410   leshort         0x2478          Minix filesystem, version 2, 30 char names
646
647 # romfs filesystems - Juan Cespedes <cespedes@debian.org>
648 0       string          -rom1fs-\0      romfs filesystem, version 1
649 >8      belong  x                       %d bytes,
650 >16     string  x                       named %s.
651
652 # netboot image - Juan Cespedes <cespedes@debian.org>
653 0       lelong          0x1b031336L     Netboot image,
654 >4      lelong&0xFFFFFF00       0
655 >>4     lelong&0x100    0x000           mode 2
656 >>4     lelong&0x100    0x100           mode 3
657 >4      lelong&0xFFFFFF00       !0      unknown mode
658
659 0x18b   string  OS/2    OS/2 Boot Manager
660
661 9564    lelong          0x00011954      Unix Fast File system [v1] (little-endian),
662 >8404   string          x               last mounted on %s,
663 #>9504  ledate          x               last checked at %s,
664 >8224   ledate          x               last written at %s,
665 >8401   byte            x               clean flag %d,
666 >8228   lelong          x               number of blocks %d,
667 >8232   lelong          x               number of data blocks %d,
668 >8236   lelong          x               number of cylinder groups %d,
669 >8240   lelong          x               block size %d,
670 >8244   lelong          x               fragment size %d,
671 >8252   lelong          x               minimum percentage of free blocks %d,
672 >8256   lelong          x               rotational delay %dms,
673 >8260   lelong          x               disk rotational speed %drps,
674 >8320   lelong          0               TIME optimization
675 >8320   lelong          1               SPACE optimization
676
677 42332   lelong          0x19540119      Unix Fast File system [v2] (little-endian)
678 >&-1164 string          x               last mounted on %s,
679 >&-696  string          >\0             volume name %s,
680 >&-304  leqldate        x               last written at %s,
681 >&-1167 byte            x               clean flag %d,
682 >&-1168 byte            x               readonly flag %d,
683 >&-296  lequad          x               number of blocks %lld,
684 >&-288  lequad          x               number of data blocks %lld,
685 >&-1332 lelong          x               number of cylinder groups %d,
686 >&-1328 lelong          x               block size %d,
687 >&-1324 lelong          x               fragment size %d,
688 >&-180  lelong          x               average file size %d,
689 >&-176  lelong          x               average number of files in dir %d,
690 >&-272  lequad          x               pending blocks to free %lld,
691 >&-264  lelong          x               pending inodes to free %ld,
692 >&-664  lequad          x               system-wide uuid %0llx,
693 >&-1316 lelong          x               minimum percentage of free blocks %d,
694 >&-1248 lelong          0               TIME optimization
695 >&-1248 lelong          1               SPACE optimization
696
697 66908   lelong          0x19540119      Unix Fast File system [v2] (little-endian)
698 >&-1164 string          x               last mounted on %s,
699 >&-696  string          >\0             volume name %s,
700 >&-304  leqldate        x               last written at %s,
701 >&-1167 byte            x               clean flag %d,
702 >&-1168 byte            x               readonly flag %d,
703 >&-296  lequad          x               number of blocks %lld,
704 >&-288  lequad          x               number of data blocks %lld,
705 >&-1332 lelong          x               number of cylinder groups %d,
706 >&-1328 lelong          x               block size %d,
707 >&-1324 lelong          x               fragment size %d,
708 >&-180  lelong          x               average file size %d,
709 >&-176  lelong          x               average number of files in dir %d,
710 >&-272  lequad          x               pending blocks to free %lld,
711 >&-264  lelong          x               pending inodes to free %ld,
712 >&-664  lequad          x               system-wide uuid %0llx,
713 >&-1316 lelong          x               minimum percentage of free blocks %d,
714 >&-1248 lelong          0               TIME optimization
715 >&-1248 lelong          1               SPACE optimization
716
717 9564    belong          0x00011954      Unix Fast File system [v1] (big-endian),
718 >7168   belong          0x4c41424c      Apple UFS Volume
719 >>7186  string          x               named %s,
720 >>7176  belong          x               volume label version %d,
721 >>7180  bedate          x               created on %s,
722 >8404   string          x               last mounted on %s,
723 #>9504  bedate          x               last checked at %s,
724 >8224   bedate          x               last written at %s,
725 >8401   byte            x               clean flag %d,
726 >8228   belong          x               number of blocks %d,
727 >8232   belong          x               number of data blocks %d,
728 >8236   belong          x               number of cylinder groups %d,
729 >8240   belong          x               block size %d,
730 >8244   belong          x               fragment size %d,
731 >8252   belong          x               minimum percentage of free blocks %d,
732 >8256   belong          x               rotational delay %dms,
733 >8260   belong          x               disk rotational speed %drps,
734 >8320   belong          0               TIME optimization
735 >8320   belong          1               SPACE optimization
736
737 42332   belong          0x19540119      Unix Fast File system [v2] (big-endian)
738 >&-1164 string          x               last mounted on %s,
739 >&-696  string          >\0             volume name %s,
740 >&-304  beqldate        x               last written at %s,
741 >&-1167 byte            x               clean flag %d,
742 >&-1168 byte            x               readonly flag %d,
743 >&-296  bequad          x               number of blocks %lld,
744 >&-288  bequad          x               number of data blocks %lld,
745 >&-1332 belong          x               number of cylinder groups %d,
746 >&-1328 belong          x               block size %d,
747 >&-1324 belong          x               fragment size %d,
748 >&-180  belong          x               average file size %d,
749 >&-176  belong          x               average number of files in dir %d,
750 >&-272  bequad          x               pending blocks to free %lld,
751 >&-264  belong          x               pending inodes to free %ld,
752 >&-664  bequad          x               system-wide uuid %0llx,
753 >&-1316 belong          x               minimum percentage of free blocks %d,
754 >&-1248 belong          0               TIME optimization
755 >&-1248 belong          1               SPACE optimization
756
757 66908   belong          0x19540119      Unix Fast File system [v2] (big-endian)
758 >&-1164 string          x               last mounted on %s,
759 >&-696  string          >\0             volume name %s,
760 >&-304  beqldate        x               last written at %s,
761 >&-1167 byte            x               clean flag %d,
762 >&-1168 byte            x               readonly flag %d,
763 >&-296  bequad          x               number of blocks %lld,
764 >&-288  bequad          x               number of data blocks %lld,
765 >&-1332 belong          x               number of cylinder groups %d,
766 >&-1328 belong          x               block size %d,
767 >&-1324 belong          x               fragment size %d,
768 >&-180  belong          x               average file size %d,
769 >&-176  belong          x               average number of files in dir %d,
770 >&-272  bequad          x               pending blocks to free %lld,
771 >&-264  belong          x               pending inodes to free %ld,
772 >&-664  bequad          x               system-wide uuid %0llx,
773 >&-1316 belong          x               minimum percentage of free blocks %d,
774 >&-1248 belong          0               TIME optimization
775 >&-1248 belong          1               SPACE optimization
776
777 # ext2/ext3 filesystems - Andreas Dilger <adilger@turbolabs.com>
778 0x438   leshort         0xEF53          Linux
779 >0x44c  lelong          x               rev %d
780 >0x43e  leshort         x               \b.%d
781 >0x45c  lelong          ^0x0000004      ext2 filesystem data
782 >>0x43a leshort         ^0x0000001      (mounted or unclean)
783 >0x45c  lelong          &0x0000004      ext3 filesystem data
784 >>0x460 lelong          &0x0000004      (needs journal recovery)
785 >0x43a  leshort         &0x0000002      (errors)
786 >0x460  lelong          &0x0000001      (compressed)
787 #>0x460 lelong          &0x0000002      (filetype)
788 #>0x464 lelong          &0x0000001      (sparse_super)
789 >0x464  lelong          &0x0000002      (large files)
790
791 # SGI disk labels - Nathan Scott <nathans@debian.org>
792 0       belong          0x0BE5A941      SGI disk label (volume header)
793
794 # SGI XFS filesystem - Nathan Scott <nathans@debian.org>
795 0       belong          0x58465342      SGI XFS filesystem data
796 >0x4    belong          x               (blksz %d,
797 >0x68   beshort         x               inosz %d,
798 >0x64   beshort         ^0x2004         v1 dirs)
799 >0x64   beshort         &0x2004         v2 dirs)
800
801 ############################################################################
802 # Minix-ST kernel floppy
803 0x800   belong          0x46fc2700      Atari-ST Minix kernel image
804 >19     string          \240\5\371\5\0\011\0\2\0        \b, 720k floppy
805 >19     string          \320\2\370\5\0\011\0\1\0        \b, 360k floppy
806
807 ############################################################################
808 # Hmmm, is this a better way of detecting _standard_ floppy images ?
809 19      string          \320\2\360\3\0\011\0\1\0        DOS floppy 360k
810 >0x1FE  leshort         0xAA55          \b, x86 hard disk boot sector
811 19      string          \240\5\371\3\0\011\0\2\0        DOS floppy 720k
812 >0x1FE  leshort         0xAA55          \b, x86 hard disk boot sector
813 19      string          \100\013\360\011\0\022\0\2\0    DOS floppy 1440k
814 >0x1FE  leshort         0xAA55          \b, x86 hard disk boot sector
815
816 19      string          \240\5\371\5\0\011\0\2\0        DOS floppy 720k, IBM
817 >0x1FE  leshort         0xAA55          \b, x86 hard disk boot sector
818 19      string          \100\013\371\5\0\011\0\2\0      DOS floppy 1440k, mkdosfs
819 >0x1FE  leshort         0xAA55          \b, x86 hard disk boot sector
820
821 19      string          \320\2\370\5\0\011\0\1\0        Atari-ST floppy 360k
822 19      string          \240\5\371\5\0\011\0\2\0        Atari-ST floppy 720k
823
824 #  Valid media descriptor bytes for MS-DOS:
825 #
826 #     Byte   Capacity   Media Size and Type
827 #     -------------------------------------------------
828 #
829 #     F0     2.88 MB    3.5-inch, 2-sided, 36-sector
830 #     F0     1.44 MB    3.5-inch, 2-sided, 18-sector
831 #     F9     720K       3.5-inch, 2-sided, 9-sector
832 #     F9     1.2 MB     5.25-inch, 2-sided, 15-sector
833 #     FD     360K       5.25-inch, 2-sided, 9-sector
834 #     FF     320K       5.25-inch, 2-sided, 8-sector
835 #     FC     180K       5.25-inch, 1-sided, 9-sector
836 #     FE     160K       5.25-inch, 1-sided, 8-sector
837 #     FE     250K       8-inch, 1-sided, single-density
838 #     FD     500K       8-inch, 2-sided, single-density
839 #     FE     1.2 MB     8-inch, 2-sided, double-density
840 #     F8     -----      Fixed disk 
841 #
842 #     FC     xxxK       Apricot 70x1x9 boot disk.
843 #
844 # Originally a bitmap:
845 #  xxxxxxx0     Not two sided
846 #  xxxxxxx1     Double sided
847 #  xxxxxx0x     Not 8 SPT
848 #  xxxxxx1x     8 SPT
849 #  xxxxx0xx     Not Removable drive
850 #  xxxxx1xx     Removable drive
851 #  11111xxx     Must be one.
852 #
853 # But now it's rather random:
854 #  111111xx     Low density disk
855 #        00     SS, Not 8 SPT
856 #        01     DS, Not 8 SPT
857 #        10     SS, 8 SPT
858 #        11     DS, 8 SPT
859 #
860 #  11111001     Double density 3½ floppy disk, high density 5¼
861 #  11110000     High density 3½ floppy disk
862 #  11111000     Hard disk any format
863 #
864
865 # CDROM Filesystems
866 # Modified for UDF by gerardo.cacciari@gmail.com
867 32769    string    CD001
868 >38913   string   !NSR0      ISO 9660 CD-ROM filesystem data
869 >38913   string    NSR01     UDF filesystem data (version 1.0)
870 >38913   string    NSR02     UDF filesystem data (version 1.5)
871 >38913   string    NSR03     UDF filesystem data (version 2.0)
872 >38913   string    >NSR03    UDF filesystem data (unknown version,
873 >>38917  byte      x         id 'NSR0%c')
874 >38913   string    <NSR01    UDF filesystem data (unknown version,
875 >>38917  byte      x         id 'NSR0%c')
876 # "application id" which appears to be used as a volume label
877 >32808   string    >\0       '%s'
878 >34816   string    \000CD001\001EL\ TORITO\ SPECIFICATION    (bootable)
879 37633    string    CD001     ISO 9660 CD-ROM filesystem data (raw 2352 byte sectors)
880 32776    string    CDROM     High Sierra CD-ROM filesystem data
881
882 # cramfs filesystem - russell@coker.com.au
883 0       lelong    0x28cd3d45      Linux Compressed ROM File System data, little endian
884 >4      lelong  x size %d
885 >8      lelong  &1 version #2
886 >8      lelong  &2 sorted_dirs
887 >8      lelong  &4 hole_support
888 >32     lelong  x CRC 0x%x,
889 >36     lelong  x edition %d,
890 >40     lelong  x %d blocks,
891 >44     lelong  x %d files
892
893 0       belong    0x28cd3d45      Linux Compressed ROM File System data, big endian
894 >4      belong  x size %d
895 >8      belong  &1 version #2
896 >8      belong  &2 sorted_dirs
897 >8      belong  &4 hole_support
898 >32     belong  x CRC 0x%x,
899 >36     belong  x edition %d,
900 >40     belong  x %d blocks,
901 >44     belong  x %d files
902
903 # reiserfs - russell@coker.com.au
904 0x10034         string  ReIsErFs        ReiserFS V3.5
905 0x10034         string  ReIsEr2Fs       ReiserFS V3.6
906 >0x1002c        leshort x               block size %d
907 >0x10032        leshort &2              (mounted or unclean)
908 >0x10000        lelong  x               num blocks %d
909 >0x10040        lelong  1               tea hash
910 >0x10040        lelong  2               yura hash
911 >0x10040        lelong  3               r5 hash
912
913 # JFFS - russell@coker.com.au
914 0       lelong  0x34383931      Linux Journalled Flash File system, little endian
915 0       belong  0x34383931      Linux Journalled Flash File system, big endian
916
917 # EST flat binary format (which isn't, but anyway)
918 # From: Mark Brown <broonie@sirena.org.uk>
919 0       string  ESTFBINR        EST flat binary
920
921 # Aculab VoIP firmware
922 # From: Mark Brown <broonie@sirena.org.uk>
923 0       string  VoIP\ Startup\ and      Aculab VoIP firmware
924 >35     string  x       format %s
925
926 # PPCBoot image file
927 # From: Mark Brown <broonie@sirena.org.uk>
928 0       belong  0x27051956      PPCBoot image
929 >4      string  PPCBoot
930 >>12    string  x               version %s
931
932 # JFFS2 file system
933 0       leshort         0x1984                  Linux old jffs2 filesystem data little endian
934 0       lelong          0xe0011985              Linux jffs2 filesystem data little endian
935
936 # Squashfs
937 0       string  sqsh    Squashfs filesystem, big endian,
938 >28     beshort x       version %d.
939 >30     beshort x       \b%d,
940 >28     beshort <3
941 >>8     belong  x       %d bytes,
942 >28     beshort >2
943 >>63    bequad x        %lld bytes,
944 #>>67   belong  x       %d bytes,
945 >4      belong  x       %d inodes,
946 >28     beshort <2
947 >>32    beshort x       blocksize: %d bytes,
948 >28     beshort >1
949 >>51    belong  x       blocksize: %d bytes,
950 >39     bedate  x       created: %s
951 0       string  hsqs    Squashfs filesystem, little endian,
952 >28     leshort x       version %d.
953 >30     leshort x       \b%d,
954 >28     leshort <3
955 >>8     lelong  x       %d bytes,
956 >28     leshort >2
957 >>63    lequad x        %lld bytes,
958 #>>63   lelong  x       %d bytes,
959 >4      lelong  x       %d inodes,
960 >28     leshort <2
961 >>32    leshort x       blocksize: %d bytes,
962 >28     leshort >1
963 >>51    lelong  x       blocksize: %d bytes,
964 >39     ledate  x       created: %s
965
966 # AFS Dump Magic
967 # From: Ty Sarna <tsarna@sarna.org> 
968 0       string                  \x01\xb3\xa1\x13\x22    AFS Dump
969 >&0     belong                  x                       (v%d)
970 >>&0    byte                    0x76
971 >>>&0   belong                  x                       Vol %d,
972 >>>>&0  byte                    0x6e
973 >>>>>&0 string                  x                       %s
974 >>>>>>&1        byte            0x74
975 >>>>>>>&0       beshort         2
976 >>>>>>>>&4      bedate          x                       on: %s
977 >>>>>>>>&0      bedate          =0                      full dump
978 >>>>>>>>&0      bedate          !0                      incremental since: %s
979
980 # VMS backup savesets - gerardo.cacciari@gmail.com
981 # had to comment out GEM Image and G3 raw data  entries due to conflict
982 #0            byte    x
983 #>(0.s+16)    string  \x01\x01
984 #>>&(&0.b+8)  byte    0x42       OpenVMS backup saveset data
985 #>>>40        lelong  x          (block size %d
986 #>>>49        string  >\0        original name '%s')