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
/
ZSYS
/
ZNODE-12
/
I
/
ITOZ14.LBR
/
ITOZCF.ZZ0
/
ITOZCF.Z80
Wrap
Text File
|
1992-04-05
|
6KB
|
188 lines
; ITOZCF.Z80
;
; ZCNFG configuration module for ITOZ.COM. The assembled version of
; this file must be named ITOZxx.CFG, where xx is the version number
; of ITOZ, to be automatically recognized by ZCNFG.
;
; Version 1.0 -- April 5, 1992 -- Gene Pizzetta
; For ITOZ 1.4.
;
; Patch locations . . .
;
AstFlg equ 018h ; replace asterisks
ClnFlg equ 019h ; add colons
DbFlag equ 01Ah ; pseudo-op flag
QtFlag equ 01Bh ; quiet mode
AbtFlg equ 01Ch ; abort error flag
;
; ZCNFG function definitions . . .
;
Switch equ 0 ; toggle bit n in a byte (n is specified)
Text equ 1 ; edit text with UC conversion
DUSpec equ 2 ; replace a ZCPR style DU spec (NOT DIR:!)
HexRad equ 3 ; edit byte/word using HEX radix
DecRad equ 4 ; edit byte/word using DECIMAL radix
TextLC equ 5 ; edit text, both UC and LC
FileSp equ 6 ; edit a Z3 filespec or filespec fragment
Togl3 equ 7 ; toggle one of three options: 001B, 010B, 100B
ToglTF equ 8 ; toggle a byte between 0ffh and 0
ASCIIC equ 9 ; replace any ASCII byte with a keystroke
;
; ASCII characters . . .
;
HON equ 1 ; highlight on
HOF equ 2 ; highlight off
TAB equ 9 ; tab
LF equ 10 ; linefeed
CR equ 13 ; carriage return
;
; Macro definitions
; C = character to identify menu item
; OFFSET = offset in program's configuration block
; FUNC = ZCNFG function
; SCRN = screen location for data
; DATA = function data address (if required)
;
CASE macro c,func,offset,bytes,scrn,data
db '&C'
dw func, offset
db bytes
dw scrn, data
endm
;
; Code . . .
;
rst 0 ; for safety, so .CFG file won't execute
;
dw MenuA ; for relocation of addresses, this
; ..points to the NEXT location.
;
; Menu list section . . .
;
MenuA: dw MenuA, MenuA, ScrnA, CaseA, HelpA ; single menu
;
; Case table section . . .
;
CaseA: db (CaseAX-CaseA1)/(CaseA2-CaseA1) ; number of cases
db CaseA2-CaseA1 ; length of each record
;
; Macro name
; | Single char menu selector
; | | Function (see above)
; | | | Offset in config block
; | | | | Number of bytes
; | | | | | Screen location
; | | | | | |
;Case1: CASE 0, ToglTF, Loc1, 1, ScrnA1, NoYes
; |
; Address of data used by function
;
; The first two entries in table are labeled for calculation at CaseA:.
;
CaseA1: CASE A, ToglTF, AstFlg, 1, ScrnA1, YesNo
CaseA2: CASE C, ToglTF, ClnFlg, 1, ScrnA2, YesNo
CASE P, ToglTF, DbFlag, 1, ScrnA3, YesNo
CASE Q, ToglTF, QtFlag, 1, ScrnA4, YesNo
CASE X, ToglTF, AbtFlg, 1, ScrnA5, YesNo
CaseAX: ; for calculation of list length
;
; Case table support . . .
;
YesNo: db 'Yes',0 ; displayed if value is FFh (ToglTF)
db ' No',0 ; displayed if value is 00h (ToglTF)
;
; Screen image section . . .
;
ScrnA: db cr,lf,lf,tab,tab,tab,' ITOZ Configuration Menu'
db cr,lf,lf,lf
;
db tab,' (A) ',1,'Replace asterisks with semi-colons? . . ',2
ScrnA1: db ' ' ; current value
db cr,lf,lf
;
db tab,' (C) ',1,'Add colons after labels? . . . . . . . . ',2
ScrnA2: db ' ' ; current value
db cr,lf,lf
;
db tab,' (P) ',1,'Pseudo-ops: DB instead of DEFB, etc.? . ',2
ScrnA3: db ' ' ; current value
db cr,lf,lf
;
db tab,' (Q) ',1,'Quiet mode by default? . . . . . . . . . ',2
ScrnA4: db ' ' ; current value
db cr,lf,lf
;
db tab,' (X) ',1,'Invoke error handler for user abort? . . ',2
ScrnA5: db ' ' ; current value
db cr,lf
;
db lf,lf,lf,lf ; fill rest of screen
;
db 0 ; terminator
;
; Help screen section . . .
;
; Sample help screen for Menu A. The following, up to the terminating
; binary 00, appears as-is when the user types "?" or "/" for help while
; ZCNFG is displaying the initial patch menu.
;
HelpA: db CR,LF
;
db HON,'Option A -- Replace asterisks with semi-colons.',HOF
db ' Asterisks delimiting',CR,LF
db 'comments will be replaced with semi-colons by default '
db 'if "Yes" is selected.',CR,LF
db 'Otherwise, asterisks will be left where they are found. '
db ' The command line',CR,LF
db '"A" option will toggle the default chosen here.'
db CR,LF,LF
;
db HON,'Option C -- Add colons after labels.',HOF,' Select '
db ' "Yes" if you want ITOZ to add',CR,LF
db 'a colon after labels which don''t already have one. '
db 'If want the labels to',CR,LF
db 'remain the way they are found, choose "No". The '
db 'default can always be',CR,LF
db 'toggled by using the "C" option on the command line. '
db ' Labels for equates',CR,LF
db 'and macros never have colons and are not affected by '
db 'this option.'
db CR,LF,LF
;
db HON,'Option P -- Pseudo-ops.',HOF,' "No" here forces '
db 'ITOZ to output the standard Zilog',CR,LF
db 'pseudo-ops for data (DEFB, DEFW, DEFS, and DEFL), '
db 'for conditionals (COND',CR,LF
db 'and ENDC), and for included files (INCLUDE). If "Yes" '
db 'is chosen, the more',CR,LF
db 'common Intel pseudo-ops (DB, DW, DS, ASET, IF, ENDIF, '
db 'and MACLIB) will be',CR,LF
db 'used.'
db CR,LF
;
db ':',CR,LF
db HON,'Option Q -- Quiet mode.',HOF,' If the ZCPR3 quiet '
db 'flag is set, ITOZ defaults to',CR,LF
db 'quiet mode. With the quiet flag off the default '
db 'ordinarily is verbose',CR,LF
db 'operation. If "Yes" is selected here, the default '
db 'will always be quiet',CR,LF
db 'mode, regardless of the quiet flag. Whatever the '
db ' default, it can be',CR,LF
db 'toggled with the command line "Q" option.'
db CR,LF,LF
;
db HON,'Option X -- Error for user abort.',HOF,' Select '
db ' "Yes" if you want the error',CR,LF
db 'handler invoked when ITOZ is aborted with ^C. This '
db ' setting will allow',CR,LF
db 'aborting an active ZEX or SUB batch operation. '
db 'While that can be very',CR,LF
db 'useful, some people might find the feature irritating.'
db CR,LF
;
db 0 ; terminator
;
end