Формат блока DDCB
для DOS версий 2.х и 3.х:
| (0) 1 | drv_num | номер устройства (0 соответствует устройству А:, 1 - В: и т.д.) |
| (+1) 1 | drv_numd | дополнительный номер устройства внутри драйвера |
| (+2) 2 | sec_size | размер сектора в байтах |
| (+4) 1 | clu_size | число, на единицу меньшее количества секторов в кластере |
| (+5) 1 | clu_base | число, являющееся степенью 2 числа секторов в кластере |
| (+6) 2 | boot_siz | количество зарезервированных секторов (boot-сектора, начало корневого каталога) |
| (+8) 1 | fat_num | количество копий FAT |
| (+9) 2 | max_dir | максимальное число дескрипторов файлов в корневом каталоге (т.е. максимальное число файлов, которое может содержать корневой каталог на этом устройстве) |
| (+11) 2 | data_sec | номер первого сектора данных на диске (номер сектора, соответствующего кластеру номер 2) |
| (+13) 2 | hi_clust | максимальное количество кластеров (равно увеличенному на 1 количеству кластерова данных) |
| (+15) 1 | fat_size | количество секторов, занимаемых одной копией FAT |
| (+16) 2 | root_sec | номер первого сектора корневого каталога |
| (+18) 4 | drv_addr | FAR-адрес заголовка драйвера, обслуживающего данное устройство |
| (+22) 1 | media | байт описания среды носителя данных |
| (+23) 1 | acc_flag | флаг доступа, 0 означает, что к устройству был доступ |
| (+24) 4 | next | адрес следующего блока DDCB, для последнего блока в поле смещения находится число FFFF |
| ----------- только для DOS 2.x -------------- | ||
| (+28) 2 | dir_clu | номер начального кластера текущего каталога (0 для корневого каталога) |
| (+30) 64 | dir_path | строка в формате ASCIIZ, содержащая путь к текущему каталогу |
| --------------- DOS 3.х ------------------------- | ||
| (+28) 2 | reserv1 | зарезервировано, обычно равно 0 |
| (+30) 2 | built | число FFFF в этом поле означает, что блок DDCB был построен |
для DOS версии 4.х :
| (0) 1 | drv_num | номер устройства (0 соответствует устройству А:, 1 - В: и т.д.) |
| (+1) 1 | drv_numd | дополнительный номер устройства внутри драйвера |
| (+2) 2 | sec_size | размер сектора в байтах |
| (+4) 1 | clu_size | число, на единицу меньшее количества секторов в кластере |
| (+5) 1 | clu_base | число, являющееся степенью 2 числа секторов в кластере |
| (+6) 2 | boot_siz | количество зарезервированных секторов (boot-сектора, начало корневого каталога) |
| (+8) 1 | fat_num | количество копий FAT |
| (+9) 2 | max_dir | максимальное число дескрипторов файлов в корневом каталоге (т.е. максимальное число файлов, которое может содержать корневой каталог на этом устройстве) |
| (+11) 2 | data_sec | номер первого сектора данных на диске (номер сектора, соответствующего кластеру номер 2) |
| (+13) 2 | hi_clust | максимальное количество кластеров (равно увеличенному на 1 количеству кластеров данных) |
| (+15) 1 | fat_size | количество секторов, занимаемых одной копией FAT |
| (+16) 1 | reserv1 | зарезервировано |
| (+17) 2 | root_sec | номер первого сектора корневого каталога |
| (+19) 4 | drv_addr | FAR-адрес заголовка драйвера, обслуживающего данное устройство |
| (+23) 1 | media | байт описания среды носителя данных |
| (+24) 1 | acc_flag | флаг доступа, 0 означает, что к устройству был доступ |
| (+25) 4 | next | адрес следующего блока DDCB, для последнего блока в поле смещения находится число FFFF |
| (+29) 2 | reserv2 | зарезервироано |
| (+31) 2 | built | число FFFF в этом поле означает, что блок DDCB был построен |