home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
CP/M
/
CPM_CDROM.iso
/
cpm
/
turbodsg
/
free.mac
< prev
next >
Wrap
Text File
|
1986-07-05
|
842b
|
77 lines
;FREE.MAC - CALCULATE FREE SPACE ON A: THRU D:
;
cr equ 0dh
lf equ 0ah
;
.request syslib
extrn crlf,print,cout
;
.z80
;
start: ld sp,stack
call print
cr,lf,lf
'Free space display:',cr,lf
'DRIVE k free k used',cr,lf
'-----------------------',cr,lf,0
ld a,0
ld (drive),a
loop: ld a,(drive)
inc a
ld (drive),a
cp 16
jp z,done
dec a
push af
ld c,21
ld e,a
ld d,0ffh
call 50h
pop af
inc l
jr nz,loop
ld e,a
ld c,19
call 50h
and 0fh
push af
call cvhlk
pop af
push hl
ex de,hl
call cvhlk
ld a,(drive)
add a,40h
call cout
call print
': ',0
ld a,3
call phldc##
call print
db ' ',0
ex de,hl
pop hl
or a
sbc hl,de
ld a,3
call phldc##
call crlf
jr loop
;
done: call print
cr,lf,lf,0
rst 0
;
cvhlk: dec a
dec a
..ca: dec a
ret z
add hl,hl
jr ..ca
;
drive: db 0
ds 80
stack equ $
end