Page 1 of 1

[mcatadvj] Magical Cat Adventure

Posted: Sun Sep 03, 2023 1:29 pm
by jman

Code: Select all

<!-- Magical Cat Adventure (Japan) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.md@7c7e = 6000011a</action> <!-- trap -->
            <action>maincpu.md@ddcc = 6000001e</action> <!-- objects -->
        </script>
        <script state="off">
            <action>maincpu.md@7c7e = 6600011a</action>
            <action>maincpu.md@ddcc = 024400ff</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.mw@7f7a = 000c</action> <!-- charge shot -->
            <action>maincpu.mw@7fc0 = 0002</action> <!-- button check -->
            <action>maincpu.mw@d050 = 0002</action> <!-- charge shot level 1 -->
            <action>maincpu.mw@d05c = 0002</action> <!-- charge shot level 2 -->
            <action>maincpu.mw@d21a = 0002</action> <!-- charge shot level 1 (upper) -->
            <action>maincpu.mw@d226 = 0002</action> <!-- charge shot level 2 (upper) -->
        </script>
        <script state="off">
            <action>maincpu.mw@7f7a = ff26</action>
            <action>maincpu.mw@7fc0 = fee0</action>
            <action>maincpu.mw@d050 = 0012</action>
            <action>maincpu.mw@d05c = 0006</action>
            <action>maincpu.mw@d21a = 0012</action>
            <action>maincpu.mw@d226 = 0006</action>
        </script>
    </cheat>

    <cheat desc="action speed up">
        <script state="on">
            <action>maincpu.mb@830e = 60</action>
        </script>
        <script state="off">
            <action>maincpu.mb@830e = 67</action>
        </script>
    </cheat>

    <cheat desc="multiple jump">
        <script state="on">
            <action>maincpu.md@7e0a = 6000002e</action>
        </script>
        <script state="off">
            <action>maincpu.md@7e0a = 66000094</action>
        </script>
    </cheat>

    <cheat desc="timer speed">
        <parameter>
            <item value="0x0100">01 (slow)</item>
            <item value="0x0080">02       </item>
            <item value="0x0040">03       </item>
            <item value="0x0020">04       </item>
            <item value="0x0001">05 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.mw@3eda = param</action> <!-- initialize -->
            <action>maincpu.mw@42d8 = param</action>
        </script>
        <script state="off">
            <action>maincpu.mw@3eda = 003c</action>
            <action>maincpu.mw@42d8 = 003c</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <comment>set &quot;skip rom check&quot; then reset the game (F3)</comment>
        <script state="on">
            <action>maincpu.md@00e14 =         0003b560</action>
            <action>maincpu.mq@3b560 = 41f90010000043f9</action>
            <action>maincpu.mq@3b568 = 00c0000112001039</action>
            <action>maincpu.mq@3b570 = 00800001b20067f4</action>
            <action>maincpu.mq@3b578 = 0c0000fb66025310</action>
            <action>maincpu.mq@3b580 = 0c0000f766025210</action>
            <action>maincpu.mq@3b588 = 0c0000fd66040410</action>
            <action>maincpu.mq@3b590 = 00100c0000fe6604</action>
            <action>maincpu.mq@3b598 = 061000100c0000ef</action>
            <action>maincpu.mq@3b5a0 = 660212900c0000df</action>
            <action>maincpu.mq@3b5a8 = 6602421160be0000</action>
            <!--
            3b560 | 41f9 0010 0000 : lea    $100000.l,A0 // sound code address
            3b566 | 43f9 00c0 0001 : lea    $c00001.l,A1 // sound latch address
            3b56c | 1200           : move.b D0,D1
            3b56e | 1039 0080 0001 : move.b $800001.l,D0 // read input
            3b574 | b200           : cmp.b  D0,D1
            3b576 | 67f4           : beq    $3b56c
            3b578 | 0c00 00fb      : cmpi.b #-$5,D0
            3b57c | 6602           : bne    $3b580
            3b57e | 5310           : subq.b #1,(A0)      // decrease code -01
            3b580 | 0c00 00f7      : cmpi.b #-$9,D0
            3b584 | 6602           : bne    $3b588
            3b586 | 5210           : addq.b #1,(A0)      // increase code +01
            3b588 | 0c00 00fd      : cmpi.b #-$3,D0
            3b58c | 6604           : bne    $3b592
            3b58e | 0410 0010      : subi.b #$10,(A0)    // decrease code -10
            3b592 | 0c00 00fe      : cmpi.b #-$2,D0
            3b596 | 6604           : bne    $3b59c
            3b598 | 0610 0010      : addi.b #$10,(A0)    // increase code +10
            3b59c | 0c00 00ef      : cmpi.b #-$11,D0
            3b5a0 | 6602           : bne    $3b5a4
            3b5a2 | 1290           : move.b (A0),(A1)    // play sound
            3b5a4 | 0c00 00df      : cmpi.b #-$21,D0
            3b5a8 | 6602           : bne    $3b5ac
            3b5aa | 4211           : clr.b  (A1)         // stop sound
            3b5ac | 60be           : bra    $3b56c
            -->
        </script>
        <script state="run">
            <output format="----- magical cat adventure 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 %2.2X &gt;&gt;"                line="19" align="center"  >
                <argument>maincpu.pb@100000</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.md@00e14 =         0000501c</action>
            <action>maincpu.mq@3b560 = 0000000000000000</action>
            <action>maincpu.mq@3b568 = 0000000000000000</action>
            <action>maincpu.mq@3b570 = 0000000000000000</action>
            <action>maincpu.mq@3b578 = 0000000000000000</action>
            <action>maincpu.mq@3b580 = 0000000000000000</action>
            <action>maincpu.mq@3b588 = 0000000000000000</action>
            <action>maincpu.mq@3b590 = 0000000000000000</action>
            <action>maincpu.mq@3b598 = 0000000000000000</action>
            <action>maincpu.mq@3b5a0 = 0000000000000000</action>
            <action>maincpu.mq@3b5a8 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="skip rom check">
        <script state="on">
            <action>maincpu.mw@03d4 = 01be</action>
        </script>
        <script state="off">
            <action>maincpu.mw@03d4 = 0198</action>
        </script>
    </cheat>

</mamecheat>

[mcatadv]+ Magical Cat Adventure

Posted: Fri Jan 26, 2024 9:32 am
by jman
mcatadv.xml

Code: Select all

<!-- Magical Cat Adventure -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.md@7B14 = 6000011E</action> <!-- trap -->
            <action>maincpu.md@C862 = 6000001E</action> <!-- objects -->
        </script>
        <script state="off">
            <action>maincpu.md@7B14 = 6600011E</action>
            <action>maincpu.md@C862 = 024400FF</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.mw@7D8E = 630A</action> <!-- charge shot -->
            <action>maincpu.mw@7DC8 = 0002</action> <!-- button check -->
            <action>maincpu.mw@BD86 = 0002</action> <!-- charge shot level 1 -->
            <action>maincpu.mw@BD92 = 0002</action> <!-- charge shot level 2 -->
        </script>
        <script state="off">
            <action>maincpu.mw@7D8E = 6392</action>
            <action>maincpu.mw@7DC8 = FF5A</action>
            <action>maincpu.mw@BD86 = 0012</action>
            <action>maincpu.mw@BD92 = 0006</action>
        </script>
    </cheat>

    <cheat desc="action speed up">
        <script state="on">
            <action>maincpu.mb@80E2 = 60</action>
        </script>
        <script state="off">
            <action>maincpu.mb@80E2 = 67</action>
        </script>
    </cheat>

    <cheat desc="multiple jump">
        <script state="on">
            <action>maincpu.md@7C96 = 60000024</action>
        </script>
        <script state="off">
            <action>maincpu.md@7C96 = 6600008A</action>
        </script>
    </cheat>

    <cheat desc="timer speed">
        <parameter>
            <item value="0x0100">01 (slow)</item>
            <item value="0x0080">02       </item>
            <item value="0x0040">03       </item>
            <item value="0x0020">04       </item>
            <item value="0x0001">05 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.mw@3ED6 = param</action> <!-- initialize -->
            <action>maincpu.mw@42D4 = param</action>
        </script>
        <script state="off">
            <action>maincpu.mw@3ED6 = 003C</action>
            <action>maincpu.mw@42D4 = 003C</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <comment>set &quot;skip rom check&quot; then reset the game (F3)</comment>
        <script state="on">
            <action>maincpu.md@00E14 = 00030E20        </action>
            <action>maincpu.mq@30E20 = 41F90010000043F9</action>
            <action>maincpu.mq@30E28 = 00C0000112001039</action>
            <action>maincpu.mq@30E30 = 00800001B20067F4</action>
            <action>maincpu.mq@30E38 = 0C0000FB66025310</action>
            <action>maincpu.mq@30E40 = 0C0000F766025210</action>
            <action>maincpu.mq@30E48 = 0C0000FD66040410</action>
            <action>maincpu.mq@30E50 = 00100C0000FE6604</action>
            <action>maincpu.mq@30E58 = 061000100C0000EF</action>
            <action>maincpu.mq@30E60 = 660212900C0000DF</action>
            <action>maincpu.mq@30E68 = 6602421160BE0000</action>
            <!--
            30E20 | 41F9 0010 0000 : lea     $100000.l, A0 // sound code address
            30E26 | 43F9 00C0 0001 : lea     $c00001.l, A1 // sound latch address
            30E2C | 1200           : move.b  D0, D1
            30E2E | 1039 0080 0001 : move.b  $800001.l, D0 // read input
            30E34 | B200           : cmp.b   D0, D1
            30E36 | 67F4           : beq     $30e2c
            30E38 | 0C00 00FB      : cmpi.b  #-$5, D0
            30E3C | 6602           : bne     $30e40
            30E3E | 5310           : subq.b  #1, (A0)      // decrease code -01
            30E40 | 0C00 00F7      : cmpi.b  #-$9, D0
            30E44 | 6602           : bne     $30e48
            30E46 | 5210           : addq.b  #1, (A0)      // increase code +01
            30E48 | 0C00 00FD      : cmpi.b  #-$3, D0
            30E4C | 6604           : bne     $30e52
            30E4E | 0410 0010      : subi.b  #$10, (A0)    // decrease code -10
            30E52 | 0C00 00FE      : cmpi.b  #-$2, D0
            30E56 | 6604           : bne     $30e5c
            30E58 | 0610 0010      : addi.b  #$10, (A0)    // increase code +10
            30E5C | 0C00 00EF      : cmpi.b  #-$11, D0
            30E60 | 6602           : bne     $30e64
            30E62 | 1290           : move.b  (A0), (A1)    // play sound
            30E64 | 0C00 00DF      : cmpi.b  #-$21, D0
            30E68 | 6602           : bne     $30e6c
            30E6A | 4211           : clr.b   (A1)          // stop sound
            30E6C | 60BE           : bra     $30e2c
            -->
        </script>
        <script state="run">
            <output format="----- magical cat adventure 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@100000</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.md@00E14 = 0000504A        </action>
            <action>maincpu.mq@30E20 = 0000000000000000</action>
            <action>maincpu.mq@30E28 = 0000000000000000</action>
            <action>maincpu.mq@30E30 = 0000000000000000</action>
            <action>maincpu.mq@30E38 = 0000000000000000</action>
            <action>maincpu.mq@30E40 = 0000000000000000</action>
            <action>maincpu.mq@30E48 = 0000000000000000</action>
            <action>maincpu.mq@30E50 = 0000000000000000</action>
            <action>maincpu.mq@30E58 = 0000000000000000</action>
            <action>maincpu.mq@30E60 = 0000000000000000</action>
            <action>maincpu.mq@30E68 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="skip rom check">
        <script state="on">
            <action>maincpu.mw@03D4 = 01BE</action>
        </script>
        <script state="off">
            <action>maincpu.mw@03D4 = 0198</action>
        </script>
    </cheat>

</mamecheat>
mcatadvj.xml

Code: Select all

<!-- Magical Cat Adventure (Japan) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.md@7C7E = 6000011A</action> <!-- trap -->
            <action>maincpu.md@DDCC = 6000001E</action> <!-- objects -->
        </script>
        <script state="off">
            <action>maincpu.md@7C7E = 6600011A</action>
            <action>maincpu.md@DDCC = 024400FF</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.mw@7F7A = 000C</action> <!-- charge shot -->
            <action>maincpu.mw@7FC0 = 0002</action> <!-- button check -->
            <action>maincpu.mw@D050 = 0002</action> <!-- charge shot level 1 -->
            <action>maincpu.mw@D05C = 0002</action> <!-- charge shot level 2 -->
            <action>maincpu.mw@D21A = 0002</action> <!-- charge shot level 1 (upper) -->
            <action>maincpu.mw@D226 = 0002</action> <!-- charge shot level 2 (upper) -->
        </script>
        <script state="off">
            <action>maincpu.mw@7F7A = FF26</action>
            <action>maincpu.mw@7FC0 = FEE0</action>
            <action>maincpu.mw@D050 = 0012</action>
            <action>maincpu.mw@D05C = 0006</action>
            <action>maincpu.mw@D21A = 0012</action>
            <action>maincpu.mw@D226 = 0006</action>
        </script>
    </cheat>

    <cheat desc="action speed up">
        <script state="on">
            <action>maincpu.mb@830E = 60</action>
        </script>
        <script state="off">
            <action>maincpu.mb@830E = 67</action>
        </script>
    </cheat>

    <cheat desc="multiple jump">
        <script state="on">
            <action>maincpu.md@7E0A = 6000002E</action>
        </script>
        <script state="off">
            <action>maincpu.md@7E0A = 66000094</action>
        </script>
    </cheat>

    <cheat desc="timer speed">
        <parameter>
            <item value="0x0100">01 (slow)</item>
            <item value="0x0080">02       </item>
            <item value="0x0040">03       </item>
            <item value="0x0020">04       </item>
            <item value="0x0001">05 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.mw@3EDA = param</action> <!-- initialize -->
            <action>maincpu.mw@42D8 = param</action>
        </script>
        <script state="off">
            <action>maincpu.mw@3EDA = 003C</action>
            <action>maincpu.mw@42D8 = 003C</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <comment>set &quot;skip rom check&quot; then reset the game (F3)</comment>
        <script state="on">
            <action>maincpu.md@00E14 = 0003B560        </action>
            <action>maincpu.mq@3B560 = 41F90010000043F9</action>
            <action>maincpu.mq@3B568 = 00C0000112001039</action>
            <action>maincpu.mq@3B570 = 00800001B20067F4</action>
            <action>maincpu.mq@3B578 = 0C0000FB66025310</action>
            <action>maincpu.mq@3B580 = 0C0000F766025210</action>
            <action>maincpu.mq@3B588 = 0C0000FD66040410</action>
            <action>maincpu.mq@3B590 = 00100C0000FE6604</action>
            <action>maincpu.mq@3B598 = 061000100C0000EF</action>
            <action>maincpu.mq@3B5A0 = 660212900C0000DF</action>
            <action>maincpu.mq@3B5A8 = 6602421160BE0000</action>
            <!--
            3B560 | 41F9 0010 0000 : lea     $100000.l, A0 // sound code address
            3B566 | 43F9 00C0 0001 : lea     $c00001.l, A1 // sound latch address
            3B56C | 1200           : move.b  D0, D1
            3B56E | 1039 0080 0001 : move.b  $800001.l, D0 // read input
            3B574 | B200           : cmp.b   D0, D1
            3B576 | 67F4           : beq     $3b56c
            3B578 | 0C00 00FB      : cmpi.b  #-$5, D0
            3B57C | 6602           : bne     $3b580
            3B57E | 5310           : subq.b  #1, (A0)      // decrease code -01
            3B580 | 0C00 00F7      : cmpi.b  #-$9, D0
            3B584 | 6602           : bne     $3b588
            3B586 | 5210           : addq.b  #1, (A0)      // increase code +01
            3B588 | 0C00 00FD      : cmpi.b  #-$3, D0
            3B58C | 6604           : bne     $3b592
            3B58E | 0410 0010      : subi.b  #$10, (A0)    // decrease code -10
            3B592 | 0C00 00FE      : cmpi.b  #-$2, D0
            3B596 | 6604           : bne     $3b59c
            3B598 | 0610 0010      : addi.b  #$10, (A0)    // increase code +10
            3B59C | 0C00 00EF      : cmpi.b  #-$11, D0
            3B5A0 | 6602           : bne     $3b5a4
            3B5A2 | 1290           : move.b  (A0), (A1)    // play sound
            3B5A4 | 0C00 00DF      : cmpi.b  #-$21, D0
            3B5A8 | 6602           : bne     $3b5ac
            3B5AA | 4211           : clr.b   (A1)          // stop sound
            3B5AC | 60BE           : bra     $3b56c
            -->
        </script>
        <script state="run">
            <output format="----- magical cat adventure 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@100000</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.md@00E14 = 0000501C        </action>
            <action>maincpu.mq@3B560 = 0000000000000000</action>
            <action>maincpu.mq@3B568 = 0000000000000000</action>
            <action>maincpu.mq@3B570 = 0000000000000000</action>
            <action>maincpu.mq@3B578 = 0000000000000000</action>
            <action>maincpu.mq@3B580 = 0000000000000000</action>
            <action>maincpu.mq@3B588 = 0000000000000000</action>
            <action>maincpu.mq@3B590 = 0000000000000000</action>
            <action>maincpu.mq@3B598 = 0000000000000000</action>
            <action>maincpu.mq@3B5A0 = 0000000000000000</action>
            <action>maincpu.mq@3B5A8 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="skip rom check">
        <script state="on">
            <action>maincpu.mw@03D4 = 01BE</action>
        </script>
        <script state="off">
            <action>maincpu.mw@03D4 = 0198</action>
        </script>
    </cheat>

</mamecheat>
catt.xml

Code: Select all

<!-- Catt (Japan) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.md@7B14 = 6000011E</action> <!-- trap -->
            <action>maincpu.md@C862 = 6000001E</action> <!-- objects -->
        </script>
        <script state="off">
            <action>maincpu.md@7B14 = 6600011E</action>
            <action>maincpu.md@C862 = 024400FF</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.mw@7D8E = 630A</action> <!-- charge shot -->
            <action>maincpu.mw@7DC8 = 0002</action> <!-- button check -->
            <action>maincpu.mw@BD86 = 0002</action> <!-- charge shot level 1 -->
            <action>maincpu.mw@BD92 = 0002</action> <!-- charge shot level 2 -->
        </script>
        <script state="off">
            <action>maincpu.mw@7D8E = 6392</action>
            <action>maincpu.mw@7DC8 = FF5A</action>
            <action>maincpu.mw@BD86 = 0012</action>
            <action>maincpu.mw@BD92 = 0006</action>
        </script>
    </cheat>

    <cheat desc="action speed up">
        <script state="on">
            <action>maincpu.mb@80E2 = 60</action>
        </script>
        <script state="off">
            <action>maincpu.mb@80E2 = 67</action>
        </script>
    </cheat>

    <cheat desc="multiple jump">
        <script state="on">
            <action>maincpu.md@7C96 = 60000024</action>
        </script>
        <script state="off">
            <action>maincpu.md@7C96 = 6600008A</action>
        </script>
    </cheat>

    <cheat desc="timer speed">
        <parameter>
            <item value="0x0100">01 (slow)</item>
            <item value="0x0080">02       </item>
            <item value="0x0040">03       </item>
            <item value="0x0020">04       </item>
            <item value="0x0001">05 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.mw@3ED6 = param</action> <!-- initialize -->
            <action>maincpu.mw@42D4 = param</action>
        </script>
        <script state="off">
            <action>maincpu.mw@3ED6 = 003C</action>
            <action>maincpu.mw@42D4 = 003C</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <comment>set &quot;skip rom check&quot; then reset the game (F3)</comment>
        <script state="on">
            <action>maincpu.md@00E14 = 00030DA0        </action>
            <action>maincpu.mq@30DA0 = 41F90010000043F9</action>
            <action>maincpu.mq@30DA8 = 00C0000112001039</action>
            <action>maincpu.mq@30DB0 = 00800001B20067F4</action>
            <action>maincpu.mq@30DB8 = 0C0000FB66025310</action>
            <action>maincpu.mq@30DC0 = 0C0000F766025210</action>
            <action>maincpu.mq@30DC8 = 0C0000FD66040410</action>
            <action>maincpu.mq@30DD0 = 00100C0000FE6604</action>
            <action>maincpu.mq@30DD8 = 061000100C0000EF</action>
            <action>maincpu.mq@30DE0 = 660212900C0000DF</action>
            <action>maincpu.mq@30DE8 = 6602421160BE0000</action>
            <!--
            30DA0 | 41F9 0010 0000 : lea     $100000.l, A0 // sound code address
            30DA6 | 43F9 00C0 0001 : lea     $c00001.l, A1 // sound latch address
            30DAC | 1200           : move.b  D0, D1
            30DAE | 1039 0080 0001 : move.b  $800001.l, D0 // read input
            30DB4 | B200           : cmp.b   D0, D1
            30DB6 | 67F4           : beq     $30dac
            30DB8 | 0C00 00FB      : cmpi.b  #-$5, D0
            30DBC | 6602           : bne     $30dc0
            30DBE | 5310           : subq.b  #1, (A0)      // decrease code -01
            30DC0 | 0C00 00F7      : cmpi.b  #-$9, D0
            30DC4 | 6602           : bne     $30dc8
            30DC6 | 5210           : addq.b  #1, (A0)      // increase code +01
            30DC8 | 0C00 00FD      : cmpi.b  #-$3, D0
            30DCC | 6604           : bne     $30dd2
            30DCE | 0410 0010      : subi.b  #$10, (A0)    // decrease code -10
            30DD2 | 0C00 00FE      : cmpi.b  #-$2, D0
            30DD6 | 6604           : bne     $30ddc
            30DD8 | 0610 0010      : addi.b  #$10, (A0)    // increase code +10
            30DDC | 0C00 00EF      : cmpi.b  #-$11, D0
            30DE0 | 6602           : bne     $30de4
            30DE2 | 1290           : move.b  (A0), (A1)    // play sound
            30DE4 | 0C00 00DF      : cmpi.b  #-$21, D0
            30DE8 | 6602           : bne     $30dec
            30DEA | 4211           : clr.b   (A1)          // stop sound
            30DEC | 60BE           : bra     $30dac
            -->
        </script>
        <script state="run">
            <output format="----- catt 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@100000</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.md@00E14 = 0000504A        </action>
            <action>maincpu.mq@30E20 = 0000000000000000</action>
            <action>maincpu.mq@30E28 = 0000000000000000</action>
            <action>maincpu.mq@30E30 = 0000000000000000</action>
            <action>maincpu.mq@30E38 = 0000000000000000</action>
            <action>maincpu.mq@30E40 = 0000000000000000</action>
            <action>maincpu.mq@30E48 = 0000000000000000</action>
            <action>maincpu.mq@30E50 = 0000000000000000</action>
            <action>maincpu.mq@30E58 = 0000000000000000</action>
            <action>maincpu.mq@30E60 = 0000000000000000</action>
            <action>maincpu.mq@30E68 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="skip rom check">
        <script state="on">
            <action>maincpu.mw@03D4 = 01BE</action>
        </script>
        <script state="off">
            <action>maincpu.mw@03D4 = 0198</action>
        </script>
    </cheat>

</mamecheat>
"auto fire" : Upper attack (hold up + press attack button) exists in macatadvj only so that mcatadv and catt don't have relevant codes.