[karatblzj] Karate Blazers/Toushin Blazers

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: 1316
Joined: Tue Dec 01, 2020 1:24 pm
Been thanked: 9 times

[karatblzj] Karate Blazers/Toushin Blazers

Post by jman »

Code: Select all

<cheat desc="no hit">
    <script state="on">
        <action>maincpu.mb@4df4 = 60</action>
        <action>maincpu.mb@4f1c = 60</action>
    </script>
    <script state="off">
        <action>maincpu.mb@4df4 = 6c</action>
        <action>maincpu.mb@4f1c = 6c</action>
    </script>
</cheat>

<cheat desc="auto fire">
    <script state="on">
        <action>maincpu.mb@8a55 = 58</action>
        <action>maincpu.mb@8979 = 58</action>
    </script>
    <script state="off">
        <action>maincpu.mb@8a55 = 59</action>
        <action>maincpu.mb@8979 = 59</action>
    </script>
</cheat>

<cheat desc="attack speed up">
    <script state="on">
        <action>maincpu.mq@04348 = 4eb900028ba03540</action>
        <action>maincpu.mq@28ba0 = 0c6a000100366608</action>
        <action>maincpu.mq@28ba8 = 70001030b8004e75</action>
        <action>maincpu.mq@28bb0 = 70014e7500000000</action>
        <!--
        28ba0 : 0c6a 0001 0036 : cmpi   #$1,($36,A2)
        28ba6 : 6608           : beq    $28bb0
        28ba8 : 7000           : moveq  #$0,D0
        28baa : 1030 b800      : move.b (A0,A3.l),D0
        28bae : 4e75           : rts
        28bb0 : 7001           : moveq  #$1,D0
        28bb2 : 4e75           : rts
        -->
    </script>
    <script state="off">
        <action>maincpu.mq@04348 = 70001030b8003540</action>
        <action>maincpu.mq@28ba0 = 0000000000000000</action>
        <action>maincpu.mq@28ba8 = 0000000000000000</action>
        <action>maincpu.mq@28bb0 = 0000000000000000</action>
    </script>
</cheat>
jman

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

[karatblzj] update

Post by jman »

Added "timer speed", "unlock special test mode" and "sound test mode".

Code: Select all

<cheat desc="timer speed">
    <parameter>
        <item value="0x7fff">01 (slow)</item>
        <item value="0x0800">02       </item>
        <item value="0x0200">03       </item>
        <item value="0x0080">04       </item>
        <item value="0x0001">05 (fast)</item>
    </parameter>
    <script state="on">
        <action>maincpu.mw@283e = 0c40</action> <!-- cmpi.w #$xx,D0 -->
    </script>
    <script state="change">
        <action>maincpu.mw@2840 = param</action>
    </script>
    <script state="off">
        <action>maincpu.md@283e = b06a002c</action>
    </script>
</cheat>

<cheat desc="unlock special test mode">
    <comment>reset the game (F3) to enter special test mode</comment>
    <script state="on">
        <action>maincpu.mb@17dcf = 26</action>
    </script>
    <script state="off">
        <action>maincpu.mb@17dcf = 44</action>
    </script>
</cheat>

<cheat desc="sound test mode">
    <comment>reset the game (F3) to enter sound test mode</comment>
    <script state="on">
        <action>maincpu.md@17e1e =         00028bc0</action>
        <action>maincpu.mq@28bc0 = 41f9000c000043f9</action>
        <action>maincpu.mq@28bc8 = 000ff00712001029</action>
        <action>maincpu.mq@28bd0 = fffab20067f60c00</action>
        <action>maincpu.mq@28bd8 = 00fb660253100c00</action>
        <action>maincpu.mq@28be0 = 00f7660252100c00</action>
        <action>maincpu.mq@28be8 = 00fd660404100010</action>
        <action>maincpu.mq@28bf0 = 0c0000fe66040610</action>
        <action>maincpu.mq@28bf8 = 00100c0000ef6602</action>
        <action>maincpu.mq@28c00 = 12900c0000df6604</action>
        <action>maincpu.mq@28c08 = 12bc000160be0000</action>
        <!--
        28bc0 | 41f9 000c 0000 : lea    $c0000.l,A0 // sound code address
        28bc6 | 43f9 000f f007 : lea    $ff007.l,A1 // sound latch address
        28bcc | 1200           : move.b D0,D1
        28bce | 1029 fffa      : move.b (-$6,A1),D0 // read input
        28bd2 | b200           : cmp.b  D0,D1
        28bd4 | 67f6           : beq    $28bcc
        28bd6 | 0c00 00fb      : cmpi.b #-$5,D0
        28bda | 6602           : bne    $28bde
        28bdc | 5310           : subq.b #1,(A0)     // decrease code -01
        28bde | 0c00 00f7      : cmpi.b #-$9,D0
        28be2 | 6602           : bne    $28be6
        28be4 | 5210           : addq.b #1,(A0)     // increase code +01
        28be6 | 0c00 00fd      : cmpi.b #-$3,D0
        28bea | 6604           : bne    $28bf0
        28bec | 0410 0010      : subi.b #$10,(A0)   // decrease code -10
        28bf0 | 0c00 00fe      : cmpi.b #-$2,D0
        28bf4 | 6604           : bne    $28bfa
        28bf6 | 0610 0010      : addi.b #$10,(A0)   // increase code +10
        28bfa | 0c00 00ef      : cmpi.b #-$11,D0
        28bfe | 6602           : bne    $28c02
        28c00 | 1290           : move.b (A0),(A1)   // play sound
        28c02 | 0c00 00df      : cmpi.b #-$21,D0
        28c06 | 6604           : bne    $28c0c
        28c08 | 12bc 0001      : move.b #$1,(A1)    // stop sound
        28c0c | 60be           : bra    $28bcc
        -->
    </script>
    <script state="run">
        <output format="----- toushin blazers 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@c0000</argument>
        </output>
    </script>
    <script state="off">
        <action>maincpu.md@17e1e =         00007bb6</action>
        <action>maincpu.mq@28bc0 = 0000000000000000</action>
        <action>maincpu.mq@28bc8 = 0000000000000000</action>
        <action>maincpu.mq@28bd0 = 0000000000000000</action>
        <action>maincpu.mq@28bd8 = 0000000000000000</action>
        <action>maincpu.mq@28be0 = 0000000000000000</action>
        <action>maincpu.mq@28be8 = 0000000000000000</action>
        <action>maincpu.mq@28bf0 = 0000000000000000</action>
        <action>maincpu.mq@28bf8 = 0000000000000000</action>
        <action>maincpu.mq@28c00 = 0000000000000000</action>
        <action>maincpu.mq@28c08 = 0000000000000000</action>
    </script>
</cheat>
"sound test mode" is preferred when you set "unlock special test mode" and "sound test mode" at the same time.
jman

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

[karatblz]+ Karate Blazers/Toushin Blazers

Post by jman »

karatblz.xml

Code: Select all

<!-- Karate Blazers (World, set 1) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mb@4DF4 = 60</action>
            <action>maincpu.mb@4F1C = 60</action>
        </script>
        <script state="off">
            <action>maincpu.mb@4DF4 = 6C</action>
            <action>maincpu.mb@4F1C = 6C</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.mb@8979 = 58</action>
            <action>maincpu.mb@8A55 = 58</action>
        </script>
        <script state="off">
            <action>maincpu.mb@8979 = 59</action>
            <action>maincpu.mb@8A55 = 59</action>
        </script>
    </cheat>

    <cheat desc="attack speed up">
        <script state="on">
            <action>maincpu.mq@04348 = 4EB900028BA03540</action>
            <action>maincpu.mq@28BA0 = 0C6A000100366608</action>
            <action>maincpu.mq@28BA8 = 70001030B8004E75</action>
            <action>maincpu.mq@28BB0 = 70014E7500000000</action>
            <!--
            28BA0 | 0C6A 0001 0036 : cmpi.w  #$1, ($36,A2)
            28BA6 | 6608           : bne     $28bb0
            28BA8 | 7000           : moveq   #$0, D0
            28BAA | 1030 B800      : move.b  (A0,A3.l), D0
            28BAE | 4E75           : rts
            28BB0 | 7001           : moveq   #$1, D0
            28BB2 | 4E75           : rts
            -->
        </script>
        <script state="off">
            <action>maincpu.mq@04348 = 70001030B8003540</action>
            <action>maincpu.mq@28BA0 = 0000000000000000</action>
            <action>maincpu.mq@28BA8 = 0000000000000000</action>
            <action>maincpu.mq@28BB0 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="timer speed">
        <parameter>
            <item value="0x7fff">01 (slow)</item>
            <item value="0x0800">02       </item>
            <item value="0x0200">03       </item>
            <item value="0x0080">04       </item>
            <item value="0x0001">05 (fast)</item>
        </parameter>
        <script state="on">
            <action>maincpu.mw@283E = 0C40</action> <!-- cmpi.w #$xx,D0 -->
        </script>
        <script state="change">
            <action>maincpu.mw@2840 = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@283E = B06A002C</action>
        </script>
    </cheat>

    <cheat desc="unlock special test mode">
        <comment>reset the game (F3) to enter special test mode</comment>
        <script state="on">
            <action>maincpu.mb@17DCF = 26</action>
        </script>
        <script state="off">
            <action>maincpu.mb@17DCF = 44</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <comment>reset the game (F3) to enter sound test mode</comment>
        <script state="on">
            <action>maincpu.md@17E1E = 00028BC0        </action>
            <action>maincpu.mq@28BC0 = 41F9000C000043F9</action>
            <action>maincpu.mq@28BC8 = 000FF00712001029</action>
            <action>maincpu.mq@28BD0 = FFFAB20067F60C00</action>
            <action>maincpu.mq@28BD8 = 00FB660253100C00</action>
            <action>maincpu.mq@28BE0 = 00F7660252100C00</action>
            <action>maincpu.mq@28BE8 = 00FD660404100010</action>
            <action>maincpu.mq@28BF0 = 0C0000FE66040610</action>
            <action>maincpu.mq@28BF8 = 00100C0000EF6602</action>
            <action>maincpu.mq@28C00 = 12900C0000DF6604</action>
            <action>maincpu.mq@28C08 = 12BC000160BE0000</action>
            <!--
            28BC0 | 41F9 000C 0000 : lea     $c0000.l, A0 // sound code address
            28BC6 | 43F9 000F F007 : lea     $ff007.l, A1 // sound latch address
            28BCC | 1200           : move.b  D0, D1
            28BCE | 1029 FFFA      : move.b  (-$6,A1), D0 // read input ($ff001)
            28BD2 | B200           : cmp.b   D0, D1
            28BD4 | 67F6           : beq     $28bcc
            28BD6 | 0C00 00FB      : cmpi.b  #-$5, D0
            28BDA | 6602           : bne     $28bde
            28BDC | 5310           : subq.b  #1, (A0)     // decrease code -01
            28BDE | 0C00 00F7      : cmpi.b  #-$9, D0
            28BE2 | 6602           : bne     $28be6
            28BE4 | 5210           : addq.b  #1, (A0)     // increase code +01
            28BE6 | 0C00 00FD      : cmpi.b  #-$3, D0
            28BEA | 6604           : bne     $28bf0
            28BEC | 0410 0010      : subi.b  #$10, (A0)   // decrease code -10
            28BF0 | 0C00 00FE      : cmpi.b  #-$2, D0
            28BF4 | 6604           : bne     $28bfa
            28BF6 | 0610 0010      : addi.b  #$10, (A0)   // increase code +10
            28BFA | 0C00 00EF      : cmpi.b  #-$11, D0
            28BFE | 6602           : bne     $28c02
            28C00 | 1290           : move.b  (A0), (A1)   // play sound
            28C02 | 0C00 00DF      : cmpi.b  #-$21, D0
            28C06 | 6604           : bne     $28c0c
            28C08 | 12BC 0001      : move.b  #$1, (A1)    // stop sound
            28C0C | 60BE           : bra     $28bcc
            -->
        </script>
        <script state="run">
            <output format="----- karate blazers 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="button 2 : stop sound"                      line="16" align="center" />
            <output format="----------------------------"               line="17" align="center" />
            <output format="&lt;&lt; sound code %02X &gt;&gt;"          line="19" align="center"  >
                <argument>maincpu.pb@C0000</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.md@17E1E = 00007BB6        </action>
            <action>maincpu.mq@28BC0 = 0000000000000000</action>
            <action>maincpu.mq@28BC8 = 0000000000000000</action>
            <action>maincpu.mq@28BD0 = 0000000000000000</action>
            <action>maincpu.mq@28BD8 = 0000000000000000</action>
            <action>maincpu.mq@28BE0 = 0000000000000000</action>
            <action>maincpu.mq@28BE8 = 0000000000000000</action>
            <action>maincpu.mq@28BF0 = 0000000000000000</action>
            <action>maincpu.mq@28BF8 = 0000000000000000</action>
            <action>maincpu.mq@28C00 = 0000000000000000</action>
            <action>maincpu.mq@28C08 = 0000000000000000</action>
        </script>
    </cheat>

</mamecheat>
karatblza.xml

Code: Select all

<!-- Karate Blazers (World, set 2) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mb@5E70 = 60</action>
            <action>maincpu.mb@5EDC = 60</action>
        </script>
        <script state="off">
            <action>maincpu.mb@5E70 = 6C</action>
            <action>maincpu.mb@5EDC = 6C</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.mb@56D1 = 58</action>
            <action>maincpu.mb@57A7 = 58</action>
        </script>
        <script state="off">
            <action>maincpu.mb@56D1 = 59</action>
            <action>maincpu.mb@57A7 = 59</action>
        </script>
    </cheat>

    <cheat desc="attack speed up">
        <script state="on">
            <action>maincpu.mq@04448 = 4EB900028B303540</action>
            <action>maincpu.mq@28B30 = 0C6A000100366608</action>
            <action>maincpu.mq@28B38 = 7000103018004E75</action>
            <action>maincpu.mq@28B40 = 70014E7500000000</action>
            <!--
            28B30 | 0C6A 0001 0036 : cmpi.w  #$1, ($36,A2)
            28B36 | 6608           : bne     $28b40
            28B38 | 7000           : moveq   #$0, D0
            28B3A | 1030 1800      : move.b  (A0,D1.l), D0
            28B3E | 4E75           : rts
            28B40 | 7001           : moveq   #$1, D0
            28B42 | 4E75           : rts
            -->
        </script>
        <script state="off">
            <action>maincpu.mq@04448 = 7000103018003540</action>
            <action>maincpu.mq@28B30 = 0000000000000000</action>
            <action>maincpu.mq@28B38 = 0000000000000000</action>
            <action>maincpu.mq@28B40 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="timer speed">
        <parameter>
            <item value="0x7fff">01 (slow)</item>
            <item value="0x0800">02       </item>
            <item value="0x0200">03       </item>
            <item value="0x0080">04       </item>
            <item value="0x0001">05 (fast)</item>
        </parameter>
        <script state="on">
            <action>maincpu.mw@2754 = 0C40</action> <!-- cmpi.w #$xx,D0 -->
        </script>
        <script state="change">
            <action>maincpu.mw@2756 = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@2754 = B06A002C</action>
        </script>
    </cheat>

    <cheat desc="unlock special test mode">
        <comment>reset the game (F3) to enter special test mode</comment>
        <script state="on">
            <action>maincpu.mb@15925 = 7C</action>
        </script>
        <script state="off">
            <action>maincpu.mb@15925 = 9A</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <comment>reset the game (F3) to enter sound test mode</comment>
        <script state="on">
            <action>maincpu.md@15974 = 00028B50        </action>
            <action>maincpu.mq@28B50 = 41F9000C000043F9</action>
            <action>maincpu.mq@28B58 = 000FF00712001029</action>
            <action>maincpu.mq@28B60 = FFFAB20067F60C00</action>
            <action>maincpu.mq@28B68 = 00FB660253100C00</action>
            <action>maincpu.mq@28B70 = 00F7660252100C00</action>
            <action>maincpu.mq@28B78 = 00FD660404100010</action>
            <action>maincpu.mq@28B80 = 0C0000FE66040610</action>
            <action>maincpu.mq@28B88 = 00100C0000EF6602</action>
            <action>maincpu.mq@28B90 = 12900C0000DF6604</action>
            <action>maincpu.mq@28B98 = 12BC000160BE0000</action>
            <!--
            28B50 | 41F9 000C 0000 : lea     $c0000.l, A0 // sound code address
            28B56 | 43F9 000F F007 : lea     $ff007.l, A1 // sound latch address
            28B5C | 1200           : move.b  D0, D1
            28B5E | 1029 FFFA      : move.b  (-$6,A1), D0 // read input ($ff001)
            28B62 | B200           : cmp.b   D0, D1
            28B64 | 67F6           : beq     $28b5c
            28B66 | 0C00 00FB      : cmpi.b  #-$5, D0
            28B6A | 6602           : bne     $28b6e
            28B6C | 5310           : subq.b  #1, (A0)     // decrease code -01
            28B6E | 0C00 00F7      : cmpi.b  #-$9, D0
            28B72 | 6602           : bne     $28b76
            28B74 | 5210           : addq.b  #1, (A0)     // increase code +01
            28B76 | 0C00 00FD      : cmpi.b  #-$3, D0
            28B7A | 6604           : bne     $28b80
            28B7C | 0410 0010      : subi.b  #$10, (A0)   // decrease code -10
            28B80 | 0C00 00FE      : cmpi.b  #-$2, D0
            28B84 | 6604           : bne     $28b8a
            28B86 | 0610 0010      : addi.b  #$10, (A0)   // increase code +10
            28B8A | 0C00 00EF      : cmpi.b  #-$11, D0
            28B8E | 6602           : bne     $28b92
            28B90 | 1290           : move.b  (A0), (A1)   // play sound
            28B92 | 0C00 00DF      : cmpi.b  #-$21, D0
            28B96 | 6604           : bne     $28b9c
            28B98 | 12BC 0001      : move.b  #$1, (A1)    // stop sound
            28B9C | 60BE           : bra     $28b5c
            -->
        </script>
        <script state="run">
            <output format="----- karate blazers 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="button 2 : stop sound"                      line="16" align="center" />
            <output format="----------------------------"               line="17" align="center" />
            <output format="&lt;&lt; sound code %02X &gt;&gt;"          line="19" align="center"  >
                <argument>maincpu.pb@C0000</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.md@15974 = 0000422A        </action>
            <action>maincpu.mq@28B50 = 0000000000000000</action>
            <action>maincpu.mq@28B58 = 0000000000000000</action>
            <action>maincpu.mq@28B60 = 0000000000000000</action>
            <action>maincpu.mq@28B68 = 0000000000000000</action>
            <action>maincpu.mq@28B70 = 0000000000000000</action>
            <action>maincpu.mq@28B78 = 0000000000000000</action>
            <action>maincpu.mq@28B80 = 0000000000000000</action>
            <action>maincpu.mq@28B88 = 0000000000000000</action>
            <action>maincpu.mq@28B90 = 0000000000000000</action>
            <action>maincpu.mq@28B98 = 0000000000000000</action>
        </script>
    </cheat>

</mamecheat>
karatblzt.xml

Code: Select all

<!-- Karate Blazers (World, Tecmo license) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mb@4D6A = 60</action>
            <action>maincpu.mb@4E92 = 60</action>
        </script>
        <script state="off">
            <action>maincpu.mb@4D6A = 6C</action>
            <action>maincpu.mb@4E92 = 6C</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.mb@833B = 58</action>
            <action>maincpu.mb@8417 = 58</action>
        </script>
        <script state="off">
            <action>maincpu.mb@833B = 59</action>
            <action>maincpu.mb@8417 = 59</action>
        </script>
    </cheat>

    <cheat desc="attack speed up">
        <script state="on">
            <action>maincpu.mq@0428E = 4EB9000287D03540</action>
            <action>maincpu.mq@287D0 = 0C6A000100366608</action>
            <action>maincpu.mq@287D8 = 70001030B8004E75</action>
            <action>maincpu.mq@287E0 = 70014E7500000000</action>
            <!--
            287D0 | 0C6A 0001 0036 : cmpi.w  #$1, ($36,A2)
            287D6 | 6608           : bne     $287e0
            287D8 | 7000           : moveq   #$0, D0
            287DA | 1030 B800      : move.b  (A0,A3.l), D0
            287DE | 4E75           : rts
            287E0 | 7001           : moveq   #$1, D0
            287E2 | 4E75           : rts
            -->
        </script>
        <script state="off">
            <action>maincpu.mq@0428E = 70001030B8003540</action>
            <action>maincpu.mq@287D0 = 0000000000000000</action>
            <action>maincpu.mq@287D8 = 0000000000000000</action>
            <action>maincpu.mq@287E0 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="timer speed">
        <parameter>
            <item value="0x7fff">01 (slow)</item>
            <item value="0x0800">02       </item>
            <item value="0x0200">03       </item>
            <item value="0x0080">04       </item>
            <item value="0x0001">05 (fast)</item>
        </parameter>
        <script state="on">
            <action>maincpu.mw@2796 = 0C40</action> <!-- cmpi.w #$xx,D0 -->
        </script>
        <script state="change">
            <action>maincpu.mw@2798 = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@2796 = B06A002C</action>
        </script>
    </cheat>

    <cheat desc="unlock special test mode">
        <comment>reset the game (F3) to enter special test mode</comment>
        <script state="on">
            <action>maincpu.mb@17765 = BC</action>
        </script>
        <script state="off">
            <action>maincpu.mb@17765 = DA</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <comment>reset the game (F3) to enter sound test mode</comment>
        <script state="on">
            <action>maincpu.md@177B4 = 000287F0        </action>
            <action>maincpu.mq@287F0 = 41F9000C000043F9</action>
            <action>maincpu.mq@287F8 = 000FF00712001029</action>
            <action>maincpu.mq@28800 = FFFAB20067F60C00</action>
            <action>maincpu.mq@28808 = 00FB660253100C00</action>
            <action>maincpu.mq@28810 = 00F7660252100C00</action>
            <action>maincpu.mq@28818 = 00FD660404100010</action>
            <action>maincpu.mq@28820 = 0C0000FE66040610</action>
            <action>maincpu.mq@28828 = 00100C0000EF6602</action>
            <action>maincpu.mq@28830 = 12900C0000DF6604</action>
            <action>maincpu.mq@28838 = 12BC000160BE0000</action>
            <!--
            287F0 | 41F9 000C 0000 : lea     $c0000.l, A0 // sound code address
            287F6 | 43F9 000F F007 : lea     $ff007.l, A1 // sound latch address
            287FC | 1200           : move.b  D0, D1
            287FE | 1029 FFFA      : move.b  (-$6,A1), D0 // read input ($ff001)
            28802 | B200           : cmp.b   D0, D1
            28804 | 67F6           : beq     $287fc
            28806 | 0C00 00FB      : cmpi.b  #-$5, D0
            2880A | 6602           : bne     $2880e
            2880C | 5310           : subq.b  #1, (A0)     // decrease code -01
            2880E | 0C00 00F7      : cmpi.b  #-$9, D0
            28812 | 6602           : bne     $28816
            28814 | 5210           : addq.b  #1, (A0)     // increase code +01
            28816 | 0C00 00FD      : cmpi.b  #-$3, D0
            2881A | 6604           : bne     $28820
            2881C | 0410 0010      : subi.b  #$10, (A0)   // decrease code -10
            28820 | 0C00 00FE      : cmpi.b  #-$2, D0
            28824 | 6604           : bne     $2882a
            28826 | 0610 0010      : addi.b  #$10, (A0)   // increase code +10
            2882A | 0C00 00EF      : cmpi.b  #-$11, D0
            2882E | 6602           : bne     $28832
            28830 | 1290           : move.b  (A0), (A1)   // play sound
            28832 | 0C00 00DF      : cmpi.b  #-$21, D0
            28836 | 6604           : bne     $2883c
            28838 | 12BC 0001      : move.b  #$1, (A1)    // stop sound
            2883C | 60BE           : bra     $287fc
            -->
        </script>
        <script state="run">
            <output format="----- karate blazers 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="button 2 : stop sound"                      line="16" align="center" />
            <output format="----------------------------"               line="17" align="center" />
            <output format="&lt;&lt; sound code %02X &gt;&gt;"          line="19" align="center"  >
                <argument>maincpu.pb@C0000</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.md@177B4 = 00007576        </action>
            <action>maincpu.mq@287F0 = 0000000000000000</action>
            <action>maincpu.mq@287F8 = 0000000000000000</action>
            <action>maincpu.mq@28800 = 0000000000000000</action>
            <action>maincpu.mq@28808 = 0000000000000000</action>
            <action>maincpu.mq@28810 = 0000000000000000</action>
            <action>maincpu.mq@28818 = 0000000000000000</action>
            <action>maincpu.mq@28820 = 0000000000000000</action>
            <action>maincpu.mq@28828 = 0000000000000000</action>
            <action>maincpu.mq@28830 = 0000000000000000</action>
            <action>maincpu.mq@28838 = 0000000000000000</action>
        </script>
    </cheat>

</mamecheat>
karatblzu.xml

Code: Select all

<!-- Karate Blazers (US) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mb@4D6A = 60</action>
            <action>maincpu.mb@4E92 = 60</action>
        </script>
        <script state="off">
            <action>maincpu.mb@4D6A = 6C</action>
            <action>maincpu.mb@4E92 = 6C</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.mb@833B = 58</action>
            <action>maincpu.mb@8417 = 58</action>
        </script>
        <script state="off">
            <action>maincpu.mb@833B = 59</action>
            <action>maincpu.mb@8417 = 59</action>
        </script>
    </cheat>

    <cheat desc="attack speed up">
        <script state="on">
            <action>maincpu.mq@0428E = 4EB9000287D03540</action>
            <action>maincpu.mq@287D0 = 0C6A000100366608</action>
            <action>maincpu.mq@287D8 = 70001030B8004E75</action>
            <action>maincpu.mq@287E0 = 70014E7500000000</action>
            <!--
            287D0 | 0C6A 0001 0036 : cmpi.w  #$1, ($36,A2)
            287D6 | 6608           : bne     $287e0
            287D8 | 7000           : moveq   #$0, D0
            287DA | 1030 B800      : move.b  (A0,A3.l), D0
            287DE | 4E75           : rts
            287E0 | 7001           : moveq   #$1, D0
            287E2 | 4E75           : rts
            -->
        </script>
        <script state="off">
            <action>maincpu.mq@0428E = 70001030B8003540</action>
            <action>maincpu.mq@287D0 = 0000000000000000</action>
            <action>maincpu.mq@287D8 = 0000000000000000</action>
            <action>maincpu.mq@287E0 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="timer speed">
        <parameter>
            <item value="0x7fff">01 (slow)</item>
            <item value="0x0800">02       </item>
            <item value="0x0200">03       </item>
            <item value="0x0080">04       </item>
            <item value="0x0001">05 (fast)</item>
        </parameter>
        <script state="on">
            <action>maincpu.mw@2796 = 0C40</action> <!-- cmpi.w #$xx,D0 -->
        </script>
        <script state="change">
            <action>maincpu.mw@2798 = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@2796 = B06A002C</action>
        </script>
    </cheat>

    <cheat desc="unlock special test mode">
        <comment>reset the game (F3) to enter special test mode</comment>
        <script state="on">
            <action>maincpu.mb@17765 = BC</action>
        </script>
        <script state="off">
            <action>maincpu.mb@17765 = DA</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <comment>reset the game (F3) to enter sound test mode</comment>
        <script state="on">
            <action>maincpu.md@177B4 = 000287F0        </action>
            <action>maincpu.mq@287F0 = 41F9000C000043F9</action>
            <action>maincpu.mq@287F8 = 000FF00712001029</action>
            <action>maincpu.mq@28800 = FFFAB20067F60C00</action>
            <action>maincpu.mq@28808 = 00FB660253100C00</action>
            <action>maincpu.mq@28810 = 00F7660252100C00</action>
            <action>maincpu.mq@28818 = 00FD660404100010</action>
            <action>maincpu.mq@28820 = 0C0000FE66040610</action>
            <action>maincpu.mq@28828 = 00100C0000EF6602</action>
            <action>maincpu.mq@28830 = 12900C0000DF6604</action>
            <action>maincpu.mq@28838 = 12BC000160BE0000</action>
            <!--
            287F0 | 41F9 000C 0000 : lea     $c0000.l, A0 // sound code address
            287F6 | 43F9 000F F007 : lea     $ff007.l, A1 // sound latch address
            287FC | 1200           : move.b  D0, D1
            287FE | 1029 FFFA      : move.b  (-$6,A1), D0 // read input ($ff001)
            28802 | B200           : cmp.b   D0, D1
            28804 | 67F6           : beq     $287fc
            28806 | 0C00 00FB      : cmpi.b  #-$5, D0
            2880A | 6602           : bne     $2880e
            2880C | 5310           : subq.b  #1, (A0)     // decrease code -01
            2880E | 0C00 00F7      : cmpi.b  #-$9, D0
            28812 | 6602           : bne     $28816
            28814 | 5210           : addq.b  #1, (A0)     // increase code +01
            28816 | 0C00 00FD      : cmpi.b  #-$3, D0
            2881A | 6604           : bne     $28820
            2881C | 0410 0010      : subi.b  #$10, (A0)   // decrease code -10
            28820 | 0C00 00FE      : cmpi.b  #-$2, D0
            28824 | 6604           : bne     $2882a
            28826 | 0610 0010      : addi.b  #$10, (A0)   // increase code +10
            2882A | 0C00 00EF      : cmpi.b  #-$11, D0
            2882E | 6602           : bne     $28832
            28830 | 1290           : move.b  (A0), (A1)   // play sound
            28832 | 0C00 00DF      : cmpi.b  #-$21, D0
            28836 | 6604           : bne     $2883c
            28838 | 12BC 0001      : move.b  #$1, (A1)    // stop sound
            2883C | 60BE           : bra     $287fc
            -->
        </script>
        <script state="run">
            <output format="----- karate blazers 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="button 2 : stop sound"                      line="16" align="center" />
            <output format="----------------------------"               line="17" align="center" />
            <output format="&lt;&lt; sound code %02X &gt;&gt;"          line="19" align="center"  >
                <argument>maincpu.pb@C0000</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.md@177B4 = 00007576        </action>
            <action>maincpu.mq@287F0 = 0000000000000000</action>
            <action>maincpu.mq@287F8 = 0000000000000000</action>
            <action>maincpu.mq@28800 = 0000000000000000</action>
            <action>maincpu.mq@28808 = 0000000000000000</action>
            <action>maincpu.mq@28810 = 0000000000000000</action>
            <action>maincpu.mq@28818 = 0000000000000000</action>
            <action>maincpu.mq@28820 = 0000000000000000</action>
            <action>maincpu.mq@28828 = 0000000000000000</action>
            <action>maincpu.mq@28830 = 0000000000000000</action>
            <action>maincpu.mq@28838 = 0000000000000000</action>
        </script>
    </cheat>

</mamecheat>
karatblzj.xml

Code: Select all

<!-- Toushin Blazers (Japan, Tecmo license) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mb@4DF4 = 60</action>
            <action>maincpu.mb@4F1C = 60</action>
        </script>
        <script state="off">
            <action>maincpu.mb@4DF4 = 6C</action>
            <action>maincpu.mb@4F1C = 6C</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.mb@8979 = 58</action>
            <action>maincpu.mb@8A55 = 58</action>
        </script>
        <script state="off">
            <action>maincpu.mb@8979 = 59</action>
            <action>maincpu.mb@8A55 = 59</action>
        </script>
    </cheat>

    <cheat desc="attack speed up">
        <script state="on">
            <action>maincpu.mq@04348 = 4EB900028BA03540</action>
            <action>maincpu.mq@28BA0 = 0C6A000100366608</action>
            <action>maincpu.mq@28BA8 = 70001030B8004E75</action>
            <action>maincpu.mq@28BB0 = 70014E7500000000</action>
            <!--
            28BA0 | 0C6A 0001 0036 : cmpi.w  #$1, ($36,A2)
            28BA6 | 6608           : bne     $28bb0
            28BA8 | 7000           : moveq   #$0, D0
            28BAA | 1030 B800      : move.b  (A0,A3.l), D0
            28BAE | 4E75           : rts
            28BB0 | 7001           : moveq   #$1, D0
            28BB2 | 4E75           : rts
            -->
        </script>
        <script state="off">
            <action>maincpu.mq@04348 = 70001030B8003540</action>
            <action>maincpu.mq@28BA0 = 0000000000000000</action>
            <action>maincpu.mq@28BA8 = 0000000000000000</action>
            <action>maincpu.mq@28BB0 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="timer speed">
        <parameter>
            <item value="0x7fff">01 (slow)</item>
            <item value="0x0800">02       </item>
            <item value="0x0200">03       </item>
            <item value="0x0080">04       </item>
            <item value="0x0001">05 (fast)</item>
        </parameter>
        <script state="on">
            <action>maincpu.mw@283E = 0C40</action> <!-- cmpi.w #$xx,D0 -->
        </script>
        <script state="change">
            <action>maincpu.mw@2840 = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@283E = B06A002C</action>
        </script>
    </cheat>

    <cheat desc="unlock special test mode">
        <comment>reset the game (F3) to enter special test mode</comment>
        <script state="on">
            <action>maincpu.mb@17DCF = 26</action>
        </script>
        <script state="off">
            <action>maincpu.mb@17DCF = 44</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <comment>reset the game (F3) to enter sound test mode</comment>
        <script state="on">
            <action>maincpu.md@17E1E = 00028BC0        </action>
            <action>maincpu.mq@28BC0 = 41F9000C000043F9</action>
            <action>maincpu.mq@28BC8 = 000FF00712001029</action>
            <action>maincpu.mq@28BD0 = FFFAB20067F60C00</action>
            <action>maincpu.mq@28BD8 = 00FB660253100C00</action>
            <action>maincpu.mq@28BE0 = 00F7660252100C00</action>
            <action>maincpu.mq@28BE8 = 00FD660404100010</action>
            <action>maincpu.mq@28BF0 = 0C0000FE66040610</action>
            <action>maincpu.mq@28BF8 = 00100C0000EF6602</action>
            <action>maincpu.mq@28C00 = 12900C0000DF6604</action>
            <action>maincpu.mq@28C08 = 12BC000160BE0000</action>
            <!--
            28BC0 | 41F9 000C 0000 : lea     $c0000.l, A0 // sound code address
            28BC6 | 43F9 000F F007 : lea     $ff007.l, A1 // sound latch address
            28BCC | 1200           : move.b  D0, D1
            28BCE | 1029 FFFA      : move.b  (-$6,A1), D0 // read input ($ff001)
            28BD2 | B200           : cmp.b   D0, D1
            28BD4 | 67F6           : beq     $28bcc
            28BD6 | 0C00 00FB      : cmpi.b  #-$5, D0
            28BDA | 6602           : bne     $28bde
            28BDC | 5310           : subq.b  #1, (A0)     // decrease code -01
            28BDE | 0C00 00F7      : cmpi.b  #-$9, D0
            28BE2 | 6602           : bne     $28be6
            28BE4 | 5210           : addq.b  #1, (A0)     // increase code +01
            28BE6 | 0C00 00FD      : cmpi.b  #-$3, D0
            28BEA | 6604           : bne     $28bf0
            28BEC | 0410 0010      : subi.b  #$10, (A0)   // decrease code -10
            28BF0 | 0C00 00FE      : cmpi.b  #-$2, D0
            28BF4 | 6604           : bne     $28bfa
            28BF6 | 0610 0010      : addi.b  #$10, (A0)   // increase code +10
            28BFA | 0C00 00EF      : cmpi.b  #-$11, D0
            28BFE | 6602           : bne     $28c02
            28C00 | 1290           : move.b  (A0), (A1)   // play sound
            28C02 | 0C00 00DF      : cmpi.b  #-$21, D0
            28C06 | 6604           : bne     $28c0c
            28C08 | 12BC 0001      : move.b  #$1, (A1)    // stop sound
            28C0C | 60BE           : bra     $28bcc
            -->
        </script>
        <script state="run">
            <output format="----- toushin blazers 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="button 2 : stop sound"                       line="16" align="center" />
            <output format="----------------------------"                line="17" align="center" />
            <output format="&lt;&lt; sound code %02X &gt;&gt;"           line="19" align="center"  >
                <argument>maincpu.pb@C0000</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.md@17E1E = 00007BB6        </action>
            <action>maincpu.mq@28BC0 = 0000000000000000</action>
            <action>maincpu.mq@28BC8 = 0000000000000000</action>
            <action>maincpu.mq@28BD0 = 0000000000000000</action>
            <action>maincpu.mq@28BD8 = 0000000000000000</action>
            <action>maincpu.mq@28BE0 = 0000000000000000</action>
            <action>maincpu.mq@28BE8 = 0000000000000000</action>
            <action>maincpu.mq@28BF0 = 0000000000000000</action>
            <action>maincpu.mq@28BF8 = 0000000000000000</action>
            <action>maincpu.mq@28C00 = 0000000000000000</action>
            <action>maincpu.mq@28C08 = 0000000000000000</action>
        </script>
    </cheat>

</mamecheat>
karatblzbl.xml

Code: Select all

<!-- Karate Blazers (bootleg with Street Smart sound hardware) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mb@4DF4 = 60</action>
            <action>maincpu.mb@4F1C = 60</action>
        </script>
        <script state="off">
            <action>maincpu.mb@4DF4 = 6C</action>
            <action>maincpu.mb@4F1C = 6C</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.mb@8979 = 58</action>
            <action>maincpu.mb@8A55 = 58</action>
        </script>
        <script state="off">
            <action>maincpu.mb@8979 = 59</action>
            <action>maincpu.mb@8A55 = 59</action>
        </script>
    </cheat>

    <cheat desc="attack speed up">
        <script state="on">
            <action>maincpu.mq@04348 = 4EB900028F003540</action>
            <action>maincpu.mq@28F00 = 0C6A000100366608</action>
            <action>maincpu.mq@28F08 = 70001030B8004E75</action>
            <action>maincpu.mq@28F10 = 70014E7500000000</action>
            <!--
            28F00 | 0C6A 0001 0036 : cmpi.w  #$1, ($36,A2)
            28F06 | 6608           : bne     $28f10
            28F08 | 7000           : moveq   #$0, D0
            28F0A | 1030 B800      : move.b  (A0,A3.l), D0
            28F0E | 4E75           : rts
            28F10 | 7001           : moveq   #$1, D0
            28F12 | 4E75           : rts
            -->
        </script>
        <script state="off">
            <action>maincpu.mq@04348 = 70001030B8003540</action>
            <action>maincpu.mq@28F00 = 0000000000000000</action>
            <action>maincpu.mq@28F08 = 0000000000000000</action>
            <action>maincpu.mq@28F10 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="timer speed">
        <parameter>
            <item value="0x7fff">01 (slow)</item>
            <item value="0x0800">02       </item>
            <item value="0x0200">03       </item>
            <item value="0x0080">04       </item>
            <item value="0x0001">05 (fast)</item>
        </parameter>
        <script state="on">
            <action>maincpu.mw@283E = 0C40</action> <!-- cmpi.w #$xx,D0 -->
        </script>
        <script state="change">
            <action>maincpu.mw@2840 = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@283E = B06A002C</action>
        </script>
    </cheat>

    <cheat desc="unlock special test mode">
        <comment>reset the game (F3) to enter special test mode</comment>
        <script state="on">
            <action>maincpu.mb@17DCF = 26</action>
        </script>
        <script state="off">
            <action>maincpu.mb@17DCF = 44</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <comment>reset the game (F3) to enter sound test mode</comment>
        <script state="on">
            <action>maincpu.md@17E1E = 00028F20        </action>
            <action>maincpu.mq@28F20 = 41F9000C000043F9</action>
            <action>maincpu.mq@28F28 = 000FF00712001029</action>
            <action>maincpu.mq@28F30 = FFFAB20067F60C00</action>
            <action>maincpu.mq@28F38 = 00FB660253100C00</action>
            <action>maincpu.mq@28F40 = 00F7660252100C00</action>
            <action>maincpu.mq@28F48 = 00FD660404100010</action>
            <action>maincpu.mq@28F50 = 0C0000FE66040610</action>
            <action>maincpu.mq@28F58 = 00100C0000EF6602</action>
            <action>maincpu.mq@28F60 = 12900C0000DF6604</action>
            <action>maincpu.mq@28F68 = 12BC000160BE0000</action>
            <!--
            28F20 | 41F9 000C 0000 : lea     $c0000.l, A0 // sound code address
            28F26 | 43F9 000F F007 : lea     $ff007.l, A1 // sound latch address
            28F2C | 1200           : move.b  D0, D1
            28F2E | 1029 FFFA      : move.b  (-$6,A1), D0 // read input ($ff001)
            28F32 | B200           : cmp.b   D0, D1
            28F34 | 67F6           : beq     $28f2c
            28F36 | 0C00 00FB      : cmpi.b  #-$5, D0
            28F3A | 6602           : bne     $28f3e
            28F3C | 5310           : subq.b  #1, (A0)     // decrease code -01
            28F3E | 0C00 00F7      : cmpi.b  #-$9, D0
            28F42 | 6602           : bne     $28f46
            28F44 | 5210           : addq.b  #1, (A0)     // increase code +01
            28F46 | 0C00 00FD      : cmpi.b  #-$3, D0
            28F4A | 6604           : bne     $28f50
            28F4C | 0410 0010      : subi.b  #$10, (A0)   // decrease code -10
            28F50 | 0C00 00FE      : cmpi.b  #-$2, D0
            28F54 | 6604           : bne     $28f5a
            28F56 | 0610 0010      : addi.b  #$10, (A0)   // increase code +10
            28F5A | 0C00 00EF      : cmpi.b  #-$11, D0
            28F5E | 6602           : bne     $28f62
            28F60 | 1290           : move.b  (A0), (A1)   // play sound
            28F62 | 0C00 00DF      : cmpi.b  #-$21, D0
            28F66 | 6604           : bne     $28f6c
            28F68 | 12BC 0001      : move.b  #$1, (A1)    // stop sound
            28F6C | 60BE           : bra     $28f2c
            -->
            <action>audiocpu.md@097A = 00C680CD        </action>
            <action>audiocpu.mq@C680 = D30F2001FEF8003A</action>
            <action>audiocpu.mq@C688 = 80D3803E0091CD80</action>
            <action>audiocpu.mq@C690 = AF470000C30091CD</action>
            <action>audiocpu.mq@C698 = F14632013EF11532</action>
            <action>audiocpu.mq@C6A0 = FFFFFFFFFFFFC978</action>
            <!--
            C680 | 3A 00 F8 : ld   a,($F800) // read sound code from maincpu
            C683 | FE 01    : cp   $01
            C685 | 20 0F    : jr   nz,$C696
            C687 | D3 80    : out  ($80),a   // reset sample
            C689 | CD 91 00 : call $0091
            C68C | 3E 80    : ld   a,$80     // enable sample
            C68E | D3 80    : out  ($80),a
            C690 | CD 91 00 : call $0091
            C693 | C3 00 00 : jp   $0000     // reset soundcpu
            C696 | 47       : ld   b,a
            C697 | AF       : xor  a         // initialize sound flags
            C698 | 32 15 F1 : ld   ($F115),a
            C69B | 3E 01    : ld   a,$01
            C69D | 32 46 F1 : ld   ($F146),a
            C6A0 | 78       : ld   a,b
            C6A1 | C9       : ret
            -->
        </script>
        <script state="run">
            <output format="----- karate blazers 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="button 2 : stop sound"                      line="16" align="center" />
            <output format="----------------------------"               line="17" align="center" />
            <output format="&lt;&lt; sound code %02X &gt;&gt;"          line="19" align="center"  >
                <argument>maincpu.pb@C0000</argument>
            </output>
        </script>
        <script state="off">
            <action> maincpu.md@17E1E = 00007BB6        </action>
            <action> maincpu.mq@28F20 = 0000000000000000</action>
            <action> maincpu.mq@28F28 = 0000000000000000</action>
            <action> maincpu.mq@28F30 = 0000000000000000</action>
            <action> maincpu.mq@28F38 = 0000000000000000</action>
            <action> maincpu.mq@28F40 = 0000000000000000</action>
            <action> maincpu.mq@28F48 = 0000000000000000</action>
            <action> maincpu.mq@28F50 = 0000000000000000</action>
            <action> maincpu.mq@28F58 = 0000000000000000</action>
            <action> maincpu.mq@28F60 = 0000000000000000</action>
            <action> maincpu.mq@28F68 = 0000000000000000</action>
            <action>audiocpu.md@0097A = 00F8003A        </action>
            <action>audiocpu.mq@0C680 = FFFFFFFFFFFFFFFF</action>
            <action>audiocpu.mq@0C688 = FFFFFFFFFFFFFFFF</action>
            <action>audiocpu.mq@0C690 = FFFFFFFFFFFFFFFF</action>
            <action>audiocpu.mq@0C698 = FFFFFFFFFFFFFFFF</action>
            <action>audiocpu.mq@0C6A0 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

</mamecheat>
karatblzbl has different sound hardware based on Street Smart. So "sound enable" and "sound stop" require custom routine.
Fortunately, I have already created sound test for streetsm. It seems to be no problem to copy from it directly.
jman

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

[karatblz]+ Karate Blazers/Toushin Blazers

Post by jman »

karatblz.xml

Code: Select all

<!-- Karate Blazers (World, set 1) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mb@4DF4 = 60</action>
            <action>maincpu.mb@4F1C = 60</action>
        </script>
        <script state="off">
            <action>maincpu.mb@4DF4 = 6C</action>
            <action>maincpu.mb@4F1C = 6C</action>
        </script>
    </cheat>

    <cheat desc="rapid fire">
        <script state="on">
            <action>maincpu.mb@8979 = 58</action>
            <action>maincpu.mb@8A55 = 58</action>
        </script>
        <script state="off">
            <action>maincpu.mb@8979 = 59</action>
            <action>maincpu.mb@8A55 = 59</action>
        </script>
    </cheat>

    <cheat desc="attack speed up">
        <script state="on">
            <action>maincpu.mq@04348 = 4EB900028BA03540</action>
            <action>maincpu.mq@28BA0 = 0C6A000100366608</action>
            <action>maincpu.mq@28BA8 = 70001030B8004E75</action>
            <action>maincpu.mq@28BB0 = 70014E7500000000</action>
            <!--
            28BA0 | 0C6A 0001 0036 : cmpi.w  #$1, ($36,A2)
            28BA6 | 6608           : bne     $28bb0
            28BA8 | 7000           : moveq   #$0, D0
            28BAA | 1030 B800      : move.b  (A0,A3.l), D0
            28BAE | 4E75           : rts
            28BB0 | 7001           : moveq   #$1, D0
            28BB2 | 4E75           : rts
            -->
        </script>
        <script state="off">
            <action>maincpu.mq@04348 = 70001030B8003540</action>
            <action>maincpu.mq@28BA0 = 0000000000000000</action>
            <action>maincpu.mq@28BA8 = 0000000000000000</action>
            <action>maincpu.mq@28BB0 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="timer speed">
        <parameter>
            <item value="0x0c407fff">01 (slow)</item>
            <item value="0x0c400800">02       </item>
            <item value="0x0c400200">03       </item>
            <item value="0x0c400080">04       </item>
            <item value="0x0c400001">05 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.md@283E = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@283E = B06A002C</action>
        </script>
    </cheat>

    <cheat desc="auto damage">
        <script state="on">
            <action>maincpu.md@0961C = 00028C68        </action>
            <action>maincpu.md@09E92 = 00028C68        </action>
            <action>maincpu.md@0A468 = 00028C68        </action>
            <action>maincpu.md@0ABE8 = 00028C68        </action>
            <action>maincpu.md@0B372 = 00028C68        </action>
            <action>maincpu.md@0BB62 = 00028C68        </action>
            <action>maincpu.md@0C33C = 00028C70        </action>
            <action>maincpu.md@0C6F4 = 00028C68        </action>
            <action>maincpu.md@0CDAA = 00028C68        </action>
            <action>maincpu.md@0D4BC = 00028C68        </action>
            <action>maincpu.md@0DBD4 = 00028C70        </action>
            <action>maincpu.md@0E1EE = 00028C70        </action>
            <action>maincpu.mq@28C10 = 48E73C004A40664A</action>
            <action>maincpu.mq@28C18 = 2439000C5970362A</action>
            <action>maincpu.mq@28C20 = 000CB443653C4842</action>
            <action>maincpu.mq@28C28 = B443643638024842</action>
            <action>maincpu.mq@28C30 = 3A029A44E24D9445</action>
            <action>maincpu.mq@28C38 = B4436408006A0800</action>
            <action>maincpu.mq@28C40 = 00146006026AF7FF</action>
            <action>maincpu.mq@28C48 = 0014566A0038516A</action>
            <action>maincpu.mq@28C50 = 00306E0C426A0030</action>
            <action>maincpu.mq@28C58 = 257C000F8080004E</action>
            <action>maincpu.mq@28C60 = 70034CDF003C4E75</action>
            <action>maincpu.mq@28C68 = 4EB8557E61A24E75</action>
            <action>maincpu.mq@28C70 = 4EB85AFA619A4E75</action>
            <!--
            28C10 | 48E7 3C00           : movem.l D2-D5, -(A7)
            28C14 | 4A40                : tst.w   D0
            28C16 | 664A                : bne     $28c62
            28C18 | 2439 000C 5970      : move.l  $c5970.l, D2
            28C1E | 362A 000C           : move.w  ($c,A2), D3       // check x position
            28C22 | B443                : cmp.w   D3, D2
            28C24 | 653C                : bcs     $28c62
            28C26 | 4842                : swap    D2
            28C28 | B443                : cmp.w   D3, D2
            28C2A | 6436                : bcc     $28c62
            28C2C | 3802                : move.w  D2, D4
            28C2E | 4842                : swap    D2
            28C30 | 3A02                : move.w  D2, D5
            28C32 | 9A44                : sub.w   D4, D5
            28C34 | E24D                : lsr.w   #1, D5
            28C36 | 9445                : sub.w   D5, D2
            28C38 | B443                : cmp.w   D3, D2
            28C3A | 6408                : bcc     $28c44
            28C3C | 006A 0800 0014      : ori.w   #$800, ($14,A2)
            28C42 | 6006                : bra     $28c4a
            28C44 | 026A F7FF 0014      : andi.w  #$f7ff, ($14,A2)
            28C4A | 566A 0038           : addq.w  #3, ($38,A2)
            28C4E | 516A 0030           : subq.w  #8, ($30,A2)
            28C52 | 6E0C                : bgt     $28c60
            28C54 | 426A 0030           : clr.w   ($30,A2)
            28C58 | 257C 000F 8080 004E : move.l  #$f8080, ($4e,A2)
            28C60 | 7003                : moveq   #$3, D0
            28C62 | 4CDF 003C           : movem.l (A7)+, D2-D5
            28C66 | 4E75                : rts
            28C68 | 4EB8 557E           : jsr     $557e.w
            28C6C | 61A2                : bsr     $28c10
            28C6E | 4E75                : rts
            28C70 | 4EB8 5AFA           : jsr     $5afa.w
            28C74 | 619A                : bsr     $28c10
            28C76 | 4E75                : rts
            -->
        </script>
        <script state="off">
            <action>maincpu.md@0961C = 0000557E        </action>
            <action>maincpu.md@09E92 = 0000557E        </action>
            <action>maincpu.md@0A468 = 0000557E        </action>
            <action>maincpu.md@0ABE8 = 0000557E        </action>
            <action>maincpu.md@0B372 = 0000557E        </action>
            <action>maincpu.md@0BB62 = 0000557E        </action>
            <action>maincpu.md@0C33C = 00005AFA        </action>
            <action>maincpu.md@0C6F4 = 0000557E        </action>
            <action>maincpu.md@0CDAA = 0000557E        </action>
            <action>maincpu.md@0D4BC = 0000557E        </action>
            <action>maincpu.md@0DBD4 = 00005AFA        </action>
            <action>maincpu.md@0E1EE = 00005AFA        </action>
            <action>maincpu.mq@28C10 = 0000000000000000</action>
            <action>maincpu.mq@28C18 = 0000000000000000</action>
            <action>maincpu.mq@28C20 = 0000000000000000</action>
            <action>maincpu.mq@28C28 = 0000000000000000</action>
            <action>maincpu.mq@28C30 = 0000000000000000</action>
            <action>maincpu.mq@28C38 = 0000000000000000</action>
            <action>maincpu.mq@28C40 = 0000000000000000</action>
            <action>maincpu.mq@28C48 = 0000000000000000</action>
            <action>maincpu.mq@28C50 = 0000000000000000</action>
            <action>maincpu.mq@28C58 = 0000000000000000</action>
            <action>maincpu.mq@28C60 = 0000000000000000</action>
            <action>maincpu.mq@28C68 = 0000000000000000</action>
            <action>maincpu.mq@28C70 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="unlock special test mode">
        <comment>reset the game (F3) to enter special test mode</comment>
        <script state="on">
            <action>maincpu.mb@17DCF = 26</action>
        </script>
        <script state="off">
            <action>maincpu.mb@17DCF = 44</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <comment>reset the game (F3) to enter sound test mode</comment>
        <script state="on">
            <action>maincpu.md@17E1E = 00028BC0        </action>
            <action>maincpu.mq@28BC0 = 41F9000C000043F9</action>
            <action>maincpu.mq@28BC8 = 000FF00712001029</action>
            <action>maincpu.mq@28BD0 = FFFAB20067F60C00</action>
            <action>maincpu.mq@28BD8 = 00FB660253100C00</action>
            <action>maincpu.mq@28BE0 = 00F7660252100C00</action>
            <action>maincpu.mq@28BE8 = 00FD660404100010</action>
            <action>maincpu.mq@28BF0 = 0C0000FE66040610</action>
            <action>maincpu.mq@28BF8 = 00100C0000EF6602</action>
            <action>maincpu.mq@28C00 = 12900C0000DF6604</action>
            <action>maincpu.mq@28C08 = 12BC000160BE0000</action>
            <!--
            28BC0 | 41F9 000C 0000 : lea     $c0000.l, A0 // sound code address
            28BC6 | 43F9 000F F007 : lea     $ff007.l, A1 // sound latch address
            28BCC | 1200           : move.b  D0, D1
            28BCE | 1029 FFFA      : move.b  (-$6,A1), D0 // read input ($ff001)
            28BD2 | B200           : cmp.b   D0, D1
            28BD4 | 67F6           : beq     $28bcc
            28BD6 | 0C00 00FB      : cmpi.b  #-$5, D0
            28BDA | 6602           : bne     $28bde
            28BDC | 5310           : subq.b  #1, (A0)     // decrease code -01
            28BDE | 0C00 00F7      : cmpi.b  #-$9, D0
            28BE2 | 6602           : bne     $28be6
            28BE4 | 5210           : addq.b  #1, (A0)     // increase code +01
            28BE6 | 0C00 00FD      : cmpi.b  #-$3, D0
            28BEA | 6604           : bne     $28bf0
            28BEC | 0410 0010      : subi.b  #$10, (A0)   // decrease code -10
            28BF0 | 0C00 00FE      : cmpi.b  #-$2, D0
            28BF4 | 6604           : bne     $28bfa
            28BF6 | 0610 0010      : addi.b  #$10, (A0)   // increase code +10
            28BFA | 0C00 00EF      : cmpi.b  #-$11, D0
            28BFE | 6602           : bne     $28c02
            28C00 | 1290           : move.b  (A0), (A1)   // play sound
            28C02 | 0C00 00DF      : cmpi.b  #-$21, D0
            28C06 | 6604           : bne     $28c0c
            28C08 | 12BC 0001      : move.b  #$1, (A1)    // stop sound
            28C0C | 60BE           : bra     $28bcc
            -->
        </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="button 2 : stop sound"             line="16" align="center" />
            <output format="----------------------------"      line="17" align="center" />
            <output format="&lt;&lt; sound code %02X &gt;&gt;" line="19" align="center"  >
                <argument>maincpu.pb@C0000</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.md@17E1E = 00007BB6        </action>
            <action>maincpu.mq@28BC0 = 0000000000000000</action>
            <action>maincpu.mq@28BC8 = 0000000000000000</action>
            <action>maincpu.mq@28BD0 = 0000000000000000</action>
            <action>maincpu.mq@28BD8 = 0000000000000000</action>
            <action>maincpu.mq@28BE0 = 0000000000000000</action>
            <action>maincpu.mq@28BE8 = 0000000000000000</action>
            <action>maincpu.mq@28BF0 = 0000000000000000</action>
            <action>maincpu.mq@28BF8 = 0000000000000000</action>
            <action>maincpu.mq@28C00 = 0000000000000000</action>
            <action>maincpu.mq@28C08 = 0000000000000000</action>
        </script>
    </cheat>

</mamecheat>
karatblza.xml

Code: Select all

<!-- Karate Blazers (World, set 2) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mb@5E70 = 60</action>
            <action>maincpu.mb@5EDC = 60</action>
        </script>
        <script state="off">
            <action>maincpu.mb@5E70 = 6C</action>
            <action>maincpu.mb@5EDC = 6C</action>
        </script>
    </cheat>

    <cheat desc="rapid fire">
        <script state="on">
            <action>maincpu.mb@56D1 = 58</action>
            <action>maincpu.mb@57A7 = 58</action>
        </script>
        <script state="off">
            <action>maincpu.mb@56D1 = 59</action>
            <action>maincpu.mb@57A7 = 59</action>
        </script>
    </cheat>

    <cheat desc="attack speed up">
        <script state="on">
            <action>maincpu.mq@04448 = 4EB900028B303540</action>
            <action>maincpu.mq@28B30 = 0C6A000100366608</action>
            <action>maincpu.mq@28B38 = 7000103018004E75</action>
            <action>maincpu.mq@28B40 = 70014E7500000000</action>
            <!--
            28B30 | 0C6A 0001 0036 : cmpi.w  #$1, ($36,A2)
            28B36 | 6608           : bne     $28b40
            28B38 | 7000           : moveq   #$0, D0
            28B3A | 1030 1800      : move.b  (A0,D1.l), D0
            28B3E | 4E75           : rts
            28B40 | 7001           : moveq   #$1, D0
            28B42 | 4E75           : rts
            -->
        </script>
        <script state="off">
            <action>maincpu.mq@04448 = 7000103018003540</action>
            <action>maincpu.mq@28B30 = 0000000000000000</action>
            <action>maincpu.mq@28B38 = 0000000000000000</action>
            <action>maincpu.mq@28B40 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="timer speed">
        <parameter>
            <item value="0x0c407fff">01 (slow)</item>
            <item value="0x0c400800">02       </item>
            <item value="0x0c400200">03       </item>
            <item value="0x0c400080">04       </item>
            <item value="0x0c400001">05 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.md@2754 = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@2754 = B06A002C</action>
        </script>
    </cheat>

    <cheat desc="auto damage">
        <script state="on">
            <action>maincpu.md@0839E = 00028BF8        </action>
            <action>maincpu.md@0894E = 00028BF8        </action>
            <action>maincpu.md@0909C = 00028BF8        </action>
            <action>maincpu.md@097FC = 00028BF8        </action>
            <action>maincpu.md@09FCC = 00028C00        </action>
            <action>maincpu.md@0A380 = 00028BF8        </action>
            <action>maincpu.md@0A9FC = 00028BF8        </action>
            <action>maincpu.md@0B0C8 = 00028BF8        </action>
            <action>maincpu.md@0B7A4 = 00028C00        </action>
            <action>maincpu.md@0BD7E = 00028C00        </action>
            <action>maincpu.md@0CA42 = 00028BF8        </action>
            <action>maincpu.md@0CBAA = 00028BF8        </action>
            <action>maincpu.mq@28BA0 = 48E73C004A40664A</action>
            <action>maincpu.mq@28BA8 = 2439000C5970362A</action>
            <action>maincpu.mq@28BB0 = 000CB443653C4842</action>
            <action>maincpu.mq@28BB8 = B443643638024842</action>
            <action>maincpu.mq@28BC0 = 3A029A44E24D9445</action>
            <action>maincpu.mq@28BC8 = B4436408006A0800</action>
            <action>maincpu.mq@28BD0 = 00146006026AF7FF</action>
            <action>maincpu.mq@28BD8 = 0014566A0038516A</action>
            <action>maincpu.mq@28BE0 = 00306E0C426A0030</action>
            <action>maincpu.mq@28BE8 = 257C000F8080004E</action>
            <action>maincpu.mq@28BF0 = 70034CDF003C4E75</action>
            <action>maincpu.mq@28BF8 = 4EB862D061A24E75</action>
            <action>maincpu.mq@28C00 = 4EB86714619A4E75</action>
            <!--
            28BA0 | 48E7 3C00           : movem.l D2-D5, -(A7)
            28BA4 | 4A40                : tst.w   D0
            28BA6 | 664A                : bne     $28bf2
            28BA8 | 2439 000C 5970      : move.l  $c5970.l, D2
            28BAE | 362A 000C           : move.w  ($c,A2), D3       // check x position
            28BB2 | B443                : cmp.w   D3, D2
            28BB4 | 653C                : bcs     $28bf2
            28BB6 | 4842                : swap    D2
            28BB8 | B443                : cmp.w   D3, D2
            28BBA | 6436                : bcc     $28bf2
            28BBC | 3802                : move.w  D2, D4
            28BBE | 4842                : swap    D2
            28BC0 | 3A02                : move.w  D2, D5
            28BC2 | 9A44                : sub.w   D4, D5
            28BC4 | E24D                : lsr.w   #1, D5
            28BC6 | 9445                : sub.w   D5, D2
            28BC8 | B443                : cmp.w   D3, D2
            28BCA | 6408                : bcc     $28bd4
            28BCC | 006A 0800 0014      : ori.w   #$800, ($14,A2)
            28BD2 | 6006                : bra     $28bda
            28BD4 | 026A F7FF 0014      : andi.w  #$f7ff, ($14,A2)
            28BDA | 566A 0038           : addq.w  #3, ($38,A2)
            28BDE | 516A 0030           : subq.w  #8, ($30,A2)
            28BE2 | 6E0C                : bgt     $28bf0
            28BE4 | 426A 0030           : clr.w   ($30,A2)
            28BE8 | 257C 000F 8080 004E : move.l  #$f8080, ($4e,A2)
            28BF0 | 7003                : moveq   #$3, D0
            28BF2 | 4CDF 003C           : movem.l (A7)+, D2-D5
            28BF6 | 4E75                : rts
            28BF8 | 4EB8 62D0           : jsr     $62d0.w
            28BFC | 61A2                : bsr     $28ba0
            28BFE | 4E75                : rts
            28C00 | 4EB8 6714           : jsr     $6714.w
            28C04 | 619A                : bsr     $28ba0
            28C06 | 4E75                : rts
            -->
        </script>
        <script state="off">
            <action>maincpu.md@0839E = 000062D0        </action>
            <action>maincpu.md@0894E = 000062D0        </action>
            <action>maincpu.md@0909C = 000062D0        </action>
            <action>maincpu.md@097FC = 000062D0        </action>
            <action>maincpu.md@09FCC = 00006714        </action>
            <action>maincpu.md@0A380 = 000062D0        </action>
            <action>maincpu.md@0A9FC = 000062D0        </action>
            <action>maincpu.md@0B0C8 = 000062D0        </action>
            <action>maincpu.md@0B7A4 = 00006714        </action>
            <action>maincpu.md@0BD7E = 00006714        </action>
            <action>maincpu.md@0CA42 = 000062D0        </action>
            <action>maincpu.md@0CBAA = 000062D0        </action>
            <action>maincpu.mq@28BA0 = 0000000000000000</action>
            <action>maincpu.mq@28BA8 = 0000000000000000</action>
            <action>maincpu.mq@28BB0 = 0000000000000000</action>
            <action>maincpu.mq@28BB8 = 0000000000000000</action>
            <action>maincpu.mq@28BC0 = 0000000000000000</action>
            <action>maincpu.mq@28BC8 = 0000000000000000</action>
            <action>maincpu.mq@28BD0 = 0000000000000000</action>
            <action>maincpu.mq@28BD8 = 0000000000000000</action>
            <action>maincpu.mq@28BE0 = 0000000000000000</action>
            <action>maincpu.mq@28BE8 = 0000000000000000</action>
            <action>maincpu.mq@28BF0 = 0000000000000000</action>
            <action>maincpu.mq@28BF8 = 0000000000000000</action>
            <action>maincpu.mq@28C00 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="unlock special test mode">
        <comment>reset the game (F3) to enter special test mode</comment>
        <script state="on">
            <action>maincpu.mb@15925 = 7C</action>
        </script>
        <script state="off">
            <action>maincpu.mb@15925 = 9A</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <comment>reset the game (F3) to enter sound test mode</comment>
        <script state="on">
            <action>maincpu.md@15974 = 00028B50        </action>
            <action>maincpu.mq@28B50 = 41F9000C000043F9</action>
            <action>maincpu.mq@28B58 = 000FF00712001029</action>
            <action>maincpu.mq@28B60 = FFFAB20067F60C00</action>
            <action>maincpu.mq@28B68 = 00FB660253100C00</action>
            <action>maincpu.mq@28B70 = 00F7660252100C00</action>
            <action>maincpu.mq@28B78 = 00FD660404100010</action>
            <action>maincpu.mq@28B80 = 0C0000FE66040610</action>
            <action>maincpu.mq@28B88 = 00100C0000EF6602</action>
            <action>maincpu.mq@28B90 = 12900C0000DF6604</action>
            <action>maincpu.mq@28B98 = 12BC000160BE0000</action>
            <!--
            28B50 | 41F9 000C 0000 : lea     $c0000.l, A0 // sound code address
            28B56 | 43F9 000F F007 : lea     $ff007.l, A1 // sound latch address
            28B5C | 1200           : move.b  D0, D1
            28B5E | 1029 FFFA      : move.b  (-$6,A1), D0 // read input ($ff001)
            28B62 | B200           : cmp.b   D0, D1
            28B64 | 67F6           : beq     $28b5c
            28B66 | 0C00 00FB      : cmpi.b  #-$5, D0
            28B6A | 6602           : bne     $28b6e
            28B6C | 5310           : subq.b  #1, (A0)     // decrease code -01
            28B6E | 0C00 00F7      : cmpi.b  #-$9, D0
            28B72 | 6602           : bne     $28b76
            28B74 | 5210           : addq.b  #1, (A0)     // increase code +01
            28B76 | 0C00 00FD      : cmpi.b  #-$3, D0
            28B7A | 6604           : bne     $28b80
            28B7C | 0410 0010      : subi.b  #$10, (A0)   // decrease code -10
            28B80 | 0C00 00FE      : cmpi.b  #-$2, D0
            28B84 | 6604           : bne     $28b8a
            28B86 | 0610 0010      : addi.b  #$10, (A0)   // increase code +10
            28B8A | 0C00 00EF      : cmpi.b  #-$11, D0
            28B8E | 6602           : bne     $28b92
            28B90 | 1290           : move.b  (A0), (A1)   // play sound
            28B92 | 0C00 00DF      : cmpi.b  #-$21, D0
            28B96 | 6604           : bne     $28b9c
            28B98 | 12BC 0001      : move.b  #$1, (A1)    // stop sound
            28B9C | 60BE           : bra     $28b5c
            -->
        </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="button 2 : stop sound"             line="16" align="center" />
            <output format="----------------------------"      line="17" align="center" />
            <output format="&lt;&lt; sound code %02X &gt;&gt;" line="19" align="center"  >
                <argument>maincpu.pb@C0000</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.md@15974 = 0000422A        </action>
            <action>maincpu.mq@28B50 = 0000000000000000</action>
            <action>maincpu.mq@28B58 = 0000000000000000</action>
            <action>maincpu.mq@28B60 = 0000000000000000</action>
            <action>maincpu.mq@28B68 = 0000000000000000</action>
            <action>maincpu.mq@28B70 = 0000000000000000</action>
            <action>maincpu.mq@28B78 = 0000000000000000</action>
            <action>maincpu.mq@28B80 = 0000000000000000</action>
            <action>maincpu.mq@28B88 = 0000000000000000</action>
            <action>maincpu.mq@28B90 = 0000000000000000</action>
            <action>maincpu.mq@28B98 = 0000000000000000</action>
        </script>
    </cheat>

</mamecheat>
karatblzt.xml

Code: Select all

<!-- Karate Blazers (World, Tecmo license) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mb@4D6A = 60</action>
            <action>maincpu.mb@4E92 = 60</action>
        </script>
        <script state="off">
            <action>maincpu.mb@4D6A = 6C</action>
            <action>maincpu.mb@4E92 = 6C</action>
        </script>
    </cheat>

    <cheat desc="rapid fire">
        <script state="on">
            <action>maincpu.mb@833B = 58</action>
            <action>maincpu.mb@8417 = 58</action>
        </script>
        <script state="off">
            <action>maincpu.mb@833B = 59</action>
            <action>maincpu.mb@8417 = 59</action>
        </script>
    </cheat>

    <cheat desc="attack speed up">
        <script state="on">
            <action>maincpu.mq@0428E = 4EB9000287D03540</action>
            <action>maincpu.mq@287D0 = 0C6A000100366608</action>
            <action>maincpu.mq@287D8 = 70001030B8004E75</action>
            <action>maincpu.mq@287E0 = 70014E7500000000</action>
            <!--
            287D0 | 0C6A 0001 0036 : cmpi.w  #$1, ($36,A2)
            287D6 | 6608           : bne     $287e0
            287D8 | 7000           : moveq   #$0, D0
            287DA | 1030 B800      : move.b  (A0,A3.l), D0
            287DE | 4E75           : rts
            287E0 | 7001           : moveq   #$1, D0
            287E2 | 4E75           : rts
            -->
        </script>
        <script state="off">
            <action>maincpu.mq@0428E = 70001030B8003540</action>
            <action>maincpu.mq@287D0 = 0000000000000000</action>
            <action>maincpu.mq@287D8 = 0000000000000000</action>
            <action>maincpu.mq@287E0 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="timer speed">
        <parameter>
            <item value="0x0c407fff">01 (slow)</item>
            <item value="0x0c400800">02       </item>
            <item value="0x0c400200">03       </item>
            <item value="0x0c400080">04       </item>
            <item value="0x0c400001">05 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.mw@2796 = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@2796 = B06A002C</action>
        </script>
    </cheat>

    <cheat desc="unlock special test mode">
        <comment>reset the game (F3) to enter special test mode</comment>
        <script state="on">
            <action>maincpu.mb@17765 = BC</action>
        </script>
        <script state="off">
            <action>maincpu.mb@17765 = DA</action>
        </script>
    </cheat>

    <cheat desc="auto damage">
        <script state="on">
            <action>maincpu.md@08FDE = 00028898        </action>
            <action>maincpu.md@09856 = 00028898        </action>
            <action>maincpu.md@09E2E = 00028898        </action>
            <action>maincpu.md@0A594 = 00028898        </action>
            <action>maincpu.md@0AD0E = 00028898        </action>
            <action>maincpu.md@0B50C = 00028898        </action>
            <action>maincpu.md@0BCE8 = 000288A0        </action>
            <action>maincpu.md@0C0A2 = 00028898        </action>
            <action>maincpu.md@0C75A = 00028898        </action>
            <action>maincpu.md@0CE66 = 00028898        </action>
            <action>maincpu.md@0D580 = 000288A0        </action>
            <action>maincpu.md@0DB9C = 000288A0        </action>
            <action>maincpu.mq@28840 = 48E73C004A40664A</action>
            <action>maincpu.mq@28848 = 2439000C5970362A</action>
            <action>maincpu.mq@28850 = 000CB443653C4842</action>
            <action>maincpu.mq@28858 = B443643638024842</action>
            <action>maincpu.mq@28860 = 3A029A44E24D9445</action>
            <action>maincpu.mq@28868 = B4436408006A0800</action>
            <action>maincpu.mq@28870 = 00146006026AF7FF</action>
            <action>maincpu.mq@28878 = 0014566A0038516A</action>
            <action>maincpu.mq@28880 = 00306E0C426A0030</action>
            <action>maincpu.mq@28888 = 257C000F8080004E</action>
            <action>maincpu.mq@28890 = 70034CDF003C4E75</action>
            <action>maincpu.mq@28898 = 4EB854F261A24E75</action>
            <action>maincpu.mq@288A0 = 4EB85A7C619A4E75</action>
            <!--
            28840 | 48E7 3C00           : movem.l D2-D5, -(A7)
            28844 | 4A40                : tst.w   D0
            28846 | 664A                : bne     $28892
            28848 | 2439 000C 5970      : move.l  $c5970.l, D2
            2884E | 362A 000C           : move.w  ($c,A2), D3       // check x position
            28852 | B443                : cmp.w   D3, D2
            28854 | 653C                : bcs     $28892
            28856 | 4842                : swap    D2
            28858 | B443                : cmp.w   D3, D2
            2885A | 6436                : bcc     $28892
            2885C | 3802                : move.w  D2, D4
            2885E | 4842                : swap    D2
            28860 | 3A02                : move.w  D2, D5
            28862 | 9A44                : sub.w   D4, D5
            28864 | E24D                : lsr.w   #1, D5
            28866 | 9445                : sub.w   D5, D2
            28868 | B443                : cmp.w   D3, D2
            2886A | 6408                : bcc     $28874
            2886C | 006A 0800 0014      : ori.w   #$800, ($14,A2)
            28872 | 6006                : bra     $2887a
            28874 | 026A F7FF 0014      : andi.w  #$f7ff, ($14,A2)
            2887A | 566A 0038           : addq.w  #3, ($38,A2)
            2887E | 516A 0030           : subq.w  #8, ($30,A2)
            28882 | 6E0C                : bgt     $28890
            28884 | 426A 0030           : clr.w   ($30,A2)
            28888 | 257C 000F 8080 004E : move.l  #$f8080, ($4e,A2)
            28890 | 7003                : moveq   #$3, D0
            28892 | 4CDF 003C           : movem.l (A7)+, D2-D5
            28896 | 4E75                : rts
            28898 | 4EB8 54F2           : jsr     $54f2.w
            2889C | 61A2                : bsr     $28c10
            2889E | 4E75                : rts
            288A0 | 4EB8 5A7C           : jsr     $5a7c.w
            288A4 | 619A                : bsr     $28c10
            288A6 | 4E75                : rts
            -->
        </script>
        <script state="off">
            <action>maincpu.md@08FDE = 000054F2        </action>
            <action>maincpu.md@09856 = 000054F2        </action>
            <action>maincpu.md@09E2E = 000054F2        </action>
            <action>maincpu.md@0A594 = 000054F2        </action>
            <action>maincpu.md@0AD0E = 000054F2        </action>
            <action>maincpu.md@0B50C = 000054F2        </action>
            <action>maincpu.md@0BCE8 = 00005A7C        </action>
            <action>maincpu.md@0C0A2 = 000054F2        </action>
            <action>maincpu.md@0C75A = 000054F2        </action>
            <action>maincpu.md@0CE66 = 000054F2        </action>
            <action>maincpu.md@0D580 = 00005A7C        </action>
            <action>maincpu.md@0DB9C = 00005A7C        </action>
            <action>maincpu.mq@28840 = 0000000000000000</action>
            <action>maincpu.mq@28848 = 0000000000000000</action>
            <action>maincpu.mq@28850 = 0000000000000000</action>
            <action>maincpu.mq@28858 = 0000000000000000</action>
            <action>maincpu.mq@28860 = 0000000000000000</action>
            <action>maincpu.mq@28868 = 0000000000000000</action>
            <action>maincpu.mq@28870 = 0000000000000000</action>
            <action>maincpu.mq@28878 = 0000000000000000</action>
            <action>maincpu.mq@28880 = 0000000000000000</action>
            <action>maincpu.mq@28888 = 0000000000000000</action>
            <action>maincpu.mq@28890 = 0000000000000000</action>
            <action>maincpu.mq@28898 = 0000000000000000</action>
            <action>maincpu.mq@288A0 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <comment>reset the game (F3) to enter sound test mode</comment>
        <script state="on">
            <action>maincpu.md@177B4 = 000287F0        </action>
            <action>maincpu.mq@287F0 = 41F9000C000043F9</action>
            <action>maincpu.mq@287F8 = 000FF00712001029</action>
            <action>maincpu.mq@28800 = FFFAB20067F60C00</action>
            <action>maincpu.mq@28808 = 00FB660253100C00</action>
            <action>maincpu.mq@28810 = 00F7660252100C00</action>
            <action>maincpu.mq@28818 = 00FD660404100010</action>
            <action>maincpu.mq@28820 = 0C0000FE66040610</action>
            <action>maincpu.mq@28828 = 00100C0000EF6602</action>
            <action>maincpu.mq@28830 = 12900C0000DF6604</action>
            <action>maincpu.mq@28838 = 12BC000160BE0000</action>
            <!--
            287F0 | 41F9 000C 0000 : lea     $c0000.l, A0 // sound code address
            287F6 | 43F9 000F F007 : lea     $ff007.l, A1 // sound latch address
            287FC | 1200           : move.b  D0, D1
            287FE | 1029 FFFA      : move.b  (-$6,A1), D0 // read input ($ff001)
            28802 | B200           : cmp.b   D0, D1
            28804 | 67F6           : beq     $287fc
            28806 | 0C00 00FB      : cmpi.b  #-$5, D0
            2880A | 6602           : bne     $2880e
            2880C | 5310           : subq.b  #1, (A0)     // decrease code -01
            2880E | 0C00 00F7      : cmpi.b  #-$9, D0
            28812 | 6602           : bne     $28816
            28814 | 5210           : addq.b  #1, (A0)     // increase code +01
            28816 | 0C00 00FD      : cmpi.b  #-$3, D0
            2881A | 6604           : bne     $28820
            2881C | 0410 0010      : subi.b  #$10, (A0)   // decrease code -10
            28820 | 0C00 00FE      : cmpi.b  #-$2, D0
            28824 | 6604           : bne     $2882a
            28826 | 0610 0010      : addi.b  #$10, (A0)   // increase code +10
            2882A | 0C00 00EF      : cmpi.b  #-$11, D0
            2882E | 6602           : bne     $28832
            28830 | 1290           : move.b  (A0), (A1)   // play sound
            28832 | 0C00 00DF      : cmpi.b  #-$21, D0
            28836 | 6604           : bne     $2883c
            28838 | 12BC 0001      : move.b  #$1, (A1)    // stop sound
            2883C | 60BE           : bra     $287fc
            -->
        </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="button 2 : stop sound"             line="16" align="center" />
            <output format="----------------------------"      line="17" align="center" />
            <output format="&lt;&lt; sound code %02X &gt;&gt;" line="19" align="center"  >
                <argument>maincpu.pb@C0000</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.md@177B4 = 00007576        </action>
            <action>maincpu.mq@287F0 = 0000000000000000</action>
            <action>maincpu.mq@287F8 = 0000000000000000</action>
            <action>maincpu.mq@28800 = 0000000000000000</action>
            <action>maincpu.mq@28808 = 0000000000000000</action>
            <action>maincpu.mq@28810 = 0000000000000000</action>
            <action>maincpu.mq@28818 = 0000000000000000</action>
            <action>maincpu.mq@28820 = 0000000000000000</action>
            <action>maincpu.mq@28828 = 0000000000000000</action>
            <action>maincpu.mq@28830 = 0000000000000000</action>
            <action>maincpu.mq@28838 = 0000000000000000</action>
        </script>
    </cheat>

</mamecheat>
karatblzu.xml

Code: Select all

<!-- Karate Blazers (US) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mb@4D6A = 60</action>
            <action>maincpu.mb@4E92 = 60</action>
        </script>
        <script state="off">
            <action>maincpu.mb@4D6A = 6C</action>
            <action>maincpu.mb@4E92 = 6C</action>
        </script>
    </cheat>

    <cheat desc="rapid fire">
        <script state="on">
            <action>maincpu.mb@833B = 58</action>
            <action>maincpu.mb@8417 = 58</action>
        </script>
        <script state="off">
            <action>maincpu.mb@833B = 59</action>
            <action>maincpu.mb@8417 = 59</action>
        </script>
    </cheat>

    <cheat desc="attack speed up">
        <script state="on">
            <action>maincpu.mq@0428E = 4EB9000287D03540</action>
            <action>maincpu.mq@287D0 = 0C6A000100366608</action>
            <action>maincpu.mq@287D8 = 70001030B8004E75</action>
            <action>maincpu.mq@287E0 = 70014E7500000000</action>
            <!--
            287D0 | 0C6A 0001 0036 : cmpi.w  #$1, ($36,A2)
            287D6 | 6608           : bne     $287e0
            287D8 | 7000           : moveq   #$0, D0
            287DA | 1030 B800      : move.b  (A0,A3.l), D0
            287DE | 4E75           : rts
            287E0 | 7001           : moveq   #$1, D0
            287E2 | 4E75           : rts
            -->
        </script>
        <script state="off">
            <action>maincpu.mq@0428E = 70001030B8003540</action>
            <action>maincpu.mq@287D0 = 0000000000000000</action>
            <action>maincpu.mq@287D8 = 0000000000000000</action>
            <action>maincpu.mq@287E0 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="timer speed">
        <parameter>
            <item value="0x0c407fff">01 (slow)</item>
            <item value="0x0c400800">02       </item>
            <item value="0x0c400200">03       </item>
            <item value="0x0c400080">04       </item>
            <item value="0x0c400001">05 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.md@2796 = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@2796 = B06A002C</action>
        </script>
    </cheat>

    <cheat desc="auto damage">
        <script state="on">
            <action>maincpu.md@08FDE = 00028898        </action>
            <action>maincpu.md@09856 = 00028898        </action>
            <action>maincpu.md@09E2E = 00028898        </action>
            <action>maincpu.md@0A594 = 00028898        </action>
            <action>maincpu.md@0AD0E = 00028898        </action>
            <action>maincpu.md@0B50C = 00028898        </action>
            <action>maincpu.md@0BCE8 = 000288A0        </action>
            <action>maincpu.md@0C0A2 = 00028898        </action>
            <action>maincpu.md@0C75A = 00028898        </action>
            <action>maincpu.md@0CE66 = 00028898        </action>
            <action>maincpu.md@0D580 = 000288A0        </action>
            <action>maincpu.md@0DB9C = 000288A0        </action>
            <action>maincpu.mq@28840 = 48E73C004A40664A</action>
            <action>maincpu.mq@28848 = 2439000C5970362A</action>
            <action>maincpu.mq@28850 = 000CB443653C4842</action>
            <action>maincpu.mq@28858 = B443643638024842</action>
            <action>maincpu.mq@28860 = 3A029A44E24D9445</action>
            <action>maincpu.mq@28868 = B4436408006A0800</action>
            <action>maincpu.mq@28870 = 00146006026AF7FF</action>
            <action>maincpu.mq@28878 = 0014566A0038516A</action>
            <action>maincpu.mq@28880 = 00306E0C426A0030</action>
            <action>maincpu.mq@28888 = 257C000F8080004E</action>
            <action>maincpu.mq@28890 = 70034CDF003C4E75</action>
            <action>maincpu.mq@28898 = 4EB854F261A24E75</action>
            <action>maincpu.mq@288A0 = 4EB85A7C619A4E75</action>
            <!--
            28840 | 48E7 3C00           : movem.l D2-D5, -(A7)
            28844 | 4A40                : tst.w   D0
            28846 | 664A                : bne     $28892
            28848 | 2439 000C 5970      : move.l  $c5970.l, D2
            2884E | 362A 000C           : move.w  ($c,A2), D3       // check x position
            28852 | B443                : cmp.w   D3, D2
            28854 | 653C                : bcs     $28892
            28856 | 4842                : swap    D2
            28858 | B443                : cmp.w   D3, D2
            2885A | 6436                : bcc     $28892
            2885C | 3802                : move.w  D2, D4
            2885E | 4842                : swap    D2
            28860 | 3A02                : move.w  D2, D5
            28862 | 9A44                : sub.w   D4, D5
            28864 | E24D                : lsr.w   #1, D5
            28866 | 9445                : sub.w   D5, D2
            28868 | B443                : cmp.w   D3, D2
            2886A | 6408                : bcc     $28874
            2886C | 006A 0800 0014      : ori.w   #$800, ($14,A2)
            28872 | 6006                : bra     $2887a
            28874 | 026A F7FF 0014      : andi.w  #$f7ff, ($14,A2)
            2887A | 566A 0038           : addq.w  #3, ($38,A2)
            2887E | 516A 0030           : subq.w  #8, ($30,A2)
            28882 | 6E0C                : bgt     $28890
            28884 | 426A 0030           : clr.w   ($30,A2)
            28888 | 257C 000F 8080 004E : move.l  #$f8080, ($4e,A2)
            28890 | 7003                : moveq   #$3, D0
            28892 | 4CDF 003C           : movem.l (A7)+, D2-D5
            28896 | 4E75                : rts
            28898 | 4EB8 54F2           : jsr     $54f2.w
            2889C | 61A2                : bsr     $28c10
            2889E | 4E75                : rts
            288A0 | 4EB8 5A7C           : jsr     $5a7c.w
            288A4 | 619A                : bsr     $28c10
            288A6 | 4E75                : rts
            -->
        </script>
        <script state="off">
            <action>maincpu.md@08FDE = 000054F2        </action>
            <action>maincpu.md@09856 = 000054F2        </action>
            <action>maincpu.md@09E2E = 000054F2        </action>
            <action>maincpu.md@0A594 = 000054F2        </action>
            <action>maincpu.md@0AD0E = 000054F2        </action>
            <action>maincpu.md@0B50C = 000054F2        </action>
            <action>maincpu.md@0BCE8 = 00005A7C        </action>
            <action>maincpu.md@0C0A2 = 000054F2        </action>
            <action>maincpu.md@0C75A = 000054F2        </action>
            <action>maincpu.md@0CE66 = 000054F2        </action>
            <action>maincpu.md@0D580 = 00005A7C        </action>
            <action>maincpu.md@0DB9C = 00005A7C        </action>
            <action>maincpu.mq@28840 = 0000000000000000</action>
            <action>maincpu.mq@28848 = 0000000000000000</action>
            <action>maincpu.mq@28850 = 0000000000000000</action>
            <action>maincpu.mq@28858 = 0000000000000000</action>
            <action>maincpu.mq@28860 = 0000000000000000</action>
            <action>maincpu.mq@28868 = 0000000000000000</action>
            <action>maincpu.mq@28870 = 0000000000000000</action>
            <action>maincpu.mq@28878 = 0000000000000000</action>
            <action>maincpu.mq@28880 = 0000000000000000</action>
            <action>maincpu.mq@28888 = 0000000000000000</action>
            <action>maincpu.mq@28890 = 0000000000000000</action>
            <action>maincpu.mq@28898 = 0000000000000000</action>
            <action>maincpu.mq@288A0 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="unlock special test mode">
        <comment>reset the game (F3) to enter special test mode</comment>
        <script state="on">
            <action>maincpu.mb@17765 = BC</action>
        </script>
        <script state="off">
            <action>maincpu.mb@17765 = DA</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <comment>reset the game (F3) to enter sound test mode</comment>
        <script state="on">
            <action>maincpu.md@177B4 = 000287F0        </action>
            <action>maincpu.mq@287F0 = 41F9000C000043F9</action>
            <action>maincpu.mq@287F8 = 000FF00712001029</action>
            <action>maincpu.mq@28800 = FFFAB20067F60C00</action>
            <action>maincpu.mq@28808 = 00FB660253100C00</action>
            <action>maincpu.mq@28810 = 00F7660252100C00</action>
            <action>maincpu.mq@28818 = 00FD660404100010</action>
            <action>maincpu.mq@28820 = 0C0000FE66040610</action>
            <action>maincpu.mq@28828 = 00100C0000EF6602</action>
            <action>maincpu.mq@28830 = 12900C0000DF6604</action>
            <action>maincpu.mq@28838 = 12BC000160BE0000</action>
            <!--
            287F0 | 41F9 000C 0000 : lea     $c0000.l, A0 // sound code address
            287F6 | 43F9 000F F007 : lea     $ff007.l, A1 // sound latch address
            287FC | 1200           : move.b  D0, D1
            287FE | 1029 FFFA      : move.b  (-$6,A1), D0 // read input ($ff001)
            28802 | B200           : cmp.b   D0, D1
            28804 | 67F6           : beq     $287fc
            28806 | 0C00 00FB      : cmpi.b  #-$5, D0
            2880A | 6602           : bne     $2880e
            2880C | 5310           : subq.b  #1, (A0)     // decrease code -01
            2880E | 0C00 00F7      : cmpi.b  #-$9, D0
            28812 | 6602           : bne     $28816
            28814 | 5210           : addq.b  #1, (A0)     // increase code +01
            28816 | 0C00 00FD      : cmpi.b  #-$3, D0
            2881A | 6604           : bne     $28820
            2881C | 0410 0010      : subi.b  #$10, (A0)   // decrease code -10
            28820 | 0C00 00FE      : cmpi.b  #-$2, D0
            28824 | 6604           : bne     $2882a
            28826 | 0610 0010      : addi.b  #$10, (A0)   // increase code +10
            2882A | 0C00 00EF      : cmpi.b  #-$11, D0
            2882E | 6602           : bne     $28832
            28830 | 1290           : move.b  (A0), (A1)   // play sound
            28832 | 0C00 00DF      : cmpi.b  #-$21, D0
            28836 | 6604           : bne     $2883c
            28838 | 12BC 0001      : move.b  #$1, (A1)    // stop sound
            2883C | 60BE           : bra     $287fc
            -->
        </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="button 2 : stop sound"             line="16" align="center" />
            <output format="----------------------------"      line="17" align="center" />
            <output format="&lt;&lt; sound code %02X &gt;&gt;" line="19" align="center"  >
                <argument>maincpu.pb@C0000</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.md@177B4 = 00007576        </action>
            <action>maincpu.mq@287F0 = 0000000000000000</action>
            <action>maincpu.mq@287F8 = 0000000000000000</action>
            <action>maincpu.mq@28800 = 0000000000000000</action>
            <action>maincpu.mq@28808 = 0000000000000000</action>
            <action>maincpu.mq@28810 = 0000000000000000</action>
            <action>maincpu.mq@28818 = 0000000000000000</action>
            <action>maincpu.mq@28820 = 0000000000000000</action>
            <action>maincpu.mq@28828 = 0000000000000000</action>
            <action>maincpu.mq@28830 = 0000000000000000</action>
            <action>maincpu.mq@28838 = 0000000000000000</action>
        </script>
    </cheat>

</mamecheat>
jman

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

[karatblz]+ Karate Blazers/Toushin Blazers

Post by jman »

karatblzj.xml

Code: Select all

<!-- Toushin Blazers (Japan, Tecmo license) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mb@4DF4 = 60</action>
            <action>maincpu.mb@4F1C = 60</action>
        </script>
        <script state="off">
            <action>maincpu.mb@4DF4 = 6C</action>
            <action>maincpu.mb@4F1C = 6C</action>
        </script>
    </cheat>

    <cheat desc="rapid fire">
        <script state="on">
            <action>maincpu.mb@8979 = 58</action>
            <action>maincpu.mb@8A55 = 58</action>
        </script>
        <script state="off">
            <action>maincpu.mb@8979 = 59</action>
            <action>maincpu.mb@8A55 = 59</action>
        </script>
    </cheat>

    <cheat desc="attack speed up">
        <script state="on">
            <action>maincpu.mq@04348 = 4EB900028BA03540</action>
            <action>maincpu.mq@28BA0 = 0C6A000100366608</action>
            <action>maincpu.mq@28BA8 = 70001030B8004E75</action>
            <action>maincpu.mq@28BB0 = 70014E7500000000</action>
            <!--
            28BA0 | 0C6A 0001 0036 : cmpi.w  #$1, ($36,A2)
            28BA6 | 6608           : bne     $28bb0
            28BA8 | 7000           : moveq   #$0, D0
            28BAA | 1030 B800      : move.b  (A0,A3.l), D0
            28BAE | 4E75           : rts
            28BB0 | 7001           : moveq   #$1, D0
            28BB2 | 4E75           : rts
            -->
        </script>
        <script state="off">
            <action>maincpu.mq@04348 = 70001030B8003540</action>
            <action>maincpu.mq@28BA0 = 0000000000000000</action>
            <action>maincpu.mq@28BA8 = 0000000000000000</action>
            <action>maincpu.mq@28BB0 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="timer speed">
        <parameter>
            <item value="0x0c407fff">01 (slow)</item>
            <item value="0x0c400800">02       </item>
            <item value="0x0c400200">03       </item>
            <item value="0x0c400080">04       </item>
            <item value="0x0c400001">05 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.md@283E = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@283E = B06A002C</action>
        </script>
    </cheat>

    <cheat desc="auto damage">
        <script state="on">
            <action>maincpu.md@0961C = 00028C68        </action>
            <action>maincpu.md@09E92 = 00028C68        </action>
            <action>maincpu.md@0A468 = 00028C68        </action>
            <action>maincpu.md@0ABE8 = 00028C68        </action>
            <action>maincpu.md@0B372 = 00028C68        </action>
            <action>maincpu.md@0BB62 = 00028C68        </action>
            <action>maincpu.md@0C33C = 00028C70        </action>
            <action>maincpu.md@0C6F4 = 00028C68        </action>
            <action>maincpu.md@0CDAA = 00028C68        </action>
            <action>maincpu.md@0D4BC = 00028C68        </action>
            <action>maincpu.md@0DBD4 = 00028C70        </action>
            <action>maincpu.md@0E1EE = 00028C70        </action>
            <action>maincpu.mq@28C10 = 48E73C004A40664A</action>
            <action>maincpu.mq@28C18 = 2439000C5970362A</action>
            <action>maincpu.mq@28C20 = 000CB443653C4842</action>
            <action>maincpu.mq@28C28 = B443643638024842</action>
            <action>maincpu.mq@28C30 = 3A029A44E24D9445</action>
            <action>maincpu.mq@28C38 = B4436408006A0800</action>
            <action>maincpu.mq@28C40 = 00146006026AF7FF</action>
            <action>maincpu.mq@28C48 = 0014566A0038516A</action>
            <action>maincpu.mq@28C50 = 00306E0C426A0030</action>
            <action>maincpu.mq@28C58 = 257C000F8080004E</action>
            <action>maincpu.mq@28C60 = 70034CDF003C4E75</action>
            <action>maincpu.mq@28C68 = 4EB8557E61A24E75</action>
            <action>maincpu.mq@28C70 = 4EB85AFA619A4E75</action>
            <!--
            28C10 | 48E7 3C00           : movem.l D2-D5, -(A7)
            28C14 | 4A40                : tst.w   D0
            28C16 | 664A                : bne     $28c62
            28C18 | 2439 000C 5970      : move.l  $c5970.l, D2
            28C1E | 362A 000C           : move.w  ($c,A2), D3       // check x position
            28C22 | B443                : cmp.w   D3, D2
            28C24 | 653C                : bcs     $28c62
            28C26 | 4842                : swap    D2
            28C28 | B443                : cmp.w   D3, D2
            28C2A | 6436                : bcc     $28c62
            28C2C | 3802                : move.w  D2, D4
            28C2E | 4842                : swap    D2
            28C30 | 3A02                : move.w  D2, D5
            28C32 | 9A44                : sub.w   D4, D5
            28C34 | E24D                : lsr.w   #1, D5
            28C36 | 9445                : sub.w   D5, D2
            28C38 | B443                : cmp.w   D3, D2
            28C3A | 6408                : bcc     $28c44
            28C3C | 006A 0800 0014      : ori.w   #$800, ($14,A2)
            28C42 | 6006                : bra     $28c4a
            28C44 | 026A F7FF 0014      : andi.w  #$f7ff, ($14,A2)
            28C4A | 566A 0038           : addq.w  #3, ($38,A2)
            28C4E | 516A 0030           : subq.w  #8, ($30,A2)
            28C52 | 6E0C                : bgt     $28c60
            28C54 | 426A 0030           : clr.w   ($30,A2)
            28C58 | 257C 000F 8080 004E : move.l  #$f8080, ($4e,A2)
            28C60 | 7003                : moveq   #$3, D0
            28C62 | 4CDF 003C           : movem.l (A7)+, D2-D5
            28C66 | 4E75                : rts
            28C68 | 4EB8 557E           : jsr     $557e.w
            28C6C | 61A2                : bsr     $28c10
            28C6E | 4E75                : rts
            28C70 | 4EB8 5AFA           : jsr     $5afa.w
            28C74 | 619A                : bsr     $28c10
            28C76 | 4E75                : rts
            -->
        </script>
        <script state="off">
            <action>maincpu.md@0961C = 0000557E        </action>
            <action>maincpu.md@09E92 = 0000557E        </action>
            <action>maincpu.md@0A468 = 0000557E        </action>
            <action>maincpu.md@0ABE8 = 0000557E        </action>
            <action>maincpu.md@0B372 = 0000557E        </action>
            <action>maincpu.md@0BB62 = 0000557E        </action>
            <action>maincpu.md@0C33C = 00005AFA        </action>
            <action>maincpu.md@0C6F4 = 0000557E        </action>
            <action>maincpu.md@0CDAA = 0000557E        </action>
            <action>maincpu.md@0D4BC = 0000557E        </action>
            <action>maincpu.md@0DBD4 = 00005AFA        </action>
            <action>maincpu.md@0E1EE = 00005AFA        </action>
            <action>maincpu.mq@28C10 = 0000000000000000</action>
            <action>maincpu.mq@28C18 = 0000000000000000</action>
            <action>maincpu.mq@28C20 = 0000000000000000</action>
            <action>maincpu.mq@28C28 = 0000000000000000</action>
            <action>maincpu.mq@28C30 = 0000000000000000</action>
            <action>maincpu.mq@28C38 = 0000000000000000</action>
            <action>maincpu.mq@28C40 = 0000000000000000</action>
            <action>maincpu.mq@28C48 = 0000000000000000</action>
            <action>maincpu.mq@28C50 = 0000000000000000</action>
            <action>maincpu.mq@28C58 = 0000000000000000</action>
            <action>maincpu.mq@28C60 = 0000000000000000</action>
            <action>maincpu.mq@28C68 = 0000000000000000</action>
            <action>maincpu.mq@28C70 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="unlock special test mode">
        <comment>reset the game (F3) to enter special test mode</comment>
        <script state="on">
            <action>maincpu.mb@17DCF = 26</action>
        </script>
        <script state="off">
            <action>maincpu.mb@17DCF = 44</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <comment>reset the game (F3) to enter sound test mode</comment>
        <script state="on">
            <action>maincpu.md@17E1E = 00028BC0        </action>
            <action>maincpu.mq@28BC0 = 41F9000C000043F9</action>
            <action>maincpu.mq@28BC8 = 000FF00712001029</action>
            <action>maincpu.mq@28BD0 = FFFAB20067F60C00</action>
            <action>maincpu.mq@28BD8 = 00FB660253100C00</action>
            <action>maincpu.mq@28BE0 = 00F7660252100C00</action>
            <action>maincpu.mq@28BE8 = 00FD660404100010</action>
            <action>maincpu.mq@28BF0 = 0C0000FE66040610</action>
            <action>maincpu.mq@28BF8 = 00100C0000EF6602</action>
            <action>maincpu.mq@28C00 = 12900C0000DF6604</action>
            <action>maincpu.mq@28C08 = 12BC000160BE0000</action>
            <!--
            28BC0 | 41F9 000C 0000 : lea     $c0000.l, A0 // sound code address
            28BC6 | 43F9 000F F007 : lea     $ff007.l, A1 // sound latch address
            28BCC | 1200           : move.b  D0, D1
            28BCE | 1029 FFFA      : move.b  (-$6,A1), D0 // read input ($ff001)
            28BD2 | B200           : cmp.b   D0, D1
            28BD4 | 67F6           : beq     $28bcc
            28BD6 | 0C00 00FB      : cmpi.b  #-$5, D0
            28BDA | 6602           : bne     $28bde
            28BDC | 5310           : subq.b  #1, (A0)     // decrease code -01
            28BDE | 0C00 00F7      : cmpi.b  #-$9, D0
            28BE2 | 6602           : bne     $28be6
            28BE4 | 5210           : addq.b  #1, (A0)     // increase code +01
            28BE6 | 0C00 00FD      : cmpi.b  #-$3, D0
            28BEA | 6604           : bne     $28bf0
            28BEC | 0410 0010      : subi.b  #$10, (A0)   // decrease code -10
            28BF0 | 0C00 00FE      : cmpi.b  #-$2, D0
            28BF4 | 6604           : bne     $28bfa
            28BF6 | 0610 0010      : addi.b  #$10, (A0)   // increase code +10
            28BFA | 0C00 00EF      : cmpi.b  #-$11, D0
            28BFE | 6602           : bne     $28c02
            28C00 | 1290           : move.b  (A0), (A1)   // play sound
            28C02 | 0C00 00DF      : cmpi.b  #-$21, D0
            28C06 | 6604           : bne     $28c0c
            28C08 | 12BC 0001      : move.b  #$1, (A1)    // stop sound
            28C0C | 60BE           : bra     $28bcc
            -->
        </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="button 2 : stop sound"             line="16" align="center" />
            <output format="----------------------------"      line="17" align="center" />
            <output format="&lt;&lt; sound code %02X &gt;&gt;" line="19" align="center"  >
                <argument>maincpu.pb@C0000</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.md@17E1E = 00007BB6        </action>
            <action>maincpu.mq@28BC0 = 0000000000000000</action>
            <action>maincpu.mq@28BC8 = 0000000000000000</action>
            <action>maincpu.mq@28BD0 = 0000000000000000</action>
            <action>maincpu.mq@28BD8 = 0000000000000000</action>
            <action>maincpu.mq@28BE0 = 0000000000000000</action>
            <action>maincpu.mq@28BE8 = 0000000000000000</action>
            <action>maincpu.mq@28BF0 = 0000000000000000</action>
            <action>maincpu.mq@28BF8 = 0000000000000000</action>
            <action>maincpu.mq@28C00 = 0000000000000000</action>
            <action>maincpu.mq@28C08 = 0000000000000000</action>
        </script>
    </cheat>

</mamecheat>
karatblzbl.xml

Code: Select all

<!-- Karate Blazers (bootleg with Street Smart sound hardware) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mb@4DF4 = 60</action>
            <action>maincpu.mb@4F1C = 60</action>
        </script>
        <script state="off">
            <action>maincpu.mb@4DF4 = 6C</action>
            <action>maincpu.mb@4F1C = 6C</action>
        </script>
    </cheat>

    <cheat desc="rapid fire">
        <script state="on">
            <action>maincpu.mb@8979 = 58</action>
            <action>maincpu.mb@8A55 = 58</action>
        </script>
        <script state="off">
            <action>maincpu.mb@8979 = 59</action>
            <action>maincpu.mb@8A55 = 59</action>
        </script>
    </cheat>

    <cheat desc="attack speed up">
        <script state="on">
            <action>maincpu.mq@04348 = 4EB900028F003540</action>
            <action>maincpu.mq@28F00 = 0C6A000100366608</action>
            <action>maincpu.mq@28F08 = 70001030B8004E75</action>
            <action>maincpu.mq@28F10 = 70014E7500000000</action>
            <!--
            28F00 | 0C6A 0001 0036 : cmpi.w  #$1, ($36,A2)
            28F06 | 6608           : bne     $28f10
            28F08 | 7000           : moveq   #$0, D0
            28F0A | 1030 B800      : move.b  (A0,A3.l), D0
            28F0E | 4E75           : rts
            28F10 | 7001           : moveq   #$1, D0
            28F12 | 4E75           : rts
            -->
        </script>
        <script state="off">
            <action>maincpu.mq@04348 = 70001030B8003540</action>
            <action>maincpu.mq@28F00 = 0000000000000000</action>
            <action>maincpu.mq@28F08 = 0000000000000000</action>
            <action>maincpu.mq@28F10 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="timer speed">
        <parameter>
            <item value="0x0c407fff">01 (slow)</item>
            <item value="0x0c400800">02       </item>
            <item value="0x0c400200">03       </item>
            <item value="0x0c400080">04       </item>
            <item value="0x0c400001">05 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.md@283E = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@283E = B06A002C</action>
        </script>
    </cheat>

    <cheat desc="auto damage">
        <script state="on">
            <action>maincpu.md@0961C = 00028C68        </action>
            <action>maincpu.md@09E92 = 00028C68        </action>
            <action>maincpu.md@0A468 = 00028C68        </action>
            <action>maincpu.md@0ABE8 = 00028C68        </action>
            <action>maincpu.md@0B372 = 00028C68        </action>
            <action>maincpu.md@0BB62 = 00028C68        </action>
            <action>maincpu.md@0C33C = 00028C70        </action>
            <action>maincpu.md@0C6F4 = 00028C68        </action>
            <action>maincpu.md@0CDAA = 00028C68        </action>
            <action>maincpu.md@0D4BC = 00028C68        </action>
            <action>maincpu.md@0DBD4 = 00028C70        </action>
            <action>maincpu.md@0E1EE = 00028C70        </action>
            <action>maincpu.mq@28C10 = 48E73C004A40664A</action>
            <action>maincpu.mq@28C18 = 2439000C5970362A</action>
            <action>maincpu.mq@28C20 = 000CB443653C4842</action>
            <action>maincpu.mq@28C28 = B443643638024842</action>
            <action>maincpu.mq@28C30 = 3A029A44E24D9445</action>
            <action>maincpu.mq@28C38 = B4436408006A0800</action>
            <action>maincpu.mq@28C40 = 00146006026AF7FF</action>
            <action>maincpu.mq@28C48 = 0014566A0038516A</action>
            <action>maincpu.mq@28C50 = 00306E0C426A0030</action>
            <action>maincpu.mq@28C58 = 257C000F8080004E</action>
            <action>maincpu.mq@28C60 = 70034CDF003C4E75</action>
            <action>maincpu.mq@28C68 = 4EB8557E61A24E75</action>
            <action>maincpu.mq@28C70 = 4EB85AFA619A4E75</action>
            <!--
            28C10 | 48E7 3C00           : movem.l D2-D5, -(A7)
            28C14 | 4A40                : tst.w   D0
            28C16 | 664A                : bne     $28c62
            28C18 | 2439 000C 5970      : move.l  $c5970.l, D2
            28C1E | 362A 000C           : move.w  ($c,A2), D3       // check x position
            28C22 | B443                : cmp.w   D3, D2
            28C24 | 653C                : bcs     $28c62
            28C26 | 4842                : swap    D2
            28C28 | B443                : cmp.w   D3, D2
            28C2A | 6436                : bcc     $28c62
            28C2C | 3802                : move.w  D2, D4
            28C2E | 4842                : swap    D2
            28C30 | 3A02                : move.w  D2, D5
            28C32 | 9A44                : sub.w   D4, D5
            28C34 | E24D                : lsr.w   #1, D5
            28C36 | 9445                : sub.w   D5, D2
            28C38 | B443                : cmp.w   D3, D2
            28C3A | 6408                : bcc     $28c44
            28C3C | 006A 0800 0014      : ori.w   #$800, ($14,A2)
            28C42 | 6006                : bra     $28c4a
            28C44 | 026A F7FF 0014      : andi.w  #$f7ff, ($14,A2)
            28C4A | 566A 0038           : addq.w  #3, ($38,A2)
            28C4E | 516A 0030           : subq.w  #8, ($30,A2)
            28C52 | 6E0C                : bgt     $28c60
            28C54 | 426A 0030           : clr.w   ($30,A2)
            28C58 | 257C 000F 8080 004E : move.l  #$f8080, ($4e,A2)
            28C60 | 7003                : moveq   #$3, D0
            28C62 | 4CDF 003C           : movem.l (A7)+, D2-D5
            28C66 | 4E75                : rts
            28C68 | 4EB8 557E           : jsr     $557e.w
            28C6C | 61A2                : bsr     $28c10
            28C6E | 4E75                : rts
            28C70 | 4EB8 5AFA           : jsr     $5afa.w
            28C74 | 619A                : bsr     $28c10
            28C76 | 4E75                : rts
            -->
        </script>
        <script state="off">
            <action>maincpu.md@0961C = 0000557E        </action>
            <action>maincpu.md@09E92 = 0000557E        </action>
            <action>maincpu.md@0A468 = 0000557E        </action>
            <action>maincpu.md@0ABE8 = 0000557E        </action>
            <action>maincpu.md@0B372 = 0000557E        </action>
            <action>maincpu.md@0BB62 = 0000557E        </action>
            <action>maincpu.md@0C33C = 00005AFA        </action>
            <action>maincpu.md@0C6F4 = 0000557E        </action>
            <action>maincpu.md@0CDAA = 0000557E        </action>
            <action>maincpu.md@0D4BC = 0000557E        </action>
            <action>maincpu.md@0DBD4 = 00005AFA        </action>
            <action>maincpu.md@0E1EE = 00005AFA        </action>
            <action>maincpu.mq@28C10 = 0000000000000000</action>
            <action>maincpu.mq@28C18 = 0000000000000000</action>
            <action>maincpu.mq@28C20 = 0000000000000000</action>
            <action>maincpu.mq@28C28 = 0000000000000000</action>
            <action>maincpu.mq@28C30 = 0000000000000000</action>
            <action>maincpu.mq@28C38 = 0000000000000000</action>
            <action>maincpu.mq@28C40 = 0000000000000000</action>
            <action>maincpu.mq@28C48 = 0000000000000000</action>
            <action>maincpu.mq@28C50 = 0000000000000000</action>
            <action>maincpu.mq@28C58 = 0000000000000000</action>
            <action>maincpu.mq@28C60 = 0000000000000000</action>
            <action>maincpu.mq@28C68 = 0000000000000000</action>
            <action>maincpu.mq@28C70 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="unlock special test mode">
        <comment>reset the game (F3) to enter special test mode</comment>
        <script state="on">
            <action>maincpu.mb@17DCF = 26</action>
        </script>
        <script state="off">
            <action>maincpu.mb@17DCF = 44</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <comment>reset the game (F3) to enter sound test mode</comment>
        <script state="on">
            <action>maincpu.md@17E1E = 00028F20        </action>
            <action>maincpu.mq@28F20 = 41F9000C000043F9</action>
            <action>maincpu.mq@28F28 = 000FF00712001029</action>
            <action>maincpu.mq@28F30 = FFFAB20067F60C00</action>
            <action>maincpu.mq@28F38 = 00FB660253100C00</action>
            <action>maincpu.mq@28F40 = 00F7660252100C00</action>
            <action>maincpu.mq@28F48 = 00FD660404100010</action>
            <action>maincpu.mq@28F50 = 0C0000FE66040610</action>
            <action>maincpu.mq@28F58 = 00100C0000EF6602</action>
            <action>maincpu.mq@28F60 = 12900C0000DF6604</action>
            <action>maincpu.mq@28F68 = 12BC000160BE0000</action>
            <!--
            28F20 | 41F9 000C 0000 : lea     $c0000.l, A0 // sound code address
            28F26 | 43F9 000F F007 : lea     $ff007.l, A1 // sound latch address
            28F2C | 1200           : move.b  D0, D1
            28F2E | 1029 FFFA      : move.b  (-$6,A1), D0 // read input ($ff001)
            28F32 | B200           : cmp.b   D0, D1
            28F34 | 67F6           : beq     $28f2c
            28F36 | 0C00 00FB      : cmpi.b  #-$5, D0
            28F3A | 6602           : bne     $28f3e
            28F3C | 5310           : subq.b  #1, (A0)     // decrease code -01
            28F3E | 0C00 00F7      : cmpi.b  #-$9, D0
            28F42 | 6602           : bne     $28f46
            28F44 | 5210           : addq.b  #1, (A0)     // increase code +01
            28F46 | 0C00 00FD      : cmpi.b  #-$3, D0
            28F4A | 6604           : bne     $28f50
            28F4C | 0410 0010      : subi.b  #$10, (A0)   // decrease code -10
            28F50 | 0C00 00FE      : cmpi.b  #-$2, D0
            28F54 | 6604           : bne     $28f5a
            28F56 | 0610 0010      : addi.b  #$10, (A0)   // increase code +10
            28F5A | 0C00 00EF      : cmpi.b  #-$11, D0
            28F5E | 6602           : bne     $28f62
            28F60 | 1290           : move.b  (A0), (A1)   // play sound
            28F62 | 0C00 00DF      : cmpi.b  #-$21, D0
            28F66 | 6604           : bne     $28f6c
            28F68 | 12BC 0001      : move.b  #$1, (A1)    // stop sound
            28F6C | 60BE           : bra     $28f2c
            -->
            <action>audiocpu.md@097A = 00C680CD        </action>
            <action>audiocpu.mq@C680 = D30F2001FEF8003A</action>
            <action>audiocpu.mq@C688 = 80D3803E0091CD80</action>
            <action>audiocpu.mq@C690 = AF470000C30091CD</action>
            <action>audiocpu.mq@C698 = F14632013EF11532</action>
            <action>audiocpu.mq@C6A0 = FFFFFFFFFFFFC978</action>
            <!--
            C680 | 3A 00 F8 : ld   a,($F800) // read sound code from maincpu
            C683 | FE 01    : cp   $01
            C685 | 20 0F    : jr   nz,$C696
            C687 | D3 80    : out  ($80),a   // reset sample
            C689 | CD 91 00 : call $0091
            C68C | 3E 80    : ld   a,$80     // enable sample
            C68E | D3 80    : out  ($80),a
            C690 | CD 91 00 : call $0091
            C693 | C3 00 00 : jp   $0000     // reset soundcpu
            C696 | 47       : ld   b,a
            C697 | AF       : xor  a         // initialize sound flags
            C698 | 32 15 F1 : ld   ($F115),a
            C69B | 3E 01    : ld   a,$01
            C69D | 32 46 F1 : ld   ($F146),a
            C6A0 | 78       : ld   a,b
            C6A1 | C9       : ret
            -->
        </script>
        <script state="run">
            <output format="----- karate blazers 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="button 2 : stop sound"                      line="16" align="center" />
            <output format="----------------------------"               line="17" align="center" />
            <output format="&lt;&lt; sound code %02X &gt;&gt;"          line="19" align="center"  >
                <argument>maincpu.pb@C0000</argument>
            </output>
        </script>
        <script state="off">
            <action> maincpu.md@17E1E = 00007BB6        </action>
            <action> maincpu.mq@28F20 = 0000000000000000</action>
            <action> maincpu.mq@28F28 = 0000000000000000</action>
            <action> maincpu.mq@28F30 = 0000000000000000</action>
            <action> maincpu.mq@28F38 = 0000000000000000</action>
            <action> maincpu.mq@28F40 = 0000000000000000</action>
            <action> maincpu.mq@28F48 = 0000000000000000</action>
            <action> maincpu.mq@28F50 = 0000000000000000</action>
            <action> maincpu.mq@28F58 = 0000000000000000</action>
            <action> maincpu.mq@28F60 = 0000000000000000</action>
            <action> maincpu.mq@28F68 = 0000000000000000</action>
            <action>audiocpu.md@0097A = 00F8003A        </action>
            <action>audiocpu.mq@0C680 = FFFFFFFFFFFFFFFF</action>
            <action>audiocpu.mq@0C688 = FFFFFFFFFFFFFFFF</action>
            <action>audiocpu.mq@0C690 = FFFFFFFFFFFFFFFF</action>
            <action>audiocpu.mq@0C698 = FFFFFFFFFFFFFFFF</action>
            <action>audiocpu.mq@0C6A0 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

</mamecheat>
"auto damage" : Added new. You can damage/kill an enemy without attack. But point is always added to player 1.
jman

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