[akazukin] Akazukin

This forum is for posting M.A.M.E. arcade cheats. Requests will be fulfilled here....but please keep the requests to the requests forum.
Post Reply
jman
Posts: 844
Joined: Tue Dec 01, 2020 1:24 pm

[akazukin] Akazukin

Post by jman »

akazukin will be added in 0.253. Basic RAM cheats are the following.

Code: Select all

<cheat desc="infinite credits">
    <script state="run">
        <action>maincpu.pb@ff7f = 99</action>
    </script>
</cheat>

<cheat desc="infinite lives">
    <script state="run">
        <action>maincpu.pb@ff45 = 99</action>
    </script>
</cheat>

<cheat desc="infinite ammo">
    <script state="run">
        <action>maincpu.pb@f88b = 04</action>
    </script>
</cheat>

<cheat desc="always get 100% bonus">
    <script state="run">
        <action>maincpu.pw@feb7 = 9999</action> <!-- number of hits -->
        <action>maincpu.pw@feba = 9999</action> <!-- number of shots -->
    </script>
</cheat>

<cheat desc="starting level P1">
    <parameter min="01" max="16" step="01" />
    <script state="run">
        <action condition="maincpu.pb@ff42 == 01">maincpu.pb@ff42 = param</action>
    </script>
</cheat>

<cheat desc="starting level P2">
    <parameter min="01" max="16" step="01" />
    <script state="run">
        <action condition="maincpu.pb@fec1 == 01">maincpu.pb@fec1 = param</action>
    </script>
</cheat>
jman
Posts: 844
Joined: Tue Dec 01, 2020 1:24 pm

[akazukin] Akazukin (update)

Post by jman »

all ROM codes are wip.

Code: Select all

<cheat desc="no hit (wip)">
    <comment>you can't cross over on right broken bridge</comment>
    <script state="on">
        <action>maincpu.mb@2afa =   18</action> <!-- wood -->
        <action>maincpu.mb@2c80 =   c9</action> <!-- river -->
        <action>maincpu.mb@42c4 =   00</action> <!-- bullet -->
        <action>maincpu.mw@4341 = 0218</action> <!-- wolf, bee -->
    </script>
    <script state="off">
        <action>maincpu.mb@2afa =   30</action>
        <action>maincpu.mb@2c80 =   7e</action>
        <action>maincpu.mb@42c4 =   02</action>
        <action>maincpu.mw@4341 = c9af</action>
    </script>
</cheat>

<cheat desc="auto fire (wip)">
    <script state="on">
        <action>maincpu.mb@18f8 = 00</action> <!-- quick reload -->
        <action>maincpu.mb@2e80 = e1</action> <!-- button check -->
    </script>
    <script state="off">
        <action>maincpu.mb@18f8 = d0</action>
        <action>maincpu.mb@2e80 = d5</action>
    </script>
</cheat>

<cheat desc="player speed (wip)">
    <parameter min="0x01" max="0x05" step="0x01" />
    <script state="on">
        <!-- left -->
        <action>maincpu.mq@0ba1 = c10be3cdc50006f5</action>
        <action>maincpu.mq@0ba9 = fe00000000f1f910</action>
        <!--
        0ba1 | f5       : push af
        0ba2 | 06 xx    : ld   b,$xx
        0ba4 | c5       : push bc
        0ba5 | cd e3 0b : call $0BE3
        0ba8 | c1       : pop  bc
        0ba9 | 10 f9    : djnz $0BA4
        0bab | f1       : pop  af
        0bac | 00       : nop
        0bad | 00       : nop
        0bae | 00       : nop
        0baf | 00       : nop
        -->
        <!-- right -->
        <action>maincpu.mq@0bb4 = c10bc7cdc50006f5</action>
        <action>maincpu.mq@0bbc = e100000000f1f910</action>
        <!--
        0bb4 | f5       : push af
        0bb5 | 06 xx    : ld   b,$xx
        0bb7 | c5       : push bc
        0bb8 | cd c7 0b : call $0BC7
        0bbb | c1       : pop  bc
        0bbc | 10 f9    : djnz $0BB7
        0bbe | f1       : pop  af
        0bbf | 00       : nop
        0bc0 | 00       : nop
        0bc1 | 00       : nop
        0bc2 | 00       : nop
        -->
    </script>
    <script state="change">
        <action>maincpu.mb@0ba3 = param</action>
        <action>maincpu.mb@0bb6 = param</action>
    </script>
    <script state="off">
        <action>maincpu.mq@0ba1 = e6f83c3a470be3cc</action>
        <action>maincpu.mq@0ba9 = fe0be3cc7800fe07</action>
        <action>maincpu.mq@0bb4 = e6f83c3a470bc7cc</action>
        <action>maincpu.mq@0bbc = e10bc7cc7800fe07</action>
    </script>
</cheat>

<cheat desc="bullet speed (wip)">
    <parameter>
        <item value="0x01">01 (slow)</item>
        <item value="0x04">02       </item>
        <item value="0x08">03       </item>
        <item value="0x0c">04       </item>
        <item value="0x10">05 (fast)</item>
    </parameter>
    <script state="change">
        <action>maincpu.mb@2ecc = param</action>
    </script>
    <script state="off">
        <action>maincpu.mb@2ecc = 04</action>
    </script>
</cheat>

<cheat desc="sound test mode (wip)">
    <!-- you can't stop sfx code 0x01 by stop button -->
    <comment>reset the game (F3) to enter sound test mode</comment>
    <script state="on">
        <action>maincpu.mw@1149 =             5d70</action>
        <action>maincpu.mq@5d70 = 47b8e8003af80021</action>
        <action>maincpu.mq@5d78 = fe35012001fef928</action>
        <action>maincpu.mq@5d80 = 042008fe34012002</action>
        <action>maincpu.mq@5d88 = 052004fe0618f03e</action>
        <action>maincpu.mq@5d90 = 2010fe787786103e</action>
        <action>maincpu.mq@5d98 = 042020fe06187e03</action>
        <action>maincpu.mq@5da0 = ff00cd1810d3143e</action>
        <!--
        5d70 | 21 00 f8 : ld  hl,$F800  // sound code address
        5d73 | 3a 00 e8 : ld  a,($E800) // read input
        5d76 | b8       : cp  b
        5d77 | 47       : ld  b,a
        5d78 | 28 f9    : jr  z,$5D73
        5d7a | fe 01    : cp  $01
        5d7c | 20 01    : jr  nz,$5D7F
        5d7e | 35       : dec (hl)      // decrease code -01
        5d7f | fe 02    : cp  $02
        5d81 | 20 01    : jr  nz,$5D84
        5d83 | 34       : inc (hl)      // increase code +01
        5d84 | fe 08    : cp  $08
        5d86 | 20 04    : jr  nz,$5D8C
        5d88 | 3e f0    : ld  a,$F0     // decrease code -10
        5d8a | 18 06    : jr  $5D92
        5d8c | fe 04    : cp  $04
        5d8e | 20 05    : jr  nz,$5D95
        5d90 | 3e 10    : ld  a,$10     // increase code +10
        5d92 | 86       : add a,(hl)
        5d93 | 77       : ld  (hl),a
        5d94 | 78       : ld  a,b
        5d95 | fe 10    : cp  $10
        5d97 | 20 03    : jr  nz,$5D9C
        5d99 | 7e       : ld  a,(hl)    // play sound
        5d9a | 18 06    : jr  $5DA2
        5d9c | fe 20    : cp  $20
        5d9e | 20 04    : jr  nz,$5DA4
        5da0 | 3e 14    : ld  a,$14     // stop sound
        5da2 | d3 10    : out ($10),a   // send sound code
        5da4 | 18 cd    : jr  $5D73
        -->
        <action>sub.mb@02d4 =               00</action> <!-- stop sfx and music at the same time -->
        <action>sub.mw@02e6 =             2160</action>
        <action>sub.mq@2160 = 00c904dccd0013cd</action>
        <!--
        2160 | cd 13 00 : call $0013
        2163 | cd dc 04 : call $04DC
        2166 | c9       : ret
        -->
    </script>
    <script state="run">
        <output format="----- akazukin 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="up : increase code +10"               line="13" align="center" />
        <output format="down : decrease code -10"             line="14" align="center" />
        <output format="button 1 : play sound"                line="15" align="center" />
        <output format="button 2 : stop sound"                line="16" align="center" />
        <output format="----------------------------"         line="17" align="center" />
        <output format="&lt;&lt; sound code %2.2X &gt;&gt;"   line="19" align="center"  >
            <argument>maincpu.pb@f800</argument>
        </output>
    </script>
    <script state="off">
        <action>maincpu.mq@5d70 = ff00ff00ff00ff00</action>
        <action>maincpu.mq@5d78 = ff00ff00ff00ff00</action>
        <action>maincpu.mq@5d80 = ff00ff00ff00ff00</action>
        <action>maincpu.mq@5d88 = ff00ff00ff00ff00</action>
        <action>maincpu.mq@5d90 = ff00ff00ff00ff00</action>
        <action>maincpu.mq@5d98 = ff00ff00ff00ff00</action>
        <action>maincpu.mq@5da0 = ff00ff00ff00ff00</action>
        <action>    sub.mb@02d4 =               c9</action>
        <action>    sub.mw@02e6 =             0013</action>
        <action>    sub.mq@2160 = 0000000000000000</action>
    </script>
</cheat>
  • "no hit" : Akazukin stops walking when she crosses over on broken right bridge. In that case, the game will be stuck unless you turn this code OFF.
  • "sound test mode" : You can't stop specific sfx (code 0x01) by sound stop button.
Post Reply