home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
8bitfiles.net/archives
/
archives.tar
/
archives
/
commodore-users-of-norman
/
CUON_02_(08-1984).d64
/
market.c3
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2019-04-13
|
11KB
|
363 lines
1 GOTO910
2 REM ** ML STOP KEY DISABLE **
3 PRINT"x[169]=[141][169][141]X` [234][255][169][255][133][145]L4[234]x[169]1[141][169][234][141]X`
4 [153]"xhhh+hNOThhhhhhhPRINT#HRUNHX`111"
5 [153]"hhhhhhh`1"
6 [143] ** 4 - POP ML SUBROUTINE **
10 [143] **GENERAL INPUT ROUTINE **
15 :
30 :
35 [143] +++ INPUT SECTION +++
40 [151]UO,0:UR$[178]"":UI$[178]""
42 [139]UL[178]0[167]UL[178]80
45 [153]" CMDCMD";:[151]UC,0
50 [161]UI$:[139]UI$[178]""[167]50
55 [139]UI$[178][199](13)[175][195](UR$)[177][178]1[167][151]UC,1:[153]" CMD";:[137]85
60 [139]UI$[178][199](20)[167]105
62 [139] [195](UR$)[178][177]UL[167]50
65 [141]120:[143] CHECK FOR VALID CHARACTER
70 UR$[178]UR$[170]UI$
75 [153]UI$;
80 [137]50
85 [143] +++ CHECK FOR HELP REQUEST +++
90 [139]UR$[178]UX$[167]195:[143] EXIT TO HELP ROUTINE
95 [139]UF[178]1[167][141]240
100 UF[178]0:[153]:[142]
102 [143] ++ CHECK DELETE ++
105 [139][195](UR$)[179]1[167]50
110 UR$[178][200](UR$,[195](UR$)[171]1)
115 [153]"CMD CMDCMD";:[137]50
120 [143] ++ CHECK FOR VALID CHARACTERS ++
125 [139][195](US$)[178]0[167]150
130 [129]US[178]1[164][195](US$)
135 [139]UI$[178][202](US$,US,1)[167][142]
140 [130]
145 UI$[178]"":[142]
150 [143] ** STANDARD INPUT **
152 [139][198](UI$)[178]46[167][142]
155 [139]UI$[178][199](32)[167][142]
160 [139][198](UI$)[179]48[176][198](UI$)[177]57[167]170
165 [142]
170 [139][198](UI$)[179]65[176][198](UI$)[177]90[167]180
175 [142]
180 [139][198](UI$)[179]193[176][198](UI$)[177]218[167]UI$[178]"":[142]
185 [139][194](UT)[178]UU%[167]UI$[178][199]([198](UI$)[171]128):[142]
187 [142]
190 UI$[178]"":[142]
195 UF[178]1:[143] +++ HELP ROUTINE EXIT +++
197 [141]250
200 [141]245
205 [129]UQ[178]UB[164](U2%[172]256[170]U1%[170]U3%[171]2)
210 UQ%(UQ[171]UB)[178][194](UQ):[130]:[153]"LOAD"
215 UZ[178]1:UV%[178][194](UT)
216 [137]300
217 UZ[178]0:US$[178]UJ$:UG$[178]UK$:UP[178]UJ:UL[178]UK
218 [139][194](50003)[178]0[167][151]53281,1:[153]"LOAD";:[151]53281,6:[151]53280,14:[137]220
219 [153]"LOAD";
220 UT$[178]UL$:[151]UT,UV%:[129]UQ[178]UB[164](U2%[172]256[170]U1%[170]U3%[171]3)
225 [151]UQ,UQ%(UQ[171]UB):[130]
230 [151]U1,U1%
232 [151]U2,U2%
233 [151]U4,U4%
234 [151]U3,U3%[171]1
235 [137]35
240 UD%[178]((U2%[172]256[170]U1%[170]U3%)[171]UB)[173]40:[153][200](UD$,UD%[170]1):[142]
245 [153][200](UD$,24);" HELP COMING WAIT ":[142]
250 U1%[178][194](U1):U2%[178][194](U2):U3%[178][194](U3):U4%[178][194](U4)
251 UJ$[178]US$:UK$[178]UG$:UL$[178]UT$:UJ[178]UP:UK[178]UL
255 [142]
300 [143] ** MENU **
301 :
302 [153]"LOAD":[151]UT,UU%:[139][194](50003)[178]0[167][151]53281,9:[151]53280,8
303 :
305 [153]" MENU"
310 [153]" --------------------------------------"
315 [153]" 1. BEGIN MARKET
320 PRINT" 2. STUDENT INSTRUCTIONS"
325 PRINT" 3. TEACHER INSTRUCTIONS"
335 PRINT" 4. QUIT"
340 PRINT" --------------------------------------"
345 PRINT" PRESS A NUMBER KEY (1-4) ";
350 UL=1:US$="1234":GOSUB35:REM INPUT ROUTINE
352 US$=""
355 ONVAL(UR$)GOSUB1000,400,500,396
360 GOTO300
395 REM ** RE-ENABLE STOP KEY AND END **
396 IFPEEK(50003)<>1ANDPEEK(50003)<>160ANDPEEK(50003)<>0THEN399
397 SYSUU+71:IFPEEK(50003)=0THENPOKE53281,6:POKE53280,14
398 PRINT"[154][147]":END
399 GOSUB875:RETURN
400 REM ** STUDENT INSTRUCTIONS **
405 PRINT"[147]":POKEUT,UL%:IFPEEK(50003)=0THENPOKE53281,0:POKE53280,0
410 UT$="[160][205]ARKET":UP=1:UG$="[211]TUDENT [201]NST":GOSUB850
415 PRINT:PRINT" [212]HIS PROGRAM IS DESIGNED TO TEST"
416 PRINT:PRINT" YOUR ABILITY TO MANAGE A STORE."
417 PRINT:PRINT" [207]NCE YOU CHOOSE THE NAME OF YOUR "
418 PRINT:PRINT" STORE YOU WILL SEE A CHART OF YOUR "
419 PRINT:PRINT" HOLDINGS. '[211]HARE' REFERS TO THE %"
420 PRINT:PRINT" OF THE MARKET WHICH YOU CONTROL."
421 PRINT:PRINT" [212]HEN YOU MUST DECIDE HOW MUCH OF "
422 PRINT:PRINT" YOUR PRODUCT TO PRODUCE AND WHAT PRICE"
423 PRINT:PRINT" TO SELL IT FOR."
430 GOSUB835:UP=2:GOSUB850
431 PRINT:PRINT" [212]HE FIRST PLAYER TO REACH 12000 IN"
432 PRINT:PRINT" ASSETS WINS THE GAME."
485 GOSUB835
490 IFUZ=1THENSYSUP%:GOTO217
499 RETURN
500 REM ** TEACHER INSTRUCTIONS **
501 PRINT"[147]":POKEUT,UL%:IFPEEK(50003)=0THENPOKE53281,2:POKE53280,10
502 UT$=" [205]ARKET":UP=1:UG$="[212]EACHER [201]NST":GOSUB850
503 PRINT" [212]O THE BEST OF OUR KNOWLEDGE,"
504 PRINT" THIS PROGRAM IS IN THE PUBLIC"
505 PRINT" DOMAIN. [201]F THIS IS NOT THE CASE"
506 PRINT" PLEASE CONTACT:"
507 PRINT" [195]OMMODORE [194]USINESS [205]ACHINES"
508 PRINT" 3370 [208]HARMACY [193]VE.
509 [153]" ATNGINCOURT, (null)NTARIO"
510 [153]" LENANADA (null)1(null) 2(null)4"
511 [153]" (416) 499-4292"
512 UP[178]2:[141] 835:[141] 850:
513 [153]" (null)ROGRAM (null)AME: (null)ARKET
514 PRINT" [215]RITTEN [194]Y : [213]NKNOWN
515 [153]" (null)PGRADED PEEKY :
516 PRINT" [212]HIS PROGRAM WILL RUN ON ANY
519 [153]" (null)VAL(null) 64 LEN(null)(null)(null)(null)(null)VAL(null)
520 PRINT" [195][207][205][205][207][196][207][210][197] 64 [195][207][205][208][213][212][197][210]
521 [141]835
590 [139]UZ[178]1[167][158]UP%:[137]217
599 [142]
600 [143] ** PROGRAM MODIFICATION INST **
601 [153]"LOAD":[151]UT,UL%
605 UP[178]0:UG$[178]"(null)ROGRAM (null)OD":[141]850
660 [141]835
690 [139]UZ[178]1[167][158]UP%:[137]217
699 [142]
700 [143] ** TO USE 8032 LOAD CBM4032 **
710 [153]"LOADBEFORE RUNNING THIS PROGRAM ON AN 8032
720 PRINT" LOAD THE 'CBM 4032' PROGRAM"
730 SYSUU+71
740 END
800 REM ** T I T L E P A G E **
802 PRINT"[147]";:POKEUT,UU%:IFPEEK(50003)=0THENPOKE53280,14:POKE53281,6
804 FORI=1TO38:PRINT"[166][146]";:NEXT
806 FORI=1TO22:PRINT"[157][166][146]";:NEXT
808 FORI=1TO37:PRINT"[157][157][166][146]";:NEXT
810 FORI=1TO22:PRINT"[145][157][166][146]";:NEXT
812 PRINT"[169] [146]
814 [153]" WAIT WAITSTEP
816 PRINT" [146] [163][223]
818 [153]"(null) WAIT
820 PRINT"C O M M O D O R E
822 [153]"EDUCATIONAL
824 PRINT"SOFTWARE
826 [143] ** COMMODORE LOGO **
827 [153][200](UD$,24);"PRESS SPACE BAR OR WAITWAIT":I[178]0
828 [161]A$:[139]A$[179][177]" "[167]I[178]I[170]1:[139]I[179]250[167]828
830 T1$[178]"":T2$[178]"":T3$[178]"":T4$[178]"":I[178]0
832 [137]300
835 [143] ** SPACE BAR PRESS **
840 [151]UO,0:[153][200](UD$,24);"PRESS SPACE BAR TO CONTINUEWAIT"
844 [161]UI$:[139]UI$[179][177]" "[167]844
846 [142]
850 [143] ** PAGE DESIGN ROUTINE **
852 [143]
855 [153]"LOAD"[200](UT$[170]UP$,21);[201](UP$[170]UG$[170][196](UP),18)
860 [153]" --------------------------------------"
864 [139]UH[179][177]0[167]870
865 [153][200](UD$,24);[200](UP$,7);"HELP - PRESS H <RETURN>"
870 UH[178]0:[153]"":UP[178]UP[170]1:[142]
875 [143] ** PLEASE WAIT REMARK **
880 [153][200](UD$,24);" ONE MOMENT PLEASE... "
885 [142]
900 [143] ** SET UP VARIABLES **
901 UX$[178]"H":[134]UQ%(1000):UB[178]32768:U1[178]196:U2[178]197:U3[178]198:U4[178]216:UC[178]167:UU[178]1024
902 UT[178]59468:UU%[178]12:UL%[178]14:UP%[178]1146:UM[178]32768:UO[178]158:[151] 50003,0
903 [139][194](50003)[178]0[167]UB[178]1024:U1[178]209:U2[178]210:U3[178]211:U4[178]214:UC[178]204:UU[178]2048
904 [139][194](50003)[178]0[167]UT[178]53272:UU%[178]21:UL%[178]23:UP%[178]2139:UM[178]1024:UO[178]198
905 UD$[178]""
906 UP$[178]" "
907 UT$[178]" (null)ARKET CLOSECLOSECLOSECLOSECLOSE":[143] PLACE PROGRAM TITLE HERE !!!!!!!!!!!!!!!!!***
908 [142]
910 [143] ** SET VARIABLES **
915 [141]900
920 [143] ** CHECK FOR 8032 **
925 [153]"LOAD":[153]"CLOSE":[143] SHIFTED SPACE
930 [139][194](UB[170]40)[179][177]96[167][141]700
931 [143] ** MEMORY CHECK **
932 [139] [184](0)[177]2000[167]937
933 [153]"LOADTHIS MACHINE DOES NOT HAVE ENOUGH"
934 [153]"MEMORY TO RUN THIS PROGRAM !"
935 [158]UU[170]71
936 [128]
937 [153]"LOAD":[139][194](50003)[178]0[167]962
940 [143] ** BASIC 2.0 OR 4.0 OR C-64 SETUP **
941 [151]1075,133:[151]1076,144:[151]1077,234:[151]1079,4:[151]1080,133:[151]1081,145
942 [151]1091,155:[151]1098,133:[151]1099,144:[151]1100,234:[151]1103,133
943 [151]1104,145:[151]1105,234:[151]1082,234
945 [139][194](50003)[179][177]160[167]955
950 [151]1093,88:[151]1094,228:[151]1097,85:[151]1102,228:[137]965
955 [139][194](50003)[179][177]1[167]990
960 [151]1093,49:[151]1094,230:[151]1097,46:[151]1102,230:[137]965
962 [151]2099,141:[151]2100,20:[151]2101,3:[151]2103,8:[151]2104,141:[151]2105,21
963 [151]2106,3:[151]2115,145:[151]2117,52:[151]2118,234:[151]2121,49:[151]2122,141
964 [151]2123,20:[151]2124,3:[151]2126,234:[151]2127,141:[151]2128,21:[151]2129,3
965 [158]UU[170]48:[143] DISABLE STOP KEY
970 [141]800:[143] TITLE
980 [137]300:[143] MENU
990 [153]"LOADTHE PGM WILL NOT WORK ON THIS MACHINE!":[128]
1000 [139]UZ[178]1[167][158]UP%:[158]UP%:UZ[178]0:[143] ** PROGRAM STARTS HERE **
1001 [153]"LOAD";:[140]:[139][194](50003)[178]0[167][151]53281,6:[151]53280,14
1002 UG$[178]""
1003 UT$[178]" MARKET"
1020 [135] K2,N,K,K3,C(1),C(2),I(1),I(2),F,U,R,G1,G2,G3,M1,K4:[140]
1070 Q[178]0:W2[178]0:W4[178]0:W3[178]0:
1080 [137] 1260
1260 UG$[178]"SET UP":UP[178]1:[141]850:[153]:[153]" THERE ARE TWO COMPANIES:"
1261 [129]I[178]1[164]2:[153]:[153]" ENTER NAME OF COMPANY #";I;
1262 UL[178]10:US$[178]"":[141]35:N$(I)[178]UR$:[130]I
1350 [153]:[153]" PRODUCTION COST: $25/UNIT"
1360 [153]:[153]" WAREHOUSE CHARGES: ";R[172]100;"CMD% OF VALUE"
1370 [153]:[153]" INTEREST RATE: ";K3[172]100;"CMD%"
1410 [141]835
1420 [129] J[178]1 [164] 5:E(J)[178]0:[130] J
1430 P4[178]0:
1440 [129] J[178]1 [164] 2:W(J)[178]0:D(J)[178]0:T(J)[178]0
1450 B(J)[178]U[172]I(J)[170]C(J):[130]
1460 [141] 1990
1470 [153]
1480 Q[178]Q[170]1:[141] 2210:[141] 1780:
1490 [129] J[178]1 [164] 2:D(J)[178](1[171]E(5))[172].5[172](K2[170]2[172]V(J)[172]D1)[173](P(J)[173]50)[174]N:[130] J
1500 [141] 2120:[129] J[178]1 [164] 2
1510 [139] D(J)[177]I(J) [137] 1530
1520 T(J)[178]D(J):[137] 1540
1530 T(J)[178]I(J)
1540 T(J)[178][181](T(J)):C(J)[178]C(J)[170]T(J)[172]P(J)
1550 I(J)[178]I(J)[171]T(J):[130] J
1560 [129] J[178]1 [164] 2
1570 C(J)[178]C(J)[171]R[172]I(J)[172]U[171]K3[172]C(J)[172]([180](C(J))[171][180](C(J))[174]2)[173]2:C(J)[178][181](C(J))
1580 [139] E(5)[178]0 [167] 1600
1590 W(J)[178]0:[137] 1620
1600 [139] T(1)[170]T(2)[178]0 [167] 1590
1610 W(J)[178][181](10000[172]T(J)[173](T(1)[170]T(2)))[173]100
1620 [130] J
1630 [141]1990
1640 [129]J[178]1[164]2: B(J)[178]C(J)[170]U[172]I(J):[139] B(J)[177]0 [167] 1660:[130]
1650 [153]:[141] 2090:[153]
1660 [129]J[178]1[164]2 :[139] B(J)[179]M1 [137] 1730
1670 [139] B(J)[179][178]C(3[171]J)[170]U[172]I(3[171]J) [137] 1730
1680 P4[178]17:[153]
1690 [153] [163]10)" -------------------"
1700 [153]" "N$(J)" YOU HAVE REACHED $".001[172]M1" MILLION AND WON"
1710 [153] [163]10)"--------------------"
1720 [153]
1730 [130] J
1740 [153]:[139] P4[179][177]17 [137] 1480
1770 [140]:[141]835:[158]UP%:[137]300
1780 [129]J[178]1[164]2:
1785 : [153]" ";N$(J);":"
1790 : [139]E(2)[179][177]1[167]1820
1800 : [143]
1820 [153]" ENTER YOUR PRODUCTION LEVEL: CMDCMDCMDCMDCMDCMDCMD";
1824 US$[178]"H0123456789":UL[178]3:
1825 [141]35:L(J)[178][197](UR$)
1827 [153]"ON "
1830 [153]"ON ENTER ADVERTISING BUDGET: ";
1835 [141]35:A(J)[178][197](UR$):[153]
1840 C(J)[178]C(J)[171]F[171]L(J)[172]U[171]A(J):[139] E(2)[178]1 [137] 1860
1850 I(J)[178]I(J)[170]L(J)
1855 [153]"ONON "
1860 [153]"ON ENTER UNIT PRICE: CMDCMDCMDCMDCMDCMDCMDCMD";:[141]35:A[178][197](UR$):
1865 [139]E(1)[179][177]1[167]1900
1870 [139] A[179][178]P(J) [137] 1900
1880 [153]" CONTROLS-DO NOT RAISE PRICES"
1890 [153]"ON ";:[137]1860
1900 P(J)[178]A:[139] A[177]200[167][153]"ON " :[137]1860
1910 [139] P(J)[179][178]0 [167] 1860
1914 BL$[178]" "
1915 [153]""
1916 [129]I[178]1[164]10:[153]BL$:[130]
1920 [130] J
1930 A2[178]A(1)[170]A(2)
1940 [139] A2[177]0 [167] 1960
1950 V(1)[178]0:V(2)[178]0:[137] 1970
1960 V(1)[178]A(1)[173]A2:V(2)[178]A(2)[173]A2
1970 D1[178](K2[171]K2[172][189]([171]K[172]A2))[172]K4:[142]
1980 [143]
1990 UG$[178]"CHART":UP[178]1:[141]850
2000 [153]"ORTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTAN^"
2001 [153]"(null)PROFIT(null)SHARE(null)CASH (null)#SOLD(null)INV. (null)ASSETS(null)"
2002 [129]I[178]1[164]2:
2004 [153]"-TANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTAN<"
2005 [153]"(null)";U[172]I(I)[170]C(I)[171]B(I);[163]7);W(I);[163]13);C(I);[163]19);T(I);
2006 [153][163]25);I(I);[163]31);U[172]I(I)[170]C(I);[163]38);"(null)"
2007 [130]I
2008 [153]"/TANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANEXP"
2060 [142]
2070 [131] 50,2,.001,.05,5000,5000,100,100,250,20,.05,.2,.4,.4,12000,1.5
2090 [153]" "N$(J)": YOU HAVE GONE BANKRUPT"
2110 P4[178]17:[141]835:[158]UP%:[137]300
2120 [139] P(1)[179]P(2) [137] 2140
2130 M[178]2:[137] 2150
2140 M[178]1
2150 G4[178](P(3[171]M)[171]P(M))[173]P(3[171]M):[139] G4[179][178]G1 [137] 2200
2160 [139] G4[179]G2 [167] 2180
2170 G4[178]G2
2180 G5[178]D(3[171]M)[172]((G4[171]G1)[173](G2[171]G1))[172]G3:D(3[171]M)[178]D(3[171]M)[171]G5
2190 D(M)[178]D(M)[171]G5
2200 [142]
2210 [139] Q[179]6 [137] 2400
2220 [139] [187](1)[179].1 [167] 2270
2230 [139] [187](1)[177].9 [167] 2290
2240 [139] [187](1)[179].1 [167] 2350
2250 [139] [187](1)[177].9 [167] 2370
2260 [137] 2400
2270 [139] E(1)[177]0 [167] 2230
2280 [141] 2480:E(1)[178]1:Q1[178]Q:[137] 2230
2290 I[178][181]([187](1)[170]1.5):[139] Q[171]W2[179][178]2[167] 2240
2295 [139]I[177]2[167]2290
2300 [139] C(I)[179][178]0 [137] 2240
2310 [139] C(I)[177]200 [137] 2330
2320 C(I)[178]C(I)[172].75:[137] 2340
2330 C(I)[178]C(I)[171]200
2340 [141] 2510:W2[178]Q:[137] 2240
2350 J[178][181]([187](1)[170]1.49):[139] Q[171]W3[179][178]2 [137] 2250
2360 [141] 2540:C(J)[178]C(J)[170]U[172]I(J)[172].75:I(J)[178]0:W3[178]Q:[137] 2250
2370 [139] E(1)[178]1 [137] 2400
2380 [139] Q[171]W4[179][178]2 [137] 2400
2390 W4[178]Q:[141]2590:E(5)[178]1:Q2[178]Q
2400 [139] [181]((Q[171]1)[173]4)[172]4[179][177]Q[171]1 [137] 2680
2410 [139] Q[178]1 [176] E(1)[178]1 [137] 2680
2420 [139] [187](1)[177].25 [137] 2450
2430 [139] Q[179]6 [137] 2680
2440 [141]2590:E(2)[178]1:U[178][181](U[172](1.1[170].1[172][187](1))):Q3[178]Q:[137] 2680
2450 U[178][181](U[172](1.05[170].1[172][187](1))):[153]" NEW LABOR CONTRACT-VARIABLE PRODUCTION
2460 PRINT" COST NOW = $"U;" PER UNIT."
2470 GOTO 2680
2480 PRINT" WAGE AND PRICE CONTROLS IMPOSED-"
2500 PRINT:PRINT" YOU MAY NOT RAISE PRICES "
2505 RETURN
2510 PRINT" "N$(I);": STAFF HAS EMBEZZLED $$$"
2520 PRINT:PRINT" YOU NOW HAVE $";C(I)" CASH ON HAND":RETURN
2540 PRINT" "N$(J);":YOUR WAREHOUSE HAS BURNED DOWN-"
2550 PRINT: PRINT" ALL UNITS HAVE BEEN DESTROYED"
2560 PRINT: PRINT" INSURANCE PAYS YOU: $";U*U(J)*.75
2580 RETURN
2590 REM
2600 PRINT:PRINT" TRANSPORT STRIKE: NO SALES POSSIBLE"
2630 :RETURN
2680 IF E(1)<>1 THEN 2710
2690 IF Q<Q1+2 THEN 2710
2700 E(1)=2:PRINT:PRINT" THE WAGE-PRICE FREEZE HAS ENDED.":PRINT
2710 IF E(5)<> 1 THEN 2750
2720 IF Q2=Q THEN 2750
2730 E(5)=0:PRINT:PRINT" TRANSPORT STRIKE SETTLED"
2750 IF E(2)<>1 GOTO 2800
2760 IF Q3=Q GOTO 2800
2770 PRINT" STRIKE SETTLED. NORMAL PRODUCTION HAS"
2780 PRINT" BEEN RESUMED. NEW VARIABLE UNIT"
2790 PRINT" COST = $"U;"/UNIT DUE TO INCREASED":PRINT" WAGES":PRINT:E(2)=0
2800 RETURN
2810 PRINT" HOPE YOU HAD FUN"
3670 RETURN