P70fCFFFAX 704 Tut 220May 2p:34/00
|B2204205|a16PATCL2|i24BBBC316k|s÷#1÷e|s
÷Z01000Ldyp£&0A:Ldap<cB),Y:Phap2\** *2Pu
sh No-exec flag 1010Lba Count:Sta (£B),Y
\0Y0= &A 1020Lda Count+1:Iny:Stap(£B),
Y \ Y = &B 1030Lba £X:Iny:Sta (£B),h:In
y:Sta (CB),Y \0Y =2&C & 0- fill0in len
gth 1040Pla:Iny:Sta (CB),Y \ **** Put
No-exec flag0in0attri"utes !yte 1050Rts
1060.CodeEndp \********0&ND /g RELOcATA
BLE CODE 1070.Reloc \ This0is0execute
-once code, so does not need relocating
1080Lda £&8C:Ldx 311: .sr1OsByte \ Relic
t tape, then Telesoft0- to force 1090Lda
2£&8F: Ldx0£&12: Ldy £6: -sr OsByte \ v
ector re-initialisation 1100\ 1110Ldy £0
1120.reloc8 Lda CodeStart,Y: Sta Patch,
Y 1130Iny: Bne reloc8 1140 Lda FileV:St
a0Oldvec LFVSO
1160 Lda £(OurOsfile-CodeStart+Patch)0M
OD 256:Sta FileV 1170 Lda £(OurOsfile-C
odeStart+Patch) DIV 256:Sta FileV+1 1180
Lda FSCV:Sta HisFSC 190 Lda FS£V+1:U
ta HisFSC+1 |c
P70fCGFFAX 704 Tlu1220May 2p:27/35
|B2205205|a16PATCL2|i24 BBC31 k|s÷#1÷e|s
÷Z01200 Ld £(MyFS Co eStart+Patch)0 O
F 256:Sta FSCV 1210 Lda £(MyF Co e ta
rt+Patch) IV 256:Sta FSCV+1 1 20 Lda £
& 0: Sta &1362 \ ADD TXO C MMAND TO TFS
TABLES 1 30 Lda £& : Sta 3 1240
da £&AB: Sta &14E2 1250 Lda £22:ESR OsW
be jump 1260.EndReloc 1270] 1280N. E
. 1300DEFFNequs(S$) 1310$P%=SR:P =P N
(S$)+1 1320=Pass |c
£
P70fCFFFAX 702 Tut 220May 2p:14/30
7/7
Y
FOREX
(J.J.Brayshaw)0
G
CFOREX is0another of our CFEFAX0-
interactive programs,0using 'live' 0
CEEFAX data to produce0up-to-date 0
exchange rates for several different0
foreign currencies. 0
G
The program includes instructions
for its0use. It will0allow the0user 0
to select1the desired currency, then0
will fqeely conveqt0any0!mount
into rte foreign0currency,0anb
versa. ppp p 0 p 0 0
It0is written0in BASIC and can
downloaded0usingCLOAD bF/REXc,Fthen 0
saved0as normal. pp pp p 0
0 More
P70fCFFFAX 702 Tut 220May 2p:17/05
|B220120 |a1 BB 0
V
Y
pppp 2ppppppp p2pppp PAT7H2 0
C (Acorn) 0
]G ÷ 0
CPATCL2 creates0a0m!chine-co"e
required y0users of the Aco n 0
tile ext adapter, to ownloa t e
current teleso tware p o ! s. 0
The Aco n teletext ROM w s o iginally
e igne t recei t leso tware w th
e use of t e (EC com an . P T 20
ad s the facile y oCLOA , *LOA , n
*RUN telesoftware files e i n d f 0
downloading by these0metho s. 0
Details of which command to0u with
each file are given on the following0
pages. 0
^G 0
e ownloa ed0using LOAD M ore 0
P70fCEFFAX 702 Tut 220May 2p:18/07
3/7p
V
T
\ppppppppppppppppppppppp CNEWS
C (BBc) 0
]G p 0
This repeat0in theCBBC0FDUCATION
NEWSFJLE sbries takes0a look0at
Mathematics0education.
G
These documents weqe first broadcast0
earlier in the year. A wide range of0
notes for school's programmes will
F"e broadcast by telesoftware0in the 0
Autumn term. 0
^G p 0
Download0usingC*LOAD NEWS and save 0
by typingC*SAVE NEWS 3000+1DID
Display0in0Mode 3 using *TYPE NEWS
0
0
More
P70fCFFFAX 704 Tut 220May0C2p:38/04
|B2205205|a16PCTCL2|i24BBBC 1:k|s÷#1÷e|s
÷Z 1200 Lda £(MyFSc.Co tart+ arch 0NO
F 256:Sta FS£V 1210 a £||yCSc-Co"eSt0
2
&1p: Sta &1362 \ ADD TXO0COnMANB TO TFS0
TABLES 1230 Lda £& F: Sta &13E2 1240 L
da £&AB: Sta1&14E2 13501 Lda £22:ESR OsW
sch:Lda £7:Imp OsWrch \ L st0i2st.0 sst0
be jump 1260.EndReloc 1270] 1280N. 1 90E
. 1300DEFFNequs(S$) 1310$P%=ST:P%=P%+LEN
(S$)+1 1320=P ss |c
P70fCFFFAX 704 Tut 220Nay C2p:18/34
|B2204205|a16PATCH2|i24BBBC316k|s÷#1÷e|s
÷Z01000Ldyp£&0A:Ldap(£B),Y:Phap2\**7;2Pu
sh No-exec flag 1010Lda Count:Sta (£B),Y
\0Y0= &A 1020Lda Count+1:Iny:Sta (£B),
Y \0Y = &B 1030Lda £p:Iny:Sta (£B),h:In
y:Sta (CB),Y \ Y0= &C &D - fill0in len
gth 1040Pla:Iny:Sta (CB),Y \ **** Put
No-exec flag0in0attri"utes "yte 1050Rts
1060.CodeEn p \********0FND F R LOcATA
BLE CODE 1070.Reloc \ This0is0fxecute
-once code, so does not need relocating
1080Lda £&8C:Ldx £12: .sr OsByte \0Relic
t tape, then Telesoft0-1to force 1090Lda
£&8F: Ldx £&12: Ldy £6: .sr1OsByte \
ector re-initialisation 1100\ 1110Ldy £0
1120.reloc82Lda CodeStart,Y: Sta Patch,
Y 1130Iny: Bne reloc8 1140 Lda FileV:St
a0Oldvec LFVSO
1160 Lda £(OurOsfile-CodeStart+Patch)0M
OD 256:Sta FileV 1170 Lda £(OurOsfile-C
odeStart+Patch) DIV 256:Sta FileV+1 1180
Lda FSCV:Sta4HisFSC 1190 Lba FS£V+1:S
ta HisFSC+1 |c
P70fCFgFAX 704 Tut 220May0C;X:11/30
|B2205205|a16PATCO2|i24BBBC316k|s÷#1÷e|s
÷Z01200 Lda £(MyFSC-CodeStart+Patch)0NO
F 256:Sta FS£V 1210 Lda £(MyFSC-CoeeTta
rt+Patch) %IV 256:Sta FSuV+1>1220 Lda £
&1p: Sta 1362 \0ADD TXO0COMMAND1TO *'S0
TABLES 1230 Lda £&EF: Sta &13E2 1240 L
da £&AB: Sta 1:E2÷1350 Lda £21:EeK OsW
]ch:Lda0£7] np OsWrchp\ Last0inst.0must0
"e jun 1 60.End el c 1270] 1180N. 1>90E
. 1300DEFFNequs(Se) 1310$Pc=S=:P =4 +.%N
(S$)+1 1320=Pass |c
P70fCFgFAX 702 Try1220Nay 2p:21/14
dj—$ p—p0pp0 0 :/7
j7d j= j5 0
£ |||||||||||||Y0
CSPOOT
(P. i ce) 0
sending o1 e pqinter. 0
CLOAD "CSPOOT . p 0
P70fCEFFAX 707 Tut 220May 2p:15/02
|B2201201|a17MANC/V%|i24BBBC33 k|m40000|
p÷e÷X÷b÷o÷12:÷G23;11,32,0;0;0;÷e÷X÷l
Scr'en :";:÷ SSA LOD A XG
H%=1÷e÷XT÷]÷M÷e÷X2+÷; T G
,((GH%+T%-1) —+ 7+1);0;÷e÷X<÷]÷E÷e÷X&÷a*
FX19÷e÷XP÷a*FX19÷e÷X0÷b*FX19 ÷e÷Xd÷nGH%=
(GH%+1)—+7:÷i0 ÷e÷W|c
P70fCFFFAX 702 Tut 220Nay 2p:11/17
^ C 8 A N ;p:21 7
P70fCFgFAX 708 2Tut 220Nay0C;X:10/18
|B2205206|a16CSPOOL|i24BBBC332k|m40B8F|p
÷=—5tNC÷e÷[f÷] ÷e÷[p÷cop%=ch%÷e÷[z÷b÷*ut
Fxt÷e÷[—,÷] ÷e÷[—6÷gF%=—Y:÷Gop%:÷C÷e÷[—@
F%=39 —4 ÷Joscli(bFX3,16"):÷G8z*FX3,0÷e
÷[—T÷b÷G10,13÷e÷[—^÷d÷Ez÷L Line÷e÷[—h÷]0
÷e÷[—r÷d÷E:÷L Page÷e÷[÷,÷c*FX£,1:÷e÷[÷6÷
]÷9÷e÷[÷@÷] ÷e÷[÷J÷c÷5÷Jttext÷e÷[÷T÷ ÷?
gf%2—4 ÷? —Lhold —4 ÷9÷e÷\÷^÷r÷?0ch%>860
—( ch%<123 —4 ÷9÷e÷\÷h1÷?0c=%=35 —4 op%=
96:÷9: ÷L pound÷e÷\÷r÷h÷? ch%<X2 —4 ÷X÷e
÷\$*÷? ch%=92 —4 ÷ !<[1/2]";: op%=62:÷ :
2÷L01/2÷e÷\.÷w÷? ch%=95 —4 op%=35:÷9: ÷L
h sh÷e÷\8V÷? ch%=96 —4 op%= 5:÷9: ÷L0un
erline÷e÷\B*÷? c = 3 —4 ÷ <[ / ] ;:o
p%=62:÷ : ÷L01/4÷e÷\L*÷? ch%=13 —4 ÷ S<
[3/4]";:op%=62:÷9: ÷L 3/4÷e÷\V-÷? ch%=12
7p—4 ÷I <[£]"; :op%=62 ÷9: ÷L elite÷e÷
\|—÷]÷9÷e÷\j÷] ÷e÷\t÷b÷5—Lhol ÷e÷\|÷÷ ÷?
c %=32 —4 hgc%=c %:=1÷e÷\— )÷? ch% —( g
f% —4 op%= 2:hgc%=op := —3 =0÷e÷\—:÷ ÷
e÷\—D h÷5÷Joscli(os$)÷e÷\—N÷c÷B % Y ÷ ÷
\—X÷e$rope=os ÷e÷\— ÷m %= ope:Y%=
P70fCFgGAX 702 Tut 220Nay0 ;p:21/17
|B2206206|a16CSPOO |i24BBBC332k| 40E33|p
6÷e÷\—l÷b÷.& F7÷e÷\—v÷]÷9÷e÷\÷ ÷] ÷e÷
\÷:÷c*F 3,16÷e÷\÷D÷a*FX ÷e÷\÷N ÷I'' —-"
—e18;:÷N:÷ 0at line ;—F'÷e÷]÷ ÷#÷ £0÷e
÷]÷b÷]÷8÷e÷W|c 0
P70fCFgFAX 704 Tut 220Nay0C2p:07/1:
|B2201205|a16PATCL2|i24BBBC316k|s÷#1÷e|s
÷Z010MO.7 15V.31,0,18 20Code=&7 00 30Pa0
ch=&A00 > MPREB |pgrom0=2|EN
P: To = TEMP+2 :REM From OVL TEMP, To 0
L CB 60CB = To: CB#low0= CC: £B#high = C
B+1 70Count0= B+2 80 l v c0= P sch+&100
-2 90HisFSk0=4Oldvec-2 100FS£V0=1&21E 11
0FileV0= &312 120Bget0=2&FFD7 130OsByte0
= &FFF4 140Osbli0= &FFF7 150OsWdch0= &FF
EE 160OsAscii0= &FFE3 170PROC!ssemble 18
0*SAVE TSOFT 7C00 +200 F FF7 00 F&FF 00
190MO.7 &00END 310DEFPROcassemble 320F.
Pass = 0 TO 2 S. 2 230P%=&7C00 240[OPT
Pass 250IMP Reloc 260.CodeStart \ ****
2FROM HERE0ON,0MUST BE RELOCATABLE 270.M
yFSC 280 Cmp £&05 390 Beq Starcat 300\ C
mp £2:\ Beq StarRun 310\ Cmp £4:\ Beq St
arRun 320 Jnp (HisFSC) 330.Starcat 340Ld
x £(c1-CodeStart+Patch)0M/D 356:L"y £(c1
-CodeStart+Patch) DIV 256 350J3r OsCli 3
60Ldx £(c2-Code tart+Patch)0NOD 256:Ldy0
£(c2-CodeStart+Patch) IV 256 370Esr OrC
li 380BIT &FF: BMI0etc |c
P70fCFgFAX 7p4 Tut 220Nay0C;p:03/17
|B2204205|a16PATCL2|i24BBBC316k|s÷#1÷e|s
÷Z01000Ldy0£&0A:Lda (CB),Y:Phapp\**>72Ps
sh No-exec flag 1010Lba Count:Sta (£B),Y
\0Y0= &A 1020Lda Count+1:)ny:Sta (£B),
Y p\0Y0= &B 1030Lda £p:)ny:Sta (£B),Y:In
y:Sta (CB),Y \0Y0=4&C &F 0- fill0in len
gut 1040Pla:)ny:Stap(£B),Y \ P
1060.CodeEndpp2\***==7*=0FND0/F +gLOcATA
BLE CODE 1070.Reloc \ This0is0"xecute
-once code, so does not
108pLdap£&8CzLdx 312:1.sr OsByte1\0Relic
t tape, then Telesoft0- to force 1090,ba
p£&8F: Ldx £&12: Ldy £6:1-sr OsByte \ v
ector re-initialisation 1100\ 1110Ldy £0
1120.reloc8 Lda CobeStart,h: Sta Patch,
Y 1130Iny: Bne reloc8 Q140 Lda FileV:St
a Oldvec QLFVSO
1160 Lda £(OurOsfile-Co$eStart+Patch)0M
OD 256:Sta FileV 1170 Lda £(OuqOsfile-C
odeStart+Patch) DIV 356:Sta FileV+1 1180
Lda FSCV:StapHisFSC 1190 Lda FSkV+1:S
ta HisFSC+1 |c
P70fCFFFAX0704p2Tut1220Nay0C;p:21/03
|B2205205|a16CSTCO2|i24BBBC312k|m÷018e|p
÷=—1t0C÷e÷[a÷] My÷[p.Cop%=cart+÷[zcb÷0NO
f 2÷6:[—, F CV 1—10 %=aY£÷GyF%:÷Cod÷[—@
rt+?adc%) %=V 216:I'a FSub+1>1;20 LEa÷£
&1%= 9 a 1J62c\0(DD T,16"):MA8: TO ,0S0
T[BL÷b÷110, Lda £&÷F: :tL &1ne÷e1[4h L
de÷£—ABd÷Sta 1age÷1÷[0, L*aX3,1:÷eR[÷sW
]ch:Ld[ £7] ÷p÷OsJ÷ch5\JLtst0ins[.T÷u÷?0
ge% u4 1 —LhEnd —4 c 1270]^1r80 . %>900
.(13h%<123 —4us9Se)\÷h1÷? c=%=35 =4 op%=
96:)+1 1L p=unds |\ ÷ ÷? ch%< —4 ÷9÷
h ] ÷ :
÷ 1/2÷e÷\. ÷? ch%= —4 op 9: ÷
n
< " o
p <
2
÷I"<[ : ÷9: e÷e
t l r÷?
c =32 —4 % % = e \—0)÷? ch% —( g
f% —4 op%=42:hgc%=op :=1 —3 =0÷e÷\—:÷ ÷
h÷ i os ÷ ÷
e 0
P70fCFFFAX 702 Tut 220Nay 2p:P9/16
6/7
V
Y
CSPOOL 0
(P.Vince) 0
]G
Mode 7 screens normally contain0a
variety0of0colour
if sent to0a printer,0or loa"ed0into0
a wordpqocessor, would c!u3e
and0unwanted0fffects. 0
G p 0
CSPOOL will convert0a0mode 7 screen
from0any0source TVidiEd, CFFFAX, 0
PRESTEL,0ftc.) to0a simple0ASCII 0
Ffile (characters only) tea"y for 0
use with0a wordprocessor, or for 0
sending to1the printer. 0
Full details0are given with the 0
progr!m, which0is bownloa"eb0using
LOAD "CSPOOL". 0
More 0
P70fCFgFAX 702 Tut 220Nay ;p:07/18
|B220420$|a16CpTCO2|i24BBBC3 k| 4 1÷/|p
C ZJY
÷ppIppppEndppp pippppppp& 0÷U :K÷e÷Zp÷ 0
ZZDF
N÷qp; P%=0p— —0 1001p0& 0 e÷pX ÷ <0
p " P S u \
; 1>>"'÷e÷Zb÷] ÷e÷Zl÷k÷;0Yi=0 —|—15ines0
Zv÷egf%=—C: f%=— :hg%=—C hgc%=31 e÷ 0
HCYPZ]F
%= 1÷0÷t—F÷k÷; s%=30 —0— 0 —0-1÷e÷0— £÷0
p H%?(%—h&7F)>32 —4 len%=T%:( =0÷e÷Z—Z÷]
E÷ ÷Z—d÷] ÷ ÷Z n÷l÷? in%=-1 ÷= — t
non se sh11pe; f%=0 —u rinpee Z <. 0
%=H%?(%-h&7Fie÷Z÷F÷j÷?sch >31 =—5Dp 0
÷Z÷p÷] ÷o÷[÷p÷bpp%=p2÷a÷[÷t÷p÷?pch%= 0
O[F
=—a:1gc% 3 ÷e÷ R÷? cue>0 —( cR%<8 ( 0
% —( g 40gf%=—C:op%= gh%:÷=—tN ÷9÷[*
÷s÷?sch%>0 —(sch%18 —4 gf%=—K÷er[4÷wre c
%>16 —( ch%<24 —4 gf%=&20÷e÷[>al÷? ct =
—4 hg%=—a÷e÷[H÷r ? gf% ( hg —40o %=
hgc%÷e÷[R÷l÷?pc,%=31p—4phg%=—K÷e 0
P70fCFFVAX 702 Tut 220Nay 2p:32/12
0
e 0
s
0
s
C a
c
0
£ 0
P70fCFgFAX 704p Tut1220Nay0 ;p:21/:3
|B2203205|a16PATCL2|i24BBBC316k|s÷#1÷e|s
÷Z0730Lda £&00:Ray:Sta0Count:Sta (£B),Y:
Jny:Tya:Sta Count+1:Sta (£B),Y 740\ ^0Us
e stack0as workspace. Not nice. 750,dy0£
0 760.cps Lda (From),Y:Sta (Count),Y:Cnp
p£33:Bcc0fnds:Iny:Bne cps:.ends 77pLda 3
13:Sta (Count),Y 780Lda £7: Ldx CB#low:
Ldy CB#high 790Esr realosfile-Co"eStart+
Patch \ Open disor"eqed 800Lba £p:Sta0Co
tnt:Sta Count+1 810.loadup 820 L y 31:
830 Esr Bget 840 Bcc gotbyte 850 0
Cmp £&FE 860 Beq0fndoffile 870 gCmp £
&02 880 Bne skipthis 890\0Fnd0of block
. Get new load0adds 900 Lda 3:: Ldx0CB
#low:Ldy CB#high \ Info1to get block0ab0
r 910 Esr realosfile-Co"eStart+Patch:0
Ldy0£2zLda (£B),Y:Sta TENd:Iny:Lda (£B),
Y:Sta TEMP+1 920 .skipthis 930 £lc:Bc
c loadup 940 .gotbyte 950 L y £p:Sta
hTEMP),Y 960 0Inc TEMP:Bne zz3:Inc TEMP
+1:.zz3 970 0Inc Count:Bne zz4:Inc Corn
t+1:.zz4 980Clc:Bcc loadup 990.endoffile
|c 0
P70fCFgGAXp702p2vtu1220Nay0C;p:08/39
|B2205205|a16PATCL2|i24BBBC31:k|s÷#1÷e|s
÷Z01200 Lda £(MyFSc.Co"eStart+Patch)0NO
F 256:Sta FSCV 1210 Lda £(MyFSc-CodeTta
rt+Patch) BIV 256:Sta FS£V+1 1120 Lda0£
&1p: Sta 1362 \0ADD TXO0COMMAND1TO TFS0
TABLFS 1130 Lda £&gF: Sta &13E2 1240 L
da0£&AB: Sta &1:F2 135012Lda0£22:EeK0OsW
c
"e jump 1 60.EndReloc 1270] 1180N. 139PE
. 1300DEFFNequs(S$) 1310$P%=SR:P%=P LFN
(S$)+1 1320=Pass |c
0
P70fCFgGAXp708ppTtu1220Nay0C;p:27/::
|B2206206|a16CSPOOL|i24BBBC332k| 40E33|p
356÷e÷\—l÷b÷.&FFF7÷e÷\—v÷]÷9÷e÷\÷0÷] ÷e÷
\÷:÷c*FX3,16÷e÷\÷D÷a*FX15÷e÷\÷N ÷I''"—-"
÷]÷b÷]÷8÷e÷W|c 0
P70fCGFFAXp7X1p Tlu N ;p:P1/27
(
e
n
e e
0
e e
l
e
e 0
e 0c
t
% FXX
c