<mamecheat version="1">

  <cheat desc="Infinite Credits">
    <script state="run">
      <action>maincpu.pb@09582=09</action>
    </script>
  </cheat>

  <cheat desc="Infinite Time">
    <script state="run">
      <action condition="maincpu.pb@091FE!=80">maincpu.pb@0926C=63</action>
      <action condition="maincpu.pb@091FE==80 AND maincpu.pb@0926C GT 61">maincpu.pb@0926C=1D</action>
    </script>
  </cheat>

  <cheat desc="Invincibility">
    <script state="on">
      <action>temp0 =maincpu.mb@8E3FF</action>
      <action>maincpu.mb@8E3FF=EB</action> <!-- Normal Hits -->
      <action>temp1 =maincpu.mb@8E7BD</action>
      <action>maincpu.mb@8E7BD=EB</action> <!-- Objects -->
      <action>temp2 =maincpu.mb@8EA3F</action>
      <action>maincpu.mb@8EA3F=EB</action> <!-- Rockets -->
      <action>temp3 =maincpu.mb@D22FB</action>
      <action>maincpu.mb@D22FB=EB</action> <!-- Neck slasher - stop them going for you -->
      <action>temp4 =maincpu.mb@8F171</action>
      <action>maincpu.mb@8F171=EB</action> <!-- Lightning at end -->
    </script>
    <script state="off">
      <action>maincpu.mb@8E3FF=temp0 </action>
      <action>maincpu.mb@8E7BD=temp1 </action>
      <action>maincpu.mb@8EA3F=temp2 </action>
      <action>maincpu.mb@D22FB=temp3 </action>
      <action>maincpu.mb@8F171=temp4 </action>
    </script>
  </cheat>

  <cheat desc="Easy Kills + Total Destruction" tempvariables="35"> <comment>Mostly One Hit apart from the Bosses</comment>
    <script state="on">
      <action>temp0 =maincpu.mb@85E8A</action>
      <action>maincpu.mb@85E8A=00</action>
      <action>temp1 =maincpu.mb@8E689</action>
      <action>maincpu.mb@8E689=00</action>
      <action>temp2 =maincpu.mb@8E90B</action>
      <action>maincpu.mb@8E90B=00</action>
      <action>temp3 =maincpu.mb@8EB56</action>
      <action>maincpu.mb@8EB56=00</action>
      <action>temp4 =maincpu.mb@8EC73</action>
      <action>maincpu.mb@8EC73=00</action>
      <action>temp5 =maincpu.mb@8ED5B</action>
      <action>maincpu.mb@8ED5B=00</action>
      <action>temp6 =maincpu.mb@8EE46</action>
      <action>maincpu.mb@8EE46=00</action>
      <action>temp7 =maincpu.mb@8EF31</action>
      <action>maincpu.mb@8EF31=00</action>
      <action>temp8 =maincpu.mb@8EFF3</action>
      <action>maincpu.mb@8EFF3=00</action>
      <action>temp9 =maincpu.mb@8F0DB</action>
      <action>maincpu.mb@8F0DB=00</action>
      <action>temp10=maincpu.mb@8F1C1</action>
      <action>maincpu.mb@8F1C1=00</action>
      <action>temp11=maincpu.mb@9C06E</action>
      <action>maincpu.mb@9C06E=00</action>
      <action>temp12=maincpu.mb@9C185</action>
      <action>maincpu.mb@9C185=00</action>
      <action>temp13=maincpu.mb@A0D2B</action>
      <action>maincpu.mb@A0D2B=00</action>
      <action>temp14=maincpu.mb@A0E42</action>
      <action>maincpu.mb@A0E42=00</action>
      <action>temp15=maincpu.mb@A4B28</action>
      <action>maincpu.mb@A4B28=00</action>
      <action>temp16=maincpu.mb@A4C3F</action>
      <action>maincpu.mb@A4C3F=00</action>
      <action>temp17=maincpu.mb@B2B52</action>
      <action>maincpu.mb@B2B52=00</action>
      <action>temp18=maincpu.mb@B6F62</action>
      <action>maincpu.mb@B6F62=00</action>
      <action>temp19=maincpu.mb@B9EF6</action>
      <action>maincpu.mb@B9EF6=00</action>
      <action>temp20=maincpu.mb@BED43</action>
      <action>maincpu.mb@BED43=00</action>
      <action>temp21=maincpu.mb@BEE5A</action>
      <action>maincpu.mb@BEE5A=00</action>
      <action>temp22=maincpu.mb@C2006</action>
      <action>maincpu.mb@C2006=00</action>
      <action>temp23=maincpu.mb@C211D</action>
      <action>maincpu.mb@C211D=00</action>
      <action>temp24=maincpu.mb@C4C47</action>
      <action>maincpu.mb@C4C47=00</action>
      <action>temp25=maincpu.mb@C4D5E</action>
      <action>maincpu.mb@C4D5E=00</action>
      <action>temp26=maincpu.mb@C7EF5</action>
      <action>maincpu.mb@C7EF5=00</action>
      <action>temp27=maincpu.mb@C800C</action>
      <action>maincpu.mb@C800C=00</action>
      <action>temp28=maincpu.mb@D02BA</action>
      <action>maincpu.mb@D02BA=00</action>
      <action>temp29=maincpu.mb@D31A6</action>
      <action>maincpu.mb@D31A6=00</action>
      <action>temp30=maincpu.mb@D5845</action>
      <action>maincpu.mb@D5845=00</action>
      <action>temp31=maincpu.mb@D7420</action>
      <action>maincpu.mb@D7420=00</action>
      <action>temp32=maincpu.mb@D752B</action>
      <action>maincpu.mb@D752B=00</action>
      <action>temp33=maincpu.mb@DABD7</action>
      <action>maincpu.mb@DABD7=00</action>
      <action>temp34=maincpu.mb@DACEE</action>
      <action>maincpu.mb@DACEE=00</action>
    </script>
    <script state="off">
      <action>maincpu.mb@85E8A=temp0 </action>
      <action>maincpu.mb@8E689=temp1 </action>
      <action>maincpu.mb@8E90B=temp2 </action>
      <action>maincpu.mb@8EB56=temp3 </action>
      <action>maincpu.mb@8EC73=temp4 </action>
      <action>maincpu.mb@8ED5B=temp5 </action>
      <action>maincpu.mb@8EE46=temp6 </action>
      <action>maincpu.mb@8EF31=temp7 </action>
      <action>maincpu.mb@8EFF3=temp8 </action>
      <action>maincpu.mb@8F0DB=temp9 </action>
      <action>maincpu.mb@8F1C1=temp10</action>
      <action>maincpu.mb@9C06E=temp11</action>
      <action>maincpu.mb@9C185=temp12</action>
      <action>maincpu.mb@A0D2B=temp13</action>
      <action>maincpu.mb@A0E42=temp14</action>
      <action>maincpu.mb@A4B28=temp15</action>
      <action>maincpu.mb@A4C3F=temp16</action>
      <action>maincpu.mb@B2B52=temp17</action>
      <action>maincpu.mb@B6F62=temp18</action>
      <action>maincpu.mb@B9EF6=temp19</action>
      <action>maincpu.mb@BED43=temp20</action>
      <action>maincpu.mb@BEE5A=temp21</action>
      <action>maincpu.mb@C2006=temp22</action>
      <action>maincpu.mb@C211D=temp23</action>
      <action>maincpu.mb@C4C47=temp24</action>
      <action>maincpu.mb@C4D5E=temp25</action>
      <action>maincpu.mb@C7EF5=temp26</action>
      <action>maincpu.mb@C800C=temp27</action>
      <action>maincpu.mb@D02BA=temp28</action>
      <action>maincpu.mb@D31A6=temp29</action>
      <action>maincpu.mb@D5845=temp30</action>
      <action>maincpu.mb@D7420=temp31</action>
      <action>maincpu.mb@D752B=temp32</action>
      <action>maincpu.mb@DABD7=temp33</action>
      <action>maincpu.mb@DACEE=temp34</action>
    </script>
  </cheat>

  <!--   wp 91e2,2,w -->

  <cheat desc="Select Starting Stage">
    <parameter>
      <item value="0x00">01 Stage 1 Start</item>
      <item value="0x02">02 Stage 1 End</item>
      <item value="0x03">03 Stage 2 Start</item>
      <item value="0x05">04 Stage 2 End</item>
      <item value="0x06">05 Stage 3 Start</item>
      <item value="0x08">06 Stage 3 End</item>
      <item value="0x09">07 First Bonus Stage</item>
      <item value="0x0A">08 Stage 4 Start</item>
      <item value="0x0B">09 Stage 4 Part 2</item>
      <item value="0x0C">10 Stage 4 Part 3</item>
      <item value="0x0D">11 Stage 4 Part 4</item>
      <item value="0x0E">12 Stage 4 Part 5</item>
      <item value="0x0F">13 Stage 4 Part 6</item>
      <item value="0x10">14 Stage 5-1 Start</item>
      <item value="0x12">15 Stage 5-2 Sailing Interlude</item>
      <item value="0x13">16 Stage 5-3 Doors</item>
      <item value="0x14">17 Stage 5-4 Field</item>
      <item value="0x15">18 Stage 5-5 Cavern</item>
      <item value="0x16">19 Second Bonus Stage</item>
      <item value="0x17">20 Final Stage</item>
      <item value="0x18">21 Final Stage Boss</item>
      <item value="0x19">22 End Sequence Running</item>
      <item value="0x1A">23 End Sequence Helicopter Pickup</item>
      <item value="0x1B">24 End Sequence Helicopter Flying</item>
    </parameter>
    <script state="on">
      <action>temp0 =maincpu.mb@8578F</action>
    </script>
    <script state="change">
      <action>maincpu.mb@8578F=param</action>
    </script>
    <script state="off">
      <action>maincpu.mb@8578F=temp0 </action>
    </script>
  </cheat>

  <cheat desc="Reveal lots of treasure">
    <script state="run">
      <action>maincpu.pb@01D4C=12</action>
      <action>maincpu.pb@01E4C=12</action>
      <action>maincpu.pb@01F4C=12</action>
      <action>maincpu.pb@0204C=12</action>
      <action>maincpu.pb@0214C=12</action>
      <action>maincpu.pb@0224C=12</action>
      <action>maincpu.pb@0234C=12</action>
      <action>maincpu.pb@0244C=12</action>
      <action>maincpu.pb@01D4F=01</action>
      <action>maincpu.pb@01E4F=01</action>
      <action>maincpu.pb@01F4F=01</action>
      <action>maincpu.pb@0204F=01</action>
      <action>maincpu.pb@0214F=01</action>
      <action>maincpu.pb@0224F=01</action>
      <action>maincpu.pb@0234F=01</action>
      <action>maincpu.pb@0244F=01</action>
    </script>
  </cheat>

  <cheat desc=" "/>

  <cheat desc="P1 Infinite Lives">
    <script state="run">
      <action>maincpu.pb@092CE=05</action>
    </script>
  </cheat>

  <cheat desc="P1 Infinite Energy">
    <script state="run">
      <action>maincpu.pw@008DC=0300</action>
    </script>
  </cheat>

  <cheat desc="P1 Select Perm. Weapon"> <comment>Rocket Launcher includes Infinite Ammo, best used with Invincibility to avoid the risk of littering the screen with Rocket Launchers when you get hit.</comment>
    <parameter>
      <item value="0x00000000">None</item>
      <item value="0x00010063">Rocket Launcher</item>
    </parameter>
    <script state="run">
      <action>maincpu.pd@092D0=param</action>
    </script>
  </cheat>

  <cheat desc=" "/>

  <cheat desc="P2 Infinite Lives">
    <script state="run">
      <action>maincpu.pb@09388=05</action>
    </script>
  </cheat>

  <cheat desc="P2 Infinite Energy">
    <script state="run">
      <action>maincpu.pw@009DC=0300</action>
    </script>
  </cheat>

  <cheat desc="P2 Select Perm. Weapon"> <comment>Rocket Launcher includes Infinite Ammo, best used with Invincibility to avoid the risk of littering the screen with Rocket Launchers when you get hit.</comment>
    <parameter>
      <item value="0x00000000">None</item>
      <item value="0x00010063">Rocket Launcher</item>
    </parameter>
    <script state="run">
      <action>maincpu.pd@0938A=param</action>
    </script>
  </cheat>

  <cheat desc=" "/>

  <cheat desc="Select Region"> <comment>Enable it and reset to see the effect</comment>
    <parameter>
      <item value="0x00">JAPAN</item>
      <item value="0x01">US (FABTEK)</item>
      <item value="0x02">KOREA</item>
      <item value="0x03">TAIWAN</item>
    </parameter>
    <script state="on">
      <action>temp0 =maincpu.mb@FFFFB</action>
    </script>
    <script state="run">
      <action>maincpu.mb@FFFFB=param</action>
    </script>
    <script state="off">
      <action>maincpu.mb@FFFFB=temp0 </action>
    </script>
  </cheat>

</mamecheat>
<!-- Cheat file downloaded from http://www.mamecheat.co.uk, see cheat.txt for list of contributors. -->
