]> granicus.if.org Git - file/commitdiff
more magic patches
authorChristos Zoulas <christos@zoulas.com>
Thu, 9 Oct 2008 20:48:33 +0000 (20:48 +0000)
committerChristos Zoulas <christos@zoulas.com>
Thu, 9 Oct 2008 20:48:33 +0000 (20:48 +0000)
ChangeLog
magic/Magdir/filesystems
magic/Magdir/msdos

index 10090efdf30758335679294f2915c5cc31a7905a..9bd28aefaee5c29015eba7d350a6498fbd818c9b 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2008-10-09 16:40  Christos Zoulas <christos@astron.com>
+
+       * filesystem and msdos patches (Joerg Jenderek)
+
 2008-10-09 13:20  Christos Zoulas <christos@astron.com>
 
        * correct --exclude documentation issues: remove troff and fortran 
index 36c2f72d3ca8bd664753d40710b25815bab62c90..5a85da1322bb379d3611b41eb32e2a6dbbc7ed5c 100644 (file)
 >>>346 string  des\ Betriebssystems    
 >>>>366        string  Betriebssystem\ nicht\ vorhanden        \b, Microsoft Windows XP MBR (german)
 >>>>>0x1B8     ulelong >0                              \b, Serial 0x%-.4x
->0x145 string  Default:\ F                             \b, FREE-DOS MBR
+#>0x145        string  Default:\ F                             \b, FREE-DOS MBR
+#>0x14B        string  Default:\ F                             \b, FREE-DOS 1.0 MBR
+>0x145 search/7        Default:\ F                     \b, FREE-DOS MBR
+#>>313         string  F0\ .\ .\ .                     
+#>>>322                string  disk\ 1                         
+#>>>>382       string  FAT3                            
 >64    string  no\ active\ partition\ found    
 >>96   string  read\ error\ while\ reading\ drive      \b, FREE-DOS Beta 0.9 MBR
+# Ranish Partition Manager http://www.ranish.com/part/
+>387   search/4        \0\ Error!\r                    
+>>378  search/7        Virus!                          
+>>>397 search/4        Booting\                        
+>>>>408        search/4        HD1/\0                          \b, Ranish MBR (
+>>>>>416       string  Writing\ changes...             \b2.37
+>>>>>>438      ubyte           x                       \b,0x%x dots
+>>>>>>440      ubyte           >0                      \b,virus check
+>>>>>>441      ubyte           >0                      \b,partition %c
+#2.38,2.42,2.44
+>>>>>416       string  !Writing\ changes...            \b
+>>>>>>418      ubyte   1                               \bvirus check,
+>>>>>>419      ubyte   x                               \b0x%x seconds
+>>>>>>420      ubyte&0x0F      >0                      \b,partition
+>>>>>>>420     ubyte&0x0F      <5                      \b %x
+>>>>>>>420     ubyte&0x0F      0Xf                     \b ask
+>>>>>420       ubyte           x                       \b)
+#
 >271   string  Operating\ system\ loading              
 >>296  string  error\r                                 \b, SYSLINUX MBR (2.10)
 # http://www.acronis.de/
 >0x40  string  SBML                            
 # label with 11 characters of FAT 12 bit filesystem
 >>43   string  SMART\ BTMGR                    
->>>430 string  SBMK\ Bad!\r                    
->>>>3  string  SBM                             \b, Smart Boot Manager
->>>>>6 string  >\0                             \b, version %s
+>>>430 string  SBMK\ Bad!\r                    \b, Smart Boot Manager
+# OEM-ID not always "SBM"
+#>>>>3 strings SBM                             
+>>>>6  string  >\0                             \b, version %s
 >382   string  XOSLLOADXCF                     \b, eXtended Operating System Loader
 >6     string  LILO                            \b, LInux i386 boot LOader
 >>120  string  LILO                            \b, version 22.3.4 SuSe
 >>172  string  LILO                            \b, version 22.5.8 Debian
-# updated by Joerg Jenderek
+# updated by Joerg Jenderek at Oct 2008
 # variables according to grub-0.97/stage1/stage1.S or
 # http://www.gnu.org/software/grub/manual/grub.html#Embedded-data
 # usual values are marked with comments to get only informations of strange GRUB loaders
->0             ulelong         0x009048EB      
+>342           search/60       \0Geom\0        
+#>0            ulelong         x               %x=0x009048EB , 0x2a9048EB  0
 >>0x41         ubyte           <2              
 >>>0x3E                ubyte           >2              \b; GRand Unified Bootloader
 # 0x3 for 0.5.95,0.93,0.94,0.96 0x4 for 1.90 
 >3     string  BCDL                            
 >>498  string  BCDL\ \ \ \ BIN                 \b, Bootable CD Loader (1.50Z)
 # mbr partion table entries
-# OEM-ID not Microsoft,SYSLINUX,or MTOOLs
+# OEM-ID does not contain MicroSoft,NEWLDR,DOS,SYSLINUX,or MTOOLs
 >3                     string          !MS
 >>3                    string          !SYSLINUX
 >>>3                   string          !MTOOL
+>>>>3                  string          !NEWLDR
+>>>>>5                 string          !DOS
 # not FAT (32 bit)
->>>>82                 string          !FAT32  
-#not IO.SYS
->>>>>472               string          !IO\ \ \ \ \ \ SYS
->>>>>>480              string          !IO\ \ \ \ \ \ SYS
+>>>>>>82               string          !FAT32
 #not Linux kernel
 >>>>>>>514             string          !HdrS
 #not BeOS
 >>>>>>>>>(1.b+11)      ubyte   0xb                     
 >>>>>>>>>>(1.b+12)     ubyte   0x56                    
 >>>>>>>>>>(1.b+13)     ubyte   0xb4                    \b, mkdosfs boot message display
+>214   string  Please\ try\ to\ install\ FreeDOS\      \b, DOS Emulator boot message display
+#>>244 string  from\ dosemu-freedos-*-bin.tgz\r        
+#>>>170        string  Sorry,\ could\ not\ load\ an\           
+#>>>>195       string  operating\ system.\r\n          
+#
 >103   string  This\ is\ not\ a\ bootable\ disk.\      
 >>132  string  Please\ insert\ a\ bootable\            
 >>>157 string  floppy\ and\r\n                         
 >430   string  Datentr\204ger\ entfernen\xFF\r\n       
 >>454  string  Medienfehler\xFF\r\n                    
 >>>469 string  Neustart:\ Taste\ dr\201cken\r          \b, Microsoft Windows XP Bootloader (4.german)
->>>>368                ubyte&0xDF      >0                      
->>>>>368       string          x                       %-.5s
->>>>>>373      ubyte&0xDF      >0                      
->>>>>>>373     string          x                       \b%-.3s
->>>>>376       ubyte&0xDF      >0                      
->>>>>>376      string          x                       \b.%-.3s
+>>>>379                string          \0                      
+>>>>>368       ubyte&0xDF      >0                      
+>>>>>>368      string          x                       %-.5s
+>>>>>>>373     ubyte&0xDF      >0                      
+>>>>>>>>373    string          x                       \b%-.3s
+>>>>>>376      ubyte&0xDF      >0                      
+>>>>>>>376     string          x                       \b.%-.3s
+# variant
+>>>>417                ubyte&0xDF      >0                      
+>>>>>417       string          x                       %-.5s
+>>>>>>422      ubyte&0xDF      >0                      
+>>>>>>>422     string          x                       \b%-.3s
+>>>>>425       ubyte&0xDF      >0                      
+>>>>>>425      string          >\                      \b.%-.3s
+#
+
 #>3    string  NTFS\ \ \ \                             
 >389   string  Fehler\ beim\ Lesen\ 
 >>407  string  des\ Datentr\204gers
 >>>489 string  Any\ key\ to\ retry                     \b, DR-DOS Bootloader
 >>471  string  Cannot\ load\ DOS\                      
 >>487  string  press\ key\ to\ retry                   \b, Open-DOS Bootloader
+#??
 >444   string  KERNEL\ \ SYS                                   
 >>314  string  BOOT\ error!                            \b, FREE-DOS Bootloader
 >499   string  KERNEL\ \ SYS                           
 >>305  string  BOOT\ err!\0                            \b, Free-DOS Bootloader
 >449   string  KERNEL\ \ SYS                           
 >>319  string  BOOT\ error!                            \b, FREE-DOS 0.5 Bootloader
+#
+>449   string  Loading\ FreeDOS                        
+>>0x1AF                ulelong         >0                      \b, FREE-DOS 0.95,1.0 Bootloader
+>>>497         ubyte&0xDF      >0                      
+>>>>497                string          x                       \b %-.6s
+>>>>>503       ubyte&0xDF      >0                      
+>>>>>>503      string          x                       \b%-.1s
+>>>>>>>504     ubyte&0xDF      >0                      
+>>>>>>>>504    string          x                       \b%-.1s
+>>>>505                ubyte&0xDF      >0                      
+>>>>>505       string          x                       \b.%-.3s
+#
+>331   string  Error!.0                                \b, FREE-DOS 1.0 bootloader
+#
 >125   string  Loading\ FreeDOS...\r                   
 >>311  string  BOOT\ error!\r                          \b, FREE-DOS bootloader
 >>>441         ubyte&0xDF      >0                      
 #it also hangs with another message ("NF").
 >>>>>492               string          RENF            \b, FAT (12 bit)
 >>>>>495               string          RENF            \b, FAT (16 bit)
-# added by Joerg Jenderek
-# http://syslinux.zytor.com/iso.php
-0      ulelong 0x7c40eafa              isolinux Loader
-# http://syslinux.zytor.com/pxe.php
-0      ulelong 0x007c05ea              pxelinux Loader
-0      ulelong 0x60669c66              pxelinux Loader
-# loader end
+# x86 bootloader end
 # updated by Joerg Jenderek at Sep 2007
 >3     ubyte   0                       
 #no active flag
 # older drives may use Near JuMP instruction E9 xx xx
 >0             lelong&0x009000EB       0x009000EB 
 >0             lelong&0x000000E9       0x000000E9 
+# minimal short forward jump found 03cx??
 # maximal short forward jump is 07fx
 >1             ubyte                   <0xff   \b, code offset 0x%x
 # mtools-3.9.8/msdos.h
 >>11           uleshort&0x000f x               
 >>>11          uleshort        <32769          
 >>>>11         uleshort        >31             
->>>>>3         string          >\0             \b, OEM-ID "%8.8s"
+>>>>>21                ubyte&0xf0      0xF0            
+>>>>>>3                string          >\0             \b, OEM-ID "%8.8s"
 #http://mirror.href.com/thestarman/asm/debug/debug2.htm#IHC
->>>>>>8                string          IHC             \b cached by Windows 9M
->>>>>11                uleshort        >512            \b, Bytes/sector %u
-#>>>>>11       uleshort        =512            \b, Bytes/sector %u=512 (usual)
->>>>>11                uleshort        <512            \b, Bytes/sector %u
->>>>>13                ubyte           >1              \b, sectors/cluster %u
-#>>>>>13       ubyte           =1              \b, sectors/cluster %u (usual on Floppies)
->>>>>14                uleshort        >32             \b, reserved sectors %u
-#>>>>>14       uleshort        =32             \b, reserved sectors %u (usual Fat32)
-#>>>>>14       uleshort        >1              \b, reserved sectors %u
-#>>>>>14       uleshort        =1              \b, reserved sectors %u (usual FAT12,FAT16)
->>>>>14                uleshort        <1              \b, reserved sectors %u
->>>>>16                ubyte           >2              \b, FATs %u
-#>>>>>16       ubyte           =2              \b, FATs %u (usual)
->>>>>16                ubyte           =1              \b, FAT  %u
->>>>>16                ubyte           >0
->>>>>17                uleshort        >0              \b, root entries %u
-#>>>>>17       uleshort        =0              \b, root entries %u=0 (usual Fat32)
->>>>>19                uleshort        >0              \b, sectors %u (volumes <=32 MB) 
-#>>>>>19       uleshort        =0              \b, sectors %u=0 (usual Fat32)
->>>>>21                ubyte           >0xF0           \b, Media descriptor 0x%x
-#>>>>>21       ubyte           =0xF0           \b, Media descriptor 0x%x (usual floppy)
->>>>>21                ubyte           <0xF0           \b, Media descriptor 0x%x
->>>>>22                uleshort        >0              \b, sectors/FAT %u
-#>>>>>22       uleshort        =0              \b, sectors/FAT %u=0 (usual Fat32)
->>>>>26                ubyte           >2              \b, heads %u
-#>>>>>26       ubyte           =2              \b, heads %u (usual floppy)
->>>>>26                ubyte           =1              \b, heads %u
+>>>>>>>8       string          IHC             \b cached by Windows 9M
+>>>>>>11       uleshort        >512            \b, Bytes/sector %u
+#>>>>>>11      uleshort        =512            \b, Bytes/sector %u=512 (usual)
+>>>>>>11       uleshort        <512            \b, Bytes/sector %u
+>>>>>>13       ubyte           >1              \b, sectors/cluster %u
+#>>>>>>13      ubyte           =1              \b, sectors/cluster %u (usual on Floppies)
+>>>>>>14       uleshort        >32             \b, reserved sectors %u
+#>>>>>>14      uleshort        =32             \b, reserved sectors %u (usual Fat32)
+#>>>>>>14      uleshort        >1              \b, reserved sectors %u
+#>>>>>>14      uleshort        =1              \b, reserved sectors %u (usual FAT12,FAT16)
+>>>>>>14       uleshort        <1              \b, reserved sectors %u
+>>>>>>16       ubyte           >2              \b, FATs %u
+#>>>>>>16      ubyte           =2              \b, FATs %u (usual)
+>>>>>>16       ubyte           =1              \b, FAT  %u
+>>>>>>16       ubyte           >0
+>>>>>>17       uleshort        >0              \b, root entries %u
+#>>>>>>17      uleshort        =0              \b, root entries %u=0 (usual Fat32)
+>>>>>>19       uleshort        >0              \b, sectors %u (volumes <=32 MB) 
+#>>>>>>19      uleshort        =0              \b, sectors %u=0 (usual Fat32)
+>>>>>>21       ubyte           >0xF0           \b, Media descriptor 0x%x
+#>>>>>>21      ubyte           =0xF0           \b, Media descriptor 0x%x (usual floppy)
+>>>>>>21       ubyte           <0xF0           \b, Media descriptor 0x%x
+>>>>>>22       uleshort        >0              \b, sectors/FAT %u
+#>>>>>>22      uleshort        =0              \b, sectors/FAT %u=0 (usual Fat32)
+>>>>>>26       ubyte           >2              \b, heads %u
+#>>>>>>26      ubyte           =2              \b, heads %u (usual floppy)
+>>>>>>26       ubyte           =1              \b, heads %u
 #skip for Digital Research DOS (version 3.41) 1440 kB Bootdisk
->>>>>38                ubyte           !0x70           
->>>>>>28       ulelong         >0              \b, hidden sectors %u
-#>>>>>>28      ulelong         =0              \b, hidden sectors %u (usual floppy)
->>>>>>32       ulelong         >0              \b, sectors %u (volumes > 32 MB) 
-#>>>>>>32      ulelong         =0              \b, sectors %u (volumes > 32 MB)
+>>>>>>38       ubyte           !0x70           
+>>>>>>>28      ulelong         >0              \b, hidden sectors %u
+#>>>>>>>28     ulelong         =0              \b, hidden sectors %u (usual floppy)
+>>>>>>>32      ulelong         >0              \b, sectors %u (volumes > 32 MB) 
+#>>>>>>>32     ulelong         =0              \b, sectors %u (volumes > 32 MB)
 # FAT<32 specific 
->>>>>82                string          !FAT32
-#>>>>>>36      ubyte           0x80            \b, physical drive 0x%x=0x80 (usual harddisk)
-#>>>>>>36      ubyte           0               \b, physical drive 0x%x=0 (usual floppy)
->>>>>>36       ubyte           !0x80           
->>>>>>>36      ubyte           !0              \b, physical drive 0x%x
->>>>>>37       ubyte           >0              \b, reserved 0x%x
-#>>>>>>37      ubyte           =0              \b, reserved 0x%x
->>>>>>38       ubyte           >0x29           \b, dos < 4.0 BootSector (0x%x)
->>>>>>38       ubyte           <0x29           \b, dos < 4.0 BootSector (0x%x)
->>>>>>38       ubyte           =0x29
->>>>>>>39      ulelong         x               \b, serial number 0x%x
->>>>>>>43      string          <NO\ NAME       \b, label: "%11.11s"
->>>>>>>43      string          >NO\ NAME       \b, label: "%11.11s"
->>>>>>>43      string          =NO\ NAME       \b, unlabeled
->>>>>>54       string          FAT             \b, FAT
->>>>>>>54      string          FAT12           \b (12 bit)
->>>>>>>54      string          FAT16           \b (16 bit)
+>>>>>>82       string          !FAT32
+#>>>>>>>36     ubyte           0x80            \b, physical drive 0x%x=0x80 (usual harddisk)
+#>>>>>>>36     ubyte           0               \b, physical drive 0x%x=0 (usual floppy)
+>>>>>>>36      ubyte           !0x80           
+>>>>>>>>36     ubyte           !0              \b, physical drive 0x%x
+>>>>>>>37      ubyte           >0              \b, reserved 0x%x
+#>>>>>>>37     ubyte           =0              \b, reserved 0x%x
+>>>>>>>38      ubyte           >0x29           \b, dos < 4.0 BootSector (0x%x)
+>>>>>>>38      ubyte           <0x29           \b, dos < 4.0 BootSector (0x%x)
+>>>>>>>38      ubyte           =0x29
+>>>>>>>>39     ulelong         x               \b, serial number 0x%x
+>>>>>>>>43     string          <NO\ NAME       \b, label: "%11.11s"
+>>>>>>>>43     string          >NO\ NAME       \b, label: "%11.11s"
+>>>>>>>>43     string          =NO\ NAME       \b, unlabeled
+>>>>>>>54      string          FAT             \b, FAT
+>>>>>>>>54     string          FAT12           \b (12 bit)
+>>>>>>>>54     string          FAT16           \b (16 bit)
 # FAT32 specific
->>>>>82                string          FAT32           \b, FAT (32 bit)
->>>>>>36       ulelong         x               \b, sectors/FAT %u
->>>>>>40       uleshort        >0              \b, extension flags %u
-#>>>>>>40      uleshort        =0              \b, extension flags %u
->>>>>>42       uleshort        >0              \b, fsVersion %u
-#>>>>>>42      uleshort        =0              \b, fsVersion %u (usual)
->>>>>>44       ulelong         >2              \b, rootdir cluster %u
-#>>>>>>44      ulelong         =2              \b, rootdir cluster %u
-#>>>>>>44      ulelong         =1              \b, rootdir cluster %u
->>>>>>48       uleshort        >1              \b, infoSector %u
-#>>>>>>48      uleshort        =1              \b, infoSector %u (usual)
->>>>>>48       uleshort        <1              \b, infoSector %u
->>>>>>50       uleshort        >6              \b, Backup boot sector %u
-#>>>>>>50      uleshort        =6              \b, Backup boot sector %u (usual) 
->>>>>>50       uleshort        <6              \b, Backup boot sector %u
->>>>>>54       ulelong         >0              \b, reserved1 0x%x
->>>>>>58       ulelong         >0              \b, reserved2 0x%x
->>>>>>62       ulelong         >0              \b, reserved3 0x%x
+>>>>>>82       string          FAT32           \b, FAT (32 bit)
+>>>>>>>36      ulelong         x               \b, sectors/FAT %u
+>>>>>>>40      uleshort        >0              \b, extension flags %u
+#>>>>>>>40     uleshort        =0              \b, extension flags %u
+>>>>>>>42      uleshort        >0              \b, fsVersion %u
+#>>>>>>>42     uleshort        =0              \b, fsVersion %u (usual)
+>>>>>>>44      ulelong         >2              \b, rootdir cluster %u
+#>>>>>>>44     ulelong         =2              \b, rootdir cluster %u
+#>>>>>>>44     ulelong         =1              \b, rootdir cluster %u
+>>>>>>>48      uleshort        >1              \b, infoSector %u
+#>>>>>>>48     uleshort        =1              \b, infoSector %u (usual)
+>>>>>>>48      uleshort        <1              \b, infoSector %u
+>>>>>>>50      uleshort        >6              \b, Backup boot sector %u
+#>>>>>>>50     uleshort        =6              \b, Backup boot sector %u (usual) 
+>>>>>>>50      uleshort        <6              \b, Backup boot sector %u
+>>>>>>>54      ulelong         >0              \b, reserved1 0x%x
+>>>>>>>58      ulelong         >0              \b, reserved2 0x%x
+>>>>>>>62      ulelong         >0              \b, reserved3 0x%x
 # same structure as FAT1X 
->>>>>>64       ubyte           >0x80           \b, physical drive 0x%x
-#>>>>>>64      ubyte           =0x80           \b, physical drive 0x%x=80 (usual harddisk)
->>>>>>64       ubyte&0x7F      >0              \b, physical drive 0x%x
-#>>>>>>64      ubyte           =0              \b, physical drive 0x%x=0 (usual floppy)
->>>>>>65       ubyte           >0              \b, reserved 0x%x
->>>>>>66       ubyte           >0x29           \b, dos < 4.0 BootSector (0x%x)
->>>>>>66       ubyte           <0x29           \b, dos < 4.0 BootSector (0x%x)
->>>>>>66       ubyte           =0x29
->>>>>>>67      ulelong         x               \b, serial number 0x%x
->>>>>>>71      string          <NO\ NAME       \b, label: "%11.11s"
->>>>>>71       string          >NO\ NAME       \b, label: "%11.11s"
->>>>>>71       string          =NO\ NAME       \b, unlabeled
+>>>>>>>64      ubyte           >0x80           \b, physical drive 0x%x
+#>>>>>>>64     ubyte           =0x80           \b, physical drive 0x%x=80 (usual harddisk)
+>>>>>>>64      ubyte&0x7F      >0              \b, physical drive 0x%x
+#>>>>>>>64     ubyte           =0              \b, physical drive 0x%x=0 (usual floppy)
+>>>>>>>65      ubyte           >0              \b, reserved 0x%x
+>>>>>>>66      ubyte           >0x29           \b, dos < 4.0 BootSector (0x%x)
+>>>>>>>66      ubyte           <0x29           \b, dos < 4.0 BootSector (0x%x)
+>>>>>>>66      ubyte           =0x29
+>>>>>>>>67     ulelong         x               \b, serial number 0x%x
+>>>>>>>>71     string          <NO\ NAME       \b, label: "%11.11s"
+>>>>>>>71      string          >NO\ NAME       \b, label: "%11.11s"
+>>>>>>>71      string          =NO\ NAME       \b, unlabeled
 ### FATs end
 >0x200 lelong  0x82564557              \b, BSD disklabel
 # FATX 
 
 0x18b  string  OS/2    OS/2 Boot Manager
 
+# updated by Joerg Jenderek at Oct 2008!!
+# http://syslinux.zytor.com/iso.php
+0      ulelong 0x7c40eafa              isolinux Loader
+# http://syslinux.zytor.com/pxe.php
+0      ulelong 0x007c05ea              pxelinux Loader
+0      ulelong 0x60669c66              pxelinux Loader
+
 # added by Joerg Jenderek
 # In the second sector (+0x200) are variables according to grub-0.97/stage2/asm.S or
 # grub-1.94/kern/i386/pc/startup.S
index cdd7c931c98581cae6b06c54f4440a8908aeecdb..e897ed68da10e75387d1dd38d6c24427e9386596 100644 (file)
@@ -4,15 +4,15 @@
 #
 
 # .BAT files (Daniel Quinlan, quinlan@yggdrasil.com)
-# updated by Joerg Jenderek
+# updated by Joerg Jenderek at Oct 2008
 0      string  @                       
->1     string/cB       \ echo\ off     MS-DOS batch file text
+>1     string/cB       \ echo\ off     DOS batch file text
 !:mime text/x-msdos-batch
->1     string/cB       echo\ off       MS-DOS batch file text
+>1     string/cB       echo\ off       DOS batch file text
 !:mime text/x-msdos-batch
->1     string/cB       rem\            MS-DOS batch file text
+>1     string/cB       rem\            DOS batch file text
 !:mime text/x-msdos-batch
->1     string/cB       set\            MS-DOS batch file text
+>1     string/cB       set\            DOS batch file text
 !:mime text/x-msdos-batch
 
 
 # Uncommenting only the first two lines will cover about 2/3 of COM files,
 # but it isn't feasible to match all COM files since there must be at least
 # two dozen different one-byte "magics".
-#0     byte            0xe9            DOS executable (COM)
-#>0x1FE leshort                0xAA55          \b, boot code
+# test too generic ?
+0      byte            0xe9            DOS executable (COM)
+>0x1FE leshort         0xAA55          \b, boot code
 >6     string          SFX\ of\ LHarc  (%s)
 0      belong  0xffffffff              DOS executable (device driver)
 #CMD640X2.SYS
 >>77   string  >\x40                   
 >>>77  string  <\x5B                   
 >>>>77 string  x                       \b, name: %.8s
-#0     byte            0x8c            DOS executable (COM)
-# 0xeb conflicts with "sequent" magic
-#0     byte            0xeb            DOS executable (COM)
-#>0x1FE leshort                0xAA55          \b, boot code
-#>85   string          UPX             \b, UPX compressed
-#>4    string          \ $ARX          \b, ARX self-extracting archive
-#>4    string          \ $LHarc        \b, LHarc self-extracting archive
-#>0x20e string         SFX\ by\ LARC   \b, LARC self-extracting archive
+# test too generic ?
+0      byte            0x8c            DOS executable (COM)
+# updated by Joerg Jenderek at Oct 2008
+0      ulelong         0xffff10eb      DR-DOS executable (COM)
+# byte 0xeb conflicts with "sequent" magic leshort 0xn2eb
+0      ubeshort&0xeb8d >0xeb00         
+# DR-DOS STACKER.COM SCREATE.SYS missed
+>0     byte            0xeb            DOS executable (COM)
+>>0x1FE leshort                0xAA55          \b, boot code
+>>85   string          UPX             \b, UPX compressed
+>>4    string          \ $ARX          \b, ARX self-extracting archive
+>>4    string          \ $LHarc        \b, LHarc self-extracting archive
+>>0x20e string         SFX\ by\ LARC   \b, LARC self-extracting archive
+# updated by Joerg Jenderek at Oct 2008
 #0     byte            0xb8            COM executable
+0      uleshort&0x80ff 0x00b8          
 # modified by Joerg Jenderek
->1     lelong          !0x21cd4cff     for DOS
+>1     lelong          !0x21cd4cff     COM executable for DOS
 # http://syslinux.zytor.com/comboot.php
 # (32-bit COMBOOT) programs *.C32 contain 32-bit code and run in flat-memory 32-bit protected mode
 # start with assembler instructions mov eax,21cd4cffh
->1     lelong          0x21cd4cff      (32-bit COMBOOT)
+0      uleshort&0xc0ff 0xc0b8          
+>1     lelong          0x21cd4cff      COM executable (32-bit COMBOOT)
 0      string  \x81\xfc                
 >4     string  \x77\x02\xcd\x20\xb9    
 >>36   string  UPX!                    FREE-DOS executable (COM), UPX compressed
 252    string Must\ have\ DOS\ version DR-DOS executable (COM)
+# added by Joerg Jenderek at Oct 2008
+# GRR search is not working
+#34    search/2        UPX!            FREE-DOS executable (COM), UPX compressed
+34     string  UPX!                    FREE-DOS executable (COM), UPX compressed
+35     string  UPX!                    FREE-DOS executable (COM), UPX compressed
 # GRR search is not working
 #2     search/28       \xcd\x21        COM executable for MS-DOS
 #WHICHFAT.cOM