108 lines
3.2 KiB
PHP
108 lines
3.2 KiB
PHP
; This Macro was removed from sysmsg.inc. We had to remove this
|
||
; macro and put it into it's own include file in order to clear up
|
||
; some assembly errors. MS MASM will not allow a public declaration
|
||
; during the second pass of the assembler. IBM MASM will allow this.
|
||
;
|
||
;
|
||
;
|
||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||
;; $M_DECLARE Macro
|
||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||
;
|
||
$M_DECLARE macro numcls ;
|
||
$M_DCOUNT = 0 ;
|
||
REPT numcls ;
|
||
$M_DCOUNT = $M_DCOUNT + 1 ;
|
||
$M_DECLARE2 %$M_DCOUNT ;
|
||
ENDM ;
|
||
|
||
IF COMR
|
||
IFNDEF $M_RT2 ; If Resident table is not in this assembly,
|
||
EXTRN $M_RT2:BYTE ; Must be external
|
||
ELSE
|
||
PUBLIC $M_RT2
|
||
ENDIF ;
|
||
ELSE
|
||
IFNDEF $M_RT ; If Resident table is not in this assembly,
|
||
EXTRN $M_RT:BYTE ; Must be external
|
||
ELSE
|
||
PUBLIC $M_RT
|
||
ENDIF ;
|
||
ENDIF
|
||
|
||
$M_CHECK $M_GET_MSG_ADDRESS ; If this subroutine is not in this assembly,
|
||
$M_CHECK $M_MSGSERV_1 ; If this subroutine is not in this assembly,
|
||
$M_CHECK $M_MSGSERV_2 ; If this subroutine is not in this assembly,
|
||
|
||
ENDM ;
|
||
;
|
||
$M_DECLARE2 macro innum ;
|
||
IF NOT COMR ; IF Not resident COMMAND.COM
|
||
IF NOT COMT ; IF Not transient COMMAND.COM
|
||
IFNDEF $M_CLS_&innum ; IF class is not in this assembly,
|
||
IF FARmsg ;
|
||
EXTRN $M_CLS_&innum:FAR ; Must be external
|
||
ELSE ;
|
||
EXTRN $M_CLS_&innum:NEAR ; Must be external
|
||
ENDIF ;
|
||
ELSE ; ELSE
|
||
PUBLIC $M_CLS_&innum ; Label PUBLIC
|
||
ENDIF ;
|
||
ELSE ; ELSE
|
||
IFDIF <$M_CLS_&innum>,<$M_CLS_1> ; IF NOT $M_CLS_1 or
|
||
IFDIF <$M_CLS_&innum>,<$M_CLS_2> ; IF NOT $M_CLS_2 then
|
||
IFNDEF $M_CLS_&innum ; IF class is not in this assembly,
|
||
IF FARmsg ;
|
||
EXTRN $M_CLS_&innum:FAR ; Must be external
|
||
ELSE ;
|
||
EXTRN $M_CLS_&innum:NEAR ; Must be external
|
||
ENDIF ;
|
||
ELSE ; ELSE
|
||
PUBLIC $M_CLS_&innum ; Label PUBLIC
|
||
ENDIF ;
|
||
ENDIF ;
|
||
ENDIF ;
|
||
ENDIF ;
|
||
ELSE ; ELSE
|
||
IFDIF <$M_CLS_&innum>,<$M_CLS_1> ; IF NOT $M_CLS_1 or
|
||
IFDIF <$M_CLS_&innum>,<$M_CLS_2> ; IF NOT $M_CLS_2 then
|
||
IFNDEF $M_CLS_&innum ; IF class is not in this assembly,
|
||
IF FARmsg ;
|
||
EXTRN $M_CLS_&innum:FAR ; Must be external
|
||
ELSE ;
|
||
EXTRN $M_CLS_&innum:NEAR ; Must be external
|
||
ENDIF ;
|
||
ELSE ; ELSE
|
||
PUBLIC $M_CLS_&innum ; Label PUBLIC
|
||
ENDIF ;
|
||
ENDIF ;
|
||
ENDIF ;
|
||
ENDIF ;
|
||
ENDM ;
|
||
;
|
||
$M_CHECK macro parm ;
|
||
IFNDEF parm ; IF class is not in this assembly,
|
||
IF FARmsg ;
|
||
EXTRN parm:FAR ; Must be external
|
||
ELSE ;
|
||
EXTRN parm:NEAR ; Must be external
|
||
ENDIF ;
|
||
ELSE
|
||
IF COMR
|
||
ELSE
|
||
PUBLIC parm
|
||
ENDIF
|
||
ENDIF ;
|
||
ENDM ;
|
||
;
|
||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||
;;
|
||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||
;
|
||
IF1 ;
|
||
$M_DECLARE %$M_NUM_CLS ; Declare any class not in this assembly
|
||
ENDIF ;
|
||
;
|
||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||
|
||
|