.TITLE PPCP .IDENT /V01.00/ $USRSP == 42 ;USER STACK POINTER CR = 15 ;CARRIAGE RETURN LF = 12 ;LINE FEED .MCALL .EXIT,.PRINT,.TTYOUT ;SYSTEM MACRO CALLS START:: CMP @#$USRSP,SP ;RUNNING UNDER RT-11? BEQ 10$ ;EQ->YES MOV #PR.PP,PRINT ;UPDATE PRINT HANDLER MOV #EX.PP,EXIT ;UPDATE EXIT HANDLER 10$: MOV #TEXT,R1 ;POINT TO ASCIZ STRING CALL @PRINT ;PRINT IT JMP @EXIT ;EXIT PR.PP:: MOV R1,10$ ;SET STRING ADDRESS JSR R4,@#163006 ;PRINT STRING 10$: .BLKW ; RETURN ;RETURN PR.RT:: MOVB (R1)+,R0 ;GET CHAR BEQ 10$ ;EQ -> END OF LINE .TTYOUT ;PRINT CHARACTER BR PR.RT ;LOOP 10$: RETURN ;RETURN EX.RT:: .EXIT ;EXIT TO OS EX.PP:: MOV #START,R1 ;FREE MEMORY AND EXIT JMP @#176300 ; PRINT:: .WORD PR.RT ;RT-11 BY DEFAULT EXIT:: .WORD EX.RT ; TEXT: .ASCIZ /HELLO WORLD!/ .END START