.NLIST ; ; ; *** CDAMAC.MAC *** ; ; ; L O C A L M A C R O S ; ; ; MACRO TO PUSH ARGUMENTS ONTO STACK ; .MACRO PUSH A,B,C,D,E,F .NLIST .NARG $$$ARG .IIF GT $$$ARG-0, MOV A,-(SP) .IIF GT $$$ARG-1, MOV B,-(SP) .IIF GT $$$ARG-2, MOV C,-(SP) .IIF GT $$$ARG-3, MOV D,-(SP) .IIF GT $$$ARG-4, MOV E,-(SP) .IIF GT $$$ARG-5, MOV F,-(SP) .LIST .ENDM PUSH ; ; ; ; ; MACRO TO POP ARGUMENTS OFF STACK ; .MACRO POP A,B,C,D,E,F .NLIST .NARG $$$ARG .IIF GT $$$ARG-5, MOV (SP)+,F .IIF GT $$$ARG-4, MOV (SP)+,E .IIF GT $$$ARG-3, MOV (SP)+,D .IIF GT $$$ARG-2, MOV (SP)+,C .IIF GT $$$ARG-1, MOV (SP)+,B .IIF GT $$$ARG-0, MOV (SP)+,A .LIST .ENDM POP ; ; ; ; ; SUBROUTINE MACROS ; .MACRO CALL X JSR PC,X .ENDM CALL ; .MACRO RETURN RTS PC .ENDM RETURN ; ; ; ; MACRO TO FORM ERROR MESSAGES ; .MACRO ERRMSG X .IF NDF OLA .ASCIZ "CDA -- 'X'" .IFF .ASCIZ "OLA -- 'X'" .ENDC .ENDM ERRMSG ; ; ; ; .LIST