Compucolor.org – Virtual Media

Listing of file='EXEDEC.BAS;01' on disk='vmedia/ncc_6-sector.ccvf'

10 REM  COMMON DATA
11 REM
20 REM  P(6,13)  PRICE BOARD
21 REM           ROW 1   X-FINE
22 REM               2   FINE
23 REM               3   STANDARD
24 REM               4   TYPE A
25 REM               5   TYPE B
26 REM               6   TYPC C
27 REM           COL 0   OPEN PRICE
28 REM              1-12 MONTHLY PRICE
29 REM               13  TOTAL UNITS
30 REM
31 REM  N$(6)    PLAYERS NAMES
32 REM
33 REM  T(6,16)  TALLY BOARD
34 REM           ROW 1-6 PLAYER DATA
35 REM           COL 1   UNITS BID X-FINE/TYPE A
36 REM               2   UNITS BID FINE/TYPE B
37 REM               3   UNITS BID STANDARD/TYPE C
38 REM               4   PRICE BID X-FINE/TYPE A
39 REM               5   PRICE BID FINE/TYPE B
40 REM               6   PRICE BID STANDARD/TYPE C
41 REM               7   X-FINE CERTIFICATES
42 REM               8   FINE CERTIFICATES
43 REM               9   STANDARD CERTIFICATES
44 REM               10  QTY TYPE A GOODS
45 REM               11  QTY TYPE B GOODS
46 REM               12  QTY TYPE C GOODS
47 REM               13  CASH BALANCE
48 REM               14  AMOUNT BID X-FINE/TYPE A
49 REM               15  AMOUNT BID FINE/TYPE B
50 REM               16  AMOUNT BID STANDARD/TYPE C
51 REM
60 REM  X,Y      PLOT POSITION
61 REM  CB       CASH BALANCE
62 REM  GA,GB,GC GOODS TYPE A, B, C
63 REM  BA,BB,BC UNITS BID TYPE A, B, C
64 REM  BX,BF,BS UNITS BID X-FINE, FINE, STANDARD
65 REM  DA,DB,DC MARKET ADJUSTMENT TYPE A, B, C
66 REM  DX,DF,DS MARKET ADJUSTMENT X-FINE, FINE, STANDARD
67 REM  UT       UNITS BID
68 REM  UP       PRICE BID
69 REM  TU       UNITS BID TOTAL
70 REM  MA       MAX UNITS BID ALLOWED ANY
71 REM  MO       MAX UNITS BID ALLOWED ALL
72 REM  J,K,I    INDEX COUNTERS
73 REM  RN       PLAYER NUMBER
74 REM  MN       MONTH NUMBER
75 REM  NP       NUMBER OF PLAYERS
76 REM  Y$       ANSWER STRING
77 REM  T$       TYPE OF RAW MATERIALS//FINISHED GOODS
78 REM  G$       TYPE OF FINISHED GOODS
79 REM  RT       COUNTER
80 REM  MIN      CONVERSION FACTOR
81 REM  CV,CZ    UNIT, PRICE CALCULATIONS
82 REM  T,TD     TIME DELAY COUNTERS
83 REM  T        MONTHLY PRICE DATA SUBROUTINE POINTER
84 REM  P$       PRINT STRING
85 REM  
500 REM  
501 REM  IDENT
502 REM
510 PLOT 15,27,24,6,6,12,10
520 PRINT "EXEDEC.BAS     VER 1.0":PRINT
530 PRINT "+++   EXECUTIVE DECISION   +++":PRINT
540 PRINT "DEVELOPED BY":PRINT "   J L HELMS//FRED PEZOK"
550 PRINT "   1009 LEYTE RD":PRINT "   CORONADO  CA  92118"
560 GOSUB 20030:PRINT :PRINT
570 INPUT "DESIRE GAME INFORMATION?  Y/N  ";Y$
580 IF Y$= "N"THEN 2000
590 IF Y$< > "Y"THEN 570
1000 REM 
1001 REM  GAME INFORMATION
1002 REM
1010 PLOT 6,39,12
1020 PRINT TAB( 17)"+++   EXECUTIVE DECISION   +++"
1030 PRINT "   EXECUTIVE DECISION GAME IS A MONEY MANAGEMENT GAME"
1040 PRINT "DESIGNED TO BE PLAYED BY MORE THAN 1 PERSON.":PRINT
1050 PRINT "   THE GAME CONSISTS OF THREE ROUNDS FOR EACH MONTH"
1060 PRINT "OF A 12 MONTH PERIOD.  THE ROUNDS ARE AS FOLLOWS:"
1070 GOSUB 20030
1100 REM  
1101 REM  PURCHASING ROUND INFO
1102 REM
1110 PLOT 12
1120 PRINT "+++++PURCHASING ROUND":PRINT
1130 PRINT "   EACH PLAYER IS ALLOWED THE OPPORTUNITY TO BID FOR"
1140 PRINT "RAW MATERIALS CONSISTING OF EXTRA FINE (X-FINE), FINE"
1150 PRINT "AND STANDARD MATERIALS.  HE MUST ESTIMATE THE GOING"
1160 PRINT "PRICE OF THE MATERIALS BASED ON THE CURRENT MONTHS"
1170 PRINT "PRICES AND THE EXPECTED DEMAND FROM THE OTHER PLAYERS."
1180 PRINT "THE MORE THE DEMAND, THE HIGHER THE COST.  HOWEVER,"
1190 PRINT "THE FINAL COST OF THE MATERIALS IS NOT KNOWN UNTIL ALL"
1200 PRINT "BIDS ARE IN FROM ALL PLAYERS":PRINT
1210 PRINT "   AFTER ALL BIDS ARE IN, THE NEW PRICE OF THE RAW"
1220 PRINT "MATERIALS IS CALCULATED AND EACH PLAYERS SCORE (TALLY)"
1230 PRINT "SHEET IS CHECKED AGAINST SUCCESSFUL BIDS.  A BID IS"
1240 PRINT "CONSIDERED GOOD IF THE PLAYER BIDS MORE OR EQUAL TO"
1250 PRINT "THE BID PRICE.  IF A BID IS GOOD, HE HAS THEN"
1260 PRINT "PURCHASHED THOSE RAW MATERIALS DESIRED AND HIS CASH"
1270 PRINT "BALANCE IS LOWERED TO REFLECT THE PURCHASE......"
1280 PRINT
1290 INPUT "HIT RETURN TO CONTINUE  ";Y$
1400 REM  
1401 REM  PRODUCTION CONVERSION ROUND INFO
1402 REM
1410 PLOT 12
1420 PRINT "+++++PRODUCTION CONVERSION ROUND":PRINT
1430 PRINT "   IN THIS ROUND, EACH PLAYER IS ALLOWED TO CONVERT"
1440 PRINT "HIS RAW MATERIALS INTO GOODS, TYPE A, B, AND C":PRINT
1460 PRINT "   TYPE A GOODS YIELD MORE OF A RETURN, BUT ALSO"
1470 PRINT "COST MORE IN TERMS OF RAW MATERIALS.":PRINT
1490 PRINT "   TYPE B GOODS YIELD FAIRLY EVEN OVERALL AND"
1500 PRINT "ARE CONSIDERED A GOOD SOLID INVESTMENT.":PRINT
1520 PRINT "   TYPE C GOODS YIELD GENERALLY LOWER RETURNS, BUT"
1530 PRINT "ALSO ARE THE LEAST EXPENSIVE GOODS TO MANUFACTURE,"
1540 PRINT
1550 PRINT "   EACH PLAYERS TOTAL WEALTH IS DISPLAYED FOR ALL"
1560 PRINT "TO SEE SO THEY MAY ESTIMATE WHICH FINISHED GOODS"
1570 PRINT "TO SELL AND WHICH RAW MATERIALS TO BUY"
1572 PRINT :PRINT "CAUTION:  FINISHED GOODS REQUIRE 3 UNITS OF RAW MATERIALS"
1580 PRINT
1590 INPUT "HIT RETURN TO CONTINUE  ";Y$
1700 REM  
1701 REM  SALES ROUND INFO
1702 REM
1710 PLOT 12
1720 PRINT "+++++SALES ROUND":PRINT
1730 PRINT "   THIS ROUND IS VERY SIMILIAR TO THE PURCHASING ROUND"
1740 PRINT "EXCEPT THAT EACH PLAYER OFFERS HIS FINISHED GOODS FOR"
1750 PRINT "SALE AT WHAT HE CONSIDERS HIS LOWEST PRICE.  AGAIN, HE"
1760 PRINT "ESTIMATES WHAT THE CURRENT MARKET PRICE WILL BE AND"
1770 PRINT "OFFERS TO SELL SO MANY OF TYPES A, B, AND C GOODS FOR"
1780 PRINT "SALE.  AFTER ALL BIDS ARE IN, THE CURRENT MARKET"
1790 PRINT "PRICE IS CALCULATED AND THEN EACH PLAYERS BID IS CHECKED."
1800 PRINT "IF HE BIDS LOWER THAN OR EQUAL TO THE CURRENT MARKET"
1810 PRINT "PRICE, HE HAS THEN SUCCESSFULLY SOLD THAT ITEM.  THE"
1820 PRINT "HIGHER THE DEMAND FOR GOODS, THE LOWER THE PRICE WILL"
1830 PRINT "GENERALLY BE DUE TO COMPETITION.":PRINT
1840 PRINT "   EACH PLAYERS TALLY SHEET IS THEN CORRECTED FOR HIS"
1850 PRINT "CASH BALANCE AND THE NEXT MONTHS ROUND STARTS...."
1860 PRINT
1870 INPUT "REPEAT GAME INFORMATION?  Y/N  ";Y$
1880 IF Y$= "Y"THEN 1000
1890 IF Y$< > "N"THEN PLOT 28,11:GOTO 1870
2000 REM  
2001 REM  PRESET
2002 REM
2010 CLEAR 128
2020 DIM P(6,13),T(6,16),N$(6)
2025 DEF FN A(X)= INT (X* RND (1)+ 1)
2030 FOR J= 0TO 6
2040 FOR K= 0TO 13
2050 P(J,K)= 0:T(J,K)= 0
2060 NEXT K
2070 NEXT J
2100 REM  
2101 REM  INPUT PLAYERS
2102 REM
2110 PLOT 27,24,6,39,12,10,10
2120 INPUT "NUMBER OF PLAYERS PLEASE  ";NP
2130 NP= INT (ABS (NP)):IF NP< 1OR NP> 6THEN 2110
2140 Y= 5
2200 REM  
2201 REM  INPUT PLAYERS NAMES
2202 REM
2210 FOR J= 1TO NP
2220 PLOT 3,0,Y,11
2230 PRINT "PLAYER NUMBER"J" NAME PLEASE   ";
2240 INPUT N$(J)
2250 IF N$(J)= ""OR N$(J)= "0"THEN 2220
2260 Y= Y+ 2:IF Y< 30THEN 2310
2270 FOR Y= Y+ 1TO 5STEP - 1
2280 PLOT 3,0,Y,11
2290 NEXT Y
2300 Y= 5
2310 NEXT J
2400 REM  
2401 REM  CASH DATA
2402 REM
2410 DATA 1000,20,14,40,30,20,140,115,90
2420 DATA 665,13,13,40,30,20,140,115,90
2430 DATA 500,10,10,40,30,20,140,115,90
2440 DATA 400,8,8,40,30,20,140,115,90
2450 DATA 335,6,6,40,30,20,140,115,90
2500 REM  
2501 REM  SET MATRICES
2502 REM
2530 ON NPGOTO 2540,2540,2550,2560,2570,2580
2540 RESTORE 2410:GOTO 2600
2550 RESTORE 2420:GOTO 2600
2560 RESTORE 2430:GOTO 2600
2570 RESTORE 2440:GOTO 2600
2580 RESTORE 2450
2600 READ T(1,13),MO,MA,P(1,0),P(2,0),P(3,0),P(4,0),P(5,0),P(6,0)
2610 FOR J= 2TO NP
2620 T(J,13)= T(1,13)
2630 NEXT J
2640 MN= 0
2700 REM  
2701 REM  PRINT ROTATION
2702 REM
2710 PLOT 6,1,12
2720 PRINT "PLAYER ROTATION IS AS FOLLOWS"
2730 FOR J= 1TO NP
2740 PLOT 10
2750 PRINT "NUMBER"J,,N$(J)
2760 NEXT J
2770 PLOT 10,10
2780 PRINT "EACH PLAYER HAS A STARTING CASH BALANCE OF $"T(1,13)
2790 GOSUB 20030:REM   3 SEC DELAY
3000 REM  
3001 REM  PURCHASE RAW MATERIAL SECTION
3002 REM  DISPLAY RAW MATERIALS PRICE BOARD
3003 REM
3010 RN= 0
3020 GOSUB 20100:REM  COMMON PRICE BOARD
3030 GOSUB 20400:REM  RAW MATERIALS SECTION
3040 J= 1:T= 0:MN= MN+ 1:IF MN= 1THEN 3100
3050 GOSUB 21300:REM   MONTHLY PRICE DATA
3100 REM  
3101 REM  NEXT PLAYER
3102 REM
3110 FOR Y= 21TO 31
3120 PLOT 3,0,Y,11
3130 NEXT Y
3140 RN= RN+ 1:IF RN> NPTHEN 4000
3150 FOR J= 1TO 6
3160 T(RN,J)= 0
3170 NEXT J
3180 IF T(RN,13)< 10THEN 3140
3190 PLOT 3,0,23,11
3200 PRINT " "N$(RN)" - YOU MAY BID ON RAW MATERIALS"
3210 TU= 0:CB= T(RN,13)
3220 FOR J= 7TO 9
3230 P$= RIGHT$ (STR$ (T(RN,J)+ 10000),4)
3240 GOSUB 21800
3250 PLOT 3,27,J+ 10
3260 PRINT P$
3280 NEXT J
3300 REM  
3301 REM  BID ON RAW MATERIALS
3302 REM
3310 K= 1:T$= "X-FINE":GOTO 3340
3320 K= 2:T$= "FINE":GOTO 3340
3330 K= 3:T$= "STANDARD"
3340 PLOT 6,1,3,0,21,11
3341 PRINT "CASH BALANCE",CB
3342 PLOT 6,7,3,0,24,11
3350 PRINT "UNITS OF "T$" TO BUY (QTY)  ";
3360 INPUT UT:IF UT< > INT (ABS (UT))THEN 3340
3370 PLOT 3,0,26,11
3380 IF UT< = MATHEN 3410
3390 PRINT "***   MAXIMUM SINGLE QUANTITY IS"MA"   ***"
3400 GOTO 3340
3410 PLOT 3,0,26,11
3420 IF TU+ UT< = MOTHEN 3450
3430 PRINT "***   MAXIMUM TOTAL QUANTITY IS"MO"   ***"
3440 GOTO 3340
3450 T(RN,K)= UT:TU= TU+ UT:IF UT= 0THEN UP= 0:GOTO 3530
3460 PLOT 3,0,26,11
3470 PRINT "BID PRICE FOR "T$" (EACH)   ";
3480 INPUT UP:IF UP< > INT (ABS (UP))THEN 3460
3490 PLOT 3,0,28,11
3500 IF UT* UP< = CBTHEN 3530
3510 PRINT "***   INSUFFICIENT FUNDS FOR PURCHASE    ***"
3520 TU= TU- UT:PLOT 3,0,26,11:GOTO 3342
3530 PLOT 3,0,28,11
3540 T(RN,K+ 3)= UP:CB= CB- UT* UP
3550 IF CB< 10THEN 3100
3560 PLOT 3,0,26,11
3570 ON KGOTO 3320,3330,3100
4000 REM  
4001 REM  UPDATE MARKET CALCULATOR
4002 REM
4010 FOR Y= 21TO 31
4020 PLOT 3,0,Y,11
4030 NEXT Y
4040 PLOT 3,0,23
4050 PRINT "+++   MARKET PRICES ADJUSTING   +++"
4100 BX= 0:BF= 0:BS= 0
4110 FOR J= 1TO NP
4120 BX= BX+ T(J,1)
4130 BF= BF+ T(J,2)
4140 BS= BS+ T(J,3)
4150 NEXT J
4200 DX= BX- 11:IF DX> 14THEN DX= 14
4210 DF= BF- 11:IF DF> 14THEN DF= 14
4220 DS= BS- 11:IF DS> 14THEN DS= 14
4230 P(1,MN)= P(1,MN- 1)+ DX+ FN A(DX)
4240 P(2,MN)= P(2,MN- 1)+ DF+ FN A(DF)
4250 P(3,MN)= P(3,MN- 1)+ DS+ FN A(DS)
4260 IF P(1,MN)< 5THEN P(1,MN)= 5+ FN A(5)
4270 IF P(2,MN)< 5THEN P(2,MN)= 5+ FN A(5)
4280 IF P(3,MN)< 5THEN P(3,MN)= 5+ FN A(5)
4290 IF P(1,MN)> 984THEN P(1,MN)= 985
4300 IF P(2,MN)> 984THEN P(2,MN)= 985
4310 IF P(3,MN)> 984THEN P(3,MN)= 985
4320 J= 1:T= 1
4330 GOSUB 21300:REM  MONTHLY PRICE DATA
4400 REM  
4401 REM  CHECK GOOD BIDS
4402 REM
4410 PLOT 3,0,23,11
4420 PRINT "***   CHECKING SUCCESSFUL BIDS   ***"
4430 FOR J= 1TO 3
4440 P(J,13)= 0
4450 FOR K= 1TO NP
4460 P(J,13)= P(J,13)+ T(K,J)
4470 NEXT K
4480 NEXT J
4490 RN= 0
4500 FOR J= 1TO 3
4510 P$= RIGHT$ (STR$ (P(J,MN- 1)+ 10000),4)
4520 GOSUB 21800
4530 PLOT 3,19,J+ 16
4540 PRINT P$
4550 P$= RIGHT$ (STR$ (P(J,13)+ 10000),4)
4560 GOSUB 21800
4570 PLOT 3,27,J+ 16
4580 PRINT P$
4585 P(J,13)= 0
4590 NEXT J
4600 K= 0:RN= RN+ 1:IF RN> NPTHEN 4700
4610 K= K+ 1:IF K> 3THEN 4600
4620 IF T(RN,K+ 3)< P(K,MN)THEN T(RN,13+ K)= 0:GOTO 4610
4630 IF T(RN,K+ 3)* T(RN,K)> T(RN,13)THEN T(RN,13+ K)= 0:GOTO 4610
4640 T(RN,K+ 6)= T(RN,K+ 6)+ T(RN,K)
4650 T(RN,13)= T(RN,13)- T(RN,K+ 3)* T(RN,K)
4660 P(J,13)= P(J,13)+ T(RN,K+ 3)* T(RN,K)
4670 T(RN,K+ 13)= T(RN,K+ 3)* T(RN,K)
4680 GOTO 4610
4700 REM  
4701 REM  DISPLAY NEW COST
4702 REM
4710 FOR J= 1TO 3
4720 P$= RIGHT$ (STR$ (P(J,MN)+ 10000),4)
4730 GOSUB 21800
4740 PLOT 3,34,J+ 16
4750 PRINT P$
4760 NEXT J
4800 REM  
4801 REM  DISPLAY SUCCESSFUL BIDS
4802 REM
4810 RN= 0
4820 RN= RN+ 1:IF RN> NPTHEN 5000
4825 IF T(RN,14)+ T(RN,15)+ T(RN,16)= 0THEN 4820
4830 PLOT 3,0,23,11
4840 PRINT N$(RN)" +++   BIDS APPROVED SHOWN UNDER AMT PAID   +++"
4845 GOSUB 21500
4850 FOR J= 1TO 3
4860 P$= RIGHT$ (STR$ (T(RN,J+ 13)+ 10000),4)
4870 GOSUB 21800
4880 PLOT 3,54,J+ 16
4890 PRINT P$
4900 T(RN,J+ 3)= 0:T(RN,J)= 0
4910 NEXT J
4920 PLOT 3,0,25,11
4930 INPUT "HIT RETURN TO CONTINUE  ";Y$
4950 PLOT 3,0,25,11
4960 GOTO 4820
5000 REM  
5001 REM  PRODUCTION CONVERSION SECTION
5002 REM  DISPLAY MATERIALS AND GOODS
5003 REM
5005 GOSUB 20030:REM  3 SEC DELAY
5010 GOSUB 21000:REM  PRODUCTION CONV. DISPLAY
5015 PLOT 6,6
5020 FOR J= 1TO NP
5022 PLOT 3,0,J+ 4
5024 PRINT N$(J)
5030 FOR K= 7TO 12
5035 IF T(J,K)= 0THEN 5080
5040 P$= RIGHT$ (STR$ (T(J,K)+ 10000),4)
5050 GOSUB 21800
5060 PLOT 3,8* (K- 7)+ 20,J+ 4
5070 PRINT P$
5080 NEXT K
5090 NEXT J
5100 REM  
5101 REM  SET PLAYER
5102 REM
5110 RN= 0
5120 RN= RN+ 1:IF RN> NPTHEN 6000
5130 PLOT 3,0,21,11
5140 PRINT N$(RN)
5200 REM  
5201 REM  RAW MATERIALS TO FINISHED GOODS
5202 REM  CONVERSION ROUTINE PRESET
5203 REM
5210 K= 10:G$= "TYPE A":CX= 2:CF= 1:CS= 0:GOTO 5300
5220 K= 11:G$= "TYPE B":CX= 1:CF= 1:CS= 1:GOTO 5300
5230 K= 12:G$= "TYPE C":CX= 0:CF= 1:CS= 2
5300 REM  
5301 REM  CONVERSION ROUTINE
5302 REM
5310 IF T(RN,7)< CXOR T(RN,9)< CSOR T(RN,8)< CFTHEN 5530
5320 PLOT 3,0,23,11
5330 PRINT "HOW MANY "G$" GOODS TO MANUFACTURE  ";
5340 INPUT CV:IF CV< > INT (ABS (CV))THEN 5320
5350 PLOT 3,0,25,11
5360 IF CV* CX< = T(RN,7)AND CV* CF< = T(RN,8)AND CV* CS< = T(RN,9)THEN 5390
5370 PRINT "IMPROPER MIXTURE OF RAW MATERIALS AVAILABLE - SELECT AGAIN"
5380 GOTO 5320
5390 T(RN,7)= T(RN,7)- CV* CX
5400 T(RN,8)= T(RN,8)- CV* CF
5410 T(RN,9)= T(RN,9)- CV* CS
5420 T(RN,K)= T(RN,K)+ CV
5430 FOR J= 7TO 9
5440 P$= RIGHT$ (STR$ (T(RN,J)+ 10000),4)
5450 GOSUB 21800
5460 PLOT 3,8* (J- 7)+ 20,RN+ 4
5470 PRINT P$
5480 NEXT J
5490 P$= RIGHT$ (STR$ (T(RN,K)+ 10000),4)
5500 GOSUB 21800
5510 PLOT 3,8* (K- 10)+ 44,RN+ 4
5520 PRINT P$
5530 ON K- 9GOTO 5220,5230,5120
6000 REM  
6001 REM  SELL FINISHED GOODS SECTION
6002 REM  DISPLAY FINISHED GOODS PRICE BOARD
6003 REM
6010 GOSUB 20040:RN= 0
6020 GOSUB 20100:REM   COMMON PRICE BOARD
6030 GOSUB 20600:REM   FINISHED GOODS SECTION
6040 J= 4:T= 0:IF MN= 1THEN 6100
6050 GOSUB 21300:REM   MONTHLY PRICE DATA
6100 REM  
6101 REM  NEXT PLAYER
6102 REM
6110 FOR Y= 21TO 31
6120 PLOT 3,0,Y,11
6130 NEXT Y
6140 RN= RN+ 1:IF RN> NPTHEN 7000
6150 FOR J= 1TO 6
6160 T(RN,J)= 0
6170 NEXT J
6180 PLOT 3,0,21,11
6190 PRINT N$(RN)" - YOU MAY PLACE BIDS FOR FINISHED GOODS"
6200 TU= 0
6210 FOR J= 10TO 12
6220 P$= RIGHT$ (STR$ (T(RN,J)+ 10000),4)
6230 GOSUB 21800
6240 PLOT 3,27,J+ 7
6250 PRINT P$
6260 NEXT J
6300 REM  
6301 REM  BID ON FINISHED GOODS
6302 REM
6310 K= 1:T$= "TYPE A":GOTO 6340
6320 K= 2:T$= "TYPE B":GOTO 6340
6330 K= 3:T$= "TYPE C"
6340 IF T(RN,K+ 9)< 1THEN UT= 0:GOTO 6420
6350 PLOT 3,0,24,11
6360 PRINT "UNITS OF "T$" GOODS TO SELL (QTY)  ";
6370 INPUT UT:IF UT< > INT (ABS (UT))THEN 6350
6380 PLOT 3,0,26,11
6390 IF UT< = T(RN,K+ 9)THEN 6420
6400 PRINT "+++   YOU DO NOT HAVE THAT MANY - SELECT AGAIN   +++"
6410 GOTO 6350
6420 T(RN,K)= UT:IF UT= 0THEN UP= 0:GOTO 6510
6430 PLOT 3,0,26,11
6440 PRINT "BID PRICE FOR "T$" GOODS (EACH)    ";
6450 INPUT UP:IF UP< > INT (ABS (UP))THEN 6430
6460 PLOT 3,0,28,11
6470 IF UP> 9THEN 6500
6480 PRINT "+++   MINIMUM OFFER IS $ 10.00 - BID AGAIN   +++"
6490 GOTO 6430
6500 PLOT 3,0,28,11
6510 T(RN,K+ 3)= UP
6520 T(RN,K+ 13)= T(RN,K+ 3)* T(RN,K)
6530 PLOT 3,0,26,11
6540 ON KGOTO 6320,6330,6100
7000 REM  
7001 REM  UPDATE MARKET CALCULATOR
7002 REM
7010 FOR Y= 21TO 31
7020 PLOT 3,0,Y,11
7030 NEXT Y
7040 PLOT 3,0,23
7050 PRINT "+++   MARKET PRICES ADJUSTING   +++"
7100 BA= 0:BB= 0:BC= 0
7110 FOR J= 1TO NP
7120 BA= BA+ T(J,1)
7130 BB= BB+ T(J,2)
7140 BC= BC+ T(J,3)
7150 NEXT J
7200 DA= BA- 11:IF DA> 20THEN DA= 20
7210 DB= BB- 11:IF DB> 20THEN DB= 20
7220 DC= BC- 11:IF DC> 20THEN DC= 20
7230 P(4,MN)= P(4,MN- 1)- DA- FN A(DA)
7240 P(5,MN)= P(5,MN- 1)- DB- FN A(DB)
7250 P(6,MN)= P(6,MN- 1)- DC- FN A(DC)
7260 IF P(4,MN)< 10THEN P(4,MN)= 10
7270 IF P(5,MN)< 10THEN P(5,MN)= 10
7280 IF P(6,MN)< 10THEN P(6,MN)= 10
7290 IF P(4,MN)> 979THEN P(4,MN)= 979
7300 IF P(5,MN)> 979THEN P(5,MN)= 979
7310 IF P(6,MN)> 979THEN P(6,MN)= 979
7320 J= 4:T= 1
7330 GOSUB 21300:REM  MONTHLY PRICE DATA
7400 REM  
7401 REM  CHECK GOOD BIDS
7402 REM
7410 PLOT 3,0,23,11
7420 PRINT "+++   CHECKING SUCCESSFUL BIDS   +++"
7430 FOR J= 4TO 6
7440 P(J,13)= 0
7450 FOR K= 1TO NP
7460 P(J,13)= P(J,13)+ T(K,J- 3)
7470 NEXT K
7480 NEXT J
7490 RN= 0
7500 FOR J= 4TO 6
7510 P$= RIGHT$ (STR$ (P(J,MN- 1)+ 10000),4)
7520 GOSUB 21800
7530 PLOT 3,19,J+ 13
7540 PRINT P$
7550 P$= RIGHT$ (STR$ (P(J,13)+ 10000),4)
7560 GOSUB 21800
7570 PLOT 3,27,J+ 13
7580 PRINT P$
7585 P(J,13)= 0
7590 NEXT J
7600 K= 0:RN= RN+ 1:IF RN> NPTHEN 7700
7610 K= K+ 1:IF K> 3THEN 7600
7620 IF T(RN,K+ 3)> P(K+ 3,MN)THEN T(RN,K+ 13)= 0:GOTO 7610
7640 T(RN,K+ 9)= T(RN,K+ 9)- T(RN,K)
7650 T(RN,13)= T(RN,13)+ T(RN,K)* T(RN,K+ 3)
7660 P(K+ 3,13)= P(K+ 3,13)+ T(RN,K+ 3)* T(RN,K)
7670 T(RN,K+ 13)= T(RN,K+ 3)* T(RN,K)
7680 GOTO 7610
7700 REM  
7701 REM  DISPLAY NEW PRICE
7702 REM
7710 FOR J= 4TO 6
7720 P$= RIGHT$ (STR$ (P(J,MN)+ 10000),4)
7730 GOSUB 21800
7740 PLOT 3,34,J+ 13
7750 PRINT P$
7760 NEXT J
7800 REM  
7801 REM  DISPLAY SUCCESSFUL BIDS
7802 REM
7810 RN= 0
7820 RN= RN+ 1:IF RN> NPTHEN 8000
7825 IF T(RN,14)+ T(RN,15)+ T(RN,16)= 0THEN 7820
7830 PLOT 3,0,23,11
7840 PRINT N$(RN)" +++   BIDS APPROVED SHOWN UNDER AMT RCVD   +++"
7845 GOSUB 21500
7850 FOR J= 1TO 3
7860 P$= RIGHT$ (STR$ (T(RN,J+ 13)+ 10000),4)
7870 GOSUB 21800
7880 PLOT 3,54,J+ 16
7890 PRINT P$
7900 T(RN,J+ 3)= 0:T(RN,J)= 0
7910 NEXT J
7920 PLOT 3,0,25,11
7930 INPUT "HIT RETURN TO CONTINUE  ";Y$
7950 PLOT 3,0,25,11
7960 GOTO 7820
8000 REM  
8001 REM  CONVERT RAW MATERIALS//SELL FINISHED GOODS
8002 REM  FOR LAST MONTH ONLY
8003 REM
8005 IF MN< > 12THEN 9000
8010 FOR Y= 21TO 31
8020 PLOT 3,0,Y,11
8030 NEXT Y
8100 REM  
8101 REM  CONVERT RAW MATERIALS INTO FINISHED GOODS
8102 REM
8120 FOR RN= 1TO NP
8130 FOR J= 10TO 12
8140 IF J= 10THEN CX= 2:CF= 1:CS= 0
8150 IF J= 11THEN CX= 1:CF= 1:CS= 1
8160 IF J= 12THEN CX= 0:CF= 1:CS= 2
8170 IF CX> T(RN,7)OR CF> T(RN,8)OR CS> T(RN,9)THEN 8190
8180 T(RN,7)= T(RN,7)- CX:T(RN,8)= T(RN,8)- CF:T(RN,9)= T(RN,9)- CS:T(RN,J)= T(RN,J)+ 1:GOTO 8170
8190 NEXT J
8200 REM  
8201 REM  SELL FINISHED GOODS
8202 REM
8210 FOR I= 10TO 12
8220 IF T(RN,I)= 0THEN 8240
8230 T(RN,13)= T(RN,13)+ T(RN,I)* P(I- 6,12):T(RN,I)= 0
8240 NEXT I
8250 NEXT RN
9000 REM  
9001 REM  END OF ROUND STATUS
9002 REM
9010 GOSUB 20010:REM   1 SEC DELAY
9020 PLOT 6,39,12,3,19,3
9030 PRINT "END OF MONTH STATUS REPORT"
9040 PLOT 3,0,10
9050 PRINT "PLAYER"TAB( 15)"";
9060 PRINT "RAW MATERIALS-----------";
9070 PRINT "FINISHED GOODS----------"
9080 PRINT TAB( 15)"";
9090 PRINT "X-FINE  FINE    STAND   ";
9100 PRINT "TYPE A  TYPE B  TYPE C  "
9110 FOR J= 1TO NP
9120 PLOT 3,0,J+ 12
9130 PRINT N$(J)
9140 FOR K= 7TO 12
9145 IF T(J,K)= 0THEN 9190
9150 P$= RIGHT$ (STR$ (T(J,K)+ 10000),4)
9160 GOSUB 21800
9170 PLOT 3,8* (K- 7)+ 15,J+ 12
9180 PRINT P$
9190 NEXT K
9200 NEXT J
9210 FOR J= 1TO NP
9220 PLOT 3,0,J+ 20
9230 PRINT N$(J)
9240 P$= STR$ (T(J,13))
9250 PLOT 3,30,J+ 20
9260 PRINT "CASH BALANCE:  $ "TAB( POS (0)+ 8- LEN (P$))P$
9270 NEXT J
9290 GOSUB 20040:GOSUB 20020:REM   7 SEC DELAY
9300 IF MN< 12THEN 3000:REM   TO NEXT ROUND
9400 REM  
9401 REM  END OF GAME
9402 REM
9410 PLOT 3,0,28
9420 PRINT "+++   END OF GAME   +++"
9430 PRINT "ALL RAW MATERIALS HAVE BEEN CONVERTED TO FINISHED GOODS"
9440 PRINT "ALL FINISHED GOODS HAVE BEEN SOLD AT BEST MARKET PRICE"
9450 PLOT 3,0,31,11
9460 INPUT "PLAY AGAIN?   Y/N  ";Y$
9470 IF Y$= "Y"THEN RUN
9480 IF Y$< > "N"THEN 9450
9490 PLOT 12,27,11
9500 LOAD "MENU":RUN
9510 END
20000 REM  
20001 REM  TIME DELAY
20002 REM
20010 TD= 1:GOTO 20060
20020 TD= 2:GOTO 20060
20030 TD= 3:GOTO 20060
20040 TD= 5:GOTO 20060
20050 TD= 10
20060 T= TD+ PEEK (33209)
20070 IF T> 59THEN T= T- 60
20080 IF T< > PEEK (33209)THEN 20080
20090 RETURN
20100 REM  
20101 REM  PRICE BOARD DISPLAY
20102 REM  COMMON FOR RAW MATERIALS & FINISHED GOODS BIDS
20103 REM
20110 PLOT 6,3,27,24,12
20120 PRINT "PRICE BOARD"TAB( 40)"MARKET CALCULATOR"
20130 PRINT
20140 PRINT "ITEM      OPEN      JAN    FEB    MAR    APR    ";
20150 PRINT "MAY    JUN"
20160 PLOT 3,20,8
20170 PRINT "JUL    AUG    SEP    OCT    NOV    DEC"
20180 PLOT 3,0,14
20190 PRINT "MARKET"TAB( 19)"";
20200 PRINT "PREV    UNIT   NEW    ----BID----   AMT"
20210 PRINT "CALCULATOR"TAB( 19)"";
20220 PRINT "COST          PRICE   UNIT  PRICE      "
20230 RETURN
20400 REM  
20401 REM  PRICE BOARD DISPLAY
20402 REM  RAW MATERIALS ONLY
20403 REM
20410 PLOT 6,7,3,20,0
20420 PRINT "RAW MATERIALS"
20430 PLOT 3,0,4
20440 PRINT "X-FINE     40"
20450 PRINT "FINE       30"
20460 PRINT "STANDARD   20"
20470 PLOT 3,0,10
20480 PRINT "X-FINE"
20490 PRINT "FINE"
20500 PRINT "STANDARD"
20510 PLOT 6,3,3,54,15
20520 PRINT "PAID"
20530 PLOT 6,7,3,0,17
20540 PRINT "X-FINE"
20550 PRINT "FINE"
20560 PRINT "STANDARD"
20570 RETURN
20600 REM  
20601 REM  PRICE BOARD DISPLAY
20602 REM  FINISHED GOODS ONLY
20603 REM
20610 PLOT 6,7,3,20,0
20620 PRINT "FINISHED GOODS"
20630 PLOT 3,0,4
20640 PRINT "GOODS A   140"
20650 PRINT "GOODS B   115"
20660 PRINT "GOODS C    90"
20670 PLOT 3,0,10
20680 PRINT "GOODS A"
20690 PRINT "GOODS B"
20700 PRINT "GOODS C"
20710 PLOT 6,3,3,54,15
20720 PRINT "RCVD"
20730 PLOT 6,7,3,0,17
20740 PRINT "GOODS A"
20750 PRINT "GOODS B"
20760 PRINT "GOODS C"
20770 RETURN
21000 REM  
21001 REM  PRODUCTION CHART DISPLAY
21002 REM  PRODUCTION CONVERSION CHART
21003 REM
21010 PLOT 6,3,27,24,12
21020 PRINT "PRODUCTION CONVERSION CHART"
21030 PRINT
21040 PRINT "PLAYER              UNITS OF MATERIALS AND GOODS"
21050 PRINT TAB( 20)"-XF-    -FN-    -ST-    --A-    --B-    --C-"
21060 PLOT 6,2,3,0,12
21070 PRINT "CONVERSION CHART -- COST OF FINISHED GOODS IN CERTIFICATES"
21080 PRINT
21090 PRINT "   RAW              FINISHED GOODS BY TYPE"
21100 PRINT "MATERIALS            A        B        C"
21110 PRINT
21120 PRINT "X-FINE               2        1"
21130 PRINT "FINE                 1        1        1"
21140 PRINT "STANDARD                      1        2"
21150 RETURN
21300 REM  
21301 REM  PRINT MONTHLY PRICE DATA
21302 REM  RAW MATERIALS AND FINISHED GOODS
21303 REM
21310 FOR J= JTO J+ 2
21320 FOR K= 1TO MN- 1+ T
21330 P$= RIGHT$ (STR$ (P(J,K)+ 10000),4)
21340 GOSUB 21800
21350 X= 19+ 7* (K- 1):IF K> 6THEN X= X- 42
21360 Y= J+ 3:IF J> 3THEN Y= Y- 3
21370 IF K> 6THEN Y= Y+ 6
21380 PLOT 3,X,Y
21390 PRINT P$
21400 NEXT K
21410 NEXT J
21420 RETURN
21500 REM  
21501 REM  DISPLAY BID UNITS/PRICES
21502 REM
21510 FOR J= 1TO 3
21520 P$= RIGHT$ (STR$ (T(RN,J)+ 10000),4)
21530 GOSUB 21800
21540 PLOT 3,41,J+ 16
21550 PRINT P$
21560 P$= RIGHT$ (STR$ (T(RN,J+ 3)+ 10000),4)
21570 GOSUB 21800
21580 PLOT 3,48,J+ 16
21590 PRINT P$
21595 NEXT J
21596 RETURN
21800 REM  
21801 REM  SET P$ TO PRINT USING 4 DIGITS
21802 REM
21810 L= LEN (P$):IF L= 0THEN P$= "0":GOTO 21830
21815 IF P$= "0"THEN 21830
21820 IF LEFT$ (P$,1)= "0"THEN P$= RIGHT$ (P$,L- 1):GOTO 21810
21830 IF LEN (P$)< 4THEN P$= " "+ P$:GOTO 21830
21840 RETURN