5 OPTION RUN 10 PRINT"Upon pressing any key the screen will clear. Use the cursor keys to select a place 20 PRINT"on the screen to type, then type your phrases etc. After typing each phrase a 30 PRINT"press of the [ENTER] key will fix this in position. Press [ENTER] a few more times 40 PRINT"to display the phrase in various ways, or to get back to editing the phrase.":PRINT 50 PRINT"You may type up to a theoretical maximum of 100 phrases. When you are ready to 60 PRINT"store them in a file, press [EXIT] and type an eight letter filename. After saving 70 PRINT"the file in this way the file cannot subsequently be altered. Your finished file 80 PRINT"may be typed on the screen with the CP/M or BASIC command TYPE filename, or converted 90 PRINT"to a .COM file using ASCIICOM.BAS on this disc.":PRINT 100 PRINT"Press STOP to stop or any other key to continue.":IF INPUT$(1)=CHR$(3) THEN GOTO 1360 1000 ON ERROR GOTO 1330 1010 x$=CHR$(27):x=1:y=1 1020 DIM q$(100):WIDTH 255:PRINT CHR$(27)+"E";CHR$(27)+"0":DEF FNtab$(x,y)=CHR$(27)+"Y"+CHR$(y+32)+CHR$(x+32) 1030 DEF FNmdl$(y,word$)=FNtab$(ROUND(45-(LEN(word$)/2)),y)+word$ 1040 DEF FNbox$(word$)=FNtab$(x-1,y-1)+CHR$(134)+STRING$(LEN(word$),CHR$(138))+CHR$(140)+FNtab$(x-1,y)+CHR$(133)+word$+CHR$(133)+FNtab$(x-1,y+1)+CHR$(131)+STRING$(LEN(word$),CHR$(138))+CHR$(137) 1050 DEF FNboxA$(word$)=FNtab$(x-1,y-1)+CHR$(150)+STRING$(LEN(word$),CHR$(154))+CHR$(156)+FNtab$(x-1,y)+CHR$(149)+word$+CHR$(149)+FNtab$(x-1,y+1)+CHR$(147)+STRING$(LEN(word$),CHR$(154))+CHR$(153) 1060 DEF FNboxB$(word$)=CHR$(27)+"p"+FNbox$(word$)+CHR$(27)+"q" 1070 PRINT FNtab$(x,y);:z$=INPUT$(1) 1080 IF z$=CHR$(6) THEN x=MIN(x+1,88) ELSE IF z$=CHR$(1) THEN x=MAX(1,x-1) 1090 IF z$=CHR$(30) THEN y=MIN(30,y+1) ELSE IF z$=CHR$(31) THEN y=MAX(1,y-1) 1100 IF z$=CHR$(18) THEN PRINT CHR$(27)+"E":FOR p=1 TO c:PRINT q$(p);:NEXT 1110 IF z$=CHR$(27) THEN PRINT x$"E"x$"H":FILES:PRINT:PRINT:INPUT "save as filename?",file$:OPEN "o",1,file$+".SCR":PRINT #1,x$+"E":FOR p=1 TO c:PRINT #1,q$(p);:NEXT:PRINT #1,x$+"H":CLOSE:z$=CHR$(18):GOTO 1360 1120 IF z$>=" " THEN l$="":GOSUB 1140:c=c+1:q$(c)=FNtab$(x,y)+l$:GOTO 1240 1130 GOTO 1070 1140 '26.4.1989 : newinput.bas :ENTER showing l$(the answer):uses x$,y$,z$,l$,p and control codes inc ESC j & ESC k 1150 p=0:x$=CHR$(27):WIDTH 255 1160 y$=CHR$(1)+CHR$(6)+CHR$(127)+CHR$(7):GOTO 1180 1170 z$=INPUT$(1):ON INSTR(y$,z$) GOSUB 1200,1210,1220,1230:IF z$=CHR$(13) THEN RETURN 1180 IF z$<" " OR z$=CHR$(127) THEN 1170 1190 l$=LEFT$(l$,p)+z$+MID$(l$,p+1):PRINT x$"j"MID$(l$,p+1)x$"k"x$"C";:p=p+1:GOTO 1170 1200 IF p>0 THEN p=p-1:PRINT x$"D";:RETURN ELSE PRINT CHR$(7);:RETURN 1210 IF p0 THEN p=p-1:PRINT x$"D";:ELSE PRINT CHR$(7);:RETURN 1230 l$=LEFT$(l$,p)+MID$(l$,p+2):PRINT x$"N";:RETURN 1240 p=-1 1250 PRINT q$(c);FNtab$(x,y);:z$=INPUT$(1):IF z$<>CHR$(13) THEN GOTO 1080 1260 p=p+1 1270 IF p=3 THEN q$(c)=FNbox$(l$):GOTO 1250 1280 IF p=2 THEN q$(c)=FNboxA$(l$):GOTO 1250 1290 IF p=4 THEN q$(c)=FNboxB$(l$):PRINT q$(c);:GOTO 1250 1300 IF p=1 THEN q$(c)=FNtab$(x,y)+x$+"p"+l$+x$+"q":GOTO 1250 1310 IF p=0 THEN q$(c)=FNtab$(x,y)+x$+"r"+l$+x$+"u":GOTO 1250 1320 IF p=5 THEN q$(c)=FNtab$(x,y)+l$:PRINT x$+"E":FOR cc=1 TO c:PRINT q$(cc):NEXT:PRINT FNtab$(x,y);:GOSUB 1140:q$(c)=FNtab$(x,y)+l$:GOTO 1240 1330 IF ERR=15 THEN p=5:RESUME 1320 1340 IF ERR=64 THEN INPUT "Eight letter filename (no full stops!), please? ",file$:RESUME 1350 ON ERROR GOTO 0 1360 IF FIND$("M:$$$$$$$$.&&&")<>"" THEN OPTION STOP:PRINT "[Press any key to return to main menu or press (STOP) to stop]":z$=INPUT$(1):RUN "M:$$$$$$$$.&&&":ELSE END OPTION STO