.xlist
getchr macro
mov ah,1
int 21h
endm
putchr macro chr
ifdif
,
mov dl,chr
endif
mov ah,2
int 21h
endm
getaux macro
mov ah,3
int 21h
endm
putaux macro chr
ifdif ,
mov dl,chr
endif
mov ah,4
int 21h
endm
putprn macro chr
ifdif ,
mov dl,chr
endif
mov ah,5
int 21h
endm
dcio macro char
ifnb
mov dl,0ffh
else
ifdif ,
mov dl,char
endif
endif
mov ah,6h
int 21h
endm
dcinne macro
mov ah,7h
int 21h
endm
noecho macro func
ifnb
ifdif ,
mov al,func
endif
else
mov al,0
endif
mov ah,8h
int 21h
endm
print macro str
lea dx,str
mov ah,9h
int 21h
endm
input macro buf
lea dx,buf
mov ah,0ah
int 21h
endm
dskrst macro
mov ah,0dh
int 21h
endm
seldsk macro drv
ifdif ,
mov dl,drv
endif
mov ah,0eh
int 21h
endm
open macro fcb
lea dx,fcb
mov ah,0fh
int 21h
endm
close macro fcb
lea dx,fcb
mov ah,10h
int 21h
endm
sfirst macro fcb
lea dx,fcb
mov ah,11h
int 21h
endm
snext macro fcb
lea dx,fcb
mov ah,12h
int 21h
endm
delete macro fcb
lea dx,fcb
mov ah,13h
int 21h
endm
seqrd macro fcb
lea dx,fcb
mov ah,14h
int 21h
endm
seqwrt macro fcb
lea dx,fcb
mov ah,15h
int 21h
endm
create macro fcb
lea dx,fcb
mov ah,16h
int 21h
endm
rename macro fcb
lea dx,fcb
mov ah,17h
int 21h
endm
getdrv macro
mov ah,19h
int 21h
endm
setdta macro buf
lea dx,buf
mov ah,1ah
int 21h
endm
rndrd macro fcb
lea dx,fcb
mov ah,21h
int 21h
endm
rndwrt macro fcb
lea dx,fcb
mov ah,22h
int 21h
endm
getsiz macro fcb
lea dx,fcb
mov ah,23h
int 21h
endm
setrel macro fcb
lea dx,fcb
mov ah,24h
int 21h
endm
setvec macro int,addr
lea dx,addr
mov al,int
mov ah,25h
int 21h
endm
rndbrd macro fcb,siz
lea dx,fcb
ifdif ,
mov cx,siz
endif
mov ah,27h
int 21h
endm
rndbwr macro fcb,siz
lea dx,fcb
ifdif ,
mov cx,siz
endif
mov ah,28h
int 21h
endm
parse macro string,fcb,flag
ifdif <[si]>,
lea si,string
endif
ifdif <[di]>,
lea di,fcb
endif
ifdif ,
mov al,flag
endif
mov ah,29h
int 21h
endm
getdat macro year,month,day
mov ah,2ah
int 21h
mov year,cx
mov month,dh
mov day,dl
endm
setdat macro year,month,day
mov cx,year
mov dh,month
mov dl,day
mov ah,2bh
int 21h
endm
gettim macro hour,minute,second
mov ah,2ch
int 21h
mov hour,ch
mov minute,cl
mov second,dh
endm
settim macro hour,minute,second
mov ch,hour
mov cl,minute
mov dh,second
mov dl,0
mov ah,2dh
int 21h
endm
wrtver macro onoff
ifdif ,
mov al,onoff
endif
mov ah,2eh
int 21h
endm
getdta macro buf
push bx
push es
mov ah,2fh
int 21h
mov word ptr buf,bx
mov word ptr buf+2,es
pop es
pop bx
endm
dosver macro
mov ah,30h
int 21h
endm
break macro onoff
ifnb
ifdif ,
mov dl,onoff
endif
mov al,1
else
mov al,0
endif
mov ah,33h
int 21h
endm
getvec macro int
mov al,int
mov ah,35h
int 21h
endm
free macro drv
ifnb
ifdif ,
mov dl,drv
endif
else
mov dl,0
endif
mov ah,36h
int 21h
endm
credir macro path
lea dx,path
mov ah,39h
int 21h
endm
remdir macro path
lea dx,path
mov ah,3ah
int 21h
endm
setdef macro path
lea dx,path
mov ah,3bh
int 21h
endm
hcreat macro path,attrib
lea dx,path
ifdif ,
mov cx,attrib
endif
mov ah,3ch
int 21h
endm
hopen macro path,mode
lea dx,path
ifdif ,
mov al,mode
endif
mov ah,3dh
int 21h
endm
hclose macro handle
ifdif ,
mov bx,handle
endif
mov ah,3eh
int 21h
endm
hread macro handle,buf,siz
ifdif ,
mov bx,handle
endif
lea dx,buf
ifdif ,
mov cx,siz
endif
mov ah,3fh
int 21h
endm
hwrite macro handle,buf,siz
ifdif ,
mov bx,handle
endif
lea dx,buf
ifdif ,
mov cx,siz
endif
mov ah,40h
int 21h
endm
deletp macro path
lea dx,path
mov ah,41h
int 21h
endm
movptr macro handle,dist,method
ifdif ,
mov bx,handle
endif
mov dx,dist
mov cx,dist+2
mov al,method
mov ah,42h
int 21h
endm
setatr macro path,attrib
lea dx,path
ifnb
ifdif ,
mov cx,attrib
endif
mov al,1
else
mov al,0
endif
mov ah,43h
int 21h
endm
getdef macro path,drv
ifdif <[si]>,
lea si,path
endif
ifdif ,
mov dl,drv
endif
mov ah,47h
int 21h
endm
malloc macro siz
ifdif ,
mov bx,siz
endif
mov ah,48h
int 21h
endm
fremem macro segm
ifnb
mov es,segm
endif
mov ah,49h
int 21h
endm
setmem macro siz,segm
ifnb
mov es,segm
endif
ifdif ,
mov bx,siz
endif
mov ah,4ah
int 21h
endm
exec macro path,param,func
ifnb
mov al,func
mov ah,4bh
else
mov ax,4b00h
endif
mov dx,path
mov bx,param
int 21h
endm
exit macro
mov ax,4c00h
mov dx,0
int 21h
endm
ffirst macro path,attrib
lea dx,path
ifdif ,
mov cx,attrib
endif
mov ah,4eh
int 21h
endm
fnext macro
mov ah,4fh
int 21h
endm
renamp macro old,new
lea dx,old
lea di,new
mov ah,56h
int 21h
endm
tmstmp macro handle,date,time
ifdif ,
mov bx,handle
endif
ifnb
ifdif ,
mov dx,date
endif
ifdif ,