Home » Archimedes archive » Acorn Computing » 1993 07 Mega Disk.adf » 93_07 » DataVision/!DataVis/!RunImage
DataVision/!DataVis/!RunImage
This website contains an archive of files for the Acorn Electron, BBC Micro, Acorn Archimedes, Commodore 16 and Commodore 64 computers, which Dominic Ford has rescued from his private collection of floppy disks and cassettes.
Some of these files were originally commercial releases in the 1980s and 1990s, but they are now widely available online. I assume that copyright over them is no longer being asserted. If you own the copyright and would like files to be removed, please contact me.
Tape/disk: | Home » Archimedes archive » Acorn Computing » 1993 07 Mega Disk.adf » 93_07 |
Filename: | DataVision/!DataVis/!RunImage |
Read OK: | ✔ |
File size: | 4726 bytes |
Load address: | 0000 |
Exec address: | 0000 |
File contents
0REM DataVision Copyright (C) 1992 Silicon Vision Ltd. 10PROCeA:PROCcA:ONERRORPROCzA:PROCxA:END 170PROCUA:PROCmA:PROCRA:PROCLA:ONERRORPROCzA 240mA$=FNGA:IFmA$<>""THEN 290PROCBB(mA$): 300ENDIF 310REPEAT:PROCaA:UNTILMC%:PROCxA:END: 430DEFPROCaA:LOCALX%,Y%:SYS&400C7,1,gC%TOTA%:CASETA%OF 470WHENbA%:X%=gC%!4:Y%=gC%!16:CASE!gC%OF 520OTHERWISE:SYS&400C5,,gC%: 560ENDCASE: 580WHENFB%:PROCnA(!gC%): 610WHENmA%:CASE!gC%OF 630OTHERWISE:SYS&400C6,,gC%: 670ENDCASE: 690WHENLB%:PROCQA(!gC%,gC%!4,gC%!8,gC%!12,gC%!16,gC%!20): 720WHENuA%:PROCkA(gC%): 750WHENHB%,OB%:PROCWA(gC%): 780ENDCASE:ENDPROC: 830DEFPROCrA(fC%,x%,y%,vA%,kA%,MB%,`A%,hA%):!gC%=fC%:gC%!4=x%:gC%!8=y%-kA%:gC%!12=x%+vA%:gC%!16=y%:gC%!20=MB%:gC%!24=`A%:gC%!28=hA%:SYS&400C5,,gC%:ENDPROC: 970DEFPROCuA(fC%):!gC%=fC%:SYS&400C6,,gC%:ENDPROC: 1040DEFPROCnA(fC%):LOCALTC%:!gC%=fC%:SYS&400C8,,gC%TOTC%:CASEfC%OF 1090WHENUC%,WC%:PROCSA(TC%): 1130ENDCASE:ENDPROC: 1180DEFPROCSA(TC%):LOCALX%,Y%:X%=gC%!4+32:Y%=gC%!16-16:WHILETC%:PROCOA(X%,Y%,SA$,36,7,fB%):SYS&400CA,,gC%TOTC%:ENDWHILE:ENDPROC: 1300DEFPROCQA(HA%,FA%,b%,h%,i%,NA%):CASEh%OF 1320WHENXC%:IF(b%AND2)THEN 1350PROCsA(XC%,RA%): 1360ENDIF 1370WHENUC%:PROCTA(b%,i%): 1410WHENWC%:PROClA(b%,i%): 1440ENDCASE:ENDPROC: 1490DEFPROCTA(b%,i%):CASEi%OF 1510WHENpA%:PROCvA:PROCuA(UC%): 1560ENDCASE:ENDPROC: 1610DEFPROClA(b%,i%):PROCvA:PROCuA(WC%):CASEi%OF 1650WHENXA%:CASE`B%OF 1680WHENaB%:PROCCB:MC%=TRUE: 1730ENDCASE: 1750WHENwA%:CASE`B%OF 1770ENDCASE: 1800ENDCASE:ENDPROC: 1850DEFPROCkA(gC%):LOCALX%,Y%:CASEAAOF 1880WHENXC%:PROCgA: 1920OTHERWISE:ERROR1,"Unknown menu type" 1940ENDCASE:IF(FNJA(X%,Y%)AND1)=1THEN 1970PROCsA(qA%,cA%): 1980ENDIF 1990ENDPROC: 2060DEFPROCgA:LOCALX%,I%,mA$:CASE!gC%OF 2090WHENnA%:PROCGB("!dv2"): 2130WHENAB%:IFlA$<>"*NONE*"THEN 2150PROCCB:IFdC%<>-1THEN 2170PROCDB(filelistmenu%,dC%,0,0):dC%=-1: 2190ENDIF 2200ENDIF 2210WHENBB%:PROCHB("!dv12"): 2250WHENtA%:PROCHB("!dv8"): 2280WHENSA%:PROCHB("!dv1"): 2310WHEN_A%:PROCHB("!dv13"): 2340WHENiA%:PROCHB("!dv3"): 2370WHENeA%:PROCHB("!dv11"): 2400WHENdA%:PROCHB("!dv14"): 2430WHENZA%:PROCHB("!dv10"): 2460WHENIB%:PROCHB("!dv9"): 2490WHENgA%:PROCGB("!dv5"): 2520WHENrA%:PROCGB("!dv15"): 2550WHENxA%:PROCHB("!dv4"): 2580WHENVB%:PROCGB("!dvPort"): 2610WHENWA%:CASEgC%!4OF 2630WHENWB%:IFlA$<>"*NONE*"THEN 2660X%=FNOA:IFcC%>=20THEN 2680CLOSE#X%:ERROR1,"File list is full (Maximum of 20 files)" 2700ENDIF 2710CLOSE#X%:PROCFB:FORI%=0TOcC%-1:IFCA$(I%)=lA$THEN 2750ERROR1,"File '"+lA$+"' is already in file list" 2760ENDIF 2770NEXT:X%=FNOA:cC%+=1:PTR#X%=(cC%-1)*17+4:PRINT#X%,lA$:PTR#X%=(cC%-1)*17+15:PRINT#X%,fA$:PTR#X%=(cC%-1)*17+18:PRINT#X%,eA$:PTR#X%=0:PRINT#X%,STR$(cC%):CLOSE#X%:PROCFB:dC%=cC%-1:PROCEB(filelistmenu%,dC%,0,0): 2920ENDIF 2930WHENRB%:I%=gC%!8:IFI%<>-1THEN 2970X%=FNOA:IFcC%=0THEN 2990CLOSE#X%:ERROR1,"File list is empty" 3010ENDIF 3020JA$=lA$:IA$=fA$:MA$=eA$:PTR#X%=(cC%-1)*17+4:INPUT#X%,lA$:PTR#X%=(cC%-1)*17+15:INPUT#X%,fA$:PTR#X%=(cC%-1)*17+18:INPUT#X%,eA$:PTR#X%=I%*17+4:PRINT#X%,lA$:PTR#X%=I%*17+15:PRINT#X%,fA$:PTR#X%=I%*17+18:PRINT#X%,eA$:cC%-=1:PTR#X%=0:PRINT#X%,STR$(cC%):lA$=JA$:fA$=IA$:eA$=MA$:CLOSE#X% 3240IF(I%=dC%)THEN 3250dC%=-1:PROCCB: 3270ENDIF 3280PROCFB:IF(dC%<>-1)THEN 3300IF(dC%=cC%)THEN 3310dC%=I%: 3320ENDIF 3330PROCEB(filelistmenu%,dC%,0,0): 3340ENDIF 3350ENDIF 3360ENDCASE: 3390WHENlB%:PROCBB(FNNA(menu_filename%)): 3420WHENjA%:I%=gC%!4:IFI%<>-1THEN 3450IFdC%<>-1THEN 3460PROCDB(filelistmenu%,dC%,0,0): 3470ENDIF 3480dC%=I%:PROCEB(filelistmenu%,dC%,0,0):X%=FNOA:PTR#X%=I%*17+15:INPUT#X%,fA$:PTR#X%=I%*17+18:INPUT#X%,eA$:lA$=CA$(I%):CLOSE#X%:PROCtA: 3580ENDIF 3590WHENVA%:IF(lA$<>"*NONE*")THEN 3620PROCPA(aB%,"DataVision: Quit and close current files?"): 3630ELSE:MC%=TRUE: 3650ENDIF 3660ENDCASE:ENDPROC: 3730DEFPROCBB(mA$):LOCALI%:mA$=FNDA(mA$):IF(mA$="")OR(LENmA$>10)THEN 3770ERROR1,"Illegal Filename" 3780ENDIF 3790IF(dC%<>-1)THEN 3800PROCDB(filelistmenu%,dC%,0,0): 3810ENDIF 3820I%=0:WHILE(I%<cC%)AND(CA$(I%)<>mA$):I%+=1:ENDWHILE:IF(CA$(I%)=mA$)THEN 3870dC%=I%:PROCEB(filelistmenu%,dC%,0,0): 3890ELSE:dC%=-1: 3910ENDIF 3920lA$=mA$:PROCtA:ENDPROC: 3980DEFPROCCB:LOCALX%:OSCLI"CLOSE":X%=OPENOUT(FNPA("NIM")):PRINT#X%,"*NONE*","0",WA$,"0",YA$,VA$:CLOSE#X%:lA$="*NONE*":fA$="0":ENDPROC: 4100DEFPROCGB(mA$):LOCALnB%,tB%,_B%,BA$(),I%,key$:DIMBA$(12):PROCfA(lA$):PROCMA:SYS&6,229,0,0TO,nB%:tB%=MODE:_B%=FNKA(2,160*1024):OSCLI"Dir <DataVision$Dir>":RESTORE+0:FORI%=1TO12:BA$(I%)=FNIA("key$"+STR$I%):READkey$:OSCLI"Key "+STR$I%+" "+key$:NEXT:SYS&400DE,"Run "+mA$:SYS&6,229,nB%,0:SYS&6,124 4290FORI%=1TO12:OSCLI"Key "+STR$I%+" "+BA$(I%):NEXT:OSCLI"FX 20":VDU20:SYS&400E3,tB%:_B%=FNKA(2,_B%):ENDPROC: 4400DATA "*Dir <DataVision$Dir>.Accs|MRUN invo|M" 4410DATA "*Dir <DataVision$Dir>.Accs|MRUN credit|M" 4420DATA "*Dir <DataVision$Dir>.Accs|MRUN sle|M" 4430DATA "*Dir <DataVision$Dir>.Accs|MRUN custlist|M" 4440DATA "*Dir <DataVision$Dir>.Accs|MRUN cad|M" 4450DATA "*Dir <DataVision$Dir>.Accs|MRUN pfr|M" 4460DATA "*Dir <DataVision$Dir>.Accs|MRUN rsr|M" 4470DATA "*Dir <DataVision$Dir>.Accs|MRUN msr|M" 4480DATA "*Dir <DataVision$Dir>.Accs|MRUN masr|M" 4490DATA "*Dir <DataVision$Dir>.Accs|MRUN ple|M" 4500DATA "*Dir <DataVision$Dir>.Accs|MRUN supplist|M" 4510DATA "QUIT|M" 4520DEFPROCHB(mA$):IFlA$<>"*NONE*"THEN 4570PROCGB(mA$): 4580ELSE:ERROR1,"No File open" 4600ENDIF 4610ENDPROC: 4650DEFPROCtA:LOCALH%,M%,X%:H%=(TIMEDIV360000)MOD60:M%=(TIMEDIV6000)MOD60:YA$=STR$(H%)+":"+STR$(M%):X%=OPENOUT(FNPA("NIM")):PRINT#X%,lA$,fA$,WA$,eA$,YA$,VA$:CLOSE#X%:ENDPROC: 4770DEFPROCeA:RESTORE+0:READLA$,BA$,ZA$,FA$:lA%=&DB5:AA$=ZA$:DIMgC%&400,CC% 256,eC%&200:SYS&400C0,200,&4B534154,LA$TOBA%,TB%:XC%=-2:CB%=-1:MA%=-2:FB%=1:bA%=2:mA%=3:JA%=4:IA%=5:LB%=6:KA%=7:OA%=8:uA%=9:CA%=10:HB%=17:OB%=18:YA%=1024:KB%=0:oA%=3:GA%=4 5030GB%=8:zA%=&400C0:UA%=0:fB%=1:JB%=2:ENDPROC: 5140DATA "DataVision" : REM Application name 5150DATA "DataVision" : REM Icon bar version of name 5160DATA "<DataVision$Dir>" : REM Directory name 5170DATA "!DataVis" : REM Icon Sprite name 5180DEFPROCcA:LOCALbA$:DIMmB% 256:SYS&10TObA$:$mB%=MID$(bA$,INSTR(bA$,"!RunImage")+10):YC%=mB%:WHILE(?YC%=32):YC%+=1:ENDWHILE:ENDPROC: 5340DEFFNGA:LOCALbA$,c%:bA$="":c%=?YC%:WHILE(c%>32):bA$+=CHR$c%:YC%+=1:c%=?YC%:ENDWHILE:WHILE(c%=32):YC%+=1:c%=?YC%:ENDWHILE:=bA$: 5510DEFPROCRA:LOCALEC%:SYS&406C0:GA$="1.3":sB%=6:dB%=2:$FNCA(infoW%,DB%)=GA$:`B%=0:aB%=0:EA%=0:dC%=-1:DIMCA$(80),filelistmenu%&400:PROCYA:PROCFB:SB%=99:OA$="":RESTORE+0:READEC%:WHILEEC%<>-1:OA$+=CHR$(EC%):READEC%:ENDWHILE:MC%=0:SYS&406C1 5520ENDPROC 5800DATA 0,44,53,36,32,56,32,109,43,36,33,40,109,62,36,55,40,109,40,53,46,40,40,41,40,41,109,43,34,63,109,41,40,32,34,109,59,40,63,62,36,34,35,-1 5810DEFPROCYA:LOCALX%:lA$="*NONE*":fA$="0":WA$=FNEA("%dy/%mn/%yr"):eA$="0":YA$="23:59":VA$="0":X%=OPENIN(FNPA("NIM2")):IFX%=0THEN 5940X%=OPENOUT(FNPA("NIM2")):PRINT#X%,"0": 5960ENDIF 5970CLOSE#X%:X%=OPENOUT(FNPA("NIM")):PRINT#X%,lA$,fA$,WA$,eA$,YA$,VA$:CLOSE#X%:ENDPROC: 6050DEFPROCjA:ERROR1,FNFA(OA$) 6070ENDPROC: 6110DEFPROCUA:DIMr%&100,jB%&200:pB%=0:SYS&400EATO,B%:eB%=FNHA(CB%,0,0,96,120,&2102,FA$,B%):ENDPROC: 6350DEFPROCLA:LOCALDATA 6370RESTORE+0:PROCwA(menu_filename%,64):PROCwA(menu_val%,16):kB%=&2000:fA%=256:DIMZB% kB%,NB% fA%:JC%=0:NB%?0=13::filemenu%=FNMA: 6490DATA 1,"Filename" 6500DATA ....2{64/menu_filename%/} 6510PA%=FNMA: 6530DATA 1,"Value" 6540DATA ....2{16/menu_val%/} 6550toolsmenu%=FNMA: 6570DATA 2,"FileTools" 6580DATA ....0{//Add File} 6590DATA ....1{filelistmenu%//Remove File} 6600WB%=0:RB%=1:sA%=20:PB%=6:RA%=FNMA: 6660DATA 20,"DataVision" 6670DATA .*..3{infoW%//Info} 6680DATA ....0{//Create} 6690DATA ....0{//Close File} 6700DATA ....0{//Alter Form} 6710DATA .*..0{//Relations} 6720DATA ....0{//Add} 6730DATA ....0{//Modify} 6740DATA ....0{//Delete} 6750DATA .*..0{//Sort} 6760DATA ....0{//Browse} 6770DATA ....0{//Queries} 6780DATA ....0{//Reports} 6790DATA .*..0{//WordProcess} 6800DATA ....1{toolsmenu%//FileTools} 6810DATA ....0{//ReportWriter} 6820DATA ....0{//Macros} 6830DATA .*..0{//Import/Export} 6840DATA ....1{filelistmenu%//FileList} 6850DATA .**.1{filemenu%//FileName} 6860DATA ....0{//Quit} 6870QA%=0:nA%=1:AB%=2:BB%=3:tA%=4:SA%=5:_A%=6:iA%=7:eA%=8:dA%=9:ZA%=10:IB%=11:gA%=12:WA%=13:rA%=14:xA%=15:VB%=16:jA%=17:lB%=18:VA%=19:ENDPROC: 7140DEFPROCmA:LOCALSC%,wB%,BC%,AC%,UA$:wB%=&C00:DIMBC% wB%:AC%=BC%:SC%=0:SYS&400D9,,ZA$+".!Templates":REPEAT:$eC%="*"+CHR$0:SYS&400DB,,gC%,AC%,BC%+wB%,-1,eC%,SC%TO,,AC%,,,,SC%:IFSC%<>0THEN 7250UA$=FNNA(eC%):CASEUA$OF 7270WHEN"Info":SYS&400C1,,gC%TOinfoW%: 7310WHEN"Dialogue":SYS&400C1,,gC%TOUC%: 7340WHEN"Confirm":SYS&400C1,,gC%TOWC%: 7370OTHERWISE:ERROR1,"Unknown template '"+UA$+"' found" 7390ENDCASE: 7410ENDIF 7420UNTILSC%=0:SYS&400DA::DB%=4:pA%=1:XA%=1:wA%=2:ENDPROC: 7560DEFPROCNA(FC%):IFFC%>(SB%*YA%)THEN 7580PROCjA: 7590ENDIF 7600ENDPROC: 7640DEFPROCsA(bC%,M%):LOCALX%,Y%,Z%:Z%=FNJA(X%,Y%):qA%=bC%:cA%=M%:AA=bC%:IFbC%=XC%THEN 7710Y%=(sA%+PB%)*32+160:X%-=64: 7730ENDIF 7740SYS&400D4,,M%,X%-60,Y%+32:ENDPROC: 7790DEFPROCWA(gC%):CASEgC%!16OF 7810WHENKB%:MC%=TRUE: 7850WHENoA%:PROCbA: 7880WHENGB%:PROCdA: 7910WHEN&502:PROCiA: 7940WHENzA%:PROCZA: 7970ENDCASE:ENDPROC: 8020DEFPROCbA:LOCALbC%,mA$,xB%:xB%=0:mA$=FNNA(gC%+44):bC%=gC%!40:CASEgC%!20OF 8080WHENXC%:IFgC%!24=eB%THEN 8110xB%=TRUE: 8120ENDIF 8130ENDCASE:IFxB%THEN 8160IF(bC%=lA%)THEN 8170gC%!16=4:SYS&400E7,17,gC%:PROCBB(mA$): 8200ELSE:ERROR1,"Can't load file '"+mA$+"' (Unrecognised Filetype)" 8220ENDIF 8230ENDIF 8240ENDPROC: 8280DEFPROCdA:IFFALSETHEN 8300gC%!12=gC%!8:SYS&400E7,19,gC%: 8320ENDIF 8330ENDPROC: 8370DEFPROCiA:gC%!12=gC%!8:gC%!16+=1:IC%=gC%+20:IFgC%!36=eB%THEN 8420PROCqA("This is the icon for DataVision, the Relational Database"):PROCqA("Copyright (C) 1990 Silicon Vision Ltd."): 8440ENDIF 8450?IC%=0:!gC%=(IC%+4-gC%)ANDNOT3:SYS&400E7,17,gC%,gC%!4:ENDPROC: 8520DEFPROCqA(hA$):$IC%=hA$+"|M":IC%+=LENhA$+2:ENDPROC: 8590DEFPROCfA(mA$):LOCALFC%,QA$,x%,RA$,bC%:x%=OPENIN(FNPA(mA$+"N")):IFx%=0THEN 8630ENDPROC: 8640ENDIF 8650INPUT#x%,QA$:RA$=ZA$+QA$+"."+mA$:CLOSE#x%:SYS&8,5,RA$TObC%,,,,FC%:IFbC%=1THEN 8700PROCNA(FC%): 8710ENDIF 8720ENDPROC: 8780DEFPROCZA:CASEAAOF 8800WHENXC%:PROChA(gC%+32): 8840OTHERWISE:ERROR1,"Internal error: Unknown Menu warning issued" 8860ENDCASE:SYS&400E8,,gC%!20,gC%!24,gC%!28:ENDPROC: 8930DEFPROChA(EB%):CASE!EB%OF 8950WHENlB%:IFlA$="*NONE*"THEN 8980PROC_A(menu_filename%,""): 8990ELSE:PROC_A(menu_filename%,lA$): 9010ENDIF 9020OTHERWISE:ERROR1,"Internal error: Unknown Menu warning issued" 9050ENDCASE:ENDPROC: 9110DEFPROCFB:LOCALI%,KC%,N%:KC%=FNOA:IFcC%=0THEN 9150N%=1:CA$(0)="<No files>": 9170ELSE:N%=cC%:JA$=lA$:IA$=fA$:MA$=eA$:FORI%=1TOcC%:PTR#KC%=(I%-1)*17+4:INPUT#KC%,CA$(I%-1):NEXT: 9260ENDIF 9270PROCXA(filelistmenu%,N%,CA$()):CLOSE#KC%:ENDPROC: 9330DEFFNOA:LOCALC%:C%=OPENUP(FNPA("NIM2")):INPUT#C%,CA$:cC%=VAL(CA$):=C%: 9420DEFFNCA(fC%,OC%):gC%!0=fC%:gC%!4=OC%:SYS&400CE,,gC%:=gC%!28: 9500DEFPROC_A(aC%,cA$):$aC%=cA$+CHR$0:ENDPROC: 9610DEFFNHA(!r%,r%!4,r%!8,r%!12,r%!16,r%!20,dA$,V%):LOCALI%:IF(LENdA$>11)OR((r%!20AND&100)<>0)THEN 9640r%!20=r%!20OR&100:r%!24=FNLA(dA$,jB%,pB%):IF(r%!20AND2)=2THEN 9670r%!28=V%: 9680ELSE:r%!28=-1: 9700ENDIF 9710r%!32=LENdA$+1: 9720ELSE:$(r%+24)=dA$: 9740ENDIF 9750SYS&400C2,,r%TOI%:=I%: 9840DEFFNLA(jA$,B%,RETURNP%):LOCALQ%:Q%=B%+P%:$Q%=jA$:P%+=LENjA$+1:=Q%: 9980DEFFNMA:LOCALI%,L%,N%,P%,Q%,gC%,kA$,jA$:READN%,jA$:L%=LENjA$+1:Q%=ZB%+JC%:JC%+=28+24*N%:gC%=Q%:IFJC%>kB%THEN 10060ERROR0,"Menu buffer exceeded at '"+jA$+"'" 10070ENDIF 10080IFjA$=""THEN 10090Q%!0=0:Q%!4=0:Q%!8=0: 10120ELSE:$Q%=LEFT$(jA$,11): 10140ENDIF 10150Q%?12=sB%:Q%?13=dB%:Q%?14=6:Q%?15=0:Q%!20=40:Q%!24=0:Q%+=28:FORI%=1TON%:READkA$:PROC`A(kA$,L%,I%=N%):NEXT:gC%!16=(L%+1)*16:=gC%: 10310DEFPROCXA(oB%,N%,AA$()):LOCALI%,L%,P%,Q%,kA$,jA$:jA$="Files:":L%=LENjA$+1:Q%=oB%:$Q%=LEFT$(jA$,11):Q%?12=sB%:Q%?13=dB%:Q%?14=6:Q%?15=0:Q%!20=40:Q%!24=0:Q%+=28:FORI%=0TON%-1:kA$="....0{//"+AA$(I%)+"}":PROC`A(kA$,L%,I%=(N%-1)):NEXT:oB%!16=(L%+1)*16:ENDPROC: 10510DEFPROC`A(kA$,RETURNL%,uB%):LOCALF%,P%,R%,gA$,jA$,iA$:LOCALYB%,XB%,bB%,iB%,bC%:uB%=uB%AND&80:YB%=(MID$(kA$,1,1)="*")AND1:XB%=(MID$(kA$,2,1)="*")AND2:bB%=(MID$(kA$,3,1)="*")AND8:iB%=(MID$(kA$,4,1)="*")AND(1<<22):bC%=VALMID$(kA$,5,1):kA$=MID$(kA$,7,LENkA$-7):P%=INSTR(kA$,"/"):R%=INSTR(kA$,"/",P%+1) 10680gA$=MID$(kA$,1,P%-1):jA$=MID$(kA$,P%+1,R%-P%-1):iA$=MID$(kA$,R%+1):IFL%<LENiA$THEN 10720L%=LENiA$: 10730ENDIF 10740Q%!0=YB%ORXB%ORbB%ORuB%:Q%!4=-1:Q%!8=&06003011ORiB%:CASEbC%OF 10780WHEN0:PROCAB(iA$): 10820WHEN1:PROCAB(iA$):Q%!4=EVALgA$: 10860WHEN2:PROCVA(gA$,jA$,iA$): 10890WHEN3:PROCAB(iA$):Q%!4=EVALgA$: 10930OTHERWISE:ERROR1,"Unknown menu item type" 10950ENDCASE:Q%+=24:ENDPROC: 11020DEFPROCAB(iA$):IFLENiA$>11ORiA$="!!!"THEN 11040Q%!8=Q%!8OR&100:Q%!12=FNLA(iA$,jB%,pB%):E%=(E%+4)AND&FFFFFFFC:Q%!16=-1:Q%!20=LENiA$+1: 11090ELSE:$(Q%+12)=iA$+CHR$0: 11110ENDIF 11120ENDPROC: 11160DEFPROCVA(gA$,jA$,iA$):Q%!0=Q%!0OR4:Q%!16=-1:IFL%<12THEN 11200L%=12: 11210ENDIF 11220Q%!8=Q%!8OR(1<<8)OR(15<<12):Q%!12=EVALjA$:Q%!16=-1:Q%!20=EVALgA$:IFiA$>""THEN 11270Q%!16=FNLA(iA$,ZB%,JC%): 11280ENDIF 11290ENDPROC: 11330DEFPROCEA(M%,O%,W%,B%):M%+=W%+28+O%*24:!M%=!M%EOR(1<<B%):ENDPROC: 11400DEFFNAA(M%,O%,W%,B%):M%+=W%+28+O%*24:=(!M%AND(1<<B%))<>0: 11460DEFPROCEB(M%,O%,W%,B%):M%+=W%+28+O%*24:!M%=!M%OR(1<<B%):ENDPROC: 11530DEFPROCDB(M%,O%,W%,B%):M%+=W%+28+O%*24:!M%=!M%ANDNOT(1<<B%):ENDPROC: 11600DEFPROCJA(M%,O%,W%,B%,V%):M%+=W%+28+O%*24:!M%=(!M%ANDNOT(1<<B%))OR(V%<<B%):ENDPROC: 11670DEFPROCwA(RETURNaC%,NC%):DIMaC% NC%:?aC%=0:ENDPROC: 11740DEFFNNA(aC%):LOCALdA$:dA$="":c%=?aC%:WHILEc%>=32:dA$+=CHR$c%:aC%+=1:c%=?aC%:ENDWHILE:=dA$: 11870DEFFNJA(RETURNX%,RETURNY%):SYS&400CF,,eC%:X%=eC%!0:Y%=eC%!4:=eC%!8: 11950DEFPROCyA(H%):SYS&400D1,H%,0,-1024,1280,0:ENDPROC: 12010DEFPROCxA:SYS&406C2:SYS&400DD,TB%,&4B534154:ENDPROC: 12080DEFPROCzA:CLOSE#0:!CC%=ERR:$(CC%+4)=REPORT$+CHR$0:SYS&400DF,CC%,1,LA$:SYS&400D0,,-1:ENDPROC: 12190DEFPROCGA(RETURNfC%,aC%,EA$):PROC_A(aC%,EA$):!gC%=fC%:SYS&400CC,,gC%:gC%!76=aC%:gC%!80=-1:gC%!84=128:gC%!60=gC%!60OR(1<<8)OR1:SYS&400C3,,gC%:SYS&400C1,,gC%+4TOfC%:!gC%=fC%:SYS&400C5,,gC%:ENDPROC: 12350DEFPROCBA(RETURNfC%,F%):!gC%=fC%:SYS&400CC,,gC%:gC%!32=gC%!32ORF%:SYS&400C3,,gC%:SYS&400C1,,gC%+4TOfC%:!gC%=fC%:SYS&400C5,,gC%:ENDPROC: 12470DEFPROCHA(RETURNfC%,F%):!gC%=fC%:SYS&400CC,,gC%:gC%!32=gC%!32ANDNOTF%:SYS&400C3,,gC%:SYS&400C1,,gC%+4TOfC%:!gC%=fC%:SYS&400C5,,gC%:ENDPROC: 12590DEFFNBA(fC%,QB%):!gC%=fC%:SYS&400CC,,gC%:=gC%!QB%: 12660DEFPROCDA(DA$):SA$=DA$:PROCrA(UC%,300,800,400,300,0,0,-1):PROCpA(UC%):PROCoA(UC%):VDU7:ENDPROC: 12760DEFPROCPA(bC%,aA$):`B%=bC%:SA$=aA$:PROCrA(WC%,300,800,640,304,0,0,-1):PROCpA(WC%):PROCoA(WC%):VDU7:ENDPROC: 12870DEFPROCFA(fC%,OC%,HC%):gC%!0=fC%:gC%!4=OC%:gC%!8=HC%:gC%!12=HC%:SYS&400CD,,gC%:PROCyA(fC%):ENDPROC: 12980DEFPROCAA(fC%,OC%,HC%):gC%!0=fC%:gC%!4=OC%:gC%!8=0:gC%!12=HC%:SYS&400CD,,gC%:PROCyA(fC%):ENDPROC: 13090DEFPROCoA(fC%):LOCALX%,Y%,RC%,QC%:!gC%=fC%:SYS&400CB,,gC%:X%=gC%!4:Y%=gC%!8:RC%=gC%!12-X%:QC%=gC%!16-Y%:MOUSETO(X%+(RC%>>1)),(Y%+(QC%>>1)):ENDPROC: 13220DEFPROCpA(fC%):LOCALX%,Y%,RC%,QC%:!gC%=fC%:SYS&400CB,,gC%:X%=gC%!4:Y%=gC%!8:RC%=gC%!12-X%:QC%=gC%!16-Y%:MOUSERECTANGLEX%,Y%,RC%,QC%:ENDPROC: 13350DEFPROCvA:MOUSERECTANGLE0,0,1280,1024:ENDPROC: 13410DEFPROCIA(fC%):LOCALcB%,qB%,rB%,hB%:!gC%=fC%:SYS&400CB,,gC%:cB%=gC%!4:qB%=gC%!8:rB%=gC%!12:hB%=gC%!16:VDU24,cB%;qB%;rB%;hB%;:ENDPROC: 13540DEFPROCCA(fC%,RETURNX%,RETURNY%):!gC%=fC%:SYS&400CB,,gC%:X%=gC%!4:Y%=gC%!16:ENDPROC: 13630DEFFNIA(XA$):LOCALzB%,gA$:SYS&20023,XA$,eC%,&200,0,3TO,,zB%:IFzB%=0THEN 13670gA$="": 13680ELSE:gA$=LEFT$(FNNA(eC%),zB%): 13700ENDIF 13710=gA$: 13750DEFPROCKA(XA$,NA$):SYS&20024,XA$,NA$,LENNA$,0,2:ENDPROC: 13810DEFPROCOA(X%,Y%,cA$,W%,aA%,UB%):LOCALyB%,gB%,VC%,PC%,c%,GC%:eC%!0=164:eC%!4=4:eC%!8=165:eC%!12=5:eC%!16=-1:SYS&31,eC%,eC%:yB%=eC%!0<<eC%!4:gB%=eC%!8<<eC%!12:SYS&400E6,aA%:WHILEcA$<>"":VC%=1:PC%=1:REPEAT:c%=ASCMID$(cA$,PC%,1):PC%+=1:IF((c%=ASC(" "))OR(c%=-1))THEN 13990VC%=PC%-2:IF(VC%<=0)THEN 14010VC%=1: 14020ENDIF 14030ENDIF 14040UNTIL((PC%>=W%)OR(c%=-1)):GC%=VC%:CASEUB%OF 14070WHENUA%:MOVEX%,Y%: 14090WHENfB%:MOVEX%+(((W%-GC%)/2)*yB%),Y%: 14110WHENJB%:MOVEX%+((W%-GC%)*yB%),Y%: 14130ENDCASE:SYS&46,cA$,GC%:Y%-=gB%:IF(c%=-1)THEN 14170cA$="": 14180ELSE:cA$=MID$(cA$,VC%+2): 14200ENDIF 14210ENDWHILE:ENDPROC: 14260DEFFNPA(mA$):=ZA$+"."+mA$: 14310DEFFNDA(aA$):LOCALKA$,p%:REPEAT:KA$=aA$:p%=INSTR(aA$,"."):aA$=MID$(aA$,p%+1):UNTILp%=0:=KA$: 14420DEFFNEA(HA$):?eC%=3:SYS&7,14,eC%:SYS&C1,eC%,eC%+8,&180,HA$:=FNNA(eC%+8): 14500DEFFNFA(PA$):LOCALI%,L%:eC%?1=13:L%=LEN(PA$):FORI%=1TOL%:eC%?I%=ASC(MID$(PA$,I%,1))EOR77:NEXT:eC%?(L%+1)=13:=$(eC%+1): 14620DEFFNKA(DC%,NC%):LOCALLC%,F%,hA$:SYS&5C,DC%TO,LC%:IFLC%<NC%THEN 14660SYS&2002A,DC%,NC%-LC%TO;F%:IF(F%AND1)THEN 14680CASEDC%OF 14690WHEN0:hA$="System Heap": 14700WHEN1:hA$="RMA": 14710WHEN2:hA$="Screen Size": 14720WHEN3:hA$="Sprite Size": 14730WHEN4:hA$="Font Cache": 14740WHEN5:hA$="RAM Filing System": 14750OTHERWISE:hA$="Unknown Area": 14760ENDCASE:ERROR1,"Can't set "+hA$+" to required amount ("+STR$(NC%DIV1024)+"K is needed)" 14780ENDIF 14790ENDIF 14800=LC%: 14840DEFPROCMA:VDU23,154,255,128,191,160,160,160,160,160,23,159,255,0,255,0,0,0,0,0:VDU23,158,255,1,253,5,5,5,5,5,23,155,160,160,160,160,160,160,160,160:VDU23,157,5,5,5,5,5,5,5,5,23,156,160,160,160,160,160,191,128,255 14880VDU23,160,0,0,0,0,0,255,0,255,23,161,5,5,5,5,5,253,1,255:VDU23,162,0,0,0,255,255,0,0,0,23,164,24,24,24,24,24,24,24,24:VDU23,165,255,128,128,128,128,128,128,128,23,166,255,127,127,127,127,127,127,127 14910VDU23,167,255,254,242,242,242,242,242,254,23,168,192,32,16,8,4,2,1,1:VDU23,169,128,128,128,191,191,191,191,191,23,170,0,0,0,255,255,255,255,255:VDU23,171,1,1,1,253,253,253,253,253,23,172,164,170,174,174,174,191,128,255 14940VDU23,173,136,171,136,174,168,255,0,255,23,174,136,219,216,219,216,255,0,255:VDU23,175,133,181,133,173,181,253,1,255,23,176,255,0,1,1,1,1,1,0:VDU23,177,255,0,128,128,128,128,128,0,23,178,255,1,1,1,1,1,1,1 14970VDU23,179,128,128,128,128,128,128,128,128,23,180,24,24,1,3,7,15,15,7:VDU23,181,0,0,128,192,224,240,240,224,23,182,1,1,1,1,1,1,1,1:VDU23,183,128,128,128,128,128,128,128,255,23,184,3,1,0,0,0,0,0,255:VDU23,185,192,128,0,0,0,0,0,255,23,186,1,1,1,1,1,1,1,255 15010VDU23,187,0,0,0,3,4,8,16,32,23,188,0,0,0,255,0,0,0,0:VDU23,189,0,0,0,192,32,16,8,4,23,190,64,128,255,128,191,128,191,128:VDU23,191,0,0,255,0,254,0,254,0,23,192,0,0,255,0,0,0,0,0:VDU23,193,2,1,255,1,1,1,1,1,23,194,191,128,191,128,128,128,128,255 15050VDU23,195,254,0,254,0,0,0,0,255,23,196,0,0,0,0,0,0,0,255:VDU23,197,1,37,37,61,37,37,1,255,23,198,191,191,191,191,191,191,128,255:VDU23,199,255,255,255,255,255,255,0,255,23,200,253,253,253,253,253,253,1,255 15080VDU23,201,170,85,170,85,170,85,170,85,23,202,255,128,132,140,140,132,128,255:VDU23,203,255,1,17,49,49,17,1,255,23,204,255,128,132,134,134,132,128,255:VDU23,205,255,1,33,49,49,33,1,255,23,206,255,128,135,135,135,135,128,255 15110VDU23,207,255,1,225,225,225,225,1,255,23,208,255,128,128,131,131,128,128,255:VDU23,209,255,1,193,193,193,193,1,255,23,210,255,128,129,131,135,143,128,255:VDU23,211,255,1,129,193,225,241,1,255,23,212,255,128,131,131,131,131,128,255 15140VDU23,213,255,1,1,193,193,1,1,255,23,214,255,128,136,139,139,136,128,255:VDU23,215,255,1,17,209,209,17,1,255,23,216,63,32,32,32,32,255,255,255:VDU23,217,240,16,16,16,16,252,255,252,23,218,15,11,11,8,8,8,8,15 15170VDU23,219,224,176,144,16,16,16,16,240,23,220,120,72,72,72,120,80,72,68:VDU23,221,112,120,76,68,68,76,120,112,23,222,0,4,4,244,148,244,132,247:VDU23,223,240,224,224,144,8,4,2,1,23,224,0,0,0,255,0,0,0,0 15200VDU23,226,255,1,1,33,97,255,96,32,23,227,0,0,0,255,0,0,0,0:VDU23,129,170,85,170,85,170,85,170,85,23,228,255,255,0,0,0,0,0,0:VDU23,229,0,0,0,0,0,0,255,255,23,240,24,24,24,24,24,24,24,24:VDU23,241,0,0,0,255,0,0,0,0,23,134,0,0,255,126,60,24,0,0 15240VDU23,135,0,0,0,24,24,0,0,0,23,245,255,255,255,129,255,255,255,255:VDU23,244,255,255,231,195,195,231,255,255,23,246,255,129,255,255,255,255,255,255:VDU23,247,255,255,255,255,255,255,129,255,23,248,255,129,129,129,129,129,129,255 15270VDU23,249,255,195,195,195,195,195,195,255,23,250,255,243,227,195,195,227,243,255:VDU23,252,128,192,224,240,240,224,192,128,23,230,0,0,255,0,0,255,0,0:VDU23,231,36,36,36,36,36,36,36,36,23,232,36,36,231,0,0,231,36,36 15300VDU23,233,255,0,231,36,36,36,36,36,23,234,36,36,36,36,36,231,0,255:VDU23,235,160,160,191,128,128,191,160,160,23,236,5,5,253,1,1,253,5,5:VDU23,237,0,1,1,2,130,36,20,8,23,238,0,130,68,40,16,40,68,130 15330VDU23,253,128,128,128,128,128,128,128,255,23,251,24,24,60,24,24,0,60,0:VDU23,255,0,0,0,0,0,0,0,255,23,202,255,128,128,128,128,128,128,129:VDU23,203,255,0,0,24,24,126,126,255,23,204,255,1,1,1,1,1,1,129 15360VDU23,205,129,135,135,159,159,128,128,255,23,206,255,255,255,255,255,0,0,255:VDU23,207,129,225,225,249,249,1,1,255,23,208,255,128,128,158,159,159,159,159:VDU23,209,255,0,0,0,224,254,255,255,23,210,255,1,1,1,1,1,225,249 15390VDU23,211,159,159,159,159,158,128,128,255,23,212,255,255,254,224,0,0,0,255:VDU23,213,249,225,1,1,1,1,1,255,23,214,255,128,128,128,128,128,135,159:VDU23,215,255,0,0,0,7,127,255,255,23,216,255,1,1,121,249,249,249,249 15420VDU23,217,159,135,128,128,128,128,128,255,23,224,255,255,127,7,0,0,0,255,255:VDU23,225,249,249,249,249,121,1,1,255,23,226,255,128,128,135,132,133,132,133:VDU23,227,255,0,0,255,0,2,0,2,23,228,255,1,1,129,129,129,129,129 15450VDU23,229,132,159,159,159,159,128,128,255,23,230,0,255,255,255,255,0,0,255:VDU23,162,129,225,249,249,225,1,1,255,23,232,255,128,128,129,129,131,131,135:VDU23,218,255,0,0,192,192,224,224,240,23,234,255,1,1,121,69,133,5,9 15480VDU23,235,135,143,143,159,159,128,128,255,23,236,240,248,248,252,252,0,0,255:VDU23,237,17,17,17,1,17,1,1,255,23,238,255,128,128,128,143,143,143,143:VDU23,239,255,0,0,0,255,255,255,255,23,240,255,1,1,1,241,241,241,241 15510VDU23,242,143,143,143,143,128,128,128,255,23,243,255,255,255,255,0,0,0,255:VDU23,254,241,241,241,241,1,1,1,255,23,130,254,130,130,130,130,130,254,0:VDU23,131,254,130,186,186,186,130,254,0,23,133,254,198,170,146,170,198,254,0 15540VDU23,255,255,255,255,255,255,255,255,255:ENDPROC:
8� DataVision Copyright (C) 1992 Silicon Vision Ltd. �eA:�cA:��zA:�xA:� ��UA:�mA:�RA:�LA:��zA �mA$=�GA:�mA$<>""� " �BB(mA$): ,� 6�:�aA:�MC%:�xA:�: �)��aA:�X%,Y%:ș&400C7,1,gC%�TA%:ȎTA%� �#�bA%:X%=gC%!4:Y%=gC%!16:Ȏ!gC%� :ș&400C5,,gC%: 0�: D�FB%:�nA(!gC%): b�mA%:Ȏ!gC%� v:ș&400C6,,gC%: ��: �4�LB%:�QA(!gC%,gC%!4,gC%!8,gC%!12,gC%!16,gC%!20): ��uA%:�kA(gC%): ��HB%,OB%:�WA(gC%): �:�: >���rA(fC%,x%,y%,vA%,kA%,MB%,`A%,hA%):!gC%=fC%:gC%!4=x%:gC%!8=y%-kA%:gC%!12=x%+vA%:gC%!16=y%:gC%!20=MB%:gC%!24=`A%:gC%!28=hA%:ș&400C5,,gC%:�: �'��uA(fC%):!gC%=fC%:ș&400C6,,gC%:�: 4��nA(fC%):�TC%:!gC%=fC%:ș&400C8,,gC%�TC%:ȎfC%� B�UC%,WC%:�SA(TC%): j�:�: �b��SA(TC%):�X%,Y%:X%=gC%!4+32:Y%=gC%!16-16:ȕTC%:�OA(X%,Y%,SA$,36,7,fB%):ș&400CA,,gC%�TC%:�:�: $��QA(HA%,FA%,b%,h%,i%,NA%):Ȏh%� (�XC%:�(b%�2)� F�sA(XC%,RA%): P� Z�UC%:�TA(b%,i%): ��WC%:�lA(b%,i%): ��:�: ���TA(b%,i%):Ȏi%� ��pA%:�vA:�uA(UC%): �:�: J"��lA(b%,i%):�vA:�uA(WC%):Ȏi%� r�XA%:Ȏ`B%� ��aB%:�CB:MC%=�: ��: ��wA%:Ȏ`B%� ��: �:�: :��kA(gC%):�X%,Y%:ȎAA� X �XC%:�gA: �:�1,"Unknown menu type" ��:�(�JA(X%,Y%)�1)=1� ��sA(qA%,cA%): �� ��: ��gA:�X%,I%,mA$:Ȏ!gC%� *�nA%:�GB("!dv2"): R�AB%:�lA$<>"*NONE*"� f�CB:�dC%<>-1� z&�DB(filelistmenu%,dC%,0,0):dC%=-1: �� �� ��BB%:�HB("!dv12"): ��tA%:�HB("!dv8"): ��SA%:�HB("!dv1"): �_A%:�HB("!dv13"): $�iA%:�HB("!dv3"): B�eA%:�HB("!dv11"): `�dA%:�HB("!dv14"): ~�ZA%:�HB("!dv10"): ��IB%:�HB("!dv9"): ��gA%:�GB("!dv5"): ��rA%:�GB("!dv15"): ��xA%:�HB("!dv4"): �VB%:�GB("!dvPort"): 2�WA%:ȎgC%!4� F�WB%:�lA$<>"*NONE*"� dX%=�OA:�cC%>=20� x5�#X%:�1,"File list is full (Maximum of 20 files)" �� �&�#X%:�FB:�I%=0�cC%-1:�CA$(I%)=lA$� �/�1,"File '"+lA$+"' is already in file list" �� Ҩ�:X%=�OA:cC%+=1:�#X%=(cC%-1)*17+4:�#X%,lA$:�#X%=(cC%-1)*17+15:�#X%,fA$:�#X%=(cC%-1)*17+18:�#X%,eA$:�#X%=0:�#X%,�(cC%):�#X%:�FB:dC%=cC%-1:�EB(filelistmenu%,dC%,0,0): h� r�RB%:I%=gC%!8:�I%<>-1� �X%=�OA:�cC%=0� � �#X%:�1,"File list is empty" �� ��JA$=lA$:IA$=fA$:MA$=eA$:�#X%=(cC%-1)*17+4:�#X%,lA$:�#X%=(cC%-1)*17+15:�#X%,fA$:�#X%=(cC%-1)*17+18:�#X%,eA$:�#X%=I%*17+4:�#X%,lA$:�#X%=I%*17+15:�#X%,fA$:�#X%=I%*17+18:�#X%,eA$:cC%-=1:�#X%=0:�#X%,�(cC%):lA$=JA$:fA$=IA$:eA$=MA$:�#X% ��(I%=dC%)� �dC%=-1:�CB: �� ��FB:�(dC%<>-1)� ��(dC%=cC%)� �dC%=I%: �� �EB(filelistmenu%,dC%,0,0): � � �: >"�lB%:�BB(�NA(menu_filename%)): \�jA%:I%=gC%!4:�I%<>-1� z �dC%<>-1� ��DB(filelistmenu%,dC%,0,0): �� �pdC%=I%:�EB(filelistmenu%,dC%,0,0):X%=�OA:�#X%=I%*17+15:�#X%,fA$:�#X%=I%*17+18:�#X%,eA$:lA$=CA$(I%):�#X%:�tA: �� �VA%:�(lA$<>"*NONE*")� $9�PA(aB%,"DataVision: Quit and close current files?"): .�:MC%=�: B� L�:�: �3��BB(mA$):�I%:mA$=�DA(mA$):�(mA$="")�(�mA$>10)� ��1,"Illegal Filename" �� ��(dC%<>-1)� ��DB(filelistmenu%,dC%,0,0): �� �:I%=0:ȕ(I%<cC%)�(CA$(I%)<>mA$):I%+=1:�:�(CA$(I%)=mA$)� &dC%=I%:�EB(filelistmenu%,dC%,0,0): 2 �:dC%=-1: F� PlA$=mA$:�tA:�: �e��CB:�X%:�"CLOSE":X%=�(�PA("NIM")):�#X%,"*NONE*","0",WA$,"0",YA$,VA$:�#X%:lA$="*NONE*":fA$="0":�: ���GB(mA$):�nB%,tB%,_B%,BA$(),I%,key$:�BA$(12):�fA(lA$):�MA:ș&6,229,0,0�,nB%:tB%=�:_B%=�KA(2,160*1024):�"Dir <DataVision$Dir>":�+0:�I%=1�12:BA$(I%)=�IA("key$"+�I%):�key$:�"Key "+�I%+" "+key$:�:ș&400DE,"Run "+mA$:ș&6,229,nB%,0:ș&6,124 �R�I%=1�12:�"Key "+�I%+" "+BA$(I%):�:�"FX 20":�20:ș&400E3,tB%:_B%=�KA(2,_B%):�: 0.� "*Dir <DataVision$Dir>.Accs|MRUN invo|M" :0� "*Dir <DataVision$Dir>.Accs|MRUN credit|M" D-� "*Dir <DataVision$Dir>.Accs|MRUN sle|M" N2� "*Dir <DataVision$Dir>.Accs|MRUN custlist|M" X-� "*Dir <DataVision$Dir>.Accs|MRUN cad|M" b-� "*Dir <DataVision$Dir>.Accs|MRUN pfr|M" l-� "*Dir <DataVision$Dir>.Accs|MRUN rsr|M" v-� "*Dir <DataVision$Dir>.Accs|MRUN msr|M" �.� "*Dir <DataVision$Dir>.Accs|MRUN masr|M" �-� "*Dir <DataVision$Dir>.Accs|MRUN ple|M" �2� "*Dir <DataVision$Dir>.Accs|MRUN supplist|M" �� "QUIT|M" ���HB(mA$):�lA$<>"*NONE*"� � �GB(mA$): ��:�1,"No File open" �� �: *|��tA:�H%,M%,X%:H%=(��360000)�60:M%=(��6000)�60:YA$=�(H%)+":"+�(M%):X%=�(�PA("NIM")):�#X%,lA$,fA$,WA$,eA$,YA$,VA$:�#X%:�: ����eA:�+0:�LA$,BA$,ZA$,FA$:lA%=&DB5:AA$=ZA$:�gC%&400,CC% 256,eC%&200:ș&400C0,200,&4B534154,LA$�BA%,TB%:XC%=-2:CB%=-1:MA%=-2:FB%=1:bA%=2:mA%=3:JA%=4:IA%=5:LB%=6:KA%=7:OA%=8:uA%=9:CA%=10:HB%=17:OB%=18:YA%=1024:KB%=0:oA%=3:GA%=4 �)GB%=8:zA%=&400C0:UA%=0:fB%=1:JB%=2:�: ?� "DataVision" : REM Application name G� "DataVision" : REM Icon bar version of name (=� "<DataVision$Dir>" : REM Directory name 2?� "!DataVis" : REM Icon Sprite name <`��cA:�bA$:�mB% 256:ș&10�bA$:$mB%=�bA$,�bA$,"!RunImage")+10):YC%=mB%:ȕ(?YC%=32):YC%+=1:�:�: �dݤGA:�bA$,c%:bA$="":c%=?YC%:ȕ(c%>32):bA$+=�c%:YC%+=1:c%=?YC%:�:ȕ(c%=32):YC%+=1:c%=?YC%:�:=bA$: ����RA:�EC%:ș&406C0:GA$="1.3":sB%=6:dB%=2:$�CA(infoW%,DB%)=GA$:`B%=0:aB%=0:EA%=0:dC%=-1:�CA$(80),filelistmenu%&400:�YA:�FB:SB%=99:OA$="":�+0:�EC%:ȕEC%<>-1:OA$+=�(EC%):�EC%:�:MC%=0:ș&406C1 �� ��� 0,44,53,36,32,56,32,109,43,36,33,40,109,62,36,55,40,109,40,53,46,40,40,41,40,41,109,43,34,63,109,41,40,32,34,109,59,40,63,62,36,34,35,-1 �m��YA:�X%:lA$="*NONE*":fA$="0":WA$=�EA("%dy/%mn/%yr"):eA$="0":YA$="23:59":VA$="0":X%=�(�PA("NIM2")):�X%=0� 4X%=�(�PA("NIM2")):�#X%,"0": H� R>�#X%:X%=�(�PA("NIM")):�#X%,lA$,fA$,WA$,eA$,YA$,VA$:�#X%:�: ���jA:�1,�FA(OA$) ��: �S��UA:�r%&100,jB%&200:pB%=0:ș&400EA�,B%:eB%=�HA(CB%,0,0,96,120,&2102,FA$,B%):�: ���LA:�� �r�+0:�wA(menu_filename%,64):�wA(menu_val%,16):kB%=&2000:fA%=256:�ZB% kB%,NB% fA%:JC%=0:NB%?0=13::filemenu%=�MA: Z� 1,"Filename" d� ....2{64/menu_filename%/} nPA%=�MA: �� 1,"Value" �� ....2{16/menu_val%/} �toolsmenu%=�MA: �� 2,"FileTools" �� ....0{//Add File} �'� ....1{filelistmenu%//Remove File} �%WB%=0:RB%=1:sA%=20:PB%=6:RA%=�MA: � 20,"DataVision" � .*..3{infoW%//Info} � ....0{//Create} "� ....0{//Close File} ,� ....0{//Alter Form} 6� .*..0{//Relations} @� ....0{//Add} J� ....0{//Modify} T� ....0{//Delete} ^� .*..0{//Sort} h� ....0{//Browse} r� ....0{//Queries} |� ....0{//Reports} �� .*..0{//WordProcess} �"� ....1{toolsmenu%//FileTools} �� ....0{//ReportWriter} �� ....0{//Macros} �� .*..0{//Import/Export} �$� ....1{filelistmenu%//FileList} � � .**.1{filemenu%//FileName} �� ....0{//Quit} ֈQA%=0:nA%=1:AB%=2:BB%=3:tA%=4:SA%=5:_A%=6:iA%=7:eA%=8:dA%=9:ZA%=10:IB%=11:gA%=12:WA%=13:rA%=14:xA%=15:VB%=16:jA%=17:lB%=18:VA%=19:�: ���mA:�SC%,wB%,BC%,AC%,UA$:wB%=&C00:�BC% wB%:AC%=BC%:SC%=0:ș&400D9,,ZA$+".!Templates":�:$eC%="*"+�0:ș&400DB,,gC%,AC%,BC%+wB%,-1,eC%,SC%�,,AC%,,,,SC%:�SC%<>0� RUA$=�NA(eC%):ȎUA$� f!�"Info":ș&400C1,,gC%�infoW%: �"�"Dialogue":ș&400C1,,gC%�UC%: �!�"Confirm":ș&400C1,,gC%�WC%: �+:�1,"Unknown template '"+UA$+"' found" ��: �� �/�SC%=0:ș&400DA::DB%=4:pA%=1:XA%=1:wA%=2:�: ���NA(FC%):�FC%>(SB%*YA%)� ��jA: �� ��: �H��sA(bC%,M%):�X%,Y%,Z%:Z%=�JA(X%,Y%):qA%=bC%:cA%=M%:AA=bC%:�bC%=XC%� Y%=(sA%+PB%)*32+160:X%-=64: 2� <ș&400D4,,M%,X%-60,Y%+32:�: n��WA(gC%):ȎgC%!16� ��KB%:MC%=�: � �oA%:�bA: � �GB%:�dA: ��&502:�iA: �zA%:�ZA: "�:�: T@��bA:�bC%,mA$,xB%:xB%=0:mA$=�NA(gC%+44):bC%=gC%!40:ȎgC%!20� ��XC%:�gC%!24=eB%� � xB%=�: �� ��:�xB%� ��(bC%=lA%)� �&gC%!16=4:ș&400E7,17,gC%:�BB(mA$): <�:�1,"Can't load file '"+mA$+"' (Unrecognised Filetype)" � &� 0�: X��dA:磌 l!gC%!12=gC%!8:ș&400E7,19,gC%: �� ��: �7��iA:gC%!12=gC%!8:gC%!16+=1:IC%=gC%+20:�gC%!36=eB%� �r�qA("This is the icon for DataVision, the Relational Database"):�qA("Copyright (C) 1990 Silicon Vision Ltd."): �� !7?IC%=0:!gC%=(IC%+4-gC%)��3:ș&400E7,17,gC%,gC%!4:�: !H*��qA(hA$):$IC%=hA$+"|M":IC%+=�hA$+2:�: !�;��fA(mA$):�FC%,QA$,x%,RA$,bC%:x%=�(�PA(mA$+"N")):�x%=0� !��: !�� !�C�#x%,QA$:RA$=ZA$+QA$+"."+mA$:�#x%:ș&8,5,RA$�bC%,,,,FC%:�bC%=1� !� �NA(FC%): "� "�: "L��ZA:ȎAA� "`�XC%:�hA(gC%+32): "�6:�1,"Internal error: Unknown Menu warning issued" "�'�:ș&400E8,,gC%!20,gC%!24,gC%!28:�: "���hA(EB%):Ȏ!EB%� "��lB%:�lA$="*NONE*"� #�_A(menu_filename%,""): #�:�_A(menu_filename%,lA$): #2� #<6:�1,"Internal error: Unknown Menu warning issued" #Z�:�: #�#��FB:�I%,KC%,N%:KC%=�OA:�cC%=0� #�N%=1:CA$(0)="<No files>": #�S�:N%=cC%:JA$=lA$:IA$=fA$:MA$=eA$:�I%=1�cC%:�#KC%=(I%-1)*17+4:�#KC%,CA$(I%-1):�: $,� $6(�XA(filelistmenu%,N%,CA$()):�#KC%:�: $r7ݤOA:�C%:C%=�(�PA("NIM2")):�#C%,CA$:cC%=�(CA$):=C%: $�<ݤCA(fC%,OC%):gC%!0=fC%:gC%!4=OC%:ș&400CE,,gC%:=gC%!28: % ��_A(aC%,cA$):$aC%=cA$+�0:�: %�RݤHA(!r%,r%!4,r%!8,r%!12,r%!16,r%!20,dA$,V%):�I%:�(�dA$>11)�((r%!20�&100)<>0)� %�9r%!20=r%!20�&100:r%!24=�LA(dA$,jB%,pB%):�(r%!20�2)=2� %� r%!28=V%: %��:r%!28=-1: %�� %�r%!32=�dA$+1: %��:$(r%+24)=dA$: &� &ș&400C2,,r%�I%:=I%: &p9ݤLA(jA$,B%,�P%):�Q%:Q%=B%+P%:$Q%=jA$:P%+=�jA$+1:=Q%: &�`ݤMA:�I%,L%,N%,P%,Q%,gC%,kA$,jA$:�N%,jA$:L%=�jA$+1:Q%=ZB%+JC%:JC%+=28+24*N%:gC%=Q%:�JC%>kB%� 'L*�0,"Menu buffer exceeded at '"+jA$+"'" 'V� '`�jA$=""� 'jQ%!0=0:Q%!4=0:Q%!8=0: '��:$Q%=�jA$,11): '�� '�xQ%?12=sB%:Q%?13=dB%:Q%?14=6:Q%?15=0:Q%!20=40:Q%!24=0:Q%+=28:�I%=1�N%:�kA$:�`A(kA$,L%,I%=N%):�:gC%!16=(L%+1)*16:=gC%: (F���XA(oB%,N%,AA$()):�I%,L%,P%,Q%,kA$,jA$:jA$="Files:":L%=�jA$+1:Q%=oB%:$Q%=�jA$,11):Q%?12=sB%:Q%?13=dB%:Q%?14=6:Q%?15=0:Q%!20=40:Q%!24=0:Q%+=28:�I%=0�N%-1:kA$="....0{//"+AA$(I%)+"}":�`A(kA$,L%,I%=(N%-1)):�:oB%!16=(L%+1)*16:�: )���`A(kA$,�L%,uB%):�F%,P%,R%,gA$,jA$,iA$:�YB%,XB%,bB%,iB%,bC%:uB%=uB%�&80:YB%=(�kA$,1,1)="*")�1:XB%=(�kA$,2,1)="*")�2:bB%=(�kA$,3,1)="*")�8:iB%=(�kA$,4,1)="*")�(1<<22):bC%=��kA$,5,1):kA$=�kA$,7,�kA$-7):P%=�kA$,"/"):R%=�kA$,"/",P%+1) )�DgA$=�kA$,1,P%-1):jA$=�kA$,P%+1,R%-P%-1):iA$=�kA$,R%+1):�L%<�iA$� )�L%=�iA$: )�� )�:Q%!0=YB%�XB%�bB%�uB%:Q%!4=-1:Q%!8=&06003011�iB%:ȎbC%� *�0:�AB(iA$): *D�1:�AB(iA$):Q%!4=�gA$: *l�2:�VA(gA$,jA$,iA$): *��3:�AB(iA$):Q%!4=�gA$: *�!:�1,"Unknown menu item type" *��:Q%+=24:�: +!��AB(iA$):�iA$>11�iA$="!!!"� + TQ%!8=Q%!8�&100:Q%!12=�LA(iA$,jB%,pB%):E%=(E%+4)�&FFFFFFFC:Q%!16=-1:Q%!20=�iA$+1: +R�:$(Q%+12)=iA$+�0: +f� +p�: +�2��VA(gA$,jA$,iA$):Q%!0=Q%!0�4:Q%!16=-1:�L%<12� +� L%=12: +�� +�EQ%!8=Q%!8�(1<<8)�(15<<12):Q%!12=�jA$:Q%!16=-1:Q%!20=�gA$:�iA$>""� ,Q%!16=�LA(iA$,ZB%,JC%): ,� ,�: ,B8��EA(M%,O%,W%,B%):M%+=W%+28+O%*24:!M%=!M%�(1<<B%):�: ,�8ݤAA(M%,O%,W%,B%):M%+=W%+28+O%*24:=(!M%�(1<<B%))<>0: ,�8��EB(M%,O%,W%,B%):M%+=W%+28+O%*24:!M%=!M%�(1<<B%):�: - 9��DB(M%,O%,W%,B%):M%+=W%+28+O%*24:!M%=!M%��(1<<B%):�: -PG��JA(M%,O%,W%,B%,V%):M%+=W%+28+O%*24:!M%=(!M%��(1<<B%))�(V%<<B%):�: -�%��wA(�aC%,NC%):�aC% NC%:?aC%=0:�: -�JݤNA(aC%):�dA$:dA$="":c%=?aC%:ȕc%>=32:dA$+=�c%:aC%+=1:c%=?aC%:�:=dA$: .^9ݤJA(�X%,�Y%):ș&400CF,,eC%:X%=eC%!0:Y%=eC%!4:=eC%!8: .�*��yA(H%):ș&400D1,H%,0,-1024,1280,0:�: .�+��xA:ș&406C2:ș&400DD,TB%,&4B534154:�: /0E��zA:�#0:!CC%=�:$(CC%+4)=�$+�0:ș&400DF,CC%,1,LA$:ș&400D0,,-1:�: /����GA(�fC%,aC%,EA$):�_A(aC%,EA$):!gC%=fC%:ș&400CC,,gC%:gC%!76=aC%:gC%!80=-1:gC%!84=128:gC%!60=gC%!60�(1<<8)�1:ș&400C3,,gC%:ș&400C1,,gC%+4�fC%:!gC%=fC%:ș&400C5,,gC%:�: 0>u��BA(�fC%,F%):!gC%=fC%:ș&400CC,,gC%:gC%!32=gC%!32�F%:ș&400C3,,gC%:ș&400C1,,gC%+4�fC%:!gC%=fC%:ș&400C5,,gC%:�: 0�v��HA(�fC%,F%):!gC%=fC%:ș&400CC,,gC%:gC%!32=gC%!32��F%:ș&400C3,,gC%:ș&400C1,,gC%+4�fC%:!gC%=fC%:ș&400C5,,gC%:�: 1.2ݤBA(fC%,QB%):!gC%=fC%:ș&400CC,,gC%:=gC%!QB%: 1tM��DA(DA$):SA$=DA$:�rA(UC%,300,800,400,300,0,0,-1):�pA(UC%):�oA(UC%):�7:�: 1�Y��PA(bC%,aA$):`B%=bC%:SA$=aA$:�rA(WC%,300,800,640,304,0,0,-1):�pA(WC%):�oA(WC%):�7:�: 2FX��FA(fC%,OC%,HC%):gC%!0=fC%:gC%!4=OC%:gC%!8=HC%:gC%!12=HC%:ș&400CD,,gC%:�yA(fC%):�: 2�V��AA(fC%,OC%,HC%):gC%!0=fC%:gC%!4=OC%:gC%!8=0:gC%!12=HC%:ș&400CD,,gC%:�yA(fC%):�: 3"���oA(fC%):�X%,Y%,RC%,QC%:!gC%=fC%:ș&400CB,,gC%:X%=gC%!4:Y%=gC%!8:RC%=gC%!12-X%:QC%=gC%!16-Y%:ȗ�(X%+(RC%>>1)),(Y%+(QC%>>1)):�: 3�v��pA(fC%):�X%,Y%,RC%,QC%:!gC%=fC%:ș&400CB,,gC%:X%=gC%!4:Y%=gC%!8:RC%=gC%!12-X%:QC%=gC%!16-Y%:ȗȓX%,Y%,RC%,QC%:�: 4&��vA:ȗȓ0,0,1280,1024:�: 4bw��IA(fC%):�cB%,qB%,rB%,hB%:!gC%=fC%:ș&400CB,,gC%:cB%=gC%!4:qB%=gC%!8:rB%=gC%!12:hB%=gC%!16:�24,cB%;qB%;rB%;hB%;:�: 4�B��CA(fC%,�X%,�Y%):!gC%=fC%:ș&400CB,,gC%:X%=gC%!4:Y%=gC%!16:�: 5>>ݤIA(XA$):�zB%,gA$:ș&20023,XA$,eC%,&200,0,3�,,zB%:�zB%=0� 5fgA$="": 5p�:gA$=��NA(eC%),zB%): 5�� 5� =gA$: 5�.��KA(XA$,NA$):ș&20024,XA$,NA$,�NA$,0,2:�: 5����OA(X%,Y%,cA$,W%,aA%,UB%):�yB%,gB%,VC%,PC%,c%,GC%:eC%!0=164:eC%!4=4:eC%!8=165:eC%!12=5:eC%!16=-1:ș&31,eC%,eC%:yB%=eC%!0<<eC%!4:gB%=eC%!8<<eC%!12:ș&400E6,aA%:ȕcA$<>"":VC%=1:PC%=1:�:c%=��cA$,PC%,1):PC%+=1:�((c%=�(" "))�(c%=-1))� 6�VC%=PC%-2:�(VC%<=0)� 6� VC%=1: 6�� 6�� 6�'�((PC%>=W%)�(c%=-1)):GC%=VC%:ȎUB%� 6��UA%:�X%,Y%: 7 #�fB%:�X%+(((W%-GC%)/2)*yB%),Y%: 7�JB%:�X%+((W%-GC%)*yB%),Y%: 72%�:ș&46,cA$,GC%:Y%-=gB%:�(c%=-1)� 7ZcA$="": 7d�:cA$=�cA$,VC%+2): 7x� 7��:�: 7�ݤPA(mA$):=ZA$+"."+mA$: 7�GݤDA(aA$):�KA$,p%:�:KA$=aA$:p%=�aA$,"."):aA$=�aA$,p%+1):�p%=0:=KA$: 8TFݤEA(HA$):?eC%=3:ș&7,14,eC%:ș&C1,eC%,eC%+8,&180,HA$:=�NA(eC%+8): 8�cݤFA(PA$):�I%,L%:eC%?1=13:L%=�(PA$):�I%=1�L%:eC%?I%=�(�PA$,I%,1))�77:�:eC%?(L%+1)=13:=$(eC%+1): 96ݤKA(DC%,NC%):�LC%,F%,hA$:ș&5C,DC%�,LC%:�LC%<NC%� 9D%ș&2002A,DC%,NC%-LC%�;F%:�(F%�1)� 9X ȎDC%� 9b�0:hA$="System Heap": 9l�1:hA$="RMA": 9v�2:hA$="Screen Size": 9��3:hA$="Sprite Size": 9��4:hA$="Font Cache": 9��5:hA$="RAM Filing System": 9�:hA$="Unknown Area": 9�L�:�1,"Can't set "+hA$+" to required amount ("+�(NC%�1024)+"K is needed)" 9�� 9�� 9� =LC%: 9����MA:�23,154,255,128,191,160,160,160,160,160,23,159,255,0,255,0,0,0,0,0:�23,158,255,1,253,5,5,5,5,5,23,155,160,160,160,160,160,160,160,160:�23,157,5,5,5,5,5,5,5,5,23,156,160,160,160,160,160,191,128,255 : ��23,160,0,0,0,0,0,255,0,255,23,161,5,5,5,5,5,253,1,255:�23,162,0,0,0,255,255,0,0,0,23,164,24,24,24,24,24,24,24,24:�23,165,255,128,128,128,128,128,128,128,23,166,255,127,127,127,127,127,127,127 :>��23,167,255,254,242,242,242,242,242,254,23,168,192,32,16,8,4,2,1,1:�23,169,128,128,128,191,191,191,191,191,23,170,0,0,0,255,255,255,255,255:�23,171,1,1,1,253,253,253,253,253,23,172,164,170,174,174,174,191,128,255 :\��23,173,136,171,136,174,168,255,0,255,23,174,136,219,216,219,216,255,0,255:�23,175,133,181,133,173,181,253,1,255,23,176,255,0,1,1,1,1,1,0:�23,177,255,0,128,128,128,128,128,0,23,178,255,1,1,1,1,1,1,1 :z��23,179,128,128,128,128,128,128,128,128,23,180,24,24,1,3,7,15,15,7:�23,181,0,0,128,192,224,240,240,224,23,182,1,1,1,1,1,1,1,1:�23,183,128,128,128,128,128,128,128,255,23,184,3,1,0,0,0,0,0,255:�23,185,192,128,0,0,0,0,0,255,23,186,1,1,1,1,1,1,1,255 :���23,187,0,0,0,3,4,8,16,32,23,188,0,0,0,255,0,0,0,0:�23,189,0,0,0,192,32,16,8,4,23,190,64,128,255,128,191,128,191,128:�23,191,0,0,255,0,254,0,254,0,23,192,0,0,255,0,0,0,0,0:�23,193,2,1,255,1,1,1,1,1,23,194,191,128,191,128,128,128,128,255 :���23,195,254,0,254,0,0,0,0,255,23,196,0,0,0,0,0,0,0,255:�23,197,1,37,37,61,37,37,1,255,23,198,191,191,191,191,191,191,128,255:�23,199,255,255,255,255,255,255,0,255,23,200,253,253,253,253,253,253,1,255 :���23,201,170,85,170,85,170,85,170,85,23,202,255,128,132,140,140,132,128,255:�23,203,255,1,17,49,49,17,1,255,23,204,255,128,132,134,134,132,128,255:�23,205,255,1,33,49,49,33,1,255,23,206,255,128,135,135,135,135,128,255 ;��23,207,255,1,225,225,225,225,1,255,23,208,255,128,128,131,131,128,128,255:�23,209,255,1,193,193,193,193,1,255,23,210,255,128,129,131,135,143,128,255:�23,211,255,1,129,193,225,241,1,255,23,212,255,128,131,131,131,131,128,255 ;$��23,213,255,1,1,193,193,1,1,255,23,214,255,128,136,139,139,136,128,255:�23,215,255,1,17,209,209,17,1,255,23,216,63,32,32,32,32,255,255,255:�23,217,240,16,16,16,16,252,255,252,23,218,15,11,11,8,8,8,8,15 ;B��23,219,224,176,144,16,16,16,16,240,23,220,120,72,72,72,120,80,72,68:�23,221,112,120,76,68,68,76,120,112,23,222,0,4,4,244,148,244,132,247:�23,223,240,224,224,144,8,4,2,1,23,224,0,0,0,255,0,0,0,0 ;`��23,226,255,1,1,33,97,255,96,32,23,227,0,0,0,255,0,0,0,0:�23,129,170,85,170,85,170,85,170,85,23,228,255,255,0,0,0,0,0,0:�23,229,0,0,0,0,0,0,255,255,23,240,24,24,24,24,24,24,24,24:�23,241,0,0,0,255,0,0,0,0,23,134,0,0,255,126,60,24,0,0 ;���23,135,0,0,0,24,24,0,0,0,23,245,255,255,255,129,255,255,255,255:�23,244,255,255,231,195,195,231,255,255,23,246,255,129,255,255,255,255,255,255:�23,247,255,255,255,255,255,255,129,255,23,248,255,129,129,129,129,129,129,255 ;���23,249,255,195,195,195,195,195,195,255,23,250,255,243,227,195,195,227,243,255:�23,252,128,192,224,240,240,224,192,128,23,230,0,0,255,0,0,255,0,0:�23,231,36,36,36,36,36,36,36,36,23,232,36,36,231,0,0,231,36,36 ;���23,233,255,0,231,36,36,36,36,36,23,234,36,36,36,36,36,231,0,255:�23,235,160,160,191,128,128,191,160,160,23,236,5,5,253,1,1,253,5,5:�23,237,0,1,1,2,130,36,20,8,23,238,0,130,68,40,16,40,68,130 ;���23,253,128,128,128,128,128,128,128,255,23,251,24,24,60,24,24,0,60,0:�23,255,0,0,0,0,0,0,0,255,23,202,255,128,128,128,128,128,128,129:�23,203,255,0,0,24,24,126,126,255,23,204,255,1,1,1,1,1,1,129 <