Listing of file='ELECCO.BAS;01' on disk='vmedia/chip_8-sector.ccvf'
0 OUT 8,247:DEF FN C(X)= (X- 1)* RND (1)+ 1 10 DEF FN C0(X)= INT (ABS (X)+ .5)* SGN (X) 20 DEF FN C2(X)= (INT (ABS (X* 100)+ .5)/ 100)* SGN (X) 30 PLOT 14,31,29,20,30,16,12,27,24:PRINT :PRINT :PRINT 40 A$= "+--++--++--++--++--++--++--++--+" 50 PRINT TAB( 16)A$:PRINT :PRINT TAB( 24)"ELECTRIC COMPANY":PRINT :PRINT :PRINT TAB( 16)A$:PLOT 3,64,0,15,14,29,18 60 FOR J= 1TO 5000:NEXT 70 PLOT 12:OUT 8,255:INPUT "DO YOU NEED INSTRUCTIONS (YES/NO)? ";Z$ 80 OUT 8,247:IF Z$= "NO"GOTO 540 90 PLOT 12:PRINT "YOU HAVE BEEN HIRED AS PRESIDENT OF AN ELECTRIC COMPANY. 100 PRINT "YOU WILL BE PRESIDENT FOR 10 YEARS BEFORE BEING NAMED TO THE 110 PRINT "BOARD OF DIRECTORS--ASSUMING A SUCCESSFUL TERM AS PRESIDENT. 120 PRINT TAB( 5)"YOU WILL START WITH ONE MILLION DOLLARS IN CASH, 1 POWER 130 PRINT "PLANT AND STOCK PILES OF COAL AND FUEL OIL--THE TWO FUELS YOU 140 PRINT "MAY USE TO POWER A GENERATING PLANT. YOU MAY CHOOSE EITHER 150 PRINT "FUEL YOU WISH TO POWER THE PLANT YOU START WITH AND EACH 160 PRINT "SUCCEEDING PLANT YOU BUILD THEREAFTER. ALL PLANTS HAVE A 170 PRINT "GENERATING CAPACITY OF 1 MILLION KILOWATTS. AS THE PLANTS 180 PRINT "BECOME OLDER, THEY BECOME INCREASINGLY INEFFICIENT. THAT IS, 190 PRINT "THEY REQUIRE MORE FUEL TO PRODUCE EACH KILOWATT OF ELECTRICITY. 200 PRINT "THEY CAN BE BROUGHT BACK TO PEAK EFFICIENCY BY REMODELING THEM. 210 PRINT "THE LONGER YOU WAIT TO REMODEL, THE MORE IT WILL COST. AND IF 220 PRINT "MORE THAN ONE PLANT IS OWNED, ALL PLANTS MUST BE REMODELED AT 230 PRINT "THE SAME TIME. 240 PRINT TAB( 5)"PRESS ANY KEY TO CONTINUE INSTRUCTIONS":PLOT 3,64,0:POKE 33278,0:OUT 8,255 241 IF PEEK (33278)= 0GOTO 241 250 OUT 8,247:PLOT 12:PRINT "YOU HAVE TWO FUELS FROM WHICH TO CHOOSE: COAL AND FUEL OIL. 260 PRINT "COAL TENDS TO YIELD MORE KILOWATTS PER DOLLAR OF FUEL; HOWEVER, 270 PRINT "COAL PLANTS COST ABOUT 50% MORE TO BUILD THAN FUEL OIL PLANTS. 280 PRINT TAB( 5)"MANAGEMENT OF FUEL SUPPLIES IS IMPORTANT BECAUSE THERE IS 290 PRINT "A LEAD TIME OF 1 YEAR BEFORE IT ARRIVES. COAL ORDERED IN YEAR 300 PRINT "4 IS NOT AVAILABLE FOR USE UNTIL YEAR 5, SO A CLOSE EYE MUST BE 310 PRINT "KEPT ON FUEL RESERVES. 320 PRINT TAB( 5)"INFLATION AFFECTS THE COST OF ALMOST EVERYTHING YOU 330 PRINT "ENCOUNTER, FROM FUEL COSTS TO DAMAGE CAUSED BY DISASTER OR 340 PRINT "JUDGEMENT ERROR. IF YOU FIND THAT A RATE INCREASE IS REQUIRED 350 PRINT "TO MAINTAIN A PROFITABLE BUSINESS AND KEEP THE STOCK HOLDERS 360 PRINT "HAPPY, YOU MAY APPLY FOR A RATE INCREASE EACH YEAR. ALL YOU DO 370 PRINT "IS SPECIFY WHAT YOU WANT THE NEW RATE TO BE (THE INITITAL RATE 380 PRINT "IS .05 PER KILOWATT). 390 PRINT TAB( 5)"PRESS ANY KEY TO CONTINUE INSTRUCTIONS":PLOT 3,64,0:POKE 33278,0:OUT 8,255 391 IF PEEK (33278)= 0GOTO 391 400 OUT 8,247:PLOT 12:PRINT TAB( 5)"TEMPER YOUR RATE REQUESTS WITH MODERATION. GREED WILL 410 PRINT "GET YOU NOWHERE. RATE INCREASES CAN BE REJECTED AS WELL AS 420 PRINT "ACCEPTED. BY WAITING LONGER BETWEEN INCREASE REQUESTS, YOU 430 PRINT "CAN ASK FOR A LARGER INCREASE AND HAVE IT ACCEPTED. ALSO BY 440 PRINT "WAITING LONGER BETWEEN REQUESTS, A COMPROMISE RATE INCREASE MAY 450 PRINT "BE GRANTED--WHERE AS FREQUENT REQUESTS MAY RESULT IN A DENIED 460 PRINT "INCREASE. AS WITH FUEL ORDERS, THERE IS A LEAD TIME OF 1 YEAR 470 PRINT "FOR RATE HIKES. A RATE INCREASE GRANTED IN YEAR 6 DOES NOT 480 PRINT "TAKE AFFECT UNTIL YEAR 7. 490 PRINT :PRINT TAB( 5)"NOW LIKE ALL GOOD EXECUTIVES, YOU MUST GET TO WORK. 500 PRINT :PRINT TAB( 20)"G O O D L U C K ! ! ! 510 PRINT :PRINT "PRESS ANY KEY TO BEGIN":PLOT 3,64,0,27,11:POKE 33278,0:OUT 8,255 511 IF PEEK (33278)= 0GOTO 511 540 OUT 8,247:YR= 0:PI= 1:GF= 1:CS= 700:CC= 20:CF= 25:CL= 1600:FO= 2500:CR= 1000000:R= .05:RT= .05 550 PLOT 12:PRINT "WHAT FUEL DO YOU WANT TO POWER THE GENERATORS OF YOUR PLANT? 560 OUT 8,255:INPUT "1=COAL 2=FUEL OIL? ";F(1) 570 OUT 8,247:IF F(1)< 1OR F(1)> 2GOTO 550 580 EF(1)= 1 590 YR= YR+ 1 600 I= 0 610 E= (100+ FN C(10))/ 100 620 I= I+ 1:EF(I)= EF(I)* E:IF I< GFGOTO 610 630 PLOT 12:PRINT " ***** FINANCES FOR BEGINNING OF YEAR";YR;" *****":PRINT 640 PRINT "GENERATING PLANTS OWNED"TAB( 30)GF 650 PRINT "NUMBER OF CUSTOMERS"TAB( 30)CS 660 PRINT "TONS OF COAL IN STOCK"TAB( 30)CL 670 PRINT "BARRELS OF FUEL OIL IN STOCK"TAB( 30)FO 680 PRINT "CASH RESERVE"TAB( 30)CR 690 PRINT :PRINT "PRESS ANY KEY TO BEGIN THIS YEAR'S TRANSACTIONS":PLOT 3,64,0:POKE 33278,0:OUT 8,255 691 E= RND (1):IF PEEK (33278)= 0GOTO 691 700 OUT 8,247:PLOT 12:IF CR> 0GOTO 780 710 PLOT 12:PRINT "YOU HAVE BUNGLED THE JOB. THE COMPANY IS BROKE. 720 PRINT "TURN IN YOUR EXECUTIVE WASHROOM KEY AND GET OUT 730 PRINT :GOTO 2220 740 PRINT "YOU HAVE MISMANAGED YOUR FUEL INVENTORY. THAT IS TOO BAD, FOR 750 PRINT "YOU WERE DOING FINE IN OTHER AREAS OF MANAGEMENT. BUT THE 760 PRINT "BOARD OF DIRECTORS IS UNSYMPATHETIC, YOU ARE CANNED. 770 PRINT :GOTO 2220 780 IN= FN C2((100+ FN C(12))/ 100):PI= FN C2(PI* IN):PG= (100+ FN C(12))/ 100 790 MN= ((GF* 5000)+ (CS* 10))* PI:CR= FN C0(CR- MN) 800 CS= INT (CS* PG):KD= CS* 1000:GC= 1000000* GF 810 CC= INT (2000* PI)/ 100:SC= INT (100* PI* (FN C(30)+ 20)/ 10)/ 100 820 OC= INT (2500* PI)/ 100:SO= INT (100* PI* (FN C(10)+ 10)/ 10)/ 100 830 EV= FN C(10):IF EV> 5GOTO 1000 840 ON EVGOTO 850,920,940,960,980 850 CA= FN C0(FN C(100)):HU= INT ((500+ FN C(500)+ (1/ CA)* FN C(500))* PI) 860 PLOT 12:PRINT CA;" PEOPLE HAVE REQUESTED TO BE ADDED TO THE CUSTOMER LIST. 870 PRINT "IT WILL COST $";HU;" TO HOOK THE CUSTOMERS TO YOUR SYSTEM. 880 PRINT "DO YOU WISH TO SELL POWER TO THEM?":OUT 8,255:INPUT "1=YES 2=NO ? ";DC 890 OUT 8,247:IF DC< 1OR DC> 2GOTO 860 900 IF DC= 2GOTO 1000 910 CS= CS+ CA:CR= CR- HU:GOTO 1000 920 CA= FN C0(FN C(100)):PLOT 12:PRINT CA;" PEOPLE HAVE DROPPED AS CUSTOMERS 930 CS= CS- CA:GOTO 990 940 SD= FN C0((FN C(1000)+ 1000)* PI):PRINT "A STORM CAUSED $";SD;" DAMAGE. 950 CR= CR- SD:GOTO 990 960 PRINT "PEOPLE PROMISE TO CONSERVE. DEMAND WILL NOT RISE AS SHARPLY 970 PRINT "THIS YEAR.":KD= INT (KD* .9):GOTO 990 980 PRINT "DEMAND WILL RISE FASTER THAN USUAL.":KD= INT (KD* 1.1) 990 FOR J= 1TO 2000:NEXT 1000 KG= 0:NC= 0:NF= 0:I= 0 1010 I= I+ 1 1020 PLOT 12:PRINT FN C0(KD- KG); 1030 PRINT " KILOWATTS ARE NEEDED. YOU HAVE";GF;" PLANTS. 1040 PRINT "HOW MANY KILOWATTS FROM PLANT";I;:OUT 8,255:INPUT "? ";K 1050 OUT 8,247:IF K< = 1000000GOTO 1070 1060 PRINT "ONE PLANT CAN NOT PRODUCE THAT MUCH.":GOTO 1040 1070 KG= KG+ K 1080 IF F(I)= 2GOTO 1120 1090 F= INT ((K/ 600* EF(I))+ .5):NC= NC+ F:IF NC< CLGOTO 1110 1100 NC= NC- F:KG= KG- K:PRINT "YOU DO NOT HAVE ENOUGH COAL.":GOTO 740 1110 PRINT "PLANT";I;" NEEDS";F;" TONS OF COAL.":GOTO 1150 1120 F= INT ((K/ 400* EF(I))+ .5):NF= NF+ F:IF NF< FOGOTO 1140 1130 NF= NF- F:KG= KG- K:PRINT "YOU DO NOT HAVE ENOUGH FUEL OIL.":GOTO 740 1140 PRINT "PLANT";I;" NEEDS";F;" BARRELS OF OIL 1150 FOR J= 1TO 1500:NEXT 1160 PLOT 12:IF I< GFGOTO 1010 1170 IF KD> GCGOTO 1200 1180 IF KD> KGGOTO 1240 1190 GOTO 1280 1200 PLOT 12:PRINT "ALL GENERATORS WERE OVERLOADED! DEMAND WAS GREATER THAN 1210 PRINT "CAPACITY. A MAJOR BLACKOUT OCCURRED. SEVERE DAMAGE HAS BEEN 1220 PRINT "CAUSED TO THE GENERATORS AND YOUR CAREER. YOU HAVE BEEN SENT 1230 PRINT "TO ANTARCTICA TO MANAGE AN ICE CREAM PARLOR.":GOTO 2220 1240 DM= FN C0((FN C(1000)+ 2000)* PI* KD/ KG):CR= CR- DM 1250 PLOT 12:PRINT "YOU DID NOT GENERATE ENOUGH TO MEET DEMANDS. 1260 PRINT "$";DM;" WORTH OF DAMAGE HAS BEEN CAUSED TO THE 1270 PRINT "EQUIPMENT. FURTUNATELY THIS WAS NOT A FATAL MISTAKE. 1280 PRINT "FUEL REQUIREMENTS 1290 PRINT NC;" TONS OF COAL":PRINT NF;" BARRELS OF FUEL OIL":PRINT 1300 PRINT "COST PER TON OR BARREL";TAB( 30)"SHIPPING"TAB( 45)"TOTAL COST 1310 PC= CC+ SC:PO= OC+ SO 1320 CC= FN C2(CC):PRINT "COAL"TAB( 15)CC; 1330 SC= FN C2(SC):PRINT TAB( 30)SC; 1340 PC= FN C2(PC):PRINT TAB( 48)PC 1350 OC= FN C2(OC):PRINT "FUEL OIL"TAB( 15)OC; 1360 SO= FN C2(SO):PRINT TAB( 30)SO; 1370 PO= FN C2(PO):PRINT TAB( 48)PO 1380 PRINT :OUT 8,255:INPUT "HOW MANY TONS OF COAL DO YOU WISH TO BUY? ";CP 1390 PRINT :INPUT "HOW MANY BARRELS OF FUEL OIL DO YOU WISH TO BUY? ";OP 1400 OUT 8,247:CB= CP* PC:OB= OP* PO 1410 PLOT 12:PRINT "FUEL COSTS"TAB( 20)"COAL"TAB( 35)"FUEL OIL"TAB( 50)"TOTAL 1420 CB= FN C2(CB):OB= FN C2(OB):PRINT TAB( 19)CB;TAB( 34)OB;TAB( 49)(CB+ OB) 1430 ER= KG* RT:CR= CR- CB- OB+ ER:CL= CL+ CP- NC:FO= FO+ OP- NF 1440 FOR J= 1TO 3000:NEXT 1450 PLOT 12:PRINT "REMODELING DOES NOT INCREASE THE GENERATING CAPACITY OF A 1460 PRINT "PLANT. IT WILL RESTORE ALL PLANTS TO PEAK EFFICIENCY. ALL 1470 PRINT "PLANTS MUST BE DONE AT THE SAME TIME.":PRINT 1480 PRINT "PLANT"TAB( 20)"COST"TAB( 40)"INCREASE IN EFFICIENCY 1490 RM= 0 1500 FOR I= 1TO GF 1510 RC= FN C0(5000* EF(I)* PI):SV= FN C2(((EF(I)- 1)/ EF(I))* 100) 1520 RM= RM+ RC 1530 RC= FN C2(RC):PRINT I;TAB( 19)RC;TAB( 50)SV;" %" 1540 NEXT 1550 RM= FN C0(RM):PRINT "TOTAL COST"TAB( 19)RM 1560 PRINT :PRINT "DO YOU WISH TO REMODEL?":OUT 8,255:INPUT "1=YES 2=NO? ";DC 1570 OUT 8,247:IF DC< 1OR DC> 2GOTO 1560 1580 IF DC= 2GOTO 1610 1590 CR= CR- RM 1600 FOR I= 1TO GF:EF(I)= 1:NEXT 1610 CM= (FN C(5000)+ 45000)* PI:OM= (FN C(3000)+ 30000)* PI 1620 PLOT 12:CM= FN C2(CM):PRINT "A COAL GENERATING PLANT WILL COST"TAB( 40)CM 1630 OM= FN C2(OM):PRINT "A FUEL OIL GENERATING PLANT WILL COST"TAB( 40)OM 1640 PRINT :PRINT "DO YOU WISH TO BUILD A NEW PLANT? 1650 PRINT "1=COAL 2=FUEL OIL 3=NEITHER" 1660 OUT 8,255:INPUT "WHAT IS YOU DECISION? ";DC 1670 OUT 8,247:IF DC< 1OR DC> 3GOTO 1640 1680 IF DC> 1GOTO 1700 1690 CR= CR- CM:GF= GF+ 1:F(GF)= 1:EF(GF)= 1:GOTO 1720 1700 IF DC> 2GOTO 1720 1710 CR= CR- OM:GF= GF+ 1:F(GF)= 2:EF(GF)= 1 1720 PLOT 12:PRINT "DO YOU WISH TO APPLY FOR A RATE INCREASE? 1730 OUT 8,255:INPUT "1=YES 2=NO? ";DC 1740 OUT 8,247:IF DC< 1OR DC> 2GOTO 1720 1750 IF DC= 1GOTO 1770 1760 GOTO 1920 1770 PRINT :PRINT "IT HAS BEEN";TR;" YEARS SINCE YOU HAD A RAISE. 1780 PRINT "CUSTOMERS ARE PRESENTLY PAYING";RT;" PER KILOWATT. 1790 PRINT "HOW MUCH DO YOU WISH TO CHARGE PER KILOWATT?" 1800 OUT 8,255:INPUT "ENTER REQUEST AS A DECIMAL (.07 OR .075 ETC.)? ";PR 1810 OUT 8,247:IF TR< 2GOTO 1890 1820 IF PR> R* PI^ 1.5AND TR< 3GOTO 1890 1830 IF PR< R* PI^ 1.5GOTO 1870 1840 RT= RT+ ((PR- RT)* .8):TR= 0 1850 PRINT "YOU ARE ALLOWED TO INCREASE YOUR RATE TO";RT;" PER KILOWATT. 1860 GOTO 1910 1870 PRINT "YOUR RATE INCREASE HAS BEEN STUDIED AND ACCEPTED AS REQUESTED 1880 RT= PR:TR= 0:GOTO 1910 1890 PRINT "THE RATE INCREASE YOU REQUESTED HAS BEEN DENIED. 1900 PRINT "NO INCREASE IS ALLOWED. 1910 FOR J= 1TO 1500:NEXT 1920 TR= TR+ 1 1930 PLOT 12:PRINT TAB( 5)"***** END OF YEAR";YR;" REPORT *****":PRINT 1940 ER= FN C0(ER):PRINT "INCOME FROM SALE OF POWER"TAB( 30)ER 1950 GF= FN C0(GF):PRINT "POWER PLANTS OPERATED"TAB( 30)GF 1960 MN= FN C0(MN):PRINT "MAINTAINENCE COSTS"TAB( 30)MN 1970 PRINT "YOU ARE GENERATING AT";(KG/ GC)* 100;"% OF CAPACITY 1980 PRINT "THE INFLATION RATE FOR THE YEAR WAS";FN C2((IN* 100)- 100);"%" 1990 PRINT "THE CONSUMER PRICE INDEX NOW STANDS AT ";PI 2000 PRINT :PRINT "PRESS ANY KEY TO BEGIN THE NEXT YEAR":PLOT 3,64,0:POKE 33278,0:OUT 8,255 2001 IF PEEK (33278)= 0GOTO 2001 2010 OUT 8,247:IF YR< 10GOTO 590 2020 PLOT 12:PRINT TAB( 5)"***** ENDING FINANCIAL REPORT *****":PRINT 2030 PRINT "GENERATING PLANTS OWNED"TAB( 30)GF 2040 PRINT "NUMBER OF CUSTOMERS"TAB( 30)CS 2050 CL= FN C0(CL):PRINT "TONS OF COAL IN STOCK"TAB( 30)CL 2060 FO= FN C0(FO):PRINT "BARRELS OF FUEL OIL IN STOCK"TAB( 30)FO 2070 CR= FN C0(CR):PRINT "CASH RESERVE"TAB( 30)CR 2080 PRINT :PRINT TAB( 5)"********************************** 2090 PRINT TAB( 5)"PRESS ANY KEY FOR COMMENTS":PLOT 3,64,0:POKE 33278,0:OUT 8,255 2091 IF PEEK (33278)= 0GOTO 2091 2100 OUT 8,247:PLOT 12:PRINT "CONGRATULATIONS! YOU LASTED THE 10 YEARS. 2110 AS= ((GF- 1)* 40000+ CR+ CL* 25+ FO* 25)* PI 2120 IF AS> 1000000* PI* .95GOTO 2160 2130 PRINT "YOU SURVIVED AND THAT WAS ALL. YOUR ASSETS DID NOT GROW AS 2140 PRINT "FAST AS INFLATION. INSTEAD OF BEING A MEMBER OF THE BOARD OF 2150 PRINT "DIRECTORS, YOU HAVE BEEN GIVEN A POSITION AS A JANITOR.":GOTO 2220 2160 IF AS> 1000000* PI* 1.1GOTO 2190 2170 PRINT "YOU KEPT PACE WITH INFLATION. YOU HAVE BEEN GIVEN THE POSITION 2180 PRINT "AS MEMBER OF THE BOARD OF DIRECTORS.":GOTO 2220 2190 PRINT "NOT ONLY ARE YOU APPOINTED A MEMBER OF THE BOARD OF DIRECTORS 2200 PRINT "BUT YOU HAVE BEEN MADE CHAIRMAN OF THE BOARD AND AS A BONUS 2210 PRINT "YOU HAVE BEEN GIVEN A YEAR'S SUPPLY OF SMELLY CIGARS. 2220 OUT 8,255:END