noiflist
;
DS0XM	EQU	Offset $
    DSEG 0
	ORG	DS0XM
;
   if HMDRIVE
; Disk Parameter Header.
DRV_M	DB	0		;False DPH start, drive select
DPH_M	DW	0		;Sector translation table address
	DW  0000h,0000h,0000h	;CP/M workspace
	DW  (Offset DIRBUF), (Offset DPBHMD)	;Directory buffer, DPB pointer
	DW  (Offset CSVM),   (Offset ALVM)	;Checksum, Allocation vectors
;
; Disk Parameter Block.
DSM_M	EQU	01FCH			;Allocation vector size
ALVZ_M	EQU	(DSM_M +7)/4
CSVZ_M	EQU	0 +3 /4			;Checksum vector size
	DB	HMDTYPE			;Drive type
DPBHMD	DW	8 * 2 * 1		;Sectors per track (8 * 1/2 megs)
	DB	04,	15,	0	;BSF, SIB-1, EXTMSK deblocking masks
	DW	DSMM-1, 512 -1		;Allocation size, directory count
	DB	11111111b,00000000b	;Directory allocation vectors
	DW	HIGHBIT,	4	;Checked entries, reserved tracks
;
   endif
;
   if not HMDRIVE
; Disk Parameter Header.
DRV_M	DB	0		;False DPH start, drive select
DPH_M	DW	0		;Sector translation table address
	DW  0000h,0000h,0000h	;CP/M workspace
	DW  (Offset DIRBUF), (Offset DPBXM)	;Directory buffer, DPB pointer
	DW  (Offset CSVM),   (Offset ALVM)	;Checksum, Allocation vectors
;
; Disk Parameter Block.
DSM_M	EQU 	(XMSIZE/4)*2		;Allocation vector size
ALVZ_M	EQU	(DSM_M +7)/4
CSVZ_M	EQU	0 +3 /4			;Checksum vector size
	DB	80H
DPBXM	DW	XMSIZE/4		;Sectors per track
	DB	04,	15,	01H	;BSF, SIB-1, EXTMSK deblocking masks
	DW	DSM_M-1, 128 -1		;Allocation size, directory count
	DB	11000000b,00000000b	;Directory allocation vectors
	DW	HIGHBIT,	0	;Checked entries, reserved tracks
;
   endif
 