home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Oakland CPM Archive
/
oakcpm.iso
/
cpm
/
tdossigi
/
wildex.mac
< prev
next >
Wrap
Text File
|
1986-07-05
|
947b
|
70 lines
;WILDEX - wildcard expansion module
; S. Kluger 04/15/84
;
; This module, for use with SYSLIB, can be used
; to expand a wildcard filename into a table of
; file names as found in current DU:
;
; ENTRY:
; HL = .buffer
; DE = .afn fcb
;
; EXIT:
; HL = number of files
; ACC= zero flag reset if ok, else error
; the buffer contains (HL) file names of 16 char each
;
sfirst equ 17
snext equ 18
;
extrn bdos
;
public wildex
;
wildex: shld bufptr
lxi h,0
shld count
mvi c,sfirst
call bdos
cpi 0ffh
rz ;nothing found -- error
call moven ;move name
wloop: mvi c,snext ;search for next
call bdos
cpi 0ffh
jz done ;finished
call moven
jmp wloop
;
done: ora a
lhld count
ret
;
moven: push d
lhld bufptr
add a
add a
add a
add a
add a
adi 80h
mov c,a
mvi b,0
mvi d,16 ;move 16 chars
movlp: ldax b
mov m,a
inx h
inx b
dcr d
jnz movlp
shld bufptr
pop d
lhld count
inx h
shld count
ret
;
bufptr: dw 0
count: dw 0
end