mirror of
https://github.com/wwarthen/RomWBW.git
synced 2026-02-06 22:43:15 -06:00
368 lines
10 KiB
Plaintext
368 lines
10 KiB
Plaintext
; SYSTEM SEGMENT: SYS2.RCP
|
||
; SYSTEM: ZCPR3
|
||
; WRITTEN BY: RICHARD CONN
|
||
|
||
;
|
||
; PROGRAM HEADER: SYSRCP.LIB
|
||
; AUTHOR: RICHARD CONN
|
||
;
|
||
|
||
;
|
||
; This program header selects the commands to be incorporated into
|
||
; SYS.RCP. It also allows selection of some options for these commands.
|
||
;
|
||
|
||
;
|
||
; 0. ID
|
||
;
|
||
; The following ID is a single character, displayed as a part of
|
||
; the RCP ID, which distinguishes this RCP from others made from the same
|
||
; base file (SYSRCP.ASM).
|
||
;
|
||
RCPID EQU 'B'
|
||
|
||
;
|
||
; 1. CP COMMAND
|
||
; TRANSIENT COUNTERPART: MCOPY
|
||
;
|
||
; The following equate determines if the CP command is made available.
|
||
; Setting this equate to TRUE enables the CP command.
|
||
;
|
||
; The CP command copies one file from one DU to another or into the
|
||
; same DU under a different name. The syntax is:
|
||
;
|
||
; CP dir:ufn=dir:ufn
|
||
;
|
||
; Examples:
|
||
; CP f1.txt=f2.txt
|
||
; CP a15:=f1.txt
|
||
; CP a15:f2.txt=c5:f1.txt
|
||
;
|
||
CPON EQU TRUE
|
||
|
||
;
|
||
; 2. DIR COMMAND
|
||
; TRANSIENT COUNTERPART: DIR, XD, XDIR
|
||
;
|
||
; The following equate determines if the DIR command is made available.
|
||
; Setting this equate to TRUE enables the DIR command.
|
||
;
|
||
; The DIR command displays the directory of files in alphabetical order
|
||
; across the lines to the user. The syntax is:
|
||
;
|
||
; DIR dir:afn
|
||
;
|
||
; Examples:
|
||
; DIR b7:
|
||
; DIR root:*.com
|
||
;
|
||
DIRON EQU TRUE
|
||
|
||
;
|
||
; The DIR command allows two options. One is a flag to tell it
|
||
; to look at both System and Non-System files, and the other is a flag
|
||
; to tell it to look only at System files. By default, DIR looks at
|
||
; Non-System files.
|
||
;
|
||
; SYSFLG defines the character used to instruct DIR to look at
|
||
; both System and Non-System files. The recommended value is 'A' for All.
|
||
;
|
||
; SOFLG defines the character used to instruct DIR to look at
|
||
; only System files. The recommended value is 'S' for System.
|
||
;
|
||
SYSFLG EQU 'A'
|
||
SOFLG EQU 'S'
|
||
|
||
;
|
||
; The following equate determines if the directory displays are
|
||
; sorted by filename and filetype or by filetype and filename. Set SORTNT
|
||
; to TRUE to sort by name and type, FALSE to sort by type and name.
|
||
;
|
||
SORTNT EQU TRUE
|
||
|
||
;
|
||
; The following equates define some features of the directory display.
|
||
; If WIDE is TRUE, the file names are spaced farther abort; if WIDE is FALSE,
|
||
; they are closer together (for a 64-column display). FENCE defines the
|
||
; character used to separate the file name entries in the display.
|
||
;
|
||
WIDE EQU TRUE
|
||
FENCE EQU '|'
|
||
|
||
;
|
||
; 3. ERA COMMAND
|
||
; TRANSIENT COUNTERPART: ERASE
|
||
;
|
||
; The following equate determines if the ERA command is made available.
|
||
; Setting this equate to TRUE enables the ERA command.
|
||
;
|
||
; The ERA command erases files. The syntax is:
|
||
;
|
||
; ERA dir:afn
|
||
; or:
|
||
; ERA dir:afn I -- Inspect
|
||
;
|
||
; Examples:
|
||
; ERA b7:*.bak
|
||
; ERA text:*.tmp i
|
||
;
|
||
ERAON EQU TRUE
|
||
|
||
;
|
||
; 4. LIST and TYPE COMMANDS
|
||
; TRANSIENT COUNTERPART: PRINT and PAGE
|
||
;
|
||
; The following equate determines if the LIST and TYPE commands are
|
||
; made available. Setting this equate to TRUE enables these commands.
|
||
;
|
||
; The LISTON equate can disable the LIST command without affecting the
|
||
; TYPE command.
|
||
;
|
||
; The TYPE command displays a group of files on the CRT while the
|
||
; LIST command prints a group of files on the Printer. The syntax is:
|
||
;
|
||
; TYPE dir:afn -or- LIST dir:afn
|
||
;
|
||
; Examples:
|
||
; TYPE b7:*.asm
|
||
; LIST text:*.txt
|
||
;
|
||
LTON EQU TRUE
|
||
LISTON EQU TRUE
|
||
|
||
;
|
||
; TYPE can be made to page or not page by default. If PGDFLT is
|
||
; TRUE, TYPE pages by default and does not page if the PGFLG character
|
||
; (recommended to be 'P') is used. If PGDFLT is FALSE, TYPE pages only
|
||
; when the PGDFLG character is seen in the command line.
|
||
;
|
||
PGDFLT EQU TRUE
|
||
PGDFLG EQU 'P'
|
||
|
||
;
|
||
; NLINES defines the number of lines on the user's CRT screen.
|
||
; This is usually 24.
|
||
;
|
||
NLINES EQU 24
|
||
|
||
|
||
;
|
||
; 5. PEEK and POKE COMMANDS
|
||
; TRANSIENT COUNTERPART: None (Subset of DDT)
|
||
;
|
||
; The following equates determine if the PEEK and POKE commands are
|
||
; made available. Setting these equates to TRUE enables these commands.
|
||
;
|
||
; The PEEK command allows the user to examine a chunk of memory.
|
||
; If the user simply types "P" with no address, the next 256 bytes of
|
||
; memory are displayed. If the user types "P address", 256 bytes of memory
|
||
; starting at the indicated address are displayed. If the user types
|
||
; "P addr1 addr2", memory in this address range is displayed. The syntax:
|
||
;
|
||
; P
|
||
; or:
|
||
; P address
|
||
; or:
|
||
; P addr1 addr2
|
||
;
|
||
; The POKE command allows the user to change the content of memory.
|
||
; The user must specify an address to POKE, and two basic forms are allowed:
|
||
;
|
||
; POKE address val1 val2 ... valn
|
||
; and:
|
||
; POKE address "character string
|
||
; The two forms may be intermixed with leading values and a trailing character
|
||
; string:
|
||
; POKE address val1 val2 ... valn "character string
|
||
;
|
||
; Examples:
|
||
; P
|
||
; P f400
|
||
; P f400 f425
|
||
; POKE f400 0 1 2
|
||
; POKE f400 "this is a test
|
||
; POKE f400 1 2 3 "hello, world
|
||
;
|
||
PEEKON EQU TRUE
|
||
POKEON EQU TRUE
|
||
|
||
;
|
||
; 6. PROT COMMAND
|
||
; TRANSIENT COUNTERPART: PROTECT
|
||
;
|
||
; The following equate determines if the PROT command is made available.
|
||
; Setting this equate to TRUE enables the PROT command.
|
||
;
|
||
; The PROT command sets the file protection attributes for a group of
|
||
; files. The R/O and System attributes may be set with the R and S options,
|
||
; resp, given in any order as "RS" or "SR". Omission of one of these options
|
||
; toggles the opposite (ie, omission of R makes the files R/W). The syntax:
|
||
;
|
||
; PROT dir:afn
|
||
; or:
|
||
; PROT dir:afn R
|
||
; or:
|
||
; PROT dir:afn S
|
||
; or:
|
||
; PROT dir:afn RS -or- PROT dir:afn SR
|
||
;
|
||
; Examples:
|
||
; PROT b7:*.com rs
|
||
; PROT text:*.txt
|
||
;
|
||
PROTON EQU FALSE
|
||
|
||
;
|
||
; 7. REN COMMAND
|
||
; TRANSIENT COUNTERPART: RENAME
|
||
;
|
||
; The following equate determines if the REN command is made available.
|
||
; Setting this equate to TRUE enables the REN command.
|
||
;
|
||
; The REN command changes the name of one file to another. The syntax:
|
||
;
|
||
; REN dir:ufn1=ufn2
|
||
;
|
||
; Examples:
|
||
; REN newfile.txt=oldfile.txt
|
||
; REN root:sys.rcp=sys1.rcp
|
||
;
|
||
RENON EQU TRUE
|
||
|
||
;
|
||
; 8. The REG COMMAND
|
||
; TRANSIENT COUNTERPART: REG
|
||
;
|
||
; The following equate determines if the REG command is made
|
||
; available. Setting this equate to TRUE enables the REG command.
|
||
;
|
||
; The REG command forms are:
|
||
; REG D or REG = display values of all registers
|
||
; REG Mreg = subtract 1 from register (Minus)
|
||
; REG Preg = add 1 to register (Plus)
|
||
; REG Sreg value = set value of indicated register
|
||
;
|
||
; A register is a ZCPR3 register buffer, indicated by a digit from
|
||
; 0 to 9.
|
||
;
|
||
; Examples:
|
||
; REG S0 4 -- reg 0 = 4
|
||
; REG S5 -- reg 5 = 0
|
||
; REG P -- reg 0 = reg 0 + 1
|
||
; REG P5 -- reg 5 = reg 5 + 1
|
||
; REG M9 -- reg 9 = reg 9 - 1
|
||
; REG D -- show values
|
||
; REG -- show values
|
||
;
|
||
REGON EQU FALSE
|
||
|
||
|
||
;
|
||
; 9. WHL COMMAND
|
||
; TRANSIENT COUNTERPART: WHEEL
|
||
;
|
||
; The following equate determines if the WHL command is made available.
|
||
; Setting this equate to TRUE enables the WHL command.
|
||
;
|
||
; The WHL command is used to turn off the Wheel Byte (make the user
|
||
; non-priveleged) or to turn on the Wheel Byte (make the user priveleged).
|
||
; The syntax is:
|
||
;
|
||
; WHL -- make user non-priveleged
|
||
; or:
|
||
; WHL password -- make user priveleged
|
||
;
|
||
; Also, this equate enables the WHLQ command, which displays the
|
||
; state of the Wheel Byte. The syntax is:
|
||
;
|
||
; WHLQ
|
||
;
|
||
; Examples:
|
||
; WHL
|
||
; WHL mypass
|
||
; WHLQ
|
||
;
|
||
WHLON EQU FALSE
|
||
|
||
;
|
||
; The following equate defines the password to be used by the WHL
|
||
; command. It must always be 8 bytes long (trailing spaces allowed) and
|
||
; must be upper-case.
|
||
;
|
||
WPASS MACRO
|
||
DB 'SYSTEM ' ;8 characters
|
||
ENDM
|
||
|
||
;
|
||
; The Wheel equate table enables the WHEEL facility of ZCPR3. With this
|
||
; facility, a WHEEL BYTE, which exists somewhere in memory, is examined
|
||
; before a set of installer-selected commands are executed.
|
||
; If this byte is not zero, then the command proceeds. If it is zero,
|
||
; then the command is not allowed to proceed and is exited with an error
|
||
; message.
|
||
;
|
||
; The following set of equates make each of the indicated commands
|
||
; selectable to respond to the Wheel Byte or not. For instance, if
|
||
; WERA=TRUE, then it responds to the Wheel Byte; if WERA=FALSE, it does not.
|
||
;
|
||
; These options will only be effective if a Wheel Byte is Defined
|
||
; (Z3WHL NE 0)
|
||
;
|
||
WCP equ FALSE ;Make CP a Wheel-Oriented Command
|
||
WDIR equ FALSE ; " DIR " " " "
|
||
WERA equ FALSE ; " ERA " " " "
|
||
WLIST equ FALSE ; " LIST " " " "
|
||
WPEEK equ FALSE ; " PEEK " " " "
|
||
WPOKE equ FALSE ; " POKE " " " "
|
||
WPROT equ FALSE ; " PROT " " " "
|
||
WREG equ FALSE ; " REG " " " "
|
||
WREN equ FALSE ; " REN " " " "
|
||
WTYPE equ FALSE ; " TYPE " " " "
|
||
|
||
WHEEL set WCP OR WDIR OR WERA OR WLIST OR WPEEK OR WPOKE
|
||
WHEEL set WHEEL OR WPROT OR WREG OR WREN OR WTYPE
|
||
|
||
|
||
;
|
||
; 10. NOTE COMMAND
|
||
; TRANSIENT COUNTERPART: NOTE
|
||
;
|
||
; NOTE is simply a NOP (do nothing) command which can be used
|
||
; to place comments into multiple command lines. For instance, in the
|
||
; following line:
|
||
;
|
||
; dir *.com;note this is a dir display;era *.bak
|
||
;
|
||
; the DIR and ERA commands perform normally, and NOTE simply does
|
||
; nothing very efficiently.
|
||
;
|
||
; Setting the following equate to TRUE enables the NOTE Command.
|
||
;
|
||
NOTEON EQU TRUE
|
||
|
||
|
||
;
|
||
; 11. ECHO COMMAND
|
||
; TRANSIENT COUNTERPART: ECHO
|
||
;
|
||
; The following equate enables the ECHO command.
|
||
;
|
||
; ECHO is useful in issuing both messages (to the user, say within
|
||
; a command file during execution) and escape sequences. ECHO can send its
|
||
; output to the console (by default) or to the printer (if the first non-
|
||
; blank character is a dollar sign). It uses BIOS calls, so all control
|
||
; characters are passed exactly. Hence, console-level programming of such
|
||
; devices (CRTs and Printers) is possible.
|
||
;
|
||
; The ECHOLST equate determines if ECHO is allowed to direct its output
|
||
; to the printer. If ECHOLST is TRUE, ECHO may direct its output to the
|
||
; printer via the $ prefix character in the text.
|
||
;
|
||
ECHOON EQU TRUE
|
||
ECHOLST EQU TRUE
|
||
|
||
|
||
;
|
||
; END of SYS.RCP CUSTOMIZATION
|
||
;
|
||
|