System information
Sample Random Access Program for CP/M 2.0
 0100 org 100h ; base of tpa
 ;
 0000 = reboot  equ 0000h ; system reboot
 0005 = bdos  equ 0005h ; bdos entry point
 ;
 0001 = coninp  equ 1 ; console input function
 0002 = conout  equ 2 ; console output function
 0009 = pstring  equ 9 ; print string function
 000A = rstring  equ 10 ; read console buffer
 000C = version  equ 12 ; retrun version nmber
 000F = openf  equ 15 ; file open function
 0010 = closef  equ 16 ; close function
 0016 = makef  equ 22 ; make file function
 0021 = readr  equ 33 ; read random
 0022 = writer  equ 34 ; write random
 ;
 005C = fcb  equ 005ch ; default file control block
 007D = ranrec  equ fcb+33 ; random record position
 007F = ranovf  equ fcb+35 ; high order (overflow)
 ; byte
 0080 = buff  equ 0080h ; buffer address
 ;
 000D = cr  equ 0dh ; carriage return
 000A = lf  equ 0ah ; line feed
 ;
 ; load sp, set-up file for random access
 ;
 0100 31B702  lxi sp,stack
 ;
 ; version 2.0
 0103 0E0C  mvi c,version
 0105 CD0500 call  bdos
 0108 FE20  cpi 20h ; version 2.0 or better?
 010A D21601   jnc versok
 ; bad version, message and go back
5.5 A Sample Random Access Program CP/M Operating System Manual
5-47










