home *** CD-ROM | disk | FTP | other *** search
- 100 PRINT"[147][159] REDEFINING CHARACTER SET"
- 110 GOTO390
- 120 REM * MAN JUMPS *
- 130 POKEE%,39
- 140 FORX=1TOZ%:GOSUB250:IFPEEK(B%(X))>36ANDPEEK(B%(X))<40THEN910
- 145 IFPEEK(B%(X)+D(X))>36ANDPEEK(B%(X)+D(X))<40THEN910
- 147 IFPEEK(B%(X)-1)>36ANDPEEK(B%(X)-1)<40THEN910
- 150 GOSUB310:NEXTX
- 160 POKEE%,37
- 170 POKES,P
- 180 P=P+3
- 190 POKEE%,38
- 200 FORX=1TOZ%:GOSUB250:IFPEEK(B%(X))>36ANDPEEK(B%(X))<40THEN910
- 203 IFPEEK(B%(X)+D(X))>36ANDPEEK(B%(X)+D(X))<40THEN910
- 205 IFPEEK(B%(X)-1)>36ANDPEEK(B%(X)-1)<40THEN910
- 210 GOSUB310:NEXTX
- 220 IFPEEK(E%-40)=LLTHEN910
- 230 POKEE%,32:E%=E%-40:POKEE%,38:POKES,0:POKEE%,32:E%=E%-40:POKEE%,38:RETURN
- 240 REM *MOVE BARRELS *
- 250 POKES+1,O
- 260 POKEB%(X),C
- 270 IFPEEK(B%(X)+I%)=WTHENB%(X)=B%(X)+D(X)
- 280 IFPEEK(B%(X))=WTHENB%(X)=B%(X)-T%*D(X)
- 290 IFPEEK(B%(X)+I%)<>WTHENB%(X)=B%(X)+I%
- 300 RETURN
- 310 POKEB%(X),LL
- 320 IFB%(X)>JTHENGOSUB350
- 330 RETURN
- 340 REM * RESET BARRELS *
- 350 FORX=1TOZ%:POKEB%(X),C:B%(X)=SR+INT(RND(X)*T%):NEXTX
- 360 REM * SCORE *
- 370 PRINT"SCORE [157][157][157][157]"SC;" [157][157][157][157][157][157]";
- 380 FORQ=3TOA+1STEP-1:PRINT"[146]%";:NEXT:PRINT"":RETURN
- 390 POKE53281,0:POKE53280,6
- 400 POKE56,48:CLR
- 410 POKE56334,PEEK(56334)AND254:POKE1,PEEK(1)AND251
- 420 BL$="[158] "
- 430 AL$="[146][156]$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$"
- 440 FORI=0TO1023:POKEI+12288,PEEK(I+53248):POKEI+13312,PEEK(I+53248):NEXT
- 450 POKE1,PEEK(1)OR4
- 460 POKE56334,PEEK(56334)OR1
- 470 POKE53272,(PEEK(53272)AND240)+12
- 480 FORI=12544TO12544+8*8-1:READA:POKEI,A:NEXT:GOSUB1080
- 490 DATA0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,56,108,206,174,234,230,108,56
- 500 DATA56,108,246,250,134,222,108,56:REM * BARREL *
- 510 DATA255,153,189,153,255,0,0,0:REM * BEAM *
- 520 DATA56,56,16,56,84,16,56,40:REM * MAN NORMAL *
- 530 DATA186,186,84,56,16,16,56,40,0,0,0,56,56,16,124,170
- 540 SR=1025:K=55296-SR+1
- 550 J=SR+820:V=54296:S=54272:FORI=STOV:POKEI,0:NEXTI
- 560 POKEV,15:POKES+5,130:POKES+6,72
- 570 SR=1025:K=55296-SR+1
- 580 PRINT"[147]":A=0:SC=0:Z%=4
- 590 REM * SET UP SCREEN *
- 600 PRINT"[147]";:BL=80
- 610 FORI=1TO10:PRINTBL$;AL$;:NEXT:PRINTBL$;BL$;""
- 620 X=SR+39:POKES+4,33:POKES+24,15
- 630 FORB=1TOBL
- 640 R=INT(RND(X)*908)
- 650 POKEX+R,32:POKEX+R+K,7:POKES+1,B+10:NEXT:POKES+4,0
- 660 POKES+4,17:FORG=-1TO20
- 670 POKEX+G*40,36:POKES+1,50+(G*2):POKEX+G*40+K,5
- 680 POKEX+39+(G*40),36:POKES+1,0:POKEX+39+(G*40)+K,5:NEXTG:POKES+4,0
- 690 REM * PREP FOR LOOP *
- 700 E%=J:D(1)=1:D(2)=-1:D(3)=1:D(4)=-1:L=1:LM=10:RM=18:UP=5:BM=4:O=0
- 710 W=36:C=32:KB=197:T%=38:I%=40:LL=34:D=37:Z=245:P=128:TT%=1:TH%=3:GOSUB350
- 720 REM * MAIN GAME LOOP *
- 730 FORX=1TOZ%:GOSUB250:IFPEEK(B%(X))>36ANDPEEK(B%(X))<40THEN910
- 735 IFPEEK(B%(X)+D(X))>36ANDPEEK(B%(X)+D(X))<40THEN910
- 737 REM IFPEEK(B%(X)-1)>36ANDPEEK(B%(X)-1)<40THEN910
- 740 GOSUB310:NEXTX
- 750 IFPEEK(E%)=LLTHENE%=E%+40:POKEE%+K,7:POKEE%+I%,36:POKEE%+I%+K,4:GOTO910
- 760 IFPEEK(E%-I%)=LLTHEN910
- 770 IFPEEK(E%+I%)=LLTHENPOKEE%,C:E%=E%+80:GOTO910
- 780 IFLL=34THENLL=35:GOTO800
- 790 LL=34
- 800 POKEE%,C
- 810 IFPEEK(KB)=LMTHENIFPEEK(E%-L)<>WTHENE%=E%-L:POKEE%,D:YG=-2:GOTO850
- 820 IFPEEK(KB)=RMTHENIFPEEK(E%+L)<>WTHENE%=E%+L:POKEE%,D:YG=2:GOTO850
- 830 IFPEEK(KB)=BMTHENIFPEEK(E%-I%)=WTHENPOKEE%-I%,C:SC=SC-5:P=P-10
- 840 IFPEEK(KB)=UPTHENIFPEEK(E%-I%)<>WTHENGOSUB130:SC=SC+L+L:P=P+3:POKEE%,D
- 850 IFP>ZTHENP=128
- 860 POKEE%,D:POKES+4,17:POKES+1,40
- 870 IFE%<SRTHENE%=J:TT%=TT%+L:GOSUB370:IFSC>35THENZ%=RND(X)*4+1
- 880 IFTT%>TH%THEN600
- 890 GOTO730
- 900 REM * LOSE MAN *
- 910 POKES+4,129:N=15:POKES,39:POKES+1,09:FORQ=1TO4:POKEB%(Q),32:NEXT
- 920 POKEE%,38:POKEE%-40,34:GOSUB1190:POKEE%,37:GOSUB1190:POKEE%,39:GOSUB1190
- 930 POKEE%-40,194:POKEE%,35:GOSUB1190:POKEE%+1,173:POKEE%-1,173:POKEE%+40,194
- 940 POKEE%-39,206:POKEE%-41,205
- 950 POKEE%+41,205:POKEE%+39,206:GOSUB1190
- 960 POKEE%-120,174:POKEE%-2,174:POKEE%+2,174:POKEE%+120,174:GOSUB1190
- 970 POKEE%-78,174
- 980 POKEE%-82,174:POKEE%+78,174:POKEE%+82,174:GOSUB1190
- 990 SC=SC-8:POKES+4,128:A=A+1:GOSUB370
- 1000 TT%=1:IFA<3GOTO600
- 1010 PRINT"[147]";
- 1015 POKE198,0:PRINT" GAME OVER"
- 1018 PRINT" SCORE=";SC
- 1020 PRINT" HIT SPACE BAR TO PLAY AGAIN"
- 1030 PRINT" ANY OTHER KEY TO END"
- 1040 GETYY$:IFYY$=""THEN1040
- 1050 IFYY$<>" "THENPRINT"[147]":END
- 1060 GOTO580
- 1070 REM
- 1080 PRINT"[147]":PRINTTAB(11)"*INSTRUCTIONS*":PRINT
- 1090 PRINTTAB(9)"A[146] MOVES MAN LEFT":PRINTTAB(9)"D[146] MOVES MAN RIGHT"
- 1100 PRINT:PRINTTAB(9)"F3[146] MOVES MAN UP 1 LEVEL"
- 1110 PRINTTAB(9)"F1[146] WILL BLAST SPACE ABOVE"
- 1120 PRINT:PRINTTAB(9)" **POINTS**"
- 1130 PRINT:PRINTTAB(9)"2 FOR EACH UP":PRINTTAB(8)"-5 FOR USING BLAST"
- 1140 PRINTTAB(8)"-8 FOR GETTING HIT"
- 1150 PRINT"":PRINTTAB(8)" PRESS SPACE BAR[159]"
- 1160 GETXX$:IFXX$=""THEN1160
- 1170 RETURN
- 1180 REM * TIME AND SOUND FOR LOSE MAN ROUTINE *
- 1190 N=N-2:IFN<0THENN=0
- 1200 IFPEEK(E%)=38ORPEEK(E%)=39THENFORQ=1TO50:NEXT
- 1210 FORQ=1TO25:NEXT:RETURN
-