home *** CD-ROM | disk | FTP | other *** search
/ 8bitfiles.net/archives / archives.tar / archives / genie-commodore-file-library / C64Arcade / COMMODORE-CMD (.txt) < prev    next >
Encoding:
Commodore BASIC  |  2019-04-13  |  4.4 KB  |  136 lines

  1. 0 REM *************************
  2. 1 REM *  COMMODORE COMMANDER  *
  3. 2 REM * BY THEODORE H MERRILL *
  4. 3 REM *************************
  5. 4 POKE54277,64:POKE54291,64:POKE54278,128:POKE54292,128
  6. 5 POKE54273,34:POKE54272,75:POKE54287,67:POKE54286,15
  7. 6 POKE54296,15:POKE53280,0:POKE53281,0
  8. 10 PRINT"[147]             [159]PLEASE WAIT!"
  9. 25 PRINTCHR$(142):POKE52,48:POKE56,48:CLR
  10. 30 POKE56334,PEEK(56334)AND254:POKE1,PEEK(1)AND251
  11. 35 FORI=0TO511:POKEI+12288,PEEK(I+53248):NEXT:POKE1,PEEK(1)OR4
  12. 40 FORA=12568TO12568+(8*11-1):READB:POKEA,B:NEXT
  13. 45 POKE56334,PEEK(56334)OR1
  14. 50 PRINT"[147][158]       >>[152] COMMODORE COMMANDER[158] <<"
  15. 55 POKE53272,(PEEK(53272)AND240)+12:PRINT"            ENTER YOUR LEVEL"
  16. 60 PRINT"0-FASTEST THRU 9-SLOWEST"
  17. 61 PRINT"[159]# - YOU THE COMMODORE COMMANDER  "
  18. 62 PRINT"[155]' - THE ENEMY TIE FIGHTERS     100 PTS"
  19. 63 PRINT"( - FUEL TANKS                 50  PTS"
  20. 64 PRINT"[154]) - WALL SECTIONS OF BASE      0   PTS"
  21. 65 PRINT"[129]* - EXPLOSION DEBRIS           10  PTS"
  22. 66 PRINT"[150]+ - INDESTRUCTABLE MINES       0   PTS"
  23. 67 PRINT"[153]THE OBJECT IS TO DESTROY ALL OF THE TIE FIGHTERS AND FUEL TANKS";
  24. 68 PRINT" IN EACH BASE TO ADVANCE TO THE NEXT BASE."
  25. 69 PRINT"[159]          USE STICK IN PORT 2"
  26. 70 PRINT"[150]        BONUS SHIP AT 10000 PTS"
  27. 75 PRINT"[158]  PLEASE ENTER NUMBER OF LEVEL TO PLAY";
  28. 90 GETA$:IFA$=""THEN90
  29. 95 IFA$<"0"ORA$>"9"THEN90
  30. 120 FORA=1TO1000:NEXTA:POKE56334,PEEK(56334)AND254:TD=VAL(A$)*10
  31. 130 SC=0:B=1:TF=3:FT=2:IM=1:SP=1982:MS=35:LL=3:FD=-40:FC=44:SM=0:FL=0:TS=0
  32. 140 ONBGOTO145,200
  33. 145 PRINT"[147][154]))))))))))))))))))))))))))))))))))))))))";
  34. 150 FORX=1TO5:FORA=1TO3:PRINT")                                      )";:NEXTA
  35. 160 PRINT")))))))))))))))))))  )))))))))))))))))))";:NEXTX
  36. 170 FORA=1TO2:PRINT")                                      )";:NEXTA
  37. 180 PRINT")))))))))))))))))))))))))))))))))))))))";:POKE56295,14:POKE2023,41
  38. 190 GOTO300
  39. 200 PRINT"[147][154]))))))))))))))))))))))))))))))))))))))))";
  40. 210 FORA=1TO22:PRINT")                                      )";:NEXT
  41. 220 PRINT")))))))))))))))))))))))))))))))))))))))";:POKE56295,14:POKE2023,41
  42. 230 FORA=1TO50
  43. 235 X=INT(RND(1)*910)+1064
  44. 236 IFPEEK(X)<>32ORPEEK(X+1)<>32THEN235
  45. 240 POKEX+54272,14:POKEX,41:NEXT
  46. 300 FORA=1TOTF
  47. 305 X=INT(RND(1)*910)+1064
  48. 306 IFPEEK(X)<>32THEN305
  49. 307 POKEX+54272,15:POKEX,39:NEXT
  50. 310 FORA=1TOFT
  51. 311 X=INT(RND(1)*910)+1064
  52. 312 IFPEEK(X)<>32THEN311
  53. 313 POKEX+54272,2:POKEX,40:NEXT
  54. 320 FORA=1TOIM
  55. 321 X=INT(RND(1)*910)+1064
  56. 322 IFPEEK(X)<>32ORPEEK(X+1)<>32ORPEEK(X-1)<>32THEN321
  57. 323 POKEX+54272,10:POKEX,43:NEXT
  58. 350 :
  59. 397 IFFL=0ANDSC>9999THENLL=LL+1:FL=1
  60. 398 IFSC>HITHENHI=SC
  61. 399 PRINT"SCORE=[153]"SC;TAB(16)"[156]HIGH=[153]"HI;TAB(35)"[159]#=[153]"LL
  62. 400 IFPEEK(56320)=127THEN440
  63. 405 IFPEEK(56320)=126THENSM=-40:FD=-40:FC=44:MS=35:GOTO440
  64. 410 IFPEEK(56320)=125THENSM=40:FD=40:FC=44:MS=37:GOTO440
  65. 420 IFPEEK(56320)=123THENSM=-1:FD=-1:FC=45:MS=36:GOTO440
  66. 430 IFPEEK(56320)=119THENSM=1:FD=1:FC=45:MS=38:GOTO440
  67. 440 IFPEEK(56320)<112THEN480
  68. 450 POKESP,32:SP=SP+SM:IFPEEK(SP)<>32THEN900
  69. 460 POKESP+54272,3:POKESP,MS
  70. 470 FORUA=1TOTD:NEXT:GOTO400
  71. 480 FP=SP+FD
  72. 490 IFPEEK(FP)<>32THEN520
  73. 500 POKE54290,33:POKEFP+54272,7:POKEFP,FC
  74. 510 FP=FP+FD:POKE54290,32:POKEFP-FD,32:GOTO490
  75. 519 REM **** FIRE HIT SOMETHING ****
  76. 520 IFPEEK(FP)=39THEN600
  77. 530 IFPEEK(FP)=40THEN650
  78. 540 IFPEEK(FP)=41THEN399
  79. 550 IFPEEK(FP)=42THEN750
  80. 560 IFPEEK(FP)=43THEN399
  81. 599 REM TIE FIGHTER SHOT
  82. 600 POKE54276,129
  83. 601 FORDL=1TO10:POKEFP+54272,2:SC=SC+10:POKEFP+54272,7:NEXT:POKEFP,32:POKE54276,128:GOTO970
  84. 649 REM FUEL TANK HIT
  85. 650 POKE54276,129
  86. 651 FORDL=1TO10:POKEFP+54272,2:SC=SC+5:POKEFP+54272,7:NEXT:POKEFP,32
  87. 652 POKE54276,128:GOTO970
  88. 749 REM EXPLOSION DEBRIS HIT
  89. 750 POKE54276,129
  90. 751 FORDL=1TO5:POKEFP+54272,2:SC=SC+2:POKEFP+54272,7:NEXT:POKEFP,32
  91. 752 POKE54276,128:GOTO397
  92. 899 REM ** YOU CRASHED **
  93. 900 POKE54276,129
  94. 901 FORWQ=SP-40TOSP+40STEP40
  95. 902 IFPEEK(WQ)<>32THEN904
  96. 903 POKEWQ+54272,8:POKEWQ,42
  97. 904 NEXT
  98. 905 FORWQ=SP-1TOSP+1
  99. 906 IFPEEK(WQ)<>32THEN908
  100. 907 POKEWQ+54272,8:POKEWQ,42
  101. 908 NEXT
  102. 909 FORVO=15TO0STEP-.05:POKE54296,VO:NEXT
  103. 910 LL=LL-1:PRINT""TAB(35)"[159]#=[153]"LL
  104. 911 POKE54276,128:POKE54296,15
  105. 915 IFLL=0THEN950
  106. 920 SP=1982:SM=0:FC=44:MS=35:FD=-40:GOTO399
  107. 949 REM **GAME OVER**
  108. 950 PRINT" [158]GAME  OVER "
  109. 951 PRINT" [150]PLAY AGAIN? [Y OR N]"
  110. 952 FORVV=1TO1000:NEXT
  111. 953 POKE56334,PEEK(56334)OR1
  112. 955 GETQ$:IFQ$=""THEN955
  113. 957 IFQ$="Y"THEN45
  114. 958 IFQ$<>"N"THEN955
  115. 960 PRINT"[147]":POKE53272,21
  116. 961 PRINT"GOODBYE FOR NOW WARRIOR":END
  117. 969 REM **TEST FOR ENTIRE BASE EMPTY**
  118. 970 TS=TS+1:IFTS=TF+FTTHENTS=0:GOSUB10000:GOTO975
  119. 971 GOTO397
  120. 975 IFTF>40THEN978
  121. 976 TF=TF+3:FT=FT+2:IM=IM+1
  122. 978 B=B+1:IFB=3THENB=1
  123. 979 SP=1982:MS=35:FD=-40:FC=44:SM=0
  124. 980 TD=TD-2:IFTD<0THENTD=0
  125. 985 GOTO140
  126. 999 REM **DATA FOR CUSTOM CHARACTERS**
  127. 1000 DATA24,24,24,24,189,165,189,231,15,1,15,254,254,15,1,15
  128. 1001 DATA231,189,165,189,24,24,24,24,240,128,240,127,127,240,128,240
  129. 1002 DATA129,153,189,231,231,189,153,129,24,60,102,255,195,255,129,255
  130. 1003 DATA255,231,195,153,153,195,231,255,135,2,16,66,1,144,135,6,0,0,36,24,24,36
  131. 1004 DATA0,0
  132. 1005 DATA16,8,16,8,16,8,16,8,0,0,0,170,85,0,0,0
  133. 10000 FORQR=1TO200:PRINT"GOOD WORK COMMODORE COMMANDER!"
  134. 10001 POKE646,INT(RND(1)*15)+1
  135. 10002 NEXT:RETURN
  136.