home *** CD-ROM | disk | FTP | other *** search
/ Loadstar 60 / 060.d81 / aerohawk (.txt) < prev    next >
Commodore BASIC  |  2022-08-26  |  5KB  |  139 lines

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