; Z3BASE - Maximum Configuration ; FOR: MORROW MD2; REVISION 1 BOARD; 59K SIZE; SINGLE AND DOUBLE SIDED DRIVES ; ;**************************************************************** ;* * ;* Z3BASE.LIB -- Base Addresses for Z-System * ;* for Morrow Bootable Disks * ;* * ;* These addresses are used by the following System * ;* Segments: * ;* * ;* Segment Function * ;* ------- -------- * ;* ZRDOS Echelon Z80 Replacement Disk Operating * ;* System, Version 1.7 (Public ZRDOS Plus) * ;* CBIOSZ Morrow-compatible BIOS with bug fixes * ;* and ZCPR3 initialization routines * ;* ZCPR3 Echelon Z80 Command Processor * ;* Replacement, Version 3.0 (ZCPR3) * ;* *.ENV All Environment Descriptors * ;* *.FCP All Flow Command Packages * ;* *.NDR All Named Directory Definition Files * ;* *.RCP All Resident Command Packages * ;* *.IOP All Input/Output Packages * ;* * ;* * ;* Memory Map of System (for CCP EQU 0C800H): * ;* * ;* Address Range Size Function * ;* ------------- ------- -------- * ;* 0 - FF 256 b Standard CP/M Buffers except * ;* 100 - CFFF ~52 K Transient Program Area * ;* C800 - CFFF 2K ZCPR3 Command Processor * ;* D000 - DDFF 3.5 K ZRDOS * ;* DE00 - EBFF 3.5 K CBIOSZ with Morrow extra buffers* ;* EC00 - F3FF 2K Resident Command Package * ;* F400 - F9FF 1.5 K Input/Output Package * ;* FA00 - FBFF 512 b Flow Command Package * ;* FC00 - FC7F 128 b ZCPR3 Shell Stack * ;* FC80 - FCCF 80 b ZCPR3 Message Buffers * ;* Byte 0: Error Flag (Z/NZ) * ;* Byte 1: IF (8 Levels) * ;* Byte 2: IF Active (8 Levels) * ;* Byte 3: Z3 Cmd Status * ;* 00B - Normal * ;* 01B - Shell * ;* 10B - Error * ;* Bytes 4&5: Error Address if 10B * ;* Byte 6: Program Error Code * ;* Byte 7: ZEX Message Byte * ;* 00B - Normal * ;* 01B - Z3 Prompt * ;* 10B - Suspend Intercept * ;* Byte 8: ZEX Running Flag (0=No) * ;* Bytes 9-10: Address of Next * ;* Char for ZEX to Return * ;* Bytes 11-12: Address of First * ;* Char in ZEX Memory- * ;* Based File Buffer * ;* Byte 13: SH Control Byte * ;* Bit 0: Enable SHCMT * ;* Bit 1: Enable SHECHO * ;* Bit 7: Enable Shell * ;* Entry Wait * ;* Bytes 14-15: Shell Scratch * ;* Bytes 10H-2FH: Error Cmd * ;* Bytes 30H-39H: Registers * ;* Bytes 3AH-3FH: Reserved * ;* Bytes 40H-4FH: User-Defined * ;* FCD0 - FCF3 36 b ZCPR3 External FCB * ;* FCF4 - FCFE 11 b ZCPR3 External Path * ;* FCFF 1 b Wheel Byte * ;* FD00 - FDFF 256 b Memory-Based Named Directory * ;* FE00 - FEFF 256 b Environment Descriptors * ;* Bytes 00H-7FH: Z3 Parameters * ;* Bytes 80H-FFH: Z3 Terminal Cap * ;* FF00 - FFCF 208 B Multiple Command Line Buffer * ;* FD00 - FFFF 48 b ZCPR3 External Stack * ;**************************************************************** FALSE set 0 TRUE set NOT FALSE Z3REV EQU 30 ; ZCPR3 REV NUMBER BASE EQU 0 I8080 EQU FALSE seg1 equ BIOS+(BIOSLN*100H)-zlength ; Origin at end of BIOS ; ; RCP definition. Set RCPS to 0 to eliminate RCP ; RCPS EQU 16 ; 16 128-byte Blocks (2K bytes) IF RCPS NE 0 RCP EQU seg1 ; RESIDENT COMMAND PACKAGE ELSE RCP EQU 0 ENDIF seg2 equ seg1+(rcps*128) ; ; IOP definition. Set IOPS to 0 to eliminate IOP ; IOPS EQU 12 ; 12 128-byte Blocks (1.5K bytes) IF IOPS NE 0 IOP set seg2 ; REDIRECTABLE I/O PACKAGE ELSE IOP set 0 ENDIF seg3 equ seg2+(iops*128) ; ; FCP definition. Set FCPS to 0 to eliminate FCP ; FCPS EQU 4 ; 4 128-byte Blocks (0.5K bytes) IF FCPS NE 0 fcp equ seg3 ELSE fcp equ 0 ENDIF seg4 equ seg3+(fcps*128) ; ; Shell Stack definition. Set SHSTKS to 0 to eliminate Shell Stack ; SHSTKS EQU 4 ; NUMBER OF SHSIZE-BYTE SHELL STACK ENTRIES SHSIZE EQU 32 ; SIZE OF A SHELL STACK ENTRY ; (STACK SIZE = SHSTKS * SHSIZE) IF SHSTKS NE 0 SHSTK EQU seg4 ELSE SHSTK EQU 0 ENDIF seg5 equ seg4+(shstks*shsize) ; ; The ZCPR3 Message Buffers are mandatory. ; Z3MSG EQU seg5 ; ZCPR3 MESSAGE BUFFER seg6 equ seg5+80 ; ; The ZCPR3 External FCB is mandatory. ; EXTFCB EQU seg6 ; ZCPR3 EXTERNAL FCB seg7 equ seg6+36 ; ; The ZCPR3 Path is mandatory. No more than 11 bytes can be used when ; this Z3BASE.LIB file is used.... ; EXPATH EQU seg7 ; EXTERNAL PATH EXPATHS EQU 5 ; 5 2-byte Path Elements ; (PATH SIZE = EXPATHS*2 + 1) seg8 equ seg7+(expaths*2)+1 ; ; The ZCPR3 Wheel Byte is mandatory. ; Z3WHL EQU seg8 ; WHEEL BYTE ADDRESS seg9 equ seg8+1 ; ; The ZCPR3 Named Directory Buffer is mandatory. ; Z3NDIR EQU seg9 ; ZCPR3 NAMED DIRECTORY AREA Z3NDIRS EQU 14 ; 14 18-byte Named Directory Elements permitted ; (NDIR SIZE = Z3NDIRS*18 + 1 for trailing 0) seg10 equ seg9+256 ; ; The ZCPR3 Extenal Environment Descriptor is mandatory. ; Z3ENV EQU seg10 ; ENVIRONMENT DESCRIPTORS Z3ENVS EQU 2 ; SIZE OF ENVIRONMENT DESCRIPTOR IN 128-BYTE BLOCKS seg11 equ seg10+(z3envs*128) ; ; The ZCPR3 External Command Line Buffer is mandatory. ; Z3CL EQU seg11 ; ZCPR3 COMMAND LINE BUFFER Z3CLS EQU 200 ; SIZE OF COMMAND LINE BUFFER seg12 equ seg11+z3cls+8 ; ; The ZCPR3 External Stack is mandatory. ; EXTSTK EQU seg12 ; ZCPR3 EXTERNAL STACK seg99 equ extstk+48 zrdsize equ (seg99-seg1)-1 ; Size to be initialized to zeros at cold-boot ;* ;* END of Z-SYSTEM BASE EQUATES ;*