Home » Archimedes archive » Acorn Computing » 1993 07 Mega Disk.adf » 93_07 » DataVision/!DataVis/!dv8

DataVision/!DataVis/!dv8

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/!dv8
Read OK:
File size: 1F39 bytes
Load address: 0000
Exec address: 0000
File contents
   10REM > $.!DataVis.!dv8
   15SYS "Wimp_CommandWindow",-1
   20MODE 15
   30ONERRORGOTO1510
   40MOUSE ON:OFF:FG%=180
   50DIMREL$(101):RE%=1:DIMME$(20)
   60OSCLI"CLOSE":X=OPENUPFNMyFile("NIM"):INPUT#X,FI$,ST$,DA$,DR$,ZZ$,MD$:OSCLI"CLOSE":FO$=FI$+"A":ST$="1":GOTO550
   70DEFPROCMAIN:go%=0
   80IFST$="1"THEN TA$=FI$+"N":X=OPENUPFNMyFile(TA$):INPUT#X,DI$:PROCDir(DI$):GOTO140
   90GOTO110
  100PROCERWIN:COLOUR180:PRINTTAB(20,12);"Cannot read the file :";FI$;TAB(20,14);"(file empty)":COLOURFG%:VDU7:PROCMKLIK:GOTO1440
  110IFST$="2"THEN TA$=FI$+"N":X=OPENUPFNMyFile(TA$):INPUT#X,DI$:GOTO140
  120DEFPROCMKLIK:REPEAT:MOUSE U,U,BUT:UNTILBUT=0:REPEAT:MOUSE U,U,BUT:UNTILBUT=4:ENDPROC
  130DEFPROCERWIN:X=19:Y=11:W%=40:L%=3:COLOUR180:PROCLWN:COLOURFG%:ENDPROC
  140CLOSE#0:X=OPENUPFNMyFile(FO$):PTR#X=0:INPUT#X,ZZ$:NOF%=VAL(ZZ$):PTR#X=5:INPUT#X,ZZ$:NOR%=VAL(ZZ$):PTR#X=15:INPUT#X,ZZ$:REC%=VAL(ZZ$):PTR#X=45:INPUT#X,SO$
  150PTR#X=48:INPUT#X,RE$:IFRE$="1"THENGOTO170
  160go%=1:ENDPROC
  170TA$=FI$+"C":OSCLI"CLOSE":X=OPENUPFNMyFile(TA$):INPUT#X,REL$(0):FORI=1TOVAL(REL$(0)):INPUT#X,REL$(I):NEXTI:RE%=I:GOTO160
  180DEFPROCFOPOUT
  190OSCLI"CLOSE":X=OPENUPFNMyFile(FO$):POI=(CF%-1)*61+63
  200PTR#X=POI:INPUT#X,FL$
  210PTR#X=POI+22:INPUT#X,ZZ$:X1=VAL(ZZ$)
  220PTR#X=POI+26:INPUT#X,ZZ$:Y1=VAL(ZZ$)
  230PTR#X=POI+30:INPUT#X,ZZ$:X2=VAL(ZZ$)
  240PTR#X=POI+34:INPUT#X,ZZ$:Y2=VAL(ZZ$)
  250PTR#X=POI+38:INPUT#X,TY$
  260PTR#X=POI+41:INPUT#X,ZZ$:IN%=VAL(ZZ$)
  270PTR#X=POI+46:INPUT#X,ZZ$:TI%=VAL(ZZ$)
  280PTR#X=POI+54:INPUT#X,TR$
  290PTR#X=POI+58:INPUT#X,NP$
  300ENDPROC
  310DEFPROCLWN
  320PRINTTAB(X,Y);CHR$(154);STRING$(W%,CHR$(159));CHR$(158):FORI=Y+1TOY+L%:PRINTTAB(X,I);CHR$(155);STRING$(W%," ");CHR$(157):NEXTI:PRINTTAB(X,Y+(L%+1));CHR$(156);STRING$(W%,CHR$(160));CHR$(161)
  330ENDPROC
  340DEFPROCTIME
  350S%=(TIME DIV100)MOD60:M%=(TIME DIV6000)MOD60:H%=(TIME DIV360000)MOD24:PRINTTAB(73,0);":";TAB(76,0);":":IFS%<10THENPRINTTAB(77,0);"0"
  360IFM%<10THENPRINTTAB(74,0);"0"
  370IFH%<10THENPRINTTAB(71,0);"0"
  380PRINTTAB(73-LEN(STR$(H%)),0);H%;TAB(76-LEN(STR$(M%)),0);M%;TAB(79-LEN(STR$(S%)),0);S%
  390ENDPROC
  400DEFPROCTEXT
  410T$="":L=0
  420IFL<L%THENPRINTTAB(X,Y);CHR$(255)
  430IN=GET
  440IFIN=13THENNP%=0:GOTO530
  450IFIN=127THENGOTO500
  460IFIN=9THENNP%=1:GOTO530
  470IFL=L%THENGOTO430
  480PRINTTAB(X,Y);CHR$(IN):T$=T$+CHR$(IN):L=L+1:X=X+1
  490GOTO420
  500IFL=0THENGOTO410
  510PRINTTAB(X,Y);" ":X=X-1:L=L-1:T$=LEFT$(T$,L)
  520GOTO420
  530PRINTTAB(X,Y);" "
  540ENDPROC
  550PROCMAIN
  560X=11:Y=15:W%=21:L%=4:PROCLWN:ME$(1)="Define Relation":ME$(2)="Erase all Relations":ME$(3)="View Relations":ME$(4)="Quit":X=12:Y=16:L%=4:PROCSELECT
  570IFSEL%=1 ANDRE%<100THENGOTO680
  580IFSEL%=3THENGOTO620
  590IFSEL%=2THENGOTO1270
  600IFSEL%=4THENGOTO1300
  610GOTO560
  620IFRE%=1THENGOTO560
  630X=16:Y=12:W%=55:L%=7:PROCLWN:OSCLI"CLOSE":X=OPENUPFNMyFile(FO$):COLOUR131:PRINTTAB(17,13);"Press SHIFT to continue...":COLOURFG%
  640VDU28,17,19,71,15:CLS:VDU14:FORI=1TORE%-1:PTR#X=(VAL(LEFT$(REL$(I),3))-1)*61+63:INPUT#X,FL$:PRINTFI$;" to ";MID$(REL$(I),6,9);" through ";FL$:NEXTI:COLOUR131:VDU15:VDU26:PRINTTAB(17,13);"Press RETURN to return to the menu..."
  650COLOURFG%:I$=GET$:GOTO560
  660IFfr%=RE%-1THENGOTO560
  670sr%=sr%+5:fr%=sr%+4:IFfr%>=RE%THENfr%=RE%-1:GOTO640
  680PROCTYPE:CLS
  690CLS:PRINTTAB(2,2);"Define Relation";TAB(2,3);STRING$(15,CHR$(241));TAB(2,5);"Enter child filename: ";:X=POS:Y=5:L%=9:PROCTEXT:PRINTTAB(2,5);"Parent File : ";FI$;SPC(20);TAB(2,6);"Child File  : ";T$:RF$=T$
  700PRINTTAB(2,8);"Select Parent link: ";
  710PROCSEL:A%=SF%:COLOUR131:PRINTTAB(22,8);FL$:COLOURFG%:IFA%=1THENPRINTTAB(22,8);SPC(20):GOTO710
  720PROCTRIF
  730PRINTTAB(2,11);"Select Parent look-up field: ";:PROCSEL:B%=SF%:COLOUR131:PRINTTAB(31,11);FL$:COLOURFG%
  740IFLT$="1"THENE%=A%ELSEE%=(A%+1)
  750REM -> Commented out : IFB%>=E%THENVDU7:PRINTTAB(31,11);SPC(20):GOTO730
  760SP$=FO$:SP%=NOF%:FO$=RF$+"A":TA$=RF$+"N":ONERRORGOTO980
  770X=OPENUPFNMyFile(TA$):INPUT#X,DIR$:OSCLI"CLOSE":X=OPENUPFNMyFile(FO$):PTR#X=0:INPUT#X,ZZ$:NOF%=VAL(ZZ$)
  780PRINTTAB(2,14);"Select Child link: ";:PROCSEL:C%=SF%:COLOUR131:PRINTTAB(21,14);FL$:COLOURFG%
  790PRINTTAB(2,17);"Select Child look-up field: ";:PROCSEL:D%=SF%:COLOUR131:PRINTTAB(30,17);FL$:COLOURFG%
  800ONERRORGOTO1500
  810PRINTTAB(2,20);"Details correct?";:PROCYN:IFYN=0THENGOTO1000
  820ONERRORGOTO1500
  830R$="R":IFVAL(LT$)>2THENPROCDPTRIM:ELSETM$="0"
  840PROCCONV(A%,3):REL$(RE%)=STN$+PUT$+LT$:PROCCONT(RF$,9):REL$(RE%)=REL$(RE%)+STN$:PROCCONV(B%,3):REL$(RE%)=REL$(RE%)+STN$:PROCCONV(C%,3):REL$(RE%)=REL$(RE%)+STN$:PROCCONV(D%,3):REL$(RE%)=REL$(RE%)+STN$+R$+TM$
  850PROCTRIG:IFLT$="1"THENTR$=TRIG$+RIGHT$(TRIF$,1)ELSETR$=LEFT$(TRIF$,1)+TRIG$
  860OSCLI"CLOSE":FO$=SP$:NOF%=SP%:X=OPENUPFNMyFile(FO$):PTR#X=(A%-1)*61+117:PRINT#X,TR$
  870RE%=RE%+1:CLS:PRINTTAB(2,2);"Relation defined.":GOTO560
  880DEFPROCTRIG
  890IFTRIG$="0"THENTRIG$="3"
  900IFTRIG$="1"THENTRIG$="2"
  910ENDPROC
  920DEFPROCREJ:PRINTTAB(2,23);"Reject What?":X=15:Y=23:L%=2:ME$(1)="Field":ME$(2)="Record":PROCSELECT:IFSEL%=1THENR$="F":ELSER$="R"
  930ENDPROC
  940DEFPROCCONV(VL,ML):STN$=STR$(VL):IFLEN(STN$)>ML THENSTN$=LEFT$(STN$,ML):GOTO960
  950STN$=STN$+STRING$(ML-LEN(STN$)," ")
  960ENDPROC
  970DEFPROCCONT(VL$,ML):STN$=VL$+STRING$(ML-LEN(VL$)," "):ENDPROC
  980OSCLI"CLOSE":FO$=SP$:ONERRORGOTO1500
  990PROCERWIN:COLOUR180:PRINTTAB(20,12);"Cannot find related file...";TAB(20,14);"Click mouse to continue...":VDU7:COLOURFG%:PROCMKLIK:GOTO560
 1000GOTO1010
 1010FO$=SP$:NOF%=SP%:GOTO560
 1020DEFPROCTYPE:X=35:Y=15:W%=22:L%=7:PROCLWN:PRINTTAB(36,16);"Select Relation Type:":ME$(1)="Look-up type":ME$(2)="Update-replace type":ME$(3)="Update-add type":ME$(4)="Update-subtract type":ME$(5)="Quit":X=36:Y=18:L%=5:PROCSELECT
 1030I$=STR$(SEL%):IFI$="5"THENCLS:GOTO560
 1040IFI$="1"THENPUT$="I"ELSEPUT$="O"
 1050LT$=I$:ENDPROC
 1060DEFPROCTRIF:IFLT$="1"THENTRIG$=LEFT$(TR$,1)ELSETRIG$=RIGHT$(TR$,1)
 1070TRIF$=TR$:ENDPROC
 1080IFRE%=1THENGOTO560
 1090CLS:PRINTTAB(2,2);"Erase Relation";TAB(2,3);STRING$(14,CHR$(241));TAB(2,5);"Select Parent link: ":PROCSEL:COLOUR131:PRINTTAB(22,5);FL$:COLOURFG%
 1100PROCTYPE:PROCCONV(SF%,3):SE$=STN$+PUT$+LT$:L=1
 1110IFLEFT$(REL$(L),5)=SE$THENGOTO1130
 1120L=L+1:IFL=RE%THENCLS:PRINTTAB(2,2);"Relation of type ";ME$(SEL%);" not defined on ";FL$:GOTO560:ELSEGOTO1110
 1130IFL=1ANDRE%=2THENRE%=1:GOTO1210
 1140IFL=RE%-1THENRE%=RE%-1:REL$(RE%)="":GOTO1160
 1150FORJ=L TO (RE%-1):REL$(J)=REL$(J+1):NEXTJ:RE%=RE%-1:REL$(RE%)=""
 1160CF%=SF%:PROCFOPOUT:IFLT$="1"THENTI$=LEFT$(TR$,1)ELSETI$=RIGHT$(TR$,1)
 1170IFTI$="3"THENTI$="0"
 1180IFTI$="2"THENTI$="1"
 1190IFLT$="1"THENTR$=TI$+RIGHT$(TR$,1)ELSETR$=LEFT$(TR$,1)+TI$
 1200PTR#X=(SF%-1)*61+117:PRINT#X,TR$:CLS:PRINTTAB(2,2);"Relation type ";ME$(SEL%);" erased from ";FL$:GOTO560
 1210PTR#A=48:PRINT#A,"0":FORI=1TONOF%:PTR#A=(I-1)*61+117:INPUT#A,TR$:T1$=LEFT$(TR$,1):T2$=RIGHT$(TR$,1)
 1220IFT1$="3"THENT1$="0"
 1230IFT1$="2"THENT1$="1"
 1240IFT2$="3"THENT2$="0"
 1250IFT2$="2"THENT2$="1"
 1260TR$=T1$+T2$:PTR#A=(I-1)*61+117:PRINT#A,TR$:NEXTI:CLS:PRINTTAB(2,2);"All links have been erased.":GOTO560
 1270CLS:PRINTTAB(2,2);"Erase All Relations";TAB(2,3);STRING$(19,CHR$(241));TAB(2,5);"Are you sure you wish to erase all relationships?";:PROCYN:IFYN=0THENGOTO560
 1280RE%=1:OSCLI"CLOSE":A=OPENUPFNMyFile(FO$):GOTO1210
 1290STOP
 1300IFRE%=1THENOSCLI"CLOSE":X=OPENUPFNMyFile(FO$):PTR#X=48:PRINT#X,"0":GOTO1440
 1310REL$(0)=STR$(RE%-1):TA$=FI$+"C":OSCLI"CLOSE":X=OPENOUTFNMyFile(TA$):FORI=0TO(RE%-1):PRINT#X,REL$(I):NEXTI:OSCLI"CLOSE":X=OPENUPFNMyFile(FO$):PTR#X=48:PRINT#X,"1"
 1320GOTO1440
 1330DEFPROCDPTRIM:PRINTTAB(2,23);"Enter rounding figure for relation:":X=2:Y=24:L%=1:PROCTEXT:TM$=STR$(VAL(T$)):ENDPROC
 1340DEFPROCSELECT:ED%=Y+(L%-1):BG%=X+(W%-1):SSEL%=1
 1350FORI=1TOL%:PRINTTAB(X,Y+(I-1));"  ";ME$(I);STRING$((W%-2)-LEN(ME$(I))," "):NEXTI
 1360MOUSE XP,YP,BUT:XP=INT(XP/16):YP=31-INT(YP/32)
 1370IFYP<Y OR YP>ED%THENGOTO1350
 1380IFXP<X OR XP>BG%THENGOTO1350
 1390SEL%=(YP-Y)+1:PROCCLEA:COLOUR 131:COLOUR127:PRINTTAB(X,YP);"  ";ME$(SEL%);STRING$((W%-2)-LEN(ME$(SEL%))," "):COLOUR FG%:COLOUR127:IFBUT=4THENGOTO1400:ELSEGOTO1360
 1400VDU7:ENDPROC
 1410DEFPROCCLEA:IFSSEL%<>SEL%THENFORI=1TOL%:PRINTTAB(X,Y+(I-1));"  ";ME$(I);STRING$((W%-2)-LEN(ME$(I))," "):NEXTI
 1420SSEL%=SEL%:ENDPROC
 1430STOP
 1440 
 1450 
 1460 
 1470 
 1480 CLOSE #0
 1490 PROCQuit
 1500VDU3:CLOSE #0:VDU26:IFERR=17 THEN PROCQuit
 1510IFgo%=0THENGOTO1550
 1520FG%=180
 1530PROCERWIN:COLOUR180:PRINTTAB(20,12);"System Reported Error #";ERR;":";TAB(20,14);REPORT$:VDU7:COLOURFG%:PROCMKLIK
 1540OSCLI"CLOSE":VDU3:VDU26:GOTO560
 1550PROCERWIN:COLOUR180:PRINTTAB(20,12);"Cannot read the file :";FI$;TAB(20,14);"(does not exist/not a DataVision file)":COLOURFG%:VDU7:PROCMKLIK:GOTO1440
 1560DEFPROCSEL
 1570COLOUR128:FG%=128:X=50:Y=2:W%=21:L%=23:PROCLWN:COLOURFG%:PRINTTAB(51,3);"Select a Field: ";CHR$(138);" ";CHR$(139);TAB(51,4);STRING$(21,CHR$(241))
 1580SSF%=1:SF%=1:Y2=6:SR%=SF%:OSCLI"CLOSE":A=OPENUPFNMyFile(FO$)
 1590FR%=SR%+19:IFFR%>NOF%THENFR%=NOF%
 1600L=6:LL=1:FORI=SR%TOFR%:PTR#A=(I-1)*61+63:INPUT#A,FL$:PRINTTAB(52,L);FL$:ME$(LL)=FL$:L=L+1:LL=LL+1:NEXTI:IF LL<21 THEN FOR I=LL TO20:ME$(I)=" ":NEXTI
 1610MOUSE XP,YP,BUT:XP=INT(XP/16):YP=31-INT(YP/32)
 1620IFXP=67 AND YP=3 AND BUT=4 THENGOTO1660
 1630IFXP=69 AND YP=3 AND BUT=4 THENGOTO1680
 1640IF XP>71 OR XP<51 OR YP>25 OR YP<6 THENSSF%=0:PROCCLEAF:SSF%=SF%:GOTO1610
 1650YP=YP-5:SF%=(YP+SR%)-1:PROCCLEAF:COLOUR131:PRINTTAB(52,YP+5);ME$(YP);SPC(20-LEN(ME$(YP))):COLOURFG%:IFBUT=4 AND SF%<(NOF%+1)THENGOTO1700:ELSEGOTO1610
 1660IFFR%=NOF%THENGOTO1610
 1670SR%=SR%+20:X=50:Y=2:W%=21:L%=23:PROCLWN:PRINTTAB(51,3);"Select a Field: ";CHR$(138);" ";CHR$(139);TAB(51,4);STRING$(21,CHR$(241)):GOTO1590
 1680IFSR%=1THENGOTO1610
 1690SR%=SR%-20:X=50:Y=2:W%=21:L%=23:PROCLWN:PRINTTAB(51,3);"Select a Field: ";CHR$(138);" ";CHR$(139);TAB(51,4);STRING$(21,CHR$(241)):GOTO1590
 1700VDU7:PTR#A=(SF%-1)*61+63:INPUT#A,FL$:PTR#A=(SF%-1)*61+101:INPUT#A,TY$:PTR#A=(SF%-1)*61+117:INPUT#A,TR$:COLOURFG%:FG%=180:REPEAT:MOUSE U,U,BUT:UNTILBUT=0:ENDPROC
 1710DEFPROCCLEAF:IFSSF%<>SF%THENFORI=1TO20:PRINTTAB(52,I+5);ME$(I);SPC(20-LEN(ME$(I))):NEXTI
 1720SSF%=SF%:ENDPROC
 1730DEFPROCYN:xp=POS:yp=VPOS:PRINT" ";:COLOUR131:PRINT"YES/NO":COLOURFG%
 1740MOUSE XP,YP,BUT:XP=INT(XP/16):YP=31-INT(YP/32):IFBUT=0THENGOTO1740
 1750IFYP<>yp THENGOTO1740
 1760IFXP=xp+1 OR XP=xp+2 OR XP=xp+3THENYN=1:GOTO1790
 1770IFXP=xp+5 OR XP=xp+6 THENYN=0:GOTO1790
 1780GOTO1740
 1790PRINTTAB(xp,yp);" YES/NO":VDU7:REPEAT:MOUSE U,U,BUT:UNTILBUT=0:ENDPROC
 1800DEF FNMyFile(file$)
 1810=file$
 1820DEF PROCQuit
 1830SYS "Wimp_CommandWindow",-1
 1840QUIT
 1850ENDPROC
40000DEFPROCDir(d$)
40010IF d$ <> "" THEN OSCLI "Dir "+FNMyFile(MID$(d$,2))
40020ENDPROC

� > $.!DataVis.!dv8
ș "Wimp_CommandWindow",-1
� 15
��dfE
(ȗ �:�:FG%=180
2�REL$(101):RE%=1:�ME$(20)
<]�"CLOSE":X=��MyFile("NIM"):�#X,FI$,ST$,DA$,DR$,ZZ$,MD$:�"CLOSE":FO$=FI$+"A":ST$="1":�TfB
F��MAIN:go%=0
PA�ST$="1"� TA$=FI$+"N":X=��MyFile(TA$):�#X,DI$:�Dir(DI$):�tL@
Z	�Dn@
da�ERWIN:�180:�20,12);"Cannot read the file :";FI$;�20,14);"(file empty)":�FG%:�7:�MKLIK:�t`E
n7�ST$="2"� TA$=FI$+"N":X=��MyFile(TA$):�#X,DI$:�tL@
x5��MKLIK:�:ȗ U,U,BUT:�BUT=0:�:ȗ U,U,BUT:�BUT=4:�
�1��ERWIN:X=19:Y=11:W%=40:L%=3:�180:�LWN:�FG%:�
�u�#0:X=��MyFile(FO$):�#X=0:�#X,ZZ$:NOF%=�(ZZ$):�#X=5:�#X,ZZ$:NOR%=�(ZZ$):�#X=15:�#X,ZZ$:REC%=�(ZZ$):�#X=45:�#X,SO$
�!�#X=48:�#X,RE$:�RE$="1"��tj@
�go%=1:�
�_TA$=FI$+"C":�"CLOSE":X=��MyFile(TA$):�#X,REL$(0):�I=1��(REL$(0)):�#X,REL$(I):�I:RE%=I:�t`@
���FOPOUT
�.�"CLOSE":X=��MyFile(FO$):POI=(CF%-1)*61+63
��#X=POI:�#X,FL$
� �#X=POI+22:�#X,ZZ$:X1=�(ZZ$)
� �#X=POI+26:�#X,ZZ$:Y1=�(ZZ$)
� �#X=POI+30:�#X,ZZ$:X2=�(ZZ$)
� �#X=POI+34:�#X,ZZ$:Y2=�(ZZ$)
��#X=POI+38:�#X,TY$
!�#X=POI+41:�#X,ZZ$:IN%=�(ZZ$)
!�#X=POI+46:�#X,ZZ$:TI%=�(ZZ$)
�#X=POI+54:�#X,TR$
"�#X=POI+58:�#X,NP$
,�
6	��LWN
@y�X,Y);�(154);�W%,�(159));�(158):�I=Y+1�Y+L%:�X,I);�(155);�W%," ");�(157):�I:�X,Y+(L%+1));�(156);�W%,�(160));�(161)
J�
T
��TIME
^^S%=(� �100)�60:M%=(� �6000)�60:H%=(� �360000)�24:�73,0);":";�76,0);":":�S%<10��77,0);"0"
h�M%<10��74,0);"0"
r�H%<10��71,0);"0"
|=�73-�(�(H%)),0);H%;�76-�(�(M%)),0);M%;�79-�(�(S%)),0);S%
��
�
��TEXT
�
T$="":L=0
��L<L%��X,Y);�(255)
�IN=�
��IN=13�NP%=0:�TRB
��IN=127��dtA
��IN=9�NP%=1:�TRB
��L=L%��tnA
�(�X,Y);�(IN):T$=T$+�(IN):L=L+1:X=X+1
�	�tdA
��L=0��tZA
�$�X,Y);" ":X=X-1:L=L-1:T$=�T$,L)
	�tdA
�X,Y);" "
�
&	�MAIN
0�X=11:Y=15:W%=21:L%=4:�LWN:ME$(1)="Define Relation":ME$(2)="Erase all Relations":ME$(3)="View Relations":ME$(4)="Quit":X=12:Y=16:L%=4:�SELECT
:�SEL%=1 �RE%<100��thB
D�SEL%=3��DlB
N�SEL%=2��dvD
X�SEL%=4��TTE
b	�TpB
l�RE%=1��TpB
vfX=16:Y=12:W%=55:L%=7:�LWN:�"CLOSE":X=��MyFile(FO$):�131:�17,13);"Press SHIFT to continue...":�FG%
���28,17,19,71,15:�:�14:�I=1�RE%-1:�#X=(�(�REL$(I),3))-1)*61+63:�#X,FL$:�FI$;" to ";�REL$(I),6,9);" through ";FL$:�I:�131:�15:�26:�17,13);"Press RETURN to return to the menu..."
��FG%:I$=�:�TpB
��fr%=RE%-1��TpB
�1sr%=sr%+5:fr%=sr%+4:�fr%>=RE%�fr%=RE%-1:�t@B
��TYPE:�
���:�2,2);"Define Relation";�2,3);�15,�(241));�2,5);"Enter child filename: ";:X=�:Y=5:L%=9:�TEXT:�2,5);"Parent File : ";FI$;�(20);�2,6);"Child File  : ";T$:RF$=T$
�"�2,8);"Select Parent link: ";
�?�SEL:A%=SF%:�131:�22,8);FL$:�FG%:�A%=1��22,8);�(20):�dFB
�	�TRIF
�O�2,11);"Select Parent look-up field: ";:�SEL:B%=SF%:�131:�31,11);FL$:�FG%
��LT$="1"�E%=A%�E%=(A%+1)
�I� -> Commented out : IFB%>=E%THENVDU7:PRINTTAB(31,11);SPC(20):GOTO730
�4SP$=FO$:SP%=NOF%:FO$=RF$+"A":TA$=RF$+"N":��dTC
OX=��MyFile(TA$):�#X,DIR$:�"CLOSE":X=��MyFile(FO$):�#X=0:�#X,ZZ$:NOF%=�(ZZ$)
E�2,14);"Select Child link: ";:�SEL:C%=SF%:�131:�21,14);FL$:�FG%
N�2,17);"Select Child look-up field: ";:�SEL:D%=SF%:�131:�30,17);FL$:�FG%
 ��d\E
*/�2,20);"Details correct?";:�YN:�YN=0��dhC
4��d\E
>%R$="R":�(LT$)>2��DPTRIM:�TM$="0"
H��CONV(A%,3):REL$(RE%)=STN$+PUT$+LT$:�CONT(RF$,9):REL$(RE%)=REL$(RE%)+STN$:�CONV(B%,3):REL$(RE%)=REL$(RE%)+STN$:�CONV(C%,3):REL$(RE%)=REL$(RE%)+STN$:�CONV(D%,3):REL$(RE%)=REL$(RE%)+STN$+R$+TM$
R:�TRIG:�LT$="1"�TR$=TRIG$+�TRIF$,1)�TR$=�TRIF$,1)+TRIG$
\G�"CLOSE":FO$=SP$:NOF%=SP%:X=��MyFile(FO$):�#X=(A%-1)*61+117:�#X,TR$
f0RE%=RE%+1:�:�2,2);"Relation defined.":�TpB
p
��TRIG
z�TRIG$="0"�TRIG$="3"
��TRIG$="1"�TRIG$="2"
��
�m��REJ:�2,23);"Reject What?":X=15:Y=23:L%=2:ME$(1)="Field":ME$(2)="Record":�SELECT:�SEL%=1�R$="F":�R$="R"
��
�>��CONV(VL,ML):STN$=�(VL):�(STN$)>ML �STN$=�STN$,ML):�d@C
�STN$=STN$+�ML-�(STN$)," ")
��
�-��CONT(VL$,ML):STN$=VL$+�ML-�(VL$)," "):�
��"CLOSE":FO$=SP$:��d\E
�p�ERWIN:�180:�20,12);"Cannot find related file...";�20,14);"Click mouse to continue...":�7:�FG%:�MKLIK:�TpB
�	�drC
�FO$=SP$:NOF%=SP%:�TpB
����TYPE:X=35:Y=15:W%=22:L%=7:�LWN:�36,16);"Select Relation Type:":ME$(1)="Look-up type":ME$(2)="Update-replace type":ME$(3)="Update-add type":ME$(4)="Update-subtract type":ME$(5)="Quit":X=36:Y=18:L%=5:�SELECT
I$=�(SEL%):�I$="5"��:�TpB
�I$="1"�PUT$="I"�PUT$="O"
LT$=I$:�
$/��TRIF:�LT$="1"�TRIG$=�TR$,1)�TRIG$=�TR$,1)
.TRIF$=TR$:�
8�RE%=1��TpB
Bg�:�2,2);"Erase Relation";�2,3);�14,�(241));�2,5);"Select Parent link: ":�SEL:�131:�22,5);FL$:�FG%
L,�TYPE:�CONV(SF%,3):SE$=STN$+PUT$+LT$:L=1
V�REL$(L),5)=SE$��DjD
`[L=L+1:�L=RE%��:�2,2);"Relation of type ";ME$(SEL%);" not defined on ";FL$:�TpB:��DVD
j�L=1�RE%=2�RE%=1:�tzD
t)�L=RE%-1�RE%=RE%-1:REL$(RE%)="":�tHD
~>�J=L � (RE%-1):REL$(J)=REL$(J+1):�J:RE%=RE%-1:REL$(RE%)=""
�4CF%=SF%:�FOPOUT:�LT$="1"�TI$=�TR$,1)�TI$=�TR$,1)
��TI$="3"�TI$="0"
��TI$="2"�TI$="1"
�,�LT$="1"�TR$=TI$+�TR$,1)�TR$=�TR$,1)+TI$
�\�#X=(SF%-1)*61+117:�#X,TR$:�:�2,2);"Relation type ";ME$(SEL%);" erased from ";FL$:�TpB
�M�#A=48:�#A,"0":�I=1�NOF%:�#A=(I-1)*61+117:�#A,TR$:T1$=�TR$,1):T2$=�TR$,1)
��T1$="3"�T1$="0"
��T1$="2"�T1$="1"
��T2$="3"�T2$="0"
��T2$="2"�T2$="1"
�XTR$=T1$+T2$:�#A=(I-1)*61+117:�#A,TR$:�I:�:�2,2);"All links have been erased.":�TpB
��:�2,2);"Erase All Relations";�2,3);�19,�(241));�2,5);"Are you sure you wish to erase all relationships?";:�YN:�YN=0��TpB
(RE%=1:�"CLOSE":A=��MyFile(FO$):�tzD

�
8�RE%=1��"CLOSE":X=��MyFile(FO$):�#X=48:�#X,"0":�t`E
}REL$(0)=�(RE%-1):TA$=FI$+"C":�"CLOSE":X=��MyFile(TA$):�I=0�(RE%-1):�#X,REL$(I):�I:�"CLOSE":X=��MyFile(FO$):�#X=48:�#X,"1"
(	�t`E
2]��DPTRIM:�2,23);"Enter rounding figure for relation:":X=2:Y=24:L%=1:�TEXT:TM$=�(�(T$)):�
<.��SELECT:ED%=Y+(L%-1):BG%=X+(W%-1):SSEL%=1
F>�I=1�L%:�X,Y+(I-1));"  ";ME$(I);�(W%-2)-�(ME$(I))," "):�I
P+ȗ XP,YP,BUT:XP=�(XP/16):YP=31-�(YP/32)
Z�YP<Y � YP>ED%��DFE
d�XP<X � XP>BG%��DFE
nrSEL%=(YP-Y)+1:�CLEA:� 131:�127:�X,YP);"  ";ME$(SEL%);�(W%-2)-�(ME$(SEL%))," "):� FG%:�127:�BUT=4��DxE:��DPE
x�7:�
�R��CLEA:�SSEL%<>SEL%��I=1�L%:�X,Y+(I-1));"  ";ME$(I);�(W%-2)-�(ME$(I))," "):�I
�SSEL%=SEL%:�
��
� 
� 
� 
� 
�	 � #0
�
 �Quit
��3:� #0:�26:�=17 � �Quit
��go%=0��TNF
�FG%=180
�R�ERWIN:�180:�20,12);"System Reported Error #";�;":";�20,14);�$:�7:�FG%:�MKLIK
�"CLOSE":�3:�26:�TpB
{�ERWIN:�180:�20,12);"Cannot read the file :";FI$;�20,14);"(does not exist/not a DataVision file)":�FG%:�7:�MKLIK:�t`E
	��SEL
"o�128:FG%=128:X=50:Y=2:W%=21:L%=23:�LWN:�FG%:�51,3);"Select a Field: ";�(138);" ";�(139);�51,4);�21,�(241))
,6SSF%=1:SF%=1:Y2=6:SR%=SF%:�"CLOSE":A=��MyFile(FO$)
6!FR%=SR%+19:�FR%>NOF%�FR%=NOF%
@{L=6:LL=1:�I=SR%�FR%:�#A=(I-1)*61+63:�#A,FL$:�52,L);FL$:ME$(LL)=FL$:L=L+1:LL=LL+1:�I:� LL<21 � � I=LL �20:ME$(I)=" ":�I
J+ȗ XP,YP,BUT:XP=�(XP/16):YP=31-�(YP/32)
T �XP=67 � YP=3 � BUT=4 ��D|F
^ �XP=69 � YP=3 � BUT=4 ��tPF
h@� XP>71 � XP<51 � YP>25 � YP<6 �SSF%=0:�CLEAF:SSF%=SF%:�DJF
rrYP=YP-5:SF%=(YP+SR%)-1:�CLEAF:�131:�52,YP+5);ME$(YP);�(20-�(ME$(YP))):�FG%:�BUT=4 � SF%<(NOF%+1)��tdF:��DJF
|�FR%=NOF%��DJF
�nSR%=SR%+20:X=50:Y=2:W%=21:L%=23:�LWN:�51,3);"Select a Field: ";�(138);" ";�(139);�51,4);�21,�(241)):�TvF
��SR%=1��DJF
�nSR%=SR%-20:X=50:Y=2:W%=21:L%=23:�LWN:�51,3);"Select a Field: ";�(138);" ";�(139);�51,4);�21,�(241)):�TvF
�y�7:�#A=(SF%-1)*61+63:�#A,FL$:�#A=(SF%-1)*61+101:�#A,TY$:�#A=(SF%-1)*61+117:�#A,TR$:�FG%:FG%=180:�:ȗ U,U,BUT:�BUT=0:�
�B��CLEAF:�SSF%<>SF%��I=1�20:�52,I+5);ME$(I);�(20-�(ME$(I))):�I
�SSF%=SF%:�
�,��YN:xp=�:yp=�:�" ";:�131:�"YES/NO":�FG%
�8ȗ XP,YP,BUT:XP=�(XP/16):YP=31-�(YP/32):�BUT=0��dLF
��YP<>yp ��dLF
�+�XP=xp+1 � XP=xp+2 � XP=xp+3�YN=1:�d~F
�"�XP=xp+5 � XP=xp+6 �YN=0:�d~F
�	�dLF
�/�xp,yp);" YES/NO":�7:�:ȗ U,U,BUT:�BUT=0:�
� �MyFile(file$)

=file$
� �Quit
&ș "Wimp_CommandWindow",-1
0Ș
:�
�@
��Dir(d$)
�J)� d$ <> "" � � "Dir "+�MyFile(�d$,2))
�T�
�
00000000  0d 00 0a 17 f4 20 3e 20  24 2e 21 44 61 74 61 56  |..... > $.!DataV|
00000010  69 73 2e 21 64 76 38 0d  00 0f 1e c8 99 20 22 57  |is.!dv8...... "W|
00000020  69 6d 70 5f 43 6f 6d 6d  61 6e 64 57 69 6e 64 6f  |imp_CommandWindo|
00000030  77 22 2c 2d 31 0d 00 14  08 eb 20 31 35 0d 00 1e  |w",-1..... 15...|
00000040  0b ee 85 e5 8d 64 66 45  0d 00 28 12 c8 97 20 ee  |.....dfE..(... .|
00000050  3a 87 3a 46 47 25 3d 31  38 30 0d 00 32 1d de 52  |:.:FG%=180..2..R|
00000060  45 4c 24 28 31 30 31 29  3a 52 45 25 3d 31 3a de  |EL$(101):RE%=1:.|
00000070  4d 45 24 28 32 30 29 0d  00 3c 5d ff 22 43 4c 4f  |ME$(20)..<]."CLO|
00000080  53 45 22 3a 58 3d ad a4  4d 79 46 69 6c 65 28 22  |SE":X=..MyFile("|
00000090  4e 49 4d 22 29 3a e8 23  58 2c 46 49 24 2c 53 54  |NIM"):.#X,FI$,ST|
000000a0  24 2c 44 41 24 2c 44 52  24 2c 5a 5a 24 2c 4d 44  |$,DA$,DR$,ZZ$,MD|
000000b0  24 3a ff 22 43 4c 4f 53  45 22 3a 46 4f 24 3d 46  |$:."CLOSE":FO$=F|
000000c0  49 24 2b 22 41 22 3a 53  54 24 3d 22 31 22 3a e5  |I$+"A":ST$="1":.|
000000d0  8d 54 66 42 0d 00 46 10  dd f2 4d 41 49 4e 3a 67  |.TfB..F...MAIN:g|
000000e0  6f 25 3d 30 0d 00 50 41  e7 53 54 24 3d 22 31 22  |o%=0..PA.ST$="1"|
000000f0  8c 20 54 41 24 3d 46 49  24 2b 22 4e 22 3a 58 3d  |. TA$=FI$+"N":X=|
00000100  ad a4 4d 79 46 69 6c 65  28 54 41 24 29 3a e8 23  |..MyFile(TA$):.#|
00000110  58 2c 44 49 24 3a f2 44  69 72 28 44 49 24 29 3a  |X,DI$:.Dir(DI$):|
00000120  e5 8d 74 4c 40 0d 00 5a  09 e5 8d 44 6e 40 0d 00  |..tL@..Z...Dn@..|
00000130  64 61 f2 45 52 57 49 4e  3a fb 31 38 30 3a f1 8a  |da.ERWIN:.180:..|
00000140  32 30 2c 31 32 29 3b 22  43 61 6e 6e 6f 74 20 72  |20,12);"Cannot r|
00000150  65 61 64 20 74 68 65 20  66 69 6c 65 20 3a 22 3b  |ead the file :";|
00000160  46 49 24 3b 8a 32 30 2c  31 34 29 3b 22 28 66 69  |FI$;.20,14);"(fi|
00000170  6c 65 20 65 6d 70 74 79  29 22 3a fb 46 47 25 3a  |le empty)":.FG%:|
00000180  ef 37 3a f2 4d 4b 4c 49  4b 3a e5 8d 74 60 45 0d  |.7:.MKLIK:..t`E.|
00000190  00 6e 37 e7 53 54 24 3d  22 32 22 8c 20 54 41 24  |.n7.ST$="2". TA$|
000001a0  3d 46 49 24 2b 22 4e 22  3a 58 3d ad a4 4d 79 46  |=FI$+"N":X=..MyF|
000001b0  69 6c 65 28 54 41 24 29  3a e8 23 58 2c 44 49 24  |ile(TA$):.#X,DI$|
000001c0  3a e5 8d 74 4c 40 0d 00  78 35 dd f2 4d 4b 4c 49  |:..tL@..x5..MKLI|
000001d0  4b 3a f5 3a c8 97 20 55  2c 55 2c 42 55 54 3a fd  |K:.:.. U,U,BUT:.|
000001e0  42 55 54 3d 30 3a f5 3a  c8 97 20 55 2c 55 2c 42  |BUT=0:.:.. U,U,B|
000001f0  55 54 3a fd 42 55 54 3d  34 3a e1 0d 00 82 31 dd  |UT:.BUT=4:....1.|
00000200  f2 45 52 57 49 4e 3a 58  3d 31 39 3a 59 3d 31 31  |.ERWIN:X=19:Y=11|
00000210  3a 57 25 3d 34 30 3a 4c  25 3d 33 3a fb 31 38 30  |:W%=40:L%=3:.180|
00000220  3a f2 4c 57 4e 3a fb 46  47 25 3a e1 0d 00 8c 75  |:.LWN:.FG%:....u|
00000230  d9 23 30 3a 58 3d ad a4  4d 79 46 69 6c 65 28 46  |.#0:X=..MyFile(F|
00000240  4f 24 29 3a cf 23 58 3d  30 3a e8 23 58 2c 5a 5a  |O$):.#X=0:.#X,ZZ|
00000250  24 3a 4e 4f 46 25 3d bb  28 5a 5a 24 29 3a cf 23  |$:NOF%=.(ZZ$):.#|
00000260  58 3d 35 3a e8 23 58 2c  5a 5a 24 3a 4e 4f 52 25  |X=5:.#X,ZZ$:NOR%|
00000270  3d bb 28 5a 5a 24 29 3a  cf 23 58 3d 31 35 3a e8  |=.(ZZ$):.#X=15:.|
00000280  23 58 2c 5a 5a 24 3a 52  45 43 25 3d bb 28 5a 5a  |#X,ZZ$:REC%=.(ZZ|
00000290  24 29 3a cf 23 58 3d 34  35 3a e8 23 58 2c 53 4f  |$):.#X=45:.#X,SO|
000002a0  24 0d 00 96 21 cf 23 58  3d 34 38 3a e8 23 58 2c  |$...!.#X=48:.#X,|
000002b0  52 45 24 3a e7 52 45 24  3d 22 31 22 8c e5 8d 74  |RE$:.RE$="1"...t|
000002c0  6a 40 0d 00 a0 0b 67 6f  25 3d 31 3a e1 0d 00 aa  |j@....go%=1:....|
000002d0  5f 54 41 24 3d 46 49 24  2b 22 43 22 3a ff 22 43  |_TA$=FI$+"C":."C|
000002e0  4c 4f 53 45 22 3a 58 3d  ad a4 4d 79 46 69 6c 65  |LOSE":X=..MyFile|
000002f0  28 54 41 24 29 3a e8 23  58 2c 52 45 4c 24 28 30  |(TA$):.#X,REL$(0|
00000300  29 3a e3 49 3d 31 b8 bb  28 52 45 4c 24 28 30 29  |):.I=1..(REL$(0)|
00000310  29 3a e8 23 58 2c 52 45  4c 24 28 49 29 3a ed 49  |):.#X,REL$(I):.I|
00000320  3a 52 45 25 3d 49 3a e5  8d 74 60 40 0d 00 b4 0c  |:RE%=I:..t`@....|
00000330  dd f2 46 4f 50 4f 55 54  0d 00 be 2e ff 22 43 4c  |..FOPOUT....."CL|
00000340  4f 53 45 22 3a 58 3d ad  a4 4d 79 46 69 6c 65 28  |OSE":X=..MyFile(|
00000350  46 4f 24 29 3a 50 4f 49  3d 28 43 46 25 2d 31 29  |FO$):POI=(CF%-1)|
00000360  2a 36 31 2b 36 33 0d 00  c8 13 cf 23 58 3d 50 4f  |*61+63.....#X=PO|
00000370  49 3a e8 23 58 2c 46 4c  24 0d 00 d2 20 cf 23 58  |I:.#X,FL$... .#X|
00000380  3d 50 4f 49 2b 32 32 3a  e8 23 58 2c 5a 5a 24 3a  |=POI+22:.#X,ZZ$:|
00000390  58 31 3d bb 28 5a 5a 24  29 0d 00 dc 20 cf 23 58  |X1=.(ZZ$)... .#X|
000003a0  3d 50 4f 49 2b 32 36 3a  e8 23 58 2c 5a 5a 24 3a  |=POI+26:.#X,ZZ$:|
000003b0  59 31 3d bb 28 5a 5a 24  29 0d 00 e6 20 cf 23 58  |Y1=.(ZZ$)... .#X|
000003c0  3d 50 4f 49 2b 33 30 3a  e8 23 58 2c 5a 5a 24 3a  |=POI+30:.#X,ZZ$:|
000003d0  58 32 3d bb 28 5a 5a 24  29 0d 00 f0 20 cf 23 58  |X2=.(ZZ$)... .#X|
000003e0  3d 50 4f 49 2b 33 34 3a  e8 23 58 2c 5a 5a 24 3a  |=POI+34:.#X,ZZ$:|
000003f0  59 32 3d bb 28 5a 5a 24  29 0d 00 fa 16 cf 23 58  |Y2=.(ZZ$).....#X|
00000400  3d 50 4f 49 2b 33 38 3a  e8 23 58 2c 54 59 24 0d  |=POI+38:.#X,TY$.|
00000410  01 04 21 cf 23 58 3d 50  4f 49 2b 34 31 3a e8 23  |..!.#X=POI+41:.#|
00000420  58 2c 5a 5a 24 3a 49 4e  25 3d bb 28 5a 5a 24 29  |X,ZZ$:IN%=.(ZZ$)|
00000430  0d 01 0e 21 cf 23 58 3d  50 4f 49 2b 34 36 3a e8  |...!.#X=POI+46:.|
00000440  23 58 2c 5a 5a 24 3a 54  49 25 3d bb 28 5a 5a 24  |#X,ZZ$:TI%=.(ZZ$|
00000450  29 0d 01 18 16 cf 23 58  3d 50 4f 49 2b 35 34 3a  |).....#X=POI+54:|
00000460  e8 23 58 2c 54 52 24 0d  01 22 16 cf 23 58 3d 50  |.#X,TR$.."..#X=P|
00000470  4f 49 2b 35 38 3a e8 23  58 2c 4e 50 24 0d 01 2c  |OI+58:.#X,NP$..,|
00000480  05 e1 0d 01 36 09 dd f2  4c 57 4e 0d 01 40 79 f1  |....6...LWN..@y.|
00000490  8a 58 2c 59 29 3b bd 28  31 35 34 29 3b c4 57 25  |.X,Y);.(154);.W%|
000004a0  2c bd 28 31 35 39 29 29  3b bd 28 31 35 38 29 3a  |,.(159));.(158):|
000004b0  e3 49 3d 59 2b 31 b8 59  2b 4c 25 3a f1 8a 58 2c  |.I=Y+1.Y+L%:..X,|
000004c0  49 29 3b bd 28 31 35 35  29 3b c4 57 25 2c 22 20  |I);.(155);.W%," |
000004d0  22 29 3b bd 28 31 35 37  29 3a ed 49 3a f1 8a 58  |");.(157):.I:..X|
000004e0  2c 59 2b 28 4c 25 2b 31  29 29 3b bd 28 31 35 36  |,Y+(L%+1));.(156|
000004f0  29 3b c4 57 25 2c bd 28  31 36 30 29 29 3b bd 28  |);.W%,.(160));.(|
00000500  31 36 31 29 0d 01 4a 05  e1 0d 01 54 0a dd f2 54  |161)..J....T...T|
00000510  49 4d 45 0d 01 5e 5e 53  25 3d 28 91 20 81 31 30  |IME..^^S%=(. .10|
00000520  30 29 83 36 30 3a 4d 25  3d 28 91 20 81 36 30 30  |0).60:M%=(. .600|
00000530  30 29 83 36 30 3a 48 25  3d 28 91 20 81 33 36 30  |0).60:H%=(. .360|
00000540  30 30 30 29 83 32 34 3a  f1 8a 37 33 2c 30 29 3b  |000).24:..73,0);|
00000550  22 3a 22 3b 8a 37 36 2c  30 29 3b 22 3a 22 3a e7  |":";.76,0);":":.|
00000560  53 25 3c 31 30 8c f1 8a  37 37 2c 30 29 3b 22 30  |S%<10...77,0);"0|
00000570  22 0d 01 68 16 e7 4d 25  3c 31 30 8c f1 8a 37 34  |"..h..M%<10...74|
00000580  2c 30 29 3b 22 30 22 0d  01 72 16 e7 48 25 3c 31  |,0);"0"..r..H%<1|
00000590  30 8c f1 8a 37 31 2c 30  29 3b 22 30 22 0d 01 7c  |0...71,0);"0"..||
000005a0  3d f1 8a 37 33 2d a9 28  c3 28 48 25 29 29 2c 30  |=..73-.(.(H%)),0|
000005b0  29 3b 48 25 3b 8a 37 36  2d a9 28 c3 28 4d 25 29  |);H%;.76-.(.(M%)|
000005c0  29 2c 30 29 3b 4d 25 3b  8a 37 39 2d a9 28 c3 28  |),0);M%;.79-.(.(|
000005d0  53 25 29 29 2c 30 29 3b  53 25 0d 01 86 05 e1 0d  |S%)),0);S%......|
000005e0  01 90 0a dd f2 54 45 58  54 0d 01 9a 0d 54 24 3d  |.....TEXT....T$=|
000005f0  22 22 3a 4c 3d 30 0d 01  a4 17 e7 4c 3c 4c 25 8c  |"":L=0.....L<L%.|
00000600  f1 8a 58 2c 59 29 3b bd  28 32 35 35 29 0d 01 ae  |..X,Y);.(255)...|
00000610  08 49 4e 3d a5 0d 01 b8  16 e7 49 4e 3d 31 33 8c  |.IN=......IN=13.|
00000620  4e 50 25 3d 30 3a e5 8d  54 52 42 0d 01 c2 11 e7  |NP%=0:..TRB.....|
00000630  49 4e 3d 31 32 37 8c e5  8d 64 74 41 0d 01 cc 15  |IN=127...dtA....|
00000640  e7 49 4e 3d 39 8c 4e 50  25 3d 31 3a e5 8d 54 52  |.IN=9.NP%=1:..TR|
00000650  42 0d 01 d6 0f e7 4c 3d  4c 25 8c e5 8d 74 6e 41  |B.....L=L%...tnA|
00000660  0d 01 e0 28 f1 8a 58 2c  59 29 3b bd 28 49 4e 29  |...(..X,Y);.(IN)|
00000670  3a 54 24 3d 54 24 2b bd  28 49 4e 29 3a 4c 3d 4c  |:T$=T$+.(IN):L=L|
00000680  2b 31 3a 58 3d 58 2b 31  0d 01 ea 09 e5 8d 74 64  |+1:X=X+1......td|
00000690  41 0d 01 f4 0e e7 4c 3d  30 8c e5 8d 74 5a 41 0d  |A.....L=0...tZA.|
000006a0  01 fe 24 f1 8a 58 2c 59  29 3b 22 20 22 3a 58 3d  |..$..X,Y);" ":X=|
000006b0  58 2d 31 3a 4c 3d 4c 2d  31 3a 54 24 3d c0 54 24  |X-1:L=L-1:T$=.T$|
000006c0  2c 4c 29 0d 02 08 09 e5  8d 74 64 41 0d 02 12 0e  |,L)......tdA....|
000006d0  f1 8a 58 2c 59 29 3b 22  20 22 0d 02 1c 05 e1 0d  |..X,Y);" "......|
000006e0  02 26 09 f2 4d 41 49 4e  0d 02 30 90 58 3d 31 31  |.&..MAIN..0.X=11|
000006f0  3a 59 3d 31 35 3a 57 25  3d 32 31 3a 4c 25 3d 34  |:Y=15:W%=21:L%=4|
00000700  3a f2 4c 57 4e 3a 4d 45  24 28 31 29 3d 22 44 65  |:.LWN:ME$(1)="De|
00000710  66 69 6e 65 20 52 65 6c  61 74 69 6f 6e 22 3a 4d  |fine Relation":M|
00000720  45 24 28 32 29 3d 22 45  72 61 73 65 20 61 6c 6c  |E$(2)="Erase all|
00000730  20 52 65 6c 61 74 69 6f  6e 73 22 3a 4d 45 24 28  | Relations":ME$(|
00000740  33 29 3d 22 56 69 65 77  20 52 65 6c 61 74 69 6f  |3)="View Relatio|
00000750  6e 73 22 3a 4d 45 24 28  34 29 3d 22 51 75 69 74  |ns":ME$(4)="Quit|
00000760  22 3a 58 3d 31 32 3a 59  3d 31 36 3a 4c 25 3d 34  |":X=12:Y=16:L%=4|
00000770  3a f2 53 45 4c 45 43 54  0d 02 3a 1a e7 53 45 4c  |:.SELECT..:..SEL|
00000780  25 3d 31 20 80 52 45 25  3c 31 30 30 8c e5 8d 74  |%=1 .RE%<100...t|
00000790  68 42 0d 02 44 11 e7 53  45 4c 25 3d 33 8c e5 8d  |hB..D..SEL%=3...|
000007a0  44 6c 42 0d 02 4e 11 e7  53 45 4c 25 3d 32 8c e5  |DlB..N..SEL%=2..|
000007b0  8d 64 76 44 0d 02 58 11  e7 53 45 4c 25 3d 34 8c  |.dvD..X..SEL%=4.|
000007c0  e5 8d 54 54 45 0d 02 62  09 e5 8d 54 70 42 0d 02  |..TTE..b...TpB..|
000007d0  6c 10 e7 52 45 25 3d 31  8c e5 8d 54 70 42 0d 02  |l..RE%=1...TpB..|
000007e0  76 66 58 3d 31 36 3a 59  3d 31 32 3a 57 25 3d 35  |vfX=16:Y=12:W%=5|
000007f0  35 3a 4c 25 3d 37 3a f2  4c 57 4e 3a ff 22 43 4c  |5:L%=7:.LWN:."CL|
00000800  4f 53 45 22 3a 58 3d ad  a4 4d 79 46 69 6c 65 28  |OSE":X=..MyFile(|
00000810  46 4f 24 29 3a fb 31 33  31 3a f1 8a 31 37 2c 31  |FO$):.131:..17,1|
00000820  33 29 3b 22 50 72 65 73  73 20 53 48 49 46 54 20  |3);"Press SHIFT |
00000830  74 6f 20 63 6f 6e 74 69  6e 75 65 2e 2e 2e 22 3a  |to continue...":|
00000840  fb 46 47 25 0d 02 80 b4  ef 32 38 2c 31 37 2c 31  |.FG%.....28,17,1|
00000850  39 2c 37 31 2c 31 35 3a  db 3a ef 31 34 3a e3 49  |9,71,15:.:.14:.I|
00000860  3d 31 b8 52 45 25 2d 31  3a cf 23 58 3d 28 bb 28  |=1.RE%-1:.#X=(.(|
00000870  c0 52 45 4c 24 28 49 29  2c 33 29 29 2d 31 29 2a  |.REL$(I),3))-1)*|
00000880  36 31 2b 36 33 3a e8 23  58 2c 46 4c 24 3a f1 46  |61+63:.#X,FL$:.F|
00000890  49 24 3b 22 20 74 6f 20  22 3b c1 52 45 4c 24 28  |I$;" to ";.REL$(|
000008a0  49 29 2c 36 2c 39 29 3b  22 20 74 68 72 6f 75 67  |I),6,9);" throug|
000008b0  68 20 22 3b 46 4c 24 3a  ed 49 3a fb 31 33 31 3a  |h ";FL$:.I:.131:|
000008c0  ef 31 35 3a ef 32 36 3a  f1 8a 31 37 2c 31 33 29  |.15:.26:..17,13)|
000008d0  3b 22 50 72 65 73 73 20  52 45 54 55 52 4e 20 74  |;"Press RETURN t|
000008e0  6f 20 72 65 74 75 72 6e  20 74 6f 20 74 68 65 20  |o return to the |
000008f0  6d 65 6e 75 2e 2e 2e 22  0d 02 8a 13 fb 46 47 25  |menu...".....FG%|
00000900  3a 49 24 3d be 3a e5 8d  54 70 42 0d 02 94 14 e7  |:I$=.:..TpB.....|
00000910  66 72 25 3d 52 45 25 2d  31 8c e5 8d 54 70 42 0d  |fr%=RE%-1...TpB.|
00000920  02 9e 31 73 72 25 3d 73  72 25 2b 35 3a 66 72 25  |..1sr%=sr%+5:fr%|
00000930  3d 73 72 25 2b 34 3a e7  66 72 25 3e 3d 52 45 25  |=sr%+4:.fr%>=RE%|
00000940  8c 66 72 25 3d 52 45 25  2d 31 3a e5 8d 74 40 42  |.fr%=RE%-1:..t@B|
00000950  0d 02 a8 0b f2 54 59 50  45 3a db 0d 02 b2 a6 db  |.....TYPE:......|
00000960  3a f1 8a 32 2c 32 29 3b  22 44 65 66 69 6e 65 20  |:..2,2);"Define |
00000970  52 65 6c 61 74 69 6f 6e  22 3b 8a 32 2c 33 29 3b  |Relation";.2,3);|
00000980  c4 31 35 2c bd 28 32 34  31 29 29 3b 8a 32 2c 35  |.15,.(241));.2,5|
00000990  29 3b 22 45 6e 74 65 72  20 63 68 69 6c 64 20 66  |);"Enter child f|
000009a0  69 6c 65 6e 61 6d 65 3a  20 22 3b 3a 58 3d b1 3a  |ilename: ";:X=.:|
000009b0  59 3d 35 3a 4c 25 3d 39  3a f2 54 45 58 54 3a f1  |Y=5:L%=9:.TEXT:.|
000009c0  8a 32 2c 35 29 3b 22 50  61 72 65 6e 74 20 46 69  |.2,5);"Parent Fi|
000009d0  6c 65 20 3a 20 22 3b 46  49 24 3b 89 28 32 30 29  |le : ";FI$;.(20)|
000009e0  3b 8a 32 2c 36 29 3b 22  43 68 69 6c 64 20 46 69  |;.2,6);"Child Fi|
000009f0  6c 65 20 20 3a 20 22 3b  54 24 3a 52 46 24 3d 54  |le  : ";T$:RF$=T|
00000a00  24 0d 02 bc 22 f1 8a 32  2c 38 29 3b 22 53 65 6c  |$..."..2,8);"Sel|
00000a10  65 63 74 20 50 61 72 65  6e 74 20 6c 69 6e 6b 3a  |ect Parent link:|
00000a20  20 22 3b 0d 02 c6 3f f2  53 45 4c 3a 41 25 3d 53  | ";...?.SEL:A%=S|
00000a30  46 25 3a fb 31 33 31 3a  f1 8a 32 32 2c 38 29 3b  |F%:.131:..22,8);|
00000a40  46 4c 24 3a fb 46 47 25  3a e7 41 25 3d 31 8c f1  |FL$:.FG%:.A%=1..|
00000a50  8a 32 32 2c 38 29 3b 89  28 32 30 29 3a e5 8d 64  |.22,8);.(20):..d|
00000a60  46 42 0d 02 d0 09 f2 54  52 49 46 0d 02 da 4f f1  |FB.....TRIF...O.|
00000a70  8a 32 2c 31 31 29 3b 22  53 65 6c 65 63 74 20 50  |.2,11);"Select P|
00000a80  61 72 65 6e 74 20 6c 6f  6f 6b 2d 75 70 20 66 69  |arent look-up fi|
00000a90  65 6c 64 3a 20 22 3b 3a  f2 53 45 4c 3a 42 25 3d  |eld: ";:.SEL:B%=|
00000aa0  53 46 25 3a fb 31 33 31  3a f1 8a 33 31 2c 31 31  |SF%:.131:..31,11|
00000ab0  29 3b 46 4c 24 3a fb 46  47 25 0d 02 e4 1c e7 4c  |);FL$:.FG%.....L|
00000ac0  54 24 3d 22 31 22 8c 45  25 3d 41 25 8b 45 25 3d  |T$="1".E%=A%.E%=|
00000ad0  28 41 25 2b 31 29 0d 02  ee 49 f4 20 2d 3e 20 43  |(A%+1)...I. -> C|
00000ae0  6f 6d 6d 65 6e 74 65 64  20 6f 75 74 20 3a 20 49  |ommented out : I|
00000af0  46 42 25 3e 3d 45 25 54  48 45 4e 56 44 55 37 3a  |FB%>=E%THENVDU7:|
00000b00  50 52 49 4e 54 54 41 42  28 33 31 2c 31 31 29 3b  |PRINTTAB(31,11);|
00000b10  53 50 43 28 32 30 29 3a  47 4f 54 4f 37 33 30 0d  |SPC(20):GOTO730.|
00000b20  02 f8 34 53 50 24 3d 46  4f 24 3a 53 50 25 3d 4e  |..4SP$=FO$:SP%=N|
00000b30  4f 46 25 3a 46 4f 24 3d  52 46 24 2b 22 41 22 3a  |OF%:FO$=RF$+"A":|
00000b40  54 41 24 3d 52 46 24 2b  22 4e 22 3a ee 85 e5 8d  |TA$=RF$+"N":....|
00000b50  64 54 43 0d 03 02 4f 58  3d ad a4 4d 79 46 69 6c  |dTC...OX=..MyFil|
00000b60  65 28 54 41 24 29 3a e8  23 58 2c 44 49 52 24 3a  |e(TA$):.#X,DIR$:|
00000b70  ff 22 43 4c 4f 53 45 22  3a 58 3d ad a4 4d 79 46  |."CLOSE":X=..MyF|
00000b80  69 6c 65 28 46 4f 24 29  3a cf 23 58 3d 30 3a e8  |ile(FO$):.#X=0:.|
00000b90  23 58 2c 5a 5a 24 3a 4e  4f 46 25 3d bb 28 5a 5a  |#X,ZZ$:NOF%=.(ZZ|
00000ba0  24 29 0d 03 0c 45 f1 8a  32 2c 31 34 29 3b 22 53  |$)...E..2,14);"S|
00000bb0  65 6c 65 63 74 20 43 68  69 6c 64 20 6c 69 6e 6b  |elect Child link|
00000bc0  3a 20 22 3b 3a f2 53 45  4c 3a 43 25 3d 53 46 25  |: ";:.SEL:C%=SF%|
00000bd0  3a fb 31 33 31 3a f1 8a  32 31 2c 31 34 29 3b 46  |:.131:..21,14);F|
00000be0  4c 24 3a fb 46 47 25 0d  03 16 4e f1 8a 32 2c 31  |L$:.FG%...N..2,1|
00000bf0  37 29 3b 22 53 65 6c 65  63 74 20 43 68 69 6c 64  |7);"Select Child|
00000c00  20 6c 6f 6f 6b 2d 75 70  20 66 69 65 6c 64 3a 20  | look-up field: |
00000c10  22 3b 3a f2 53 45 4c 3a  44 25 3d 53 46 25 3a fb  |";:.SEL:D%=SF%:.|
00000c20  31 33 31 3a f1 8a 33 30  2c 31 37 29 3b 46 4c 24  |131:..30,17);FL$|
00000c30  3a fb 46 47 25 0d 03 20  0b ee 85 e5 8d 64 5c 45  |:.FG%.. .....d\E|
00000c40  0d 03 2a 2f f1 8a 32 2c  32 30 29 3b 22 44 65 74  |..*/..2,20);"Det|
00000c50  61 69 6c 73 20 63 6f 72  72 65 63 74 3f 22 3b 3a  |ails correct?";:|
00000c60  f2 59 4e 3a e7 59 4e 3d  30 8c e5 8d 64 68 43 0d  |.YN:.YN=0...dhC.|
00000c70  03 34 0b ee 85 e5 8d 64  5c 45 0d 03 3e 25 52 24  |.4.....d\E..>%R$|
00000c80  3d 22 52 22 3a e7 bb 28  4c 54 24 29 3e 32 8c f2  |="R":..(LT$)>2..|
00000c90  44 50 54 52 49 4d 3a 8b  54 4d 24 3d 22 30 22 0d  |DPTRIM:.TM$="0".|
00000ca0  03 48 c3 f2 43 4f 4e 56  28 41 25 2c 33 29 3a 52  |.H..CONV(A%,3):R|
00000cb0  45 4c 24 28 52 45 25 29  3d 53 54 4e 24 2b 50 55  |EL$(RE%)=STN$+PU|
00000cc0  54 24 2b 4c 54 24 3a f2  43 4f 4e 54 28 52 46 24  |T$+LT$:.CONT(RF$|
00000cd0  2c 39 29 3a 52 45 4c 24  28 52 45 25 29 3d 52 45  |,9):REL$(RE%)=RE|
00000ce0  4c 24 28 52 45 25 29 2b  53 54 4e 24 3a f2 43 4f  |L$(RE%)+STN$:.CO|
00000cf0  4e 56 28 42 25 2c 33 29  3a 52 45 4c 24 28 52 45  |NV(B%,3):REL$(RE|
00000d00  25 29 3d 52 45 4c 24 28  52 45 25 29 2b 53 54 4e  |%)=REL$(RE%)+STN|
00000d10  24 3a f2 43 4f 4e 56 28  43 25 2c 33 29 3a 52 45  |$:.CONV(C%,3):RE|
00000d20  4c 24 28 52 45 25 29 3d  52 45 4c 24 28 52 45 25  |L$(RE%)=REL$(RE%|
00000d30  29 2b 53 54 4e 24 3a f2  43 4f 4e 56 28 44 25 2c  |)+STN$:.CONV(D%,|
00000d40  33 29 3a 52 45 4c 24 28  52 45 25 29 3d 52 45 4c  |3):REL$(RE%)=REL|
00000d50  24 28 52 45 25 29 2b 53  54 4e 24 2b 52 24 2b 54  |$(RE%)+STN$+R$+T|
00000d60  4d 24 0d 03 52 3a f2 54  52 49 47 3a e7 4c 54 24  |M$..R:.TRIG:.LT$|
00000d70  3d 22 31 22 8c 54 52 24  3d 54 52 49 47 24 2b c2  |="1".TR$=TRIG$+.|
00000d80  54 52 49 46 24 2c 31 29  8b 54 52 24 3d c0 54 52  |TRIF$,1).TR$=.TR|
00000d90  49 46 24 2c 31 29 2b 54  52 49 47 24 0d 03 5c 47  |IF$,1)+TRIG$..\G|
00000da0  ff 22 43 4c 4f 53 45 22  3a 46 4f 24 3d 53 50 24  |."CLOSE":FO$=SP$|
00000db0  3a 4e 4f 46 25 3d 53 50  25 3a 58 3d ad a4 4d 79  |:NOF%=SP%:X=..My|
00000dc0  46 69 6c 65 28 46 4f 24  29 3a cf 23 58 3d 28 41  |File(FO$):.#X=(A|
00000dd0  25 2d 31 29 2a 36 31 2b  31 31 37 3a f1 23 58 2c  |%-1)*61+117:.#X,|
00000de0  54 52 24 0d 03 66 30 52  45 25 3d 52 45 25 2b 31  |TR$..f0RE%=RE%+1|
00000df0  3a db 3a f1 8a 32 2c 32  29 3b 22 52 65 6c 61 74  |:.:..2,2);"Relat|
00000e00  69 6f 6e 20 64 65 66 69  6e 65 64 2e 22 3a e5 8d  |ion defined.":..|
00000e10  54 70 42 0d 03 70 0a dd  f2 54 52 49 47 0d 03 7a  |TpB..p...TRIG..z|
00000e20  18 e7 54 52 49 47 24 3d  22 30 22 8c 54 52 49 47  |..TRIG$="0".TRIG|
00000e30  24 3d 22 33 22 0d 03 84  18 e7 54 52 49 47 24 3d  |$="3".....TRIG$=|
00000e40  22 31 22 8c 54 52 49 47  24 3d 22 32 22 0d 03 8e  |"1".TRIG$="2"...|
00000e50  05 e1 0d 03 98 6d dd f2  52 45 4a 3a f1 8a 32 2c  |.....m..REJ:..2,|
00000e60  32 33 29 3b 22 52 65 6a  65 63 74 20 57 68 61 74  |23);"Reject What|
00000e70  3f 22 3a 58 3d 31 35 3a  59 3d 32 33 3a 4c 25 3d  |?":X=15:Y=23:L%=|
00000e80  32 3a 4d 45 24 28 31 29  3d 22 46 69 65 6c 64 22  |2:ME$(1)="Field"|
00000e90  3a 4d 45 24 28 32 29 3d  22 52 65 63 6f 72 64 22  |:ME$(2)="Record"|
00000ea0  3a f2 53 45 4c 45 43 54  3a e7 53 45 4c 25 3d 31  |:.SELECT:.SEL%=1|
00000eb0  8c 52 24 3d 22 46 22 3a  8b 52 24 3d 22 52 22 0d  |.R$="F":.R$="R".|
00000ec0  03 a2 05 e1 0d 03 ac 3e  dd f2 43 4f 4e 56 28 56  |.......>..CONV(V|
00000ed0  4c 2c 4d 4c 29 3a 53 54  4e 24 3d c3 28 56 4c 29  |L,ML):STN$=.(VL)|
00000ee0  3a e7 a9 28 53 54 4e 24  29 3e 4d 4c 20 8c 53 54  |:..(STN$)>ML .ST|
00000ef0  4e 24 3d c0 53 54 4e 24  2c 4d 4c 29 3a e5 8d 64  |N$=.STN$,ML):..d|
00000f00  40 43 0d 03 b6 1e 53 54  4e 24 3d 53 54 4e 24 2b  |@C....STN$=STN$+|
00000f10  c4 4d 4c 2d a9 28 53 54  4e 24 29 2c 22 20 22 29  |.ML-.(STN$)," ")|
00000f20  0d 03 c0 05 e1 0d 03 ca  2d dd f2 43 4f 4e 54 28  |........-..CONT(|
00000f30  56 4c 24 2c 4d 4c 29 3a  53 54 4e 24 3d 56 4c 24  |VL$,ML):STN$=VL$|
00000f40  2b c4 4d 4c 2d a9 28 56  4c 24 29 2c 22 20 22 29  |+.ML-.(VL$)," ")|
00000f50  3a e1 0d 03 d4 1c ff 22  43 4c 4f 53 45 22 3a 46  |:......"CLOSE":F|
00000f60  4f 24 3d 53 50 24 3a ee  85 e5 8d 64 5c 45 0d 03  |O$=SP$:....d\E..|
00000f70  de 70 f2 45 52 57 49 4e  3a fb 31 38 30 3a f1 8a  |.p.ERWIN:.180:..|
00000f80  32 30 2c 31 32 29 3b 22  43 61 6e 6e 6f 74 20 66  |20,12);"Cannot f|
00000f90  69 6e 64 20 72 65 6c 61  74 65 64 20 66 69 6c 65  |ind related file|
00000fa0  2e 2e 2e 22 3b 8a 32 30  2c 31 34 29 3b 22 43 6c  |...";.20,14);"Cl|
00000fb0  69 63 6b 20 6d 6f 75 73  65 20 74 6f 20 63 6f 6e  |ick mouse to con|
00000fc0  74 69 6e 75 65 2e 2e 2e  22 3a ef 37 3a fb 46 47  |tinue...":.7:.FG|
00000fd0  25 3a f2 4d 4b 4c 49 4b  3a e5 8d 54 70 42 0d 03  |%:.MKLIK:..TpB..|
00000fe0  e8 09 e5 8d 64 72 43 0d  03 f2 1a 46 4f 24 3d 53  |....drC....FO$=S|
00000ff0  50 24 3a 4e 4f 46 25 3d  53 50 25 3a e5 8d 54 70  |P$:NOF%=SP%:..Tp|
00001000  42 0d 03 fc d4 dd f2 54  59 50 45 3a 58 3d 33 35  |B......TYPE:X=35|
00001010  3a 59 3d 31 35 3a 57 25  3d 32 32 3a 4c 25 3d 37  |:Y=15:W%=22:L%=7|
00001020  3a f2 4c 57 4e 3a f1 8a  33 36 2c 31 36 29 3b 22  |:.LWN:..36,16);"|
00001030  53 65 6c 65 63 74 20 52  65 6c 61 74 69 6f 6e 20  |Select Relation |
00001040  54 79 70 65 3a 22 3a 4d  45 24 28 31 29 3d 22 4c  |Type:":ME$(1)="L|
00001050  6f 6f 6b 2d 75 70 20 74  79 70 65 22 3a 4d 45 24  |ook-up type":ME$|
00001060  28 32 29 3d 22 55 70 64  61 74 65 2d 72 65 70 6c  |(2)="Update-repl|
00001070  61 63 65 20 74 79 70 65  22 3a 4d 45 24 28 33 29  |ace type":ME$(3)|
00001080  3d 22 55 70 64 61 74 65  2d 61 64 64 20 74 79 70  |="Update-add typ|
00001090  65 22 3a 4d 45 24 28 34  29 3d 22 55 70 64 61 74  |e":ME$(4)="Updat|
000010a0  65 2d 73 75 62 74 72 61  63 74 20 74 79 70 65 22  |e-subtract type"|
000010b0  3a 4d 45 24 28 35 29 3d  22 51 75 69 74 22 3a 58  |:ME$(5)="Quit":X|
000010c0  3d 33 36 3a 59 3d 31 38  3a 4c 25 3d 35 3a f2 53  |=36:Y=18:L%=5:.S|
000010d0  45 4c 45 43 54 0d 04 06  1e 49 24 3d c3 28 53 45  |ELECT....I$=.(SE|
000010e0  4c 25 29 3a e7 49 24 3d  22 35 22 8c db 3a e5 8d  |L%):.I$="5"..:..|
000010f0  54 70 42 0d 04 10 1d e7  49 24 3d 22 31 22 8c 50  |TpB.....I$="1".P|
00001100  55 54 24 3d 22 49 22 8b  50 55 54 24 3d 22 4f 22  |UT$="I".PUT$="O"|
00001110  0d 04 1a 0c 4c 54 24 3d  49 24 3a e1 0d 04 24 2f  |....LT$=I$:...$/|
00001120  dd f2 54 52 49 46 3a e7  4c 54 24 3d 22 31 22 8c  |..TRIF:.LT$="1".|
00001130  54 52 49 47 24 3d c0 54  52 24 2c 31 29 8b 54 52  |TRIG$=.TR$,1).TR|
00001140  49 47 24 3d c2 54 52 24  2c 31 29 0d 04 2e 0f 54  |IG$=.TR$,1)....T|
00001150  52 49 46 24 3d 54 52 24  3a e1 0d 04 38 10 e7 52  |RIF$=TR$:...8..R|
00001160  45 25 3d 31 8c e5 8d 54  70 42 0d 04 42 67 db 3a  |E%=1...TpB..Bg.:|
00001170  f1 8a 32 2c 32 29 3b 22  45 72 61 73 65 20 52 65  |..2,2);"Erase Re|
00001180  6c 61 74 69 6f 6e 22 3b  8a 32 2c 33 29 3b c4 31  |lation";.2,3);.1|
00001190  34 2c bd 28 32 34 31 29  29 3b 8a 32 2c 35 29 3b  |4,.(241));.2,5);|
000011a0  22 53 65 6c 65 63 74 20  50 61 72 65 6e 74 20 6c  |"Select Parent l|
000011b0  69 6e 6b 3a 20 22 3a f2  53 45 4c 3a fb 31 33 31  |ink: ":.SEL:.131|
000011c0  3a f1 8a 32 32 2c 35 29  3b 46 4c 24 3a fb 46 47  |:..22,5);FL$:.FG|
000011d0  25 0d 04 4c 2c f2 54 59  50 45 3a f2 43 4f 4e 56  |%..L,.TYPE:.CONV|
000011e0  28 53 46 25 2c 33 29 3a  53 45 24 3d 53 54 4e 24  |(SF%,3):SE$=STN$|
000011f0  2b 50 55 54 24 2b 4c 54  24 3a 4c 3d 31 0d 04 56  |+PUT$+LT$:L=1..V|
00001200  1a e7 c0 52 45 4c 24 28  4c 29 2c 35 29 3d 53 45  |...REL$(L),5)=SE|
00001210  24 8c e5 8d 44 6a 44 0d  04 60 5b 4c 3d 4c 2b 31  |$...DjD..`[L=L+1|
00001220  3a e7 4c 3d 52 45 25 8c  db 3a f1 8a 32 2c 32 29  |:.L=RE%..:..2,2)|
00001230  3b 22 52 65 6c 61 74 69  6f 6e 20 6f 66 20 74 79  |;"Relation of ty|
00001240  70 65 20 22 3b 4d 45 24  28 53 45 4c 25 29 3b 22  |pe ";ME$(SEL%);"|
00001250  20 6e 6f 74 20 64 65 66  69 6e 65 64 20 6f 6e 20  | not defined on |
00001260  22 3b 46 4c 24 3a e5 8d  54 70 42 3a 8b e5 8d 44  |";FL$:..TpB:...D|
00001270  56 44 0d 04 6a 1a e7 4c  3d 31 80 52 45 25 3d 32  |VD..j..L=1.RE%=2|
00001280  8c 52 45 25 3d 31 3a e5  8d 74 7a 44 0d 04 74 29  |.RE%=1:..tzD..t)|
00001290  e7 4c 3d 52 45 25 2d 31  8c 52 45 25 3d 52 45 25  |.L=RE%-1.RE%=RE%|
000012a0  2d 31 3a 52 45 4c 24 28  52 45 25 29 3d 22 22 3a  |-1:REL$(RE%)="":|
000012b0  e5 8d 74 48 44 0d 04 7e  3e e3 4a 3d 4c 20 b8 20  |..tHD..~>.J=L . |
000012c0  28 52 45 25 2d 31 29 3a  52 45 4c 24 28 4a 29 3d  |(RE%-1):REL$(J)=|
000012d0  52 45 4c 24 28 4a 2b 31  29 3a ed 4a 3a 52 45 25  |REL$(J+1):.J:RE%|
000012e0  3d 52 45 25 2d 31 3a 52  45 4c 24 28 52 45 25 29  |=RE%-1:REL$(RE%)|
000012f0  3d 22 22 0d 04 88 34 43  46 25 3d 53 46 25 3a f2  |=""...4CF%=SF%:.|
00001300  46 4f 50 4f 55 54 3a e7  4c 54 24 3d 22 31 22 8c  |FOPOUT:.LT$="1".|
00001310  54 49 24 3d c0 54 52 24  2c 31 29 8b 54 49 24 3d  |TI$=.TR$,1).TI$=|
00001320  c2 54 52 24 2c 31 29 0d  04 92 14 e7 54 49 24 3d  |.TR$,1).....TI$=|
00001330  22 33 22 8c 54 49 24 3d  22 30 22 0d 04 9c 14 e7  |"3".TI$="0".....|
00001340  54 49 24 3d 22 32 22 8c  54 49 24 3d 22 31 22 0d  |TI$="2".TI$="1".|
00001350  04 a6 2c e7 4c 54 24 3d  22 31 22 8c 54 52 24 3d  |..,.LT$="1".TR$=|
00001360  54 49 24 2b c2 54 52 24  2c 31 29 8b 54 52 24 3d  |TI$+.TR$,1).TR$=|
00001370  c0 54 52 24 2c 31 29 2b  54 49 24 0d 04 b0 5c cf  |.TR$,1)+TI$...\.|
00001380  23 58 3d 28 53 46 25 2d  31 29 2a 36 31 2b 31 31  |#X=(SF%-1)*61+11|
00001390  37 3a f1 23 58 2c 54 52  24 3a db 3a f1 8a 32 2c  |7:.#X,TR$:.:..2,|
000013a0  32 29 3b 22 52 65 6c 61  74 69 6f 6e 20 74 79 70  |2);"Relation typ|
000013b0  65 20 22 3b 4d 45 24 28  53 45 4c 25 29 3b 22 20  |e ";ME$(SEL%);" |
000013c0  65 72 61 73 65 64 20 66  72 6f 6d 20 22 3b 46 4c  |erased from ";FL|
000013d0  24 3a e5 8d 54 70 42 0d  04 ba 4d cf 23 41 3d 34  |$:..TpB...M.#A=4|
000013e0  38 3a f1 23 41 2c 22 30  22 3a e3 49 3d 31 b8 4e  |8:.#A,"0":.I=1.N|
000013f0  4f 46 25 3a cf 23 41 3d  28 49 2d 31 29 2a 36 31  |OF%:.#A=(I-1)*61|
00001400  2b 31 31 37 3a e8 23 41  2c 54 52 24 3a 54 31 24  |+117:.#A,TR$:T1$|
00001410  3d c0 54 52 24 2c 31 29  3a 54 32 24 3d c2 54 52  |=.TR$,1):T2$=.TR|
00001420  24 2c 31 29 0d 04 c4 14  e7 54 31 24 3d 22 33 22  |$,1).....T1$="3"|
00001430  8c 54 31 24 3d 22 30 22  0d 04 ce 14 e7 54 31 24  |.T1$="0".....T1$|
00001440  3d 22 32 22 8c 54 31 24  3d 22 31 22 0d 04 d8 14  |="2".T1$="1"....|
00001450  e7 54 32 24 3d 22 33 22  8c 54 32 24 3d 22 30 22  |.T2$="3".T2$="0"|
00001460  0d 04 e2 14 e7 54 32 24  3d 22 32 22 8c 54 32 24  |.....T2$="2".T2$|
00001470  3d 22 31 22 0d 04 ec 58  54 52 24 3d 54 31 24 2b  |="1"...XTR$=T1$+|
00001480  54 32 24 3a cf 23 41 3d  28 49 2d 31 29 2a 36 31  |T2$:.#A=(I-1)*61|
00001490  2b 31 31 37 3a f1 23 41  2c 54 52 24 3a ed 49 3a  |+117:.#A,TR$:.I:|
000014a0  db 3a f1 8a 32 2c 32 29  3b 22 41 6c 6c 20 6c 69  |.:..2,2);"All li|
000014b0  6e 6b 73 20 68 61 76 65  20 62 65 65 6e 20 65 72  |nks have been er|
000014c0  61 73 65 64 2e 22 3a e5  8d 54 70 42 0d 04 f6 7f  |ased.":..TpB....|
000014d0  db 3a f1 8a 32 2c 32 29  3b 22 45 72 61 73 65 20  |.:..2,2);"Erase |
000014e0  41 6c 6c 20 52 65 6c 61  74 69 6f 6e 73 22 3b 8a  |All Relations";.|
000014f0  32 2c 33 29 3b c4 31 39  2c bd 28 32 34 31 29 29  |2,3);.19,.(241))|
00001500  3b 8a 32 2c 35 29 3b 22  41 72 65 20 79 6f 75 20  |;.2,5);"Are you |
00001510  73 75 72 65 20 79 6f 75  20 77 69 73 68 20 74 6f  |sure you wish to|
00001520  20 65 72 61 73 65 20 61  6c 6c 20 72 65 6c 61 74  | erase all relat|
00001530  69 6f 6e 73 68 69 70 73  3f 22 3b 3a f2 59 4e 3a  |ionships?";:.YN:|
00001540  e7 59 4e 3d 30 8c e5 8d  54 70 42 0d 05 00 28 52  |.YN=0...TpB...(R|
00001550  45 25 3d 31 3a ff 22 43  4c 4f 53 45 22 3a 41 3d  |E%=1:."CLOSE":A=|
00001560  ad a4 4d 79 46 69 6c 65  28 46 4f 24 29 3a e5 8d  |..MyFile(FO$):..|
00001570  74 7a 44 0d 05 0a 05 fa  0d 05 14 38 e7 52 45 25  |tzD........8.RE%|
00001580  3d 31 8c ff 22 43 4c 4f  53 45 22 3a 58 3d ad a4  |=1.."CLOSE":X=..|
00001590  4d 79 46 69 6c 65 28 46  4f 24 29 3a cf 23 58 3d  |MyFile(FO$):.#X=|
000015a0  34 38 3a f1 23 58 2c 22  30 22 3a e5 8d 74 60 45  |48:.#X,"0":..t`E|
000015b0  0d 05 1e 7d 52 45 4c 24  28 30 29 3d c3 28 52 45  |...}REL$(0)=.(RE|
000015c0  25 2d 31 29 3a 54 41 24  3d 46 49 24 2b 22 43 22  |%-1):TA$=FI$+"C"|
000015d0  3a ff 22 43 4c 4f 53 45  22 3a 58 3d ae a4 4d 79  |:."CLOSE":X=..My|
000015e0  46 69 6c 65 28 54 41 24  29 3a e3 49 3d 30 b8 28  |File(TA$):.I=0.(|
000015f0  52 45 25 2d 31 29 3a f1  23 58 2c 52 45 4c 24 28  |RE%-1):.#X,REL$(|
00001600  49 29 3a ed 49 3a ff 22  43 4c 4f 53 45 22 3a 58  |I):.I:."CLOSE":X|
00001610  3d ad a4 4d 79 46 69 6c  65 28 46 4f 24 29 3a cf  |=..MyFile(FO$):.|
00001620  23 58 3d 34 38 3a f1 23  58 2c 22 31 22 0d 05 28  |#X=48:.#X,"1"..(|
00001630  09 e5 8d 74 60 45 0d 05  32 5d dd f2 44 50 54 52  |...t`E..2]..DPTR|
00001640  49 4d 3a f1 8a 32 2c 32  33 29 3b 22 45 6e 74 65  |IM:..2,23);"Ente|
00001650  72 20 72 6f 75 6e 64 69  6e 67 20 66 69 67 75 72  |r rounding figur|
00001660  65 20 66 6f 72 20 72 65  6c 61 74 69 6f 6e 3a 22  |e for relation:"|
00001670  3a 58 3d 32 3a 59 3d 32  34 3a 4c 25 3d 31 3a f2  |:X=2:Y=24:L%=1:.|
00001680  54 45 58 54 3a 54 4d 24  3d c3 28 bb 28 54 24 29  |TEXT:TM$=.(.(T$)|
00001690  29 3a e1 0d 05 3c 2e dd  f2 53 45 4c 45 43 54 3a  |):...<...SELECT:|
000016a0  45 44 25 3d 59 2b 28 4c  25 2d 31 29 3a 42 47 25  |ED%=Y+(L%-1):BG%|
000016b0  3d 58 2b 28 57 25 2d 31  29 3a 53 53 45 4c 25 3d  |=X+(W%-1):SSEL%=|
000016c0  31 0d 05 46 3e e3 49 3d  31 b8 4c 25 3a f1 8a 58  |1..F>.I=1.L%:..X|
000016d0  2c 59 2b 28 49 2d 31 29  29 3b 22 20 20 22 3b 4d  |,Y+(I-1));"  ";M|
000016e0  45 24 28 49 29 3b c4 28  57 25 2d 32 29 2d a9 28  |E$(I);.(W%-2)-.(|
000016f0  4d 45 24 28 49 29 29 2c  22 20 22 29 3a ed 49 0d  |ME$(I))," "):.I.|
00001700  05 50 2b c8 97 20 58 50  2c 59 50 2c 42 55 54 3a  |.P+.. XP,YP,BUT:|
00001710  58 50 3d a8 28 58 50 2f  31 36 29 3a 59 50 3d 33  |XP=.(XP/16):YP=3|
00001720  31 2d a8 28 59 50 2f 33  32 29 0d 05 5a 18 e7 59  |1-.(YP/32)..Z..Y|
00001730  50 3c 59 20 84 20 59 50  3e 45 44 25 8c e5 8d 44  |P<Y . YP>ED%...D|
00001740  46 45 0d 05 64 18 e7 58  50 3c 58 20 84 20 58 50  |FE..d..XP<X . XP|
00001750  3e 42 47 25 8c e5 8d 44  46 45 0d 05 6e 72 53 45  |>BG%...DFE..nrSE|
00001760  4c 25 3d 28 59 50 2d 59  29 2b 31 3a f2 43 4c 45  |L%=(YP-Y)+1:.CLE|
00001770  41 3a fb 20 31 33 31 3a  fb 31 32 37 3a f1 8a 58  |A:. 131:.127:..X|
00001780  2c 59 50 29 3b 22 20 20  22 3b 4d 45 24 28 53 45  |,YP);"  ";ME$(SE|
00001790  4c 25 29 3b c4 28 57 25  2d 32 29 2d a9 28 4d 45  |L%);.(W%-2)-.(ME|
000017a0  24 28 53 45 4c 25 29 29  2c 22 20 22 29 3a fb 20  |$(SEL%))," "):. |
000017b0  46 47 25 3a fb 31 32 37  3a e7 42 55 54 3d 34 8c  |FG%:.127:.BUT=4.|
000017c0  e5 8d 44 78 45 3a 8b e5  8d 44 50 45 0d 05 78 08  |..DxE:...DPE..x.|
000017d0  ef 37 3a e1 0d 05 82 52  dd f2 43 4c 45 41 3a e7  |.7:....R..CLEA:.|
000017e0  53 53 45 4c 25 3c 3e 53  45 4c 25 8c e3 49 3d 31  |SSEL%<>SEL%..I=1|
000017f0  b8 4c 25 3a f1 8a 58 2c  59 2b 28 49 2d 31 29 29  |.L%:..X,Y+(I-1))|
00001800  3b 22 20 20 22 3b 4d 45  24 28 49 29 3b c4 28 57  |;"  ";ME$(I);.(W|
00001810  25 2d 32 29 2d a9 28 4d  45 24 28 49 29 29 2c 22  |%-2)-.(ME$(I)),"|
00001820  20 22 29 3a ed 49 0d 05  8c 10 53 53 45 4c 25 3d  | "):.I....SSEL%=|
00001830  53 45 4c 25 3a e1 0d 05  96 05 fa 0d 05 a0 05 20  |SEL%:.......... |
00001840  0d 05 aa 05 20 0d 05 b4  05 20 0d 05 be 05 20 0d  |.... .... .... .|
00001850  05 c8 09 20 d9 20 23 30  0d 05 d2 0a 20 f2 51 75  |... . #0.... .Qu|
00001860  69 74 0d 05 dc 1d ef 33  3a d9 20 23 30 3a ef 32  |it.....3:. #0:.2|
00001870  36 3a e7 9f 3d 31 37 20  8c 20 f2 51 75 69 74 0d  |6:..=17 . .Quit.|
00001880  05 e6 10 e7 67 6f 25 3d  30 8c e5 8d 54 4e 46 0d  |....go%=0...TNF.|
00001890  05 f0 0b 46 47 25 3d 31  38 30 0d 05 fa 52 f2 45  |...FG%=180...R.E|
000018a0  52 57 49 4e 3a fb 31 38  30 3a f1 8a 32 30 2c 31  |RWIN:.180:..20,1|
000018b0  32 29 3b 22 53 79 73 74  65 6d 20 52 65 70 6f 72  |2);"System Repor|
000018c0  74 65 64 20 45 72 72 6f  72 20 23 22 3b 9f 3b 22  |ted Error #";.;"|
000018d0  3a 22 3b 8a 32 30 2c 31  34 29 3b f6 24 3a ef 37  |:";.20,14);.$:.7|
000018e0  3a fb 46 47 25 3a f2 4d  4b 4c 49 4b 0d 06 04 19  |:.FG%:.MKLIK....|
000018f0  ff 22 43 4c 4f 53 45 22  3a ef 33 3a ef 32 36 3a  |."CLOSE":.3:.26:|
00001900  e5 8d 54 70 42 0d 06 0e  7b f2 45 52 57 49 4e 3a  |..TpB...{.ERWIN:|
00001910  fb 31 38 30 3a f1 8a 32  30 2c 31 32 29 3b 22 43  |.180:..20,12);"C|
00001920  61 6e 6e 6f 74 20 72 65  61 64 20 74 68 65 20 66  |annot read the f|
00001930  69 6c 65 20 3a 22 3b 46  49 24 3b 8a 32 30 2c 31  |ile :";FI$;.20,1|
00001940  34 29 3b 22 28 64 6f 65  73 20 6e 6f 74 20 65 78  |4);"(does not ex|
00001950  69 73 74 2f 6e 6f 74 20  61 20 44 61 74 61 56 69  |ist/not a DataVi|
00001960  73 69 6f 6e 20 66 69 6c  65 29 22 3a fb 46 47 25  |sion file)":.FG%|
00001970  3a ef 37 3a f2 4d 4b 4c  49 4b 3a e5 8d 74 60 45  |:.7:.MKLIK:..t`E|
00001980  0d 06 18 09 dd f2 53 45  4c 0d 06 22 6f fb 31 32  |......SEL.."o.12|
00001990  38 3a 46 47 25 3d 31 32  38 3a 58 3d 35 30 3a 59  |8:FG%=128:X=50:Y|
000019a0  3d 32 3a 57 25 3d 32 31  3a 4c 25 3d 32 33 3a f2  |=2:W%=21:L%=23:.|
000019b0  4c 57 4e 3a fb 46 47 25  3a f1 8a 35 31 2c 33 29  |LWN:.FG%:..51,3)|
000019c0  3b 22 53 65 6c 65 63 74  20 61 20 46 69 65 6c 64  |;"Select a Field|
000019d0  3a 20 22 3b bd 28 31 33  38 29 3b 22 20 22 3b bd  |: ";.(138);" ";.|
000019e0  28 31 33 39 29 3b 8a 35  31 2c 34 29 3b c4 32 31  |(139);.51,4);.21|
000019f0  2c bd 28 32 34 31 29 29  0d 06 2c 36 53 53 46 25  |,.(241))..,6SSF%|
00001a00  3d 31 3a 53 46 25 3d 31  3a 59 32 3d 36 3a 53 52  |=1:SF%=1:Y2=6:SR|
00001a10  25 3d 53 46 25 3a ff 22  43 4c 4f 53 45 22 3a 41  |%=SF%:."CLOSE":A|
00001a20  3d ad a4 4d 79 46 69 6c  65 28 46 4f 24 29 0d 06  |=..MyFile(FO$)..|
00001a30  36 21 46 52 25 3d 53 52  25 2b 31 39 3a e7 46 52  |6!FR%=SR%+19:.FR|
00001a40  25 3e 4e 4f 46 25 8c 46  52 25 3d 4e 4f 46 25 0d  |%>NOF%.FR%=NOF%.|
00001a50  06 40 7b 4c 3d 36 3a 4c  4c 3d 31 3a e3 49 3d 53  |.@{L=6:LL=1:.I=S|
00001a60  52 25 b8 46 52 25 3a cf  23 41 3d 28 49 2d 31 29  |R%.FR%:.#A=(I-1)|
00001a70  2a 36 31 2b 36 33 3a e8  23 41 2c 46 4c 24 3a f1  |*61+63:.#A,FL$:.|
00001a80  8a 35 32 2c 4c 29 3b 46  4c 24 3a 4d 45 24 28 4c  |.52,L);FL$:ME$(L|
00001a90  4c 29 3d 46 4c 24 3a 4c  3d 4c 2b 31 3a 4c 4c 3d  |L)=FL$:L=L+1:LL=|
00001aa0  4c 4c 2b 31 3a ed 49 3a  e7 20 4c 4c 3c 32 31 20  |LL+1:.I:. LL<21 |
00001ab0  8c 20 e3 20 49 3d 4c 4c  20 b8 32 30 3a 4d 45 24  |. . I=LL .20:ME$|
00001ac0  28 49 29 3d 22 20 22 3a  ed 49 0d 06 4a 2b c8 97  |(I)=" ":.I..J+..|
00001ad0  20 58 50 2c 59 50 2c 42  55 54 3a 58 50 3d a8 28  | XP,YP,BUT:XP=.(|
00001ae0  58 50 2f 31 36 29 3a 59  50 3d 33 31 2d a8 28 59  |XP/16):YP=31-.(Y|
00001af0  50 2f 33 32 29 0d 06 54  20 e7 58 50 3d 36 37 20  |P/32)..T .XP=67 |
00001b00  80 20 59 50 3d 33 20 80  20 42 55 54 3d 34 20 8c  |. YP=3 . BUT=4 .|
00001b10  e5 8d 44 7c 46 0d 06 5e  20 e7 58 50 3d 36 39 20  |..D|F..^ .XP=69 |
00001b20  80 20 59 50 3d 33 20 80  20 42 55 54 3d 34 20 8c  |. YP=3 . BUT=4 .|
00001b30  e5 8d 74 50 46 0d 06 68  40 e7 20 58 50 3e 37 31  |..tPF..h@. XP>71|
00001b40  20 84 20 58 50 3c 35 31  20 84 20 59 50 3e 32 35  | . XP<51 . YP>25|
00001b50  20 84 20 59 50 3c 36 20  8c 53 53 46 25 3d 30 3a  | . YP<6 .SSF%=0:|
00001b60  f2 43 4c 45 41 46 3a 53  53 46 25 3d 53 46 25 3a  |.CLEAF:SSF%=SF%:|
00001b70  e5 8d 44 4a 46 0d 06 72  72 59 50 3d 59 50 2d 35  |..DJF..rrYP=YP-5|
00001b80  3a 53 46 25 3d 28 59 50  2b 53 52 25 29 2d 31 3a  |:SF%=(YP+SR%)-1:|
00001b90  f2 43 4c 45 41 46 3a fb  31 33 31 3a f1 8a 35 32  |.CLEAF:.131:..52|
00001ba0  2c 59 50 2b 35 29 3b 4d  45 24 28 59 50 29 3b 89  |,YP+5);ME$(YP);.|
00001bb0  28 32 30 2d a9 28 4d 45  24 28 59 50 29 29 29 3a  |(20-.(ME$(YP))):|
00001bc0  fb 46 47 25 3a e7 42 55  54 3d 34 20 80 20 53 46  |.FG%:.BUT=4 . SF|
00001bd0  25 3c 28 4e 4f 46 25 2b  31 29 8c e5 8d 74 64 46  |%<(NOF%+1)...tdF|
00001be0  3a 8b e5 8d 44 4a 46 0d  06 7c 13 e7 46 52 25 3d  |:...DJF..|..FR%=|
00001bf0  4e 4f 46 25 8c e5 8d 44  4a 46 0d 06 86 6e 53 52  |NOF%...DJF...nSR|
00001c00  25 3d 53 52 25 2b 32 30  3a 58 3d 35 30 3a 59 3d  |%=SR%+20:X=50:Y=|
00001c10  32 3a 57 25 3d 32 31 3a  4c 25 3d 32 33 3a f2 4c  |2:W%=21:L%=23:.L|
00001c20  57 4e 3a f1 8a 35 31 2c  33 29 3b 22 53 65 6c 65  |WN:..51,3);"Sele|
00001c30  63 74 20 61 20 46 69 65  6c 64 3a 20 22 3b bd 28  |ct a Field: ";.(|
00001c40  31 33 38 29 3b 22 20 22  3b bd 28 31 33 39 29 3b  |138);" ";.(139);|
00001c50  8a 35 31 2c 34 29 3b c4  32 31 2c bd 28 32 34 31  |.51,4);.21,.(241|
00001c60  29 29 3a e5 8d 54 76 46  0d 06 90 10 e7 53 52 25  |)):..TvF.....SR%|
00001c70  3d 31 8c e5 8d 44 4a 46  0d 06 9a 6e 53 52 25 3d  |=1...DJF...nSR%=|
00001c80  53 52 25 2d 32 30 3a 58  3d 35 30 3a 59 3d 32 3a  |SR%-20:X=50:Y=2:|
00001c90  57 25 3d 32 31 3a 4c 25  3d 32 33 3a f2 4c 57 4e  |W%=21:L%=23:.LWN|
00001ca0  3a f1 8a 35 31 2c 33 29  3b 22 53 65 6c 65 63 74  |:..51,3);"Select|
00001cb0  20 61 20 46 69 65 6c 64  3a 20 22 3b bd 28 31 33  | a Field: ";.(13|
00001cc0  38 29 3b 22 20 22 3b bd  28 31 33 39 29 3b 8a 35  |8);" ";.(139);.5|
00001cd0  31 2c 34 29 3b c4 32 31  2c bd 28 32 34 31 29 29  |1,4);.21,.(241))|
00001ce0  3a e5 8d 54 76 46 0d 06  a4 79 ef 37 3a cf 23 41  |:..TvF...y.7:.#A|
00001cf0  3d 28 53 46 25 2d 31 29  2a 36 31 2b 36 33 3a e8  |=(SF%-1)*61+63:.|
00001d00  23 41 2c 46 4c 24 3a cf  23 41 3d 28 53 46 25 2d  |#A,FL$:.#A=(SF%-|
00001d10  31 29 2a 36 31 2b 31 30  31 3a e8 23 41 2c 54 59  |1)*61+101:.#A,TY|
00001d20  24 3a cf 23 41 3d 28 53  46 25 2d 31 29 2a 36 31  |$:.#A=(SF%-1)*61|
00001d30  2b 31 31 37 3a e8 23 41  2c 54 52 24 3a fb 46 47  |+117:.#A,TR$:.FG|
00001d40  25 3a 46 47 25 3d 31 38  30 3a f5 3a c8 97 20 55  |%:FG%=180:.:.. U|
00001d50  2c 55 2c 42 55 54 3a fd  42 55 54 3d 30 3a e1 0d  |,U,BUT:.BUT=0:..|
00001d60  06 ae 42 dd f2 43 4c 45  41 46 3a e7 53 53 46 25  |..B..CLEAF:.SSF%|
00001d70  3c 3e 53 46 25 8c e3 49  3d 31 b8 32 30 3a f1 8a  |<>SF%..I=1.20:..|
00001d80  35 32 2c 49 2b 35 29 3b  4d 45 24 28 49 29 3b 89  |52,I+5);ME$(I);.|
00001d90  28 32 30 2d a9 28 4d 45  24 28 49 29 29 29 3a ed  |(20-.(ME$(I))):.|
00001da0  49 0d 06 b8 0e 53 53 46  25 3d 53 46 25 3a e1 0d  |I....SSF%=SF%:..|
00001db0  06 c2 2c dd f2 59 4e 3a  78 70 3d b1 3a 79 70 3d  |..,..YN:xp=.:yp=|
00001dc0  bc 3a f1 22 20 22 3b 3a  fb 31 33 31 3a f1 22 59  |.:." ";:.131:."Y|
00001dd0  45 53 2f 4e 4f 22 3a fb  46 47 25 0d 06 cc 38 c8  |ES/NO":.FG%...8.|
00001de0  97 20 58 50 2c 59 50 2c  42 55 54 3a 58 50 3d a8  |. XP,YP,BUT:XP=.|
00001df0  28 58 50 2f 31 36 29 3a  59 50 3d 33 31 2d a8 28  |(XP/16):YP=31-.(|
00001e00  59 50 2f 33 32 29 3a e7  42 55 54 3d 30 8c e5 8d  |YP/32):.BUT=0...|
00001e10  64 4c 46 0d 06 d6 12 e7  59 50 3c 3e 79 70 20 8c  |dLF.....YP<>yp .|
00001e20  e5 8d 64 4c 46 0d 06 e0  2b e7 58 50 3d 78 70 2b  |..dLF...+.XP=xp+|
00001e30  31 20 84 20 58 50 3d 78  70 2b 32 20 84 20 58 50  |1 . XP=xp+2 . XP|
00001e40  3d 78 70 2b 33 8c 59 4e  3d 31 3a e5 8d 64 7e 46  |=xp+3.YN=1:..d~F|
00001e50  0d 06 ea 22 e7 58 50 3d  78 70 2b 35 20 84 20 58  |...".XP=xp+5 . X|
00001e60  50 3d 78 70 2b 36 20 8c  59 4e 3d 30 3a e5 8d 64  |P=xp+6 .YN=0:..d|
00001e70  7e 46 0d 06 f4 09 e5 8d  64 4c 46 0d 06 fe 2f f1  |~F......dLF.../.|
00001e80  8a 78 70 2c 79 70 29 3b  22 20 59 45 53 2f 4e 4f  |.xp,yp);" YES/NO|
00001e90  22 3a ef 37 3a f5 3a c8  97 20 55 2c 55 2c 42 55  |":.7:.:.. U,U,BU|
00001ea0  54 3a fd 42 55 54 3d 30  3a e1 0d 07 08 14 dd 20  |T:.BUT=0:...... |
00001eb0  a4 4d 79 46 69 6c 65 28  66 69 6c 65 24 29 0d 07  |.MyFile(file$)..|
00001ec0  12 0a 3d 66 69 6c 65 24  0d 07 1c 0b dd 20 f2 51  |..=file$..... .Q|
00001ed0  75 69 74 0d 07 26 1e c8  99 20 22 57 69 6d 70 5f  |uit..&... "Wimp_|
00001ee0  43 6f 6d 6d 61 6e 64 57  69 6e 64 6f 77 22 2c 2d  |CommandWindow",-|
00001ef0  31 0d 07 30 06 c8 98 0d  07 3a 05 e1 0d 9c 40 0d  |1..0.....:....@.|
00001f00  dd f2 44 69 72 28 64 24  29 0d 9c 4a 29 e7 20 64  |..Dir(d$)..J). d|
00001f10  24 20 3c 3e 20 22 22 20  8c 20 ff 20 22 44 69 72  |$ <> "" . . "Dir|
00001f20  20 22 2b a4 4d 79 46 69  6c 65 28 c1 64 24 2c 32  | "+.MyFile(.d$,2|
00001f30  29 29 0d 9c 54 05 e1 0d  ff                       |))..T....|
00001f39