home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The Datafile PD-CD 5
/
DATAFILE_PDCD5.iso
/
utilities
/
a
/
addresses
/
!Addresses
/
!RunImage
(
.txt
)
< prev
next >
Wrap
RISC OS BBC BASIC V Source
|
1994-07-28
|
18KB
|
859 lines
>!RunImage
For !Addresses
NSW 28-Jul-1994
Xx$="1.32 (28-Jul-1994)":
"Error 0 "+
$+" (internal error code "+
+")":
262365:
$+" (internal error code "+
+")")
c$<>""aa%=
r(c$)
:ba%=
262343,,e%
262344,,e%
262341,,e%
262342,,e%:
!e%=u%
d(m%):
d(P%):
d(l%):
d(I%):
d(t%):
d(Q%):
c(N%,0):i%=0:
h$,".",i%)>0:i%=
h$,".",i%)+1:
h$,i%-2):
h$,".")>0
5,"Filer_OpenDir "+h$
!e%=m%:da%=
17,18:
ba%:ea%=
262365:
jd%=a%(h%-1):
a(m%,12,21,b%(d%,j%,0)):
a(m%,14,21,b%(d%,j%,1)):
a(m%,15,21,
b%(d%,j%,1)):
b%(d%,j%,1)
a(m%,16,22,
a(m%,17,22,
b(m%,16,""):
b(m%,17,
b$(d%,j%),8))
a(m%,17,22,
a(m%,16,22,
b(m%,17,""):
b(m%,16,
b$(d%,j%),8))
a(m%,13,22,
b%(d%,j%,0)):b$=b$(d%,j%):b$=
b$-8):
b(m%,11,
b$,80)):
b(m%,j%+1,
b$(d%,j%),20)):fa%=b%(d%,j%,1)+11:
l(m%,j%+1,fa%):
I:ga%=ha%:
262380,32000+ha%
ha%=ga%
b("nis"))
e% 256,ia% 1024,V% 512,ja% 512,ka% 256,la% 512,ma% 256,na% 512,oa% 20,a% 512,pa% 256,K% 640,qa% 1024,ra% 512,sa% 512,ta% 256
ua% 1024,va% 512,wa% 384,xa% 64,a$(499,9),ya% 512,za% 128,a%(499),Aa% 1024,Ba% 570,Ca% 200,Da% 1024,Ea% 512:
Fa% 512,Ga% 128,Z% 256,Ha% 128,Ia% 64,Ja% 128:
b$(499,9),b%(499,9,1),c$(30,1):c$()=
30," "):c$()="":g$="":
$oa%=
b("er2"):h%=1:o%=1:j%=0:u$="":Ka%=0:da%=
:La%=
:ba%=
:Ma%=
:Na%=
:Oa%=0:Pa%=0:Qa%=Ha%:
499:a%(k%)=k%:
o("RiscOS$Version")="310"
R% 32:!R%=2:R%!4=3:R%!8=5:R%!12=6:R%!16=6:R%!20=1282:R%!24=262336:R%!28=0:
262336,310,&4B534154,"Addresses",R%
Ra%,Sa%
262336,200,&4B534154,"Addresses"
Ra%,Sa%
p(-1,0,0,68,68,12298,"!addresses"):q%=
"<Address$Dir>.Sprites":Ta%=
#q%+1024:
C% Ta%:!C%=Ta%-1:C%!4=0:C%!8=12:C%!12=16:
46,256+10,C%,"<Address$Dir>.Sprites":
262380,-1,-1
H:g%=pa%:$g%="Addresses":g%!12=459271:g%!16=16*10:g%!20=44:g%!24=0:
c(g%+28,0,Ua%,&7091031,"Info"):
c(g%+52,0,N%,&7091031,"Save"):
c(g%+76,0,-1,&7091031,"New file"):
c(g%+100,128,-1,&7091031,"Quit")
g%=Ia%:$g%="Date":g%!12=459271:g%!16=16*8:g%!20=44:g%!24=0:
c(g%+28,128,-1,&7091031,"Today"):g%=Ja%:$g%="Correspond":g%!12=459271:g%!16=16*11:g%!20=44:g%!24=0:
c(g%+28,0,-1,&7091031,"Delete"):
c(g%+52,0,-1,&7091031,"Insert")
c(g%+76,0,-1,&7091031,"Raise"):
c(g%+100,128,-1,&7091031,"Lower"):g%=K%:$g%="Addresses":g%!12=459271:g%!16=16*18:g%!20=44:g%!24=0:
c(g%+28,0,-1,&7091031,"Control F6"):
c(g%+52,0,-1,&7091031,"Search F4")
c(g%+76,0,-1,&7091031,"Sort F5"):
c(g%+100,2,-1,&7091031,"Correspondance F7"):
c(g%+124,2,K%+300,&7091031,"Address"):
c(g%+148,0,Ua%,&7091031,"Info"):
c(g%+172,8,K%+500,&7091031,"Save"):
c(g%+196,128,-1,&7091031,"Quit")
g%=K%+300:$g%="Edit":g%!12=459271:g%!16=16*11:g%!20=44:g%!24=0:
c(g%+28,0,-1,&7091031,"Delete"):
c(g%+52,0,-1,&7091031,"Insert"):
c(g%+76,0,-1,&7091031,"Raise"):
c(g%+100,128,-1,&7091031,"Lower")
g%=K%+500:$g%="Save :":g%!12=459271:g%!16=16*16:g%!20=44:g%!24=0:
c(g%+28,0,N%,&7091031,"Whole file F3"):
c(g%+52,136,n%,&7091031,"This record
F3"):
262361,,"<Address$Dir>.Templates":P%=
e(sa%,ta%,255,"cont",C%):m%=
e(Da%,Ea%,511,"crsp",C%):Ua%=
e(ja%,ka%,255,"info",C%):u%=
e(ia%,V%,511,"main",C%):Va%=
e(ya%,za%,127,"modd",C%)
e(la%,ma%,255,"save",-1):l%=
e(qa%,ra%,511,"sear",C%):n%=
e(Aa%,Ba%,569,"sind",C%):I%=
e(ua%,va%,511,"sort",C%):t%=
e(Fa%,Ga%,127,"date",C%):Q%=
e(wa%,xa%,63,"foun",C%):
262362
$(ka%+99)=x$:$ma%="Addresses":$Ba%="Address":
a(I%,1,21,
a(I%,2,21,
a(I%,3,21,
a(I%,c%,21,
a(l%,3,21,
a(I%,4,21,
a(l%,9,21,
c%=10
a(l%,c%,21,
a(v%,c%):!a%=v%:a%!4=c%:
262350,,a%:=((a%!24
2097152)=2097152)
b(l%,16,""):
):f$=
c(l%,1):r%=
b(Q%,0,f$):
f$=""
b("ser")):
f$,"?")>0
f$,"*")>0
b("mxw")):
u$=f$:Wa%=
a(l%,3):Xa%=
a(l%,9):Ya%=
a(l%,10):Za%=
a(l%,11):_a%=
a(l%,12):`a%=
a(l%,13):ab%=
a(l%,14):
:$a%=f$:A%=a%:
bb%:f$=$a%
"dd$=f$:c$()="":
30:c$(k%,1)="1":
d$,1)="?":d$=
d$,2):
d$)="?":d$=
d$,"?")>0
rLcb%=0:z%=0:db%=0:
d$,"?",z%)>0:z%=
d$,"?",z%)+1:cb%+=1:
z%=db%+1cb%-=1
vdb%=z%:
:z%=1:
cb%:c$(d%,0)=
d$,z%,
d$,"?",z%)-z%):z%=
d$,"?",z%)+1:
c$(d%,0)=""d%-=1:c$(d%,1)=
c$(d%,1)+1)
c$(d%,0),1)="?"d%-=1
c$(d%,0),1)="?":c$(d%,1)=
c$(d%-1,1)+1):c$(d%,0)=
c$(d%,0),2):
:c$(d%,0)=
d$,z%):
c$(d%,0),1)="?":c$(d%-1,1)=
c$(d%-1,1)+1):c$(d%,0)=
c$(d%,0),2):
Wa%s%=0:L%=o%:
:s%=(
c(l%,5))-1:L%=(
c(l%,7))-1
t(s%,L%,
f(i%,y%):r%=
:e$=a$(a%(i%),y%):
$a%=e$:A%=a%:
bb%:e$=$a%
:l$=e$:k%=0:
d$,"?")>0
e$,c$(1,0))-1:
cb%+1:
e$,c$(d%,0),z%)<>z%+
c$(d%-1,0)+
(c$(d%-1,1))_%=
e$,c$(d%,0)):
r%=_%
f$,"*")>0
d$,"*")-1):
l$,m$)>0
\-d$=
f$,"*")+1):l$=
l$,m$)+1):k%=1
l$,m$,
m$)<>m$
d$,"*")=0
:r%=_%
f$,"?")=0
f$,"*")=0
e$,d$)>0
g(Q%):
b(Q%,1,"Found"):
d(l%):h%=i%+1:
t(s%,L%,eb%):
i%=s%
8:r%=
f(i%,y%):
i%=s%
f(i%,0)
5:r%=
f(i%,y%):
f(i%,6)
8:r%=
f(i%,y%):
b(l%,16,
b("nfd")):
b(Q%,1,
b("nfd")):
g(l%)
L:S%=e%!24:J%=!e%:c%=e%!4:D%=
387:fb%=c%:
262351,,a%:
262356,,N%,!a%,a%!4:D%=
388:fb%=c%:
u:O%=
389:fb%=c%:
g(I%):O%=
390:fb%=c%:
g(P%):O%=
391:fb%=c%:
v:O%=
392:O%=
262354,-1
398,13:c%+=1:D%=
399:c%-=1:D%=
403:fb%=c%:
262351,,a%:
262356,,n%,!a%,a%!4:D%=
):h%=1:D%=
):h%=o%:D%=
):h%-=1:
h%=0:h%=1
:h%+=1:
h%>o%
o%=h%
c%=4c%=14
c%=15c%=5
j(u%,c%,-1)
13:d%=a%(h%-1):b$=
b$(d%,j%),8):
b$<8:b$+=" ":
:b$(d%,j%)=b$+
c(m%,11):
S%=13
c%=9D%=
c(P%,9)):
S%=13D%=
S%=13D%=
S%=13
c%=1D%=
t%:O%=
394,398:D%=
:c%+=1:
c%=5:c%=2
410,399:D%=
:c%-=1:
c%=1:c%=4
13:D%=
c%<4:c%+=1:
j(t%,c%,-1)
S%=27
262356,,-1:
d(l%):
j(u%,fb%,-1):
d(I%):
d(Q%)
262364,S%
262356,,-1:
:!gb%=e%!20:hb%=e%!24:
k%>=hb%
`%=hb%:U%=18
:`%=k%:U%=17:Na%=
262385,Sa%,ib%,jb%,gb%,`%:ib%+=`%:k%-=`%:e%!12=e%!8:e%!16=7:e%!20=gb%:e%!24=`%:
262375,U%,e%,jb%:
k:b$=a$(a%(h%-1),0):=
b$," ")-1)
l:b$=a$(a%(h%-1),0):=
b$," ")+1)
i(b$):$(ib%+k%)=b$:k%+=
b$+1:ib%?(k%-1)=10:
m:ib%=Ca%:k%=0:
a(n%,15)
a(n%,4)
a(n%,5)
No problem: Nothing to do!
a(n%,4)
a(n%,5)
a(n%,4)
a(n%,5)
i(a$(a%(h%-1),0))
9:b$=a$(a%(h%-1),p%):
b$<>""
a(n%,p%+5)
i(b$)
a(n%,4)
a(n%,5)
i(a$(a%(h%-1),0))
a(n%,4)
a(n%,5)
a(n%,p%+5)
i(a$(a%(h%-1),p%))
kb%<>n%
m:Na%=
:jb%=e%!4:
:Ka%=e%!4:c$=
c(n%,0)
c$,".",0)=0
b("sav")):
8,10,c$,4095,,Ca%,Ca%+`%:
262356,,-1
b(n%,0,c$):
Ka%=0
Re%!0=80:e%!4=Sa%:e%!8=0:e%!12=0:e%!16=3:$(e%+44)=c$:
262375,18,e%,Ka%:Ka%=0:
Z c$=
c(N%,0)
c$,".",0)=0
b("sav")):
(c$):i%=0:
:d%=a%(i%):
a$(d%,0)<>""
9:b$=a$(d%,p%):
b$<>""
p%+b$
9:b$=b$(d%,p%):
b$<>""
(p%+20)+
(b%(d%,p%,0)*-1)+
(b%(d%,p%,1)*-1)+b$:
#q%,b$
:i%+=1:
5,"SetType "+c$+" 0E4":Ma%=
262356,,-1
b(N%,0,c$):
x:c$=
h:d%=a%(h%-1):b$=
b$(d%,j%),8):
b$<8:b$+=" ":
:b$(d%,j%)=b$+c$:b%(d%,j%,0)=
j(m%,11,
T(lb%):mb%=e%!40:
262351,,a%:J%=a%!12:c%=a%!16:
J%=m%
c%=11
mb%<>228
lb%=3
(-1):aa%=
:aa%=
aa%:ea%=
r(c$)
g(Va%):
262343,,e%
0,4,5:
Ignore
6:c%=e%!16:
d(Va%):
17,18:
e%!16
0:ba%=
1282:
d(Va%):=
d(Va%):=
r(c$):q%=
(c$):
aa%:nb%=o%:w%=
:a$()="":b$()="":b%()=0:j%=0:o%=0:nb%=0:h%=1:w%=
:$ma%=c$
#q%:b$=
b$-1):
:o%+=1:a$(o%-1,0)=b$:
#q%:b$=
#q%:p%=
b$,1)):b$=
b$-1):
p%<10
a$(o%-1,p%)=b$
b$,1,1):b%(o%-1,p%-20,0)=(t$="1"):t$=
b$,2,1):b%(o%-1,p%-20,1)=(t$="1"):b$=
b$-2):b$(o%-1,p%-20)=b$
k%=nb%
499:a%(k%)=k%:
b(l%,5,"1"):
b(l%,7,
b(l%,1,""):
b(l%,16,""):
g(l%):
j(l%,1,0):
a(m%,j%+1,21,
g(m%):da%=
g(P%)
g(I%)
7:ba%=
0:E%=a%:Ta%=
ob%-a%:v$="":
Ta%:v$+=
(a%?k%):
b(t%,k%,
v$,(k%-2)*2+1,2)):
3:ba%=
"b":g%=pa%
"d":g%=Ia%
"c":g%=Ja%
:g%=K%
262356,,g%,!a%-64,a%!4
Y:d%=a%(h%-1):
k%=j%
8:b$(d%,k%)=b$(d%,k%+1):
pb%=0
1:b%(d%,k%,pb%)=b%(d%,k%+1,pb%):
3b$(d%,9)="":b%(d%,9,0)=0:b%(d%,9,1)=0:w%=
Z:d%=a%(h%-1):
-1:b$(d%,k%)=b$(d%,k%-1):
pb%=0
1:b%(d%,k%,pb%)=b%(d%,k%-1,pb%):
,:b$(d%,j%)="":b%(d%,j%,0)=0:b%(d%,j%,1)=0:w%=
b("crc")):
A(-1):
A(qb%):d%=a%(h%-1):
b$(d%,j%),b$(d%,j%+qb%):
b%(d%,j%,k%),b%(d%,j%+qb%,k%):
a(m%,j%+1,21,
):j%+=qb%:
a(m%,j%+1,21,
b("clc")):
A(1):
262351,,a%:=((a%!8
1)=1)
q:ea%=
499:a%(k%)=k%:
:j%=0:h%=1:o%=1:$ma%="Addresses":b$()="":b%()=0:a$()="":w%=
o%=1G%=
b("lre")):
i%=h%
9:a$(a%(i%-1),y%)=a$(a%(i%),y%):
9:a$(a%(o%),y%)="":
h%=o%h%-=1
o%-=1:w%=
o%+=1:
i%=o%
9:a$(a%(i%),y%)=a$(a%(i%-1),y%):
9:a$(a%(h%-1),y%)="":
:o%+=1:w%=
J:x%=!e%:y%=e%!4:rb%=e%!8:J%=e%!12:c%=e%!16:
g(u%)
15:sb%=
a(n%,15):
b(l%,1,u$)
9,10,11,12,13:
aa(l%,9,13,c%):
a(l%,10)
a(l%,11)
a(l%,12)
a(l%,13))
a(l%,9)
a(l%,9,21,
0:h%=1
1:h%-=1:
h%=0h%=1
:h%+=1:
h%>o%
o%=h%
3:h%=o%
d(Q%):
d(l%)
m%:d%=a%(h%-1):
1,2,3,4,5,6,7,8,9,10:
a(m%,j%+1,21,
):j%=c%-1:
a(m%,j%+1,21,
12:b%(d%,j%,0)=
a(m%,12):
a(m%,13,22,
b%(d%,j%,0)):
13:b$=b$(d%,j%):
Ra%>=310
5,"Filer_Run "+
b$-8):
262366,"Run "+
b$-8)
14:b%(d%,j%,1)=
a(m%,16,22,
a(u%,17,22,
15:b%(d%,j%,