Hi,

the DDT defined in device.h differs from that used by MS-DOS for FAT32.  
(Applicable to MS-DOS 7.10+ only.) MS-DOS includes the 12 reserved FAT32  
BPB bytes in the BPBs contained within the DDT. MS-DOS also removes the 6  
reserved bytes behind the second BPB in the DDT. The ddt_flags field is  
set to 20h by MS-DOS for FAT32 partitions, but I think that's less  
important than the layout and size difference. Here's a correction:

...
   bpb ddt_bpb;                  /* BIOS Parameter Block */
#ifdef WITHFAT32
   UBYTE ddt_bpbreserved[12];    /* part of FAT32 BPB above */
#endif
   UBYTE ddt_flags;
   /* bit 5: 32-bit FAT
      bit 6: 16-bit FAT (else 12-bit FAT)
      bit 7: unsupportable disk (all accesses will return Not Ready) */
   UWORD ddt_FileOC;             /* Count of Open files on Drv */
   UBYTE ddt_type;               /* device type       */
   UWORD ddt_descflags;          /* bit flags describing drive */
   UWORD ddt_ncyl;               /* number of cylinders
                                    (for partition only, if hard disk) */
   bpb ddt_defbpb;               /* BPB for default (highest) capacity  
supported */
#ifdef WITHFAT32
   UBYTE ddt_defbpbreserved[12]; /* part of FAT32 BPB above */
#else
   UBYTE ddt_reserved[6];        /* (part of BPB above) */
#endif
...

Regards,
Christian

------------------------------------------------------------------------------
Enter the BlackBerry Developer Challenge  
This is your chance to win up to $100,000 in prizes! For a limited time, 
vendors submitting new applications to BlackBerry App World(TM) will have
the opportunity to enter the BlackBerry Developer Challenge. See full prize  
details at: http://p.sf.net/sfu/Challenge
_______________________________________________
Freedos-kernel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel

Reply via email to