Code: Select all
<!-- Battlantis (version G) -->
<mamecheat version="1">
<cheat desc="invincibility">
<script state="on">
<action>maincpu.mb@A2D5 = 20 </action> <!-- bullet -->
<action>maincpu.mb@A312 = 20 </action> <!-- alien (alien boss) -->
<action>maincpu.mb@A36D = 20 </action> <!-- tongue (frog boss) -->
<action>maincpu.mw@D1A2 = 1216</action> <!-- enemy -->
</script>
<script state="off">
<action>maincpu.mb@A2D5 = 27 </action>
<action>maincpu.mb@A312 = 27 </action>
<action>maincpu.mb@A36D = 27 </action>
<action>maincpu.mw@D1A2 = 1027</action>
</script>
</cheat>
<cheat desc="rapid fire">
<script state="on">
<action>maincpu.mb@9C49 = 10</action>
</script>
<script state="off">
<action>maincpu.mb@9C49 = 00</action>
</script>
</cheat>
<cheat desc="player speed">
<parameter>
<item value="0x0080">01 (slow)</item>
<item value="0x0180">02 </item>
<item value="0x0280">03 </item>
<item value="0x0380">04 </item>
<item value="0x0480">05 (fast)</item>
</parameter>
<script state="change">
<!-- normal -->
<action>maincpu.mw@F1EE = param</action>
<action>maincpu.mw@F1F2 = -param</action>
<!-- speed up -->
<action>maincpu.mw@F1F4 = param</action>
<action>maincpu.mw@F1F8 = -param</action>
</script>
<script state="off">
<action>maincpu.mw@F1EE = 0140</action>
<action>maincpu.mw@F1F2 = FEC0</action>
<action>maincpu.mw@F1F4 = 01C0</action>
<action>maincpu.mw@F1F8 = FE40</action>
</script>
</cheat>
<cheat desc="bullet speed">
<parameter>
<item value="0x0100">01 (slow)</item>
<item value="0x0500">02 </item>
<item value="0x0700">03 </item>
<item value="0x0900">04 </item>
<item value="0x0B00">05 (fast)</item>
</parameter>
<script state="change">
<action>maincpu.mw@9D56 = -param</action> <!-- shot -->
<action>maincpu.mw@9D9A = -param</action> <!-- machine gun -->
<action>maincpu.mw@9DAB = -param</action> <!-- harpoon -->
</script>
<script state="off">
<action>maincpu.mw@9D56 = FB00</action>
<action>maincpu.mw@9D9A = FB00</action>
<action>maincpu.mw@9DAB = FB00</action>
</script>
</cheat>
<cheat desc="weapon">
<parameter>
<item value="0xC600">normal shot</item>
<item value="0xC602">machine gun</item>
<item value="0xC603">harpoon </item>
<item value="0xC607">bomb </item>
<item value="0xC608">side shot </item>
</parameter>
<script state="change">
<action>maincpu.mw@9BB0 = param</action>
</script>
<script state="off">
<action>maincpu.mw@9BB0 = E609</action>
</script>
</cheat>
<cheat desc="max bullets up">
<script state="on">
<action>maincpu.mb@9C74 = 04</action>
</script>
<script state="off">
<action>maincpu.mb@9C74 = 02</action>
</script>
</cheat>
<cheat desc="short hit mark">
<script state="on">
<action>maincpu.mb@9D8C = 00</action>
</script>
<script state="off">
<action>maincpu.mb@9D8C = 02</action>
</script>
</cheat>
<cheat desc="sound test mode">
<comment>set "skip ram/rom check" then reset the game (F3)</comment>
<script state="on">
<action>maincpu.mw@EC9F = FEE0 </action>
<action>maincpu.mq@FEE0 = B62E034384084848</action>
<action>maincpu.mq@FEE8 = 97C2B62E0243841F</action>
<action>maincpu.mq@FEF0 = 9AC291C1272BD6C0</action>
<action>maincpu.mq@FEF8 = 810126015A810226</action>
<action>maincpu.mq@FF00 = 015C81082602C010</action>
<action>maincpu.mq@FF08 = 81042602CB10D7C0</action>
<action>maincpu.mq@FF10 = 8110270581202609</action>
<action>maincpu.mq@FF18 = 5FF72E14C601F72E</action>
<action>maincpu.mq@FF20 = 1897C139FFFFFFFF</action>
<!--
FEE0 | B6 2E 03 : LDA $2E03 // read start button
FEE3 | 43 : COMA
FEE4 | 84 08 : ANDA #$08
FEE6 | 48 : ASLA
FEE7 | 48 : ASLA
FEE8 | 97 C2 : STA <$C2
FEEA | B6 2E 02 : LDA $2E02 // read other inputs
FEED | 43 : COMA
FEEE | 84 1F : ANDA #$1F
FEF0 | 9A C2 : ORA <$C2
FEF2 | 91 C1 : CMPA <$C1
FEF4 | 27 2B : BEQ $FF21
FEF6 | D6 C0 : LDB <$C0
FEF8 | 81 01 : CMPA #$01
FEFA | 26 01 : BNE $FEFD
FEFC | 5A : DECB // decrease code -01
FEFD | 81 02 : CMPA #$02
FEFF | 26 01 : BNE $FF02
FF01 | 5C : INCB // increase code +01
FF02 | 81 08 : CMPA #$08
FF04 | 26 02 : BNE $FF08
FF06 | C0 10 : SUBB #$10 // decrease code -10
FF08 | 81 04 : CMPA #$04
FF0A | 26 02 : BNE $FF0E
FF0C | CB 10 : ADDB #$10 // increase code +10
FF0E | D7 C0 : STB <$C0
FF10 | 81 10 : CMPA #$10
FF12 | 27 05 : BEQ $FF19 // play sound
FF14 | 81 20 : CMPA #$20
FF16 | 26 09 : BNE $FF21
FF18 | 5F : CLRB // stop sound
FF19 | F7 2E 14 : STB $2E14 // send sound code
FF1C | C6 01 : LDB #$01
FF1E | F7 2E 18 : STB $2E18 // sound cpu trigger
FF21 | 97 C1 : STA <$C1
FF23 | 39 : RTS
-->
</script>
<script state="run">
<output format="----- sound test mode -----" line="10" align="center" />
<output format="left : decrease code -01" line="11" align="center" />
<output format="right : increase code +01" line="12" align="center" />
<output format="down : decrease code -10" line="13" align="center" />
<output format="up : increase code +10" line="14" align="center" />
<output format="button 1 : play sound" line="15" align="center" />
<output format="1P start : stop sound" line="16" align="center" />
<output format="----------------------------" line="17" align="center" />
<output format="<< sound code %02X >>" line="19" align="center" >
<argument>maincpu.pb@10C0</argument>
</output>
</script>
<script state="off">
<action>maincpu.mw@EC9F = 86A4 </action>
<action>maincpu.mq@FEE0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@FEE8 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@FEF0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@FEF8 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@FF00 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@FF08 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@FF10 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@FF18 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@FF20 = FFFFFFFFFFFFFFFF</action>
</script>
</cheat>
<cheat desc="skip ram/rom check">
<script state="on">
<action>maincpu.md@8053 = 1603978E</action>
</script>
<script state="off">
<action>maincpu.md@8053 = CE10008E</action>
</script>
</cheat>
</mamecheat>
Code: Select all
<!-- Battlantis (version F) -->
<mamecheat version="1">
<cheat desc="invincibility">
<script state="on">
<action>maincpu.mb@A303 = 20 </action> <!-- bullet -->
<action>maincpu.mb@A340 = 20 </action> <!-- alien (alien boss) -->
<action>maincpu.mb@A39B = 20 </action> <!-- tongue (frog boss) -->
<action>maincpu.mw@D1CB = 1216</action> <!-- enemy -->
</script>
<script state="off">
<action>maincpu.mb@A303 = 27 </action>
<action>maincpu.mb@A340 = 27 </action>
<action>maincpu.mb@A39B = 27 </action>
<action>maincpu.mw@D1CB = 1027</action>
</script>
</cheat>
<cheat desc="rapid fire">
<script state="on">
<action>maincpu.mb@9C77 = 10</action>
</script>
<script state="off">
<action>maincpu.mb@9C77 = 00</action>
</script>
</cheat>
<cheat desc="player speed">
<parameter>
<item value="0x0080">01 (slow)</item>
<item value="0x0180">02 </item>
<item value="0x0280">03 </item>
<item value="0x0380">04 </item>
<item value="0x0480">05 (fast)</item>
</parameter>
<script state="change">
<!-- normal -->
<action>maincpu.mw@F1EE = param</action>
<action>maincpu.mw@F1F2 = -param</action>
<!-- speed up -->
<action>maincpu.mw@F1F4 = param</action>
<action>maincpu.mw@F1F8 = -param</action>
</script>
<script state="off">
<action>maincpu.mw@F1EE = 0140</action>
<action>maincpu.mw@F1F2 = FEC0</action>
<action>maincpu.mw@F1F4 = 01C0</action>
<action>maincpu.mw@F1F8 = FE40</action>
</script>
</cheat>
<cheat desc="bullet speed">
<parameter>
<item value="0x0100">01 (slow)</item>
<item value="0x0500">02 </item>
<item value="0x0700">03 </item>
<item value="0x0900">04 </item>
<item value="0x0B00">05 (fast)</item>
</parameter>
<script state="change">
<action>maincpu.mw@9D84 = -param</action> <!-- shot -->
<action>maincpu.mw@9DC8 = -param</action> <!-- machine gun -->
<action>maincpu.mw@9DD9 = -param</action> <!-- harpoon -->
</script>
<script state="off">
<action>maincpu.mw@9D84 = FC00</action>
<action>maincpu.mw@9DC8 = FC00</action>
<action>maincpu.mw@9DD9 = FC00</action>
</script>
</cheat>
<cheat desc="weapon">
<parameter>
<item value="0xC600">normal shot</item>
<item value="0xC602">machine gun</item>
<item value="0xC603">harpoon </item>
<item value="0xC607">bomb </item>
<item value="0xC608">side shot </item>
</parameter>
<script state="change">
<action>maincpu.mw@9BDE = param</action>
</script>
<script state="off">
<action>maincpu.mw@9BDE = E609</action>
</script>
</cheat>
<cheat desc="max bullets up">
<script state="on">
<action>maincpu.mb@9CA2 = 04</action>
</script>
<script state="off">
<action>maincpu.mb@9CA2 = 02</action>
</script>
</cheat>
<cheat desc="short hit mark">
<script state="on">
<action>maincpu.mb@9DBA = 00</action>
</script>
<script state="off">
<action>maincpu.mb@9DBA = 02</action>
</script>
</cheat>
<cheat desc="sound test mode">
<comment>set "skip ram/rom check" then reset the game (F3)</comment>
<script state="on">
<action>maincpu.mw@EC9F = FEA0 </action>
<action>maincpu.mq@FEA0 = B62E034384084848</action>
<action>maincpu.mq@FEA8 = 97C2B62E0243841F</action>
<action>maincpu.mq@FEB0 = 9AC291C1272BD6C0</action>
<action>maincpu.mq@FEB8 = 810126015A810226</action>
<action>maincpu.mq@FEC0 = 015C81082602C010</action>
<action>maincpu.mq@FEC8 = 81042602CB10D7C0</action>
<action>maincpu.mq@FED0 = 8110270581202609</action>
<action>maincpu.mq@FED8 = 5FF72E14C601F72E</action>
<action>maincpu.mq@FEE0 = 1897C139FFFFFFFF</action>
<!--
FEA0 | B6 2E 03 : LDA $2E03 // read start button
FEA3 | 43 : COMA
FEA4 | 84 08 : ANDA #$08
FEA6 | 48 : ASLA
FEA7 | 48 : ASLA
FEA8 | 97 C2 : STA <$C2
FEAA | B6 2E 02 : LDA $2E02 // read other inputs
FEAD | 43 : COMA
FEAE | 84 1F : ANDA #$1F
FEB0 | 9A C2 : ORA <$C2
FEB2 | 91 C1 : CMPA <$C1
FEB4 | 27 2B : BEQ $FEE1
FEB6 | D6 C0 : LDB <$C0
FEB8 | 81 01 : CMPA #$01
FEBA | 26 01 : BNE $FEBD
FEBC | 5A : DECB // decrease code -01
FEBD | 81 02 : CMPA #$02
FEBF | 26 01 : BNE $FEC2
FEC1 | 5C : INCB // increase code +01
FEC2 | 81 08 : CMPA #$08
FEC4 | 26 02 : BNE $FEC8
FEC6 | C0 10 : SUBB #$10 // decrease code -10
FEC8 | 81 04 : CMPA #$04
FECA | 26 02 : BNE $FECE
FECC | CB 10 : ADDB #$10 // increase code +10
FECE | D7 C0 : STB <$C0
FED0 | 81 10 : CMPA #$10
FED2 | 27 05 : BEQ $FED9 // play sound
FED4 | 81 20 : CMPA #$20
FED6 | 26 09 : BNE $FEE1
FED8 | 5F : CLRB // stop sound
FED9 | F7 2E 14 : STB $2E14 // send sound code
FEDC | C6 01 : LDB #$01
FEDE | F7 2E 18 : STB $2E18 // sound cpu trigger
FEE1 | 97 C1 : STA <$C1
FEE3 | 39 : RTS
-->
</script>
<script state="run">
<output format="----- sound test mode -----" line="10" align="center" />
<output format="left : decrease code -01" line="11" align="center" />
<output format="right : increase code +01" line="12" align="center" />
<output format="down : decrease code -10" line="13" align="center" />
<output format="up : increase code +10" line="14" align="center" />
<output format="button 1 : play sound" line="15" align="center" />
<output format="1P start : stop sound" line="16" align="center" />
<output format="----------------------------" line="17" align="center" />
<output format="<< sound code %02X >>" line="19" align="center" >
<argument>maincpu.pb@10C0</argument>
</output>
</script>
<script state="off">
<action>maincpu.mw@EC9F = 86A4 </action>
<action>maincpu.mq@FEA0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@FEA8 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@FEB0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@FEB8 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@FEC0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@FEC8 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@FED0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@FED8 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@FEE0 = FFFFFFFFFFFFFFFF</action>
</script>
</cheat>
<cheat desc="skip ram/rom check">
<script state="on">
<action>maincpu.md@8053 = 1603978E</action>
</script>
<script state="off">
<action>maincpu.md@8053 = CE10008E</action>
</script>
</cheat>
</mamecheat>
Code: Select all
<!-- Battlantis (Japan, version E) -->
<mamecheat version="1">
<cheat desc="invincibility">
<script state="on">
<action>maincpu.mb@A331 = 20 </action> <!-- bullet -->
<action>maincpu.mb@A36E = 20 </action> <!-- alien (alien boss) -->
<action>maincpu.mb@A3C9 = 20 </action> <!-- tongue (frog boss) -->
<action>maincpu.mw@D1FE = 1216</action> <!-- enemy -->
</script>
<script state="off">
<action>maincpu.mb@A331 = 27 </action>
<action>maincpu.mb@A36E = 27 </action>
<action>maincpu.mb@A3C9 = 27 </action>
<action>maincpu.mw@D1FE = 1027</action>
</script>
</cheat>
<cheat desc="rapid fire">
<script state="on">
<action>maincpu.mb@9CA5 = 10</action>
</script>
<script state="off">
<action>maincpu.mb@9CA5 = 00</action>
</script>
</cheat>
<cheat desc="player speed">
<parameter>
<item value="0x0080">01 (slow)</item>
<item value="0x0180">02 </item>
<item value="0x0280">03 </item>
<item value="0x0380">04 </item>
<item value="0x0480">05 (fast)</item>
</parameter>
<script state="change">
<!-- normal -->
<action>maincpu.mw@F2E8 = param</action>
<action>maincpu.mw@F2EC = -param</action>
<!-- speed up -->
<action>maincpu.mw@F2EE = param</action>
<action>maincpu.mw@F2F2 = -param</action>
</script>
<script state="off">
<action>maincpu.mw@F2E8 = 0140</action>
<action>maincpu.mw@F2EC = FEC0</action>
<action>maincpu.mw@F2EE = 01C0</action>
<action>maincpu.mw@F2F2 = FE40</action>
</script>
</cheat>
<cheat desc="bullet speed">
<parameter>
<item value="0x0100">01 (slow)</item>
<item value="0x0500">02 </item>
<item value="0x0700">03 </item>
<item value="0x0900">04 </item>
<item value="0x0B00">05 (fast)</item>
</parameter>
<script state="change">
<action>maincpu.mw@9DB2 = -param</action> <!-- shot -->
<action>maincpu.mw@9DF6 = -param</action> <!-- machine gun -->
<action>maincpu.mw@9E07 = -param</action> <!-- harpoon -->
</script>
<script state="off">
<action>maincpu.mw@9DB2 = FB00</action>
<action>maincpu.mw@9DF6 = FB00</action>
<action>maincpu.mw@9E07 = FB00</action>
</script>
</cheat>
<cheat desc="weapon">
<parameter>
<item value="0xC600">normal shot</item>
<item value="0xC602">machine gun</item>
<item value="0xC603">harpoon </item>
<item value="0xC607">bomb </item>
<item value="0xC608">side shot </item>
</parameter>
<script state="change">
<action>maincpu.mw@9C0C = param</action>
</script>
<script state="off">
<action>maincpu.mw@9C0C = E609</action>
</script>
</cheat>
<cheat desc="max bullets up">
<script state="on">
<action>maincpu.mb@9CD0 = 04</action>
</script>
<script state="off">
<action>maincpu.mb@9CD0 = 02</action>
</script>
</cheat>
<cheat desc="short hit mark">
<script state="on">
<action>maincpu.mb@9DE8 = 00</action>
</script>
<script state="off">
<action>maincpu.mb@9DE8 = 02</action>
</script>
</cheat>
<cheat desc="sound test mode">
<comment>set "skip ram/rom check" then reset the game (F3)</comment>
<script state="on">
<action>maincpu.mw@ED9F = EB60 </action>
<action>maincpu.mq@EB60 = B62E034384084848</action>
<action>maincpu.mq@EB68 = 97C2B62E0243841F</action>
<action>maincpu.mq@EB70 = 9AC291C1272BD6C0</action>
<action>maincpu.mq@EB78 = 810126015A810226</action>
<action>maincpu.mq@EB80 = 015C81082602C010</action>
<action>maincpu.mq@EB88 = 81042602CB10D7C0</action>
<action>maincpu.mq@EB90 = 8110270581202609</action>
<action>maincpu.mq@EB98 = 5FF72E14C601F72E</action>
<action>maincpu.mq@EBA0 = 1897C139FFFFFFFF</action>
<!--
EB60 | B6 2E 03 : LDA $2E03 // read start button
EB63 | 43 : COMA
EB64 | 84 08 : ANDA #$08
EB66 | 48 : ASLA
EB67 | 48 : ASLA
EB68 | 97 C2 : STA <$C2
EB6A | B6 2E 02 : LDA $2E02 // read other inputs
EB6D | 43 : COMA
EB6E | 84 1F : ANDA #$1F
EB70 | 9A C2 : ORA <$C2
EB72 | 91 C1 : CMPA <$C1
EB74 | 27 2B : BEQ $FF21
EB76 | D6 C0 : LDB <$C0
EB78 | 81 01 : CMPA #$01
EB7A | 26 01 : BNE $FEFD
EB7C | 5A : DECB // decrease code -01
EB7D | 81 02 : CMPA #$02
EB7F | 26 01 : BNE $FF02
EB81 | 5C : INCB // increase code +01
EB82 | 81 08 : CMPA #$08
EB84 | 26 02 : BNE $FF08
EB86 | C0 10 : SUBB #$10 // decrease code -10
EB88 | 81 04 : CMPA #$04
EB8A | 26 02 : BNE $FF0E
EB8C | CB 10 : ADDB #$10 // increase code +10
EB8E | D7 C0 : STB <$C0
EB90 | 81 10 : CMPA #$10
EB92 | 27 05 : BEQ $FF19 // play sound
EB94 | 81 20 : CMPA #$20
EB96 | 26 09 : BNE $FF21
EB98 | 5F : CLRB // stop sound
EB99 | F7 2E 14 : STB $2E14 // send sound code
EB9C | C6 01 : LDB #$01
EB9E | F7 2E 18 : STB $2E18 // sound cpu trigger
EBA1 | 97 C1 : STA <$C1
EBA3 | 39 : RTS
-->
</script>
<script state="run">
<output format="----- sound test mode -----" line="10" align="center" />
<output format="left : decrease code -01" line="11" align="center" />
<output format="right : increase code +01" line="12" align="center" />
<output format="down : decrease code -10" line="13" align="center" />
<output format="up : increase code +10" line="14" align="center" />
<output format="button 1 : play sound" line="15" align="center" />
<output format="1P start : stop sound" line="16" align="center" />
<output format="----------------------------" line="17" align="center" />
<output format="<< sound code %02X >>" line="19" align="center" >
<argument>maincpu.pb@10C0</argument>
</output>
</script>
<script state="off">
<action>maincpu.mw@ED9F = 86A4 </action>
<action>maincpu.mq@EB60 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@EB68 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@EB70 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@EB78 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@EB80 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@EB88 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@EB90 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@EB98 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@EBA0 = FFFFFFFFFFFFFFFF</action>
</script>
</cheat>
<cheat desc="skip ram/rom check">
<script state="on">
<action>maincpu.md@8053 = 1603978E</action>
</script>
<script state="off">
<action>maincpu.md@8053 = CE10008E</action>
</script>
</cheat>
</mamecheat>
- "invincibility" : It's not "no hit". Because the game is stuck in stage 6 in case of "no hit".
- "bullet speed" : Front shot only. Bomb and side shot doesn't change.
- "max bullets up" : Front shot only. Maximum bullets on screen are 4. You can't throw bomb when the bullets on screen are 4. No effect in case of side shot.