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
/
ENTERPRS
/
CPM
/
UTILS
/
S
/
ZPM3N08.ARC
/
SETZ3.Z80
< prev
next >
Wrap
Text File
|
1992-05-27
|
2KB
|
80 lines
;+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
; S E T Z 3
; for ZPM3
; by Simeon Cran
; 30/3/92
;
; This program automatically sets the system environment address in the ZPM3
; SCB for Z3PLUS users. Certain advanced ZCPR facilities such as wheel
; protection of files will then be activated.
;
; Z3PLUS users should run SETZ3.COM once when they start up Z3PLUS and again
; when returning to regular (non-Z-System) operation. When run after Z3PLUS
; is started, the SCB environment address word is set with the ZCPR environment
; address. When run after returning to regular operation, the SCB environment
; address word is cleared to 0000h.
;
;+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
;===============================================================================
BDOS equ 5
deffcb equ 5ch
SCBfunc equ 31h ; Get/Set SCB function number
SCBoff equ 3bh ; Offset in SCB to get SCB base page
Z3ENVoff equ 83h ; Offset in SCB base page of the ZCPR system
; environment pointer.
jp start ; Jump over general data
db 'Z3ENV'
db 1
Z3ENV: dw 0
dw 0
HELPmsg:
db ' SYNTAX:'
db 10,13
db ' SETZ3'
db 10,13
db ' Sets the ZCPR environment address in the SCB,'
db 10,13
db ' or else clears it if not running ZCPR.'
db 10,13
db ' SETZ3 // Displays this brief help message'
db '$'
HELP: ld de,HELPmsg
MSGexit:
ld c,9
call bdos
rst 0
start: ; Get the address of the SCB environment address pointer.
ld de,(Z3ENV)
ld a,d
or e ; Has it been set by Z3PLUS?
jr nz,Zinstall ; Jump if it has
ex de,hl
ld a,d
or e ; Was it in HL instead?
jr nz,Zinstall
Zinstall: ; DE holds 0 if uninstalling, otherwise the address of the
; ZCPR evironment descriptor.
push de
ld c,SCBfunc
ld de,SCBPB
call bdos ; Get base page of SCB
ld h,a
ld l,Z3ENVoff ; HL is now the address of the word
pop de
ld (hl),e
inc hl
ld (hl),d ; Set it appropriately
rst 0 ; And exit.
SCBPB: ; System control block function parameter block.
db 03bh
db 0 ; Get operation