Metropoli BBS
VIEWER: common.mac MODE: TEXT (ASCII)
;14-oct-88, Dale Glowinski
;Modifications made to support C compilers which place an underscore before
;procedure names.  Define UNDERLINE in the file version.inc in order to
;use this feature.
;EXTERN and P_END macros added. BEGIN macro modified.


;-------------------------------- EXTERN -----------------------------------
EXTERN  MACRO  name
   IF UNDERLINE
	IF  LPROG
	  extrn _&name:  far
	ELSE
	  extrn _&name:  near
	ENDIF
   ELSE
	IF  LPROG
	  extrn name:  far
	ELSE
	  extrn name:  near
	ENDIF
   ENDIF
ENDM

;-------------------------------- P_END ------------------------------------
P_END  MACRO  name
   IF UNDERLINE
	  _&name  endp
   ELSE
	  name  endp
   ENDIF
ENDM

;-------------------------------- BEGIN ------------------------------------
;**
;
; The BEGIN and ENTRY macros establish appropriate function entry points
; depending on whether NEAR or FAR program addressing is being used.  The
; only difference between the two is that BEGIN generates a PROC operation
; to start a segment.
;
;NOTE: This redefines an existing macro (in either cmicro.mac or dos.mac)
;      and must come after it in the assembly.

BEGIN   MACRO   name            ; begin a function
  IF UNDERLINE
	public  _&name
	IF  LPROG
	  _&name    proc   far
	ELSE
	  _&name    proc    near
	ENDIF
  ELSE
	public  name
	IF  LPROG
	  name    proc    far
	ELSE
	  name    proc    near
	ENDIF
  ENDIF
ENDM

[ RETURN TO DIRECTORY ]