; Module: NTCFG - ZCNFG configuration file for NT.COM. ; Author: Carson Wilson ; Date: 11 Feb 90 ; Version: 4.5 ; Changes: Revised help screen. ; ; Author: Carson Wilson ; Date: 02 Feb 90 ; Version: 4.4 ; Changes: Added support for PFlag. ; EQUATES ; Offsets of patch locations ;Labels Locations Descriptions Drive equ 00Bh ; Default output drive User equ 00Ch ; " " user FName equ 00Dh ; " " filename FType equ 015h ; " " filetype PFlag equ 018h ; Filename prompt flag ; ZCNFG function definitions, used in CASE TABLES below. Do not modify. 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 specification (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 to one of three options: 001B, 010B, 100B ToglTF equ 8 ; Toggle a byte between 0ffh and 0 ; Sample ASCII definitions, used in SCREEN sections below. tab equ 9 ;horizontal tab lf equ 10 ;line feed cr equ 13 ;carriage return ; ======================================= ; ; C O D E B E G I N S ; ; ======================================= ; ; NOTE: the next 13 bytes (up to BMenu, below) MUST remain in ; the following locations: rst 0 ; For safety, so .CFG file won't execute dw AMenu ; For relocation of addresses, this ; ..points to the NEXT location. ; --------------------------------------------------------- ; ; MENU LIST SECTION ; ; Each entry is a doubly linked node, pointing to the next entry ; in the list, the previous entry in the list, and a menu screen, ; case table, and help screen. If only one menu is to be used, ; it points only to itself. AMenu: dw AMenu, AMenu, AScrn, ACase, AHelp ; Entry for menu A ; ------------------------------------- ; ; CASE TABLE SECTION ; ; Case table for Menu A. The first two bytes give the number of ; records followed by the length of each record. The rest of the table ; consists of up to 255 identical records. ACase: db (ACaseX-ACase1)/(ACase2-ACase1) ; Number of cases db ACase2-ACase1 ; Length of each record ACase1: db 'D' ; Unique ASCII selector from SCREEN IMAGE dw DecRad ; ZCNFG function number dw drive ; Location in file to be patched by ZCNFG db 1 ; Number of bytes for ZCNFG to change dw AScrnD ; Location to change in SCREEN IMAGE dw AC1MM ; 0 or address of min/max data words or strings ACase2: db 'U' ; Unique ASCII selector from SCREEN IMAGE dw DecRad ; ZCNFG function number dw user ; Location in file to be patched by ZCNFG db 1 ; Number of bytes for ZCNFG to change dw AScrnU ; Location to change in SCREEN IMAGE dw 0 ; 0 or address of min/max data words or strings ACase3: db 'N' ; Unique ASCII selector from SCREEN IMAGE dw Text ; ZCNFG function number dw FName ; Location in file to be patched by ZCNFG db 8 ; Number of bytes for ZCNFG to change dw AScrnN ; Location to change in SCREEN IMAGE dw 0 ; 0 or address of min/max data words or strings ACase4: db 'T' ; Unique ASCII selector from SCREEN IMAGE dw Text ; ZCNFG function number dw FType ; Location in file to be patched by ZCNFG db 3 ; Number of bytes for ZCNFG to change dw AScrnT ; Location to change in SCREEN IMAGE dw 0 ; 0 or address of min/max data words or strings ACase5: db 'P' ; Unique ASCII selector from SCREEN IMAGE dw ToglTF ; ZCNFG function number dw PFlag ; Location in file to be patched by ZCNFG db 1 ; Number of bytes for ZCNFG to change dw AScrnP ; Location to change in SCREEN IMAGE dw AC5St ; 0 or address of min/max data words or strings ACaseX: ; Label for calculation of list length ; Case table support data structures. AC1MM: ; Min/Max for ACase1, above dw 0 ; Min (0=default drive) dw 16 ; Max (16=drive P) AC2MM: ; Min/Max for ACase2, above dw 0FFh ; Min (0FFh=default user) dw 32 ; Max user AC5St: ; Strings for ACase5, above db 'YES',0 db ' NO',0 ; ------------------------------------------ ; ; SCREEN IMAGE SECTION ; Sample screen image for Menu A. This is what appears on the screen ; when the user initially invokes ZCNFG with this .CFG file. This screen ; data is pointed to by its MENU LIST entry (above). Before displaying ; the following ASCII information, ZCNFG substitutes the current values ; for the file being altered for the blank spaces at the secondary labels ; below. AScrn: db cr,lf,lf,tab,tab,tab,'Note Taker Installation Menu' db cr,lf,lf db tab,'D) Default output drive (0..16; 0 = current) ........ ' AScrnD: db ' ' ; Display current value here db cr,lf,lf db tab,'U) Default output user area (0..32; 255 = current) ... ' AScrnU: db ' ' ; Display current value here db cr,lf,lf db tab,'N) Default output filename ...................... ' AScrnN: db ' ' ; Display current value here db cr,lf,lf db tab,'T) Default output filetype ........................... ' AScrnT: db ' ' ; Display current value here db cr,lf,lf db tab,'P) Prompt for filespec on exit ....................... ' AScrnP: db ' ' ; Display current value here db cr,lf,lf db lf,lf,lf,lf ; Fill rest of screen db 0 ; Terminator ; --------------------------------------------------- ; ; HELP SCREEN SECTION ; ; 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. AHelp: db cr,lf,lf,tab,tab,tab,'Note Taker Installation Help' db cr,lf,lf db tab,'D) Default output drive' db cr,lf,tab,tab db 'This is the drive NT will write its output to if you don''t' db cr,lf,tab,tab db 'specify a drive and filename at runtime. Set to 00 for' db cr,lf,tab,tab, db 'current drive.' db cr,lf,lf db tab,'U) Default output user area' db cr,lf,tab,tab db 'This is the user area NT will write its output to if you' db cr,lf,tab,tab db 'don''t specify a user area and filename at runtime. Set' db cr,lf,tab,tab db 'to 255 for current user area.' db cr,lf,lf db tab,'N) Default output filename' db cr,lf,tab,tab db 'This is the filename NT will write its output to if you' db cr,lf,tab,tab db 'don''t specify a filename at runtime.' db cr,lf,lf db tab,'T) Default output filetype' db cr,lf,tab,tab db 'This is the filetype NT will write its output to if you' db cr,lf,tab,tab db 'don''t specify a filetype at runtime.' db cr,lf,lf db cr,lf,lf,tab,tab,tab,'Note Taker Installation Help' db cr,lf,lf db tab,'P) Prompt for filespec on exit' db cr,lf,tab,tab db 'Set to YES if you want NT to ask for a filespec if none was' db cr,lf,tab,tab db 'specified on the command line.' db 0 ; Terminator ; End NTCFG.Z80