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
Text File  |  2000-06-30  |  5KB  |  156 lines

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