
@DispCh	macro	char
	mov	ah,2
IFNB <char>				;added by jmh 010402
	mov	dl,char
ENDIF
	int	21h
	endm

@DispStr macro	string
IFNB <string>				;added by jmh 980508
	mov	dx,offset string
ENDIF
	mov	ah,9
	int	21h
	endm

@OpenFil macro filename,mode
	mov	dx,offset filename
	mov	ax,03D00h + mode
	int	21h
	endm

@ClosFil macro handle
	mov	bx,handle
	mov	ah,03Eh
	int	21h
	endm

@GetDrv	macro
	mov	ah,019h
	int	21h
	endm

@GetDir	macro	path
	sub	dl,dl
	mov	si,path
	mov	ah,047h
	int	21h
	endm

@SetDrv macro	drive
	mov	dl,drive
	mov	ah,00Eh
	int	21h
	endm

@ChDir	macro	dir
ifnb <dir>				;added by jmh 980511
	mov	dx,dir
endif
	mov	ah,03Bh
	int	21h
	endm

@LFNChDir macro dir			;added by jmh 990522
ifnb <dir>
	mov	dx,dir
endif
	mov	ax,0713Bh
	stc
	int	21h
	endm

@GetDTA	macro
	mov	ah,02Fh
	int	21h
	endm

@SetDTA macro	dta
ifnb <dta>				;added by jmh 980512
	mov	dx, dta
endif
	mov	ah,01Ah
	int	21h
	endm

@GetFirst macro one,two
ifnb <two>
	mov	cx,two
endif
ifnb <one>				;added by jmh 980512
	mov	dx,one
endif
	mov	ah,04Eh
	int	21h
	endm

@GetNext macro
	mov	ah,04Fh
	int	21h
	endm

@LFNGetFirst macro one,two		;added by jmh 990513
ifnb <two>
	mov	cx,two			;also requires SI and ES:DI
endif
ifnb <one>
	mov	dx,one
endif
	mov	ax,0714eh
	stc
	int	21h			;returns AX
	endm

@LFNGetNext macro handle		;added by jmh 990513
ifnb <handle>				;also requires SI and ES:DI
	mov	bx,handle
endif
	mov	ax,0714fh
	int	21h
	endm

@LFNFindClose macro handle		;added by jmh 990513
ifnb <handle>
	mov	bx,handle
endif
	mov	ax,071a1h
	int	21h
	endm

@Exit	macro	one
	ifnb	<one>
	mov	ax,04C00h + one
	else
	mov	ah,04Ch
	endif
	int	21h
	endm

@GetKey	macro	one
	mov	ah,8
	int	21h
	endm
