home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Loadstar 60
/
060.d81
/
aerohawk
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2022-08-26
|
5KB
|
139 lines
10 rem aerohawk-jc hilty-04/88
20 gosub570
30 gosub760:poke49800,249
40 goto270
50 jx=peek(49801):ifjx<128thenju=ju+.6:poke49801,jx
51 ifjx>128thenjx=jx<-.6:poke49801,jx
52 yj=peek(49802):ifyj>128thenyj=yj-.6:poke49802,yj
53 ifyj<128thenyj=yj+.6:poke49802,yj
55 return
60 gosub80:gosub140:return
70 gosub80:gosub160:return
80 poke49801,1:poke49900,1
90 bd=4:poke49522,1:return
100 gosub140:gosub120:return
110 gosub160:gosub120:return
120 poke49801,255:poke49900,1
130 bd=251:poke49522,2:return
140 poke49802,1:poke49900,1
150 return
160 poke49802,255:poke49900,1
170 return
180 ifpeek(v+7)<upthenpoke49808,2:poke49900,8:sys828:sys49152:return
190 ifpeek(v+7)>dnthenpoke49808,254:poke49900,8:sys828:sys49152:return
200 sys828:sys49152:return
210 ifpeek(v+9)<upthenpoke49810,2:poke49900,8:sys844:sys49152:return
220 ifpeek(v+9)>dnthenpoke49810,254:poke49900,8:sys844:sys49152:return
230 sys844:sys49152:return
240 ifpeek(v+11)>dnthenpoke49812,255:poke49900,32:sys860:sys49152:return
250 ifpeek(v+11)<upthenpoke49812,1:poke49900,32:sys860:sys49152:return
260 sys860:sys49152:return
270 onqgosub180,210,240:q=q+1:ifq=4thenq=1
271 if(peek(v+16)and1)thenpoke49801,255:poke49900,1:jy=11:goto290
272 ifpeek(v)<65thenpoke49801,1:poke49900,1
273 ifpeek(v+1)>200thenpoke49802,255:poke49900,1
274 ifpeek(v+1)<60thenpoke49802,1:poke49900,1
280 jy=(peek(56320)and15):poke49800,255
290 gosub371:onjygosub50,50,50,50,60,70,80,50,100,110,120,50,140,160,50
300 fb=-((peek(56320)and16)=0):iffb=1then380
310 w2=peek(v+30):ifw2and1then420
320 en=en-5:print""tab(8)" ":print""tab(7)en:ifen=0then530
330 ifz=1then350
340 goto270
350 ifpeek(v+15)>220thenpokev+21,127:z=0
360 w2=peek(v+30):ifw2and128then450
370 goto270
371 ifpeek(v+1)>peek(v+3)thenpoke49804,1:poke49900,1
372 ifpeek(v+1)<peek(v+3)thenpoke49804,254:poke49900,1
373 ifpeek(v+1)>peek(v+5)thenpoke49806,2:poke49900,1
374 ifpeek(v+1)<peek(v+5)thenpoke49806,255:poke49900,1
375 poke49803,255:poke49805,1:poke49900,2
379 return
380 ifz=1then310
390 ifpeek(v+16)and128thenpokev+16,peek(v+16)-128
400 poke49815,bd:poke49900,128
410 z=1:pokev+14,peek(v):pokev+15,peek(v+1)+16:pokev+21,255:goto270
420 poke49800,0:poke2040,255:b=b-1:print""tab(36)b:pokev+21,127:gosub1000
430 fort=0to250:next:ifb=0then1020
440 gosub860:poke49800,249:z=0:en=750:print""tab(7)en:goto270
450 poke49800,0:pokev+21,127:ifw2and64then490
460 pokev+21,255:poke2047,255:gosub1000:fort=0to50:next
470 sc=sc+250:print""tab(19)sc:pokev+21,127:poke2047,252:z=0
480 w2=peek(v+30):poke49800,249:goto270
490 poke2046,255:gosub1000:fort=0to150:next:pokev+12,20:poke2046,254
500 en=en+250:ifen>750thenen=750
510 print""tab(7)en:sc=sc+300:print""tab(19)sc
520 z=0:w2=peek(v+30):poke49800,255
521 poke49803,255:poke49805,1:poke49900,2:goto270
530 poke49800,0:forx=0to24:pokes+x,0:next
540 print""tab(8)" ":fort=0to20:print""tab(7)en:pokes+1,112:pokes+5,10
550 pokes+6,9:pokes+24,15:pokes+4,17:pokes+4,16:print""tab(7)en
560 pokes+4,16:pokes+4,17:next:print"":goto420
570 v=53248:s=54272:sc=0:en=750:b=5:z=0:q=1:up=50:dn=140
580 poke53280,0:poke53281,0:print:poke147,0:sys57812"ex.pic",8,1:sys62631
590 sys57812"display.pic",8,1:sys62631
600 sys57812"title.sp",8,1:sys62631:sys57812"hawk.ml",8,1:sys62631
610 sys51000,"title.pic",40960,24576:sys860:gosub1100:poke198,0
620 gosub1100
630 poke24568,0:poke24569,1:poke24570,0:poke24571,2
640 pokev+39,5:pokev+40,2:pokev+41,4:pokev+42,7
650 pokev,250:pokev+1,145:pokev+2,60:pokev+3,170:pokev+4,140:pokev+5,190
660 pokev+6,30:pokev+7,210:forx=49800to49816:pokex,0:next
670 sys49754:poke49801,254:poke49803,1:poke49805,255
680 poke49807,3:poke49900,15:poke49800,15:pokev+23,12:pokev+29,12:rempokev+21,15
690 poke198,0:poke49800,0:sys65418
700 poke147,0:sys57812"hawk.font",8,1:sys62631
710 poke147,0:sys57812"hawk.sp",8,1:sys62631
720 poke56578,peek(56578)or3:poke56576,(peek(56576)and252)or3
730 poke53265,27:poke53270,200:poke53272,31:print"[147]":pokev+21,0
740 forx=828to878:reada:pokex,a:next:return
750 rem extended background screen
760 poke53280,0:poke53281,0:poke53265,91:poke53282,03:poke53283,06:poke53284,14
770 print"[147][160][160][160][160][160][160][160][160][160][160][160][160][160][160] [160][160][160][160][160][160][160][160][160][160][160][160][160][160]"
780 print" [146][160][160][160][160][160][160][160][160][160][160][160][160][160] "
790 print" ":fort=0to1
800 print"[160][160][160][160][160][160][160][160][160][160][160][160] [160][160][160][160][160][160][160][160][160][160][160][160]":next
810 print"[160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160]":fort=0to2
820 print"[160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][146][160][160][160][160][160][160][160][160][160][160]":next
830 fort=0to2:print"[160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160]":next
840 fort=0to50:x=int(400*rnd(5)+1064):pokex,46:pokex+54272,14:next
850 print"energy"en;tab(14)"score"sc;tab(28)"aircraft"b
860 forx=49800to49816:pokex,0:next:poke49900,255
870 pokev+16,18:poke2040,253:pokev+39,1:pokev,168:pokev+1,100:xs=168:ys=100:bd=0
880 poke2041,250:pokev+40,8:pokev+2,040:pokev+3,100
890 poke2042,251:pokev+41,5:pokev+4,40:pokev+5,100
900 poke2043,251:pokev+42,15:pokev+6,26:pokev+7,60
910 poke2044,250:pokev+43,4:pokev+8,50:pokev+9,60
920 poke2045,251:pokev+44,7:pokev+10,168:pokev+11,50
930 poke2047,252:pokev+46,2:pokev+14,126:pokev+23,0:pokev+29,0
940 poke2046,254:pokev+45,0:pokev+12,30:pokev+13,210:pokev+21,127
950 poke49816,2:poke49813,2:poke49807,1:poke49808,2:poke49809,255:poke49810,2
960 poke49811,2:poke49812,2
970 poke49900,248:w2=peek(v+30)
980 sys49754:return
990 rem explosion sound
1000 forx=0to24:pokes+x,0:next:pokes+1,7:pokes+5,26:pokes+24,15:pokes,240
1010 pokes+4,129:return
1020 pokev+21,62:poke49800,56:ifsc>hsthenhs=sc
1030 print"[129]"tab(14)"game over":print:printtab(14)"score "sc:print
1040 printtab(14)"high "hs:print:printtab(9)"press f1 to play again":print
1050 printtab(5)"press f7 to return to loadstar"
1060 ifpeek(197)=4then1090
1070 ifpeek(197)=3then1170
1080 goto1060
1090 z=0:l=1:q=1:sc=0:en=750:b=5:poke49800,0:pokev+21,0:goto30
1100 forx=0to24:pokes+x,0:next:pokes+1,4:pokes+5,31:pokes+24,15
1110 pokes,240:pokes+4,129:return
1120 rem extended background color changes data
1130 data 169,6,141,34,208,169,3,141,35,208,169,14,141,36,208,96
1140 data 169,14,141,34,208,169,6,141,35,208,169,3,141,36,208,96
1150 data 169,3,141,34,208,169,14,141,35,208,173,6,0,169,6,141
1160 data 36,208,96
1170 poke49800,0:sys65418:pokev+21,0:print"[147]":poke53272,21:poke53265,27
1180 pokev+16,0
1190 open15,8,15,"r0:hello connect=hello connect":input#15,er:close15
1200 poke53272,21:ifer<>63thenprint"[147]":end
1210 a$="hello connect":q$=chr$(34)
1220 print"[144][147]load"q$a$q$",8"
1230 print"run":poke631,13:poke632,13:poke198,2:end