mirror of
https://github.com/PDP-10/stacken.git
synced 2026-04-25 20:11:33 +00:00
Extract files from tape images.
Some tapes could not be extracted.
This commit is contained in:
182
files/games_interchange/polsys.bas
Normal file
182
files/games_interchange/polsys.bas
Normal file
@@ -0,0 +1,182 @@
|
||||
|
||||
10 REM POLSYS - SIMULATION OF CITY COUNCIL
|
||||
20 REM COPYRIGHT 1971 STATE UNIVERSITY OF NEW YORK
|
||||
30 REM M: STRATEGY MATRIX; S IS RESOURCE EXPENDITURE FOR CURRENT ROUND
|
||||
40 REM K IS RELATIVE WEIGHTS OF RESOURCE UNITS
|
||||
50 REM C IS RESOURCE EXPENDITURE BREAKDOWN BY GROUP AND TYPE X TYPE
|
||||
60 REM T IS TOTAL REMAINING RESOURCES
|
||||
70 REM W(I) IS NUMBER OF BOXES WON BY GROUP I
|
||||
105 REM LATEST REVISION 8-27-72
|
||||
110 DIM M(3,3),T(2,3),C(2,9),S(2,3),P(2),W(2),K(3,3)
|
||||
115 PRINT "ENTER ISSUE NUMBER ";
|
||||
117 RESTORE
|
||||
120 INPUT Q
|
||||
121 IF Q>3 THEN 115
|
||||
122 IF Q<1 THEN 115
|
||||
125 FOR I=1 TO 3
|
||||
130 FOR J=1 TO 3
|
||||
135 READ K(I,J)
|
||||
140 IF Q=I THEN 145
|
||||
141 IF Q<>J THEN 155
|
||||
142 LET M(I,J)=1
|
||||
143 GOTO 160
|
||||
145 LET M(I,J)=1
|
||||
146 GOTO 160
|
||||
155 LET M(I,J)=0
|
||||
156 LET M(J,I)=0
|
||||
160 NEXT J
|
||||
165 NEXT I
|
||||
170 PRINT "ENTER ROUND";
|
||||
175 INPUT R
|
||||
176 IF R=4 THEN 182
|
||||
177 IF R=1 THEN 182
|
||||
178 PRINT "INPUT PREVIOUS STRATEGY QUALITY POINTS";
|
||||
179 INPUT S7
|
||||
180 GOTO 190
|
||||
182 LET S7=0
|
||||
190 PRINT
|
||||
191 IF H2=1 THEN 235
|
||||
192 PRINT
|
||||
195 FOR I=1 TO 2
|
||||
197 GOSUB 850
|
||||
198 PRINT
|
||||
200 PRINT "TOTAL RES.;PUBLICITY(PBU),SUPPORT(SU),";
|
||||
201 PRINT "KNOWLEDGE(KU)";
|
||||
210 INPUT T(I,1),T(I,2),T(I,3)
|
||||
215 FOR J=1TO 10
|
||||
220 PRINT
|
||||
225 NEXT J
|
||||
230 NEXT I
|
||||
235 FOR I= 1 TO 2
|
||||
240 GOSUB 850
|
||||
241 PRINT
|
||||
245 PRINT "REMAINING RESOURCES (PBU,SU,KU)"
|
||||
250 PRINT T(I,1);T(I,2);T(I,3)
|
||||
255 FOR B=1 TO 3
|
||||
257 PRINT
|
||||
265 GOSUB 370
|
||||
270 PRINT"RES. TO BE USED";
|
||||
275 INPUT S(I,B)
|
||||
280 IF S(I,B)>T(I,B) THEN 265
|
||||
283 LET T(I,B)=T(I,B)-S(I,B)
|
||||
285 GOSUB 330
|
||||
290 GOSUB 955
|
||||
295 IF P=1 THEN 265
|
||||
300 NEXT B
|
||||
305 FOR A = 1 TO 10
|
||||
310 PRINT
|
||||
315 NEXT A
|
||||
320 NEXT I
|
||||
325 GOTO 455
|
||||
330 PRINT
|
||||
335 FOR J=1 TO 3
|
||||
340 GOSUB 370
|
||||
345 PRINT" X ";
|
||||
350 GOSUB 415
|
||||
355 INPUT C(I,B+3*(J-1))
|
||||
360 NEXT J
|
||||
365 RETURN
|
||||
370 IF B=1 THEN 385
|
||||
375 IF B=2 THEN 395
|
||||
380 IF B=3 THEN 405
|
||||
385 PRINT" PBU ";
|
||||
390 GOTO 410
|
||||
395 PRINT" SU ";
|
||||
400 GOTO 410
|
||||
405 PRINT" KU ";
|
||||
410 RETURN
|
||||
415 IF J=2 THEN 435
|
||||
420 IF J=3 THEN 445
|
||||
425 PRINT" PBU ";
|
||||
430 GOTO 450
|
||||
435 PRINT" SU ";
|
||||
440 GOTO 450
|
||||
445 PRINT" KU ";
|
||||
450 RETURN
|
||||
455 GOSUB 1075
|
||||
460 IF R=1 THEN 500
|
||||
465 IF R=2 THEN 600
|
||||
470 IF R=3 THEN 700
|
||||
475 IF R=4 THEN 800
|
||||
500 IF W(1)>=1 THEN 530
|
||||
510 PRINT "CITY COUNCIL CAN'T ACCEPT PROPOSAL. TRY ANOTHER STRATEGY."
|
||||
515 PRINT "REMAIN IN ROUND 1"
|
||||
520 GOTO 1017
|
||||
530 PRINT "CITY COUNCIL WILL CONSIDER DEMAND."
|
||||
535 PRINT "PROCEED TO ROUND 2"
|
||||
540 GOTO 1017
|
||||
600 IF W(1)>W(2) THEN 630
|
||||
610 PRINT "THE CITY COUNCIL IS CONSIDERING THE PROPOSAL UNFAVORABLY."
|
||||
620 GOTO 640
|
||||
630 PRINT "THE CITY COUNCIL IS CONSIDERING THE PROPOSAL FAVORABLY."
|
||||
640 PRINT "PROCEED TO ROUND 3"
|
||||
650 GOTO 1017
|
||||
700 IF W(1)>W(2) THEN 750
|
||||
710 IF S7>0 THEN 770
|
||||
720 PRINT "THE CITY COUNCIL HAS REJECTED THE PROPOSAL."
|
||||
730 STOP
|
||||
750 IF S7<0 THEN 770
|
||||
755 PRINT "THE CITY COUNCIL HAS APPROVED THE PROPOSAL."
|
||||
760 STOP
|
||||
770 PRINT "THE CITY COUNCIL HAS POSTPONED ITS DECISION."
|
||||
775 PRINT "PROCEED TO ROUND 4"
|
||||
777 FOR I=1 TO 2
|
||||
778 FOR J=1 TO 3
|
||||
779 LET T(I,J)=T(I,J)+S(I,J)
|
||||
780 NEXT J
|
||||
781 NEXT I
|
||||
782 GOTO 1017
|
||||
800 IF W(1)>W(2) THEN 755
|
||||
810 GOTO 720
|
||||
850 IF I=2 THEN 865
|
||||
855 PRINT "TEAM 1 (PRO) ";
|
||||
860 RETURN
|
||||
865 PRINT "TEAM 2 (CON) ";
|
||||
870 RETURN
|
||||
945 STOP
|
||||
955 LET D=0
|
||||
960 LET P=0
|
||||
965 FOR J=1 TO 3
|
||||
970 LET D=D+C(I,B+3*(J-1))*K(B,J)
|
||||
975 NEXT J
|
||||
980 IF ABS(S(I,B)-D)<.01 THEN 1000
|
||||
985 PRINT "TOTAL DOES NOT MATCH SUM OF INPUTS"
|
||||
990 LET T(I,B)=T(I,B)+S(I,B)
|
||||
995 LET P=1
|
||||
997 RETURN
|
||||
1000 IF I=1 THEN 1014
|
||||
1005 FOR J=1 TO 3
|
||||
1010 LET C(I,B+3*(J-1))=C(I,B+3*(J-1))*K(B,J)
|
||||
1013 NEXT J
|
||||
1014 RETURN
|
||||
1015 REM NEXT ROUND
|
||||
1017 PRINT "STRATEGY QUALITY POINTS=";S7
|
||||
1020 PRINT"ANOTHER RUN(YES=1,NO=0)";
|
||||
1025 INPUT H2
|
||||
1027 IF H2=1 THEN 1045
|
||||
1030 PRINT"RES. GROUP 1";" ";"RES. GROUP 2"
|
||||
1035 PRINTT(1,1);T(1,2);T(1,3);" ";
|
||||
1037 PRINTT(2,1);T(2,2);T(2,3)
|
||||
1038 PRINT "END OF ROUND ";R
|
||||
1040 STOP
|
||||
1045 FOR I=1 TO 10
|
||||
1050 PRINT
|
||||
1055 NEXT I
|
||||
1065 GOTO 115
|
||||
1070 REM NUMBER OF WINS
|
||||
1075 FOR I=1 TO 2
|
||||
1080 LET W(I)=0
|
||||
1085 FOR J=1 TO 3
|
||||
1090 FOR K=1 TO 3
|
||||
1095 IF C(I,J+3*(K-1))*M(J,K)>C(3-I,K+3*(J-1)) THEN 1105
|
||||
1100 GOTO 1106
|
||||
1105 LET W(I)=W(I)+1
|
||||
1106 IF I=2 THEN 1110
|
||||
1107 LET S7=S7+(M(J,K)/K(K,1))*(C(1,J+3*(K-1))-C(2,K+3*(J-1)))
|
||||
1110 NEXT K
|
||||
1114 NEXT J
|
||||
1120 NEXT I
|
||||
1125 RETURN
|
||||
1200 DATA 1,5,10,.2,1,2,.1,.5,1
|
||||
1205 END
|
||||
*U*6
|
||||
Reference in New Issue
Block a user