home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Ahoy 1987 May
/
Ahoy_Magazine_87-05_1987_Double_L_Side_A.d64
/
moondog
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2022-10-26
|
7KB
|
159 lines
10 rem moondog-by jc hilty-8/86
12 poke53280,0:poke53281,0:print"[147]"tab(17)"moondog"
13 print""tab(7)"please wait....reading data"
14 gosub800
15 gosub850
16 pokev+21,255
18 gosub450:gosub300:gosub312
20 w1=peek(v+30):w2=peek(v+31)
30 lp=lp+1:iflp=100thenpoke2044,194:goto200
32 iflp=85thenpoke2044,193
34 sys(j):ifst=0then38
35 ifpeek(3)=4thenpoke50443,255:poke50688,32
36 ifpeek(3)=8thenpoke50443,1:poke50688,32
37 fb=-((peek(56320)and16)=0):iffb=1then100
38 w1=peek(v+30):ifw1and32then200
40 ifpeek(v+9)<upthenpoke50442,1:poke50688,16
42 ifpeek(v+9)>dothenpoke50442,255:poke50688,16
44 ifpeek(v+8)>eathenpoke50441,255:poke50688,16
46 ifpeek(v+8)<wethenpoke50441,1:poke50688,16
48 sysc
50 goto30
99 rem fire laser
100 tb=int(peek(v+10)/8.3):print""tab(tb);f$
104 w2=peek(v+31):ifw2and16then110
106 print""tab(tb);a$:goto38
110 poke50432,0:print""tab(tb);a$:poke2044,198
112 sc=sc+100-lp:print"[159]"tab(8);sc:gosub300:w2=peek(v+31):poke50432,63:goto38
199 rem moondog hit
200 poke50432,0:forx=0to24:pokes+x,0:next:pokes+24,15:pokes+5,8:pokes+6,255
202 pokes+4,85:f1=100:f2=230:forq=1to80:pokes,f1:poke2045,198:pokes+15,f2
204 poke2045,196:f2=f2-2:f1=f1*.99:next:pokes+6,15
206 sh=sh-1:print"[159]"tab(34);sh:ifsh=0then400
208 goto18
299 rem initialize alien craft
300 d=int(2*rnd(5)):ifd=0thenpoke50441,1:goto304
302 poke50441,255
304 d=int(2*rnd(5)):ifd=0thenpoke50442,1:goto308
306 poke50442,255
308 up=int(65*rnd(5)+70):do=int(65*rnd(6)+106)
310 ea=int(84*rnd(4)+148):we=int(84*rnd(6)+64):poke50688,16
311 pokev+8,140:pokev+9,120:poke2044,192:lp=0:return
312 pokev,30:pokev+1,30:pokev+2,80
314 pokev+3,30:pokev+4,170:pokev+5,30:pokev+6,160:pokev+7,30:pokev+10,160
315 pokev+11,198:poke50443,0:poke50688,32:poke50432,63
316 return
399 rem game over
400 poke50432,15:print"[159]"tab(11)"g a m e o v e r":ifsc>hsthenhs=sc
402 print:printtab(11)"score ";sc:print:printtab(11)"high score ";hs:print
404 forx=0to24:pokes+x,0:next:pokes+24,15
406 a=15:q=107:pokes+5,a:pokes+12,a:pokes+19,a:pokes+6,q:pokes+13,q
408 pokes+20,q:pokes+14,30:pokes+15,60:pokes+4,33:pokes+11,23
410 pokes+18,23:forf1=40to80step1:pokes+1,f1
412 forf2=60to31step-5:pokes+8,f2:nextf2:nextf1
414 pokes+4,32:pokes+11,32:pokes+18,32:fort=0to2000:next
416 printtab(11)"play again--y or n"
418 getjk$:ifjk$<>""then418
420 getp$:ifp$=""thensysc:goto420
422 ifp$="y"then426
424 end
426 poke50432,0:sc=0:sh=4:gosub850:goto18
450 forx=0to24:pokes+x,0:next:pokes+24,15:pokes+12,160:pokes+13,252
452 pokes+8,80:pokes+7,40:pokes+11,129
454 return
800 forx=49152to49528:reada:pokex,a:next
802 forx=50880to51116:reada:pokex,a:next
804 forx=828to848:reada:pokex,a:next
806 forx=12288to12734:reada:pokex,a:next
808 poke50432,0:sys51104
810 poke50433,254:poke50434,1:poke50435,0:poke50436,1:poke50437,2:poke50438,1
812 poke50439,0:poke50440,2:poke50441,0:poke50442,0:poke50443,0:poke50444,0
813 poke50688,63
814 f$="[158][181][157][145][181][157][145][181][157][145][181][157][145][181][157][145][181][157][145][181][157][145][181][157][145][181][157][145][181][157][145][181][157][145][181][157][145][181][157][145][181][157][145]"
815 a$=" [157][145] [157][145] [157][145] [157][145] [157][145] [157][145] [157][145] [157][145] [157][145] [157][145] [157][145] [157][145] [157][145] "
816 v=53248:s=54272:lp=0:hs=0:sc=0:sh=4:c=49152:j=828
818 forx=2040to2043:pokex,197:next:poke2044,192:poke2045,196:poke2046,195
820 poke2047,195:forx=39to42:pokev+x,15:next
822 pokev+43,8:pokev+44,14:pokev+45,8:pokev+46,8:pokev+28,240:pokev+29,240
824 pokev+37,7:pokev+38,0:pokev,40:pokev+1,30:pokev+2,80:pokev+16,128
826 pokev+3,30:pokev+4,140:pokev+5,30:pokev+6,160:pokev+7,30:pokev+8,140
828 pokev+9,120:pokev+10,160:pokev+11,198:pokev+12,30:pokev+13,198
830 pokev+14,24:pokev+15,198
832 return
849 rem playing screen
850 print"[147][156]m moondog moondog moondog moondog [156]m"
852 print"o[146] [159]score";sc;tab(17)"moondog[146] ships";sh;tab(38)"[156]o"
854 print"o"tab(38)"o":print"n"tab(38)"n":print"d"tab(38)"d"
856 print"o"tab(38)"o":print"g"tab(38)"g":print" "tab(38)" "
858 print"m"tab(38)"m":print"o"tab(38)"o":print"o"tab(38)"o"
860 print"n"tab(38)"n":print"d"tab(38)"d":print"o"tab(38)"o"
862 print"g"tab(38)"g":print" "tab(38)" ":print"m"tab(38)"m"
863 print"o"tab(38)"o":print"o"tab(38)"o":print"n"tab(38)"n"
864 print"[156] "
865 print" "
866 print" "
868 print" "
870 return
6310 rem scroll data
6315 data 174,114,193,224,3,144,3,76,117,192,188,114,193,140,121,193,174
6320 data 118,193,232,202,32,30,193,172,121,193,173,119,193,201,2,208,10
6325 data 169,32,72,173,33,208,72,76,50,192,177,90,72,177,92,72,204
6340 data 116,193,240,20,200,177,90,72,177,92,136,145,92,104,145,90,200
6350 data 204,116,193,208,238,240,18,136,177,90,72,177,92,200,145,92,104
6360 data 145,90,136,204,115,193,208,238,173,119,193,201,0,208,5,104,104
6370 data 76,111,192,104,145,92,104,145,90,236,117,193,208,160,96,172,116
6380 data 193,200,189,114,193,170,32,30,193,173,120,193,201,2,208,19,136
6390 data 169,32,153,122,193,173,33,208,153,162,193,204,115,193,208,239,240
6400 data 16,136,177,90,153,122,193,177,92,153,162,193,204,115,193,208,240
6410 data 236,117,193,240,37,202,32,30,193,172,116,193,200,136,177,90,72
6420 data 177,92,32,48,193,145,92,104,145,90,32,56,193,204,115,193,208
6430 data 234,236,117,193,208,221,240,46,202,206,118,193,232,32,30,193,172
6440 data 116,193,200,136,32,48,193,177,90,72,177,92,32,56,193,145,92
6450 data 104,145,90,204,115,193,208,234,236,118,193,208,221,238,118,193,232
6460 data 32,30,193,173,120,193,201,0,240,20,172,115,193,136,200,185,162
6470 data 193,145,92,185,122,193,145,90,204,116,193,208,240,96,189,89,193
6480 data 133,91,24,105,212,133,93,189,64,193,133,90,133,92,96,72,152
6490 data 24,105,40,168,104,96,72,152,56,233,40,168,104,96,0,40,80
6500 data 120,160,200,240,24,64,104,144,184,224,8,48,88,128,168,208,248
6510 data 32,72,112,152,192,4,4,4,4,4,4,4,5,5,5,5,5
6520 data 5,6,6,6,6,6,6,6,7,7,7,7,7,4,0,38,20,23,1,1
6530 rem sprite movement data
6540 data 169,255,45,0,198,240,16,169,0,141,0,198,162,21,189,0
6550 data 197,157,0,198,202,208,247,162,1,169,1,141,80,197,173,80
6560 data 197,45,0,197,240,3,76,243,198,232,232,14,80,197,208,238,76,49,234
6570 data 169,0,29,0,197,208,3,76,97,199,169,128,61
6580 data 0,197,240,48,254,0,198,208,40,222,255,207,76,144,199,80
6590 data 197,45,16,208,208,12,173,16,208,13,80,197,141,16,208,76
6600 data 43,199,173,16,208,77,80,197,141,16,208,189,0,197,157,0
6610 data 198,76,97,199,222,0,198,208,40,254,255,207,208,29,173,80
6620 data 197,45,16,208,208,12,173,16,208,13,80,197,141,16,208,76
6630 data 91,199,173,16,208,77,80,197,141,16,208,189,0,197,157,0
6640 data 198,169,0,232,29,0,197,208,3,76,140,199,169,128,61,0
6650 data 197,240,11,254,0,198,208,20,222,255,207,76,134,199,222,0
6660 data 198,208,9,254,255,207,189,0,197,157,0,198,202,76,233,198
6670 data 169,255,221,255,207,240,3,76,43,199,173,80,197,76,17,199
6680 data 120,169,192,141,20,3,169,198,141,21,3,88,96
6690 rem joystick data
6700 data 173,0,220,41,31,73,31,133,3,173,1,220,73,255,133,2,5,3,133,144,96
6710 rem sprite data
6720 data 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,0,152,0,0,32,0,0,0,0
6730 data 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
6740 data 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,168,0
6750 data 2,170,0,10,154,128,2,170,0,0,168,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
6760 data 0,0,0,0,0,0,0
6770 data 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,0,0,170,0,2,170,128,9,150,96
6780 data 170,170,170,10,85,160,2,170,128,0,170,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
6790 data 0,0,0,0,0,0,0,0,0,0
6800 data 0,0,0,0,20,0,0,170,0,2,170,128,9,150,96,170,170,170,10,85,160
6810 data 2,170,128,0,170,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,0,3,255,192
6820 data 15,255,240,255,255,255,15,255,240,3,255,192,0,255,0,0
6830 data 0,130,0,0,130,0,2,170,128,0,255,0,128,215,2,170,215,170,128,215,2
6840 data 0,255,0,0,40,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,195,0,3,255,192
6850 data 0,60,0,192,255,3,255,255,255,192,255,3,0,60,0,0
6860 data 0,0,0,0,0,0,0,0,0,0,124,0,0,254,0,1,255,0,3,207,128,7,156,192
6870 data 15,60,224,14,127,224,14,60,224,15,14,224,15,188,224,7,255,192
6880 data 3,231,128,1,231,0,0,254,0,0,124,0,0,0,0,0,0,0,0,0,0,0
6890 data 0,0,0,76,1,0,0,128,4,32,4,32,0,48,0,8,0,0,0,32,48,80,0,130,3,12,0
6900 data 0,0,4,32,0,128,0,36,0,0,0,192,201,0,4,0,0,0,19,32,192,0,4,0,32,0,1
6910 data 4,192,0,0,4,8,0,0,0