System information
 ;
 SETTRK: ;SET TRACK ADDRESS GIVEN BY C
 17A7 216A18  LXI H,IOT
 17AA 71 MOV M,C
 17AB C9  RET
 ;
 SETSEC: ;SET SECTOR NUMBER GIVEN BY C
 17AC 216B18  LXI H,IOS
 17AF 71  MOV M,C
 17B0 C9  RET
 SECTRAN:
  ;TRANSLATE SECTOR BC USING TABLE AT DE
 17B1 0600  MVI B,0 ;DOUBLE PRECISION SECTOR NUMBER IN BC
 17B3 EB XCHG ;TRANSLATE TABLE ADDRESS TO HL
 17B4 09  DAD B ;TRANSLATE(SECTOR) ADDRESS
 17B5 7E  MOV A,M ;TRANSLATED SECTOR NUMBER TO A
 17B6 326B18  STA IOS
 17B9 6F  MOV L,A ;RETURN SECTOR NUMBER IN L
 17BA C9  RET
 ;
 SETDMA: ;SET DMA ADDRESS GIVEN BY REGS B,C
 17BB 69  MOV L,C
 17BC 60  MOV H,B
 17BD 226C18  SHLD IOD
 17C0 C9  RET
 ;
 READ: ;READ NEXT DISK RECORD (ASSUMING DISK/TRK/SEC/DMA
SET)
 17C1 0E04  MVI C,READF ;SET TO READ FUNCTION
 17C3 CDE017  CALL SETFUNC
 17C6 CDF017  CALL WAITIO ;PERFORM READ FUNCTION
 17C9 C9  RET ;MAY HAVE ERROR SET IN REG-A
 ;
 ;
 WRITE: ;DISK WRITE FUNCTION
 17CA 0E06  MVI C,WRITF
 17CC CDE017  CALL SETFUNC ;SET TO WRITE FUNCTION
 17CF CDF017  CALL WAITIO
 17D2 C9  RET ;MAY HAVE ERROR SET
 ;
 ;
 ; UTILITY SUBROUTINES
 PRMSG: ;PRINT MESSAGE AT H,L TO 0
 17D3 7E  MOV A,M
 17D4 B7  ORA A ;ZERO?
Appendix A : The MDS-800 BIOS CP/M Operating System Manual
A-10










