. . REENTRANT EDIT$ INTERFACE . . . (C) Copyright 1972-1978 John Walker . . This software is in the public domain . AXR$ DEFUNCT$ FANG PURE CODE . . ENTER EDIT MODE . . LMJ A1,RDIT$ . <RETURN> . RDIT$* BGET 22+EPKTL ALLOCATE A PACKET AND LINE LA A2,(1,CANNED) GET POINTER TO CANNED PACKET LR,U R1,EPKTL LOAD LENGTH OF CANNED PACKET LA,U A3,,A0 GET BUFFER ADDRESS LXI,U A3,1 SET UP INCREMENT BT A3,,*A2 MOVE CANNED PACKET TO BUFFER LA,U A2,EPKTL,A0 LOAD LINE START ADDRESS SA,H2 A2,,A0 PUT INTO PACKET LX,U X11,,A1 GET RETURN POINT J EDIT$ ESTABLISH EDIT$ MODE . . PRINT AND TERMINATE . . LA,U A0,<SPACING> . LMJ A1,RPRTX$ . RPRTX$* . if overtype TZ TYPOUTST IS A TYPE AND READ OUTSTANDING ? AA,U A0,2 YES. DON'T OVERTYPE IT SZ TYPOUTST CLEAR TYPE AND READ OUTSTANDING endf LSSL A0,18+6 SHIFT SPACING TO T1 LXM,U A0,EPKTL,X1 POINT TO IMAGE AA A0,(22,0) PUT LENGTH IN PRINT$ WORD TNZ SHADUP OUTPUT TURNED OFF ? PRINT$ . PRINT THE LINE RDITX$* E$DITX . TERMINATE EDITING MODE BRELP A0 RELEASE THE PACKET AND LINE J 0,A1 RETURN . . PRINT AND STAY IN EDITING MODE . . LA,U A0,<SPACING> . LMJ X11,RPRT$ . <RETURN> . RPRT$* LXI,U X11,,X11 SAVE RETURN POINT if overtype TZ TYPOUTST IS A TYPE AND READ OUTSTANDING ? AA,U A0,2 YES. DON'T OVERTYPE IT SZ TYPOUTST CLEAR TYPE AND READ OUTSTANDING endf LSSL A0,18+6 SHIFT OVER SPACING LXM,U A0,EPKTL,X1 GET LINE POINTER AA A0,(22,0) ADD IN LENGTH TNZ SHADUP OUTPUT TURNED OFF ? PRINT$ . PRINT THE LINE E$DITX . TERMINATE EDIT MODE LA A1,X11 GET RETURN POINT SSL A1,18 SHIFT IT DOWN LX,U X11,,A1 LOAD IT INTO X11 J EDIT$ SET UP EDIT MODE, RETURN TO CALL . PURE DATA CANNED E$PKT 22,$-$ 'MSG','!' EPKTL EQU $-CANNED END