home *** CD-ROM | disk | FTP | other *** search
/ CP/M / CPM_CDROM.iso / jsage / znode3 / z80dos / z80dos23.lbr / Z80DHDR.LZB / Z80DHDR.LIB
Encoding:
Text File  |  1993-06-08  |  4.9 KB  |  152 lines

  1. ;
  2. ; Z80DOS - Z80 Disk Operating System
  3. ;
  4. ; Version 2.3    Fast directory lookup, ZRL compatiblity
  5. ; Date:        4 Nov 88
  6. ; Update:    Eugene Nolan
  7. ;
  8. ;-------------------------------------------------------------
  9. ; Version 2.0a - BETA TEST VERSION - 6 Nov 87 by Carson Wilson
  10. ;
  11. ; Support file:    Z80DHDR.LIB
  12. ; Version:    2.0
  13. ; Date:        6 Nov 87
  14. ; Author:    Carson Wilson
  15. ; Changes:    Added RTC equate.  If false, use internal DOS routine
  16. ;        instead of BIOS call for get/set time.  Default address
  17. ;        for buffer is 50 hex.
  18. ;
  19. ; Description:    Options and Standard Equates
  20.         
  21. ; --------------------------------------------------------------------
  22.  
  23. ; Specify where in memory your BDOS begins and where your BIOS ends.
  24. ; The next two equates must be set for the particular system.
  25. ; You can use either kilobyte or page boundaries.
  26. ;
  27. ; The number for "MSize/MPages" is where your BIOS ENDS in memory.  For
  28. ; standard 64k CP/M systems this is 64 kilobytes/256 pages.
  29. ;
  30. ; The number for "base" is where your CCP BEGINS in memory.  This is
  31. ; computed using MSize and a value n which is the size in kilobytes/pages
  32. ; of your entire operating system (CCP+BDOS+BIOS).  You should be able
  33. ; to get these values from the source code of your BIOS.
  34. ;
  35. ; 1 page = 256 bytes, so 4 pages = 1 kilobyte.
  36. ;
  37.  
  38. ; Specify addresses using kilobyte boundaries:
  39.  
  40. ; NOTE: Definition of BASE not used if creating a .ZRL file
  41.  
  42. MSize    equ    64            ; Standard 64k system size
  43. base    equ    (MSize-9)*1024        ; (MSize-n) where n is size of
  44.                     ; BIOS+DOS+CCP in kilobytes
  45.                     ; N varies with the length of
  46.                     ; ..your BIOS.
  47.  
  48. ; Or, specify addresses using page boundaries:
  49.  
  50. ;MPages equ    256            ; 256 page system size
  51. ;base    equ    (MPages-37)*256     ; (mpages-n) where n is size in
  52.                     ; ..pages of BIOS+DOS+CCP
  53.                     ; N varies with the length of
  54.                     ; ..your BIOS.
  55.  
  56. ; Standard addresses and equates - don't change the next five equates:
  57.  
  58. RamLow    equ    0000h            ; Start address memory
  59.  
  60. ;****** Comment out the following 2 lines if making a .ZRL file
  61. DOS    equ    base+800h        ; Start address DOS
  62. BIOS    equ    DOS+00e00h        ; Start address BIOS
  63.  
  64. false    equ    0
  65. true    equ    not false
  66.  
  67.  
  68. ; RTC - Real Time Clock
  69. ;
  70. ;     Set to true if you are using a Real Time Clock as the 
  71. ; source for your time, and fill in the address at BIOStim below.  
  72. ;
  73. ;    Set to false to use a 5 byte buffer in protected memory 
  74. ; as a substitute for a Real Time Clock, and give the address of 
  75. ; the 5 byte buffer at label TimeBuf below.
  76. ;
  77. ; NOTE: If making a ZRL and RTC is TRUE, it may be necessary to
  78. ;    POKE the RTC JMP into NZCOM's psuedo BIOS BEFORE loading the
  79. ;    Z80DOS.ZRL file.
  80.  
  81. RTC    equ    false        ; Real time clock
  82.  
  83.      if    RTC
  84. BIOStim    equ    BIOS + 57    ; Address of BIOS jump or RTC driver
  85.  
  86.      else
  87. TimeBuf    equ    50h        ; Address of 5-byte buffer 
  88.      endif    ; RTC
  89.  
  90.  
  91. ; ResDsk - You can optionally define an alternate disk for disk reset.
  92. ;       This is useful in floppy systems with a virtual drive feature.
  93. ;       By defining a non-virtual drive (drive B in Morrow MD3) as the
  94. ;       reset disk, you avoid having to switch back to disk A every time a
  95. ;       disk reset is performed.  However, this requires that you always
  96. ;       have a diskette in drive B:.
  97. ;
  98.  
  99. ResDsk    equ    0    ; CP/M default is disk A for resets
  100.             ; ..0=A, 1=B, 2=C, etc.
  101.  
  102.  
  103. ; Options -    Bit 0: public file enable(1)/disable(0)
  104. ;        Bit 1: delay 256 characters active(1)/disable(0)
  105. ;
  106. Options    equ    00000011B        ; Enable public file and delay
  107.  
  108.  
  109. ; -------------------------------------------------------------
  110. ;
  111. ; The remaining equates should stay the same for all systems:
  112. ;
  113. ; -------------------------------------------------------------
  114.  
  115. ; Standard BIOS function offsets:
  116.  
  117. Boot    equ    BIOS+00000h        ; BIOS cold boot
  118. WBoot    equ    BIOS+00003h        ; BIOS warm boot
  119. ConSt    equ    BIOS+00006h        ; BIOS console status
  120. ConIn    equ    BIOS+00009h        ; BIOS console input
  121. ConOut    equ    BIOS+0000ch        ; BIOS console output
  122. list    equ    BIOS+0000fh        ; BIOS list output
  123. punch    equ    BIOS+00012h        ; BIOS punch output
  124. reader    equ    BIOS+00015h        ; BIOS reader input
  125. home    equ    BIOS+00018h        ; BIOS home disk
  126. SelDsk    equ    BIOS+0001bh        ; BIOS select disk
  127. SetTrk    equ    BIOS+0001eh        ; BIOS select track
  128. SetSec    equ    BIOS+00021h        ; BIOS select sector
  129. SetDMA    equ    BIOS+00024h        ; BIOS set DMA address
  130. read    equ    BIOS+00027h        ; BIOS read 128 bytes
  131. write    equ    BIOS+0002ah        ; BIOS write 128 bytes
  132. ListSt    equ    BIOS+0002dh        ; BIOS list status
  133. SecTrn    equ    BIOS+00030h        ; BIOS sector translation
  134.  
  135. ; Internal definitions:
  136.  
  137. ContC    equ    003h            ; Key to generate warm boot
  138. ContH    equ    008h            ; Backspace
  139. ContS    equ    013h            ; Control-S
  140. tab    equ    009h            ; Tab
  141. lf    equ    00ah            ; Line feed
  142. cr    equ    00dh            ; Carriage return
  143. ContP    equ    010h            ; Set/reset print flag
  144. ContX    equ    018h            ; Delete line (backspaces)
  145. DrvSep    equ    03ah            ; Drive seperator (:)
  146. rubout    equ    07fh            ; Delete last char
  147. ;
  148. MaxCmd    equ    40            ; Number of valid DOS commands
  149.  
  150. ; END Z80DHDR.LIB
  151.  
  152.