Home » CEEFAX disks » telesoftware7.adl » 18-06-88/FOLIO

18-06-88/FOLIO

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 » CEEFAX disks » telesoftware7.adl
Filename: 18-06-88/FOLIO
Read OK:
File size: 2A5A bytes
Load address: FFFF1A00
Exec address: FFFF8023
Duplicates

There is 1 duplicate copy of this file in the archive:

File contents
   10REM"�**********************
   20REM"�*�PORTFOLIO�A Shares�*
   30REM"�*�simulation program�*
   40REM"�*�using live  CEEFAX�*
   50REM"�*�data  for  current�*
   60REM"�*�share price  info.�*
   70REM"�**********************
   80REM"�*�(c) J.J.Brayshaw  �*
   90REM"�*�June 1985         �*
  100REM"�**********************
  110REM"�*�VERS.5b�May 1987  �*
  120REM"�*�For use with ATS  �*
  130REM"�**********************
  140*TTXON
  150ONERROR PROCend(STR$(ERR)):END
  160MODE7:VDU14
  170VDU23;8202;0;0;0;
  180IF NOT FNadapter PROCend("Sorry, not receiving teletext"):END
  190DIMshare$(170),quantity%(170),paid(170),price(170),lowest(170),highest(170)
  200space=&900
  210PROCset_up
  220PROCgetdata
  230ONERROR PROCend(STR$(ERR)):END
  240REPEAT
  250PROCmenu
  260UNTILQ%=53
  270PROCsave
  280PROCend("")
  290PRINT"�Run again with a different"'"�data file?�(Y/N)�";
  300REPEAT:Q%=GET AND&DF:UNTILQ%=89 ORQ%=78
  310IFQ%=78 PRINT"No."''':END
  320PROCset_up:PROCread_file
  330GOTO230
  340REM"�****
  350DEFPROCinterpret_page(s_p)
  360start%=&7C00+(6*40)+1
  370FORB%=start%TOstart%+&2A8:?B%=?B%AND&7F:NEXT
  380FORitem%=(s_p*28)-28+1TO(s_p*28)
  390S%=&950:?(S%+7)=&D
  400FORletter=0TO6:IF?(start%+letter)<32 ?(S%+letter)=32 ELSE?(S%+letter)=?(start%+letter)
  410NEXT
  420share$(item%)=$S%
  430price%=start%+6:REPEAT:price%=price%+1:UNTILVAL(CHR$?price%)<>0
  440half=0:price$="":FORB%=price%TOprice%+6:price$=price$+CHR$(?B%):IF?B%=92 half=0.5
  450IF?B%=123 half=0.25
  460IF?B%=125 half=0.75
  470NEXT
  480price(item%)=VAL(price$)+half
  490lowest(item%)=price(item%):highest(item%)=price(item%)
  500start%=start%+20
  510NEXT
  520ENDPROC
  530REM"�****
  540DEFPROCget_page(sub_page)
  550*BBC1
  560PROCoscli("PAGE 130000"+STR$(sub_page))
  570*TRANSFER 7C00
  580PROCheading(FALSE)
  590PROCinterpret_page(sub_page)
  600date$=FNBBCdate:IFdate$="" date$="Not available":J%=0
  610now_date%=J%:first_date%=J%
  620ENDPROC
  630REM"�****
  640DEFPROCshow_info
  650*FX4,1
  660R%=1:REPEAT
  670PROCheading(-1)
  680VDU11,11
  690PRINT"� Shares     Current  Maximum   Minimum  �Available  Cost     Price     Price"
  700FORno%=R% TO(R%+15):IFno%=169 no%=R%+15:GOTO720
  710PRINT;"�";no%;"�";TAB(5);share$(no%);TAB(13);price(no%);TAB(23)highest(no%);TAB(33)lowest(no%)
  720NEXT
  730PRINTTAB(0,24)"�More-�Arrow keys:�[�Back:�]�Fwd:�^�End";
  740Q%=GET:IFQ%=136 R%=R%-16 ELSEIFQ%=137 R%=R%+16 ELSEIFQ%=139 GOTO760 ELSEGOTO740
  750IFR%>161 R%=161 ELSEIFR%<1 R%=1
  760UNTILQ%=139
  770*FX4,0
  780ENDPROC
  790REM"�****
  800DEFPROCgetdata
  810PROCheading(-1)
  820PRINT'"�Start a new game         �Press�N"''"�Continue an existing game�Press�C"
  830PRINT'"�List existing data files� Press�F"
  840REPEAT:G%=GET OR&20:UNTILG%=99 ORG%=110 ORG%=102
  850PROCheading(-1)
  860IFG%=102 PROClist_files:GOTO810
  870PRINT'"�Waiting for current�CEEFAX�shares"'"�information ...";
  880*TELESOFT
  890VDU30,132,157,129:PRINT"***   ":*HON
  900FORsub_page=1TO6
  910PROCget_page(sub_page)
  920NEXT
  930*HOFF
  940IFNOTFNcheck_data PROCheading(-1):GOTO870
  950IFG%=99 PROCread_file:ENDPROC
  960FORitem%=1TO168:highest(item%)=price(item%):lowest(item%)=price(item%):NEXT
  970ENDPROC
  980REM"�****
  990DEFPROCread_file
 1000name$=FNget_filename
 1010data%=OPENUP(name$)
 1020IFdata%=0 PRINT"�File�";name$;"�not found.":PROCwait:PROClist_files:name$="":GOTO1000
 1030PROCheading(TRUE):PRINT"�Reading file�";name$'
 1040INPUT#data%,cash%,commission%,first_date%
 1050FORQ%=1TO168:INPUT#data%,share$(0),price(0)
 1060O%=0:REPEAT:O%=O%+1:UNTILshare$(O%)=share$(0) ORO%=169
 1070IFO%=169 O%=0
 1080INPUT#data%,quantity%(O%),paid(O%),highest(O%),lowest(O%)
 1090IFO%=0 ANDquantity%(0)<>0 PROCcomp_sell:GOTO1130
 1100IFquantity%(O%)<>0 assets%=assets%+(quantity%(O%)*price(O%))
 1110IFprice(O%)<lowest(O%) lowest(O%)=price(O%)
 1120IFprice(O%)>highest(O%) highest(O%)=price(O%)
 1130NEXT
 1140IFfirst_date%=0 first_date%=now_date%-1
 1150CLOSE#data%
 1160PRINT'"�Loaded. Please press a key.":REPEATUNTILGET
 1170ENDPROC
 1180REM"�****
 1190DEFPROCheading(C%):IFC% CLS
 1200IFNOTC%:PRINTTAB(0,20)SPC(39)'SPC(39):FORK%=1TO2:PRINTCHR$132;CHR$157;CHR$141;"�Reading share prices - please wait ":NEXT:VDU30,132,157:PRINT"�***  ";
 1210PRINT'CHR$147;SPC9;"<,,l      jp j!   j_";SPC10;
 1220VDU132,157,129:PRINT"(C)JJB";CHR$147;"=,,.j`kj``j (n,j`kjhj`k";CHR$129;"1985"
 1230PRINTCHR$147;SPC9;"%   *,.*  *, z *,.***,."'''
 1240IFNOTC% PRINTTAB(0,4)"  "
 1250ENDPROC
 1260REM"�****
 1270DEFPROCmenu
 1280PROCheading(-1)
 1290VDU11,11:PRINT"�";date$
 1300PRINT"�Length of game so far:�";now_date%-first_date%+1;" day";:IFnow_date%=first_date% PRINT"." ELSEPRINT"s."
 1310PRINT'"�Current available funds:�"TAB(38-LEN(FNpound(cash%)))"`";FNpound(cash%)
 1320PRINT"�Current assets:�"TAB(38-LEN(FNpound(assets%)))"`";FNpound(assets%)
 1330PRINTTAB(0,19);
 1340FORQ%=1TO2:PRINTCHR$141;"�Current overall ";:IFcash%+assets%-init%<0 PRINT"loss:�  "; ELSEPRINT"gain:�  ";
 1350PRINTTAB(37-LEN(FNpound(ABS(cash%+assets%-init%))))"`";FNpound(ABS(cash%+assets%-init%))
 1360NEXT
 1370PRINT" �Less commission:�";TAB(37-LEN(FNpound(commission%)))"`";FNpound(commission%)'"� Net ";
 1380amm%=cash%+assets%-init%-commission%:l%=LEN(FNpound(ABS(amm%)))
 1390IFamm%<0 PRINT"loss:�"TAB(37-l%);"`";FNpound(ABS(amm%)) ELSEPRINT"gain:�"TAB(37-l%);"`";FNpound(ABS(amm%))
 1400PRINTTAB(4,11)CHR$148;STRING$(30,CHR$124)
 1410PRINTSPC4CHR$148;CHR$255;"�1.�List shares available  ";CHR$148;CHR$255
 1420PRINTSPC4;CHR$148;CHR$255;"�2.�List current portfolio ";CHR$148;CHR$255
 1430PRINTSPC4;CHR$148;CHR$255;"�3.�Buy shares";SPC13;CHR$148;CHR$255
 1440PRINTSPC4;CHR$148;CHR$255;"�4.�Sell shares"SPC12;CHR$148;CHR$255
 1450PRINTSPC4;CHR$148;CHR$255;"�5.�End";SPC20;CHR$148;CHR$255
 1460PRINTSPC4;CHR$148;STRING$(30,CHR$47)
 1470REPEAT:Q%=GET:UNTILQ%>48 ANDQ%<54
 1480IFQ%=49 PROCshow_info
 1490IFQ%=50 PROCportfolio
 1500IFQ%=51 PROCbuy
 1510IFQ%=52 PROCsell
 1520ENDPROC
 1530REM"�****
 1540DEFFNget_filename
 1550IFname$<>"" =name$
 1560PROCheading(-1)
 1570PRINT"�Please enter the name of the disc"'"�data file�(Max. 7 characters)�or"
 1580PRINT"�enter�'F'�for a list of data files"'"�on this disc:�";
 1590INPUT""filename$:IFfilename$="F" PROClist_files:GOTO1560
 1600IFfilename$="" GOTO1560
 1610IFLEN(filename$)>7 ORINSTR(filename$,".")<>0 ORINSTR(filename$,"-")<>0 GOTO1560
 1620="D."+filename$
 1630REM"�****
 1640DEFPROCsave
 1650name$=FNget_filename
 1660data%=OPENOUT(name$)
 1670PRINT#data%,cash%,commission%,first_date%
 1680FORQ%=1TO168:PRINT#data%,share$(Q%),price(Q%),quantity%(Q%),paid(Q%),highest(Q%),lowest(Q%):NEXT
 1690CLOSE#data%
 1700ENDPROC
 1710REM"�****
 1720DEFPROCportfolio
 1730PROCheading(-1):got%=0
 1740PRINT"�Current holdings:"'CHR$145"`````````````````"
 1750PRINT"�Share"TAB(10)"Orig"TAB(18)"Unit"TAB(24)"Curr"TAB(30)"Current"
 1760PRINT"�name"TAB(10)"price"TAB(18)"Qty"TAB(24)"price"TAB(30)"Value"
 1770VDU28,0,24,39,11
 1780FORQ%=1TO168
 1790IFquantity%(Q%)<>0 am=quantity%(Q%)*price(Q%):am$=FNpound(am):tab%=LEN(am$):IFRIGHT$(am$,1)=CHR$92 tab%=LEN(am$)-1
 1800IFquantity%(Q%)<>0 PRINT"�";share$(Q%);TAB(10);paid(Q%);TAB(18);quantity%(Q%);TAB(24);price(Q%);TAB(37-tab%);am$:got%=got%+1
 1810IFgot%=12 PROCwait:VDU28,0,24,39,11:CLS:got%=0
 1820NEXT
 1830PROCwait
 1840VDU26
 1850ENDPROC
 1860REM"�****
 1870DEFPROCbuy
 1880PROCheading(-1)
 1890VDU11,11:PRINT"�Buy shares:"'CHR$148"```````````"
 1900INPUT"�Enter share name or number:�"sh_no$:IFsh_no$="" ENDPROC
 1910sh_no%=FNfind_no(sh_no$)
 1920IFsh_no%=0 PRINT"�Shares not listed.":GOTO2080
 1930PRINT"�";share$(sh_no%);"  �Price:�";price(sh_no%)
 1940PRINT"�Current holdings:�";quantity%(sh_no%)'"�Funds allow up to�";INT(cash%/price(sh_no%));"�shares."
 1950INPUT"�Quantity required:�"quant%
 1960IFcash%<(quant%*price(sh_no%)) PRINT"�You haven't enough funds !!":GOTO2080
 1970PRINT'"�";quant%;"�";share$(sh_no%);"�shares @�";price(sh_no%)''"�Total�`";FNpound(quant%*price(sh_no%));"p."'
 1980c%=FNcommission(quant%*price(sh_no%))
 1990PRINT"�( Commission:�`";FNpound(c%);"�)"
 2000PRINT'"�Correct?�(Y/N) ";
 2010REPEAT:y=GET:UNTILy=78ORy=89
 2020IFy=89 ANDquant%=0 VDU13:PRINT"�No shares required.":GOTO2080
 2030VDU13:IFy=89 PRINT"�Purchase confirmed." ELSE PRINT"�Purchase cancelled.":GOTO2080
 2040cash%=cash%-(quant%*price(sh_no%)):quantity%(sh_no%)=quantity%(sh_no%)+quant%
 2050commission%=commission%+c%
 2060IFpaid(sh_no%)<>0 paid(sh_no%)=INT(((paid(sh_no%)+price(sh_no%))/2)*100)/100 ELSEpaid(sh_no%)=price(sh_no%)
 2070assets%=assets%+(quant%*price(sh_no%))
 2080PROCwait
 2090ENDPROC
 2100REM"�****
 2110DEFPROCsell
 2120PROCheading(-1)
 2130VDU11,11:PRINT"�Sell shares:"'CHR$148"````````````"
 2140INPUT"�Enter share name or number:�"sh_no$:IFsh_no$="" ENDPROC
 2150sh_no%=FNfind_no(sh_no$)
 2160IFsh_no%=0 PRINT"�Shares not listed.":GOTO2320
 2170PRINT"�";share$(sh_no%);"  �Price:�";price(sh_no%)
 2180PRINT"�Number held:�";quantity%(sh_no%)'"�Market price�";price(sh_no%)
 2190INPUT''"�Number to be sold:�"quant%
 2200IFquant%>quantity%(sh_no%) PRINT"�You don't have that many !!":PROCwait:ENDPROC
 2210PRINT'"�";quant%;"�";share$(sh_no%);"�shares @�";price(sh_no%);''"�Total�`"FNpound(quant%*price(sh_no%));"p."'
 2220c%=FNcommission(quant%*price(sh_no%))
 2230PRINT"�( Commission:�`";FNpound(c%);"�)"
 2240PRINT'"�Correct?�(Y/N) ";
 2250REPEAT:y=GET:UNTILy=78ORy=89
 2260IFquant%=0 ANDy=89 VDU13:PRINT"�Sale not required.":GOTO2320
 2270VDU13:IFy=89 PRINT"�Sale confirmed." ELSE PRINT"�Sale cancelled.":GOTO2320
 2280cash%=cash%+(price(sh_no%)*quant%):quantity%(sh_no%)=quantity%(sh_no%)-quant%
 2290commission%=commission%+1000
 2300IFquantity%(sh_no%)=0 paid(sh_no%)=0
 2310assets%=assets%-(price(sh_no%)*quant%)
 2320PROCwait
 2330ENDPROC
 2340REM"�****
 2350DEFPROCwait
 2360*FX15,1
 2370VDU26
 2380PRINTTAB(0,24)"�Press�SPACE�to continue ";:REPEAT UNTILGET=32
 2390ENDPROC
 2400REM"�****
 2410DEFFNfind_no(A$)
 2420IFVAL(A$)>0 ANDVAL(A$)<169 =VAL(A$)
 2430A1$="":IFLEN(A$)>7 A$=LEFT$(A$,7)
 2440FORbit=1TOLEN(A$):A1$=A1$+CHR$(ASC(MID$(A$,bit,1))OR&20):NEXT
 2450count%=0:REPEAT:count%=count%+1
 2460sh$="":FORbit=1TO7:sh$=sh$+CHR$(ASC(MID$(share$(count%),bit,1))OR&20):NEXT
 2470UNTILcount%=168 ORLEFT$(sh$,LEN(A$))=A1$
 2480IFLEFT$(sh$,LEN(A$))=A1$ =count% ELSE=0
 2490REM"�****
 2500DEFFNpound(val)
 2510val%=val
 2520IFval%=0 ="0-00"
 2530a=LEN(STR$(val%)):IFa=2 a$="0-"+STR$(val%):GOTO2570
 2540IFa=1 a$="0-0"+STR$(val%):GOTO2570
 2550a$=LEFT$(STR$(val%),LEN(STR$(val%))-2)+"-"
 2560a$=a$+RIGHT$(STR$(val%),2)
 2570IFval%=val-.5 a$=a$+"\"
 2580=a$
 2590REM"�****
 2600DEFPROCend(line$)
 2610ONERROROFF:VDU6,26:*FX4,0
 2620PROCheading(-1)
 2630PRINTTAB(0,24)CHR$132;CHR$157;CHR$129;SPC14;"(c)J.J.Brayshaw 1985";
 2640IFline$<>"" GOTO2670
 2650PRINTTAB(0,9)"�Data saved under filename�";name$'''
 2660GOTO2690
 2670err=VAL(line$):IFerr<>0 line$="Error number�"+line$+"�at line�"+STR$(ERL)
 2680PRINTTAB(0,9)"�Sorry..."''"�";line$''"�Program terminated."''
 2690ENDPROC
 2700REM"�****
 2710DEFPROClist_files:LOCALa,no%
 2720PROCheading(-1)
 2730VDU21:*CAT
 2740VDU6
 2750a=FALSE:no%=&E00
 2760PRINT"�Data files:"'CHR$148"```````````"
 2770REPEAT:no%=no%+8
 2780IF((?(no%+7))AND&7F)=68 PRINTSPC5"�";FNget_names(no%):a=TRUE
 2790UNTIL?(no%)=0
 2800IFa=FALSE PRINT"�There are no data files on this disc."
 2810PROCwait
 2820ENDPROC
 2830REM"�****
 2840DEFFNget_names(S%):LOCALL$,I%
 2850L$=""
 2860FORI%=S%TOS%+6
 2870L$=L$+CHR$(?(I%))
 2880NEXT
 2890=L$
 2900REM"�****
 2910DEFFNcheck_data
 2920Q%=0:REPEAT:Q%=Q%+1:UNTILshare$(Q%)="       " ORprice(Q%)=0 ORQ%=168:IFshare$(Q%)<>"       " ANDprice(Q%)<>0 =TRUE
 2930PROCheading(-1):PRINT"�Check shows some errors in the"'"�reception of the data from�CEEFAX."''"�Another try?�(Y/N)";
 2940REPEAT:Q%=GET AND&DF:UNTILQ%=89 ORQ%=78
 2950IFQ%=78 =TRUE ELSE=FALSE
 2960REM"�****
 2970DEFPROCset_up
 2980name$="":init%=1000000:cash%=init%:assets%=0:commission%=0
 2990ENDPROC
 3000REM"�****
 3010DEFFNcommission(amount%)
 3020LOCALcom%
 3030com%=amount%*0.007
 3040IFcom%<1000 com%=1000
 3050=com%
 3060REM"�****
 3070DEFPROCoscli(lin$)
 3080X%=space MOD256:Y%=space DIV256
 3090$space=lin$
 3100CALL&FFF7
 3110ENDPROC
 3120REM"�****
 3130DEFPROCcomp_sell
 3140PRINT"�***�";share$(0);"�no longer listed."
 3150PRINT"�";quantity%(0);"�shares sold @�";price(0);"�`";INT(quantity%(0)*price(0))/100
 3160cash%=cash%+(quantity%(0)*price(0))
 3170ENDPROC
 3180REM"�****************
 3190DEFFNBBCdate
 3200REM"�DATE WITH ATS
 3210*BBC1
 3220TIME=0:REPEATUNTILTIME>120
 3230work%=&7000
 3240A%=&7A:X%=work%MOD256:Y%=work%DIV256:?work%=15:CALL&FFF1
 3250BB1$=RIGHT$(STR$~(work%?8),1)
 3260BB2$=STR$~(work%?9):IF LEN(BB2$)=1 BB2$="0"+BB2$
 3270BB3$=STR$~(work%?10):IF LEN(BB3$)=1 BB3$="0"+BB3$
 3280JD=VAL(BB1$+BB2$+BB3$)
 3290J%=JD
 3300Y1=(100*(JD-15078.2))DIV36525
 3310M1=INT((JD-14956.1-INT(365.25*Y1))/30.6001)
 3320D%=JD-14956-INT(365.25*Y1)-INT(30.6*M1):K=INT(0.7+(1/(17-M1)))
 3330M%=M1-1-12*K
 3340Z%=Y1+K
 3350W%=(JD+3)MOD7:RESTORE3360:FORday=0TOW%:READD$:NEXT:D$=D$+"day"
 3360DATA Sun,Mon,Tues,Wednes,Thurs,Fri,Satur
 3370RESTORE3380:FORday=1TOM%:READmonth$:NEXT
 3380DATA January,February,March,April,May,June,July,August,September,October,November,December
 3390IFD%=1ORD%=21ORD%=31 th$="st." ELSEIFD%=2ORD%=22 th$="nd." ELSEIFD%=3ORD%=23 th$="rd." ELSEth$="th."
 3400=D$+"  "+STR$(D%)+th$+" "+month$+" 19"+STR$(Z%)
 3410REM"�****
 3420DEFFNadapter:DIM work% 2
 3430A%=&7A:X%=work%MOD256:Y%=work%DIV256:?work%=17:CALL&FFF1:IFwork%?1=0 =TRUE ELSE =FALSE

�"�**********************
�"�*�PORTFOLIO�A Shares�*
�"�*�simulation program�*
(�"�*�using live  CEEFAX�*
2�"�*�data  for  current�*
<�"�*�share price  info.�*
F�"�**********************
P�"�*�(c) J.J.Brayshaw  �*
Z�"�*�June 1985         �*
d�"�**********************
n�"�*�VERS.5b�May 1987  �*
x�"�*�For use with ATS  �*
��"�**********************
�
*TTXON
�� �end(�(�)):�
�
�7:�14
��23;8202;0;0;0;
�8� � �adapter �end("Sorry, not receiving teletext"):�
�M�share$(170),quantity%(170),paid(170),price(170),lowest(170),highest(170)
�space=&900
��set_up
��getdata
�� �end(�(�)):�
��
�	�menu

�Q%=53
	�save
�end("")
"8�"�Run again with a different"'"�data file?�(Y/N)�";
,�:Q%=� �&DF:�Q%=89 �Q%=78
6�Q%=78 �"No."''':�
@�set_up:�read_file
J	�df@
T�"�****
^��interpret_page(s_p)
hstart%=&7C00+(6*40)+1
r(�B%=start%�start%+&2A8:?B%=?B%�&7F:�
|!�item%=(s_p*28)-28+1�(s_p*28)
�S%=&950:?(S%+7)=&D
�S�letter=0�6:�?(start%+letter)<32 ?(S%+letter)=32 �?(S%+letter)=?(start%+letter)
��
�share$(item%)=$S%
�5price%=start%+6:�:price%=price%+1:��(�?price%)<>0
�Nhalf=0:price$="":�B%=price%�price%+6:price$=price$+�(?B%):�?B%=92 half=0.5
��?B%=123 half=0.25
��?B%=125 half=0.75
��
�price(item%)=�(price$)+half
�:lowest(item%)=price(item%):highest(item%)=price(item%)
�start%=start%+20
��
�
�"�****
��get_page(sub_page)
&	*BBC1
0%�oscli("PAGE 130000"+�(sub_page))
:*TRANSFER 7C00
D�heading(�)
N�interpret_page(sub_page)
X7date$=�BBCdate:�date$="" date$="Not available":J%=0
bnow_date%=J%:first_date%=J%
l�
v�"�****
���show_info
�
*FX4,1
�
R%=1:�
��heading(-1)
�
�11,11
�T�"� Shares     Current  Maximum   Minimum  �Available  Cost     Price     Price"
�-�no%=R% �(R%+15):�no%=169 no%=R%+15:�dPB
�R�;"�";no%;"�";�5);share$(no%);�13);price(no%);�23)highest(no%);�33)lowest(no%)
��
�5�0,24)"�More-�Arrow keys:�[�Back:�]�Fwd:�^�End";
�AQ%=�:�Q%=136 R%=R%-16 ��Q%=137 R%=R%+16 ��Q%=139 �dxB ��ddB
��R%>161 R%=161 ��R%<1 R%=1
��Q%=139

*FX4,0
�
�"�****
 
��getdata
*�heading(-1)
4P�'"�Start a new game         �Press�N"''"�Continue an existing game�Press�C"
>*�'"�List existing data files� Press�F"
H&�:G%=� �&20:�G%=99 �G%=110 �G%=102
R�heading(-1)
\�G%=102 �list_files:�TjC
f>�'"�Waiting for current�CEEFAX�shares"'"�information ...";
p
*TELESOFT
z"�30,132,157,129:�"***   ":*HON
��sub_page=1�6
��get_page(sub_page)
��
�	*HOFF
�$笤check_data �heading(-1):�DfC
��G%=99 �read_file:�
�I�item%=1�168:highest(item%)=price(item%):lowest(item%)=price(item%):�
��
��"�****
���read_file
�name$=�get_filename
�data%=�(name$)
�K�data%=0 �"�File�";name$;"�not found.":�wait:�list_files:name$="":�dhC
(�heading(�):�"�Reading file�";name$'
)�#data%,cash%,commission%,first_date%
(�Q%=1�168:�#data%,share$(0),price(0)
$0O%=0:�:O%=O%+1:�share$(O%)=share$(0) �O%=169
.�O%=169 O%=0
89�#data%,quantity%(O%),paid(O%),highest(O%),lowest(O%)
B+�O%=0 �quantity%(0)<>0 �comp_sell:�DjD
L?�quantity%(O%)<>0 assets%=assets%+(quantity%(O%)*price(O%))
V.�price(O%)<lowest(O%) lowest(O%)=price(O%)
`0�price(O%)>highest(O%) highest(O%)=price(O%)
j�
t*�first_date%=0 first_date%=now_date%-1
~�#data%
�(�'"�Loaded. Please press a key.":���
��
��"�****
���heading(C%):�C% �
�s�C%:�0,20)�(39)'�(39):�K%=1�2:�132;�157;�141;"�Reading share prices - please wait ":�:�30,132,157:�"�***  ";
�)�'�147;�9;"<,,l      jp j!   j_";�10;
�E�132,157,129:�"(C)JJB";�147;"=,,.j`kj``j (n,j`kjhj`k";�129;"1985"
�)�147;�9;"%   *,.*  *, z *,.***,."'''
��C% �0,4)"  "
��
��"�****
�
��menu
�heading(-1)

�11,11:�"�";date$
b�"�Length of game so far:�";now_date%-first_date%+1;" day";:�now_date%=first_date% �"." ��"s."
H�'"�Current available funds:�"�38-�(�pound(cash%)))"`";�pound(cash%)
(B�"�Current assets:�"�38-�(�pound(assets%)))"`";�pound(assets%)
2�0,19);
<X�Q%=1�2:�141;"�Current overall ";:�cash%+assets%-init%<0 �"loss:�  "; ��"gain:�  ";
FM�37-�(�pound(�(cash%+assets%-init%))))"`";�pound(�(cash%+assets%-init%))
P�
ZW�" �Less commission:�";�37-�(�pound(commission%)))"`";�pound(commission%)'"� Net ";
d>amm%=cash%+assets%-init%-commission%:l%=�(�pound(�(amm%)))
nV�amm%<0 �"loss:�"�37-l%);"`";�pound(�(amm%)) ��"gain:�"�37-l%);"`";�pound(�(amm%))
x�4,11)�148;�30,�124)
�8�4�148;�255;"�1.�List shares available  ";�148;�255
�9�4;�148;�255;"�2.�List current portfolio ";�148;�255
�0�4;�148;�255;"�3.�Buy shares";�13;�148;�255
�0�4;�148;�255;"�4.�Sell shares"�12;�148;�255
�)�4;�148;�255;"�5.�End";�20;�148;�255
��4;�148;�30,�47)
��:Q%=�:�Q%>48 �Q%<54
��Q%=49 �show_info
��Q%=50 �portfolio
��Q%=51 �buy
��Q%=52 �sell
��
��"�****
ݤget_filename
�name$<>"" =name$
�heading(-1)
"M�"�Please enter the name of the disc"'"�data file�(Max. 7 characters)�or"
,=�"�enter�'F'�for a list of data files"'"�on this disc:�";
61�""filename$:�filename$="F" �list_files:�TXF
@�filename$="" �TXF
JA�(filename$)>7 ��filename$,".")<>0 ��filename$,"-")<>0 �TXF
T="D."+filename$
^�"�****
h
��save
rname$=�get_filename
|data%=�(name$)
�)�#data%,cash%,commission%,first_date%
�Z�Q%=1�168:�#data%,share$(Q%),price(Q%),quantity%(Q%),paid(Q%),highest(Q%),lowest(Q%):�
��#data%
��
��"�****
���portfolio
��heading(-1):got%=0
�1�"�Current holdings:"'�145"`````````````````"
�8�"�Share"�10)"Orig"�18)"Unit"�24)"Curr"�30)"Current"
�6�"�name"�10)"price"�18)"Qty"�24)"price"�30)"Value"
��28,0,24,39,11
�
�Q%=1�168
�f�quantity%(Q%)<>0 am=quantity%(Q%)*price(Q%):am$=�pound(am):tab%=�(am$):��am$,1)=�92 tab%=�(am$)-1
o�quantity%(Q%)<>0 �"�";share$(Q%);�10);paid(Q%);�18);quantity%(Q%);�24);price(Q%);�37-tab%);am$:got%=got%+1
*�got%=12 �wait:�28,0,24,39,11:�:got%=0
�
&	�wait
0�26
:�
D�"�****
N	��buy
X�heading(-1)
b,�11,11:�"�Buy shares:"'�148"```````````"
l7�"�Enter share name or number:�"sh_no$:�sh_no$="" �
vsh_no%=�find_no(sh_no$)
�*�sh_no%=0 �"�Shares not listed.":�T`H
�2�"�";share$(sh_no%);"  �Price:�";price(sh_no%)
�d�"�Current holdings:�";quantity%(sh_no%)'"�Funds allow up to�";�(cash%/price(sh_no%));"�shares."
�!�"�Quantity required:�"quant%
�G�cash%<(quant%*price(sh_no%)) �"�You haven't enough funds !!":�T`H
�m�'"�";quant%;"�";share$(sh_no%);"�shares @�";price(sh_no%)''"�Total�`";�pound(quant%*price(sh_no%));"p."'
�(c%=�commission(quant%*price(sh_no%))
�'�"�( Commission:�`";�pound(c%);"�)"
��'"�Correct?�(Y/N) ";
��:y=�:�y=78�y=89
�5�y=89 �quant%=0 �13:�"�No shares required.":�T`H
�E�13:�y=89 �"�Purchase confirmed." � �"�Purchase cancelled.":�T`H
�Qcash%=cash%-(quant%*price(sh_no%)):quantity%(sh_no%)=quantity%(sh_no%)+quant%
commission%=commission%+c%
i�paid(sh_no%)<>0 paid(sh_no%)=�(((paid(sh_no%)+price(sh_no%))/2)*100)/100 �paid(sh_no%)=price(sh_no%)
*assets%=assets%+(quant%*price(sh_no%))
 	�wait
*�
4�"�****
>
��sell
H�heading(-1)
R.�11,11:�"�Sell shares:"'�148"````````````"
\7�"�Enter share name or number:�"sh_no$:�sh_no$="" �
fsh_no%=�find_no(sh_no$)
p*�sh_no%=0 �"�Shares not listed.":�TPI
z2�"�";share$(sh_no%);"  �Price:�";price(sh_no%)
�F�"�Number held:�";quantity%(sh_no%)'"�Market price�";price(sh_no%)
�#�''"�Number to be sold:�"quant%
�E�quant%>quantity%(sh_no%) �"�You don't have that many !!":�wait:�
�m�'"�";quant%;"�";share$(sh_no%);"�shares @�";price(sh_no%);''"�Total�`"�pound(quant%*price(sh_no%));"p."'
�(c%=�commission(quant%*price(sh_no%))
�'�"�( Commission:�`";�pound(c%);"�)"
��'"�Correct?�(Y/N) ";
��:y=�:�y=78�y=89
�4�quant%=0 �y=89 �13:�"�Sale not required.":�TPI
�=�13:�y=89 �"�Sale confirmed." � �"�Sale cancelled.":�TPI
�Qcash%=cash%+(price(sh_no%)*quant%):quantity%(sh_no%)=quantity%(sh_no%)-quant%
� commission%=commission%+1000
�'�quantity%(sh_no%)=0 paid(sh_no%)=0
	*assets%=assets%-(price(sh_no%)*quant%)
		�wait
	�
	$�"�****
	.
��wait
	8*FX15,1
	B�26
	L/�0,24)"�Press�SPACE�to continue ";:� ��=32
	V�
	`�"�****
	jݤfind_no(A$)
	t�(A$)>0 ��(A$)<169 =�(A$)
	~A1$="":�(A$)>7 A$=�A$,7)
	�/�bit=1��(A$):A1$=A1$+�(�(�A$,bit,1))�&20):�
	�count%=0:�:count%=count%+1
	�>sh$="":�bit=1�7:sh$=sh$+�(�(�share$(count%),bit,1))�&20):�
	� �count%=168 ��sh$,�(A$))=A1$
	� �sh$,�(A$))=A1$ =count% �=0
	��"�****
	�ݤpound(val)
	�val%=val
	��val%=0 ="0-00"
	�+a=�(�(val%)):�a=2 a$="0-"+�(val%):�TJJ
	��a=1 a$="0-0"+�(val%):�TJJ
	�!a$=��(val%),�(�(val%))-2)+"-"
a$=a$+��(val%),2)

�val%=val-.5 a$=a$+"\"
=a$
�"�****
(��end(line$)
2:�6,26:*FX4,0
<�heading(-1)
F5�0,24)�132;�157;�129;�14;"(c)J.J.Brayshaw 1985";
P�line$<>"" �DnJ
Z0�0,9)"�Data saved under filename�";name$'''
d	�tBJ
nEerr=�(line$):�err<>0 line$="Error number�"+line$+"�at line�"+�(�)
x:�0,9)"�Sorry..."''"�";line$''"�Program terminated."''
��
��"�****
���list_files:�a,no%
��heading(-1)
��21:*CAT
��6
�a=�:no%=&E00
�%�"�Data files:"'�148"```````````"
��:no%=no%+8
�3�((?(no%+7))�&7F)=68 �5"�";�get_names(no%):a=�
�
�?(no%)=0
�2�a=� �"�There are no data files on this disc."
�	�wait
�
�"�****
ݤget_names(S%):�L$,I%
"	L$=""
,�I%=S%�S%+6
6L$=L$+�(?(I%))
@�
J=L$
T�"�****
^ݤcheck_data
heQ%=0:�:Q%=Q%+1:�share$(Q%)="       " �price(Q%)=0 �Q%=168:�share$(Q%)<>"       " �price(Q%)<>0 =�
rq�heading(-1):�"�Check shows some errors in the"'"�reception of the data from�CEEFAX."''"�Another try?�(Y/N)";
|�:Q%=� �&DF:�Q%=89 �Q%=78
��Q%=78 =� �=�
��"�****
���set_up
�>name$="":init%=1000000:cash%=init%:assets%=0:commission%=0
��
��"�****
�ݤcommission(amount%)
�	�com%
�com%=amount%*0.007
��com%<1000 com%=1000
�	=com%
��"�****
���oscli(lin$)
X%=space �256:Y%=space �256
$space=lin$

�&FFF7
&�
0�"�****
:��comp_sell
D+�"�***�";share$(0);"�no longer listed."
NR�"�";quantity%(0);"�shares sold @�";price(0);"�`";�(quantity%(0)*price(0))/100
X'cash%=cash%+(quantity%(0)*price(0))
b�
l�"�****************
v
ݤBBCdate
��"�DATE WITH ATS
�	*BBC1
��=0:���>120
�work%=&7000
�5A%=&7A:X%=work%�256:Y%=work%�256:?work%=15:�&FFF1
�BB1$=��~(work%?8),1)
�.BB2$=�~(work%?9):� �(BB2$)=1 BB2$="0"+BB2$
�/BB3$=�~(work%?10):� �(BB3$)=1 BB3$="0"+BB3$
�JD=�(BB1$+BB2$+BB3$)
�	J%=JD
�Y1=(100*(JD-15078.2))�36525
�+M1=�((JD-14956.1-�(365.25*Y1))/30.6001)
�<D%=JD-14956-�(365.25*Y1)-�(30.6*M1):K=�(0.7+(1/(17-M1)))

M%=M1-1-12*K

Z%=Y1+K

1W%=(JD+3)�7:��T`M:�day=0�W%:�D$:�:D$=D$+"day"

 )� Sun,Mon,Tues,Wednes,Thurs,Fri,Satur

*��TtM:�day=1�M%:�month$:�

4[� January,February,March,April,May,June,July,August,September,October,November,December

>X�D%=1�D%=21�D%=31 th$="st." ��D%=2�D%=22 th$="nd." ��D%=3�D%=23 th$="rd." �th$="th."

H-=D$+"  "+�(D%)+th$+" "+month$+" 19"+�(Z%)

R�"�****

\ݤadapter:� work% 2

fHA%=&7A:X%=work%�256:Y%=work%�256:?work%=17:�&FFF1:�work%?1=0 =� � =�
�
00000000  0d 00 0a 1d f4 22 81 2a  2a 2a 2a 2a 2a 2a 2a 2a  |.....".*********|
00000010  2a 2a 2a 2a 2a 2a 2a 2a  2a 2a 2a 2a 2a 0d 00 14  |*************...|
00000020  1d f4 22 81 2a 83 50 4f  52 54 46 4f 4c 49 4f 86  |..".*.PORTFOLIO.|
00000030  41 20 53 68 61 72 65 73  81 2a 0d 00 1e 1d f4 22  |A Shares.*....."|
00000040  81 2a 86 73 69 6d 75 6c  61 74 69 6f 6e 20 70 72  |.*.simulation pr|
00000050  6f 67 72 61 6d 81 2a 0d  00 28 1d f4 22 81 2a 86  |ogram.*..(..".*.|
00000060  75 73 69 6e 67 20 6c 69  76 65 20 20 43 45 45 46  |using live  CEEF|
00000070  41 58 81 2a 0d 00 32 1d  f4 22 81 2a 86 64 61 74  |AX.*..2..".*.dat|
00000080  61 20 20 66 6f 72 20 20  63 75 72 72 65 6e 74 81  |a  for  current.|
00000090  2a 0d 00 3c 1d f4 22 81  2a 86 73 68 61 72 65 20  |*..<..".*.share |
000000a0  70 72 69 63 65 20 20 69  6e 66 6f 2e 81 2a 0d 00  |price  info..*..|
000000b0  46 1d f4 22 81 2a 2a 2a  2a 2a 2a 2a 2a 2a 2a 2a  |F..".***********|
000000c0  2a 2a 2a 2a 2a 2a 2a 2a  2a 2a 2a 0d 00 50 1d f4  |***********..P..|
000000d0  22 81 2a 85 28 63 29 20  4a 2e 4a 2e 42 72 61 79  |".*.(c) J.J.Bray|
000000e0  73 68 61 77 20 20 81 2a  0d 00 5a 1d f4 22 81 2a  |shaw  .*..Z..".*|
000000f0  84 4a 75 6e 65 20 31 39  38 35 20 20 20 20 20 20  |.June 1985      |
00000100  20 20 20 81 2a 0d 00 64  1d f4 22 81 2a 2a 2a 2a  |   .*..d..".****|
00000110  2a 2a 2a 2a 2a 2a 2a 2a  2a 2a 2a 2a 2a 2a 2a 2a  |****************|
00000120  2a 2a 0d 00 6e 1d f4 22  81 2a 84 56 45 52 53 2e  |**..n..".*.VERS.|
00000130  35 62 86 4d 61 79 20 31  39 38 37 20 20 81 2a 0d  |5b.May 1987  .*.|
00000140  00 78 1d f4 22 81 2a 86  46 6f 72 20 75 73 65 20  |.x..".*.For use |
00000150  77 69 74 68 20 41 54 53  20 20 81 2a 0d 00 82 1d  |with ATS  .*....|
00000160  f4 22 81 2a 2a 2a 2a 2a  2a 2a 2a 2a 2a 2a 2a 2a  |.".*************|
00000170  2a 2a 2a 2a 2a 2a 2a 2a  2a 0d 00 8c 0a 2a 54 54  |*********....*TT|
00000180  58 4f 4e 0d 00 96 13 ee  85 20 f2 65 6e 64 28 c3  |XON...... .end(.|
00000190  28 9f 29 29 3a e0 0d 00  a0 0a eb 37 3a ef 31 34  |(.)):......7:.14|
000001a0  0d 00 aa 13 ef 32 33 3b  38 32 30 32 3b 30 3b 30  |.....23;8202;0;0|
000001b0  3b 30 3b 0d 00 b4 38 e7  20 ac 20 a4 61 64 61 70  |;0;...8. . .adap|
000001c0  74 65 72 20 f2 65 6e 64  28 22 53 6f 72 72 79 2c  |ter .end("Sorry,|
000001d0  20 6e 6f 74 20 72 65 63  65 69 76 69 6e 67 20 74  | not receiving t|
000001e0  65 6c 65 74 65 78 74 22  29 3a e0 0d 00 be 4d de  |eletext"):....M.|
000001f0  73 68 61 72 65 24 28 31  37 30 29 2c 71 75 61 6e  |share$(170),quan|
00000200  74 69 74 79 25 28 31 37  30 29 2c 70 61 69 64 28  |tity%(170),paid(|
00000210  31 37 30 29 2c 70 72 69  63 65 28 31 37 30 29 2c  |170),price(170),|
00000220  6c 6f 77 65 73 74 28 31  37 30 29 2c 68 69 67 68  |lowest(170),high|
00000230  65 73 74 28 31 37 30 29  0d 00 c8 0e 73 70 61 63  |est(170)....spac|
00000240  65 3d 26 39 30 30 0d 00  d2 0b f2 73 65 74 5f 75  |e=&900.....set_u|
00000250  70 0d 00 dc 0c f2 67 65  74 64 61 74 61 0d 00 e6  |p.....getdata...|
00000260  13 ee 85 20 f2 65 6e 64  28 c3 28 9f 29 29 3a e0  |... .end(.(.)):.|
00000270  0d 00 f0 05 f5 0d 00 fa  09 f2 6d 65 6e 75 0d 01  |..........menu..|
00000280  04 0a fd 51 25 3d 35 33  0d 01 0e 09 f2 73 61 76  |...Q%=53.....sav|
00000290  65 0d 01 18 0c f2 65 6e  64 28 22 22 29 0d 01 22  |e.....end("").."|
000002a0  38 f1 22 86 52 75 6e 20  61 67 61 69 6e 20 77 69  |8.".Run again wi|
000002b0  74 68 20 61 20 64 69 66  66 65 72 65 6e 74 22 27  |th a different"'|
000002c0  22 86 64 61 74 61 20 66  69 6c 65 3f 83 28 59 2f  |".data file?.(Y/|
000002d0  4e 29 81 22 3b 0d 01 2c  1d f5 3a 51 25 3d a5 20  |N).";..,..:Q%=. |
000002e0  80 26 44 46 3a fd 51 25  3d 38 39 20 84 51 25 3d  |.&DF:.Q%=89 .Q%=|
000002f0  37 38 0d 01 36 16 e7 51  25 3d 37 38 20 f1 22 4e  |78..6..Q%=78 ."N|
00000300  6f 2e 22 27 27 27 3a e0  0d 01 40 16 f2 73 65 74  |o."''':...@..set|
00000310  5f 75 70 3a f2 72 65 61  64 5f 66 69 6c 65 0d 01  |_up:.read_file..|
00000320  4a 09 e5 8d 64 66 40 0d  01 54 0b f4 22 81 2a 2a  |J...df@..T..".**|
00000330  2a 2a 0d 01 5e 19 dd f2  69 6e 74 65 72 70 72 65  |**..^...interpre|
00000340  74 5f 70 61 67 65 28 73  5f 70 29 0d 01 68 19 73  |t_page(s_p)..h.s|
00000350  74 61 72 74 25 3d 26 37  43 30 30 2b 28 36 2a 34  |tart%=&7C00+(6*4|
00000360  30 29 2b 31 0d 01 72 28  e3 42 25 3d 73 74 61 72  |0)+1..r(.B%=star|
00000370  74 25 b8 73 74 61 72 74  25 2b 26 32 41 38 3a 3f  |t%.start%+&2A8:?|
00000380  42 25 3d 3f 42 25 80 26  37 46 3a ed 0d 01 7c 21  |B%=?B%.&7F:...|!|
00000390  e3 69 74 65 6d 25 3d 28  73 5f 70 2a 32 38 29 2d  |.item%=(s_p*28)-|
000003a0  32 38 2b 31 b8 28 73 5f  70 2a 32 38 29 0d 01 86  |28+1.(s_p*28)...|
000003b0  16 53 25 3d 26 39 35 30  3a 3f 28 53 25 2b 37 29  |.S%=&950:?(S%+7)|
000003c0  3d 26 44 0d 01 90 53 e3  6c 65 74 74 65 72 3d 30  |=&D...S.letter=0|
000003d0  b8 36 3a e7 3f 28 73 74  61 72 74 25 2b 6c 65 74  |.6:.?(start%+let|
000003e0  74 65 72 29 3c 33 32 20  3f 28 53 25 2b 6c 65 74  |ter)<32 ?(S%+let|
000003f0  74 65 72 29 3d 33 32 20  8b 3f 28 53 25 2b 6c 65  |ter)=32 .?(S%+le|
00000400  74 74 65 72 29 3d 3f 28  73 74 61 72 74 25 2b 6c  |tter)=?(start%+l|
00000410  65 74 74 65 72 29 0d 01  9a 05 ed 0d 01 a4 15 73  |etter).........s|
00000420  68 61 72 65 24 28 69 74  65 6d 25 29 3d 24 53 25  |hare$(item%)=$S%|
00000430  0d 01 ae 35 70 72 69 63  65 25 3d 73 74 61 72 74  |...5price%=start|
00000440  25 2b 36 3a f5 3a 70 72  69 63 65 25 3d 70 72 69  |%+6:.:price%=pri|
00000450  63 65 25 2b 31 3a fd bb  28 bd 3f 70 72 69 63 65  |ce%+1:..(.?price|
00000460  25 29 3c 3e 30 0d 01 b8  4e 68 61 6c 66 3d 30 3a  |%)<>0...Nhalf=0:|
00000470  70 72 69 63 65 24 3d 22  22 3a e3 42 25 3d 70 72  |price$="":.B%=pr|
00000480  69 63 65 25 b8 70 72 69  63 65 25 2b 36 3a 70 72  |ice%.price%+6:pr|
00000490  69 63 65 24 3d 70 72 69  63 65 24 2b bd 28 3f 42  |ice$=price$+.(?B|
000004a0  25 29 3a e7 3f 42 25 3d  39 32 20 68 61 6c 66 3d  |%):.?B%=92 half=|
000004b0  30 2e 35 0d 01 c2 16 e7  3f 42 25 3d 31 32 33 20  |0.5.....?B%=123 |
000004c0  68 61 6c 66 3d 30 2e 32  35 0d 01 cc 16 e7 3f 42  |half=0.25.....?B|
000004d0  25 3d 31 32 35 20 68 61  6c 66 3d 30 2e 37 35 0d  |%=125 half=0.75.|
000004e0  01 d6 05 ed 0d 01 e0 1f  70 72 69 63 65 28 69 74  |........price(it|
000004f0  65 6d 25 29 3d bb 28 70  72 69 63 65 24 29 2b 68  |em%)=.(price$)+h|
00000500  61 6c 66 0d 01 ea 3a 6c  6f 77 65 73 74 28 69 74  |alf...:lowest(it|
00000510  65 6d 25 29 3d 70 72 69  63 65 28 69 74 65 6d 25  |em%)=price(item%|
00000520  29 3a 68 69 67 68 65 73  74 28 69 74 65 6d 25 29  |):highest(item%)|
00000530  3d 70 72 69 63 65 28 69  74 65 6d 25 29 0d 01 f4  |=price(item%)...|
00000540  14 73 74 61 72 74 25 3d  73 74 61 72 74 25 2b 32  |.start%=start%+2|
00000550  30 0d 01 fe 05 ed 0d 02  08 05 e1 0d 02 12 0b f4  |0...............|
00000560  22 81 2a 2a 2a 2a 0d 02  1c 18 dd f2 67 65 74 5f  |".****......get_|
00000570  70 61 67 65 28 73 75 62  5f 70 61 67 65 29 0d 02  |page(sub_page)..|
00000580  26 09 2a 42 42 43 31 0d  02 30 25 f2 6f 73 63 6c  |&.*BBC1..0%.oscl|
00000590  69 28 22 50 41 47 45 20  31 33 30 30 30 30 22 2b  |i("PAGE 130000"+|
000005a0  c3 28 73 75 62 5f 70 61  67 65 29 29 0d 02 3a 12  |.(sub_page))..:.|
000005b0  2a 54 52 41 4e 53 46 45  52 20 37 43 30 30 0d 02  |*TRANSFER 7C00..|
000005c0  44 0f f2 68 65 61 64 69  6e 67 28 a3 29 0d 02 4e  |D..heading(.)..N|
000005d0  1d f2 69 6e 74 65 72 70  72 65 74 5f 70 61 67 65  |..interpret_page|
000005e0  28 73 75 62 5f 70 61 67  65 29 0d 02 58 37 64 61  |(sub_page)..X7da|
000005f0  74 65 24 3d a4 42 42 43  64 61 74 65 3a e7 64 61  |te$=.BBCdate:.da|
00000600  74 65 24 3d 22 22 20 64  61 74 65 24 3d 22 4e 6f  |te$="" date$="No|
00000610  74 20 61 76 61 69 6c 61  62 6c 65 22 3a 4a 25 3d  |t available":J%=|
00000620  30 0d 02 62 1f 6e 6f 77  5f 64 61 74 65 25 3d 4a  |0..b.now_date%=J|
00000630  25 3a 66 69 72 73 74 5f  64 61 74 65 25 3d 4a 25  |%:first_date%=J%|
00000640  0d 02 6c 05 e1 0d 02 76  0b f4 22 81 2a 2a 2a 2a  |..l....v..".****|
00000650  0d 02 80 0f dd f2 73 68  6f 77 5f 69 6e 66 6f 0d  |......show_info.|
00000660  02 8a 0a 2a 46 58 34 2c  31 0d 02 94 0a 52 25 3d  |...*FX4,1....R%=|
00000670  31 3a f5 0d 02 9e 10 f2  68 65 61 64 69 6e 67 28  |1:......heading(|
00000680  2d 31 29 0d 02 a8 0a ef  31 31 2c 31 31 0d 02 b2  |-1).....11,11...|
00000690  54 f1 22 86 20 53 68 61  72 65 73 20 20 20 20 20  |T.". Shares     |
000006a0  43 75 72 72 65 6e 74 20  20 4d 61 78 69 6d 75 6d  |Current  Maximum|
000006b0  20 20 20 4d 69 6e 69 6d  75 6d 20 20 86 41 76 61  |   Minimum  .Ava|
000006c0  69 6c 61 62 6c 65 20 20  43 6f 73 74 20 20 20 20  |ilable  Cost    |
000006d0  20 50 72 69 63 65 20 20  20 20 20 50 72 69 63 65  | Price     Price|
000006e0  22 0d 02 bc 2d e3 6e 6f  25 3d 52 25 20 b8 28 52  |"...-.no%=R% .(R|
000006f0  25 2b 31 35 29 3a e7 6e  6f 25 3d 31 36 39 20 6e  |%+15):.no%=169 n|
00000700  6f 25 3d 52 25 2b 31 35  3a e5 8d 64 50 42 0d 02  |o%=R%+15:..dPB..|
00000710  c6 52 f1 3b 22 81 22 3b  6e 6f 25 3b 22 83 22 3b  |.R.;".";no%;".";|
00000720  8a 35 29 3b 73 68 61 72  65 24 28 6e 6f 25 29 3b  |.5);share$(no%);|
00000730  8a 31 33 29 3b 70 72 69  63 65 28 6e 6f 25 29 3b  |.13);price(no%);|
00000740  8a 32 33 29 68 69 67 68  65 73 74 28 6e 6f 25 29  |.23)highest(no%)|
00000750  3b 8a 33 33 29 6c 6f 77  65 73 74 28 6e 6f 25 29  |;.33)lowest(no%)|
00000760  0d 02 d0 05 ed 0d 02 da  35 f1 8a 30 2c 32 34 29  |........5..0,24)|
00000770  22 86 4d 6f 72 65 2d 81  41 72 72 6f 77 20 6b 65  |".More-.Arrow ke|
00000780  79 73 3a 87 5b 81 42 61  63 6b 3a 87 5d 81 46 77  |ys:.[.Back:.].Fw|
00000790  64 3a 87 5e 81 45 6e 64  22 3b 0d 02 e4 41 51 25  |d:.^.End";...AQ%|
000007a0  3d a5 3a e7 51 25 3d 31  33 36 20 52 25 3d 52 25  |=.:.Q%=136 R%=R%|
000007b0  2d 31 36 20 8b e7 51 25  3d 31 33 37 20 52 25 3d  |-16 ..Q%=137 R%=|
000007c0  52 25 2b 31 36 20 8b e7  51 25 3d 31 33 39 20 e5  |R%+16 ..Q%=139 .|
000007d0  8d 64 78 42 20 8b e5 8d  64 64 42 0d 02 ee 1e e7  |.dxB ...ddB.....|
000007e0  52 25 3e 31 36 31 20 52  25 3d 31 36 31 20 8b e7  |R%>161 R%=161 ..|
000007f0  52 25 3c 31 20 52 25 3d  31 0d 02 f8 0b fd 51 25  |R%<1 R%=1.....Q%|
00000800  3d 31 33 39 0d 03 02 0a  2a 46 58 34 2c 30 0d 03  |=139....*FX4,0..|
00000810  0c 05 e1 0d 03 16 0b f4  22 81 2a 2a 2a 2a 0d 03  |........".****..|
00000820  20 0d dd f2 67 65 74 64  61 74 61 0d 03 2a 10 f2  | ...getdata..*..|
00000830  68 65 61 64 69 6e 67 28  2d 31 29 0d 03 34 50 f1  |heading(-1)..4P.|
00000840  27 22 86 53 74 61 72 74  20 61 20 6e 65 77 20 67  |'".Start a new g|
00000850  61 6d 65 20 20 20 20 20  20 20 20 20 81 50 72 65  |ame         .Pre|
00000860  73 73 87 4e 22 27 27 22  86 43 6f 6e 74 69 6e 75  |ss.N"''".Continu|
00000870  65 20 61 6e 20 65 78 69  73 74 69 6e 67 20 67 61  |e an existing ga|
00000880  6d 65 81 50 72 65 73 73  87 43 22 0d 03 3e 2a f1  |me.Press.C"..>*.|
00000890  27 22 86 4c 69 73 74 20  65 78 69 73 74 69 6e 67  |'".List existing|
000008a0  20 64 61 74 61 20 66 69  6c 65 73 81 20 50 72 65  | data files. Pre|
000008b0  73 73 87 46 22 0d 03 48  26 f5 3a 47 25 3d a5 20  |ss.F"..H&.:G%=. |
000008c0  84 26 32 30 3a fd 47 25  3d 39 39 20 84 47 25 3d  |.&20:.G%=99 .G%=|
000008d0  31 31 30 20 84 47 25 3d  31 30 32 0d 03 52 10 f2  |110 .G%=102..R..|
000008e0  68 65 61 64 69 6e 67 28  2d 31 29 0d 03 5c 1d e7  |heading(-1)..\..|
000008f0  47 25 3d 31 30 32 20 f2  6c 69 73 74 5f 66 69 6c  |G%=102 .list_fil|
00000900  65 73 3a e5 8d 54 6a 43  0d 03 66 3e f1 27 22 86  |es:..TjC..f>.'".|
00000910  57 61 69 74 69 6e 67 20  66 6f 72 20 63 75 72 72  |Waiting for curr|
00000920  65 6e 74 81 43 45 45 46  41 58 86 73 68 61 72 65  |ent.CEEFAX.share|
00000930  73 22 27 22 86 69 6e 66  6f 72 6d 61 74 69 6f 6e  |s"'".information|
00000940  20 2e 2e 2e 22 3b 0d 03  70 0d 2a 54 45 4c 45 53  | ...";..p.*TELES|
00000950  4f 46 54 0d 03 7a 22 ef  33 30 2c 31 33 32 2c 31  |OFT..z".30,132,1|
00000960  35 37 2c 31 32 39 3a f1  22 2a 2a 2a 20 20 20 22  |57,129:."***   "|
00000970  3a 2a 48 4f 4e 0d 03 84  11 e3 73 75 62 5f 70 61  |:*HON.....sub_pa|
00000980  67 65 3d 31 b8 36 0d 03  8e 17 f2 67 65 74 5f 70  |ge=1.6.....get_p|
00000990  61 67 65 28 73 75 62 5f  70 61 67 65 29 0d 03 98  |age(sub_page)...|
000009a0  05 ed 0d 03 a2 09 2a 48  4f 46 46 0d 03 ac 24 e7  |......*HOFF...$.|
000009b0  ac a4 63 68 65 63 6b 5f  64 61 74 61 20 f2 68 65  |..check_data .he|
000009c0  61 64 69 6e 67 28 2d 31  29 3a e5 8d 44 66 43 0d  |ading(-1):..DfC.|
000009d0  03 b6 17 e7 47 25 3d 39  39 20 f2 72 65 61 64 5f  |....G%=99 .read_|
000009e0  66 69 6c 65 3a e1 0d 03  c0 49 e3 69 74 65 6d 25  |file:....I.item%|
000009f0  3d 31 b8 31 36 38 3a 68  69 67 68 65 73 74 28 69  |=1.168:highest(i|
00000a00  74 65 6d 25 29 3d 70 72  69 63 65 28 69 74 65 6d  |tem%)=price(item|
00000a10  25 29 3a 6c 6f 77 65 73  74 28 69 74 65 6d 25 29  |%):lowest(item%)|
00000a20  3d 70 72 69 63 65 28 69  74 65 6d 25 29 3a ed 0d  |=price(item%):..|
00000a30  03 ca 05 e1 0d 03 d4 0b  f4 22 81 2a 2a 2a 2a 0d  |.........".****.|
00000a40  03 de 0f dd f2 72 65 61  64 5f 66 69 6c 65 0d 03  |.....read_file..|
00000a50  e8 17 6e 61 6d 65 24 3d  a4 67 65 74 5f 66 69 6c  |..name$=.get_fil|
00000a60  65 6e 61 6d 65 0d 03 f2  12 64 61 74 61 25 3d ad  |ename....data%=.|
00000a70  28 6e 61 6d 65 24 29 0d  03 fc 4b e7 64 61 74 61  |(name$)...K.data|
00000a80  25 3d 30 20 f1 22 86 46  69 6c 65 81 22 3b 6e 61  |%=0 .".File.";na|
00000a90  6d 65 24 3b 22 86 6e 6f  74 20 66 6f 75 6e 64 2e  |me$;".not found.|
00000aa0  22 3a f2 77 61 69 74 3a  f2 6c 69 73 74 5f 66 69  |":.wait:.list_fi|
00000ab0  6c 65 73 3a 6e 61 6d 65  24 3d 22 22 3a e5 8d 64  |les:name$="":..d|
00000ac0  68 43 0d 04 06 28 f2 68  65 61 64 69 6e 67 28 b9  |hC...(.heading(.|
00000ad0  29 3a f1 22 81 52 65 61  64 69 6e 67 20 66 69 6c  |):.".Reading fil|
00000ae0  65 83 22 3b 6e 61 6d 65  24 27 0d 04 10 29 e8 23  |e.";name$'...).#|
00000af0  64 61 74 61 25 2c 63 61  73 68 25 2c 63 6f 6d 6d  |data%,cash%,comm|
00000b00  69 73 73 69 6f 6e 25 2c  66 69 72 73 74 5f 64 61  |ission%,first_da|
00000b10  74 65 25 0d 04 1a 28 e3  51 25 3d 31 b8 31 36 38  |te%...(.Q%=1.168|
00000b20  3a e8 23 64 61 74 61 25  2c 73 68 61 72 65 24 28  |:.#data%,share$(|
00000b30  30 29 2c 70 72 69 63 65  28 30 29 0d 04 24 30 4f  |0),price(0)..$0O|
00000b40  25 3d 30 3a f5 3a 4f 25  3d 4f 25 2b 31 3a fd 73  |%=0:.:O%=O%+1:.s|
00000b50  68 61 72 65 24 28 4f 25  29 3d 73 68 61 72 65 24  |hare$(O%)=share$|
00000b60  28 30 29 20 84 4f 25 3d  31 36 39 0d 04 2e 10 e7  |(0) .O%=169.....|
00000b70  4f 25 3d 31 36 39 20 4f  25 3d 30 0d 04 38 39 e8  |O%=169 O%=0..89.|
00000b80  23 64 61 74 61 25 2c 71  75 61 6e 74 69 74 79 25  |#data%,quantity%|
00000b90  28 4f 25 29 2c 70 61 69  64 28 4f 25 29 2c 68 69  |(O%),paid(O%),hi|
00000ba0  67 68 65 73 74 28 4f 25  29 2c 6c 6f 77 65 73 74  |ghest(O%),lowest|
00000bb0  28 4f 25 29 0d 04 42 2b  e7 4f 25 3d 30 20 80 71  |(O%)..B+.O%=0 .q|
00000bc0  75 61 6e 74 69 74 79 25  28 30 29 3c 3e 30 20 f2  |uantity%(0)<>0 .|
00000bd0  63 6f 6d 70 5f 73 65 6c  6c 3a e5 8d 44 6a 44 0d  |comp_sell:..DjD.|
00000be0  04 4c 3f e7 71 75 61 6e  74 69 74 79 25 28 4f 25  |.L?.quantity%(O%|
00000bf0  29 3c 3e 30 20 61 73 73  65 74 73 25 3d 61 73 73  |)<>0 assets%=ass|
00000c00  65 74 73 25 2b 28 71 75  61 6e 74 69 74 79 25 28  |ets%+(quantity%(|
00000c10  4f 25 29 2a 70 72 69 63  65 28 4f 25 29 29 0d 04  |O%)*price(O%))..|
00000c20  56 2e e7 70 72 69 63 65  28 4f 25 29 3c 6c 6f 77  |V..price(O%)<low|
00000c30  65 73 74 28 4f 25 29 20  6c 6f 77 65 73 74 28 4f  |est(O%) lowest(O|
00000c40  25 29 3d 70 72 69 63 65  28 4f 25 29 0d 04 60 30  |%)=price(O%)..`0|
00000c50  e7 70 72 69 63 65 28 4f  25 29 3e 68 69 67 68 65  |.price(O%)>highe|
00000c60  73 74 28 4f 25 29 20 68  69 67 68 65 73 74 28 4f  |st(O%) highest(O|
00000c70  25 29 3d 70 72 69 63 65  28 4f 25 29 0d 04 6a 05  |%)=price(O%)..j.|
00000c80  ed 0d 04 74 2a e7 66 69  72 73 74 5f 64 61 74 65  |...t*.first_date|
00000c90  25 3d 30 20 66 69 72 73  74 5f 64 61 74 65 25 3d  |%=0 first_date%=|
00000ca0  6e 6f 77 5f 64 61 74 65  25 2d 31 0d 04 7e 0b d9  |now_date%-1..~..|
00000cb0  23 64 61 74 61 25 0d 04  88 28 f1 27 22 82 4c 6f  |#data%...(.'".Lo|
00000cc0  61 64 65 64 2e 20 50 6c  65 61 73 65 20 70 72 65  |aded. Please pre|
00000cd0  73 73 20 61 20 6b 65 79  2e 22 3a f5 fd a5 0d 04  |ss a key.":.....|
00000ce0  92 05 e1 0d 04 9c 0b f4  22 81 2a 2a 2a 2a 0d 04  |........".****..|
00000cf0  a6 17 dd f2 68 65 61 64  69 6e 67 28 43 25 29 3a  |....heading(C%):|
00000d00  e7 43 25 20 db 0d 04 b0  73 e7 ac 43 25 3a f1 8a  |.C% ....s..C%:..|
00000d10  30 2c 32 30 29 89 28 33  39 29 27 89 28 33 39 29  |0,20).(39)'.(39)|
00000d20  3a e3 4b 25 3d 31 b8 32  3a f1 bd 31 33 32 3b bd  |:.K%=1.2:..132;.|
00000d30  31 35 37 3b bd 31 34 31  3b 22 83 52 65 61 64 69  |157;.141;".Readi|
00000d40  6e 67 20 73 68 61 72 65  20 70 72 69 63 65 73 20  |ng share prices |
00000d50  2d 20 70 6c 65 61 73 65  20 77 61 69 74 20 22 3a  |- please wait ":|
00000d60  ed 3a ef 33 30 2c 31 33  32 2c 31 35 37 3a f1 22  |.:.30,132,157:."|
00000d70  81 2a 2a 2a 20 20 22 3b  0d 04 ba 29 f1 27 bd 31  |.***  ";...).'.1|
00000d80  34 37 3b 89 39 3b 22 3c  2c 2c 6c 20 20 20 20 20  |47;.9;"<,,l     |
00000d90  20 6a 70 20 6a 21 20 20  20 6a 5f 22 3b 89 31 30  | jp j!   j_";.10|
00000da0  3b 0d 04 c4 45 ef 31 33  32 2c 31 35 37 2c 31 32  |;...E.132,157,12|
00000db0  39 3a f1 22 28 43 29 4a  4a 42 22 3b bd 31 34 37  |9:."(C)JJB";.147|
00000dc0  3b 22 3d 2c 2c 2e 6a 60  6b 6a 60 60 6a 20 28 6e  |;"=,,.j`kj``j (n|
00000dd0  2c 6a 60 6b 6a 68 6a 60  6b 22 3b bd 31 32 39 3b  |,j`kjhj`k";.129;|
00000de0  22 31 39 38 35 22 0d 04  ce 29 f1 bd 31 34 37 3b  |"1985"...)..147;|
00000df0  89 39 3b 22 25 20 20 20  2a 2c 2e 2a 20 20 2a 2c  |.9;"%   *,.*  *,|
00000e00  20 7a 20 2a 2c 2e 2a 2a  2a 2c 2e 22 27 27 27 0d  | z *,.***,."'''.|
00000e10  04 d8 13 e7 ac 43 25 20  f1 8a 30 2c 34 29 22 20  |.....C% ..0,4)" |
00000e20  20 22 0d 04 e2 05 e1 0d  04 ec 0b f4 22 81 2a 2a  | "..........".**|
00000e30  2a 2a 0d 04 f6 0a dd f2  6d 65 6e 75 0d 05 00 10  |**......menu....|
00000e40  f2 68 65 61 64 69 6e 67  28 2d 31 29 0d 05 0a 15  |.heading(-1)....|
00000e50  ef 31 31 2c 31 31 3a f1  22 86 22 3b 64 61 74 65  |.11,11:.".";date|
00000e60  24 0d 05 14 62 f1 22 86  4c 65 6e 67 74 68 20 6f  |$...b.".Length o|
00000e70  66 20 67 61 6d 65 20 73  6f 20 66 61 72 3a 83 22  |f game so far:."|
00000e80  3b 6e 6f 77 5f 64 61 74  65 25 2d 66 69 72 73 74  |;now_date%-first|
00000e90  5f 64 61 74 65 25 2b 31  3b 22 20 64 61 79 22 3b  |_date%+1;" day";|
00000ea0  3a e7 6e 6f 77 5f 64 61  74 65 25 3d 66 69 72 73  |:.now_date%=firs|
00000eb0  74 5f 64 61 74 65 25 20  f1 22 2e 22 20 8b f1 22  |t_date% ."." .."|
00000ec0  73 2e 22 0d 05 1e 48 f1  27 22 83 43 75 72 72 65  |s."...H.'".Curre|
00000ed0  6e 74 20 61 76 61 69 6c  61 62 6c 65 20 66 75 6e  |nt available fun|
00000ee0  64 73 3a 85 22 8a 33 38  2d a9 28 a4 70 6f 75 6e  |ds:.".38-.(.poun|
00000ef0  64 28 63 61 73 68 25 29  29 29 22 60 22 3b a4 70  |d(cash%)))"`";.p|
00000f00  6f 75 6e 64 28 63 61 73  68 25 29 0d 05 28 42 f1  |ound(cash%)..(B.|
00000f10  22 83 43 75 72 72 65 6e  74 20 61 73 73 65 74 73  |".Current assets|
00000f20  3a 85 22 8a 33 38 2d a9  28 a4 70 6f 75 6e 64 28  |:.".38-.(.pound(|
00000f30  61 73 73 65 74 73 25 29  29 29 22 60 22 3b a4 70  |assets%)))"`";.p|
00000f40  6f 75 6e 64 28 61 73 73  65 74 73 25 29 0d 05 32  |ound(assets%)..2|
00000f50  0c f1 8a 30 2c 31 39 29  3b 0d 05 3c 58 e3 51 25  |...0,19);..<X.Q%|
00000f60  3d 31 b8 32 3a f1 bd 31  34 31 3b 22 83 43 75 72  |=1.2:..141;".Cur|
00000f70  72 65 6e 74 20 6f 76 65  72 61 6c 6c 20 22 3b 3a  |rent overall ";:|
00000f80  e7 63 61 73 68 25 2b 61  73 73 65 74 73 25 2d 69  |.cash%+assets%-i|
00000f90  6e 69 74 25 3c 30 20 f1  22 6c 6f 73 73 3a 81 20  |nit%<0 ."loss:. |
00000fa0  20 22 3b 20 8b f1 22 67  61 69 6e 3a 86 20 20 22  | "; .."gain:.  "|
00000fb0  3b 0d 05 46 4d f1 8a 33  37 2d a9 28 a4 70 6f 75  |;..FM..37-.(.pou|
00000fc0  6e 64 28 94 28 63 61 73  68 25 2b 61 73 73 65 74  |nd(.(cash%+asset|
00000fd0  73 25 2d 69 6e 69 74 25  29 29 29 29 22 60 22 3b  |s%-init%))))"`";|
00000fe0  a4 70 6f 75 6e 64 28 94  28 63 61 73 68 25 2b 61  |.pound(.(cash%+a|
00000ff0  73 73 65 74 73 25 2d 69  6e 69 74 25 29 29 0d 05  |ssets%-init%))..|
00001000  50 05 ed 0d 05 5a 57 f1  22 20 83 4c 65 73 73 20  |P....ZW." .Less |
00001010  63 6f 6d 6d 69 73 73 69  6f 6e 3a 85 22 3b 8a 33  |commission:.";.3|
00001020  37 2d a9 28 a4 70 6f 75  6e 64 28 63 6f 6d 6d 69  |7-.(.pound(commi|
00001030  73 73 69 6f 6e 25 29 29  29 22 60 22 3b a4 70 6f  |ssion%)))"`";.po|
00001040  75 6e 64 28 63 6f 6d 6d  69 73 73 69 6f 6e 25 29  |und(commission%)|
00001050  27 22 83 20 4e 65 74 20  22 3b 0d 05 64 3e 61 6d  |'". Net ";..d>am|
00001060  6d 25 3d 63 61 73 68 25  2b 61 73 73 65 74 73 25  |m%=cash%+assets%|
00001070  2d 69 6e 69 74 25 2d 63  6f 6d 6d 69 73 73 69 6f  |-init%-commissio|
00001080  6e 25 3a 6c 25 3d a9 28  a4 70 6f 75 6e 64 28 94  |n%:l%=.(.pound(.|
00001090  28 61 6d 6d 25 29 29 29  0d 05 6e 56 e7 61 6d 6d  |(amm%)))..nV.amm|
000010a0  25 3c 30 20 f1 22 6c 6f  73 73 3a 81 22 8a 33 37  |%<0 ."loss:.".37|
000010b0  2d 6c 25 29 3b 22 60 22  3b a4 70 6f 75 6e 64 28  |-l%);"`";.pound(|
000010c0  94 28 61 6d 6d 25 29 29  20 8b f1 22 67 61 69 6e  |.(amm%)) .."gain|
000010d0  3a 86 22 8a 33 37 2d 6c  25 29 3b 22 60 22 3b a4  |:.".37-l%);"`";.|
000010e0  70 6f 75 6e 64 28 94 28  61 6d 6d 25 29 29 0d 05  |pound(.(amm%))..|
000010f0  78 19 f1 8a 34 2c 31 31  29 bd 31 34 38 3b c4 33  |x...4,11).148;.3|
00001100  30 2c bd 31 32 34 29 0d  05 82 38 f1 89 34 bd 31  |0,.124)...8..4.1|
00001110  34 38 3b bd 32 35 35 3b  22 81 31 2e 86 4c 69 73  |48;.255;".1..Lis|
00001120  74 20 73 68 61 72 65 73  20 61 76 61 69 6c 61 62  |t shares availab|
00001130  6c 65 20 20 22 3b bd 31  34 38 3b bd 32 35 35 0d  |le  ";.148;.255.|
00001140  05 8c 39 f1 89 34 3b bd  31 34 38 3b bd 32 35 35  |..9..4;.148;.255|
00001150  3b 22 81 32 2e 86 4c 69  73 74 20 63 75 72 72 65  |;".2..List curre|
00001160  6e 74 20 70 6f 72 74 66  6f 6c 69 6f 20 22 3b bd  |nt portfolio ";.|
00001170  31 34 38 3b bd 32 35 35  0d 05 96 30 f1 89 34 3b  |148;.255...0..4;|
00001180  bd 31 34 38 3b bd 32 35  35 3b 22 81 33 2e 86 42  |.148;.255;".3..B|
00001190  75 79 20 73 68 61 72 65  73 22 3b 89 31 33 3b bd  |uy shares";.13;.|
000011a0  31 34 38 3b bd 32 35 35  0d 05 a0 30 f1 89 34 3b  |148;.255...0..4;|
000011b0  bd 31 34 38 3b bd 32 35  35 3b 22 81 34 2e 86 53  |.148;.255;".4..S|
000011c0  65 6c 6c 20 73 68 61 72  65 73 22 89 31 32 3b bd  |ell shares".12;.|
000011d0  31 34 38 3b bd 32 35 35  0d 05 aa 29 f1 89 34 3b  |148;.255...)..4;|
000011e0  bd 31 34 38 3b bd 32 35  35 3b 22 81 35 2e 86 45  |.148;.255;".5..E|
000011f0  6e 64 22 3b 89 32 30 3b  bd 31 34 38 3b bd 32 35  |nd";.20;.148;.25|
00001200  35 0d 05 b4 15 f1 89 34  3b bd 31 34 38 3b c4 33  |5......4;.148;.3|
00001210  30 2c bd 34 37 29 0d 05  be 18 f5 3a 51 25 3d a5  |0,.47).....:Q%=.|
00001220  3a fd 51 25 3e 34 38 20  80 51 25 3c 35 34 0d 05  |:.Q%>48 .Q%<54..|
00001230  c8 15 e7 51 25 3d 34 39  20 f2 73 68 6f 77 5f 69  |...Q%=49 .show_i|
00001240  6e 66 6f 0d 05 d2 15 e7  51 25 3d 35 30 20 f2 70  |nfo.....Q%=50 .p|
00001250  6f 72 74 66 6f 6c 69 6f  0d 05 dc 0f e7 51 25 3d  |ortfolio.....Q%=|
00001260  35 31 20 f2 62 75 79 0d  05 e6 10 e7 51 25 3d 35  |51 .buy.....Q%=5|
00001270  32 20 f2 73 65 6c 6c 0d  05 f0 05 e1 0d 05 fa 0b  |2 .sell.........|
00001280  f4 22 81 2a 2a 2a 2a 0d  06 04 12 dd a4 67 65 74  |.".****......get|
00001290  5f 66 69 6c 65 6e 61 6d  65 0d 06 0e 15 e7 6e 61  |_filename.....na|
000012a0  6d 65 24 3c 3e 22 22 20  3d 6e 61 6d 65 24 0d 06  |me$<>"" =name$..|
000012b0  18 10 f2 68 65 61 64 69  6e 67 28 2d 31 29 0d 06  |...heading(-1)..|
000012c0  22 4d f1 22 86 50 6c 65  61 73 65 20 65 6e 74 65  |"M.".Please ente|
000012d0  72 20 74 68 65 20 6e 61  6d 65 20 6f 66 20 74 68  |r the name of th|
000012e0  65 20 64 69 73 63 22 27  22 86 64 61 74 61 20 66  |e disc"'".data f|
000012f0  69 6c 65 81 28 4d 61 78  2e 20 37 20 63 68 61 72  |ile.(Max. 7 char|
00001300  61 63 74 65 72 73 29 86  6f 72 22 0d 06 2c 3d f1  |acters).or"..,=.|
00001310  22 86 65 6e 74 65 72 87  27 46 27 86 66 6f 72 20  |".enter.'F'.for |
00001320  61 20 6c 69 73 74 20 6f  66 20 64 61 74 61 20 66  |a list of data f|
00001330  69 6c 65 73 22 27 22 86  6f 6e 20 74 68 69 73 20  |iles"'".on this |
00001340  64 69 73 63 3a 83 22 3b  0d 06 36 31 e8 22 22 66  |disc:.";..61.""f|
00001350  69 6c 65 6e 61 6d 65 24  3a e7 66 69 6c 65 6e 61  |ilename$:.filena|
00001360  6d 65 24 3d 22 46 22 20  f2 6c 69 73 74 5f 66 69  |me$="F" .list_fi|
00001370  6c 65 73 3a e5 8d 54 58  46 0d 06 40 17 e7 66 69  |les:..TXF..@..fi|
00001380  6c 65 6e 61 6d 65 24 3d  22 22 20 e5 8d 54 58 46  |lename$="" ..TXF|
00001390  0d 06 4a 41 e7 a9 28 66  69 6c 65 6e 61 6d 65 24  |..JA..(filename$|
000013a0  29 3e 37 20 84 a7 66 69  6c 65 6e 61 6d 65 24 2c  |)>7 ..filename$,|
000013b0  22 2e 22 29 3c 3e 30 20  84 a7 66 69 6c 65 6e 61  |".")<>0 ..filena|
000013c0  6d 65 24 2c 22 2d 22 29  3c 3e 30 20 e5 8d 54 58  |me$,"-")<>0 ..TX|
000013d0  46 0d 06 54 13 3d 22 44  2e 22 2b 66 69 6c 65 6e  |F..T.="D."+filen|
000013e0  61 6d 65 24 0d 06 5e 0b  f4 22 81 2a 2a 2a 2a 0d  |ame$..^..".****.|
000013f0  06 68 0a dd f2 73 61 76  65 0d 06 72 17 6e 61 6d  |.h...save..r.nam|
00001400  65 24 3d a4 67 65 74 5f  66 69 6c 65 6e 61 6d 65  |e$=.get_filename|
00001410  0d 06 7c 12 64 61 74 61  25 3d ae 28 6e 61 6d 65  |..|.data%=.(name|
00001420  24 29 0d 06 86 29 f1 23  64 61 74 61 25 2c 63 61  |$)...).#data%,ca|
00001430  73 68 25 2c 63 6f 6d 6d  69 73 73 69 6f 6e 25 2c  |sh%,commission%,|
00001440  66 69 72 73 74 5f 64 61  74 65 25 0d 06 90 5a e3  |first_date%...Z.|
00001450  51 25 3d 31 b8 31 36 38  3a f1 23 64 61 74 61 25  |Q%=1.168:.#data%|
00001460  2c 73 68 61 72 65 24 28  51 25 29 2c 70 72 69 63  |,share$(Q%),pric|
00001470  65 28 51 25 29 2c 71 75  61 6e 74 69 74 79 25 28  |e(Q%),quantity%(|
00001480  51 25 29 2c 70 61 69 64  28 51 25 29 2c 68 69 67  |Q%),paid(Q%),hig|
00001490  68 65 73 74 28 51 25 29  2c 6c 6f 77 65 73 74 28  |hest(Q%),lowest(|
000014a0  51 25 29 3a ed 0d 06 9a  0b d9 23 64 61 74 61 25  |Q%):......#data%|
000014b0  0d 06 a4 05 e1 0d 06 ae  0b f4 22 81 2a 2a 2a 2a  |..........".****|
000014c0  0d 06 b8 0f dd f2 70 6f  72 74 66 6f 6c 69 6f 0d  |......portfolio.|
000014d0  06 c2 17 f2 68 65 61 64  69 6e 67 28 2d 31 29 3a  |....heading(-1):|
000014e0  67 6f 74 25 3d 30 0d 06  cc 31 f1 22 86 43 75 72  |got%=0...1.".Cur|
000014f0  72 65 6e 74 20 68 6f 6c  64 69 6e 67 73 3a 22 27  |rent holdings:"'|
00001500  bd 31 34 35 22 60 60 60  60 60 60 60 60 60 60 60  |.145"```````````|
00001510  60 60 60 60 60 60 22 0d  06 d6 38 f1 22 81 53 68  |``````"...8.".Sh|
00001520  61 72 65 22 8a 31 30 29  22 4f 72 69 67 22 8a 31  |are".10)"Orig".1|
00001530  38 29 22 55 6e 69 74 22  8a 32 34 29 22 43 75 72  |8)"Unit".24)"Cur|
00001540  72 22 8a 33 30 29 22 43  75 72 72 65 6e 74 22 0d  |r".30)"Current".|
00001550  06 e0 36 f1 22 81 6e 61  6d 65 22 8a 31 30 29 22  |..6.".name".10)"|
00001560  70 72 69 63 65 22 8a 31  38 29 22 51 74 79 22 8a  |price".18)"Qty".|
00001570  32 34 29 22 70 72 69 63  65 22 8a 33 30 29 22 56  |24)"price".30)"V|
00001580  61 6c 75 65 22 0d 06 ea  12 ef 32 38 2c 30 2c 32  |alue".....28,0,2|
00001590  34 2c 33 39 2c 31 31 0d  06 f4 0d e3 51 25 3d 31  |4,39,11.....Q%=1|
000015a0  b8 31 36 38 0d 06 fe 66  e7 71 75 61 6e 74 69 74  |.168...f.quantit|
000015b0  79 25 28 51 25 29 3c 3e  30 20 61 6d 3d 71 75 61  |y%(Q%)<>0 am=qua|
000015c0  6e 74 69 74 79 25 28 51  25 29 2a 70 72 69 63 65  |ntity%(Q%)*price|
000015d0  28 51 25 29 3a 61 6d 24  3d a4 70 6f 75 6e 64 28  |(Q%):am$=.pound(|
000015e0  61 6d 29 3a 74 61 62 25  3d a9 28 61 6d 24 29 3a  |am):tab%=.(am$):|
000015f0  e7 c2 61 6d 24 2c 31 29  3d bd 39 32 20 74 61 62  |..am$,1)=.92 tab|
00001600  25 3d a9 28 61 6d 24 29  2d 31 0d 07 08 6f e7 71  |%=.(am$)-1...o.q|
00001610  75 61 6e 74 69 74 79 25  28 51 25 29 3c 3e 30 20  |uantity%(Q%)<>0 |
00001620  f1 22 86 22 3b 73 68 61  72 65 24 28 51 25 29 3b  |.".";share$(Q%);|
00001630  8a 31 30 29 3b 70 61 69  64 28 51 25 29 3b 8a 31  |.10);paid(Q%);.1|
00001640  38 29 3b 71 75 61 6e 74  69 74 79 25 28 51 25 29  |8);quantity%(Q%)|
00001650  3b 8a 32 34 29 3b 70 72  69 63 65 28 51 25 29 3b  |;.24);price(Q%);|
00001660  8a 33 37 2d 74 61 62 25  29 3b 61 6d 24 3a 67 6f  |.37-tab%);am$:go|
00001670  74 25 3d 67 6f 74 25 2b  31 0d 07 12 2a e7 67 6f  |t%=got%+1...*.go|
00001680  74 25 3d 31 32 20 f2 77  61 69 74 3a ef 32 38 2c  |t%=12 .wait:.28,|
00001690  30 2c 32 34 2c 33 39 2c  31 31 3a db 3a 67 6f 74  |0,24,39,11:.:got|
000016a0  25 3d 30 0d 07 1c 05 ed  0d 07 26 09 f2 77 61 69  |%=0.......&..wai|
000016b0  74 0d 07 30 07 ef 32 36  0d 07 3a 05 e1 0d 07 44  |t..0..26..:....D|
000016c0  0b f4 22 81 2a 2a 2a 2a  0d 07 4e 09 dd f2 62 75  |..".****..N...bu|
000016d0  79 0d 07 58 10 f2 68 65  61 64 69 6e 67 28 2d 31  |y..X..heading(-1|
000016e0  29 0d 07 62 2c ef 31 31  2c 31 31 3a f1 22 81 42  |)..b,.11,11:.".B|
000016f0  75 79 20 73 68 61 72 65  73 3a 22 27 bd 31 34 38  |uy shares:"'.148|
00001700  22 60 60 60 60 60 60 60  60 60 60 60 22 0d 07 6c  |"```````````"..l|
00001710  37 e8 22 86 45 6e 74 65  72 20 73 68 61 72 65 20  |7.".Enter share |
00001720  6e 61 6d 65 20 6f 72 20  6e 75 6d 62 65 72 3a 83  |name or number:.|
00001730  22 73 68 5f 6e 6f 24 3a  e7 73 68 5f 6e 6f 24 3d  |"sh_no$:.sh_no$=|
00001740  22 22 20 e1 0d 07 76 1b  73 68 5f 6e 6f 25 3d a4  |"" ...v.sh_no%=.|
00001750  66 69 6e 64 5f 6e 6f 28  73 68 5f 6e 6f 24 29 0d  |find_no(sh_no$).|
00001760  07 80 2a e7 73 68 5f 6e  6f 25 3d 30 20 f1 22 81  |..*.sh_no%=0 .".|
00001770  53 68 61 72 65 73 20 6e  6f 74 20 6c 69 73 74 65  |Shares not liste|
00001780  64 2e 22 3a e5 8d 54 60  48 0d 07 8a 32 f1 22 81  |d.":..T`H...2.".|
00001790  22 3b 73 68 61 72 65 24  28 73 68 5f 6e 6f 25 29  |";share$(sh_no%)|
000017a0  3b 22 20 20 86 50 72 69  63 65 3a 81 22 3b 70 72  |;"  .Price:.";pr|
000017b0  69 63 65 28 73 68 5f 6e  6f 25 29 0d 07 94 64 f1  |ice(sh_no%)...d.|
000017c0  22 83 43 75 72 72 65 6e  74 20 68 6f 6c 64 69 6e  |".Current holdin|
000017d0  67 73 3a 87 22 3b 71 75  61 6e 74 69 74 79 25 28  |gs:.";quantity%(|
000017e0  73 68 5f 6e 6f 25 29 27  22 83 46 75 6e 64 73 20  |sh_no%)'".Funds |
000017f0  61 6c 6c 6f 77 20 75 70  20 74 6f 87 22 3b a8 28  |allow up to.";.(|
00001800  63 61 73 68 25 2f 70 72  69 63 65 28 73 68 5f 6e  |cash%/price(sh_n|
00001810  6f 25 29 29 3b 22 83 73  68 61 72 65 73 2e 22 0d  |o%));".shares.".|
00001820  07 9e 21 e8 22 86 51 75  61 6e 74 69 74 79 20 72  |..!.".Quantity r|
00001830  65 71 75 69 72 65 64 3a  83 22 71 75 61 6e 74 25  |equired:."quant%|
00001840  0d 07 a8 47 e7 63 61 73  68 25 3c 28 71 75 61 6e  |...G.cash%<(quan|
00001850  74 25 2a 70 72 69 63 65  28 73 68 5f 6e 6f 25 29  |t%*price(sh_no%)|
00001860  29 20 f1 22 81 59 6f 75  20 68 61 76 65 6e 27 74  |) .".You haven't|
00001870  20 65 6e 6f 75 67 68 20  66 75 6e 64 73 20 21 21  | enough funds !!|
00001880  22 3a e5 8d 54 60 48 0d  07 b2 6d f1 27 22 85 22  |":..T`H...m.'"."|
00001890  3b 71 75 61 6e 74 25 3b  22 82 22 3b 73 68 61 72  |;quant%;".";shar|
000018a0  65 24 28 73 68 5f 6e 6f  25 29 3b 22 85 73 68 61  |e$(sh_no%);".sha|
000018b0  72 65 73 20 40 87 22 3b  70 72 69 63 65 28 73 68  |res @.";price(sh|
000018c0  5f 6e 6f 25 29 27 27 22  85 54 6f 74 61 6c 82 60  |_no%)''".Total.`|
000018d0  22 3b a4 70 6f 75 6e 64  28 71 75 61 6e 74 25 2a  |";.pound(quant%*|
000018e0  70 72 69 63 65 28 73 68  5f 6e 6f 25 29 29 3b 22  |price(sh_no%));"|
000018f0  70 2e 22 27 0d 07 bc 28  63 25 3d a4 63 6f 6d 6d  |p."'...(c%=.comm|
00001900  69 73 73 69 6f 6e 28 71  75 61 6e 74 25 2a 70 72  |ission(quant%*pr|
00001910  69 63 65 28 73 68 5f 6e  6f 25 29 29 0d 07 c6 27  |ice(sh_no%))...'|
00001920  f1 22 85 28 20 43 6f 6d  6d 69 73 73 69 6f 6e 3a  |.".( Commission:|
00001930  82 60 22 3b a4 70 6f 75  6e 64 28 63 25 29 3b 22  |.`";.pound(c%);"|
00001940  85 29 22 0d 07 d0 19 f1  27 22 81 43 6f 72 72 65  |.)".....'".Corre|
00001950  63 74 3f 86 28 59 2f 4e  29 20 22 3b 0d 07 da 14  |ct?.(Y/N) ";....|
00001960  f5 3a 79 3d a5 3a fd 79  3d 37 38 84 79 3d 38 39  |.:y=.:.y=78.y=89|
00001970  0d 07 e4 35 e7 79 3d 38  39 20 80 71 75 61 6e 74  |...5.y=89 .quant|
00001980  25 3d 30 20 ef 31 33 3a  f1 22 81 4e 6f 20 73 68  |%=0 .13:.".No sh|
00001990  61 72 65 73 20 72 65 71  75 69 72 65 64 2e 22 3a  |ares required.":|
000019a0  e5 8d 54 60 48 0d 07 ee  45 ef 31 33 3a e7 79 3d  |..T`H...E.13:.y=|
000019b0  38 39 20 f1 22 81 50 75  72 63 68 61 73 65 20 63  |89 .".Purchase c|
000019c0  6f 6e 66 69 72 6d 65 64  2e 22 20 8b 20 f1 22 81  |onfirmed." . .".|
000019d0  50 75 72 63 68 61 73 65  20 63 61 6e 63 65 6c 6c  |Purchase cancell|
000019e0  65 64 2e 22 3a e5 8d 54  60 48 0d 07 f8 51 63 61  |ed.":..T`H...Qca|
000019f0  73 68 25 3d 63 61 73 68  25 2d 28 71 75 61 6e 74  |sh%=cash%-(quant|
00001a00  25 2a 70 72 69 63 65 28  73 68 5f 6e 6f 25 29 29  |%*price(sh_no%))|
00001a10  3a 71 75 61 6e 74 69 74  79 25 28 73 68 5f 6e 6f  |:quantity%(sh_no|
00001a20  25 29 3d 71 75 61 6e 74  69 74 79 25 28 73 68 5f  |%)=quantity%(sh_|
00001a30  6e 6f 25 29 2b 71 75 61  6e 74 25 0d 08 02 1e 63  |no%)+quant%....c|
00001a40  6f 6d 6d 69 73 73 69 6f  6e 25 3d 63 6f 6d 6d 69  |ommission%=commi|
00001a50  73 73 69 6f 6e 25 2b 63  25 0d 08 0c 69 e7 70 61  |ssion%+c%...i.pa|
00001a60  69 64 28 73 68 5f 6e 6f  25 29 3c 3e 30 20 70 61  |id(sh_no%)<>0 pa|
00001a70  69 64 28 73 68 5f 6e 6f  25 29 3d a8 28 28 28 70  |id(sh_no%)=.(((p|
00001a80  61 69 64 28 73 68 5f 6e  6f 25 29 2b 70 72 69 63  |aid(sh_no%)+pric|
00001a90  65 28 73 68 5f 6e 6f 25  29 29 2f 32 29 2a 31 30  |e(sh_no%))/2)*10|
00001aa0  30 29 2f 31 30 30 20 8b  70 61 69 64 28 73 68 5f  |0)/100 .paid(sh_|
00001ab0  6e 6f 25 29 3d 70 72 69  63 65 28 73 68 5f 6e 6f  |no%)=price(sh_no|
00001ac0  25 29 0d 08 16 2a 61 73  73 65 74 73 25 3d 61 73  |%)...*assets%=as|
00001ad0  73 65 74 73 25 2b 28 71  75 61 6e 74 25 2a 70 72  |sets%+(quant%*pr|
00001ae0  69 63 65 28 73 68 5f 6e  6f 25 29 29 0d 08 20 09  |ice(sh_no%)).. .|
00001af0  f2 77 61 69 74 0d 08 2a  05 e1 0d 08 34 0b f4 22  |.wait..*....4.."|
00001b00  81 2a 2a 2a 2a 0d 08 3e  0a dd f2 73 65 6c 6c 0d  |.****..>...sell.|
00001b10  08 48 10 f2 68 65 61 64  69 6e 67 28 2d 31 29 0d  |.H..heading(-1).|
00001b20  08 52 2e ef 31 31 2c 31  31 3a f1 22 81 53 65 6c  |.R..11,11:.".Sel|
00001b30  6c 20 73 68 61 72 65 73  3a 22 27 bd 31 34 38 22  |l shares:"'.148"|
00001b40  60 60 60 60 60 60 60 60  60 60 60 60 22 0d 08 5c  |````````````"..\|
00001b50  37 e8 22 86 45 6e 74 65  72 20 73 68 61 72 65 20  |7.".Enter share |
00001b60  6e 61 6d 65 20 6f 72 20  6e 75 6d 62 65 72 3a 83  |name or number:.|
00001b70  22 73 68 5f 6e 6f 24 3a  e7 73 68 5f 6e 6f 24 3d  |"sh_no$:.sh_no$=|
00001b80  22 22 20 e1 0d 08 66 1b  73 68 5f 6e 6f 25 3d a4  |"" ...f.sh_no%=.|
00001b90  66 69 6e 64 5f 6e 6f 28  73 68 5f 6e 6f 24 29 0d  |find_no(sh_no$).|
00001ba0  08 70 2a e7 73 68 5f 6e  6f 25 3d 30 20 f1 22 81  |.p*.sh_no%=0 .".|
00001bb0  53 68 61 72 65 73 20 6e  6f 74 20 6c 69 73 74 65  |Shares not liste|
00001bc0  64 2e 22 3a e5 8d 54 50  49 0d 08 7a 32 f1 22 81  |d.":..TPI..z2.".|
00001bd0  22 3b 73 68 61 72 65 24  28 73 68 5f 6e 6f 25 29  |";share$(sh_no%)|
00001be0  3b 22 20 20 86 50 72 69  63 65 3a 81 22 3b 70 72  |;"  .Price:.";pr|
00001bf0  69 63 65 28 73 68 5f 6e  6f 25 29 0d 08 84 46 f1  |ice(sh_no%)...F.|
00001c00  22 83 4e 75 6d 62 65 72  20 68 65 6c 64 3a 87 22  |".Number held:."|
00001c10  3b 71 75 61 6e 74 69 74  79 25 28 73 68 5f 6e 6f  |;quantity%(sh_no|
00001c20  25 29 27 22 83 4d 61 72  6b 65 74 20 70 72 69 63  |%)'".Market pric|
00001c30  65 87 22 3b 70 72 69 63  65 28 73 68 5f 6e 6f 25  |e.";price(sh_no%|
00001c40  29 0d 08 8e 23 e8 27 27  22 86 4e 75 6d 62 65 72  |)...#.''".Number|
00001c50  20 74 6f 20 62 65 20 73  6f 6c 64 3a 83 22 71 75  | to be sold:."qu|
00001c60  61 6e 74 25 0d 08 98 45  e7 71 75 61 6e 74 25 3e  |ant%...E.quant%>|
00001c70  71 75 61 6e 74 69 74 79  25 28 73 68 5f 6e 6f 25  |quantity%(sh_no%|
00001c80  29 20 f1 22 81 59 6f 75  20 64 6f 6e 27 74 20 68  |) .".You don't h|
00001c90  61 76 65 20 74 68 61 74  20 6d 61 6e 79 20 21 21  |ave that many !!|
00001ca0  22 3a f2 77 61 69 74 3a  e1 0d 08 a2 6d f1 27 22  |":.wait:....m.'"|
00001cb0  85 22 3b 71 75 61 6e 74  25 3b 22 82 22 3b 73 68  |.";quant%;".";sh|
00001cc0  61 72 65 24 28 73 68 5f  6e 6f 25 29 3b 22 85 73  |are$(sh_no%);".s|
00001cd0  68 61 72 65 73 20 40 87  22 3b 70 72 69 63 65 28  |hares @.";price(|
00001ce0  73 68 5f 6e 6f 25 29 3b  27 27 22 85 54 6f 74 61  |sh_no%);''".Tota|
00001cf0  6c 82 60 22 a4 70 6f 75  6e 64 28 71 75 61 6e 74  |l.`".pound(quant|
00001d00  25 2a 70 72 69 63 65 28  73 68 5f 6e 6f 25 29 29  |%*price(sh_no%))|
00001d10  3b 22 70 2e 22 27 0d 08  ac 28 63 25 3d a4 63 6f  |;"p."'...(c%=.co|
00001d20  6d 6d 69 73 73 69 6f 6e  28 71 75 61 6e 74 25 2a  |mmission(quant%*|
00001d30  70 72 69 63 65 28 73 68  5f 6e 6f 25 29 29 0d 08  |price(sh_no%))..|
00001d40  b6 27 f1 22 85 28 20 43  6f 6d 6d 69 73 73 69 6f  |.'.".( Commissio|
00001d50  6e 3a 82 60 22 3b a4 70  6f 75 6e 64 28 63 25 29  |n:.`";.pound(c%)|
00001d60  3b 22 85 29 22 0d 08 c0  19 f1 27 22 81 43 6f 72  |;".)".....'".Cor|
00001d70  72 65 63 74 3f 86 28 59  2f 4e 29 20 22 3b 0d 08  |rect?.(Y/N) ";..|
00001d80  ca 14 f5 3a 79 3d a5 3a  fd 79 3d 37 38 84 79 3d  |...:y=.:.y=78.y=|
00001d90  38 39 0d 08 d4 34 e7 71  75 61 6e 74 25 3d 30 20  |89...4.quant%=0 |
00001da0  80 79 3d 38 39 20 ef 31  33 3a f1 22 81 53 61 6c  |.y=89 .13:.".Sal|
00001db0  65 20 6e 6f 74 20 72 65  71 75 69 72 65 64 2e 22  |e not required."|
00001dc0  3a e5 8d 54 50 49 0d 08  de 3d ef 31 33 3a e7 79  |:..TPI...=.13:.y|
00001dd0  3d 38 39 20 f1 22 81 53  61 6c 65 20 63 6f 6e 66  |=89 .".Sale conf|
00001de0  69 72 6d 65 64 2e 22 20  8b 20 f1 22 81 53 61 6c  |irmed." . .".Sal|
00001df0  65 20 63 61 6e 63 65 6c  6c 65 64 2e 22 3a e5 8d  |e cancelled.":..|
00001e00  54 50 49 0d 08 e8 51 63  61 73 68 25 3d 63 61 73  |TPI...Qcash%=cas|
00001e10  68 25 2b 28 70 72 69 63  65 28 73 68 5f 6e 6f 25  |h%+(price(sh_no%|
00001e20  29 2a 71 75 61 6e 74 25  29 3a 71 75 61 6e 74 69  |)*quant%):quanti|
00001e30  74 79 25 28 73 68 5f 6e  6f 25 29 3d 71 75 61 6e  |ty%(sh_no%)=quan|
00001e40  74 69 74 79 25 28 73 68  5f 6e 6f 25 29 2d 71 75  |tity%(sh_no%)-qu|
00001e50  61 6e 74 25 0d 08 f2 20  63 6f 6d 6d 69 73 73 69  |ant%... commissi|
00001e60  6f 6e 25 3d 63 6f 6d 6d  69 73 73 69 6f 6e 25 2b  |on%=commission%+|
00001e70  31 30 30 30 0d 08 fc 27  e7 71 75 61 6e 74 69 74  |1000...'.quantit|
00001e80  79 25 28 73 68 5f 6e 6f  25 29 3d 30 20 70 61 69  |y%(sh_no%)=0 pai|
00001e90  64 28 73 68 5f 6e 6f 25  29 3d 30 0d 09 06 2a 61  |d(sh_no%)=0...*a|
00001ea0  73 73 65 74 73 25 3d 61  73 73 65 74 73 25 2d 28  |ssets%=assets%-(|
00001eb0  70 72 69 63 65 28 73 68  5f 6e 6f 25 29 2a 71 75  |price(sh_no%)*qu|
00001ec0  61 6e 74 25 29 0d 09 10  09 f2 77 61 69 74 0d 09  |ant%).....wait..|
00001ed0  1a 05 e1 0d 09 24 0b f4  22 81 2a 2a 2a 2a 0d 09  |.....$..".****..|
00001ee0  2e 0a dd f2 77 61 69 74  0d 09 38 0b 2a 46 58 31  |....wait..8.*FX1|
00001ef0  35 2c 31 0d 09 42 07 ef  32 36 0d 09 4c 2f f1 8a  |5,1..B..26..L/..|
00001f00  30 2c 32 34 29 22 86 50  72 65 73 73 81 53 50 41  |0,24)".Press.SPA|
00001f10  43 45 86 74 6f 20 63 6f  6e 74 69 6e 75 65 20 22  |CE.to continue "|
00001f20  3b 3a f5 20 fd a5 3d 33  32 0d 09 56 05 e1 0d 09  |;:. ..=32..V....|
00001f30  60 0b f4 22 81 2a 2a 2a  2a 0d 09 6a 11 dd a4 66  |`..".****..j...f|
00001f40  69 6e 64 5f 6e 6f 28 41  24 29 0d 09 74 1e e7 bb  |ind_no(A$)..t...|
00001f50  28 41 24 29 3e 30 20 80  bb 28 41 24 29 3c 31 36  |(A$)>0 ..(A$)<16|
00001f60  39 20 3d bb 28 41 24 29  0d 09 7e 1d 41 31 24 3d  |9 =.(A$)..~.A1$=|
00001f70  22 22 3a e7 a9 28 41 24  29 3e 37 20 41 24 3d c0  |"":..(A$)>7 A$=.|
00001f80  41 24 2c 37 29 0d 09 88  2f e3 62 69 74 3d 31 b8  |A$,7).../.bit=1.|
00001f90  a9 28 41 24 29 3a 41 31  24 3d 41 31 24 2b bd 28  |.(A$):A1$=A1$+.(|
00001fa0  97 28 c1 41 24 2c 62 69  74 2c 31 29 29 84 26 32  |.(.A$,bit,1)).&2|
00001fb0  30 29 3a ed 0d 09 92 1e  63 6f 75 6e 74 25 3d 30  |0):.....count%=0|
00001fc0  3a f5 3a 63 6f 75 6e 74  25 3d 63 6f 75 6e 74 25  |:.:count%=count%|
00001fd0  2b 31 0d 09 9c 3e 73 68  24 3d 22 22 3a e3 62 69  |+1...>sh$="":.bi|
00001fe0  74 3d 31 b8 37 3a 73 68  24 3d 73 68 24 2b bd 28  |t=1.7:sh$=sh$+.(|
00001ff0  97 28 c1 73 68 61 72 65  24 28 63 6f 75 6e 74 25  |.(.share$(count%|
00002000  29 2c 62 69 74 2c 31 29  29 84 26 32 30 29 3a ed  |),bit,1)).&20):.|
00002010  0d 09 a6 20 fd 63 6f 75  6e 74 25 3d 31 36 38 20  |... .count%=168 |
00002020  84 c0 73 68 24 2c a9 28  41 24 29 29 3d 41 31 24  |..sh$,.(A$))=A1$|
00002030  0d 09 b0 20 e7 c0 73 68  24 2c a9 28 41 24 29 29  |... ..sh$,.(A$))|
00002040  3d 41 31 24 20 3d 63 6f  75 6e 74 25 20 8b 3d 30  |=A1$ =count% .=0|
00002050  0d 09 ba 0b f4 22 81 2a  2a 2a 2a 0d 09 c4 10 dd  |.....".****.....|
00002060  a4 70 6f 75 6e 64 28 76  61 6c 29 0d 09 ce 0c 76  |.pound(val)....v|
00002070  61 6c 25 3d 76 61 6c 0d  09 d8 13 e7 76 61 6c 25  |al%=val.....val%|
00002080  3d 30 20 3d 22 30 2d 30  30 22 0d 09 e2 2b 61 3d  |=0 ="0-00"...+a=|
00002090  a9 28 c3 28 76 61 6c 25  29 29 3a e7 61 3d 32 20  |.(.(val%)):.a=2 |
000020a0  61 24 3d 22 30 2d 22 2b  c3 28 76 61 6c 25 29 3a  |a$="0-"+.(val%):|
000020b0  e5 8d 54 4a 4a 0d 09 ec  1f e7 61 3d 31 20 61 24  |..TJJ.....a=1 a$|
000020c0  3d 22 30 2d 30 22 2b c3  28 76 61 6c 25 29 3a e5  |="0-0"+.(val%):.|
000020d0  8d 54 4a 4a 0d 09 f6 21  61 24 3d c0 c3 28 76 61  |.TJJ...!a$=..(va|
000020e0  6c 25 29 2c a9 28 c3 28  76 61 6c 25 29 29 2d 32  |l%),.(.(val%))-2|
000020f0  29 2b 22 2d 22 0d 0a 00  15 61 24 3d 61 24 2b c2  |)+"-"....a$=a$+.|
00002100  c3 28 76 61 6c 25 29 2c  32 29 0d 0a 0a 1a e7 76  |.(val%),2).....v|
00002110  61 6c 25 3d 76 61 6c 2d  2e 35 20 61 24 3d 61 24  |al%=val-.5 a$=a$|
00002120  2b 22 5c 22 0d 0a 14 07  3d 61 24 0d 0a 1e 0b f4  |+"\"....=a$.....|
00002130  22 81 2a 2a 2a 2a 0d 0a  28 10 dd f2 65 6e 64 28  |".****..(...end(|
00002140  6c 69 6e 65 24 29 0d 0a  32 14 ee 85 87 3a ef 36  |line$)..2....:.6|
00002150  2c 32 36 3a 2a 46 58 34  2c 30 0d 0a 3c 10 f2 68  |,26:*FX4,0..<..h|
00002160  65 61 64 69 6e 67 28 2d  31 29 0d 0a 46 35 f1 8a  |eading(-1)..F5..|
00002170  30 2c 32 34 29 bd 31 33  32 3b bd 31 35 37 3b bd  |0,24).132;.157;.|
00002180  31 32 39 3b 89 31 34 3b  22 28 63 29 4a 2e 4a 2e  |129;.14;"(c)J.J.|
00002190  42 72 61 79 73 68 61 77  20 31 39 38 35 22 3b 0d  |Brayshaw 1985";.|
000021a0  0a 50 14 e7 6c 69 6e 65  24 3c 3e 22 22 20 e5 8d  |.P..line$<>"" ..|
000021b0  44 6e 4a 0d 0a 5a 30 f1  8a 30 2c 39 29 22 86 44  |DnJ..Z0..0,9)".D|
000021c0  61 74 61 20 73 61 76 65  64 20 75 6e 64 65 72 20  |ata saved under |
000021d0  66 69 6c 65 6e 61 6d 65  81 22 3b 6e 61 6d 65 24  |filename.";name$|
000021e0  27 27 27 0d 0a 64 09 e5  8d 74 42 4a 0d 0a 6e 45  |'''..d...tBJ..nE|
000021f0  65 72 72 3d bb 28 6c 69  6e 65 24 29 3a e7 65 72  |err=.(line$):.er|
00002200  72 3c 3e 30 20 6c 69 6e  65 24 3d 22 45 72 72 6f  |r<>0 line$="Erro|
00002210  72 20 6e 75 6d 62 65 72  83 22 2b 6c 69 6e 65 24  |r number."+line$|
00002220  2b 22 81 61 74 20 6c 69  6e 65 83 22 2b c3 28 9e  |+".at line."+.(.|
00002230  29 0d 0a 78 3a f1 8a 30  2c 39 29 22 86 53 6f 72  |)..x:..0,9)".Sor|
00002240  72 79 2e 2e 2e 22 27 27  22 81 22 3b 6c 69 6e 65  |ry..."''".";line|
00002250  24 27 27 22 86 50 72 6f  67 72 61 6d 20 74 65 72  |$''".Program ter|
00002260  6d 69 6e 61 74 65 64 2e  22 27 27 0d 0a 82 05 e1  |minated."''.....|
00002270  0d 0a 8c 0b f4 22 81 2a  2a 2a 2a 0d 0a 96 17 dd  |.....".****.....|
00002280  f2 6c 69 73 74 5f 66 69  6c 65 73 3a ea 61 2c 6e  |.list_files:.a,n|
00002290  6f 25 0d 0a a0 10 f2 68  65 61 64 69 6e 67 28 2d  |o%.....heading(-|
000022a0  31 29 0d 0a aa 0c ef 32  31 3a 2a 43 41 54 0d 0a  |1).....21:*CAT..|
000022b0  b4 06 ef 36 0d 0a be 10  61 3d a3 3a 6e 6f 25 3d  |...6....a=.:no%=|
000022c0  26 45 30 30 0d 0a c8 25  f1 22 81 44 61 74 61 20  |&E00...%.".Data |
000022d0  66 69 6c 65 73 3a 22 27  bd 31 34 38 22 60 60 60  |files:"'.148"```|
000022e0  60 60 60 60 60 60 60 60  22 0d 0a d2 0f f5 3a 6e  |````````".....:n|
000022f0  6f 25 3d 6e 6f 25 2b 38  0d 0a dc 33 e7 28 28 3f  |o%=no%+8...3.((?|
00002300  28 6e 6f 25 2b 37 29 29  80 26 37 46 29 3d 36 38  |(no%+7)).&7F)=68|
00002310  20 f1 89 35 22 83 22 3b  a4 67 65 74 5f 6e 61 6d  | ..5".";.get_nam|
00002320  65 73 28 6e 6f 25 29 3a  61 3d b9 0d 0a e6 0d fd  |es(no%):a=......|
00002330  3f 28 6e 6f 25 29 3d 30  0d 0a f0 32 e7 61 3d a3  |?(no%)=0...2.a=.|
00002340  20 f1 22 86 54 68 65 72  65 20 61 72 65 20 6e 6f  | .".There are no|
00002350  20 64 61 74 61 20 66 69  6c 65 73 20 6f 6e 20 74  | data files on t|
00002360  68 69 73 20 64 69 73 63  2e 22 0d 0a fa 09 f2 77  |his disc.".....w|
00002370  61 69 74 0d 0b 04 05 e1  0d 0b 0e 0b f4 22 81 2a  |ait..........".*|
00002380  2a 2a 2a 0d 0b 18 1a dd  a4 67 65 74 5f 6e 61 6d  |***......get_nam|
00002390  65 73 28 53 25 29 3a ea  4c 24 2c 49 25 0d 0b 22  |es(S%):.L$,I%.."|
000023a0  09 4c 24 3d 22 22 0d 0b  2c 0f e3 49 25 3d 53 25  |.L$=""..,..I%=S%|
000023b0  b8 53 25 2b 36 0d 0b 36  12 4c 24 3d 4c 24 2b bd  |.S%+6..6.L$=L$+.|
000023c0  28 3f 28 49 25 29 29 0d  0b 40 05 ed 0d 0b 4a 07  |(?(I%))..@....J.|
000023d0  3d 4c 24 0d 0b 54 0b f4  22 81 2a 2a 2a 2a 0d 0b  |=L$..T..".****..|
000023e0  5e 10 dd a4 63 68 65 63  6b 5f 64 61 74 61 0d 0b  |^...check_data..|
000023f0  68 65 51 25 3d 30 3a f5  3a 51 25 3d 51 25 2b 31  |heQ%=0:.:Q%=Q%+1|
00002400  3a fd 73 68 61 72 65 24  28 51 25 29 3d 22 20 20  |:.share$(Q%)="  |
00002410  20 20 20 20 20 22 20 84  70 72 69 63 65 28 51 25  |     " .price(Q%|
00002420  29 3d 30 20 84 51 25 3d  31 36 38 3a e7 73 68 61  |)=0 .Q%=168:.sha|
00002430  72 65 24 28 51 25 29 3c  3e 22 20 20 20 20 20 20  |re$(Q%)<>"      |
00002440  20 22 20 80 70 72 69 63  65 28 51 25 29 3c 3e 30  | " .price(Q%)<>0|
00002450  20 3d b9 0d 0b 72 71 f2  68 65 61 64 69 6e 67 28  | =...rq.heading(|
00002460  2d 31 29 3a f1 22 81 43  68 65 63 6b 20 73 68 6f  |-1):.".Check sho|
00002470  77 73 20 73 6f 6d 65 20  65 72 72 6f 72 73 20 69  |ws some errors i|
00002480  6e 20 74 68 65 22 27 22  81 72 65 63 65 70 74 69  |n the"'".recepti|
00002490  6f 6e 20 6f 66 20 74 68  65 20 64 61 74 61 20 66  |on of the data f|
000024a0  72 6f 6d 86 43 45 45 46  41 58 2e 22 27 27 22 86  |rom.CEEFAX."''".|
000024b0  41 6e 6f 74 68 65 72 20  74 72 79 3f 83 28 59 2f  |Another try?.(Y/|
000024c0  4e 29 22 3b 0d 0b 7c 1d  f5 3a 51 25 3d a5 20 80  |N)";..|..:Q%=. .|
000024d0  26 44 46 3a fd 51 25 3d  38 39 20 84 51 25 3d 37  |&DF:.Q%=89 .Q%=7|
000024e0  38 0d 0b 86 11 e7 51 25  3d 37 38 20 3d b9 20 8b  |8.....Q%=78 =. .|
000024f0  3d a3 0d 0b 90 0b f4 22  81 2a 2a 2a 2a 0d 0b 9a  |=......".****...|
00002500  0c dd f2 73 65 74 5f 75  70 0d 0b a4 3e 6e 61 6d  |...set_up...>nam|
00002510  65 24 3d 22 22 3a 69 6e  69 74 25 3d 31 30 30 30  |e$="":init%=1000|
00002520  30 30 30 3a 63 61 73 68  25 3d 69 6e 69 74 25 3a  |000:cash%=init%:|
00002530  61 73 73 65 74 73 25 3d  30 3a 63 6f 6d 6d 69 73  |assets%=0:commis|
00002540  73 69 6f 6e 25 3d 30 0d  0b ae 05 e1 0d 0b b8 0b  |sion%=0.........|
00002550  f4 22 81 2a 2a 2a 2a 0d  0b c2 19 dd a4 63 6f 6d  |.".****......com|
00002560  6d 69 73 73 69 6f 6e 28  61 6d 6f 75 6e 74 25 29  |mission(amount%)|
00002570  0d 0b cc 09 ea 63 6f 6d  25 0d 0b d6 16 63 6f 6d  |.....com%....com|
00002580  25 3d 61 6d 6f 75 6e 74  25 2a 30 2e 30 30 37 0d  |%=amount%*0.007.|
00002590  0b e0 18 e7 63 6f 6d 25  3c 31 30 30 30 20 63 6f  |....com%<1000 co|
000025a0  6d 25 3d 31 30 30 30 0d  0b ea 09 3d 63 6f 6d 25  |m%=1000....=com%|
000025b0  0d 0b f4 0b f4 22 81 2a  2a 2a 2a 0d 0b fe 11 dd  |.....".****.....|
000025c0  f2 6f 73 63 6c 69 28 6c  69 6e 24 29 0d 0c 08 1f  |.oscli(lin$)....|
000025d0  58 25 3d 73 70 61 63 65  20 83 32 35 36 3a 59 25  |X%=space .256:Y%|
000025e0  3d 73 70 61 63 65 20 81  32 35 36 0d 0c 12 0f 24  |=space .256....$|
000025f0  73 70 61 63 65 3d 6c 69  6e 24 0d 0c 1c 0a d6 26  |space=lin$.....&|
00002600  46 46 46 37 0d 0c 26 05  e1 0d 0c 30 0b f4 22 81  |FFF7..&....0..".|
00002610  2a 2a 2a 2a 0d 0c 3a 0f  dd f2 63 6f 6d 70 5f 73  |****..:...comp_s|
00002620  65 6c 6c 0d 0c 44 2b f1  22 88 2a 2a 2a 89 22 3b  |ell..D+.".***.";|
00002630  73 68 61 72 65 24 28 30  29 3b 22 82 6e 6f 20 6c  |share$(0);".no l|
00002640  6f 6e 67 65 72 20 6c 69  73 74 65 64 2e 22 0d 0c  |onger listed."..|
00002650  4e 52 f1 22 83 22 3b 71  75 61 6e 74 69 74 79 25  |NR.".";quantity%|
00002660  28 30 29 3b 22 85 73 68  61 72 65 73 20 73 6f 6c  |(0);".shares sol|
00002670  64 20 40 83 22 3b 70 72  69 63 65 28 30 29 3b 22  |d @.";price(0);"|
00002680  82 60 22 3b a8 28 71 75  61 6e 74 69 74 79 25 28  |.`";.(quantity%(|
00002690  30 29 2a 70 72 69 63 65  28 30 29 29 2f 31 30 30  |0)*price(0))/100|
000026a0  0d 0c 58 27 63 61 73 68  25 3d 63 61 73 68 25 2b  |..X'cash%=cash%+|
000026b0  28 71 75 61 6e 74 69 74  79 25 28 30 29 2a 70 72  |(quantity%(0)*pr|
000026c0  69 63 65 28 30 29 29 0d  0c 62 05 e1 0d 0c 6c 17  |ice(0))..b....l.|
000026d0  f4 22 81 2a 2a 2a 2a 2a  2a 2a 2a 2a 2a 2a 2a 2a  |.".*************|
000026e0  2a 2a 2a 0d 0c 76 0d dd  a4 42 42 43 64 61 74 65  |***..v...BBCdate|
000026f0  0d 0c 80 14 f4 22 81 44  41 54 45 20 57 49 54 48  |.....".DATE WITH|
00002700  20 41 54 53 0d 0c 8a 09  2a 42 42 43 31 0d 0c 94  | ATS....*BBC1...|
00002710  0f d1 3d 30 3a f5 fd 91  3e 31 32 30 0d 0c 9e 0f  |..=0:...>120....|
00002720  77 6f 72 6b 25 3d 26 37  30 30 30 0d 0c a8 35 41  |work%=&7000...5A|
00002730  25 3d 26 37 41 3a 58 25  3d 77 6f 72 6b 25 83 32  |%=&7A:X%=work%.2|
00002740  35 36 3a 59 25 3d 77 6f  72 6b 25 81 32 35 36 3a  |56:Y%=work%.256:|
00002750  3f 77 6f 72 6b 25 3d 31  35 3a d6 26 46 46 46 31  |?work%=15:.&FFF1|
00002760  0d 0c b2 18 42 42 31 24  3d c2 c3 7e 28 77 6f 72  |....BB1$=..~(wor|
00002770  6b 25 3f 38 29 2c 31 29  0d 0c bc 2e 42 42 32 24  |k%?8),1)....BB2$|
00002780  3d c3 7e 28 77 6f 72 6b  25 3f 39 29 3a e7 20 a9  |=.~(work%?9):. .|
00002790  28 42 42 32 24 29 3d 31  20 42 42 32 24 3d 22 30  |(BB2$)=1 BB2$="0|
000027a0  22 2b 42 42 32 24 0d 0c  c6 2f 42 42 33 24 3d c3  |"+BB2$.../BB3$=.|
000027b0  7e 28 77 6f 72 6b 25 3f  31 30 29 3a e7 20 a9 28  |~(work%?10):. .(|
000027c0  42 42 33 24 29 3d 31 20  42 42 33 24 3d 22 30 22  |BB3$)=1 BB3$="0"|
000027d0  2b 42 42 33 24 0d 0c d0  18 4a 44 3d bb 28 42 42  |+BB3$....JD=.(BB|
000027e0  31 24 2b 42 42 32 24 2b  42 42 33 24 29 0d 0c da  |1$+BB2$+BB3$)...|
000027f0  09 4a 25 3d 4a 44 0d 0c  e4 1f 59 31 3d 28 31 30  |.J%=JD....Y1=(10|
00002800  30 2a 28 4a 44 2d 31 35  30 37 38 2e 32 29 29 81  |0*(JD-15078.2)).|
00002810  33 36 35 32 35 0d 0c ee  2b 4d 31 3d a8 28 28 4a  |36525...+M1=.((J|
00002820  44 2d 31 34 39 35 36 2e  31 2d a8 28 33 36 35 2e  |D-14956.1-.(365.|
00002830  32 35 2a 59 31 29 29 2f  33 30 2e 36 30 30 31 29  |25*Y1))/30.6001)|
00002840  0d 0c f8 3c 44 25 3d 4a  44 2d 31 34 39 35 36 2d  |...<D%=JD-14956-|
00002850  a8 28 33 36 35 2e 32 35  2a 59 31 29 2d a8 28 33  |.(365.25*Y1)-.(3|
00002860  30 2e 36 2a 4d 31 29 3a  4b 3d a8 28 30 2e 37 2b  |0.6*M1):K=.(0.7+|
00002870  28 31 2f 28 31 37 2d 4d  31 29 29 29 0d 0d 02 10  |(1/(17-M1)))....|
00002880  4d 25 3d 4d 31 2d 31 2d  31 32 2a 4b 0d 0d 0c 0b  |M%=M1-1-12*K....|
00002890  5a 25 3d 59 31 2b 4b 0d  0d 16 31 57 25 3d 28 4a  |Z%=Y1+K...1W%=(J|
000028a0  44 2b 33 29 83 37 3a f7  8d 54 60 4d 3a e3 64 61  |D+3).7:..T`M:.da|
000028b0  79 3d 30 b8 57 25 3a f3  44 24 3a ed 3a 44 24 3d  |y=0.W%:.D$:.:D$=|
000028c0  44 24 2b 22 64 61 79 22  0d 0d 20 29 dc 20 53 75  |D$+"day".. ). Su|
000028d0  6e 2c 4d 6f 6e 2c 54 75  65 73 2c 57 65 64 6e 65  |n,Mon,Tues,Wedne|
000028e0  73 2c 54 68 75 72 73 2c  46 72 69 2c 53 61 74 75  |s,Thurs,Fri,Satu|
000028f0  72 0d 0d 2a 1d f7 8d 54  74 4d 3a e3 64 61 79 3d  |r..*...TtM:.day=|
00002900  31 b8 4d 25 3a f3 6d 6f  6e 74 68 24 3a ed 0d 0d  |1.M%:.month$:...|
00002910  34 5b dc 20 4a 61 6e 75  61 72 79 2c 46 65 62 72  |4[. January,Febr|
00002920  75 61 72 79 2c 4d 61 72  63 68 2c 41 70 72 69 6c  |uary,March,April|
00002930  2c 4d 61 79 2c 4a 75 6e  65 2c 4a 75 6c 79 2c 41  |,May,June,July,A|
00002940  75 67 75 73 74 2c 53 65  70 74 65 6d 62 65 72 2c  |ugust,September,|
00002950  4f 63 74 6f 62 65 72 2c  4e 6f 76 65 6d 62 65 72  |October,November|
00002960  2c 44 65 63 65 6d 62 65  72 0d 0d 3e 58 e7 44 25  |,December..>X.D%|
00002970  3d 31 84 44 25 3d 32 31  84 44 25 3d 33 31 20 74  |=1.D%=21.D%=31 t|
00002980  68 24 3d 22 73 74 2e 22  20 8b e7 44 25 3d 32 84  |h$="st." ..D%=2.|
00002990  44 25 3d 32 32 20 74 68  24 3d 22 6e 64 2e 22 20  |D%=22 th$="nd." |
000029a0  8b e7 44 25 3d 33 84 44  25 3d 32 33 20 74 68 24  |..D%=3.D%=23 th$|
000029b0  3d 22 72 64 2e 22 20 8b  74 68 24 3d 22 74 68 2e  |="rd." .th$="th.|
000029c0  22 0d 0d 48 2d 3d 44 24  2b 22 20 20 22 2b c3 28  |"..H-=D$+"  "+.(|
000029d0  44 25 29 2b 74 68 24 2b  22 20 22 2b 6d 6f 6e 74  |D%)+th$+" "+mont|
000029e0  68 24 2b 22 20 31 39 22  2b c3 28 5a 25 29 0d 0d  |h$+" 19"+.(Z%)..|
000029f0  52 0b f4 22 81 2a 2a 2a  2a 0d 0d 5c 17 dd a4 61  |R..".****..\...a|
00002a00  64 61 70 74 65 72 3a de  20 77 6f 72 6b 25 20 32  |dapter:. work% 2|
00002a10  0d 0d 66 48 41 25 3d 26  37 41 3a 58 25 3d 77 6f  |..fHA%=&7A:X%=wo|
00002a20  72 6b 25 83 32 35 36 3a  59 25 3d 77 6f 72 6b 25  |rk%.256:Y%=work%|
00002a30  81 32 35 36 3a 3f 77 6f  72 6b 25 3d 31 37 3a d6  |.256:?work%=17:.|
00002a40  26 46 46 46 31 3a e7 77  6f 72 6b 25 3f 31 3d 30  |&FFF1:.work%?1=0|
00002a50  20 3d b9 20 8b 20 3d a3  0d ff                    | =. . =...|
00002a5a
18-06-88/FOLIO.m0
18-06-88/FOLIO.m1
18-06-88/FOLIO.m2
18-06-88/FOLIO.m4
18-06-88/FOLIO.m5