There is a limit on the maximum size of any particular disk of 4 billion (2^32) * the block size, or 0xFFFFFFFF * sbBlkSize. If sbBlkSize is 0x0200 as you say then the limit is about 2 Gb. I'd guess that to get around this either DVD's use a larger block size (0x2000 would adequately cover the 4.5Gb physical maximum on a DVD) or use HFS+ or some other system. Remember the only real reason why it is bad to use large block sizes is the wasteage that occurs with small files. On a DVD you typically have less than 20 files, some of which are huge so the lost space is minimal.
Pierre Duhem wrote:
Hi everybody,
A little question:
In the device/driver descriptor block (sector 0 of a disk), the first three fields are: sbSig: Integer; {device signature} sbBlkSize: Integer; {block size of the device} sbBlkCount: LongInt; {number of blocks on the device}
For sbBlkSize, I always got 512 on magnetic hard disks and CD-ROMs (magneto-optical disks are another matter). Now, what happens when the disk contains more than 0xFFFFFFFF * 0x0200 bytes? This could be the case with a DVD-ROM, for instance.