P179 ORACLE 179 Fri25 Dec ITV 2000:02 35507170NISN0$ TEXTLIB 35507170NISN0$ 123 RETURN |2124 ! SUBROUTINE FOR Y/N AN SWER|q125 ! (USES R9$ AND I9%)|/126 INPU T ""R9$|x127 I9=INSTR(1,"YN",R9$) : IF I 9=0 THEN PRINT CHR$(7) YEL "'Y' OR 'N' O NLY, PLEASE" : GOTO 126|<128 RETURN |712 9 ! RECORD SECTION|m130 PREPARE F1$ AS F ILE 1|?131 M=1|l132 E=0 : GOSUB 163|8133 CLOSE |i134 RETURN |4135 ! END OF RECOR D SECTION|6136 ! PLAYBACK SECTION|s137 O PEN F1$ AS FILE 1|i138 PRINT CUR(23,0) Y EL NWBG RED "Press space to display the page ";|c139 GET K$ : IF K$=" " GOTO 140 ELSE GOTO 138|m140 PRINT CHR$(12)|3141 FOR L=0 TO 23|:142 FOR C=0 TO 39|y143 INPUT £1,K : IF K>255 THEN E<-1 : C= 39 : L=23 ELSE POKE FNA(L,C),K|*144 NE XT C |7145 NEXT L |!146 CLOSE |m147 PRIN T CUR(23,0) YEL NWBG RED "Press space to continue";|4148 GET K$ : IF K$=" " THEN PRINT CHR$(12) : GOTO 149 ELSE ; CHR$(7 ) : GOTO 147|149 RETURN |:|
P179 ORACLE 179 Fri25 Dec ITV 2007:02 35507170NISN0$ TEXTLIB 35507170NISN0$ 72 ! THE 2ND ARGUMENT ABOVE (i.e. A9%) TELLS THE DISPLAY ROUTINE WHERE TO FIND THE PAGE|s73 PRINT CUR(23,0) S PACE$(40) STRING$(40,8) MAG "Do you want to record this page ?Y/N" CYA;|o74 GET K$ : IF K$="N" OR K$="n" GOTO 77|£75 PRI NT CUR(23,0) C$;|s76 GOSUB 129|e77 PRINT CHR$(12)|l78 PRINT MAG "Would you like another run ? " CYA;|{79 GOSUB 124|c80 I F I9=1 THEN GOTO 20 ELSE GOTO 81|x81 PRI NT CHR$(12)|g82 ; YEL "END OF P2OGRAM"|s 83 GOTO 65000|{84 ! |i85 ! END OF MAIN P ROGRAM|s86 ! *************************** ******|587 ! SUBROUTINES NOW|c88 ! |m89 ! SELECT CHANNEL |g90 ! |f91 OUT 128,127 -4*C9|&92 ! SELECT CHANNEL C9%|b93 IF IN P(129) AND 2=0 THEN 93|894 Z9=INP(128)|, 95 ! IGNORE THIS!!!|f96 RETURN |+97 ! |m 98 ! SET UP ARGS FOR FINDPAGE |q99 ! GET PAGE NO IN P9%(1%-3%)|z|
P179 ORACLE 179 Fri25 Dec ITV 2000:33 35507170NISN0$ TEXTLIB 35507170NISN0$ 150 ! END OF PLAYBACK SECTION|;151 ! |t1 52 ! GET—REPLY SUBROUTINE|q153 PRINT CUR (L-1,0) SPACE$(40) CUR(L,0) SPACE$(40) C UR(L,0) YEL NWBG RED M$;|2154 ! ENTRY FO R NO MESSAGE|r155 IF SYS(5) THEN GET K$ ELSE GOTO 115|&156 R=INSTR(1,R$,K$) : IF R=0 THEN GOTO 155 ELSE RETURN |j157 ! E ND OF GET—REPLY|r158 ! |{159 ! WAIT—FOR— SPACE—SUBROUTINE|4160 L=23 : R$=" " : M$ ="Press spacebar to continue ..." : GOSU B 151 : RE TRN |i161 ! END OF WAIT—FOR—S PACE|i162 ! |v163 ! RECORD—A—SCREENFULL ROUTINE|p164 FOR L=0 TO 23|?165 FOR C= 0 TO 39|÷166 PRINT £1,PEEK(FNA(L,C)) |=167 NEXT C |<168 NEXT L |&169 IF E T HEN PRINT £1,256 : ! WE'RE USING THIS AS AN EOF MARKER|;170 RETURN |4|
P179 ORACLE 179 Fri25 Dec ITV 2010:00 35507170NISN0$ TEXTLIB 35507170NISN0$ 22 PRINT MAG "pages ? R/P" CYA;|÷23 INPU T ""R$|k24 IF R$="R" THEN GOTO 36|+25 IF R$="P" THEN GOTO 26|)26 PRINT CUR(4,0) MAG "Which of your recorded pages would" |/27 PRINT CUR(5,0) MAG "you like to see ? " CYA;|028 INPUT ""F$|d29 F1$=F$+".ED I"|830 PRINT CUR(7,0) YEL "Now insert yo ur tape with recorded "|n31 PRINT CUR(8, 0) YEL "pages on"|w32 FOR D=1 TO 20000 : NEXT D ! DELAY TO ALLOG TIME TO INSERT CASSETTD|a33 REWCT 1|x34 GOSUB 136|=35 G OTO 78|l36 ; CUR(4,0) MAG "Please input an identification code"|b37 ; CUR(5,0) M AG "for your page" CYA;|138 INPUT ""F$|e 39 F1$=F$+".EDI"|940 PRINT CUR(7,0) YEL "Now insert a tape on which to record"|o 41 PRINT CUR(8,0) YEL "your pages"|j42 P RINT CUR(10,0) MAG "Which channel ? (1/ 2/3) " CYA;|(43 INPUT ""C9|s44 IF C9<1 O R C9>3 THEN PRINT CHR$(7) : GOTO 42|h45 GOSUB 89|6|
P179 ORACLE 179 Fri25 Dec ITV 2001:01 255**********— 255**********— Telesoftware and Education Project  TEXT LIBRARY This program allows you to download, save and playback, in any order, broadcast teletext pages. It therefore permits the recall at daily, weekly or larger pdriods the FT index, foreign exchange rates, weather details, commodity prices etc. You may assign your own seven character code to identify each page in store but you must keep a written note of these for use during recall. Only seven pages of text may be saved on one side of a tape.
P179 ORACLE 179 Fri25 Dec ITV 2050:32 35507170NISN0$ TEXTLIB 35507170NISN0$ 46 PRINT CUR(12,0) MAG "Which page would you like ?" CYA;|z47 INPUT ""P9$|(48 ! NOW A BIT OF VALIDATION|}49 ON ERROR GOT O 54|250 P9=VAL(P9$)|(51 ON ERROR GOTO | b52 IF P9>=100 AND P9<=799 THEN 57|—53 P RINT MAG "ILLEGAL PAGE NUMBER" : GOTO 46 |g54 ! P9$ WASN'T NUMERIC|z55 RESUME 56| b56 PRINT MAG """" P9$ """"" IS NOT A NU MBER!" : GOTO 46|57 ! VALID PAGE NUMBER |58 E9=0 : GOSUB 106 : IF NOT E9 THEN 6 5|759 ! |k60 PRINT MAG "PAGE NOT AVAILAB LE"|761 PRINT MAG "DO YOU WANT ANOTHER P AGE ? Y/N";|q62 GOSUB 124|;63 IF I9=1 TH EN GOTO 20 ELSE GOTO 83|{64 ! |g65 IF S9 <=4 THEN 70|e66 PRINT CHR$(12) YEL "THER E GERE ERRORS IN THE PAGE DCEIVED"||67 PRINT YEL "DO YOU WISH TO TRY AGAIN? (Y/ N) ";|r68 GOSUB 124|a69 IF I9=1 THEN GOT O 58 ELSE GOTO 83|,70 ! GOT THE PAGE : N OW DISPLAY!|171 S9=CALL(R9(4),A9)|p|
P179 ORACLE 179 Fri25 Dec ITV 2001:31 35507170NISN0$ TEXTLIB 35507170NISN0$ 1 INTEGER |{2 ! Program to download, sav e on tape and playback pages of teletext |23 ! All routines are from GRABBER and EDITOR with modifications added by S Sou th at Brighton Polytechnic 12/11/81|u4 A 9$=SPACE$(960)|+5 DEF FNA(L,C)=31744+(L 8.-INT(L/8.))*1024+INT(L/8.)*40+C |}6 DE F FNP( 9)=PEEK(X9)+SWAP%(PEEK(X9+1)) |*7 G$="124578"|z8 C$=SPACE$(40)+STRING$(40 ,8)||9 A9=FNP(FNP(SYS(12))+6)|*10 FOR I9 =1 TO 4 : R9(I9)=FNP(30942+2*(I9-1)) : N EXT I9 |*11 ! R9(I9) NOW CONTAINS THE AD DRESS OF |,12 ! SUBROUTINE I9|r13 ! |a14 ! MACHINE CODE SUBROUTINES ARE:|'15 ! R 9%(1%) = 'FINDPAGE'|£16 ! R9%(2%) = 'STA TPAGE'|—17 ! R9%(3%) = 'FETCHPAGE'|p18 ! R9%(4%) = 'DISPLAY'|!19 ! ALL OF THE AB OVE CODE SHOULD OCCUR ONCE IN YOUR PROGRAM BEFORE CAPTU- RING ANY TELE DXT|020 PRINT CHR$(12)|—21 ; MAG "Do yo u want to record or playback "|g|
P179 ORACLE 179 Fri25 Dec ITV 2011:33 35507170NISN0$ $FXTLIB 35507170NISN0$ 100 FOR I9=1 TO 3 : P9(I9)=VAL(MID$(P9$, I9,1)) : NEXT I9 |£101 P9(4)=9 : P9(5)=9 |1102 ! TIME-OUT 99 SECS|$103 ! YOU CAN CHANGE THAT VALUE (THE LENGTH O F TIME THE ROUTINE WILL GO ON WA ITING FOR A PAGE WHICH MAY NOT BE THERE!)|!104 FOR I9=-5 TO -1 : POKE I 9,P9(I9+6) : NEXT I9 |i105 RETURN |2106 ! FIND/STAT/FETCHPAGE (USES S9%,R 9%,E9% AND A9%)|5107 GOSUB 98|e108 ! S ET UP ARGS|t109 S9=CALL(R9(1))|y110 ! TH E TELETEXT UNIT RECEIVES THE |v111 ! THR EE DIGIT NUMBER AND IT THEN|a112 ! SELEC TS THE PAGE|b113 PRINT CHR$(12);|n114 S9 =CALL(R9(2))|v115 ! TESTS FOR PAGE CAPTU RE AND THE |3116 ! EXPIRY OF THE TIME LI MIT|z117 PRINT RED "*";|&118 IF S9=0 THE N GOTO 114|<119 IF S9=1 THEN GOTO 121|<1 20 E9=-1 : RETURN |b121 S9=CALL(R9(3),A9 )|;122 ! FETCH IT AND PUT IT STARTING AT THE ADDRESS IN A9%|—|