410 ' print a string on con: 415 ' string in A$, CR%=1 no crlf cr%=2 crlf after 420 ' 1.7 # 425 IF STACKED%<>0 THEN RETURN 430 BREAK%=0 435 XKEY$=INKEY$ 440 IF XKEY$=CHR$(&HB) OR XKEY$="K" OR XKEY$="k" THEN BREAK%=1 445 IF XKEY$=CHR$(19) OR XKEY$="S" OR XKEY$="s" THEN PAUSE%=1 ELSE PAUSE%=0 450 IF PAUSE%<>0 AND LEN(INKEY$)=0 THEN GOTO 450 455 ON CR% GOTO 460,465 460 PRINT A$; : RETURN 465 PRINT A$: RETURN 500 ' 512 ' get a string into ANSWER$ (make upper case) 514 ' returns length in nkey%, string in ANSWER$ 516 ' 1.10 # 518 IF STACKED%<>0 THEN ANSWER$=STACKED$: STACKED%=0: NKEY%=LEN(STACKED$): GOTO 552 520 ANSWER$="" 522 KEY$="*" 524 NKEY%=0 526 WHILE NKEY% <= MAX% 528 KEY$=INPUT$(1) 530 KEY%=ASC(KEY$) 532 IF KEY$="~" THEN GOTO 548 534 IF KEY%=18 THEN PRINT "#"+CRLF$+ANSWER$;: GOTO 548 '^R 536 IF KEY%=13 THEN GOTO 552 ' RETURN 538 IF KEY%=24 THEN FOR INDEX%=NKEY% TO 1 STEP -1: PRINT BSTRING$;: NEXT INDEX%: GOTO 520 '^X 540 IF KEY%=21 THEN PRINT "#": GOTO 520 '^U 542 IF (KEEPLOWER%=0 AND KEY% >= 97 AND KEY%<= 122) THEN KEY%=KEY%-32 544 IF KEY%=127 OR KEY%=8 THEN GOSUB 564 ELSE IF KEY% < &H20 AND CTRLOK%=0 THEN GOTO 548 'ignor other ctrl chars 546 IF DELCHAR%=0 THEN NKEY%=NKEY%+1: PRINT KEY$;: ANSWER$=ANSWER$+CHR$(KEY%) ELSE DELCHAR%=0 548 IF NKEY%<0 THEN NKEY%=0: PRINT "SYSERR(2) Leave Comment to SYSOP" 550 WEND 552 STACKED%=INSTR(ANSWER$,";") 554 IF STACKED%<>0 THEN STACKED$=MID$(ANSWER$,STACKED%+1): ANSWER$=LEFT$(ANSWER$,STACKED%-1) 556 KEEPLOWER%=0 557 CTRLOK%=0 558 IF ANSWER$<> " " THEN IF LEFT$(ANSWER$,1)=" " THEN ANSWER$=MID$(ANSWER$,2): GOTO 558 560 NKEY%=LEN(ANSWER$) 562 RETURN 564 DELCHAR%=1 566 IF NKEY%=0 THEN RETURN 568 NKEY%=NKEY%-1 570 IF KEY%<> &H7F THEN PRINT BSTRING$; ELSE PRINT RIGHT$(ANSWER$,1); 572 ANSWER$=LEFT$(ANSWER$,LEN(ANSWER$)-1) 574 RETURN