.MACRO PRINT BUFF,LEN,CCW ; ; ; THIS MACRO ALLOWS PRINTING OF OUTPUT BUFFERS USING A ; ; COMMON OUTPUT ROUTINE, $OUT. ; ; ; ; IF ONLY THE BUFFER IS SPECIFIED, THEN IT IS ASSUMED ; ; THAT A LABEL HAS BEEN DEFINED WITH THE ADDRESS OF ; ; THE LABEL WITH AN "S" APPENDED TO INDICATE THE LENGTH ; ; IN THIS CASE, ONLY THE LABEL NEED BE PASSED AS THE ; ; ARGUMENT, WITH NO # REQUIRED. ; ; ; ; PRINT LABEL ; ; ; ; THE SECOND CASE INVOLVES PASSING THE BUFFER ADDRESS ; ; AND THE LENGTH AS REQUIRED ARGUMENTS, AND THE ; ; CARRIAGE CONTROL WORD AS AN OPTIONAL ARGUMENT. ; ; ; ; PRINT #BUFFER,#LENGTH[,#CARRIAGE_CONROL] ; ; ; .IF B LEN MOV #40,-(SP) MOV #BUFF'S,-(SP) MOV #BUFF,-(SP) CALL $OUT .MEXIT .ENDC .IF B CCW CLR -(SP) .IFF MOV CCW,-(SP) .ENDC MOV LEN,-(SP) MOV BUFF,-(SP) CALL $OUT .ENDM PRINT