BY EQU <1 ptr >
WO EQU WORD PTR
LO EQU DWORD PTR
QW EQU QWORD PTR
TB EQU TBYTE PTR
clr MACRO p
IFIDN
,
clr AX
MOV DS,AX
ELSEIFIDN ,
clr AX
MOV ES,AX
ELSEIFE (.TYPE p) AND 10h
MOV p,0
ELSE
xor p,p
ENDIF
ENDM
tst MACRO p
or p,p
ENDM
jAXz MACRO l
tst AX
jz l
ENDM
jAXnz MACRO l
tst AX
jnz l
ENDM
jALz MACRO l
tst AL
jz l
ENDM
jALnz MACRO l
tst AL
jnz l
ENDM
jAHz MACRO l
tst AH
jz l
ENDM
jAHnz MACRO l
tst AH
jnz l
ENDM
jBXz MACRO l
tst BX
jz l
ENDM
jBXnz MACRO l
tst BX
jnz l
ENDM
jBLz MACRO l
tst BL
jz l
ENDM
jBLnz MACRO l
tst BL
jnz l
ENDM
jBHz MACRO l
tst BH
jz l
ENDM
jBHnz MACRO l
tst BH
jnz l
ENDM
jCLnz MACRO l
tst CL
jnz l
ENDM
jCHnz MACRO l
tst CH
jnz l
ENDM
jCXnz MACRO l
tst CX
jnz l
ENDM
jDLz MACRO l
tst DL
jz l
ENDM
jDLnz MACRO l
tst DL
jnz l
ENDM
jDHz MACRO l
tst DH
jz l
ENDM
jDHnz MACRO l
tst DH
jnz l
ENDM
jDXz MACRO l
tst DX
jz l
ENDM
jDXnz MACRO l
tst DX
jnz l
ENDM
jBPz MACRO l
tst BP
jz l
ENDM
jSIz MACRO l
tst SI
jz l
ENDM
jSInz MACRO l
tst SI
jnz l
ENDM
jDIz MACRO l
tst DI
jz l
ENDM
shl MACRO r,c
IFIDN ,
SHL r,CL
ELSE
REPT c
SHL r,1
ENDM
ENDIF
ENDM
rol MACRO r,c
IFIDN ,
ROL r,CL
ELSE
REPT
ROL r,1
ENDM
ENDIF
ENDM
ror MACRO r,c
IFIDN ,
ROR r,CL
ELSE
REPT c
ROR r,1
ENDM
ENDIF
ENDM
shr MACRO r,c
IFIDN ,
SHR r,CL
ELSE
REPT c
SHR r,1
ENDM
ENDIF
ENDM
outbyte MACRO p,b
mov AL,b
mov DX.p
out DX,AL
ENDM
mov MACRO r1,r2
pos1 INSTR ,
pos2 INSTR ,
IF pos1
IF pos2
push r2
pop r1
ELSE
MOV r1,r2
ENDIF
ELSE
MOV r1,r2
ENDIF
ENDM
loopAH MACRO l
dec AH
jnz l
ENDM
loopDX MACRO l
dec DX
jnz l
ENDM
loopBP MACRO l
dec BP
jnz l
ENDM
loopBL MACRO l
dec BL
jnz l
ENDM
loopCH MACRO l
dec CH
jnz l
ENDM
loopDI MACRO l
dec DI
jnz l
ENDM
loopCL MACRO l
dec CL
jnz l
ENDM
loopDL MACRO l
dec DL
jnz l
ENDM
loopDH MACRO l
dec DH
jnz l
ENDM
movlp MACRO d,s,o
Mov WO d+2,s
Mov WO d,o
ENDM
setalc MACRO
db 0D6h
ENDM
EOI MACRO
mov AL,20h
out 20h,AL
ENDM