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
/
SIMTEL20
/
ZSIG
/
AUTOZINS.CCP
< prev
next >
Wrap
Text File
|
2000-06-30
|
1KB
|
41 lines
-[ From Seattle's 'downspout' - 206-325-1325 ]-
This code documents a method of modifing ZCPR3 to recognise that it has
loaded a ZCPR3 installable utility and "auto-install" it by loading the
environment address at the correct place in the TPA.
Search the ZCPR3 source file for the label "EXECADR:" and insert the code
shewn below. Note that all additional code is commented thus ";+ "...
; RUN LOADED TRANSIENT PROGRAM
CALL DEFDMA ; SET DMA TO 0080
;
; attempt to install z3env utilities...
ld hl,0100h ;+ point to position of z3env id.
ld de,idstring ;+ point to z3env descriptor string.
ld b,idlength ;+ reg b will count bytes
z3test: ld a,(de) ;+ get a byte for compare...
cp (hl) ;+ ...match against code...
jr nz,noz3env ;+ ...branch if not installable.
inc hl ;+ bump pointers...
inc de ;+ ...
djnz z3test ;+ branch until all bytes match.
; tpa contains an installable utility...
ld (hl),low z3env ;+ load environment address...
inc hl ;+ ...
ld (hl),high z3env ;+ ...
;
; EXECUTION (CALL) OF PROGRAM (SUBROUTINE) OCCOURS HERE
EXECADR: EQU $+1 ; CHANGE ADDRESS FOR IN-LINE CODE MODIFICATION
noz3env: CALL 0100H ; CALL TRANSIENT
; zcpr3 code continues....
; Insert z3 environment id string in any convenient place.
idstring: defb "Z3ENV",01 ;+ z3 environment id.
idlength equ $-idstring ;+
<eof>