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
/
JSAGE
/
ZSUS
/
PROGPACK
/
ARRAYS10.LBR
/
ARRAY9.ZZ0
/
ARRAY9.Z80
Wrap
Text File
|
2000-06-30
|
2KB
|
57 lines
;Library Name: ARRAYLIB
;Module Name: SETDU
;Author: Al Hawley
;Date: 31 Mar 1987
;Version number: 1.0c
;Version History:
;Program Function: ARRAYLIB is a collection of subroutines which
; implement the management of byte arrays in programs written
; for Z80 or HD64180 based computers. This module is one of the
; set, and may require the presence of others.
;***************************************************
; COPYRIGHT NOTICE
;ARRAYLIB is copyright by A. E. Hawley on March 4, 1987.
;It may be freely distributed, but it must not be sold
;either separately or as part of a package without the
;written consent of the author. The author may be reached
;via electronic mail at the Ladera Z-Node in Los Angeles,
;213-670-9465, or by Voice Phone at: 213-649-3575
;
;***************************************************
MACLIB ARRHDR
name setdu
;This module contains the following routines:
public arrsetdu
;..and uses the following external routines:
ext arxltbit,arrxltrc,arresbit,arsetbit
arrsetdu:
;set the bit corresponding to disk/user to 0
;or 1, according to the value in reg a.
;on entry,
; a = 00 or >0
; bc = disk, user
;on exit,
; bit at du is set(1) if a was non-zero
; bit at du is reset(0) if a was zero
;all registers are destroyed
ex af,af'
dec b ;convert disk to row(0..)
call arxltbit
call arrxltrc ;addr in hl, bit loc in e
ex af,af'
or a ;was reg a 0?
ld a,e
jp z,arresbit ;reset bit if a was 0
jp arsetbit ;else set the bit
;**********************************************
end