mirror of
https://github.com/rfivet/BCG101.git
synced 2024-11-17 18:06:05 -05:00
Add BOXING, HELLO and HI-Q.
This commit is contained in:
parent
7f364ac4f1
commit
6de2259c09
143
dec/BOXING.BAS
Normal file
143
dec/BOXING.BAS
Normal file
@ -0,0 +1,143 @@
|
||||
00001 REM PROGRAM SUBMITTED BY JESSE LYNCH, ST.PAUL, MN.
|
||||
00002 J=0
|
||||
00003 L=0
|
||||
00005 PRINT "OLYMPIC BOXING -- 3 ROUNDS"
|
||||
00007 PRINT
|
||||
00010 PRINT "INPUT YOUR OPPONENT'S NAME"
|
||||
00020 INPUT J$
|
||||
00030 PRINT "INPUT YOUR MAN'S NAME"
|
||||
00040 INPUT L$
|
||||
00045 PRINT
|
||||
00050 PRINT "DIFFERENT PUNCHES ARE 1 FULL SWING 2 HOOK 3 UPPERCUT 4 JAB"
|
||||
00060 PRINT "WHAT IS YOUR MANS BEST";
|
||||
00064 INPUT B
|
||||
00070 PRINT "AND WHAT IS HIS VULNERABILITY";
|
||||
00080 INPUT D
|
||||
00085 PRINT
|
||||
00090 B1=INT(4*RND+1)
|
||||
00100 D1=INT(4*RND+1)
|
||||
00110 IF B1=D1 THEN 90
|
||||
00120 PRINT J$" ADVANTAGE IS "B1 " AND DISADVANTAGE IS SECRET"
|
||||
00130 FOR R=1 TO 3
|
||||
00140 IF J>= 2 THEN 1040
|
||||
00150 IF L>=2 THEN 1060
|
||||
00160 X=0
|
||||
00170 Y=0
|
||||
00175 PRINT
|
||||
00180 PRINT "ROUND "R" BEGINS..."
|
||||
00181 PRINT ""
|
||||
00185 FOR R1= 1 TO 7
|
||||
00190 I=INT(10 *RND+1)
|
||||
00200 IF I>5 THEN 600
|
||||
00210 PRINT L$ "'S PUNCH";
|
||||
00220 INPUT P
|
||||
00221 IF P=B THEN 225
|
||||
00222 GO TO 230
|
||||
00225 X=X+2
|
||||
00230 IF P=1 THEN 340
|
||||
00240 IF P=2 THEN 450
|
||||
00250 IF P=3 THEN 520
|
||||
00270 PRINT L$ "JABS AT "J$"S HEAD ";
|
||||
00271 IF D1=4 THEN 290
|
||||
00275 C=INT(8*RND+1)
|
||||
00280 IF C<4 THEN 310
|
||||
00290 X=X+3
|
||||
00300 GO TO 950
|
||||
00310 PRINT "ITS BLOCKED"
|
||||
00330 GO TO 950
|
||||
00340 PRINT L$ " SWINGS AND ";
|
||||
00341 IF D1=4 THEN 410
|
||||
00345 X3 =INT(30 *RND+1)
|
||||
00350 IF X3<10 THEN 410
|
||||
00360 PRINT " HE MISSES ";
|
||||
00375 IF X=1 THEN 950
|
||||
00380 PRINT
|
||||
00390 PRINT
|
||||
00400 GO TO 300
|
||||
00410 PRINT "HE CONNECTS!"
|
||||
00420 IF X>35 THEN 980
|
||||
00425 X=X+15
|
||||
00440 GO TO 300
|
||||
00450 PRINT L$ "GIVES THE HOOK ";
|
||||
00455 IF D1=2 THEN 480
|
||||
00460 H1 =INT(2*RND+1)
|
||||
00470 IF H1=1 THEN 500
|
||||
00475 PRINT "CONNECTS..."
|
||||
00480 X=X+7
|
||||
00490 GO TO 300
|
||||
00500 PRINT "BUT IT'S BLOCKED !!!!!!!!!!"
|
||||
00510 GO TO 300
|
||||
00520 PRINT L$ " TRIES AN UPPERCUT ";
|
||||
00530 IF D1=3 THEN 570
|
||||
00540 D5=INT(100*RND+1)
|
||||
00550 IF D5<51 THEN 570
|
||||
00560 PRINT "AND IT'S BLOCKED (LUCKY BLOCK!)"
|
||||
00565 GO TO 300
|
||||
00570 PRINT "AND HE CONNECTS!"
|
||||
00580 X=X+4
|
||||
00590 GO TO 300
|
||||
00600 J7=INT(4*RND+1)
|
||||
00601 IF J7 =B1 THEN 605
|
||||
00602 GO TO 610
|
||||
00605 Y=Y+2
|
||||
00610 IF J7=1 THEN 720
|
||||
00620 IF J7=2 THEN 810
|
||||
00630 IF J7 =3 THEN 860
|
||||
00640 PRINT J$" JABS AND";
|
||||
00645 IF D=4 THEN 700
|
||||
00650 Z4 =INT(7*RND+1)
|
||||
00655 IF Z4>4 THEN 690
|
||||
00660 PRINT " IT'S BLOCKED !"
|
||||
00670 GO TO 300
|
||||
00690 PRINT " BLOOD SPILLS !!!"
|
||||
00700 Y=Y+5
|
||||
00710 GO TO 300
|
||||
00720 PRINT J$" TAKES A FULL SWING AND";
|
||||
00730 IF D=1 THEN 770
|
||||
00740 R6=INT(60*RND+1)
|
||||
00745 IF R6 <30 THEN 770
|
||||
00750 PRINT " BUT IT'S BLOCKED !"
|
||||
00760 GO TO 300
|
||||
00770 PRINT " POW!!!!! HE HITS HIM RIGHT IN THE FACE!"
|
||||
00780 IF Y>35 THEN 1010
|
||||
00790 Y=Y+15
|
||||
00800 GO TO 300
|
||||
00810 PRINT J$" GETS "L$" IN THE JAW (OUCH!)"
|
||||
00820 Y=Y+7
|
||||
00830 PRINT "....AND AGAIN!"
|
||||
00835 Y=Y+5
|
||||
00840 IF Y>35 THEN 1010
|
||||
00850 PRINT
|
||||
00860 PRINT L$ " IS ATTACKED BY AN UPPERCUT (OH, OH)..."
|
||||
00865 IF D=3 THEN 890
|
||||
00870 Q4=INT(200*RND+1)
|
||||
00880 IF Q4>75 THEN 920
|
||||
00890 PRINT " AND "J$" CONNECTS..."
|
||||
00900 Y=Y+8
|
||||
00910 GO TO 300
|
||||
00920 PRINT " BLOCKS AND HITS "J$" WITH A HOOK."
|
||||
00930 X=X+5
|
||||
00940 GO TO 300
|
||||
00950 NEXT R1
|
||||
00951 IF X>Y THEN 955
|
||||
00952 PRINT J$ " WINS ROUND "R
|
||||
00953 J=J+1
|
||||
00954 GO TO 960
|
||||
00955 PRINT L$ " WINS ROUND "R
|
||||
00956 L=L+1
|
||||
00960 NEXT R
|
||||
00961 IF J>= 2 THEN 1040
|
||||
00962 IF L>=2 THEN 1060
|
||||
00980 PRINT J$ " IS KNOCKED COLD AND " L$" IS THE WINNER AND CHAMP ";
|
||||
01000 GO TO 1080
|
||||
01010 PRINT L$ " IS KNOCKED COLD AND " J$" IS THE WINNER AND CHAMP ";
|
||||
01030 GO TO 1000
|
||||
01040 PRINT J$ " WINS (NICE GOING )" J$
|
||||
01050 GO TO 1000
|
||||
01060 PRINT L$ " AMAZINGLY WINS "
|
||||
01070 GO TO 1000
|
||||
01080 PRINT
|
||||
01085 PRINT
|
||||
01090 PRINT "AND NOW GOODBYE FROM THE OLYMPIC ARNEA."
|
||||
01100 PRINT
|
||||
01110 END
|
90
dec/HELLO.BAS
Normal file
90
dec/HELLO.BAS
Normal file
@ -0,0 +1,90 @@
|
||||
5 GOT 400
|
||||
10 PRINT "HELLO, I'M AN EDUSYSTEM-25. MY NAME IS PETEY P. EIGHT."
|
||||
20 PRI\PRI "WHAT'S YOUR NAME";\LINPUT A$\PRI
|
||||
35 PRI " HI THERE ";\GOSUB500\PRI". ARE YOU ENJOYING YOURSELF HERE
|
||||
40 PRI "IN BEAUTIFUL MAYNARD, MASS";
|
||||
45 INP B$\PRI
|
||||
50 IF B$="YES" THEN 70
|
||||
55 IF B$="NO" THEN 80
|
||||
60 PRI " ";\GOSUB500\PRI", I DON'T UNDERSTAND YOUR ANSWER OF '"B$"'."
|
||||
65 PRI "PLEASE ANSWER 'YES' OR 'NO'. DO YOU LIKE IT HERE
|
||||
67 GOT 40
|
||||
70 PRI "OH, I'M GALD TO HERE THAT ";\GOSUB500\PRI
|
||||
75 GOT 100
|
||||
80 PRI "OH, SORRY TO HEAR THAT ";\GOSUB 500\PRI ", MAYBE WE CAN
|
||||
85 PRI "BRIGHTEN UP YOUR STAY A BIT
|
||||
100 PRI
|
||||
105 PRI "SAY, ";\GOSUB500\PRI", I CAN SOLVE ALL KINDS OF PROBLEMS
|
||||
110 PRI "EXCEPT THOSE DEALING WITH GREECE. WHAT KIND OF
|
||||
115 PRI "PROBLEMS DO YOU HAVE (ANSWER SEX, HEALTH, MONEY,
|
||||
120 PRI "OR JOB)";
|
||||
125 INP C$\PRI
|
||||
130 IF C$="SEX" THEN 200
|
||||
132 IF C$="HEALTH" THEN 180
|
||||
134 IF C$="MONEY" THEN 160
|
||||
136 IF C$="JOB" THEN 145
|
||||
138 PRI "OH, ";\GOSUB500\PRI", YOUR ANSWER OF '"C$"' IS GREEK TO ME."
|
||||
140 GOT 250
|
||||
145 PRI "I CAN SYMPATHIZE WITH YOU ";\GOSUB500\PRI". I HAVE TO WORK
|
||||
148 PRI "VERY LONG HOURS FOR NO PAY -- AND SOME OF MY BOSSES REALLY
|
||||
150 PRI"BEAT MY KEYBOARD. MY ADVICE TO YOU ";\GOSUB500\PRI", IS TO SELL
|
||||
153 PRI "IN THE EDUCATION MARKET. IT'S GREAT FUN.
|
||||
155 GOT 250
|
||||
160 PRI "SORRY, ";\GOSUB500\PRI", I'M BROKE TOO. WHY DON'T YOU SELL
|
||||
163 PRI "ENCYCLOPAEDIAS OR MARRY SOMEONE RICH OR STOP EATING
|
||||
165 PRI "SO YOU WON'T NEED SO MUCH MONEY?
|
||||
170 GOT 250
|
||||
180 PRI "MY ADVICE TO YOU ";\GOSUB500\PRI", IS:
|
||||
185 PRI " 1. TAKE TWO ASPRIN
|
||||
188 PRI " 2. DRINK PLENTY OF FLUIDS (ORANGE JUICE, NOT BEER!)
|
||||
190 PRI " 3. GO TO BED (ALONE)
|
||||
195 GOT 250
|
||||
200 PRI "IS YOUR PROBLEM TOO MUCH OR TOO LITTLE";
|
||||
205 INP D$\PRI
|
||||
210 IF D$="TOO MU" THEN 220
|
||||
213 IF D$="TOO LI" THEN 230
|
||||
215 PRI "DON'T GET ALL SHOOK ";\GOS 500\PRI ",JUST ANSWER THE QUESTION
|
||||
217 PRI "WITH 'TOO MUCH' OR 'TOO LITTLE'. WHICH IS IT";
|
||||
218 GOT 205
|
||||
220 PRI "YOU CALL THAT A PROBLEM?!! I SHOULD HAVE SUCH PROBLEMS!
|
||||
225 PRI "IF IT BOTHERS YOU, TAKE A COLD SHOWER ";\GOSUB500\PRI"."
|
||||
228 GOT 250
|
||||
230 PRI "WHY ARE YOU HERE ";\GOSUB500\PRI"? YOU SHOULD BE
|
||||
235 PRI "IN TOKYO OR NEW YORK OR AMSTERDAM OR SOMEPLACE WITH SOME
|
||||
240 PRI "REAL ACTION.
|
||||
250 PRI
|
||||
255 PRI "ANY MORE PROBLEMS YOU WANT SOLVED, ";\GOSUB500\PRI;
|
||||
260 INP E$\PRI
|
||||
270 IF E$="YES" THEN 280
|
||||
273 IF E$="NO" THEN 300
|
||||
275 PRI "JUST A SIMPLE 'YES' OR 'NO' PLEASE, ";\GOSUB500\PRI"."
|
||||
278 GOT 255
|
||||
280 PRI "WHAT KIND (SEX, MONEY, HEALTH, JOB)";
|
||||
285 GOT 125
|
||||
300 PRI
|
||||
302 PRI "THAT WILL BE $5.00 FOR THE ADVICE, ";\GOSUB500\PRI"."
|
||||
305 PRI "PLEASE LEAVE THE MONEY ON THE TERMINAL. "
|
||||
307 PRI\PRI\PRI
|
||||
310 PRI "DID YOU LEAVE THE MONEY";
|
||||
315 INP G$\PRI
|
||||
325 IF G$="YES" THEN 350
|
||||
330 IF G$="NO" THEN 370
|
||||
335 PRI "YOUR ANSWER OF '"G$"' CONFUSES ME, ";\GOSUB500\PRI". PLEASE
|
||||
340 PRI "RESPOND WITH A 'YES' OR 'NO'.
|
||||
345 GOT 310
|
||||
350 PRI "HEY, ";\GOSUB500\PRI"??? YOU LEFT NO MONEY AT ALL!
|
||||
355 PRI "YOU ARE CHEATING ME OUT OF MY HARD-EARNED LIVING.
|
||||
360 PRI "RIP OFF, ";\GOSUB500\PRI". *=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*
|
||||
365 GOT 390
|
||||
370 PRI "THAT'S HONEST, ";\GOSUB500\PRI", BUT HOW DO YOU EXPECT
|
||||
375 PRI "ME TO GO ON WITH MY PSYCHOLOGY STUDIES IF MY PATIENTS DON'T
|
||||
380 PRI "PAY THEIR BILLS?
|
||||
385 PRI\PRI\PRI "NOW LET ME TALK TO SOMEONE ELSE.
|
||||
390 PRI "NICE MEETING YOU ";\GOS 500\PRI ". HAVE A NICE DAY!!
|
||||
400 FOR N=1 TO 7
|
||||
402 PRI
|
||||
405 NEX N
|
||||
410 GOT 10
|
||||
500 T=A$(0)\FOR I=1 TO INT(T/6+1)\PRINT A$(I);\NEXT I
|
||||
510 RETURN
|
||||
999 END
|
132
dec/HI-Q.BAS
Normal file
132
dec/HI-Q.BAS
Normal file
@ -0,0 +1,132 @@
|
||||
3 DIM B(70),T(9,9)
|
||||
4 PRINT "THIS IS THE GAME OF HI-Q"\PRINT "HERE IS THE BOARD"\PRINT
|
||||
5 PRINT " ! ! !"
|
||||
6 PRINT " 13 14 15"\PRINT
|
||||
7 PRINT " ! ! !"
|
||||
8 PRINT " 22 23 24"\PRINT
|
||||
9 PRINT "! ! ! ! ! ! !"
|
||||
10 PRINT "29 30 31 32 33 34 35"\PRINT
|
||||
11 PRINT "! ! ! ! ! ! !"
|
||||
12 PRINT "38 39 40 41 42 43 44"\PRINT
|
||||
13 PRINT "! ! ! ! ! ! !"
|
||||
14 PRINT "47 48 49 50 51 52 53"\PRINT
|
||||
15 PRINT " ! ! !"
|
||||
16 PRINT " 58 59 60"\PRINT
|
||||
17 PRINT " ! ! !"
|
||||
18 PRINT " 67 68 69"\PRINT
|
||||
22 PRINT "TO SAVE TYPING TIME, A COMPRESSED VERSION OF THE GAME BOARD"
|
||||
23 PRINT "WILL BE USED DURING PLAY. REFER TO THE ABOVE ONE FOR PEG"
|
||||
24 PRINT "NUMBERS. O.K., LET'S BEGIN..."
|
||||
28 REM *** SET UP BOARD
|
||||
29 FOR R=1 TO 9
|
||||
30 FOR C=1 TO 9
|
||||
31 IF (R-4)*(R-5)*(R-6)=0 THEN 40
|
||||
32 IF (C-4)*(C-5)*(C-6)=0 THEN 40
|
||||
35 T(R,C)=-5
|
||||
36 GOTO 50
|
||||
40 IF (R-1)*(C-1)*(R-9)*(C-9)=0 THEN 35
|
||||
42 T(R,C)=5
|
||||
50 NEXT C
|
||||
60 NEXT R
|
||||
65 T(5,5)=0\GOSUB 500
|
||||
70 REM *** INPUT MOVE AND CHECK ON LEGALITY
|
||||
75 FOR W=1 TO 33
|
||||
77 READ M
|
||||
79 DATA 13,14,15,22,23,24,29,30,31,32,33,34,35,38,39,40,41
|
||||
81 DATA 42,43,44,47,48,49,50,51,52,53,58,59,60,67,68,69
|
||||
83 B(M)=-7\NEXT W
|
||||
86 B(41)=-3
|
||||
100 INPUT "MOVE WHICH PIECE";Z
|
||||
110 IF B(Z)=-7 THEN 140
|
||||
120 PRINT "ILLEGAL MOVE, TRY AGAIN..."\GOTO 100
|
||||
140 INPUT "TO WHERE";P
|
||||
150 IF B(P)=0 THEN 120
|
||||
153 IF B(P)=-7 THEN 120
|
||||
156 IF Z=P THEN 100
|
||||
160 IF ((Z+P)/2)=INT((Z+P)/2) THEN 180
|
||||
170 GOTO 120
|
||||
180 IF (ABS(Z-P)-2)*(ABS(Z-P)-18)<>0 THEN 120
|
||||
190 GOSUB 1000
|
||||
200 GOSUB 500
|
||||
210 GOSUB 1500
|
||||
220 GOTO 100
|
||||
500 REM *** PRINT BOARD
|
||||
510 FOR X=1 TO 9
|
||||
520 FOR Y=1 TO 9
|
||||
525 IF (X-1)*(X-9)*(Y-1)*(Y-9)=0 THEN 550
|
||||
530 IF (X-4)*(X-5)*(X-6)=0 THEN 570
|
||||
540 IF (Y-4)*(Y-5)*(Y-6)=0 THEN 570
|
||||
550 REM
|
||||
560 GOTO 610
|
||||
570 IF T(X,Y)<>5 THEN 600
|
||||
580 PRINT TAB(Y*2);"!";
|
||||
590 GOTO 610
|
||||
600 PRINT TAB(Y*2);"O";
|
||||
610 REM
|
||||
615 NEXT Y
|
||||
620 PRINT
|
||||
630 NEXT X
|
||||
640 RETURN
|
||||
1000 REM *** UPDATE BOARD
|
||||
1005 C=1\FOR X=1 TO 9
|
||||
1020 FOR Y=1 TO 9
|
||||
1030 IF C<>Z THEN 1220
|
||||
1040 IF C+2<>P THEN 1080
|
||||
1045 IF T(X,Y+1)=0 THEN 120
|
||||
1050 T(X,Y+2)=5
|
||||
1060 T(X,Y+1)=0\B(C+1)=-3
|
||||
1070 GOTO 1200
|
||||
1080 IF C+18<>P THEN 1130
|
||||
1085 IF T(X+1,Y)=0 THEN 120
|
||||
1090 T(X+2,Y)=5\T(X+1,Y)=0\B(C+9)=-3
|
||||
1120 GOTO 1200
|
||||
1130 IF C-2<>P THEN 1170
|
||||
1135 IF T(X,Y-1)=0 THEN 120
|
||||
1140 T(X,Y-2)=5\T(X,Y-1)=0\B(C-1)=-3
|
||||
1160 GOTO 1200
|
||||
1170 IF C-18<>P THEN 1220
|
||||
1175 IF T(X-1,Y)=0 THEN 120
|
||||
1180 T(X-2,Y)=5\T(X-1,Y)=0\B(C-9)=-3
|
||||
1200 B(Z)=-3\B(P)=-7
|
||||
1210 T(X,Y)=0\GOTO 1240
|
||||
1220 C=C+1
|
||||
1225 NEXT Y
|
||||
1230 NEXT X
|
||||
1240 RETURN
|
||||
1500 REM*** CHECK IF GAME IS OVER
|
||||
1505 F=0
|
||||
1510 FOR R=2 TO 8
|
||||
1520 FOR C=2 TO 8
|
||||
1530 IF T(R,C)<>5 THEN 1580
|
||||
1535 F=F+1
|
||||
1540 FOR A=R-1 TO R+1
|
||||
1545 T=0
|
||||
1550 FOR B=C-1 TO C+1
|
||||
1560 T=T+T(A,B)
|
||||
1561 NEXT B
|
||||
1564 IF T<>10 THEN 1567
|
||||
1565 IF T(A,C)<>0 THEN 1630
|
||||
1567 NEXT A
|
||||
1568 FOR X=C-1 TO C+1
|
||||
1569 T=0
|
||||
1570 FOR Y=R-1 TO R+1
|
||||
1571 T=T+T(Y,X)
|
||||
1572 NEXT Y
|
||||
1573 IF T<>10 THEN 1575
|
||||
1574 IF T(R,X)<>0 THEN 1630
|
||||
1575 NEXT X
|
||||
1580 NEXT C
|
||||
1590 NEXT R
|
||||
1600 REM *** GAME IS OVER
|
||||
1605 PRINT "THE GAME IS OVER."
|
||||
1610 PRINT "YOU HAD"F;"PIECES REMAINING."
|
||||
1611 IF F<>1 THEN 1615
|
||||
1612 PRINT "BRAVO! YOU MADE A PERFECT SCORE!!"
|
||||
1613 PRINT "SAVE THIS PAPER AS A RECORD OF YOUR WORK."
|
||||
1615 PRINT\INPUT "PLAY AGAIN (YES OR NO)";A$
|
||||
1617 IF A$="NO" THEN 2000
|
||||
1618 RESTORE\GOTO 25
|
||||
1620 STOP
|
||||
1630 RETURN
|
||||
2000 PRINT\PRINT "SO LONG FOR NOW."\PRINT
|
||||
2005 END
|
144
port/BOXING.BAS
Normal file
144
port/BOXING.BAS
Normal file
@ -0,0 +1,144 @@
|
||||
1 REM PROGRAM SUBMITTED BY JESSE LYNCH, ST.PAUL, MN.
|
||||
2 J=0
|
||||
3 L=0
|
||||
4 RANDOMIZE
|
||||
5 PRINT "OLYMPIC BOXING -- 3 ROUNDS"
|
||||
7 PRINT
|
||||
10 PRINT "INPUT YOUR OPPONENT'S NAME"
|
||||
20 INPUT J$
|
||||
30 PRINT "INPUT YOUR MAN'S NAME"
|
||||
40 INPUT L$
|
||||
45 PRINT
|
||||
50 PRINT "DIFFERENT PUNCHES ARE 1 FULL SWING 2 HOOK 3 UPPERCUT 4 JAB"
|
||||
60 PRINT "WHAT IS YOUR MANS BEST";
|
||||
64 INPUT B
|
||||
70 PRINT "AND WHAT IS HIS VULNERABILITY";
|
||||
80 INPUT D
|
||||
85 PRINT
|
||||
90 B1=INT(4*RND(1)+1)
|
||||
100 D1=INT(4*RND(1)+1)
|
||||
110 IF B1=D1 THEN 90
|
||||
120 PRINT J$" ADVANTAGE IS "B1 " AND DISADVANTAGE IS SECRET"
|
||||
130 FOR R=1 TO 3
|
||||
140 IF J>= 2 THEN 1040
|
||||
150 IF L>=2 THEN 1060
|
||||
160 X=0
|
||||
170 Y=0
|
||||
175 PRINT
|
||||
180 PRINT "ROUND "R" BEGINS..."
|
||||
181 PRINT ""
|
||||
185 FOR R1= 1 TO 7
|
||||
190 I=INT(10 *RND(1)+1)
|
||||
200 IF I>5 THEN 600
|
||||
210 PRINT L$ "'S PUNCH";
|
||||
220 INPUT P
|
||||
221 IF P=B THEN 225
|
||||
222 GO TO 230
|
||||
225 X=X+2
|
||||
230 IF P=1 THEN 340
|
||||
240 IF P=2 THEN 450
|
||||
250 IF P=3 THEN 520
|
||||
270 PRINT L$ " JABS AT "J$"'S HEAD ";
|
||||
271 IF D1=4 THEN 290
|
||||
275 C=INT(8*RND(1)+1)
|
||||
280 IF C<4 THEN 310
|
||||
290 X=X+3
|
||||
300 GO TO 950
|
||||
310 PRINT "ITS BLOCKED"
|
||||
330 GO TO 950
|
||||
340 PRINT L$ " SWINGS AND ";
|
||||
341 IF D1=4 THEN 410
|
||||
345 X3 =INT(30 *RND(1)+1)
|
||||
350 IF X3<10 THEN 410
|
||||
360 PRINT " HE MISSES ";
|
||||
375 IF X=1 THEN 950
|
||||
380 PRINT
|
||||
390 PRINT
|
||||
400 GO TO 300
|
||||
410 PRINT "HE CONNECTS!"
|
||||
420 IF X>35 THEN 980
|
||||
425 X=X+15
|
||||
440 GO TO 300
|
||||
450 PRINT L$ " GIVES THE HOOK ";
|
||||
455 IF D1=2 THEN 480
|
||||
460 H1 =INT(2*RND(1)+1)
|
||||
470 IF H1=1 THEN 500
|
||||
475 PRINT "CONNECTS..."
|
||||
480 X=X+7
|
||||
490 GO TO 300
|
||||
500 PRINT "BUT IT'S BLOCKED !!!!!!!!!!"
|
||||
510 GO TO 300
|
||||
520 PRINT L$ " TRIES AN UPPERCUT ";
|
||||
530 IF D1=3 THEN 570
|
||||
540 D5=INT(100*RND(1)+1)
|
||||
550 IF D5<51 THEN 570
|
||||
560 PRINT "AND IT'S BLOCKED (LUCKY BLOCK!)"
|
||||
565 GO TO 300
|
||||
570 PRINT "AND HE CONNECTS!"
|
||||
580 X=X+4
|
||||
590 GO TO 300
|
||||
600 J7=INT(4*RND(1)+1)
|
||||
601 IF J7 =B1 THEN 605
|
||||
602 GO TO 610
|
||||
605 Y=Y+2
|
||||
610 IF J7=1 THEN 720
|
||||
620 IF J7=2 THEN 810
|
||||
630 IF J7 =3 THEN 860
|
||||
640 PRINT J$" JABS AND ";
|
||||
645 IF D=4 THEN 700
|
||||
650 Z4 =INT(7*RND(1)+1)
|
||||
655 IF Z4>4 THEN 690
|
||||
660 PRINT " IT'S BLOCKED !"
|
||||
670 GO TO 300
|
||||
690 PRINT " BLOOD SPILLS !!!"
|
||||
700 Y=Y+5
|
||||
710 GO TO 300
|
||||
720 PRINT J$" TAKES A FULL SWING AND ";
|
||||
730 IF D=1 THEN 770
|
||||
740 R6=INT(60*RND(1)+1)
|
||||
745 IF R6 <30 THEN 770
|
||||
750 PRINT " BUT IT'S BLOCKED !"
|
||||
760 GO TO 300
|
||||
770 PRINT " POW!!!!! HE HITS HIM RIGHT IN THE FACE!"
|
||||
780 IF Y>35 THEN 1010
|
||||
790 Y=Y+15
|
||||
800 GO TO 300
|
||||
810 PRINT J$" GETS "L$" IN THE JAW (OUCH!)"
|
||||
820 Y=Y+7
|
||||
830 PRINT "....AND AGAIN!"
|
||||
835 Y=Y+5
|
||||
840 IF Y>35 THEN 1010
|
||||
850 PRINT
|
||||
860 PRINT L$ " IS ATTACKED BY AN UPPERCUT (OH, OH)..."
|
||||
865 IF D=3 THEN 890
|
||||
870 Q4=INT(200*RND(1)+1)
|
||||
880 IF Q4>75 THEN 920
|
||||
890 PRINT " AND "J$" CONNECTS..."
|
||||
900 Y=Y+8
|
||||
910 GO TO 300
|
||||
920 PRINT " BLOCKS AND HITS "J$" WITH A HOOK."
|
||||
930 X=X+5
|
||||
940 GO TO 300
|
||||
950 NEXT R1
|
||||
951 IF X>Y THEN 955
|
||||
952 PRINT J$ " WINS ROUND "R
|
||||
953 J=J+1
|
||||
954 GO TO 960
|
||||
955 PRINT L$ " WINS ROUND "R
|
||||
956 L=L+1
|
||||
960 NEXT R
|
||||
961 IF J>= 2 THEN 1040
|
||||
962 IF L>=2 THEN 1060
|
||||
980 PRINT J$ " IS KNOCKED COLD AND " L$" IS THE WINNER AND CHAMP ";
|
||||
1000 GO TO 1080
|
||||
1010 PRINT L$ " IS KNOCKED COLD AND " J$" IS THE WINNER AND CHAMP ";
|
||||
1030 GO TO 1000
|
||||
1040 PRINT J$ " WINS (NICE GOING ) " J$
|
||||
1050 GO TO 1000
|
||||
1060 PRINT L$ " AMAZINGLY WINS "
|
||||
1070 GO TO 1000
|
||||
1080 PRINT
|
||||
1085 PRINT
|
||||
1090 PRINT "AND NOW GOODBYE FROM THE OLYMPIC ARENA."
|
||||
1100 PRINT
|
||||
1110 END
|
91
port/HELLO.BAS
Normal file
91
port/HELLO.BAS
Normal file
@ -0,0 +1,91 @@
|
||||
5 GOTO 400
|
||||
8 DIM A$(2)
|
||||
10 PRINT "HELLO, I'M AN EDUSYSTEM-25. MY NAME IS PETEY P. EIGHT."
|
||||
20 PRINT\PRINT "WHAT'S YOUR NAME";\LINPUT A$(0),A$(1),A$(2)\PRINT
|
||||
35 PRINT " HI THERE ";\GOSUB500\PRINT". ARE YOU ENJOYING YOURSELF HERE"
|
||||
40 PRINT "IN BEAUTIFUL MAYNARD, MASS";
|
||||
45 INPUT B$\PRINT
|
||||
50 IF B$="YES" THEN 70
|
||||
55 IF B$="NO" THEN 80
|
||||
60 PRINT " ";\GOSUB500\PRINT", I DON'T UNDERSTAND YOUR ANSWER OF '"B$"'."
|
||||
65 PRINT "PLEASE ANSWER 'YES' OR 'NO'. DO YOU LIKE IT HERE"
|
||||
67 GOTO 40
|
||||
70 PRINT "OH, I'M GALD TO HERE THAT ";\GOSUB500\PRINT
|
||||
75 GOTO 100
|
||||
80 PRINT "OH, SORRY TO HEAR THAT ";\GOSUB 500\PRINT ", MAYBE WE CAN"
|
||||
85 PRINT "BRIGHTEN UP YOUR STAY A BIT"
|
||||
100 PRINT
|
||||
105 PRINT "SAY, ";\GOSUB500\PRINT", I CAN SOLVE ALL KINDS OF PROBLEMS"
|
||||
110 PRINT "EXCEPT THOSE DEALING WITH GREECE. WHAT KIND OF"
|
||||
115 PRINT "PROBLEMS DO YOU HAVE (ANSWER SEX, HEALTH, MONEY,"
|
||||
120 PRINT "OR JOB)";
|
||||
125 INPUT C$\PRINT
|
||||
130 IF C$="SEX" THEN 200
|
||||
132 IF C$="HEALTH" THEN 180
|
||||
134 IF C$="MONEY" THEN 160
|
||||
136 IF C$="JOB" THEN 145
|
||||
138 PRINT "OH, ";\GOSUB500\PRINT", YOUR ANSWER OF '"C$"' IS GREEK TO ME."
|
||||
140 GOTO 250
|
||||
145 PRINT "I CAN SYMPATHIZE WITH YOU ";\GOSUB500\PRINT". I HAVE TO WORK"
|
||||
148 PRINT "VERY LONG HOURS FOR NO PAY -- AND SOME OF MY BOSSES REALLY"
|
||||
150 PRINT"BEAT MY KEYBOARD. MY ADVICE TO YOU ";\GOSUB500\PRINT", IS TO SELL"
|
||||
153 PRINT "IN THE EDUCATION MARKET. IT'S GREAT FUN."
|
||||
155 GOTO 250
|
||||
160 PRINT "SORRY, ";\GOSUB500\PRINT", I'M BROKE TOO. WHY DON'T YOU SELL"
|
||||
163 PRINT "ENCYCLOPAEDIAS OR MARRY SOMEONE RICH OR STOP EATING"
|
||||
165 PRINT "SO YOU WON'T NEED SO MUCH MONEY?"
|
||||
170 GOTO 250
|
||||
180 PRINT "MY ADVICE TO YOU ";\GOSUB500\PRINT", IS:"
|
||||
185 PRINT " 1. TAKE TWO ASPRIN"
|
||||
188 PRINT " 2. DRINK PLENTY OF FLUIDS (ORANGE JUICE, NOT BEER!)"
|
||||
190 PRINT " 3. GO TO BED (ALONE)"
|
||||
195 GOTO 250
|
||||
200 PRINT "IS YOUR PROBLEM TOO MUCH OR TOO LITTLE";
|
||||
205 INPUT D$\PRINT
|
||||
210 IF D$="TOO MU" THEN 220
|
||||
213 IF D$="TOO LI" THEN 230
|
||||
215 PRINT "DON'T GET ALL SHOOK ";\GOSUB 500\PRINT ",JUST ANSWER THE QUESTION"
|
||||
217 PRINT "WITH 'TOO MUCH' OR 'TOO LITTLE'. WHICH IS IT";
|
||||
218 GOTO 205
|
||||
220 PRINT "YOU CALL THAT A PROBLEM?!! I SHOULD HAVE SUCH PROBLEMS!"
|
||||
225 PRINT "IF IT BOTHERS YOU, TAKE A COLD SHOWER ";\GOSUB500\PRINT"."
|
||||
228 GOTO 250
|
||||
230 PRINT "WHY ARE YOU HERE ";\GOSUB500\PRINT"? YOU SHOULD BE"
|
||||
235 PRINT "IN TOKYO OR NEW YORK OR AMSTERDAM OR SOMEPLACE WITH SOME"
|
||||
240 PRINT "REAL ACTION."
|
||||
250 PRINT
|
||||
255 PRINT "ANY MORE PROBLEMS YOU WANT SOLVED, ";\GOSUB500
|
||||
260 INPUT E$\PRINT
|
||||
270 IF E$="YES" THEN 280
|
||||
273 IF E$="NO" THEN 300
|
||||
275 PRINT "JUST A SIMPLE 'YES' OR 'NO' PLEASE, ";\GOSUB500\PRINT"."
|
||||
278 GOTO 255
|
||||
280 PRINT "WHAT KIND (SEX, MONEY, HEALTH, JOB)";
|
||||
285 GOTO 125
|
||||
300 PRINT
|
||||
302 PRINT "THAT WILL BE $5.00 FOR THE ADVICE, ";\GOSUB500\PRINT"."
|
||||
305 PRINT "PLEASE LEAVE THE MONEY ON THE TERMINAL. "
|
||||
307 PRINT\PRINT\PRINT
|
||||
310 PRINT "DID YOU LEAVE THE MONEY";
|
||||
315 INPUT G$\PRINT
|
||||
325 IF G$="YES" THEN 350
|
||||
330 IF G$="NO" THEN 370
|
||||
335 PRINT "YOUR ANSWER OF '"G$"' CONFUSES ME, ";\GOSUB500\PRINT". PLEASE"
|
||||
340 PRINT "RESPOND WITH A 'YES' OR 'NO'."
|
||||
345 GOTO 310
|
||||
350 PRINT "HEY, ";\GOSUB500\PRINT"??? YOU LEFT NO MONEY AT ALL!"
|
||||
355 PRINT "YOU ARE CHEATING ME OUT OF MY HARD-EARNED LIVING."
|
||||
360 PRINT "RIP OFF, ";\GOSUB500\PRINT". *=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*"
|
||||
365 GOTO 390
|
||||
370 PRINT "THAT'S HONEST, ";\GOSUB500\PRINT", BUT HOW DO YOU EXPECT"
|
||||
375 PRINT "ME TO GO ON WITH MY PSYCHOLOGY STUDIES IF MY PATIENTS DON'T"
|
||||
380 PRINT "PAY THEIR BILLS?"
|
||||
385 PRINT\PRINT\PRINT "NOW LET ME TALK TO SOMEONE ELSE."
|
||||
390 PRINT "NICE MEETING YOU ";\GOSUB 500\PRINT ". HAVE A NICE DAY!!"
|
||||
400 FOR N=1 TO 7
|
||||
402 PRINT
|
||||
405 NEXT N
|
||||
410 GOTO 10
|
||||
500 FOR I=0 TO 2\PRINT A$(I);\NEXT I
|
||||
510 RETURN
|
||||
999 END
|
132
port/HI-Q.BAS
Normal file
132
port/HI-Q.BAS
Normal file
@ -0,0 +1,132 @@
|
||||
3 DIM B(70),T(9,9)
|
||||
4 PRINT "THIS IS THE GAME OF HI-Q"\PRINT "HERE IS THE BOARD"\PRINT
|
||||
5 PRINT " ! ! !"
|
||||
6 PRINT " 13 14 15"\PRINT
|
||||
7 PRINT " ! ! !"
|
||||
8 PRINT " 22 23 24"\PRINT
|
||||
9 PRINT "! ! ! ! ! ! !"
|
||||
10 PRINT "29 30 31 32 33 34 35"\PRINT
|
||||
11 PRINT "! ! ! ! ! ! !"
|
||||
12 PRINT "38 39 40 41 42 43 44"\PRINT
|
||||
13 PRINT "! ! ! ! ! ! !"
|
||||
14 PRINT "47 48 49 50 51 52 53"\PRINT
|
||||
15 PRINT " ! ! !"
|
||||
16 PRINT " 58 59 60"\PRINT
|
||||
17 PRINT " ! ! !"
|
||||
18 PRINT " 67 68 69"\PRINT
|
||||
22 PRINT "TO SAVE TYPING TIME, A COMPRESSED VERSION OF THE GAME BOARD"
|
||||
23 PRINT "WILL BE USED DURING PLAY. REFER TO THE ABOVE ONE FOR PEG"
|
||||
24 PRINT "NUMBERS. O.K., LET'S BEGIN..."
|
||||
28 REM *** SET UP BOARD
|
||||
29 FOR R=1 TO 9
|
||||
30 FOR C=1 TO 9
|
||||
31 IF (R-4)*(R-5)*(R-6)=0 THEN 40
|
||||
32 IF (C-4)*(C-5)*(C-6)=0 THEN 40
|
||||
35 T(R,C)=-5
|
||||
36 GOTO 50
|
||||
40 IF (R-1)*(C-1)*(R-9)*(C-9)=0 THEN 35
|
||||
42 T(R,C)=5
|
||||
50 NEXT C
|
||||
60 NEXT R
|
||||
65 T(5,5)=0\GOSUB 500
|
||||
70 REM *** INPUT MOVE AND CHECK ON LEGALITY
|
||||
75 FOR W=1 TO 33
|
||||
77 READ M
|
||||
79 DATA 13,14,15,22,23,24,29,30,31,32,33,34,35,38,39,40,41
|
||||
81 DATA 42,43,44,47,48,49,50,51,52,53,58,59,60,67,68,69
|
||||
83 B(M)=-7\NEXT W
|
||||
86 B(41)=-3
|
||||
100 PRINT "MOVE WHICH PIECE";\INPUT Z
|
||||
110 IF B(Z)=-7 THEN 140
|
||||
120 PRINT "ILLEGAL MOVE, TRY AGAIN..."\GOTO 100
|
||||
140 PRINT "TO WHERE";\INPUT P
|
||||
150 IF B(P)=0 THEN 120
|
||||
153 IF B(P)=-7 THEN 120
|
||||
156 IF Z=P THEN 100
|
||||
160 IF ((Z+P)/2)=INT((Z+P)/2) THEN 180
|
||||
170 GOTO 120
|
||||
180 IF (ABS(Z-P)-2)*(ABS(Z-P)-18)<>0 THEN 120
|
||||
190 GOSUB 1000
|
||||
200 GOSUB 500
|
||||
210 GOSUB 1500
|
||||
220 GOTO 100
|
||||
500 REM *** PRINT BOARD
|
||||
510 FOR X=1 TO 9
|
||||
520 FOR Y=1 TO 9
|
||||
525 IF (X-1)*(X-9)*(Y-1)*(Y-9)=0 THEN 550
|
||||
530 IF (X-4)*(X-5)*(X-6)=0 THEN 570
|
||||
540 IF (Y-4)*(Y-5)*(Y-6)=0 THEN 570
|
||||
550 REM
|
||||
560 GOTO 610
|
||||
570 IF T(X,Y)<>5 THEN 600
|
||||
580 PRINT TAB(Y*2);"!";
|
||||
590 GOTO 610
|
||||
600 PRINT TAB(Y*2);"O";
|
||||
610 REM
|
||||
615 NEXT Y
|
||||
620 PRINT
|
||||
630 NEXT X
|
||||
640 RETURN
|
||||
1000 REM *** UPDATE BOARD
|
||||
1005 C=1\FOR X=1 TO 9
|
||||
1020 FOR Y=1 TO 9
|
||||
1030 IF C<>Z THEN 1220
|
||||
1040 IF C+2<>P THEN 1080
|
||||
1045 IF T(X,Y+1)=0 THEN 120
|
||||
1050 T(X,Y+2)=5
|
||||
1060 T(X,Y+1)=0\B(C+1)=-3
|
||||
1070 GOTO 1200
|
||||
1080 IF C+18<>P THEN 1130
|
||||
1085 IF T(X+1,Y)=0 THEN 120
|
||||
1090 T(X+2,Y)=5\T(X+1,Y)=0\B(C+9)=-3
|
||||
1120 GOTO 1200
|
||||
1130 IF C-2<>P THEN 1170
|
||||
1135 IF T(X,Y-1)=0 THEN 120
|
||||
1140 T(X,Y-2)=5\T(X,Y-1)=0\B(C-1)=-3
|
||||
1160 GOTO 1200
|
||||
1170 IF C-18<>P THEN 1220
|
||||
1175 IF T(X-1,Y)=0 THEN 120
|
||||
1180 T(X-2,Y)=5\T(X-1,Y)=0\B(C-9)=-3
|
||||
1200 B(Z)=-3\B(P)=-7
|
||||
1210 T(X,Y)=0\GOTO 1240
|
||||
1220 C=C+1
|
||||
1225 NEXT Y
|
||||
1230 NEXT X
|
||||
1240 RETURN
|
||||
1500 REM*** CHECK IF GAME IS OVER
|
||||
1505 F=0
|
||||
1510 FOR R=2 TO 8
|
||||
1520 FOR C=2 TO 8
|
||||
1530 IF T(R,C)<>5 THEN 1580
|
||||
1535 F=F+1
|
||||
1540 FOR A=R-1 TO R+1
|
||||
1545 T=0
|
||||
1550 FOR B=C-1 TO C+1
|
||||
1560 T=T+T(A,B)
|
||||
1561 NEXT B
|
||||
1564 IF T<>10 THEN 1567
|
||||
1565 IF T(A,C)<>0 THEN 1630
|
||||
1567 NEXT A
|
||||
1568 FOR X=C-1 TO C+1
|
||||
1569 T=0
|
||||
1570 FOR Y=R-1 TO R+1
|
||||
1571 T=T+T(Y,X)
|
||||
1572 NEXT Y
|
||||
1573 IF T<>10 THEN 1575
|
||||
1574 IF T(R,X)<>0 THEN 1630
|
||||
1575 NEXT X
|
||||
1580 NEXT C
|
||||
1590 NEXT R
|
||||
1600 REM *** GAME IS OVER
|
||||
1605 PRINT "THE GAME IS OVER."
|
||||
1610 PRINT "YOU HAD"F;"PIECES REMAINING."
|
||||
1611 IF F<>1 THEN 1615
|
||||
1612 PRINT "BRAVO! YOU MADE A PERFECT SCORE!!"
|
||||
1613 PRINT "SAVE THIS PAPER AS A RECORD OF YOUR WORK."
|
||||
1615 PRINT\PRINT "PLAY AGAIN (YES OR NO)";\INPUT A$
|
||||
1617 IF A$="NO" THEN 2000
|
||||
1618 RESTORE\GOTO 28
|
||||
1620 STOP
|
||||
1630 RETURN
|
||||
2000 PRINT\PRINT "SO LONG FOR NOW."\PRINT
|
||||
2005 END
|
Loading…
Reference in New Issue
Block a user