20 MODE1:INK0,0:INK1,26:INK2,20:INK3,17:BORDER10:DEFINTa-z
21 DEFFNpod(x,y)=ASC(MID$(ship$(x),y+17,1))
22 DEFFNr(x)=INT(RND(1)*x+1)
29 rev$=CHR$(24):cup$=CHR$(11):cdn$=CHR$(11):clf$=CHR$(8):crg$=CHR$(9):dell$=CHR$(18):delo$=CHR$(20):bel$=CHR$(7):cr$=CHR$(13)
30 ONERRORGOTO50
40 ssp=-1:ùSPON:GOTO60
50 ssp=0:RESUMENEXT
60 ON ERROR GOTO:CLS:LOCATE14,5:PEN1:PRINT"Star Trader":IFsspTHENPRINT"`star trader"
70 PEN3:LOCATE1,15:PRINT"Based on a SPI game designed by":PEN2:PRINTTAB(10);"Nick Karp"
80 PEN3:PRINT:PRINT"This computer version by":PEN2:PRINTTAB(10);"Ian Phillips"
90 IFsspTHENùFEED,4:PRINT"`pleese wait:loading data"ELSELOCATE1,24:PEN1:PRINT"Please wait...loading data"
100 noplan=6:nocomm=4
110 DIMplanet$(noplan),port(noplan),law(noplan),patrol(noplan),security(noplan),hypj$(noplan),stat$(noplan),price(noplan,nocomm),modif(noplan,nocomm)
120 FORi=1TOnoplan:READplanet$(i),port(i),law(i),patrol(i),security(i),hypj$(i),stat$(i)
130 FORj=1TOnocomm:READprice(i,j):NEXT
140 FORj=1TOnocomm:READmodif(i,j):NEXT
150 NEXTi:planet$(0)="not known"
160 DIMcomm$(nocomm+3):FORi=1TOnocomm+3:READcomm$(i):NEXT
170 noags=10:DIMagname$(noags):FORi=1TOnoags:READagname$(i):NEXT
180 nohulls=13:DIMhull$(nohulls),hulls(nohulls,7)
190 FORi=1TOnohulls:READhull$(i):FORj=0TO7:READhulls(i,j):NEXTj,i
200 nopods=7:DIMpod$(nopods),
25711 <=(nopods,2)
210 FORi=0TOnopods:READpod$(i):FORj=0TO2:READ
25711 <=(i,j):NEXTj,i
220 noopc=26:DIMoppo$(noopc),opexp$(noopc):FORi=1TOnoopc:READoppo$(i),opexp$(i):NEXT
230 noevc=14:DIMevnt$(noevc),evexp$(noevc):FORi=1TOnoevc:READevnt$(i),evexp$(i):NEXT
240 DIMcrews(3):FORi=0TO3:READcrews(i):NEXT
250 DIMsabo(21,1):FORi=2TO21:READsabo(i,0):NEXT:FORi=2TO20:READsabo(i,1):NEXT
260 DIMbmt(2,6):FORi=0TO2:FORj=1TO6:READbmt(i,j):NEXTj,i
270 DIMcrt$(31):FORi=2TO31:READcrt$(i):NEXT
275 GOTO1360
290 DATABeta Hydra,4,4,8,10," 43885","BY",6,10,18,15,-8,-8,-10,-9
300 DATASigma Draconis,1,1,2,4,"6 5774","24",8,4,14,10,-5,-1,-8,-3
310 DATAMu Herculis,0,1,0,3,"66 662","3",8,11,12,-10000,-9,+1,-4,0
320 DATATau Ceti,3,2,5,7,"854 95","BY2",6,4,-10000,-10000,-10,-9,0,0
330 DATAEpsilon Eridani,3,4,7,9,8549 6,BY,5,10,17,14,-7,-7,-9,-8
340 DATAGamma Leporis,1,3,4,6,"74277 ",B1,2,-10000,-10000,-10000,+1,0,0,0
370 DATAAlloys,Isotopes,Monopoles,Spice,Slaves,Weapons,Tempus
400 DATAAmy,Badger,Crip,Dragon,Dwarf,J.B.,Tender,Two Gun,Willy,X
430 DATAClarinet,5,2,1,3,2,0,160,20
440 DATACorco Gamma,2,1,1,2,1,0,80,10
450 DATACorco Iota,6,2,1,3,3,1,190,30
460 DATACorco Mu,9,1,1,2,1,1,160,30
470 DATACorco Zeta,4,1,1,1,1,0,80,10
480 DATADagger,1,2,1,5,4,0,250,60
490 DATAFlute,3,3,1,3,3,0,225,30
500 DATALeviathan,18,1,4,1,1,6,200,20
510 DATAMonarch,12,1,3,1,1,4,150,15
520 DATAPheonix,6,1,1,1,1,2,85,10
530 DATAPiccolo,0,3,1,2,2,0,70,10
540 DATASpear,5,1,2,5,4,1,600,100
550 DATASword,3,3,1,5,4,0,500,80
580 DATAArsenal,7.14,1,100
590 DATAAugmented Jump,0.00,0,10
600 DATABattle Comm,6.00,2,50
610 DATACargo,0.00,0,4
620 DATAHeavy Weapons,5.10,1,80
630 DATAHunter,4.07,0,30
640 DATALight Weapons,3.05,0,17
650 DATAPassenger,0.00,1,15
680 DATASlaves,"Buy (1) Mu Herculis; sell Epsilon Eridani"
690 DATAWeapons,"Buy (3) Epsilon Eridani; sell Mu Herculis"
700 DATAWeapons,"Buy (10) Tau Ceti; sell Gamma Leporis"
710 DATABattle Comm Pod,"Available Gamma Leporis"
720 DATAFurs,"Buy (10) Mu Herculis Spaceport; sell (30) Beta Hydra Spaceport. 10 units available; requires no cargo space"
730 DATASlaves,"Buy (2) Mu Herculis; sell Beta Hydra"
740 DATATempus,"Buy (15) Beta Hydra; sell Gamma Hydra"
750 DATAEmissary,"and staff to be taken from Epsilon Eridani Spaceport to Mu Herculis Spaceport. Fills one 1 passenger pod. Carrier must have Rep > 20. 200HT's on arrival"
760 DATAExotic Alien Plants,"to be taken from Gamma Leporis Spaceport to Epsilon Eridani Spaceport. Requires 1 Cargo Pod (not hull). 150HT's & +3 to Rep on arrival"
770 DATASlaves,"Buy (1) Mu Herculis; sell Gamma Leporis."
780 DATASlaves,"Buy (4) Mu Herculis; sell Gamma Leporis."
790 DATATempus,"Buy (4) Epsilon Eridani; sell Gamma Leporis."
800 DATASpear,"and/or 5 illegal pods. Available Gamma Leporis."
810 DATAIllegal Pods,"(one of each type). Available Tau Ceti."
820 DATAExploration Expedition,"announced by inde. corp. Player may send 1 legal ship. Returns in 1D6 turns. If 1 roll, ship destroyed. Returning ship gets 2D*50HTs."
830 DATADagger,"and/or 1 illegal pod. Available Tau Ceti."
840 DATAWeapons,"Buy (8) Epsilon Eridani; sell Gamma Leporis."
850 DATAWeapons,"Buy (3) Beta Hydra; sell Gamma Leporis."
860 DATATempus,"Buy (10) Tau Ceti; sell Sigma Draconis."
870 DATAAny Illegal Hull,"and/or 5 illegal pods. Available Mu Herculis."
880 DATASword,"and/or 3 illegal pods. Available Mu Herculis."
890 DATAUnique Creatures,"to be taken from Mu Herculis Spaceport to Epsilon Eriani Spaceport. Fills 1 pass. pod. Recieve 150HTs upon arrival."
900 DATAWeapons,"Buy (5) Beta Hydra; sell Mu Herculis."
910 DATADagger,"and/or 1 illegal pod. Available Sigma Draconis."
920 DATAWeapons,"Buy (5) Epsilon Eridani; sell Mu Herculis."
930 DATAIllegal Pods,"(one of each type). Available Epsilon Eridani."
960 DATAPsychic Jam,"-4 to all Hyperjump rolls this turn."
970 DATAAlien Race,"newly discovered. -3 to all prices."
980 DATAGeneral War,"+3 Monopole prices; +6 Alloy prices, +2 Isotope Prices. No new ships this and next turn. +5 to die roll for ship selling prices. +4 to all Patrol values."
990 DATAInflation,"Massive Counterfeit operation. Reduce all assests & loans by 50% (round up)."
1000 DATACivil War,"on Gamma Leporis. Triple weapon prices on GL. All ships in GL spaceport seized and owners given 50% of total list price (not crew). All factories & warehouses seized at 50%. All goods lost."
1010 DATAColony,"in Mu Herculis system. +5 to price of all goods in that system."
1020 DATAMonopole,"production breakthrough. +3 to S/D for all further Monopole transactions."
1030 DATASpice,"production breakthrough. +3 to S/D for all further Spice transactions."
1040 DATAIsotopes,"usage breakthrough. -3 to S/D for all further Isotope transactions (minimum of -10)."
1050 DATAPlague,"All Spices prices +4. No hyperjumps to or from Spaceports. All Patrol & Security Ratings +1 for this turn."
1060 DATAInquiry,"reforms government audits. All players lose 2D6 Rep"
1070 DATAPirates,"raid Mu Herculis. All goods in warehouses lost. Roll 1D6 for each ship in MH Spaceport. <=3, ship & crew lost. >=4, ship put into system space. +2 to Patrol & Security Ratings everywhere."
1080 DATASpecial Tax,"All players pay 1HT for each warehouse unit; 2HTs for wach factory unit; & 5HTs for each ship. Will not put assests below 0."
1090 DATAAlloys,"discovered in remote planet. -5 to Alloy prices. +2 to Monopole & Isotope prices."
1120 DATA20,10,6,2
1150 DATA0,0,0,0,0,0,0,0,0,1,1,2,2,3,3,5,5,7,7,10
1160 DATA0,0,0,0,0,12,12,12,12,10,10,6,6,4,4,0,0,0,0
1190 DATA5,8,10,15,20,25
1200 DATA8,10,15,25,30,40
1210 DATA12,15,25,35,50,70
1240 DATA0000,0000,0000
1250 DATA1000,1000
1260 DATA1100,1100,1100
1270 DATA2110,2110,2110
1280 DATA2211,2211,2211,2211
1290 DATA3221,3221,3221,3221
1300 DATA4322,4322,4322,4322,4322
1310 DATA5432,5432,5432,5432,5432
1320 DATA6543
1360 CLS
1370 PEN1:LINEINPUT"How many players are there (1-6)? ";a$
1380 IFa$=""ORVAL(a$)<1ORVAL(a$)>6THEN1360
1390 noplay=VAL(a$):DIMplayer$(noplay),asset(noplay),rep(noplay),whse$(noplay,noplans),facts$(noplay,noplans),mktpos$(noplay,noplan),ships$(noplay*4),conn(noplay,2)
1410 FORi=1TOnoplay
1420 MODE2:PEN1:PRINT"Player number ";i:PRINT:PRINT
1430 LINEINPUT"Please enter your name : ",player$(i)
1440 IFplayer$(i)=""THENPRINTbel$;cup$;dell$;:GOTO1430
1441 IFLEN(player$(i))>15THENPRINT"Less than 15 characters please.":PRINTbel$;cup$;dell$;:GOTO1430
1442 player$(i)=UPPER$(player$(i))
1450 CLS:PRINTUSING"Player number # : &";i;player$(i);
1460 PRINT:PRINT
1470 PRINT"You start the game with the following ship(s) :":PRINT
1475 ship$(i)=CHR$(1)+player$(i)+SPACE$(15-LEN(player$(i)))+CHR$(0)+CHR$(1)+CHR$(0)+CHR$(3)+STRING$(2,0)+CHR$(1)+CHR$(1)+CHR$(1)+CHR$(0)+CHR$(i)
1480 a=i:GOSUB10010
1490 assets(i)=300
1500 PRINT:PRINT"Your assets are";assets(i);"HectoTrans.":PRINT
1510 tconn=FNr(6)+FNr(6)
1520 LOCATE1,14:PRINT"You have ";rev$;tconn;rev$;" points to spread amoungst your connection levels."
1530 PRINT"Enter the desired levels here as Political, Business, & Criminal"
1535 PRINTrev$;"This should be done in secret.";rev$:PRINT
1540 INPUT"(0-20), (0-20), (0-20) >",poll,busl,criml
1550 IFpoll<0ORpoll>20ORbusl<0ORbusl>20ORcriml<0ORcriml>20THENPRINTbel$;cup$;delo$;:GOTO1540
1560 IFpoll+busl+criml<>tconnTHENPRINT"The three numbers must add up to";tconn;bel$;cr$;cup$;dell$;:GOTO1540
1570 LOCATE1,14:PRINTCHR$(20);USING"Political ##   Business  ##   Criminal  ##";poll;busl;criml:conn(i,0)=poll:conn(i,1)=busl:conn(i,2)=criml
1580 PRINT:rep(i)=20:PRINT"Your Reputation is";rep(i)
1590 GOSUB12010
1591 CLS:FORj=1TOnoplan:PRINTj;planet$(j):NEXT:PRINT
1592 LINEINPUT"Enter the starting planet for your ship : ";a$
1593 IFa$=""ORa$="-"THENPRINTbel$;cr$;up$;up$;delo$;:GOTO1592
1594 IFVAL(a$)<1ORVAL(a$)>noplanTHENPRINT"Between 1 and";noplan;".";bel$;cr$;up$;dell$;:GOTO1592
1595 MID$(ship$(i),26,1)=CHR$(VAL(a$))
1600 NEXTi
1640 turn=1:DIMevent$(20),loans(noplay*2,2)
1650 MODE2:WINDOW#0,1,80,20,25:WINDOW#1,1,80,1,2:WINDOW#2,1,80,4,18
1660 LOCATE#7,1,3:PRINT#7,STRING$(80,154);:LOCATE#7,1,19:PRINT#7,STRING$(80,154);
1690 PRINT#1,"Turn";turn;TAB(72);"Bid Phase";
1695 DIMibid(noplay),cbid(noplay*4,3):nxbid=0
1700 FORi=1TOnoplay
1710 CLS#2:LOCATE#1,1,2:PRINT#1,"Player number";i;": ";player$(i):IFsspTHENPRINT"`player number";i
1720 PRINT#2,"Enter your Inititive bid:":IFsspTHENPRINT"`:in seekret"ELSEPRINT#2,rev$;"in secret";rev$
1730 CLS#0:LINEINPUT#0,"> ";a$:IFa$=""ORa$="-"THENPRINTbel$;:GOTO1730
1740 IFVAL(a$)<0ORVAL(a$)>assets(i)THENPRINTbel$;:GOTO1730
1750 assets(i)=assets(i)-VAL(a$):ibid(i)=VAL(a$)
1760 GOSUB13020
1770 CLS#0:PRINT"Enter the planet number for the transaction or '*' to end your transactions."
1780 PRINT"(";1;"-";noplan;", '*')";:LINEINPUT"> ";a$:IFa$="*"THEN1970
1790 IFa$=""ORa$="-"THENPRINTbel$;up$;delo$;:GOTO1780
1800 IFVAL(a$)<1ORVAL(a$)>noplanTHENPRINTbel$;up$;delo$;:GOTO1780
1810 cbid(nxbid,0)=i:cbid(nxbid,1)=VAL(a$)
1820 CLS#0:PRINT"Bidding on ";planet$(cbid(nxbid,1))
1830 PRINT"Now enter the commodity to bid for and whether ";rev$;"B";rev$;"uying or ";rev$;"S";rev$;"elling."
1840 PRINT"(";1;"-";nocomm;"), (B or S)";:INPUTa$,b$:b$=UPPER$(b$)
1850 IFa$=""ORa$="-"OR(b$<>"S"ANDb$<>"B")THENPRINTbel$;up$;delo$;:GOTO1840
1860 IFVAL(a$)<1ORVAL(a$)>nocommTHENPRINTbel$;up$;delo$;:GOTO1840
1870 cbid(nxbid,2)=VAL(a$):IFb$="S"THENcbid(nxbid,2)=-cbid(nxbid,2)
1880 CLS#0:IFb$="S"THENPRINT"Selling ";ELSEPRINT"Buying ";
1890 PRINTcomm$(cbid(nxbid,2));" on ";planet$(cbid(nxbid,1))
1900 IFprice(cbid(nxbid,1),cbid(nxbid,2))=0THENPRINTbel$;comm$(cbid(nxbid,2));" is not used on ";planet$(cbid(nxbid,2)):GOSUB120000:GOTO1770
1910 PRINT"What is your bid (current price =";price(cbid(nxbid,1),cbid(nxbid,2));")"
1920 PRINT"( 1 - 30 )";:LINEINPUT"> ",a$
1930 IFa$=""ORa$="-"THENPRINTbel$;up$;delo$;:GOTO1920
1940 IFVAL(a$)<1ORVAL(a$)>30THENPRINTbel$;up$;delo$;:GOTO1920
1950 cbid(nxbid,3)=VAL(a$)
1960 nxbid=nxbid+1
1970 NEXTi
1980 CLS#0:CLS#2:LOCATE#1,40,1:PRINT#1,delo$;:LOCATE#1,64,1:PRINT#1,"Initiative Phase"
1990 PRINT#2,"Initiative Order:":PRINT#2
2000 PRINT#2,"Player";TAB(20);"Bid";TAB(29);"Total";TAB(40);"Init."
2010 FORi=1TOnoplay:LOCATE#2,1,i+5:PRINT#2,player$(i);TAB(20);ibid(i);:ibid(i)=ibid(i)+FNr(6)+FNr(6):PRINT#2,TAB(30);ibid(i);:NEXT
2020 iorder$=LEFT$("123456",noplay)
2025 b=0:FORi=1TOnoplay:a=0:FORj=1TOnoplay:IFibid(i)=ibid(j)ANDi<>jTHENibid(j)=ibid(j)+FNr(6)+FNr(6):a=-1
2026 NEXTj:IFaTHENibid(i)=ibid(i)+FNr(6)+FNr(6)
2027 NEXTi:IFbTHENFORi=1TOnoplay:LOCATE#2,30,i+5:PRINT#2,ibid(i);:NEXT:GOTO2025
2030 DIMibid2(noplay):FORi=1TOnoplay:ibid2(i)=ibid(i):NEXT
2040 FORi=1TOnoplay-1:FORj=2TOnoplay:IFibid2(j)>ibid2(i)THENa=ibid2(i):ibid2(i)=ibid2(j):ibid2(j)=a:a$=MID$(iorder$,i,1):MID$(iorder$,i,1)=MID$(iorder$,j,1):MID$(iorder$,j,1)=a$
2050 NEXTj,i
2060 FORi=1TOnoplay:LOCATE#2,41,5+VAL(MID$(iorder$,i,1)):PRINT#2,i;:NEXT
2080 GOSUB12010
2090 CLS#2:PRINT#2,"Determine Turn Order:-":ERASEibid,ibid2:DIMtor(noplay)
2100 LOCATE#2,1,3:PRINT#2,"Init.";TAB(10);"Player";TAB(30);"Turn Order"
2110 FORi=1TOnoplay:LOCATE#2,1,i+3:PRINT#2,i;TAB(10);player$(i);TAB(30);i;:NEXT
2120 LOCATE#2,1,5+noplay:PRINT#2,"Hit ";rev$;"ENTER";rev$;" to leave your order as is,":PRINT#2,"or enter the turn order you want."
2130 FORi=1TOnoplay:CLS#0
2140 LOCATE#2,31,i+3:LINEINPUT#2,a$:IFa$=""THENa$=STR$(i)
2150 IFa$="-"THENLOCATE#2,31,i+3:PRINT#2,i;delo$;clr$;:GOTO2140
2160 IFtor(VAL(a$))<>0THENPRINTbel$;"Already used.":LOCATE#2,30,i+3:PRINT#2,i;dell$;clr$;:GOTO2140ELSEtor(VAL(a$))=i
2170 NEXT
2180 torder$="":FORi=1TOnoplay:torder$=torder$+HEX$(tor(i),1):NEXT
2190 LOCATE#2,50,3:PRINT#2,"Player";:FORi=1TOnoplay:LOCATE#2,50,i+3:PRINT#2,player$(tor(i));:NEXT
2200 GOSUB12010
2230 LOCATE#1,40,1:PRINT#1,delo$;:LOCATE#1,70,1:PRINT#1,"News Phase";
2240 CLS#0:CLS#2
2250 IFevent$(turn)=""THENPRINT#2,"No news chits.":GOSUB12010:STOP
2260 FORi=1TOLEN(event$(i))STEP3:chit$=MID$(event$(turn),i,3):IFLEFT$(chit$,1)="S"THEN2285
2270 IFLEFT$(chit$,1)="O"THENGOSUB20030
2280 IFLEFT$(chit$,1)="E"THENGOSUB21030
2285 NEXTi
2290 FORi=1TOnoplan:FORj=1TOnocomm:IFprice(i,j)<1ANDprice(i,j)>-9999THENprice(i,j)=1
2300 IFprice(i,j)>20THENprice(i,j)=20
2310 IFprice(i,j)<0THENprice(i,j)=-10000
2320 NEXTj,i
9999 END
10010 hlno=ASC(LEFT$(ship$(a),1))
10020 PRINT"Hull/Name : ";hull$(hlno);"/";MID$(ship$(a),2,15)
10030 cargo=hulls(hlno,5)+FNpod(a,3)*2
10040 pass=FNpod(a,7)*2
10050 PRINTUSING"ç        ç  ç        ç  ç        ç  ç        ç  ç        ç  ç        ç";"Cargo Cap";"Pass Cap";"Protect";"Combat";"Intercept","Crew"
10055 GOSUB11010
10060 PRINTUSING"   ##          ##         ##       ## (##)  ";cargo;pass;hulls(hlno,4);INT(
28015 ba+);(
28015 ba+-INT(
28015 ba+))*100;
10070 PRINTUSING"       ##      ##/!";hulls(hlno,1);hulls(hlno,2)+FNpod(a,0)*
25711 <=(0,1)+FNpod(a,2)*
25711 <=(2,1)+FNpod(a,4)*
25711 <=(4,1)+FNpod(a,7)*
25711 <=(7,1);CHR$(ASC(MID$(ship$(a),25,1))+65)
10071 PRINT"Pods:  ";:FORpsi=1TOnopods:IFFNpod(a,psi)THENPRINTpod$(psi);:IFFNpod(a,psi)>1THENPRINT" x";FNpod(a,psi);";";ELSEPRINT";";
10072 NEXTpsi:PRINT
10080 PRINT"Location : ";planet$(ASC(MID$(ship$(i),26,1)))
10100 RETURN
11010 
28015 ba+=hulls(ASC(LEFT$(ship$(a),1)),3)+FNpod(a,0)*
25711 <=(0,0)+FNpod(a,2)*
25711 <=(2,0)+FNpod(a,4)*
25711 <=(4,0)+FNpod(a,5)*
25711 <=(5,0)+FNpod(a,6)*
25711 <=(6,0)
11020 RETURN
11120 cost=hulls(a,6):FORsti=0TOnopods:cost=cost+FNpod(a,sti)*pods(sti,2):NEXT
11130 RETURN
12010 WHILEINKEY$<>"":WEND
12015 LOCATE#7,28,19:PRINT#7,rev$;"Hit any key to continue";rev$;
12020 CALL&BB18
12030 LOCATE#7,1,19:PRINT#7,STRING$(80,154);
12040 RETURN
13020 WINDOWSWAP0,2:CLS:PRINTrev$;
13030 FORpci=1TOnoplan:LOCATE1,pci+2:PRINTUSING"##. ç              ç";pci;planet$(pci);:NEXT
13040 FORpci=1TOnocomm:LOCATEpci*10+12,2:PRINTUSING"ùç       ç";comm$(pci);:LOCATEpci*10+17,1:PRINTUSING"#";pci;:NEXT
13050 PRINTrev$;:FORpci=1TOnoplan:FORpcj=1TOnocomm:LOCATEpcj*10+12,pci+2:IFprice(pci,pcj)>0THENPRINTUSING"ù ##/+##";price(pci,pcj);modif(pci,pcj);ELSEPRINT"ù   -";
13055 NEXTpcj,pci
13060 LOCATE1,noplan+4:PRINT"The first number indicates current price, second is S/D modifier.";
13070 WINDOWSWAP0,2:PEN1:PAPER0
13080 RETURN
20030 CLS#2:PRINT#2,"The chit was an opportunity : ";oppo$(cno):PRINT#2
20040 PRINT#2,"Explanation:-"
20050 PRINT#2,opexp$(cno)
20060 GOSUB12010
20070 RETURN
21030 CLS#2:PRINT#2,"An event has occured:-":PRINT#2
21040 PRINT#2,"Event : ";evnt$(cno)
21050 PRINT#2,"Explanation :-"
21060 PRINT#2,evexp$(cno)
21070 ONcnoGOTO21100,21110,21120,21130,21140,21160,21170,21180,21190,21210,21220,21240,21270,21300
21100 RETURN
21110 FOReci=1TOnoplan:FORecj=1TOnocomm:price(eci,ecj)=price(eci,ecj)-3:NEXTecj,eci:RETURN
21120 FOReci=1TOnoplan:price(eci,3)=price(eci,3)+3:price(eci,1)=price(eci,1)+6