.MACRO PARMSV A1,A2,A3,A4,A5,A6,A7,A8,A9,A10 ; ; THIS MACRO CREATES A FORTRAN-STYLE PARAMETER LIST ON THE STACK, ; LEAVING R5 POINTING TO THE START OF THE LIST. ; THE MACRO PARAMETERS ARE TAKEN TO BE THE VALUES OF THE ACTUAL PARAMS ; TO CLEAR THE STACK, ; SP SHOULD BE INCREMENTED BY PARMSP ; .NARG PARMSN ;NUMBER OF ARGUMENTS ; PARMSP=0 .IRP ARG, .IF NB,ARG MOV ARG,-(SP) ;STORE ARGUMENT MOV SP,-PARMSN*2(SP) ;AND ADDRESS PARMSP=PARMSP+2 .IFF .IF NE,PARMSP PARMSP=PARMSP+2 CLR -(SP) MOV #-1,-PARMSN*2(SP) .ENDC .ENDC .ENDR SUB #PARMSN*2,SP ;SKIP ADDRESSES PARMSP=PARMSP+ MOV #PARMSN,-(SP) PARMSP=PARMSP+2 MOV SP,R5 .ENDM