P184 ORACLE 184 Sun15 Mar ITV 2140:10 302081659 EDITOR 302081659 150 IF L=23 THEN RETURN ELSE L=L+1 : GOT O 153|$111 REM UP|<152 IF L=O THEN RETUR N ELSD L=L-1 : GOTO 113|2153 PRINT CUR(L ,C); : RE PNREMBELOGHEREWE RE NOT MOVING THE CURSOR, 'F'RE DOING GR APHIC ENTRY|e155 X=C*2-2 Y=(23-L)*3|f1 56 P.=INSTR(1,G$,K$) : IF P.=0 THEN RE$Z RN |:157 IF P.<3 THEN Y=Y+2 ELSE IF P.<5 THEN Y=Y+1|q158 IF P./2=INT(P./2) THEN X=X+1|x119 IF TXPOINT(X,Y) THEN TXPOINT X,Y,-1 ELSE TXPOINT X,Y|6160 RE PRN |316 1 REM |8162 REM - END OF P2OGRAM|f163 CL OSE 1 REWCT 1 : L=23 : R$="YN" : M$="A nother run? (Y/N) " : GOSUB 35 : PRINT C HR$(12); : ON R GOTO 20,164164 PRINT C HR$ 12) YEL NWBG RED "End of program. " BLBG : PRINT : PRINT |g165 GOTO 65531|5 |
P184 ORACLE 184 Sun15 Mar ITV 2140:29 302081659 EDITOR 302081659 80 OPEN F$ AS FILE 1 : ON ERROR GOTO : R ETURN |981 RESUME 82|—82 PRINT CHR$(12) CUR(21,0) FLSH "UNABLE TO OPDN FILE """ F$ """"; : GOSUB 65 : REWCT 1 : GOTO 77| &83 REM END OF OPDN—FILE|684 REM |,81 EEN CLEA SFORITONEXTI |p87 PRINT CUR(0,1); : FOR I=1 TO 36 P RINT " "; : FOR J=1 TO 500 : NEXT J NE XT I : PRINT CHR$(12);|288 G=0|—89 GET K $ : K=ASCII(K$) : C=PEEK(65358) : L=PEEK (65359)|'90 IF K=7 THEN G=1 : GOTO 89 : REM GRAPHICS MODE|o91 IF K=20 AND G THEN G=0 : GOTO 89 : REM $FXT MODE|h92 IF G THEN GOSUB 139 : GO O 89 : REM WE'RE IN GRAPHICS MODE|293 IF K=1 OR K=205 THEN G OTO 94 ELSE GOSUB 117 : GOTO 89|/94 IF K =5 THEN E=-1|d95 GOSUB 98|;96 RETURN |+9 7 REM - END OF GET—A—SCREENFULL|}98 REM < 
P184 ORACLE 184 Sun15 Mar ITV 2148:01 302081659 EDITOR 302081659 67 PRINT CUR(23,0) SPACE$(40) CUR(22,0) YEL NWBG RED "Name of file? " BLBG SPACE $(22) STRING$(22,8);|)68 INPUT ""F$ : L= LEN(F$) : IF L>8 OR L<1 THEN PRINT CUR(2 1,0) SPACE$(17) FLSH "FILENAME ILLEGAL" CHR$ 7); : GOTO 67 ELSE F$=F$+".EDI" : R ETURN |<6 DMENDOFGETFILENAME REM |'71 REM - OPEN—FILE SUB2OUTINE|772 IF M=1 THDN PRINT CHR$(12);DBLE MAG "IM PORTANT" : PRINT : PRINT : PRINT MAG " M ake sure that cassettd is" : PRINT MAG F LSH "not" STDY "write-protected."|s73 L= 23 : R$=" " : M$="Insert cassette, then press space" : GOSUB 35|x74 ON ERROR GOT O 75 : REGCT 1 : GOTO 77|d75 RESUME 76|f 76 PRINT CHR$(12) CUR(21,0) FLSH "UNABLE TO REWIND CASSETTE"; : GOTO 71|+77 ON E R ORGOTOONMGOTO REMM IS MODE (1=RECORD,2=PLAYBACK)|÷7 PREPA RE F$ AS FILE 1 ON ER ORGOTORETURN |÷|
P184 ORACLE 184 Sun15 Mar ITV 2149:23 302081659 EDITOR 302081659 1 REM ************************|a2 REM * *|f3 R D * EDITOR M ARK 3 *|,4 REM * *|h5 REM * Andrew Wallis *|6 6 REM 2 Brighton Polytechnic *|i7 REM * December 1980 *|t8 REM * *|l9 "DD ****************** ******|i10 REM e is so crude -|12 REM - it's been patc hed too many l free to|/14 REM M rewrite it for me.|x 15 REM |&16 INTEGER Z G$="124578"|217 DE F FNP(L,C)=31744+(LO8.-INT(L/8.))*1024+I NT(L78.)*40+C |?18 PRINT CHR$(12) RED DB LE "Screen Editor" : PRINT : PRINT GYEL " ,,,,,,,,,,,,,"|£19 GOSUB 46|020 L=23 : R$="RP" : M$="Record or playback? (2/P) " : GOSUB 35 Z ON R GOTO 21,28|p21 DD |£22 RGN M RECORD SECTION|e23 GOSUB 65|, 24 M=1 : GOSUB 70|>25 E=0 Z GOSUB 84 : I F NOT E THEN GOTO 25|i26 GOTO 163|w|
P184 ORACLE 184 Sun15 Mar ITV 2140:00 302081659 EDITOR 302081659 123 IF K<>15 AND K<>4 THEN GOTO 133|w124 REM M OPDN OR CLOSE THE LINE|v125 L$="" |$126 FOR C7=0 TO 39|r127 C8=PEEK(FNP( L,C7)) : IF C8<32 THEN C8=C8+128|x128 L$=L$+ HR$(C8)|,129 NEXT C7 |1130 IF K=1 5 THEN L$=LEFT$(L$,C)+" "+MID$(L$,C+1,39 -C) ELSD L$=LEFT$(L$,C)+RIGHT$(L$,C+2)+" "|2131 PRINT CUR(L,0) L$ CUR(L,C);|"132 RE TRN |2133 REM - CURSOR UP|'134 L=L-1 : IF L<0 THEN L=23|%135 PRINT CUR(L,C); : RE P NPRINTKREZRN 138 @DREMGRAPHICSENTRY OUTI NE|s140 REM |5141 IF C=0 AND (K<8 OR K>1 1) THEN RETURN : REM NO GRAPHICS IN COL. 1!|0142 IF K>11 THEN GOTO 155|0143 FM - CURSOR MOVEMENT (NO WRAP)|v144 K=K-7 : ON K GOTO 145,147,149,151|v145 REM LEFT |e146 IF C=0 THEN RETURN ELSE C=C-1 : GO TO 153|{147 DD RIGHT|:148 IF C=39 THEN RETURN ELSE C=C+1 : GOTO 153|714 REM DO WN|v|
P184 ORACLE 184 Sun15 Mar ITV 2149:03 302081659 EDITOR 302081659 49 READ N : IF N=0 THEN RETURN ELSE PRIN T CUR(4,2) : FOR I=1 TO N : READ M$ : PR INT MAG " " M$ : NEXT I : GOSUB 42 : PRI NT CHR$(12) : GOTO 49|(50 DATA 6,"This p rogram allows you to prepare,"|÷51 DATA "store and playback pages of teletext.", "b|952 DATA "All the teletext attributes work as"|h53 DATA "specified and, in ad dition, all of the"|k54 DATA "cursor pos itioning keys are obeyed."|n55 DATA 10," If you do not want any further"|£56 DATA "instructions press the spacebar to"|l5 7 DATA "continue.",""|)58 DATA "If you d o want further instructions"|u59 DATA "r efer to the first page of the"|{60 DATA "EDITOR MANUAL. You are at the point"|(6 1 DATA "marked A. Now press the spacebar "|g62 DATA "once more and continue from" |&63 DATA "this point.",0|/64 REM - END OF INSTRUCTIONS|865 REM |+66 REM - GET—F ILENAME ROUTINE| |
P184 ORACLE 184 Sun15 Mar ITV 2148:11 302081659 EDITOR 302081659 27 REM - END OF RECORD SECTION|v28 REM | *29 REM - PLAYBACK SECTION|t30 GOSUB 65| *31 M=2 : GOSUB 70|=32 L=23 : R$=" " : M $="Press spacebar for each screenfull" : GOSUB 35|g33 E=0 : GOSUB 107 : IF E THE N GOTO 163 ELSE R$=" " : GOSUB 38 : PRIN T CHR$(12) : GOTO 33|p34 REM - END OF PL AYBACK SECTION||35 REM |(36 REM - GET—RE PLY SUBROUTINE|r37 PRINT CUR(L-1,0) SPAC E$(40) CUR(L,0) SPACE$(40) CUR(L,0) YEL NkBG RED M$ CHR$(7);|,38 REM - ENTRY FOR NO MESSAGE|s39 IF SYS(5) THEN GET K$ EL SE GOTO 39|h40 R=INSTR(1,R$,K$) : IF R=0 THEN GOTO 39 ELSE RETURN |c41 REM - END OF GET—REPLY|f42 REM |&43 REM - WAIT—FO R—SPACE—SUB2OUTINE|,44 L=23 : R$=" " : M $="Press spacebar to continue ..." : GOS UB 35 : RETURN |+45 REM - END OF WAIT—FO R—SPACE|j46 REM |*47 REM - INSTRUCTIONS SUBROUTINE|=48 RESTORE |l|
P184 ORACLE 184 Sun15 Mar ITV 2150:06 REM GRAPHICS MODE|o91 IF K=20 AND G THEN G=0 : GOTO 89 : REM $FXT MODE|h92 IF G THEN GOSUB 139 : GOTO 89 : REM WE'RE IN GRAPHICS MODF|293 IF K=3 OR K=205 THEN G OTO 94 ELSE GOSUB 117 : GOTO 89|/94 IF K =5 THEN E=-1|d95 GOSUB 98|;96 RETURN |+9 7 REM - END OF GET—A—SCREENFULL|}98 REM |1|
P184 ORACLE 184 Sun15 Mar ITV 2150:05 302081659 EDITOR 302081659 80 OPEN F$ AS FILE 1 : ON ERROR GOTO : R ETURN |981 RESUME 82|—82 PRINT CHR$(12) CUR(21,0) FLSH "UNABLE TO OPEN FILE """ F$ """"; : GOSUB 65 : REWCT 1 : GOTO 77| &83 REM - END OF OPEN—FILE|684 REM |,85 DGETASCREENFULLOUTINEPRINT CHR$(12) MAG "RECORDING M WAIT TILL SCR EEN CLEARS"; : FOR I=1 TO 5000 : NEXT I |p87 PRINT CUR(0,1); : FOR I=1 TO 36 : P RINT " "; : FOR J=1 TO 500 : NEXT J : NE XT I : PRINT CHR$(12);|288 G=0|—89 GET K $ : K=ASCII(K$) : C=PEEK(65358) : L=PEEK (65359)|'90 IF K=7 THEN G=1 : GOTO 89 :
P184 ORACLE 184 Sun15 Mar ITV 2150:46 hed too many l free to|/14 RFM - rewrite it for me.|x 15 DDINTEGERGDE F FNP(L,C)=31744+(L78.-INT(L/8.))*1024+I NT(L/8.)*40+C |?18 PRINT CHR$(12) RED DB LE "Screen Editor" : PRINT : PRINT GYEL " ,,,,,,,,,,,,,"|£19 GOSUB 46|020 L=23 : R$="RP" : M$="Record or playback? (R/P) " : GOSUB 35 : ON R GOTO 21,28|p21 REM |£22 "FM - RECORD SECTION|f23 GOSUB 65|, 24 M=1 : GOSUB 70|>25 E=0 : GOSUB 84 : I F NOT E THEN GOTO 25|i26 GOTO 163|w|
P184 ORACLE 184 Sun15 Mar ITV 2150:45 302081659 EDITOR 302081659 1 DLREM *|f3 "DD * EDITOR M ARK 3 *|,4 ""L * *|h5 REM * Andrew Wallis *|6 6 REM * Brighton Polytechnic *|i7 BD December 1980 *|t8 REM * *|l9 REM ****************** ****** e is so crude -|12 RKN - it's bfen patc
P184 ORACLE 184 Sun15 Mar ITV 2151:19 YEL NWBG RED "Name of file? " BLBG SPACE $(22) STRING$(22,8);|)68 INPUT ""F$ : L= LEN(F$) : IF L>8 OR L<1 THEN PRINT CUR(2 1,0) SPACE$(17) FLSH "FILENAME ILLEGAL" CHR$ 7); : GOTO 67 ELSE F$=F$+".EDI" : R ETURN |<69 REM - END OF GET—FILENAME<)70 REM |'71 REM - OPEN—FILE SUB2OUTINE|772 IF M=1 THEN PRINT CHR$(12);DBLE MAG "IM PORTANT" : PRINT : PRINT : PRINT MAG " M ake sure that cassette is" : PRINT MAG F LSH bnot" STDY "write-protected."|s73 L= 23 : R$=" " : M$="Insert cassette, then press space" : GOSUB 35|x74 ON ERROR GOT O 75 : REWCT 1 : GOTO 77|d75 RESUME 76|f 76 PRINT CHR$(12) CUR(21,0) FLSH "UNABLE TO REWIND CASSET$F"; : GOTO 71|+77 ON E RROR GOTO 81|378 ON M GOTO 79,80 : REM M IS MODE (1=RECORD,2=PLAYBACK)|÷79 PREPA RE F$ AS FILE 1 : ON ERROR GOTO : RETURN |÷|
P184 ORACLE 184 Sun15 Mar ITV 2150:19 302081659 EDITOR 302081659 99 REM M RECORD—A—SCREENFULL OUTINE 0 FOR L=0 TO 23|5101 FOR C=0 TO 39|t10 2 PRINT £1,PEEK(FNP(L,C))|b103 NEX T C |2104 NEXT L ||105 IF E THEN PRINT £ 1,256 : REM - WE'RE USING THIS AS AN EOF MARKER|a106 RETURN |3107 REM |8108 REM - PLAYBACK—SCREENFULL ROUTINE|f109 PRINT CHR$(12); : DDCLEARSCREENFORL =0 TO 23|6111 FOR C=0 TO 39|u112 I NPUT £1,K : IF K>255 THEN E=-1 : C=39 : L=23 ELSE POKE FNP(L,C),K|5113 NEXT C |3114 NEXT L |}115 RETURN |3116 REM - EN D OF PLAYBACK—SCREENFULL|k117 REM |9118 REM - ECHO—2OUTINE|,119 IF L=23 AND ( K= 9 AND C=23) OR K=10) THEN PRINT CUR(0,C) ; : RETURN |7120 IF L=23 AND C=39 THEN P RINT K$; : IF K<>8 THEN PRINT CUR(0,0); : RE$ZRN ELSE RETURN |8121 IF K<>15 AND K<>4 AND K<>11 AND K<>9 THEN GOTO 136|c1 22 IF K=9 THEN PRINT CUR(L,C+1); : RETUR N |d|