home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
FreeWare Collection 2
/
FreeSoftwareCollection2pd199x-jp.img
/
ms_dos
/
ish
/
ish200s
/
masm.h
< prev
next >
Wrap
Text File
|
1990-06-14
|
2KB
|
132 lines
;
; ish file converter for MS-DOS Ver 2.00 (90/3/27)
;
;
; Copyright (c) 1986, 1987, 1989, 1990 by M. ishizuka
; All rights reserved.
;
;-----------------------------------------------;
; ;
; macro masm.h ;
; ;
; macro for using MASM instead of OPTASM ;
; ;
;-----------------------------------------------;
ifdef @Version
if1
masmjmp1 macro para1, para2, para3, para4
ifnb <para2>
para2 macro label1, label2, label3
local skip, flag
ifnb <label3>
.err
endif
ifnb <label2>
ifdifi <label1>, <short>
.err
endif
para2 label2
exitm
elseif1
ifdef label1
if (((offset label1 - $ - 2) lt 80h) and \
((offset label1 - $ - 2) ge -80h))
flag = 1
dw ?
exitm
endif
endif
flag = 0
dw ?
jmp label1
skip:
elseif2
if flag
db para1
db offset label1 - $ - 1
else
db para1 xor 1
db offset skip - $ - 1
jmp label1
skip:
endif
endif
endm
masmjmp1 para1, para3,para4
endif
endm
masmjmp1 70h, jo
masmjmp1 71h, jno
masmjmp1 72h, jb, jnae, jc
masmjmp1 73h, jnb, jae, jnc
masmjmp1 74h, jz, je
masmjmp1 75h, jnz, jne
masmjmp1 76h, jbe, jna
masmjmp1 77h, jnbe, ja
masmjmp1 78h, js
masmjmp1 79h, jns
masmjmp1 7ah, jp, jpe
masmjmp1 7bh, jnp, jpo
masmjmp1 7ch, jl, jnge
masmjmp1 7dh, jnl, jge
masmjmp1 7eh, jle, jng
masmjmp1 7fh, jnle, jg
masmjmp2 macro para1, para2, para3, para4
ifnb <para2>
para2 macro label1, label2, label3
local skip, flag
ifnb <label3>
.err
endif
ifnb <label2>
ifdifi <label1>, <short>
.err
endif
para2 label2
exitm
elseif1
ifdef label1
if (((offset label1 - $ - 2) lt 80h) and \
((offset label1 - $ - 2) ge -80h))
flag = 1
dw ?
exitm
endif
endif
flag = 0
dw ?, ?
jmp label1
skip:
elseif2
if flag
db para1
db offset label1 - $ - 1
else
db para1
db 2
jmp short skip
jmp label1
skip:
endif
endif
endm
masmjmp2 para1, para3,para4
endif
endm
masmjmp2 0e0h, loopnz, loopne
masmjmp2 0e1h, loopz, loope
masmjmp2 0e2h, loop
masmjmp2 0e3h, jcxz
endif
endif