MediaWiki:Sitenotice:
2024-03-02: The wiki ran out of disk space, so things were not working. This has been resolved by adding another 5GB of quota ;-) Thanks to Tim Lindner for reporting the issues.
2020-05-17: If a page gives you an error about some revision not being found, just EDIT the page and the old page should appear in the editor. If it does, just SAVE that and the page should be restored. OS-9 Al (talk) 12:22, 17 May 2020 (CDT)
Here come the vipers
WELCOME |
---|
Looking for CoCo help? If you are trying to do something with your old Color Computer, read this quick reference. Want to contribute to this wiki? Be sure to read this first. This CoCo wiki project was started on October 29, 2004. --OS-9 Al |
See Recent Changes. | About this site. | Join the E-Mail List or Facebook Group. | Contact me with updates/questions.
This page was last updated on 05/19/2019. Total Pages: 744. Total Files: 994.
Home / Publications / Rainbow / Rainbow 1981 / Rainbow 1981-12 - Here come the vipers
Here's one we think you'll enjoy.
Dave Hooper submits this program, called VIPER ATTACK, which is, he admits, a first effort in game programming. I am sure most of you will agree that it certainly doesn't appear to be a first effort and that it is a lot of fun to play.
There are still a few refinements coming for VIPER ATTACK. When available, Dave plans to market this program. Because so. of the special niceties, like on-screen scoring, are not included, you can type it in and run it, courtesy of Dave and the RAINBOW.
Pay careful attention to the nasties! There are a number of different kinds, and we think you'll appreciate the graphic detail with which Dave has concerned himself. As he wrote the other day, it can be a frustrating experience trying to get just what you want.
If you want a tape version (tired fingers?) Dave will be able to supply same for $9.95 plus $1.50 postage and handling. The address is 4490 N. Mumford Dr., Hoffman Estates, IL, 60195.
Batch out for the Vipers! Here's the listing:
10 Y=32:X=2:U=62:V=2 12 Z$=CHR$(133+80) 14 PRINT@0,STRING$(32,Z$) 16 PRINT@Y,STRING$(X,Z$):Y=Y+32 18 PRINT@U,STRING$(V,Z$):U=U+32 20 PRINT@Y,STRING$(X,Z$):Y=Y+32:X=X+2 22 PRINT@U,STRING$(V,Z$):U=U+30:V=V+2 24 IFY<416THEN16 26 PRINT@416,STRING$(32,Z$) 28 FORH=0TO63 30 FORV=28TO31 32 SET(H,V,3) 34 NEXTV,H 36 PRINT@75,"'VIPER"; 38 PRINT@108,"ATTACK'"; 40 PRINT@174,"BY"; 42 PRINTI234,"DAVE HOOPER", 44 AS="T255;L255;05BAGFEDCO4BAGFEDCO3BAGFEDCO2BAGFEDCO1BAGFEDCP5 46 PLAYA$+A$:PLAYA$+A$:FORT=1TO1 000:NEXTT:CLS 48 PRINT@224,"DO YOU REQUIRE A B RIEFING BEFORE" 50 PRINT@256,"YOU ASSUME COMMAND OF THE BASE" 52 INPUT"DEFENSE PATROL (ENTER Y OR N)";B$ 54 IFB$="N"·THENl00ELSEIFB$="Y"THENGOSUB6000 100 PCLEAR4:PMODE3,1 105 PCLS(3):COLOR2,3 110 SCREEN1,0 115 DIMA(13),B(9),C(3),D(7),E(14 ),F(6),G(6),H(11),J(20) 130 DRAW"S4;BM188,68R4F4D8G4L4E4U3NL13U1NL13U4NH4BD3L12G1D1BR2D3F3L3H3U8E3R3G3D3" 135 GET(178,68)-(196,84),B,G 140 LINE(178,68)-(196,84),PRESET,BF 145 DRAW"S4;BM0,8F3NG1R5NF1E3R1F3G1NL5BE1R5NF1E3":PAINT(11,10),2,2 150 GET(0,8)-(23,12),C,G 155 LINE(0,8)-(23,12),PRESET,BF 160 DRAW"S4;BM222,6ND1R11D1L3NL8ND3BR1D3L3G1F1R12E1H1L2NE5L2NL6E5R4E1H1L8G1F1R1":PAINT(232,11),2,2 170 GET(222,3)-(246,12),D,G 175 LINE(222,3)-(246,12),PRESET,BF 180 DRAW"S2;BM216,80F8NE4D4NG8F4E4NF8U4NEBH4" 185 PAINT(222,86),2,2 190 GET(216,80)-(240,100),E,G 195 LINE(216,80)-(240,100),PRESET,BF 200 DRAW"S3;BM58,86E2F4NR16E6R4F6E4F2":PAINT(69,85),2,2 205 GET(58,81)-(86,88),F,G 210 LINE(58,81)-(86,88),PRESET,BF 215 DRAW"S4;BM56,104G2F8E8H2BD12E2H8G8F2BR4BU4R4BU4L4":PAINT(62,110)2,2 220 GET(54,104)-(70,116),G,G 225 LINE(54,104)-(70,116),PRESET,BF 226 FORI=1TO50:X=RND(256)=1:Y=RND(150)-1:PSET(X,Y,2):PLAY"T255L25504GE":NEXTI 230 DRAW"S4;C1;BM148,182NH4L6G2D2F2R20E2U2H2L6NL8E4U2G2L12H2ND2E4R8F4" 235 CIRCLE(152,175),1,1:CIRCLE(145,185),1,1:CIRCLE(159,185),1,1:PAINT(152,180),1,1 240 GET(140,172)-(164,188),H,G 245 LINE(141,172)-(164,188),PRESET,BF 255 LINE(0,190)-(256,190),PSET 260 TIMER=0:G=12:Z=1:VF=0:YS=0 265 ON Z GOSUB 2100,2100,2200,2300,2400,2500 270 FORX=X1 TO X2 STEP X3:FORT=1TO100:NEXTT 273 GET(X-18,0)-(X+18,20),J,G 275 ON Z GOSUB 1000,1100,1200,1300,1400,1500 277 IFRND(5)>3THENGOSUB5000 289 H=JOYSTK(0) 285 IF H<3 THEN H=3 ELSE IF H >58 THEN H=58 290 IF G <> H*4 THEN LINE(G-12,172)-(G+12,188),PRESET,BF:G=H*4 295 PUT(G-12,172)-(G+12,188),H,PSET 305 P(1)=126:P(2)=254 318 F=0:P=PEEK(65280) 315 IFF=0AND(P=P(1)ORP=P(2))THENGOTO400 320 F=1 325 PUT(X-18,0)-(X+18,20),J,PSET 327 IFRND(5)>4THENGOTO270 328 IF TIMER =>14400 THEN GOTO600 330 NEXTX:GOTO265 400 REM SHOOT ROUTINE 405 GET(G-1,151)-(G+1,170),A,G 410 LINE(G,15)-(G,170),PSET 415 PLAY"T100L50O5BBBB" 420 PUT(G-1,15)-(G+1,170),A,PSET 425 M$="T255,L255,O5CBAGFEDCO4CBAGFEDCO3CBAGFEDCO2CBAGFEDC 430 ON Z GOSUB 3000,3100,3200,3300,3400,3500 435 IFYS=250ORYS=11250THENZ=2 440 IFYS=750ORYS=11750THENZ=3 445 IFYS=1750ORYS=12750THENZ=4 450 IFYS=3000ORYS=14100THENZ=5 455 IFYS=5000ORYS=16000THENZ=6 460 IFYS=1000ORYS=21000THENGOSUB4000:Z=1 465 GOTO320 500 PUT(X,0)-(X+44,16),J,PSET 505 X1-20:X2=210:X3=33 510 FOR X=X1 TO X2 STEP X3 515 PUT(X,0)-(X+44,6),C,PSET 520 PUT(X,0)-(X+44,16),J,PSET 525 NEXTX:GOTO505 600 SCREEN0,1 605 CLS 610 TS=YS-VF 615 PRINTSTRING$(9,"#"):PRINT@9,"DAMAGE REPORT" 620 PRINT@23,STRING$(9,"#") 625 C=0 627 I=1 630 T$=" ....YOUR TOTAL SCORE IS...." 635 PRINT@224,MID$(T$,I,32) 640 FORJ=1TO90:NEXTJ 645 I=I+1:C=C+1 651 IFC=15THENPRINT@336,TS:FORX=1TO600:NEXTX 655 IFC=38THEN665 660 IF1>LEN(T$) THEN627ELSE635 665 CLS:PRINT"NEXT SHOOTER PLEASE" 670 PRINT@448,"PRESS <ENTER> TO CONTINUE":INPUTD$ 675 IFD$="Y"THEN675 680 GOTO100 1000 PUT(X-9,0)-(X+9,16),B,PSET 1005 RETURN 1100 PUT(X-12,8)-(X+11,12),C,PSET 1105 RETURN 1200 PUT(X-12,3)-(X+12,12),D,PSET 1205 RETURN 1300 PUT(X-8,3)-(X+8,15),G,PSET 1305 RETURN 1400 PUT(X-14,5)-(X+14,12),F,PSET 1405 RETURN 1500 PUT(X-12,2)-(X+12,22),E,PSET 1505 RETURN 2000 X1=RND(12)+17:X2=200:X3=RND(10)+24:RETURN 2100 X1=RND(12)+17:X2=230:X3=RND(20)+14:RETURN 2200 X1=RND(20)+17:X2=220:X3=RND(20)+14:RETURN 2300 X1=RND(20)+50:X2=200:X3=RND(20)+14:RETURN 2400 X1=RND(12)+20:X2=210:X3=RND(10)+24:RETURN 2500 X1=RND(15)+17:X2=245:X3=RND(20)+14:RETURN 3000 IFPPOINT(G,8)=2THENPLAYM$:YS=YS+50 3010 RETURN 3100 IFPPOINT(G,11)=2THENPLAYM$:YS=YS+100 3110 RETURN 3200 IFPPOINT(G,11)=2THENPLAYM$:YS=YS+200 3210 RETURN 3300 IFPPOINT(G,8)=2THENPLAYM$:YS=YS+250 3310 RETURN 3400 IFPPOINT(G,10)=2THENPLAYM$:YS=YS+500 3410 RETURN 3500 IFPPOINT(G,8)=2THENPLAYM$:YS=YS+1000 3510 RETURN 4000 A$="V31;T30;O4CL2DEL1CP1CL2DEL1CP1L2CDECDECDEL1CP2" 4005 B$="V31;T30;O4FL2GAL1FP1FL2GAL1FP1L2FGAFGAFGAL1FP2" 4010 PLAYA$+B$:PLAYA$ 4015 C$="V31;T255;L255;O1CDEFGABO2CDEFGABO3CDEFGABO4CDEFGABO5CDEFGAB" 4020 PLAYC$+C$:PLAYC$+C$ 4025 YS=YS+1000:RETURN 5000 LINE(X,17)-(X,171),PSET,B 5005 PLAY"T100L3O2CCCCCCCC" 5010 S$="01T200L64AEBBAEBBAEBB" 5015 IFPPOINT(X,l82)=1THENPLAYS$+S$+S$+S$:GOSUB7000:VF=VF+1000 5020 LINE(X,17)-(X,171),PRESET,BF 5025 RETURN 6000 CLS: 6005 PRINT"ALIEN VIPER FIGHTERSARE" 6010 PRINT"ORBITING YOUR BASE STATION." 6015 PRINT 6020 PRINT"YOUR MISSION, SHOULDYOU CHOOSE" 6025 PRINT"TO ACCEPT IT, WILL BE TO DEFEND" 6030 PRINT"BASE STATION 'OMEGA' WITH YOUR" 6035 PRINT"LASER BLASTER." 6040 PRINT 6045 PRINT"YOUR RIGHT JOYSTICK WILL MOVE" 6050 PRINT"THE LASER BLASTER AND YOUR RED" 6055 PRINT"BUTTON WILL FIRE THE LASER" 6060 PRINT:PRINT:PRINT 6065 INPUT"TO CONTINUE PRESS <ENTER>";C$ 6070 CLS 6075 PRINT@32,"FIRST 5 HITS - 50 POINTS EACH" 6080 PRINT"SECOND 5 HITS - 100 POINTS EACH" 6085 PRINT"THIRD 5 HITS - 200 POINTS EACH" 6090 PRINT"FOURTH 5 HITS - 250 POINTS EACH" 6095 PRINT"FIFTH 5 HITS - 500 POINTS EACH" 6100 PRINT"SIXTH 5 HITS - 1000 POINTS EACH":PRINT 6105 PRINT:PRINT"IF YOU GET THIS FAR YOU'LL GET" 6110 PRINT"A BONUS OF 1000 POINTS AND THE" 6115 PRINT"POINT SYSTEM WILL START OVER":PRINT:PRINT 6120 INPUT"TO CONTINUE PRESS <ENTER>";C$ 6125 CLS:PRINT@79,"BE" 6130 PRINT@109,"CAREFUL!!!" 6135 PRINT@227,"IF YOU GET HIT BY AN ALIEN· 6140 PRINT@301,"YOU LOSE" 6145 PRINT@361,"1,000 POINTS" 6150 PRINT@395,"EACH TIME!" 6155 PRINT:PRINT 6160 INPUT"TO CONTINUE PRESS <ENTER>";C$ 6165 RETURN 7010 FORC=1TO13 7005 CIRCLE(G,175),C,4 7007 CIRCLE(G,175),C,2:NEXTC 7010 FORD=1TO13 7015 CIRCLE(G,175),D,3:NEXTD 7020 RETURN
Links
See this article as it appeared in the Rainbow Magazine 1981-12 Pag 5, in archive.org