home *** CD-ROM | disk | FTP | other *** search
/ The Datafile PD-CD 5 / DATAFILE_PDCD5.iso / utilities / a / addresses / !Addresses / !RunImage (.txt) < prev    next >
RISC OS BBC BASIC V Source  |  1994-07-28  |  18KB  |  859 lines

  1.  >!RunImage
  2.  For !Addresses
  3.  NSW 28-Jul-1994
  4. Xx$="1.32 (28-Jul-1994)":
  5. "Error 0 "+
  6. $+" (internal error code "+
  7. +")":
  8. 262365:
  9. $+" (internal error code "+
  10. +")")
  11. c$<>""aa%=
  12. r(c$)
  13. :ba%=
  14. 262343,,e%
  15. 262344,,e%
  16. 262341,,e%
  17. 262342,,e%:
  18. !e%=u%
  19. d(m%):
  20. d(P%):
  21. d(l%):
  22. d(I%):
  23. d(t%):
  24. d(Q%):
  25. c(N%,0):i%=0:
  26. h$,".",i%)>0:i%=
  27. h$,".",i%)+1:
  28. h$,i%-2):
  29. h$,".")>0
  30. 5,"Filer_OpenDir "+h$
  31. !e%=m%:da%=
  32. 17,18:
  33. ba%:ea%=
  34. 262365:
  35. jd%=a%(h%-1):
  36. a(m%,12,21,b%(d%,j%,0)):
  37. a(m%,14,21,b%(d%,j%,1)):
  38. a(m%,15,21,
  39. b%(d%,j%,1)):
  40. b%(d%,j%,1)
  41. a(m%,16,22,
  42. a(m%,17,22,
  43. b(m%,16,""):
  44. b(m%,17,
  45. b$(d%,j%),8))
  46. a(m%,17,22,
  47. a(m%,16,22,
  48. b(m%,17,""):
  49. b(m%,16,
  50. b$(d%,j%),8))
  51. a(m%,13,22,
  52. b%(d%,j%,0)):b$=b$(d%,j%):b$=
  53. b$-8):
  54. b(m%,11,
  55. b$,80)):
  56. b(m%,j%+1,
  57. b$(d%,j%),20)):fa%=b%(d%,j%,1)+11:
  58. l(m%,j%+1,fa%):
  59. I:ga%=ha%:
  60. 262380,32000+ha%
  61. ha%=ga%
  62. b("nis"))
  63. 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
  64. 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:
  65. Fa% 512,Ga% 128,Z% 256,Ha% 128,Ia% 64,Ja% 128:
  66. b$(499,9),b%(499,9,1),c$(30,1):c$()=
  67. 30," "):c$()="":g$="":
  68. $oa%=
  69. b("er2"):h%=1:o%=1:j%=0:u$="":Ka%=0:da%=
  70. :La%=
  71. :ba%=
  72. :Ma%=
  73. :Na%=
  74. :Oa%=0:Pa%=0:Qa%=Ha%:
  75. 499:a%(k%)=k%:
  76. o("RiscOS$Version")="310"
  77. 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:
  78. 262336,310,&4B534154,"Addresses",R%
  79. Ra%,Sa%
  80. 262336,200,&4B534154,"Addresses"
  81. Ra%,Sa%
  82. p(-1,0,0,68,68,12298,"!addresses"):q%=
  83. "<Address$Dir>.Sprites":Ta%=
  84. #q%+1024:
  85. C% Ta%:!C%=Ta%-1:C%!4=0:C%!8=12:C%!12=16:
  86. 46,256+10,C%,"<Address$Dir>.Sprites":
  87. 262380,-1,-1
  88. H:g%=pa%:$g%="Addresses":g%!12=459271:g%!16=16*10:g%!20=44:g%!24=0:
  89. c(g%+28,0,Ua%,&7091031,"Info"):
  90. c(g%+52,0,N%,&7091031,"Save"):
  91. c(g%+76,0,-1,&7091031,"New file"):
  92. c(g%+100,128,-1,&7091031,"Quit")
  93. g%=Ia%:$g%="Date":g%!12=459271:g%!16=16*8:g%!20=44:g%!24=0:
  94. c(g%+28,128,-1,&7091031,"Today"):g%=Ja%:$g%="Correspond":g%!12=459271:g%!16=16*11:g%!20=44:g%!24=0:
  95. c(g%+28,0,-1,&7091031,"Delete"):
  96. c(g%+52,0,-1,&7091031,"Insert")
  97. c(g%+76,0,-1,&7091031,"Raise"):
  98. c(g%+100,128,-1,&7091031,"Lower"):g%=K%:$g%="Addresses":g%!12=459271:g%!16=16*18:g%!20=44:g%!24=0:
  99. c(g%+28,0,-1,&7091031,"Control        F6"):
  100. c(g%+52,0,-1,&7091031,"Search         F4")
  101. c(g%+76,0,-1,&7091031,"Sort           F5"):
  102. c(g%+100,2,-1,&7091031,"Correspondance F7"):
  103. c(g%+124,2,K%+300,&7091031,"Address"):
  104. c(g%+148,0,Ua%,&7091031,"Info"):
  105. c(g%+172,8,K%+500,&7091031,"Save"):
  106. c(g%+196,128,-1,&7091031,"Quit")
  107. g%=K%+300:$g%="Edit":g%!12=459271:g%!16=16*11:g%!20=44:g%!24=0:
  108. c(g%+28,0,-1,&7091031,"Delete"):
  109. c(g%+52,0,-1,&7091031,"Insert"):
  110. c(g%+76,0,-1,&7091031,"Raise"):
  111. c(g%+100,128,-1,&7091031,"Lower")
  112. g%=K%+500:$g%="Save :":g%!12=459271:g%!16=16*16:g%!20=44:g%!24=0:
  113. c(g%+28,0,N%,&7091031,"Whole file   F3"):
  114. c(g%+52,136,n%,&7091031,"This record 
  115. F3"):
  116. 262361,,"<Address$Dir>.Templates":P%=
  117. e(sa%,ta%,255,"cont",C%):m%=
  118. e(Da%,Ea%,511,"crsp",C%):Ua%=
  119. e(ja%,ka%,255,"info",C%):u%=
  120. e(ia%,V%,511,"main",C%):Va%=
  121. e(ya%,za%,127,"modd",C%)
  122. e(la%,ma%,255,"save",-1):l%=
  123. e(qa%,ra%,511,"sear",C%):n%=
  124. e(Aa%,Ba%,569,"sind",C%):I%=
  125. e(ua%,va%,511,"sort",C%):t%=
  126. e(Fa%,Ga%,127,"date",C%):Q%=
  127. e(wa%,xa%,63,"foun",C%):
  128. 262362
  129. $(ka%+99)=x$:$ma%="Addresses":$Ba%="Address":
  130. a(I%,1,21,
  131. a(I%,2,21,
  132. a(I%,3,21,
  133. a(I%,c%,21,
  134. a(l%,3,21,
  135. a(I%,4,21,
  136. a(l%,9,21,
  137. c%=10
  138. a(l%,c%,21,
  139. a(v%,c%):!a%=v%:a%!4=c%:
  140. 262350,,a%:=((a%!24
  141. 2097152)=2097152)
  142. b(l%,16,""):
  143. ):f$=
  144. c(l%,1):r%=
  145. b(Q%,0,f$):
  146. f$=""
  147. b("ser")):
  148. f$,"?")>0
  149. f$,"*")>0
  150. b("mxw")):
  151. u$=f$:Wa%=
  152. a(l%,3):Xa%=
  153. a(l%,9):Ya%=
  154. a(l%,10):Za%=
  155. a(l%,11):_a%=
  156. a(l%,12):`a%=
  157. a(l%,13):ab%=
  158. a(l%,14):
  159. :$a%=f$:A%=a%:
  160. bb%:f$=$a%
  161. "dd$=f$:c$()="":
  162. 30:c$(k%,1)="1":
  163. d$,1)="?":d$=
  164. d$,2):
  165. d$)="?":d$=
  166. d$,"?")>0
  167. rLcb%=0:z%=0:db%=0:
  168. d$,"?",z%)>0:z%=
  169. d$,"?",z%)+1:cb%+=1:
  170. z%=db%+1cb%-=1
  171. vdb%=z%:
  172. :z%=1:
  173. cb%:c$(d%,0)=
  174. d$,z%,
  175. d$,"?",z%)-z%):z%=
  176. d$,"?",z%)+1:
  177. c$(d%,0)=""d%-=1:c$(d%,1)=
  178. c$(d%,1)+1)
  179. c$(d%,0),1)="?"d%-=1
  180. c$(d%,0),1)="?":c$(d%,1)=
  181. c$(d%-1,1)+1):c$(d%,0)=
  182. c$(d%,0),2):
  183. :c$(d%,0)=
  184. d$,z%):
  185. c$(d%,0),1)="?":c$(d%-1,1)=
  186. c$(d%-1,1)+1):c$(d%,0)=
  187. c$(d%,0),2):
  188. Wa%s%=0:L%=o%:
  189. :s%=(
  190. c(l%,5))-1:L%=(
  191. c(l%,7))-1
  192. t(s%,L%,
  193. f(i%,y%):r%=
  194. :e$=a$(a%(i%),y%):
  195. $a%=e$:A%=a%:
  196. bb%:e$=$a%
  197. :l$=e$:k%=0:
  198. d$,"?")>0
  199. e$,c$(1,0))-1:
  200. cb%+1:
  201. e$,c$(d%,0),z%)<>z%+
  202. c$(d%-1,0)+
  203. (c$(d%-1,1))_%=
  204. e$,c$(d%,0)):
  205.     r%=_%
  206. f$,"*")>0
  207. d$,"*")-1):
  208. l$,m$)>0
  209. \-d$=
  210. f$,"*")+1):l$=
  211. l$,m$)+1):k%=1
  212. l$,m$,
  213. m$)<>m$
  214. d$,"*")=0
  215. :r%=_%
  216. f$,"?")=0
  217. f$,"*")=0
  218. e$,d$)>0
  219. g(Q%):
  220. b(Q%,1,"Found"):
  221. d(l%):h%=i%+1:
  222. t(s%,L%,eb%):
  223. i%=s%
  224. 8:r%=
  225. f(i%,y%):
  226. i%=s%
  227. f(i%,0)
  228. 5:r%=
  229. f(i%,y%):
  230. f(i%,6)
  231. 8:r%=
  232. f(i%,y%):
  233. b(l%,16,
  234. b("nfd")):
  235. b(Q%,1,
  236. b("nfd")):
  237. g(l%)
  238. L:S%=e%!24:J%=!e%:c%=e%!4:D%=
  239. 387:fb%=c%:
  240. 262351,,a%:
  241. 262356,,N%,!a%,a%!4:D%=
  242. 388:fb%=c%:
  243. u:O%=
  244. 389:fb%=c%:
  245. g(I%):O%=
  246. 390:fb%=c%:
  247. g(P%):O%=
  248. 391:fb%=c%:
  249. v:O%=
  250. 392:O%=
  251. 262354,-1
  252. 398,13:c%+=1:D%=
  253. 399:c%-=1:D%=
  254. 403:fb%=c%:
  255. 262351,,a%:
  256. 262356,,n%,!a%,a%!4:D%=
  257. ):h%=1:D%=
  258. ):h%=o%:D%=
  259. ):h%-=1:
  260. h%=0:h%=1
  261. :h%+=1:
  262. h%>o%
  263. o%=h%
  264. c%=4c%=14
  265. c%=15c%=5
  266. j(u%,c%,-1)
  267. 13:d%=a%(h%-1):b$=
  268. b$(d%,j%),8):
  269. b$<8:b$+=" ":
  270. :b$(d%,j%)=b$+
  271. c(m%,11):
  272. S%=13
  273. c%=9D%=
  274. c(P%,9)):
  275. S%=13D%=
  276. S%=13D%=
  277. S%=13
  278. c%=1D%=
  279. t%:O%=
  280. 394,398:D%=
  281. :c%+=1:
  282. c%=5:c%=2
  283. 410,399:D%=
  284. :c%-=1:
  285. c%=1:c%=4
  286. 13:D%=
  287. c%<4:c%+=1:
  288. j(t%,c%,-1)
  289. S%=27
  290. 262356,,-1:
  291. d(l%):
  292. j(u%,fb%,-1):
  293. d(I%):
  294. d(Q%)
  295. 262364,S%
  296. 262356,,-1:
  297. :!gb%=e%!20:hb%=e%!24:
  298. k%>=hb%
  299. `%=hb%:U%=18
  300. :`%=k%:U%=17:Na%=
  301. 262385,Sa%,ib%,jb%,gb%,`%:ib%+=`%:k%-=`%:e%!12=e%!8:e%!16=7:e%!20=gb%:e%!24=`%:
  302. 262375,U%,e%,jb%:
  303. k:b$=a$(a%(h%-1),0):=
  304. b$," ")-1)
  305. l:b$=a$(a%(h%-1),0):=
  306. b$," ")+1)
  307. i(b$):$(ib%+k%)=b$:k%+=
  308. b$+1:ib%?(k%-1)=10:
  309. m:ib%=Ca%:k%=0:
  310. a(n%,15)
  311. a(n%,4)
  312. a(n%,5)
  313.  No problem: Nothing to do!
  314. a(n%,4)
  315. a(n%,5)
  316. a(n%,4)
  317. a(n%,5)
  318. i(a$(a%(h%-1),0))
  319. 9:b$=a$(a%(h%-1),p%):
  320. b$<>""
  321. a(n%,p%+5)
  322. i(b$)
  323. a(n%,4)
  324. a(n%,5)
  325. i(a$(a%(h%-1),0))
  326. a(n%,4)
  327. a(n%,5)
  328. a(n%,p%+5)
  329. i(a$(a%(h%-1),p%))
  330. kb%<>n%
  331. m:Na%=
  332. :jb%=e%!4:
  333. :Ka%=e%!4:c$=
  334. c(n%,0)
  335. c$,".",0)=0
  336. b("sav")):
  337. 8,10,c$,4095,,Ca%,Ca%+`%:
  338. 262356,,-1
  339. b(n%,0,c$):
  340. Ka%=0
  341. Re%!0=80:e%!4=Sa%:e%!8=0:e%!12=0:e%!16=3:$(e%+44)=c$:
  342. 262375,18,e%,Ka%:Ka%=0:
  343. Z    c$=
  344. c(N%,0)
  345. c$,".",0)=0
  346. b("sav")):
  347. (c$):i%=0:
  348. :d%=a%(i%):
  349. a$(d%,0)<>""
  350. 9:b$=a$(d%,p%):
  351. b$<>""
  352. p%+b$
  353. 9:b$=b$(d%,p%):
  354. b$<>""
  355. (p%+20)+
  356. (b%(d%,p%,0)*-1)+
  357. (b%(d%,p%,1)*-1)+b$:
  358. #q%,b$
  359. :i%+=1:
  360. 5,"SetType "+c$+" 0E4":Ma%=
  361. 262356,,-1
  362. b(N%,0,c$):
  363. x:c$=
  364. h:d%=a%(h%-1):b$=
  365. b$(d%,j%),8):
  366. b$<8:b$+=" ":
  367. :b$(d%,j%)=b$+c$:b%(d%,j%,0)=
  368. j(m%,11,
  369. T(lb%):mb%=e%!40:
  370. 262351,,a%:J%=a%!12:c%=a%!16:
  371. J%=m%
  372. c%=11
  373. mb%<>228
  374. lb%=3
  375. (-1):aa%=
  376. :aa%=
  377. aa%:ea%=
  378. r(c$)
  379. g(Va%):
  380. 262343,,e%
  381. 0,4,5:
  382.  Ignore
  383. 6:c%=e%!16:
  384. d(Va%):
  385. 17,18:
  386. e%!16
  387. 0:ba%=
  388. 1282:
  389. d(Va%):=
  390. d(Va%):=
  391. r(c$):q%=
  392. (c$):
  393. aa%:nb%=o%:w%=
  394. :a$()="":b$()="":b%()=0:j%=0:o%=0:nb%=0:h%=1:w%=
  395. :$ma%=c$
  396. #q%:b$=
  397. b$-1):
  398. :o%+=1:a$(o%-1,0)=b$:
  399. #q%:b$=
  400. #q%:p%=
  401. b$,1)):b$=
  402. b$-1):
  403. p%<10
  404. a$(o%-1,p%)=b$
  405. b$,1,1):b%(o%-1,p%-20,0)=(t$="1"):t$=
  406. b$,2,1):b%(o%-1,p%-20,1)=(t$="1"):b$=
  407. b$-2):b$(o%-1,p%-20)=b$
  408. k%=nb%
  409. 499:a%(k%)=k%:
  410. b(l%,5,"1"):
  411. b(l%,7,
  412. b(l%,1,""):
  413. b(l%,16,""):
  414. g(l%):
  415. j(l%,1,0):
  416. a(m%,j%+1,21,
  417. g(m%):da%=
  418. g(P%)
  419. g(I%)
  420. 7:ba%=
  421. 0:E%=a%:Ta%=
  422. ob%-a%:v$="":
  423. Ta%:v$+=
  424. (a%?k%):
  425. b(t%,k%,
  426. v$,(k%-2)*2+1,2)):
  427. 3:ba%=
  428. "b":g%=pa%
  429. "d":g%=Ia%
  430. "c":g%=Ja%
  431. :g%=K%
  432. 262356,,g%,!a%-64,a%!4
  433. Y:d%=a%(h%-1):
  434. k%=j%
  435. 8:b$(d%,k%)=b$(d%,k%+1):
  436. pb%=0
  437. 1:b%(d%,k%,pb%)=b%(d%,k%+1,pb%):
  438. 3b$(d%,9)="":b%(d%,9,0)=0:b%(d%,9,1)=0:w%=
  439. Z:d%=a%(h%-1):
  440. -1:b$(d%,k%)=b$(d%,k%-1):
  441. pb%=0
  442. 1:b%(d%,k%,pb%)=b%(d%,k%-1,pb%):
  443. ,:b$(d%,j%)="":b%(d%,j%,0)=0:b%(d%,j%,1)=0:w%=
  444. b("crc")):
  445. A(-1):
  446. A(qb%):d%=a%(h%-1):
  447. b$(d%,j%),b$(d%,j%+qb%):
  448. b%(d%,j%,k%),b%(d%,j%+qb%,k%):
  449. a(m%,j%+1,21,
  450. ):j%+=qb%:
  451. a(m%,j%+1,21,
  452. b("clc")):
  453. A(1):
  454. 262351,,a%:=((a%!8
  455. 1)=1)
  456. q:ea%=
  457. 499:a%(k%)=k%:
  458. :j%=0:h%=1:o%=1:$ma%="Addresses":b$()="":b%()=0:a$()="":w%=
  459. o%=1G%=
  460. b("lre")):
  461. i%=h%
  462. 9:a$(a%(i%-1),y%)=a$(a%(i%),y%):
  463. 9:a$(a%(o%),y%)="":
  464. h%=o%h%-=1
  465. o%-=1:w%=
  466. o%+=1:
  467. i%=o%
  468. 9:a$(a%(i%),y%)=a$(a%(i%-1),y%):
  469. 9:a$(a%(h%-1),y%)="":
  470. :o%+=1:w%=
  471. J:x%=!e%:y%=e%!4:rb%=e%!8:J%=e%!12:c%=e%!16:
  472. g(u%)
  473. 15:sb%=
  474. a(n%,15):
  475. b(l%,1,u$)
  476. 9,10,11,12,13:
  477. aa(l%,9,13,c%):
  478. a(l%,10)
  479. a(l%,11)
  480. a(l%,12)
  481. a(l%,13))
  482. a(l%,9)
  483. a(l%,9,21,
  484. 0:h%=1
  485. 1:h%-=1:
  486. h%=0h%=1
  487. :h%+=1:
  488. h%>o%
  489. o%=h%
  490. 3:h%=o%
  491. d(Q%):
  492. d(l%)
  493. m%:d%=a%(h%-1):
  494. 1,2,3,4,5,6,7,8,9,10:
  495. a(m%,j%+1,21,
  496. ):j%=c%-1:
  497. a(m%,j%+1,21,
  498. 12:b%(d%,j%,0)=
  499. a(m%,12):
  500. a(m%,13,22,
  501. b%(d%,j%,0)):
  502. 13:b$=b$(d%,j%):
  503. Ra%>=310
  504. 5,"Filer_Run "+
  505. b$-8):
  506. 262366,"Run "+
  507. b$-8)
  508. 14:b%(d%,j%,1)=
  509. a(m%,16,22,
  510. a(u%,17,22,
  511. 15:b%(d%,j%,