P184 ORACLE 184 Sat 4 Apr ITV 0001:10 1 DDREMENDOFPOGRAM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 Sat 4 Apr ITV 0001:01 302081659 EDITOR 302081659 110 IF L=23 THEN RE PRN ELSE L+1 : GOT O 153|$111 REM UP||152 IF L=O THEN RETUR N ELSE L=L-1 : GOTO 043|2153 PRINT CUR(L ,C); : RE PPNREMBELOGHEREWE RE NOT MOVING THE CURSOR, 'F' D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 P RN |:157 IF P.<3 THEN Y=Y 0 ELSE IF P.<5 THEN Y=Y+1|q158 IF P./2=INT(P./2) THEN X=X+1|x139 IF TXPOINT(X,Y) THEN TX@OINT X,Y,-1 ELSE TXPOINT X,Y|6160 RE @RN <316
P184 ORACLE 184 Sat 4 Apr ITV 0000:25 302081659 EDITOR 302081659 123 IF K<>11 AND K<>4 THEN GOTO 133|w124 DDO@ENORCLOSETHELINEL |%126 FOR C7=0 TO 39|r127 C8=PEEK(FNP( L,C7)) : IF C8<32 THEN C8=C8+128|x128 L$=L$+CHR$ C8)|,129 NEXT C7 |1130 IF K=1 5 THEN L$=LEFT$(L$,C)+" "+MID$(L$,C+1,39 -C) ELSE L$=LEFT$(L$,C)+RIGHT$(L$,C+2)+" "|2131 PRINT CUR(L,0) L$ CUR(L,C);|"132 RETURN |2133 REM CU SORUPLL : RE$ZRN |-136 PPHNT K$;|-137 RE$jRN |7 138 REM |<139 BDGRAPHICSENTRY N@TI NE|s140 REM |5141 IF C=0 AND K<8 OR K 1) THEN RETURN : DDNOGRAPHICSINCOL 1!|0142 IF K>11 THEN GOTO 155|0143 REM - CURSOR MOVEMENT (NO WRAP)|v144 K=K-7 : ON K GOTO 145,147,149,131|v145 @MLEFT |e146 IF C=0 THEN RETURN ELSE C=C-1 : GO TO 153|{147 REM RIGHT|:148 IF C=39 THEN RE PPNELSECCGOTO @DDO GN|v|
P184 ORACLE 184 Sat 4 Apr ITV 2005:01 302081659 EDITOR 302081659 80 OPEN F$ AS FILE 1 : ON ERROR GOTO : R E$$RN <981 RESUME 82|—82 @RINT CHR$(12) R(21,0) FLSH "UNABLE TO OPDN FILE """ F$ """"; : GOSUB 65 : REWCT 1 : GOTO 77| &83 REM - END OF OPEN—FILE|684 REM |,85 DDGETASCREENFULL N TINE|t86 PRINT CHR$(12) MAG "RECORDING WAIT TILL SCR |p87 PRINT CUR(0,1); : FOR I=1 TO 36 : P RINT " "; : FOR H 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 DDGRAPHICSMODEIFKANDGTHEN G=0 : GOTO 89 : REM DXT MODE|h92 IF G THEN GOSUB 139 : GOTO 89 : @D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 @ -1|d95 GOSUB 98|;96 RE PRN |+9 7 DDENDOFGETASCREEN $LL|}98 R@D |1|
P184 ORACLE 184 Sat 4 Apr ITV 2000:00 302081659 EDITOR 302081659 1 DD ************************@D * *|f3 D * EDITOR M A K BD " *|h5 @DAW 6 @D * Brighton Polytechnic *|i7 @D December 1980 *|t8 @D *|l9 DD ****************** ******|i10 REM e is so crude -|?12 REM - it's been patc hed too many|a13 REM - times! Please fee l free to|/14 REM M rewrite it for ld.|x 13 DDINTEGERGDE F FNP(L,C)=31744+(L78.-INT(L'8.))*1024+I NT(L78.)*40+C |?18 PRINT CHR$ 12) RED DB LE "Screen Editor" : PHNTPRINTGYEL " ,,,,,,,,,,,,,"|£19 GOSUB 46|020 L=23 : R$="RP" : M$="Record or playback? ( P " : GOSUB 35 : ON R GOTO 21,28|p21 @D |£22 REM M RECORD SEC HON|e23 GOSUB 65|, 24 M=1 : GOSUB 70|>25 A 0 : GOSUB 84 : I F NOT E THEN GOTO 25|i26 GOTO 163|w|
P184 ORACLE 184 Sat 4 Apr ITV 2013:07 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 NWBG 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|j42 REM |&43 REM - WAIT—FO R—SPACE—SUB2OUTINE|,44 L=23 : R$=" " : M $="Press spacebar to continuf ..." : GOS UB 35 : RETURN |+45 REM - END OF WAIT—FO R—SPACE|j46 REM |*47 REM - INSTRUCTIONS SUB2OUTINE|=48 RESTORE |l|
P184 ORACLE 184 Sat 4 Apr ITV 2012:19 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 teletfxt.", "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 Sat 4 Apr ITV 2006:19 302081659 EDITOR 302081659 99 REM - RECORD—A—SCREENFULL ROUTINE|x10 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 MARKER106 RETURN |3107 DDREM - PLAYBACK—SCREENFULL ROUTINE|f109 PRINT CHR$(12); : REM CLEAR SCREEN|8110 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<4113 NEXT C |3114 NEXT L |}115 RETURN |3116 DDEN D OF PLAYBACK—SCREENFULL|k117 REM <9118 DDECHOOUTINEIFL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 RN ELSE RE TPN |8121 IF K<>11 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|
P184 ORACLE 184 Sat 4 Apr ITV 2008:37 302081659 EDITOR 302081659 150 IF L=23 DHEN RE PRN ELSE L=L+1 : GOT O 113|$111 @DUPIFLOTHENRETUR N ELSE L=L-1 : GOTO 043|2153 PRINT CUR(L ,C); : RE TPN |-154 REM - BELOW HERE WE' RE NOT MOVING THE CURSOR, D'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 @ 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|x139 IF TXPNHNT(X,Y) THEN TXPNHNT X,Y,-1 ELSE TXPNHNT X,Y|6160 RE$ZRN |316 1 DDREMENDOFP OGRAM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,164|i164 PRINT C HR$(12) YEL NCBG RED "End of program. " BLBG : PRINT : PRINT |g165 GOTO 65531|5 |
P184 ORACLE 184 Sat 4 Apr ITV 2008:41 20200000$ 20200000$ Telesoftware and Education Project The EDITOR Program This program enables the user to prepare, edit, save and retrieve teletext pages. All of the usual teletext attributes (e.g. coloured, flashing and double-size text, new backgrounds and mosaic graphics) may be incorporated.
P184 ORACLE 184 Sat 4 Apr ITV 2002:56 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 |<69 REM - END OF GET—FILENAME|)70 REM |'71 REM - OPEN—FILE SUB NTINE 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 "not" 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 CASSETTE"; : 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 |÷|