home *** CD-ROM | disk | FTP | other *** search
- 100 REM COSBY'S PYRAMID V0.00 7/27/86
- 110 GOTO390
- 120 I=0:RESTORE
- 130 I=I+1:READE$
- 140 IFE$=D$THEND$="":GOTO1050
- 150 IFI=90THENGOSUB250:PRINTSPC(13)"ILLEGAL MOVE":GOSUB2500:FORK=1TO3000:NEXT
- 160 IFI=90THEN:J=J-1:D$="":GOTO430
- 170 GOTO130
- 180 DATA 136,124,247,259,36A,358,421,478,48D,456,59E,58C,69D,6AF,654,631,742
- 190 DATA 7BG,7CI,789,8DJ,89A,8CH,853,952,9EK,9DI,987,A63,A98,AEJ,AFL
- 200 DATA BGH,B74,BHO,BCD,C85
- 210 DATA CDE,CIP,CHN,DCB,DEF,DJQ,DIO,D84,D96,E95,EDC,EJP,EKR,FA6,FED
- 220 DATA FKQ,FLS,GB7,GHI,HC8,HIJ,IC7,IHG,ID9,IJK,JD8,JIH,JKL,JEA
- 230 DATA KE9,KJI,LFA,LKJ,MGB,MNO,NOP,NHC,OHB,OID,OPQ,ONM,PON,PIC
- 240 DATA PJE,PQR,QPO,QRS,QJD,QKF,RQP,RKE,SRQ,SLF
- 250 PRINT""
- 260 FORK=1TO6:PRINT" ":NEXT:PRINT"[145][145][145][145][145][145][145]"
- 270 RETURN
- 280 IF RP=1THEN310
- 290 GETA$:IFA$=""THEN290
- 300 IFA$="*"THEN370
- 310 D$=D$+A$
- 320 N=ASC(A$+" ")
- 330 IFN<49ORN>83THEND$="":GOTO290
- 340 IFN>48ANDN<58THENN=N-48
- 350 IFN>64ANDN<84THENN=N-55
- 360 PRINTA$
- 370 RETURN
- 380 F=1
- 390 POKE53280,0:POKE53281,1
- 400 FORQ=54272 TO 54296:POKE Q,0:NEXT:POKE 54296,15
- 410 DIMA(28),F(28),F$(28),O(28),O$(28),T(28),T$(28)
- 420 FORI=1TO28:A(I)=118:NEXT:A(1)=119
- 430 PRINT"[147][144] -[146] - [146]"
- 440 PRINT"[145] [146] [146]"
- 450 PRINT"[145] C-[146] -P [146]"
- 460 PRINT"[145] [146] [146]"
- 470 PRINT"[145] O--[146] --Y [146]"
- 480 PRINT"[145] [146] [146]"
- 490 PRINT"[145] S---[146] ---R [146]"
- 500 PRINT"[145] [146] [146]"
- 510 PRINT"[145] B----[146] ----A [146]"
- 520 PRINT"[145] [146] [146]"
- 530 PRINT"[145] Y-----[146] -----M [146]"
- 540 PRINT"[145] [146] [146]"
- 550 PRINT"[145] '------[146] ------I [146]"
- 560 PRINT"[145] [146] [146]"
- 570 PRINT"[145] S-------[146] -------D [146]"
- 580 PRINT"[145] [146] [146]"
- 590 PRINT"[145] ----------------------------------- [146]"
- 600 PRINT""SPC(19)"1"
- 610 PRINTSPC(18)"2 3"
- 620 PRINTSPC(17)"4 5 6"
- 630 PRINTSPC(16)"7 8 9 A"
- 640 PRINTSPC(15)"B C D E F"
- 650 PRINTSPC(14)"G H I J K L"
- 660 PRINTSPC(13)"M N O P Q R S"
- 670 PRINT"[151]"
- 680 J=J+1:Y=J
- 690 PRINT""SPC(19)CHR$(A(1))
- 700 PRINT""SPC(18)CHR$(A(2))" "CHR$(A(3))
- 710 PRINT""SPC(17)CHR$(A(4))" "CHR$(A(5))" "CHR$(A(6))
- 720 PRINT""SPC(16)CHR$(A(7))" "CHR$(A(8))" "CHR$(A(9))" "CHR$(A(10))
- 730 PRINT""SPC(15)CHR$(A(11))" "CHR$(A(12))" "CHR$(A(13))" "CHR$(A(14));
- 740 PRINT" "CHR$(A(15))
- 750 PRINT""SPC(14)CHR$(A(16))" "CHR$(A(17))" "CHR$(A(18))" "CHR$(A(19));
- 760 PRINT" "CHR$(A(20))" "CHR$(A(21))
- 770 PRINT""SPC(13)CHR$(A(22))" "CHR$(A(23))" "CHR$(A(24))" "CHR$(A(25));
- 780 PRINT" "CHR$(A(26))" "CHR$(A(27))" "CHR$(A(28))
- 790 PRINT"";
- 800 IFF=0THEN1620
- 810 F=F+1
- 820 PRINT"[144] MOVE:"J
- 830 PRINTSPC(14)"FROM ";
- 840 IFRP=1THENA$=F$(J)
- 850 GOSUB280
- 860 IFA$="*"THENY=Y-1:GOTO1160
- 870 F$(J)=A$
- 880 F(J)=N
- 890 IFA(F(J))<>118THENGOTO2470
- 900 PRINTSPC(14)"OVER ";
- 910 IFRP=1THENA$=O$(J)
- 920 GOSUB280
- 930 IFA$="*"THENY=Y-1:GOTO1160
- 940 O$(J)=A$
- 950 O(J)=N
- 960 IFA(O(J))<>118THENGOTO2470
- 970 PRINTSPC(14)" TO ";
- 980 IFRP=1THENA$=T$(J)
- 990 GOSUB280
- 1000 IFA$="*"THENY=Y-1:GOTO1160
- 1010 T$(J)=A$
- 1020 T(J)=N
- 1030 IFA(T(J))<>119THENGOTO2470
- 1040 GOTO120
- 1050 GOSUB2530
- 1060 PRINTSPC(26)"[145][145][145][145][145][145]CORRECT(RTN)"
- 1070 PRINTSPC(26)"ERROR(E)"
- 1080 PRINTSPC(26)"FINISHED(F)"
- 1090 IFRP=1THEN1130
- 1100 GET C$:IFC$=""THEN1100
- 1110 IFC$="E"THENJ=J-1:GOTO430
- 1120 IFC$="F"THEN1160
- 1130 A(F(J))=119:A(O(J))=119:A(T(J))=118
- 1140 IFJ=MTHENRP=0
- 1150 GOTO430
- 1160 PRINT"[147]":PRINT" C O S B Y ' S P Y R A M I D":PRINTSPC(19)" "
- 1170 PRINTSPC(18)" "
- 1180 PRINTSPC(17)" "
- 1190 PRINTSPC(16)" "
- 1200 PRINTSPC(15)" "
- 1210 PRINTSPC(14)" "
- 1220 PRINTSPC(13)" "
- 1230 PRINTSPC(12)" CHOOSE: "
- 1240 PRINTSPC(11)" "
- 1250 PRINTSPC(10)" 1) NEW GAME "
- 1260 PRINTSPC(09)" "
- 1270 PRINTSPC(08)" 2) SAVE GAME "
- 1280 PRINTSPC(07)" "
- 1290 PRINTSPC(06)" 3) REPLAY GAME "
- 1300 PRINTSPC(05)" "
- 1310 PRINTSPC(04)" 4) LIST MOVES TO PRINTER "
- 1320 PRINTSPC(03)" "
- 1330 PRINTSPC(7)"YOU HAD"27-Y"PEGS REMAINING."
- 1340 PRINTSPC(7)"YOUR RANK: ";
- 1350 IFY>26THENPRINT" CHEATER "
- 1360 IFY=26THENGOSUB2530:FORQ=1TO500:NEXT:GOSUB2530:FORQ=1TO500:NEXT
- 1370 IFY=26THENGOSUB2530:FORQ=1TO500:NEXT:GOSUB2530:PRINT " *** MASTER[146] ***"
- 1380 IFY=25THENPRINT"** CONSULTANT **"
- 1390 IFY=24THENPRINT"* EXPERT *"
- 1400 IFY=23THENPRINT"ADVANCED"
- 1410 IFY=22THENPRINT"INTERMEDIATE"
- 1420 IFY<22THENPRINT"BEGINNER"
- 1430 GETC$:IFC$=""THEN1430
- 1440 IFC$<"1"ORC$>"4"THEN1430
- 1450 GOSUB1940
- 1460 IFC$="1"THENJ=0:CLR:GOTO380
- 1470 IFY=0ANDC$="2"THENPRINT" ERROR: YOU MUST COMPLETE ONE MOVE.[146]"
- 1480 IFY=0ANDC$="2"THENGOSUB2510:FORQ=1TO5000:NEXT:GOTO1180
- 1490 IFY=0ANDC$="2"THENPRINT" ERROR: YOU MUST MAKE ONE COMPLETE MOVE[146]"
- 1500 IFY=0ANDC$="2"THENGOSUB2500:FORQ=1TO5000:NEXT:GOTO1160
- 1510 IFC$="2"THENGOTO2080
- 1520 IFC$="3"THENGOTO1970
- 1530 IFC$="4"THEN1540
- 1540 OPEN4,4:REM OPEN4,3 WILL PRINT TO SCREEN
- 1550 PRINT#4,"MOVE FROM OVER TO"
- 1560 FORJ=1TO26
- 1570 IFJ<10THENPRINT#4," ";
- 1580 PRINT#4,J"--- "F$(J)" -- "O$(J)" -- "T$(J)
- 1590 NEXT
- 1600 CLOSE4
- 1610 GOTO1160
- 1620 PRINT"[144] (C)1986 BY DAVE JEWETT
- 1630 [153]" 125 GLENVIEW DR.
- 1640 PRINT" PAW PAW, MICH. 49079
- 1650 [153]" FREE TO COPY NOT TO SELL
- 1660 PRINT" LOAD A PREVIOUSLY SAVED GAME? (Y/N)":GOSUB1920
- 1670 IFB$="Y"THENGOTO2320
- 1680 GOSUB250
- 1690 PRINT" IF YOU WIN THE 7 ROW GAME, I WOULD "
- 1700 PRINT" LIKE TO KNOW. FOR A WINNING SEQUENCE"
- 1710 PRINT" IN A 5 ROW GAME LIST LINES 2040-2070."
- 1720 PRINT" "
- 1730 PRINT" INSTRUCTIONS? (Y/N) ":F=1:GOSUB1920
- 1740 J=J-1:IFB$="N"THEN430
- 1750 GOSUB250
- 1760 PRINT" THE BOARD HOLES([215]) ARE FILLED WITH "
- 1770 PRINT" PEGS(X). THE OBJECT IS TO JUMP THE "
- 1780 PRINT" PEGS, AS IN CHECKERS, EITHER DIAGONAL-"
- 1790 PRINT" LY OR HORIZONTALLY ENDING UP WITH ONLY"
- 1800 PRINT" ONE PEG REMAINING. "
- 1810 PRINT" HIT ANY KEY TO CONTINUE!"
- 1820 GOSUB1920
- 1830 GOSUB250
- 1840 PRINT" AN OPENING MOVE WOULD BE FROM 6 OVER "
- 1850 PRINT" 3 TO 1. IF YOU'VE ENTERED THE MOVE "
- 1860 PRINT" CORRECTLY HIT RETURN. ON YOUR LAST "
- 1870 PRINT" POSSIBLE MOVE ENTER F INSTEAD OF "
- 1880 PRINT" RETURN. IF YOU FORGET HIT '*'. "
- 1890 PRINT" HIT ANY KEY TO START! "
- 1900 GOSUB1920
- 1910 GOTO430
- 1920 GETB$:IFB$=""THEN1920
- 1930 RETURN
- 1940 PRINT"[145][145][145]";
- 1950 FORI=1TO4:PRINT" ":NEXT
- 1960 PRINT"[145][145][145][145][145]":RETURN
- 1970 PRINTSPC(7)"YOU HAVE COMPLETED"Y"MOVES."
- 1980 PRINTSPC(7)"REPLAY BACK TO WHICH MOVE";:J=0:RP=1:INPUTM:
- 1990 IFM<2THEN:GOSUB2510:PRINTSPC(7)"ERROR: CAN'T GO BEYOND MOVE 2[146]"
- 2000 IFM<2THENFORI=1TO5000:NEXT:GOTO1160
- 2010 IFM>=YTHENGOSUB2510:PRINTSPC(7)"ERROR: MUST GO BACK FURTHER[146]"
- 2020 IFM>=YTHENFORI=1TO5000:NEXT:GOTO1160
- 2030 M=M-1:D$="":GOTO420
- 2040 REM******************************* * 5 ROW GAME WINNING SEQUENCE *
- 2050 REM******************************* *** 4-2-1,6-5-4,7-4-2,C-8-5 ***
- 2060 REM*** E-D-C,F-A-6,B-C-D,3-6-A *** *** D-9-6,A-6-3,1-2-4,4-5-6 ***
- 2070 REM*** 6-3-1 *** *******************************
- 2080 REM *SAVE
- 2090 INPUT"[147]T[146]APE OR D[146]ISK D[157][157][157]";Q$:IFQ$<>"T"ANDQ$<>"D"THEN2090
- 2100 INPUT"TITLE *[157][157][157]";TL$:IFTL$="*"THEN2100
- 2110 IFQ$="T"THENOPEN1,1,1,TL$:GOTO2130
- 2120 OPEN1,8,1,"0:"+TL$+",S,W"
- 2130 PRINT"WRITING GAME DATA"
- 2140 PRINT#1,Y;CHR$(13)
- 2150 FORI=1TO28:PRINT#1,A(I);CHR$(13):NEXT
- 2160 FORI=1TOY:PRINT#1,F(I);CHR$(13)
- 2170 PRINT#1,F$(I);CHR$(13):PRINT#1,O(I);CHR$(13)
- 2180 PRINT#1,O$(I);CHR$(13):PRINT#1,T(I);CHR$(13):PRINT#1,T$(I);CHR$(13):NEXT
- 2190 PRINT#1,J;CHR$(13):PRINT#1,F;CHR$(13)
- 2200 CLOSE1:PRINT"GAME SAVED---THE TITLE WAS:"TL$""
- 2210 PRINT"Y="Y""
- 2220 FORI=1TO28:PRINTA(I);:NEXT:PRINT:PRINT:FORQ=1TO1000:NEXT
- 2230 FORI=1TOY:PRINTI,"A(I)="A(I):PRINT,"F(I)="F(I):PRINT,"F$(I)="F$(I)
- 2240 PRINT,"O(I)="O(I):PRINT,"O$(I)="O$(I):PRINT,"T(I)="T(I)
- 2250 PRINT,"T$(I)="T$(I):PRINT:FORQ=1TO1000:NEXT:NEXT
- 2260 PRINT,"J="J,"F="F""
- 2270 OPEN15,8,15
- 2280 INPUT#15,A$,B$,C$,D$
- 2290 PRINT,A$","B$","C$","D$
- 2300 CLOSE15
- 2310 FORI=1TO5000:NEXT:GOTO1160
- 2320 REM *LOAD
- 2330 INPUT"[147]T[146]APE OR D[146]ISK D[157][157][157]";Q$:IFQ$<>"T"ANDQ$<>"D"THEN2330
- 2340 INPUT"TITLE *[157][157][157]";TL$:IFTL$="*"THEN2340
- 2350 IFQ$="T"THENOPEN1,1,0,TL$:GOTO2370
- 2360 OPEN1,8,0,"0:"+TL$+",S,R"
- 2370 PRINT"READING GAME DATA"
- 2380 INPUT#1,Y:PRINT"Y="Y:PRINT
- 2390 FORI=1TO28:INPUT#1,A(I):PRINTA(I);:NEXT:PRINT:PRINT:FORQ=1TO1000:NEXT
- 2400 FORI=1TOY:INPUT#1,F(I):PRINTI,"F(I)="F(I)
- 2410 INPUT#1,F$(I):PRINT,"F$(I)="F$(I):INPUT#1,O(I):PRINT,"O(I)="O(I)
- 2420 INPUT#1,O$(I):PRINT,"O$(I)="O$(I):INPUT#1,T(I):PRINT,"T(I)="T(I)
- 2430 INPUT#1,T$(I):PRINT,"T$(I)="T$(I):PRINT
- 2440 NEXT:FORQ=1TO1000:NEXT
- 2450 INPUT#1,J:PRINT,"J="J;:INPUT#1,F:PRINT"F="F"":CLOSE1
- 2460 PRINT"GAME LOADED--THE TITLE IS:"TL$:FORI=1TO5000:NEXT:J=J-1:GOTO430
- 2470 GOSUB250:PRINTSPC(13)"ILLEGAL MOVE"
- 2480 GOSUB2500
- 2490 D$="":FORI=1TO3000:NEXT:J=J-1:GOTO430
- 2500 REM***ERROR SOUND***
- 2510 POKE54273,8:POKE54278,249:POKE54276,33:FORQ=1TO500:NEXT:POKE54276,16
- 2520 RETURN
- 2530 REM ***CORRECT ENTRY SOUND***
- 2540 POKE54273,60:POKE54278,249:POKE54276,17:FORQ=1TO150:NEXT:POKE54276,16
- 2550 RETURN
-