home *** CD-ROM | disk | FTP | other *** search
/ CP/M / CPM_CDROM.iso / jsage / znode3 / uploads / zd-xb11.lbr / Z3BASE.LZB / Z3BASE.LIB
Encoding:
Text File  |  1993-06-07  |  6.9 KB  |  223 lines

  1. ;****************************************************************
  2. ;*                                *
  3. ;*  Z3BASE.LIB -- BASE ADDRESSES FOR ZCPR3 SYSTEM ON SB180FX    *
  4. ;*         SINGLE BOARD COMPUTER BY MICROMINT            *
  5. ;*                                *
  6. ;* MEMORY MAP OF SYSTEM:                    *
  7. ;*                                *
  8. ;*    ADDRESS RANGE      SIZE    FUNCTION            *
  9. ;*    -------------    ------- --------            *
  10. ;*        0 -   FF    256 B    STANDARD CP/M BUFFERS        *
  11. ;*      100 - C7FF     ~49.5K TPA                *
  12. ;*     C800 - CFFF       2  K ZCPR33 COMMAND PROCESSOR     *
  13. ;*     D000 - DDFF       3.5K ZDDOS10 OPERATING SYSTEM    *
  14. ;*     DE00 - E9FF       3.0K XBIOS (VER 1.1)            *
  15. ;*     EA00 - EFFF       1.5K INPUT/OUTPUT PACKAGE        *
  16. ;*     F000 - F7FF       2.0K RESIDENT COMMAND PACKAGE    *
  17. ;*     F800 - F9FF       0.5K FLOW COMMAND PACKAGE        *
  18. ;*     FA00 - FBD7    472 B    MEMORY-BASED NAMED DIRECTORY    *
  19. ;*     FBD8 - FCFF    296 B    ZDDOS CLOCK MODULE        *
  20. ;*     FD00 - FD7F    128 B    ZCPR3 SHELL STACK        *
  21. ;*     FD80 - FDCF     80 B    ZCPR3 MESSAGE BUFFERS        *
  22. ;*                BYTE 0:  ERROR FLAG (Z/NZ)    *
  23. ;*                BYTE 1:  IF (8 LEVELS)        *
  24. ;*                BYTE 2:  IF ACTIVE (8 LEVELS)    *
  25. ;*                BYTE 3:  Z3 CMD STATUS        *
  26. ;*                    00B - NORMAL        *
  27. ;*                    01B - SHELL        *
  28. ;*                    10B - ERROR        *
  29. ;*                BYTES 4&5: ERROR ADDRESS IF 10B *
  30. ;*                BYTE 6: PROGRAM ERROR CODE    *
  31. ;*                BYTE 7: ZEX MESSAGE BYTE    *
  32. ;*                    00B - NORMAL        *
  33. ;*                    01B - Z3 PROMPT     *
  34. ;*                    10B - SUSPEND INTERCEPT *
  35. ;*                BYTE 8: ZEX RUNNING FLAG (0=NO) *
  36. ;*                BYTES 9-10: ADDRESS OF NEXT    *
  37. ;*                    CHAR FOR ZEX TO RETURN    *
  38. ;*                BYTES 11-12: ADDRESS OF FIRST    *
  39. ;*                    CHAR IN ZEX MEMORY-    *
  40. ;*                    BASED FILE BUFFER    *
  41. ;*                BYTE 13: SH CONTROL BYTE    *
  42. ;*                    BIT 0: ENABLE SHCMT    *
  43. ;*                    BIT 1: ENABLE SHECHO    *
  44. ;*                    BIT 7: ENABLE SHELL    *
  45. ;*                        ENTRY WAIT    *
  46. ;*                BYTES 14-15: SHELL SCRATCH    *
  47. ;*                BYTES 10H-2FH: ERROR CMD    *
  48. ;*                BYTES 30H-39H: REGISTERS    *
  49. ;*                BYTES 3AH-3FH: RESERVED     *
  50. ;*                BYTES 40H-4FH: USER-DEFINED    *
  51. ;*     FDD0 - FDF3     36 B    ZCPR3 EXTERNAL FCB        *
  52. ;*     FDF4 - FDFE     11 B    ZCPR3 EXTERNAL PATH        *
  53. ;*     FDFF          1 B    ZCPR3 WHEEL BYTE
  54. ;*     FE00 - FEFF    256 B    ENVIRONMENT DESCRIPTORS     *
  55. ;*                BYTES 00H-7FH:    Z3 PARAMETERS    *
  56. ;*                BYTES 80H-FFH:    Z3 TERMINAL CAP *
  57. ;*     FF00 - FFCF    208 B    MULTIPLE COMMAND LINE BUFFER    *
  58. ;*     FFD0 - FFFF     48 B    ZCPR3 EXTERNAL STACK        *
  59. ;*                                *
  60. ;****************************************************************
  61. ;*
  62. ;*  ZCPR3 BASE EQUATES
  63. ;*
  64. FALSE    EQU    0
  65. TRUE    EQU    NOT FALSE
  66. ;
  67. I8080    EQU    FALSE
  68. ;
  69. Z3REV    EQU    33
  70. MSIZE    EQU    53
  71. ;
  72. CCP    EQU    0C800h        ; address of command processor
  73. CCPS    EQU    10h        ; size of command processor (sectors)
  74. ;
  75. DOS    EQU    0D000h        ; address of BDOS
  76. DOSS    EQU    1Ch        ; size of BDOS (sectors)
  77. ;
  78. CBIOS    EQU    0DE00h        ; address of BIOS
  79. AUXJMP    EQU    0DE51h        ; BIOS auxiliary jump table
  80. ;
  81. BASE    EQU    0
  82. ;
  83. DOSVER    EQU    10h        ; ZDDOS version number
  84. ;
  85. ;  3. EXTERNAL PATH
  86. ;
  87. ;    THE FOLLOWING EQUATES DEFINE THE ADDRESS OF THE ZCPR3 EXTERNAL
  88. ; PATH AND THE NUMBER OF TWO-BYTE ELEMENTS CONTAINED IN THIS PATH (MAXIMUM).
  89. ; IF THERE IS NO ZCPR3 EXTERNAL PATH, BOTH OF THESE VALUES SHOULD BE SET TO 0.
  90. ;
  91. EXPATH    EQU    0FDF4H        ; External path
  92. EXPATHS    EQU    5        ; 5 2-byte path elements
  93.                 ; (path size = expaths*2 + 1)
  94. ;
  95. ;  4. WHEEL BYTE
  96. ;
  97. ;    THE FOLLOWING EQUATE DEFINES THE ADDRESS OF THE ZCPR3 WHEEL BYTE.
  98. ; IF THERE IS NO ZCPR3 WHEEL BYTE, THIS VALUE SHOULD BE SET TO 0.
  99. ;
  100. Z3WHL    EQU    0FDFFH        ; Wheel byte address
  101.  
  102. ;
  103. ;  6. RCP LOCATION
  104. ;
  105. ;    THE FOLLOWING EQUATES DEFINE THE ADDRESS OF THE ZCPR3 RESIDENT
  106. ; COMMAND PACKAGE AND ITS SIZE IN 128-BYTE BLOCKS.  IF THERE IS NO
  107. ; ZCPR3 RESIDENT COMMAND PACKAGE, BOTH OF THESE VALUES SHOULD BE 0.
  108. ;
  109. RCP    EQU    0F000H        ; Resident command package
  110. RCPS    EQU    16        ; 16 128-byte blocks (2k bytes)
  111.  
  112. ;
  113. ;  7. IOP LOCATION
  114. ;
  115. ;    THE FOLLOWING EQUATES DEFINE THE ADDRESS OF THE ZCPR3 INPUT/OUTPUT
  116. ; PACKAGE AND ITS SIZE IN 128-BYTE BLOCKS.  IF THERE IS NO ZCPR3 INPUT/OUTPUT
  117. ; PACKAGE, BOTH OF THESE VALUES SHOULD BE 0.
  118. ;
  119. IOP    EQU    0EA00H        ; Redirectable i/o package
  120. IOPS    EQU    12        ; 12 128-byte blocks (1.5k bytes)
  121.  
  122. ;
  123. ;  8. FCP LOCATION
  124. ;
  125. ;    THE FOLLOWING EQUATES DEFINE THE ADDRESS OF THE ZCPR3 FLOW COMMAND
  126. ; PACKAGE AND ITS SIZE IN 128-BYTE BLOCKS.  IF THERE IS NO ZCPR3 FLOW COMMAND
  127. ; PACKAGE, BOTH OF THESE VALUES SHOULD BE 0.
  128. ;
  129. FCP    EQU    0F800H        ; Flow command package
  130. FCPS    EQU    4        ; 4 128-byte blocks (0.5k bytes)
  131.  
  132. ;
  133. ;  9. ENV LOCATION
  134. ;
  135. ;    THE FOLLOWING EQUATES DEFINE THE ADDRESS OF THE ZCPR3 ENVIRONMENT
  136. ; DESCRIPTOR AND ITS SIZE IN 128-BYTE BLOCKS.  IF THERE IS NO ZCPR3 ENVIRONMENT
  137. ; DESCRIPTOR, BOTH OF THESE VALUES SHOULD BE 0.
  138. ;
  139. Z3ENV    EQU    0FE00H        ; Environment descriptors
  140. Z3ENVS    EQU    2        ; Size of environment descriptor in 128-byte blocks
  141.  
  142. ;
  143. ; 10. SHELL STACK
  144. ;
  145. ;    THE FOLLOWING EQUATES DEFINE THE ADDRESS OF THE ZCPR3 SHELL STACK,
  146. ; THE NUMBER OF ENTRIES PERMITTED IN THE ZCPR3 SHELL STACK, AND THE SIZE
  147. ; OF EACH ENTRY IN THE SHELL STACK IN TERMS OF BYTES.  IF THERE IS NO ZCPR3
  148. ; SHELL STACK, ALL THREE VALUES SHOULD BE 0.
  149. ;
  150. SHSTK    EQU    0FD00H        ; Zcpr3 shell stack
  151. SHSTKS    EQU    4        ; Number of shsize-byte shell stack entries
  152. SHSIZE    EQU    32        ; Size of a shell stack entry
  153.                 ; (stack size = shstks * shsize)
  154.  
  155. ;
  156. ; 11. ZCPR3 MESSAGES
  157. ;
  158. ;    THE FOLLOWING EQUATE DEFINES THE ADDRESS OF THE ZCPR3 MESSAGE BUFFER.
  159. ; THIS BUFFER IS ALWAYS 80 BYTES LONG.    IF THERE IS NO ZCPR3 MESSAGE BUFFER,
  160. ; THIS ADDRESS SHOULD BE 0.
  161. ;
  162. Z3MSG    EQU    0FD80H        ; Zcpr3 message buffer
  163.  
  164. ;
  165. ; 12. EXTERNAL FCB
  166. ;
  167. ;    THE FOLLOWING EQUATE DEFINES THE ADDRESS OF THE ZCPR3 EXTERNAL FCB.
  168. ; THIS BUFFER IS ALWAYS 36 BYTES LONG.    IF THERE IS NO ZCPR3 EXTERNAL FCB,
  169. ; THIS ADDRESS SHOULD BE 0.
  170. ;
  171. EXTFCB    EQU    0FDD0H        ; Zcpr3 external fcb
  172.  
  173. ;
  174. ; 13. NAMED DIRECTORY BUFFER
  175. ;
  176. ;    THE FOLLOWING EQUATES DEFINE THE ADDRESS AND SIZE (IN TERMS OF 18-BYTE
  177. ; ENTRIES) OF THE ZCPR3 NAMED DIRECTORY BUFFER.  IF THERE IS NO SUCH BUFFER,
  178. ; BOTH OF THESE VALUES SHOULD BE 0.
  179. ;
  180. Z3NDIR    EQU    0FA00H        ; Zcpr3 named directory area
  181. Z3NDIRS    EQU    26        ; 14 18-byte named directory elements permitted
  182.                 ; (ndir size = z3ndirs*18 + 1 for trailing 0)
  183.  
  184. ;
  185. ; 14. COMMAND LINE
  186. ;
  187. ;    THE FOLLOWING EQUATES DEFINE THE ADDRESS AND SIZE (IN TERMS OF BYTES)
  188. ; OF THE ZCPR3 COMMAND LINE BUFFER (FORMERLY CALLED THE MULTIPLE COMMAND LINE
  189. ; BUFFER UNDER ZCPR2).    IF THERE IS NO SUCH BUFFER, BOTH OF THESE VALUES SHOULD
  190. ; BE 0.
  191. ;
  192. Z3CL    EQU    0FF00H        ; Zcpr3 command line buffer
  193. Z3CLS    EQU    204        ; Size of command line buffer
  194.  
  195. ;
  196. ; 15. EXTERNAL STACK
  197. ;
  198. ;    THE FOLLOWING EQUATE DEFINES THE ADDRESS OF THE ZCPR3 EXTERNAL STACK.
  199. ; THIS STACK IS ALWAYS 48 BYTES IN SIZE.  IF THERE IS NO SUCH STACK, THIS
  200. ; VALUE SHOULD BE 0.
  201. ;
  202. EXTSTK    EQU    0FFD0H        ; Zcpr3 external stack
  203.  
  204. ;
  205. ; 16. USER EQUATES
  206. ;
  207. ;    THE FOLLOWING EQUATES ARE AVAILABLE FOR THE IMPLEMENTER'S TARGET
  208. ; SYSTEM.  THESE ARE IMPLEMENTATION-DEFINED.
  209.  
  210. ;
  211. ; 17. DRIVE VECTOR
  212. ;
  213. ;    THE FOLLOWING TWO BYTES INDICATE WHICH DRIVES ARE AVAILABLE ON
  214. ; THE SYSTEM.  SET CORRESPONDING BIT TO 1, IF DRIVE IS AVAILABLE.
  215. ;
  216. ;        PONMLKJIHGFEDCBA
  217. DRVEC    EQU    1111000000111111b
  218.  
  219. ;
  220. ;*
  221. ;*  END OF ZCPR3 BASE EQUATES
  222. ;*
  223.