в аттаче исходники одной из версий cp/m биоса для корвета
там все красиво по файлам разбито

BIOS-1.2.zip

и еще доки по cp/m и корветовмскому биосу для нее в архиве

CPM-Docs.zip

такой финт (с описанием в нулевом секторе) усложняет немного
драйвер дисковода, но делает более универсальным систему ...

а вот кусок из доки по биосу корвета

Код:
;    Содержимое информационного сектора для  5.25" (или 3.5")
; двухстороннего  диска,  расформатированного  на  80 дорожек
; при  двойной плотности.

;E физические параметры дискаF

 1:    DW LoadAdress ; адрес, с которого начинается загрузка
 3:    DW RunAdress  ; адрес,куда передается управление после
                     ; загрузки
 5:    DW Count      ; число загружаемых физических секторов
 7:    DB 0          ; если значение байта 1 -8" диск, если 0
                     ; - 5.25"
 8:    DB 1          ; способ записи: 0 - FM; 1 - MFM
 9:    DB 96(135)    ; число дорожек  на дюйм: 0 - 48 TpI
                     ; 1 - 96 TpI, 2 - 135 TpI
10:    DB 1          ; если значение байта 1 - фактора смещения
                     ; нет. Если <> 1 - байты 33-128
                     ; информационного сектора содержат таблицу
                     ; перевода секторов, причем значение байта
                     ; равно размеру таблицы.
11:    DB 3          ; размер физического сектора:0 - 128 байт,
                     ; 1 - 256 байт, 2 - 512 байт и  3 - 1024
12:    DB 1          ; информация о сторонах диска: 0 -
                     ; односторонний диск, 1 - двухсторонний,
                     ; причем сектора нумеруются от 1 до n 
                     ; с каждой стороны, четные логические
                     ; дорожки с нулевой стороны, нечетные с
                     ; первой.
13:    DW 5          ; число физических секторов на дорожке
15:    DW 80         ; число дорожек на диске (с одной стороны)

; Eлогические параметры дискаF

17:    DW 40         ; число логических секторов на дорожке
19:    DB  4         ; фактор сдвига блока распределения данных
20:    DB 15         ; маска блока распределения данных
21:    DB  0         ; маска размера
22:    DW 394        ; объем памяти на диске в блоках минус 1
24:    DW 127        ; число входов в директорию диска минус 1
26:    DB 192        ; показывает, какие блоки зарезервированы
27:    DB  0         ; под директорию
28:    DW 32         ; размер вектора контроля директории
30:    DW  2         ; число системных дорожек на диске
32:    DB CheckSum   ;контрольная сумма служебной информации