Родной драйвер DW определяет размер диска при загрузке - для этого в драйвере есть база характеристик всех дисков, которые он поддерживает, и из этой базы в момент загрузки автоматически выбирается нужный вариант.
Код:; 1 2 3 4 5 6 7 8 ;number of heads
;
DWTAB: .BYTE 2,4,0,6,5 ;DW type codes
;
; 1 7 ;added DW type codes
; 3 ;...
;
; 5 5 5 5
; 1 2 2 2
;
; 5 5
; 0 3
;
; 3
; 1
.EVEN
DEVCHR: ;RDxx device characteristics table
; C H CYL REAL USER HIGH LOW USER DEVICE
; O E SIZE SIZE SIZE SIZE SIZE
; D A
; E D
; S
$TYPE$ TYP50 4. 153. 9792. 9727. 0. 9792. 9727. ;RD50#
$TYPE$ TYP51 4. 306. 19584. 19519. 0. 19584. 19519. ;RD51
$TYPE$ TYP31 4. 615. 39360. 39295. 0. 39360. 39295. ;RD31*$
$TYPE$ TYP52C 5. 697. 55760. 55679. 0. 55760. 55679. ;RD52* CDC
;no known 6.
$TYPE$ TYP52Q 8. 512. 65536. 65407. 1. 65535. 65407. ;RD52*$ QUANTUM
$TYPE$ TYP52A 7. 645. 72240. 72127. 6705. 65535. 65535. ;RD52* ATASI
$TYPE$ TYP53 8. 1024. 131072. 130943. 65535. 65535. 65535. ;RD53*$
;
; Note:
;
; For the RD53 there are 65537. blocks that are left over after allocating
; the maximum number of blocks that RT-11 allows (65535.) for partition 0.
; Since 65537. will not fit in a PDP-11 unsigned word, the remainder size
; used in the $TYPE$ macro is 65535.
;
;$TYPE$ TYP53 8. 1024. 131072. 130943. 65537. 65535. 65535. ;RD53*$
;
; A B C D E F G
;
; C=16.*A*B Physical size of device
; D=16.*A*(B-1)-1 usable size (first block reserved for start-up
; diagnostics and last cyl reserved for FCT)
; E=MIN(MAX(C-65535.,0),65535.) Physical size over 65535. blocks
; F=MIN(C,65535.) Partition 0 physical size
; G=MIN(D,65535.) Partition 0 useable size
;
;# bit indicates RD50
;* contains FCT
;$ seek test required to determine

