;MACRO EXAMPLE ;PLACE THIS CODE IN A FILE NAMED ;MFD.MAC ; ; ;The following programs are used in the RT-11 User and RT-11 ;Programmer self paced instruction courses for RT-11 V4.They are also ;similar to programs used in the Programming with RT-11 series for ;RT-11 V5.0 or later. The name of the files are as specified in the ;self paced course. ; ;The code is supplied as a service as Digital does not supply these ;on diskette. ;Any copyright is the property of Digital Equipment Corporartion ; ;PROGRAM PROMPTS YOU FOR YOUR NAME ;AND REPLIES AFTER YOU HAVE ENTERED IT. .MCALL .PRINT, .TTYIN, .TTYOUT, .EXIT ;DATA AND MESSAGE BUFFERS PLEASE: .ASCII /PLEASE TYPE IN YOUR NAME, FOLLOWED BY A CARRIAGE RETURN/<200> WELCOM: .ASCII /WELCOME TO RT-11,/ BUFF: .BLKB 80. .EVEN LF=12 ;DEFINE LINE FEED CODE START: .PRINT #PLEASE ;PRINT PROMPT MOV #BUFF,R1 ;SET POINTER TO INPUT BUFFER AGAIN: .TTYIN ;GET NEXT CHARACTER BCS AGAIN ;TRY AGAIN IF NO CHARACTER AVAILABLE MOVB R0,(R1)+ ;STORE CHARACTER CMPB #LF,R0 ;END OF INPUT? BNE AGAIN ;NO. FETCH NEXT CHARACTER MOV #WELCOM,R1 ;YES. SET POINTER TO OUTPUT BUFFER OUT: MOVB (R1)+,R0 ;PUT NEXT CHARACTER IN R0 .TTYOUT ;OUTPUT NEXT CHARACTER CMPB #LF,R0 ;WAS IT A LINEFEED? BNE OUT ;NO. OUTPUT NEXT CHARACTER .EXIT ;YES. RETURN CONTROL TO MONITOR .END START