home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ftp.barnyard.co.uk
/
2015.02.ftp.barnyard.co.uk.tar
/
ftp.barnyard.co.uk
/
cpm
/
walnut-creek-CDROM
/
CPM
/
BDOS
/
Z80DS231.LBR
/
Z80DHDR.LZB
/
Z80DHDR.LIB
Wrap
Text File
|
2000-06-30
|
5KB
|
156 lines
;
; Z80DOS - Z80 Disk Operating System Nov 15, 1988
;
; Version 2.31 Fast directory lookup for random record fix
; Date: 15 Nov 88
; Update: Eugene Nolan
;
;-----------------------------------------------------------------------
;
; Version 2.3 Fast directory lookup, ZRL compatiblity
; Date: 4 Nov 88
; Update: Eugene Nolan
;
;-----------------------------------------------------------------------
;
; Version 2.0a - BETA TEST VERSION - 6 Nov 87 by Carson Wilson
;
; Support file: Z80DHDR.LIB
; Version: 2.0
; Date: 6 Nov 87
; Author: Carson Wilson
; Changes: Added RTC equate. If NO, use internal DOS routine
; instead of BIOS call for get/set time. Default address
; for buffer is 50 hex.
;
; Description: Options and Standard Equates
;
;-----------------------------------------------------------------------
;
; Specify where in memory your BDOS begins and where your BIOS ends.
; The next two equates must be set for the particular system.
; You can use either kilobyte or page boundaries.
;
; The number for "MSize/MPages" is where your BIOS ENDS in memory. For
; standard 64k CP/M systems this is 64 kilobytes/256 pages.
;
; The number for "base" is where your CCP BEGINS in memory. This is
; computed using MSize and a value n which is the size in kilobytes/pages
; of your entire operating system (CCP+BDOS+BIOS). You should be able
; to get these values from the source code of your BIOS.
;
; 1 page = 256 bytes, so 4 pages = 1 kilobyte.
;
; Specify addresses using kilobyte boundaries:
;
; NOTE: Definition of BASE not used if creating a .ZRL file
;
MSIZE EQU 64 ; Standard 64k system size
BASE EQU (MSIZE-9)*1024 ; (MSize-n) where n is size of
; ; BIOS+DOS+CCP in kilobytes
; ; N varies with the length of
; ; your BIOS.
;
; Or, specify addresses using page boundaries:
;
;MPAGES EQU 256 ; 256 page system size
;BASE EQU MPages-37)*256 ; (MPAGES-n) where n is size in
; ; pages of BIOS+DOS+CCP
; ; N varies with the length of
; ; your BIOS.
;
; Standard addresses and equates - don't change the next five equates:
;
RAMLOW EQU 0000H ; Start address memory
;
;****** Comment out the following 2 lines if making a .ZRL file
;
DOS EQU BASE+800H ; Start address DOS
BIOS EQU DOS+00E00H ; Start address BIOS
;
NO EQU 0
YES EQU NOT NO
;
; RTC - Real Time Clock
;
; Set to true if you are using a Real Time Clock as the
; source for your time, and fill in the address at BIOStim below.
;
; Set to false to use a 5 byte buffer in protected memory
; as a substitute for a Real Time Clock, and give the address of
; the 5 byte buffer at label TimeBuf below.
;
; NOTE: If making a ZRL and RTC is TRUE, it may be necessary to
; POKE the RTC JMP into NZCOM's psuedo BIOS BEFORE loading the
; Z80DOS.ZRL file.
;
RTC EQU NO ; Real time clock
;
IF RTC
BIOSTIM EQU BIOS + 57 ; Address of BIOS jump or RTC driver
;
ELSE
TIMEBUF EQU 50H ; Address of 5-byte buffer
ENDIF ; RTC
; ResDsk - You can optionally define an alternate disk for disk reset.
; This is useful in floppy systems with a virtual drive feature.
; By defining a non-virtual drive (drive B in Morrow MD3) as the
; reset disk, you avoid having to switch back to disk A every time a
; disk reset is performed. However, this requires that you always
; have a diskette in drive B:.
;
;
RESDSK EQU 0 ; CP/M default is disk A for resets
; ; 0=A, 1=B, 2=C, etc.
;
; Options - Bit 0: public file enable(1)/disable(0)
; Bit 1: delay 256 characters active(1)/disable(0)
;
OPTIONS EQU 00000011B ; Enable public file and delay
;
;-----------------------------------------------------------------------
;
; The remaining equates should stay the same for all systems:
;
;-----------------------------------------------------------------------
;
; Standard BIOS function offsets:
;
BOOT EQU BIOS+00000H ; BIOS cold boot
WBOOT EQU BIOS+00003H ; BIOS warm boot
CONST EQU BIOS+00006H ; BIOS console status
CONIN EQU BIOS+00009H ; BIOS console input
CONOUT EQU BIOS+0000CH ; BIOS console output
LIST EQU BIOS+0000FH ; BIOS list output
PUNCH EQU BIOS+00012H ; BIOS punch output
READER EQU BIOS+00015H ; BIOS reader input
HOME EQU BIOS+00018H ; BIOS home disk
SELDSK EQU BIOS+0001BH ; BIOS select disk
SETTRK EQU BIOS+0001EH ; BIOS select track
SETSEC EQU BIOS+00021H ; BIOS select sector
SETDMA EQU BIOS+00024H ; BIOS set DMA address
READ EQU BIOS+00027H ; BIOS read 128 bytes
WRITE EQU BIOS+0002AH ; BIOS write 128 bytes
LISTST EQU BIOS+0002DH ; BIOS list status
SECTRN EQU BIOS+00030H ; BIOS sector translation
;
; Internal definitions:
;
CONTC EQU 003H ; Key to generate warm boot
CONTH EQU 008H ; Backspace
CONTS EQU 013H ; Control-S
TAB EQU 009H ; Tab
LF EQU 00AH ; Line feed
CR EQU 00DH ; Carriage return
CONTP EQU 010H ; Set/reset print flag
CONTX EQU 018H ; Delete line (backspaces)
DRVSEP EQU 03AH ; Drive seperator (:)
RUBOUT EQU 07FH ; Delete last char
;
MAXCMD EQU 40 ; Number of valid DOS commands
;
; END Z80DHDR.LIB
;