/ / VERSION 5A 4-27-77 PT / SECT CHARS ENTRY CGET ENTRY CPUT TEXT +CHARS+ CHARXR, SETX XRCHAR SETB BPCHAR BPCHAR, F 0. XRCHAR, F 0. FROM, F 0. NCHAR, F 0. ORG 10*3+BPCHAR FNOP JA CHARXR 0 CHARTN, JA . BASE 0 START, JA . STARTD FLDA 10*3 FSTA CHARTN FLDA 0 SETX XRCHAR SETB BPCHAR BASE BPCHAR LDX 1,1 FSTA BPCHAR /STR SAVED IN BPCHAR FLDA% BPCHAR,1 FSTA STR FLDA% BPCHAR,1+ FSTA NCHAR FLDA% BPCHAR,1+ FSTA FROM /ADDR OF F STARTF FLDA% NCHAR ATX 0 JA START / CGET, JSA START TRAP4 CGETIT XTA 0 FSTA% FROM /TO 3 WORDS JA CHARTN / CPUT, JSA START FLDA% FROM ATX 1 FCLA TRAP4 CPUTIT JA CHARTN / SECT8 CHAR /ALL IN 1 PAGE CGETIT, 0 JMS FLDRTN TAD O2FLD DCA ORGFLD TAD XFLD DCA XR2FLD TAD PFLD DCA GFLD GFLD, 0 /STR FIELD TAD% STR-1 ORGFLD, 0 /THIS ROUTINE DCA LOC TAD XR /N RAR SNL CLA JMP RIGHT CLL TAD LOC RTR RTR RTR BOTH, AND P77 XR2FLD, 0 DCA% QXR+1 /PASS TO FPP CDF CIF 0 JMP% CGETIT RIGHT, TAD LOC JMP BOTH CADD, ADDR CGETIT 0 STR, 0 0 / CPUTIT, 0 JMS FLDRTN TAD QXR1 AND P7 RTL RAL TAD CDFINS DCA XR1FLD TAD O2FLD DCA O1FLD TAD O2FLD DCA O3FLD TAD PFLD DCA P1FLD XR1FLD, 0 TAD% QXR1+1 /F VALUE O1FLD, 0 AND P77 DCA LOC P1FLD, 0 TAD% STR-1 O3FLD, 0 DCA XR1FLD /USE AS A TMP TAD XR RAR SNL CLA JMP PRIGHT CLL TAD XR1FLD AND P77 /SAVE RIGHT HALF DCA XR1FLD TAD LOC RTL RTL RTL TAD XR1FLD PFLD, 0 DCA% STR-1 CIF CDF 0 JMP% CPUTIT PRIGHT, TAD XR1FLD AND P7700 TAD LOC JMP PFLD / FLDRTN, 0 TAD CADD AND P7 RTL RAL TAD CDFINS DCA O2FLD TAD QXR AND P7 RAL RTL TAD CDFINS DCA XFLD XFLD, 0 TAD% QXR+1 O2FLD, 0 DCA XR TAD XR RAR SNL TAD M1 CLL TAD STR+1 DCA STR-1 SZL CLA IAC CLL TAD STR AND P7 RAL RTL TAD CDFINS DCA PFLD /STR FLD JMP% FLDRTN P77, 77 CDFINS, 6203 P7, 7 QXR, ADDR XRCHAR LOC, 0 XR, 0 M1, -1 QXR1, ADDR XRCHAR+1 P7700, 7700