[ganryu] Ganryu/Musashi Ganryuki

This forum is for posting M.A.M.E. Work In Progress "Arcade"cheats that are not quite ready for the prime time. If the cheats are buggy or the cheat descriptions are non-standard then please post them here. Help maybe given but there are no guarantees and they will only be added to the cheat file when the cheat file maintainer is happy with them.
Post Reply
jman
Posts: 1318
Joined: Tue Dec 01, 2020 1:24 pm
Been thanked: 10 times

[ganryu] Ganryu/Musashi Ganryuki

Post by jman »

Code: Select all

<cheat desc="no hit">
    <script state="on">
        <action>maincpu.rb@2db0c =       60</action> <!-- object -->
        <action>maincpu.rb@316fe =       60</action> <!-- trap -->
        <action>maincpu.rd@31728 = 6000ffcc</action> <!-- trap -->
    </script>
    <script state="off">
        <action>maincpu.rb@2db0c =       67</action>
        <action>maincpu.rb@316fe =       66</action>
        <action>maincpu.rd@31728 = 4a6e0030</action>
    </script>
</cheat>

<cheat desc="auto fire">
    <comment>you can't charge the power</comment>
    <script state="on">
        <action>maincpu.rb@34491 = 94</action>
    </script>
    <script state="off">
        <action>maincpu.rb@34491 = 95</action>
    </script>
</cheat>

<cheat desc="attack speed up">
    <comment>except chain attack</comment>
    <script state="on">
        <action>maincpu.rq@35350 = 4eb9000bc0003d45</action>
        <action>maincpu.rq@bc000 = 42430c6e0002003e</action>
        <action>maincpu.rq@bc008 = 6606e34836320000</action>
        <action>maincpu.rq@bc010 = 4e75ffffffffffff</action>
        <!--
        bc000 | 4243           : clr.w  D3
        bc002 | 0c6e 0002 003e : cmpi.w #$2,($3e,A6)
        bc008 | 6606           : bne    $bc010
        bc00a | e348           : lsl.w  #1,D0
        bc00c | 3632 0000      : move.w (A2,D0.w),D3
        bc010 | 4e75           : rts
        -->
    </script>
    <script state="off">
        <action>maincpu.rq@35350 = e348363200003d45</action>
        <action>maincpu.rq@bc000 = ffffffffffffffff</action>
        <action>maincpu.rq@bc008 = ffffffffffffffff</action>
        <action>maincpu.rq@bc010 = ffffffffffffffff</action>
    </script>
</cheat>

<cheat desc="multiple jump">
    <script state="on">
        <action>maincpu.rq@318b0 = 4eb9000bc0204a6e</action>
        <action>maincpu.rq@bc020 = 4a6e003e661a0839</action>
        <action>maincpu.rq@bc028 = 0001001005946610</action>
        <action>maincpu.rq@bc030 = 0839000500100595</action>
        <action>maincpu.rq@bc038 = 67063d7c0001001e</action>
        <action>maincpu.rq@bc040 = 302e001ee5484e75</action>
        <!--
        bc020 | 4a6e 003e           : tst.w  ($3e,A6)
        bc024 | 661a                : bne    $bc040
        bc026 | 0839 0001 0010 0594 : btst   #$1,$100594.l
        bc02e | 6610                : bne    $bc040
        bc030 | 0839 0005 0010 0595 : btst   #$5,$100595.l
        bc038 | 6706                : beq    $bc040
        bc03a | 3d7c 0001 001e      : move.w #$1,($1e,A6)
        bc040 | 302e 001e           : move.w ($1e,A6),D0
        bc044 | e548                : lsl.w  #2,D0
        bc046 | 4e75                : rts
        -->
    </script>
    <script state="off">
        <action>maincpu.rq@318b0 = 302e001ee5484a6e</action>
        <action>maincpu.rq@bc020 = ffffffffffffffff</action>
        <action>maincpu.rq@bc028 = ffffffffffffffff</action>
        <action>maincpu.rq@bc030 = ffffffffffffffff</action>
        <action>maincpu.rq@bc038 = ffffffffffffffff</action>
        <action>maincpu.rq@bc040 = ffffffffffffffff</action>
    </script>
</cheat>

<cheat desc="timer speed">
    <parameter>
        <item value="0x0258">01 (slow)</item>
        <item value="0x012c">02       </item>
        <item value="0x0096">03       </item>
        <item value="0x004b">04       </item>
        <item value="0x0001">01 (fast)</item>
    </parameter>
    <script state="change">
        <action>maincpu.rw@26c8 = param</action>
    </script>
    <script state="off">
        <action>maincpu.rw@26c8 = 0096</action>
    </script>
</cheat>
"attack speed up" doesn't work in "chain attack" (button C) because it has the problem of the game crash when you use "multiple jump" at the same time.
Also "multiple jump" doesn't work in attacking in jumping. This code is incompatible with "attack speed up" and has the same problem.

I omit "skip ram/rom check" because it has already posted here.
jman

my wip cheat database back-up (06/01/2025 ver.)
https://u3.getuploader.com/...../download/58
downloadpass : jman2020
jman
Posts: 1318
Joined: Tue Dec 01, 2020 1:24 pm
Been thanked: 10 times

[ganryu] Ganryu/Musashi Ganryuki

Post by jman »

Small clean up.

ganryu.xml

Code: Select all

<!-- Ganryu / Musashi Ganryuki -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.rd@2DB0C = 600000C0</action> <!-- objects -->
            <action>maincpu.rd@316FE = 600000B4</action> <!-- trap -->
            <action>maincpu.rd@31728 = 6000FFCC</action> <!-- trap -->
        </script>
        <script state="off">
            <action>maincpu.rd@2DB0C = 670000C0</action>
            <action>maincpu.rd@316FE = 660000B4</action>
            <action>maincpu.rd@31728 = 4A6E0030</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <comment>you can't charge the power</comment>
        <script state="on">
            <action>maincpu.rb@34491 = 94</action>
        </script>
        <script state="off">
            <action>maincpu.rb@34491 = 95</action>
        </script>
    </cheat>

    <cheat desc="attack speed up">
        <comment>except chain attack</comment>
        <script state="on">
            <action>maincpu.rq@35350 = 4EB9000BC0003D45</action>
            <action>maincpu.rq@BC000 = 42430C6E0002003E</action>
            <action>maincpu.rq@BC008 = 6606E34836320000</action>
            <action>maincpu.rq@BC010 = 4E75FFFFFFFFFFFF</action>
            <!--
            BC000 | 4243           : clr.w   D3
            BC002 | 0C6E 0002 003E : cmpi.w  #$2, ($3e,A6) // chain attack?
            BC008 | 6606           : bne     $bc010
            BC00A | E348           : lsl.w   #1, D0
            BC00C | 3632 0000      : move.w  (A2,D0.w), D3
            BC010 | 4E75           : rts
            -->
        </script>
        <script state="off">
            <action>maincpu.rq@35350 = E348363200003D45</action>
            <action>maincpu.rq@BC000 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.rq@BC008 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.rq@BC010 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="multiple jump">
        <script state="on">
            <action>maincpu.rq@318B0 = 4EB9000BC0204A6E</action>
            <action>maincpu.rq@BC020 = 4A6E003E66183039</action>
            <action>maincpu.rq@BC028 = 0010059408000009</action>
            <action>maincpu.rq@BC030 = 660C080000056706</action>
            <action>maincpu.rq@BC038 = 3D7C0001001E302E</action>
            <action>maincpu.rq@BC040 = 001EE5484E75FFFF</action>
            <!--
            BC020 | 4A6E 003E      : tst.w   ($3e,A6)      // in attacking?
            BC024 | 6618           : bne     $bc03e
            BC026 | 3039 0010 0594 : move.w  $100594.l, D0
            BC02C | 0800 0009      : btst    #$9, D0       // in sliding?
            BC030 | 660C           : bne     $bc03e
            BC032 | 0800 0005      : btst    #$5, D0       // pressed jump button?
            BC036 | 6706           : beq     $bc03e
            BC038 | 3D7C 0001 001E : move.w  #$1, ($1e,A6)
            BC03E | 302E 001E      : move.w  ($1e,A6), D0
            BC042 | E548           : lsl.w   #2, D0
            BC044 | 4E75           : rts
            -->
        </script>
        <script state="off">
            <action>maincpu.rq@318B0 = 302E001EE5484A6E</action>
            <action>maincpu.rq@BC020 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.rq@BC028 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.rq@BC030 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.rq@BC038 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.rq@BC040 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="timer speed">
        <parameter>
            <item value="0x0258">01 (slow)</item>
            <item value="0x012c">02       </item>
            <item value="0x0096">03       </item>
            <item value="0x004b">04       </item>
            <item value="0x0001">05 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.rw@26C8 = param</action>
        </script>
        <script state="off">
            <action>maincpu.rw@26C8 = 0096</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <!-- don't play code 0x01, 0x03, and 0x10 because of no sound response -->
        <!-- valid bank number seems to be 0x00 and 0x0a -->
        <comment>reset the game (F3) to enter sound test mode</comment>
        <script state="on">
            <action>maincpu.rd@007F2 = 000BC0D2        </action> <!-- check sound latch in interrupt -->
            <action>maincpu.rd@089D4 = 000BC050        </action>
            <action>maincpu.rq@BC050 = 43ED000145ED8622</action>
            <action>maincpu.rq@BC058 = 605E160214390030</action>
            <action>maincpu.rq@BC060 = 0000B60267F40C02</action>
            <action>maincpu.rq@BC068 = 00FB660253150C02</action>
            <action>maincpu.rq@BC070 = 00F7660252150C02</action>
            <action>maincpu.rq@BC078 = 00FD660404150010</action>
            <action>maincpu.rq@BC080 = 0C0200FE66040615</action>
            <action>maincpu.rq@BC088 = 00100C0200BB6602</action>
            <action>maincpu.rq@BC090 = 53110C0200B76602</action>
            <action>maincpu.rq@BC098 = 52110211000F0C02</action>
            <action>maincpu.rq@BC0A0 = 00EF660E14916706</action>
            <action>maincpu.rq@BC0A8 = 06120010611E1495</action>
            <action>maincpu.rq@BC0B0 = 611A0C0200DF6612</action>
            <action>maincpu.rq@BC0B8 = 14BC0001610E14BC</action>
            <action>maincpu.rq@BC0C0 = 0003610814BC0007</action>
            <action>maincpu.rq@BC0C8 = 6102608E4A1266FC</action>
            <action>maincpu.rq@BC0D0 = 4E754EB90000F26A</action>
            <action>maincpu.rq@BC0D8 = 4EF9000087D2FFFF</action>
            <!--
            BC050 | 43ED 0001      : lea     ($1,A5), A1     // bank address ($108000)
            BC054 | 45ED 8622      : lea     (-$79de,A5), A2 // sound latch address ($100622)
            BC058 | 605E           : bra     $bc0b8
            BC05A | 1602           : move.b  D2, D3
            BC05C | 1439 0030 0000 : move.b  $300000.l, D2   // read input
            BC062 | B602           : cmp.b   D2, D3
            BC064 | 67F4           : beq     $bc05a
            BC066 | 0C02 00FB      : cmpi.b  #-$5, D2
            BC06A | 6602           : bne     $bc06e
            BC06C | 5315           : subq.b  #1, (A5)        // decrease code -01
            BC06E | 0C02 00F7      : cmpi.b  #-$9, D2
            BC072 | 6602           : bne     $bc076
            BC074 | 5215           : addq.b  #1, (A5)        // increase code +01
            BC076 | 0C02 00FD      : cmpi.b  #-$3, D2
            BC07A | 6604           : bne     $bc080
            BC07C | 0415 0010      : subi.b  #$10, (A5)      // decreaes code -10
            BC080 | 0C02 00FE      : cmpi.b  #-$2, D2
            BC084 | 6604           : bne     $bc08a
            BC086 | 0615 0010      : addi.b  #$10, (A5)      // increase code +10
            BC08A | 0C02 00BB      : cmpi.b  #-$45, D2
            BC08E | 6602           : bne     $bc092
            BC090 | 5311           : subq.b  #1, (A1)        // decrease bank -01
            BC092 | 0C02 00B7      : cmpi.b  #-$49, D2
            BC096 | 6602           : bne     $bc09a
            BC098 | 5211           : addq.b  #1, (A1)        // increase bank +01
            BC09A | 0211 000F      : andi.b  #$f, (A1)
            BC09E | 0C02 00EF      : cmpi.b  #-$11, D2
            BC0A2 | 660E           : bne     $bc0b2
            BC0A4 | 1491           : move.b  (A1), (A2)      // play sound
            BC0A6 | 6706           : beq     $bc0ae
            BC0A8 | 0612 0010      : addi.b  #$10, (A2)
            BC0AC | 611E           : bsr     $bc0cc
            BC0AE | 1495           : move.b  (A5), (A2)
            BC0B0 | 611A           : bsr     $bc0cc
            BC0B2 | 0C02 00DF      : cmpi.b  #-$21, D2
            BC0B6 | 6612           : bne     $bc0ca
            BC0B8 | 14BC 0001      : move.b  #$1, (A2)       // stop sound
            BC0BC | 610E           : bsr     $bc0cc
            BC0BE | 14BC 0003      : move.b  #$3, (A2)
            BC0C2 | 6108           : bsr     $bc0cc
            BC0C4 | 14BC 0007      : move.b  #$7, (A2)
            BC0C8 | 6102           : bsr     $bc0cc
            BC0CA | 608E           : bra     $bc05a
            BC0CC | 4A12           : tst.b   (A2)            // wait interrupt
            BC0CE | 66FC           : bne     $bc0cc
            BC0D0 | 4E75           : rts
            BC0D2 | 4EB9 0000 F26A : jsr     $f26a.l         // check sound latch
            BC0D8 | 4EF9 0000 87D2 : jmp     $87d2.l
            -->
        </script>
        <script state="run">
            <output format="----- ganryu/musashi ganryuki 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 3 + left : decrease bank -01"                 line="15" align="center" />
            <output format="button 3 + right : increase bank +01"                line="16" align="center" />
            <output format="button 1 : play sound"                               line="17" align="center" />
            <output format="button 2 : stop sound"                               line="18" align="center" />
            <output format="----------------------------"                        line="19" align="center" />
            <output format="&lt;&lt; bank %X &gt;&gt;"                           line="21" align="center"  >
                <argument>maincpu.pb@108001</argument>
            </output>
            <output format="&lt;&lt; sound code %02X &gt;&gt;"                   line="23" align="center"  >
                <argument>maincpu.pb@108000</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.rd@007F2 = 000087D2        </action>
            <action>maincpu.rd@089D4 = 0000F026        </action>
            <action>maincpu.rq@BC050 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.rq@BC058 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.rq@BC060 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.rq@BC068 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.rq@BC070 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.rq@BC078 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.rq@BC080 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.rq@BC088 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.rq@BC090 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.rq@BC098 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.rq@BC0A0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.rq@BC0A8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.rq@BC0B0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.rq@BC0B8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.rq@BC0C0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.rq@BC0C8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.rq@BC0D0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.rq@BC0D8 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="skip ram/rom check">
        <script state="on">
            <action condition="maincpu.rd@c11afc == 3a3c7fff">temp0 = C11AFC, maincpu.rd@temp0 = 60000168</action> <!-- euro, euro-s1, japan-s2, japan-s1 -->
            <action condition="maincpu.rd@c10c20 == 3a3c7fff">temp0 = C10C20, maincpu.rd@temp0 = 60000168</action> <!-- asia-mv1c, japan-mv1b -->
            <action condition="maincpu.rd@c10afc == 3a3c7fff">temp0 = C10AFC, maincpu.rd@temp0 = 60000168</action> <!-- asia-mv1b, japan-mv1c -->
            <action condition="maincpu.rd@c11ad2 == 3a3c7fff">temp0 = C11AD2, maincpu.rd@temp0 = 60000168</action> <!-- us, us-e, us-v2, us-u4 -->
            <action condition="maincpu.rd@c11abc == 3a3c7fff">temp0 = C11ABC, maincpu.rd@temp0 = 60000104</action> <!-- us-u3 -->
            <action condition="maincpu.rd@c11c24 == 3a3c7fff">temp0 = C11C24, maincpu.rd@temp0 = 60000168</action> <!-- japan -->
            <action condition="maincpu.rd@c11ae6 == 3a3c7fff">temp0 = C11AE6, maincpu.rd@temp0 = 60000104</action> <!-- japan-j3a -->
            <action condition="maincpu.rd@c11bc6 == 3a3c7fff">temp0 = C11BC6, maincpu.rd@temp0 = 6000017C</action> <!-- japan-hotel -->
        </script>
        <script state="off">
            <action>maincpu.rd@temp0 = 3A3C7FFF</action>
        </script>
    </cheat>

</mamecheat>
"sound test mode" : Added new.
jman

my wip cheat database back-up (06/01/2025 ver.)
https://u3.getuploader.com/...../download/58
downloadpass : jman2020
Post Reply