.TITLE WRMAC .IDENT /V01.1/ ; ; WRMAC - WRITE TO MACRO FILE ; ; .MCALL PUT$ ; .PSECT ORCDAT,D SPACE: .BYTE 40 .EVEN ; .PSECT WR$MAC::MOV #ERR9,MESNO JSR PC,SAVREG TST LNCNT ; NEED TO OUTPUT HEADER? BEQ 4$ ; NO CLR LNCNT ; YES MOV #MACFDB,R0 ; RESET ; MOV #HEADER,F.NRBD+2(R0) ; O MOV #HEADER,R1 ; MOV #HDRSIZ,F.NRBD(R0) MOV #HDRSIZ,R2 ; PUT$ R0 JSR PC,PUT BCS 5$ ;(FAILE MOV #MACFDB,R0 ; MOV #SPACE,F.NRBD+2(R0) ; OU MOV #SPACE,R1 ; MOV #1,F.NRBD(R0) MOV #1,R2 ; PUT$ R0 JSR PC,PUT BCS 5$ ; PUT$ R0 MOV #MACFDB,R0 MOV #SPACE,R1 MOV #1,R2 JSR PC,PUT BCS 5$ 4$: MOV #MACFDB,R0 ; MOV #MACLIN,F.NRBD+2(R0) ; M MOV #MACLIN,R1 ; MOV MACLEN,F.NRBD(R0) MOV MACLEN,R2 ; SUB #MACLIN,F.NRBD(R0) SUB #MACLIN,R2 BLE 6$ CMP R2,#80. BLE 44$ MOV #80.,R2 ; PUT$ R0 44$: JSR PC,PUT BCC 6$ 5$: JSR PC,RESREG SEC JMP MOCALL ; TELL U 6$: JSR PC,RESREG CLC RTS PC ; .END