Page 1 of 1

[karnovj] Karnov

Posted: Sun Jun 12, 2022 1:17 pm
by jman

Code: Select all

<cheat desc="auto fire">
    <script state="on">
        <action>maincpu.mb@1e1b = 80</action>
    </script>
    <script state="off">
        <action>maincpu.mb@1e1b = 82</action>
    </script>
</cheat>

<cheat desc="bullet speed - main shot">
    <parameter>
        <item value="0x01">01 (slow)</item>
        <item value="0x03">02       </item>
        <item value="0x06">03       </item>
        <item value="0x09">04       </item>
        <item value="0x0c">05 (fast)</item>
    </parameter>
    <script state="change">
        <action>maincpu.mb@29c5 =  param</action> <!-- shot level 1 : right -->
        <action>maincpu.mb@29c7 = -param</action> <!-- shot level 1 : left -->
        <action>maincpu.mb@29c9 =  param</action> <!-- shot level 2 : right -->
        <action>maincpu.mb@29cb = -param</action> <!-- shot level 2 : left -->
        <action>maincpu.mb@29d1 =  param</action> <!-- shot level 3 : right -->
        <action>maincpu.mb@29d3 = -param</action> <!-- shot level 3 : left -->
    </script>
    <script state="off">
        <action>maincpu.mb@29c5 = 03</action>
        <action>maincpu.mb@29c7 = fd</action>
        <action>maincpu.mb@29c9 = 04</action>
        <action>maincpu.mb@29cb = fc</action>
        <action>maincpu.mb@29d1 = 04</action>
        <action>maincpu.mb@29d3 = fc</action>
    </script>
</cheat>

<cheat desc="multiple jump">
    <script state="on">
        <action>maincpu.mq@012da = 4eb90004d5f02070</action>
        <action>maincpu.mq@4d5f0 = 024000030c000001</action>
        <action>maincpu.mq@4d5f8 = 660c083900050006</action>
        <action>maincpu.mq@4d600 = 0c8267024240e548</action>
        <action>maincpu.mq@4d608 = 4e75ffffffffffff</action>
        <!--
        4d5f0 | 0240 0003           : andi.w #$3,D0
        4d5f4 | 0c00 0001           : cmpi.b #$1,D0
        4d5f8 | 660c                : bne    $4d606
        4d5fa | 0839 0005 0006 0c82 : btst   #$5,$60c82.l
        4d602 | 6702                : beq    $4d606
        4d604 | 4240                : clr.w  D0
        4d606 | e548                : lsl.w  #2,D0
        4d608 | 4e75                : rts
        -->
    </script>
    <script state="off">
        <action>maincpu.mq@012da = 02400003e5482070</action>
        <action>maincpu.mq@4d5f0 = ffffffffffffffff</action>
        <action>maincpu.mq@4d5f8 = ffffffffffffffff</action>
        <action>maincpu.mq@4d600 = ffffffffffffffff</action>
        <action>maincpu.mq@4d608 = ffffffffffffffff</action>
    </script>
</cheat>

<cheat desc="open hidden item">
    <script state="on">
        <!-- invisible point -->
        <action>maincpu.mq@03a9e = 4eb90004d6106700</action>
        <action>maincpu.mq@4d610 = 4247322800029279</action>
        <action>maincpu.mq@4d618 = 0006020264024441</action>
        <action>maincpu.mq@4d620 = 0c41001064043e3c</action>
        <action>maincpu.mq@4d628 = ffff4a474e75ffff</action>
        <!--
        4d610 | 4247           : clr.w  D7
        4d612 | 3228 0002      : move.w ($2,A0),D1
        4d616 | 9279 0006 0202 : sub.w  $60202.l,D1
        4d61c | 6402           : bcc    $4d620
        4d61e | 4441           : neg.w  D1
        4d620 | 0c41 0010      : cmpi.w #$10,D1
        4d624 | 6404           : bcc    $4d62a
        4d626 | 3e3c ffff      : move.w #$ffff,D7
        4d62a | 4a47           : tst.w  D7
        4d62c | 4e75           : rts
        -->
        <!-- mask -->
        <action>maincpu.mw@3b2e = 4e71</action>
    </script>
    <script state="off">
        <action>maincpu.mq@03a9e = 610002aa4a476700</action>
        <action>maincpu.mq@4d610 = ffffffffffffffff</action>
        <action>maincpu.mq@4d618 = ffffffffffffffff</action>
        <action>maincpu.mq@4d620 = ffffffffffffffff</action>
        <action>maincpu.mq@4d628 = ffffffffffffffff</action>
        <action>maincpu.mw@03b2e =             6718</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="on">
        <action>maincpu.mw@10f32 = 0c40</action> <!-- cmpi.w #$xx,D0 -->
    </script>
    <script state="change">
        <action>maincpu.mw@10f34 = param</action>
    </script>
    <script state="off">
        <action>maincpu.md@10f32 = b0701000</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@0060a =         0004d630</action>
        <action>maincpu.mq@4d630 = 4eb90000097e41f9</action>
        <action>maincpu.mq@4d638 = 0006010043f9000c</action>
        <action>maincpu.mq@4d640 = 000312001029fffe</action>
        <action>maincpu.mq@4d648 = b20067f60c0000fb</action>
        <action>maincpu.mq@4d650 = 660253100c0000f7</action>
        <action>maincpu.mq@4d658 = 660252100c0000fd</action>
        <action>maincpu.mq@4d660 = 6604041000100c00</action>
        <action>maincpu.mq@4d668 = 00fe660406100010</action>
        <action>maincpu.mq@4d670 = 0c0000ef66021290</action>
        <action>maincpu.mq@4d678 = 0c0000df660412bc</action>
        <action>maincpu.mq@4d680 = 001c60beffffffff</action>
        <!--
        4d630 | 4eb9 0000 097e : jsr    $97e.l      // clear objects
        4d636 | 41f9 0006 0100 : lea    $60100.l,A0 // sound code address
        4d63c | 43f9 000c 0003 : lea    $c0003.l,A1 // sound latch address
        4d642 | 1200           : move.b D0,D1
        4d644 | 1029 fffe      : move.b (-$2,A1),D0 // read input
        4d648 | b200           : cmp.b  D0,D1
        4d64a | 67f6           : beq    $4d642
        4d64c | 0c00 00fb      : cmpi.b #-$5,D0
        4d650 | 6602           : bne    $4d654
        4d652 | 5310           : subq.b #1,(A0)     // decrease code -01
        4d654 | 0c00 00f7      : cmpi.b #-$9,D0
        4d658 | 6602           : bne    $4d65c
        4d65a | 5210           : addq.b #1,(A0)     // increase code +01
        4d65c | 0c00 00fd      : cmpi.b #-$3,D0
        4d660 | 6604           : bne    $4d666
        4d662 | 0410 0010      : subi.b #$10,(A0)   // decrease code -10
        4d666 | 0c00 00fe      : cmpi.b #-$2,D0
        4d66a | 6604           : bne    $4d670
        4d66c | 0610 0010      : addi.b #$10,(A0)   // increase code +10
        4d670 | 0c00 00ef      : cmpi.b #-$11,D0
        4d674 | 6602           : bne    $4d678
        4d676 | 1290           : move.b (A0),(A1)   // play sound
        4d678 | 0c00 00df      : cmpi.b #-$21,D0
        4d67c | 6604           : bne    $4d682
        4d67e | 12bc 001c      : move.b #$1c,(A1)   // stop sound
        4d682 | 60be           : bra    $4d642
        -->
    </script>
    <script state="run">
        <output format="----- karnov 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@60100</argument>
        </output>
    </script>
    <script state="off">
        <action>maincpu.md@0060a =         00010d22</action>
        <action>maincpu.mq@4d630 = ffffffffffffffff</action>
        <action>maincpu.mq@4d638 = ffffffffffffffff</action>
        <action>maincpu.mq@4d640 = ffffffffffffffff</action>
        <action>maincpu.mq@4d648 = ffffffffffffffff</action>
        <action>maincpu.mq@4d650 = ffffffffffffffff</action>
        <action>maincpu.mq@4d658 = ffffffffffffffff</action>
        <action>maincpu.mq@4d660 = ffffffffffffffff</action>
        <action>maincpu.mq@4d668 = ffffffffffffffff</action>
        <action>maincpu.mq@4d670 = ffffffffffffffff</action>
        <action>maincpu.mq@4d678 = ffffffffffffffff</action>
        <action>maincpu.mq@4d680 = ffffffffffffffff</action>
    </script>
</cheat>

[karnov]+ Karnov

Posted: Fri Jan 19, 2024 9:19 am
by jman
karnov.xml

Code: Select all

<!-- Karnov (US, rev 6) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mb@030EA = 60</action> <!-- bomb -->
            <action>maincpu.mb@09260 = 60</action> <!-- enemy -->
            <action>maincpu.mb@0EEE2 = 60</action> <!-- enemy -->
            <action>maincpu.mb@11226 = 60</action> <!-- bullet -->
        </script>
        <script state="off">
            <action>maincpu.mb@030EA = 67</action>
            <action>maincpu.mb@09260 = 64</action>
            <action>maincpu.mb@0EEE2 = 64</action>
            <action>maincpu.mb@11226 = 67</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.mb@1E35 = 80</action>
        </script>
        <script state="off">
            <action>maincpu.mb@1E35 = 82</action>
        </script>
    </cheat>

    <cheat desc="bullet speed - main shot">
        <parameter>
            <item value="0x01">01 (slow)</item>
            <item value="0x03">02       </item>
            <item value="0x06">03       </item>
            <item value="0x09">04       </item>
            <item value="0x0c">05 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.mb@29CF =  param</action> <!-- shot level 1 : right -->
            <action>maincpu.mb@29D1 = -param</action> <!-- shot level 1 : left -->
            <action>maincpu.mb@29D3 =  param</action> <!-- shot level 2 : right -->
            <action>maincpu.mb@29D5 = -param</action> <!-- shot level 2 : left -->
            <action>maincpu.mb@29DB =  param</action> <!-- shot level 3 : right -->
            <action>maincpu.mb@29DD = -param</action> <!-- shot level 3 : left -->
        </script>
        <script state="off">
            <action>maincpu.mb@29CF = 03</action>
            <action>maincpu.mb@29D1 = FD</action>
            <action>maincpu.mb@29D3 = 04</action>
            <action>maincpu.mb@29D5 = FC</action>
            <action>maincpu.mb@29DB = 04</action>
            <action>maincpu.mb@29DD = FC</action>
        </script>
    </cheat>

    <cheat desc="multiple jump">
        <script state="on">
            <action>maincpu.mq@012F4 = 4EB90004D8102070</action>
            <action>maincpu.mq@4D810 = 024000030C000001</action>
            <action>maincpu.mq@4D818 = 660C083900050006</action>
            <action>maincpu.mq@4D820 = 0C8267024240E548</action>
            <action>maincpu.mq@4D828 = 4E75FFFFFFFFFFFF</action>
            <!--
            4D810 | 0240 0003           : andi.w  #$3, D0
            4D814 | 0C00 0001           : cmpi.b  #$1, D0
            4D818 | 660C                : bne     $4d826
            4D81A | 0839 0005 0006 0C82 : btst    #$5, $60c82.l
            4D822 | 6702                : beq     $4d826
            4D824 | 4240                : clr.w   D0
            4D826 | E548                : lsl.w   #2, D0
            4D828 | 4E75                : rts
            -->
        </script>
        <script state="off">
            <action>maincpu.mq@012F4 = 02400003E5482070</action>
            <action>maincpu.mq@4D810 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@4D818 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@4D820 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@4D828 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="hidden item finder">
        <script state="on">
            <!-- invisible point -->
            <action>maincpu.mq@03AA8 = 4EB90004D8306700</action>
            <action>maincpu.mq@4D830 = 4247322800029279</action>
            <action>maincpu.mq@4D838 = 0006020264024441</action>
            <action>maincpu.mq@4D840 = 0C41001064043E3C</action>
            <action>maincpu.mq@4D848 = FFFF4A474E75FFFF</action>
            <!--
            4D830 | 4247           : clr.w   D7
            4D832 | 3228 0002      : move.w  ($2,A0), D1
            4D836 | 9279 0006 0202 : sub.w   $60202.l, D1
            4D83C | 6402           : bcc     $4d840
            4D83E | 4441           : neg.w   D1
            4D840 | 0C41 0010      : cmpi.w  #$10, D1
            4D844 | 6404           : bcc     $4d84a
            4D846 | 3E3C FFFF      : move.w  #$ffff, D7
            4D84A | 4A47           : tst.w   D7
            4D84C | 4E75           : rts
            -->
            <!-- mask -->
            <action>maincpu.mw@3B38 = 4E71</action>
        </script>
        <script state="off">
            <action>maincpu.mq@03AA8 = 610002AA4A476700</action>
            <action>maincpu.mq@4D830 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@4D838 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@4D840 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@4D848 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mw@03B38 = 6718            </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="on">
            <action>maincpu.mw@117D0 = 0C40</action>
        </script>
        <script state="change">
            <action>maincpu.mw@117D2 = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@117D0 = B0701000</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@0060A = 0004D850        </action>
            <action>maincpu.mq@4D850 = 4EB8098441F90006</action>
            <action>maincpu.mq@4D858 = 100043F9000C0003</action>
            <action>maincpu.mq@4D860 = 12001029FFFEB200</action>
            <action>maincpu.mq@4D868 = 67F60C0000FB6602</action>
            <action>maincpu.mq@4D870 = 53100C0000F76602</action>
            <action>maincpu.mq@4D878 = 52100C0000FD6604</action>
            <action>maincpu.mq@4D880 = 041000100C0000FE</action>
            <action>maincpu.mq@4D888 = 6604061000100C00</action>
            <action>maincpu.mq@4D890 = 00EF660212900C00</action>
            <action>maincpu.mq@4D898 = 00DF660412BC001C</action>
            <action>maincpu.mq@4D8A0 = 60BEFFFFFFFFFFFF</action>
            <!--
            4D850 | 4EB8 0984      : jsr     $984.w       // clear objects
            4D854 | 41F9 0006 1000 : lea     $61000.l, A0 // sound code address
            4D85A | 43F9 000C 0003 : lea     $c0003.l, A1 // sound latch address
            4D860 | 1200           : move.b  D0, D1
            4D862 | 1029 FFFE      : move.b  (-$2,A1), D0 // read input ($c0001)
            4D866 | B200           : cmp.b   D0, D1
            4D868 | 67F6           : beq     $4d860
            4D86A | 0C00 00FB      : cmpi.b  #-$5, D0
            4D86E | 6602           : bne     $4d872
            4D870 | 5310           : subq.b  #1, (A0)     // decrease code -01
            4D872 | 0C00 00F7      : cmpi.b  #-$9, D0
            4D876 | 6602           : bne     $4d87a
            4D878 | 5210           : addq.b  #1, (A0)     // increase code +01
            4D87A | 0C00 00FD      : cmpi.b  #-$3, D0
            4D87E | 6604           : bne     $4d884
            4D880 | 0410 0010      : subi.b  #$10, (A0)   // decrease code -10
            4D884 | 0C00 00FE      : cmpi.b  #-$2, D0
            4D888 | 6604           : bne     $4d88e
            4D88A | 0610 0010      : addi.b  #$10, (A0)   // increase code +10
            4D88E | 0C00 00EF      : cmpi.b  #-$11, D0
            4D892 | 6602           : bne     $4d896
            4D894 | 1290           : move.b  (A0), (A1)   // play sound
            4D896 | 0C00 00DF      : cmpi.b  #-$21, D0
            4D89A | 6604           : bne     $4d8a0
            4D89C | 12BC 001C      : move.b  #$1c, (A1)   // stop sound
            4D8A0 | 60BE           : bra     $4d860
            -->
        </script>
        <script state="run">
            <output format="----- karnov 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@61000</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.md@0060A = 0001159E        </action>
            <action>maincpu.mq@4D850 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@4D858 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@4D860 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@4D868 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@4D870 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@4D878 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@4D880 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@4D888 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@4D890 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@4D898 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@4D8A0 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

</mamecheat>
karnova.xml

Code: Select all

<!-- Karnov (US, rev 5) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mb@030EA = 60</action> <!-- bomb -->
            <action>maincpu.mb@09260 = 60</action> <!-- enemy -->
            <action>maincpu.mb@0EEE2 = 60</action> <!-- enemy -->
            <action>maincpu.mb@11226 = 60</action> <!-- bullet -->
        </script>
        <script state="off">
            <action>maincpu.mb@030EA = 67</action>
            <action>maincpu.mb@09260 = 64</action>
            <action>maincpu.mb@0EEE2 = 64</action>
            <action>maincpu.mb@11226 = 67</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.mb@1E35 = 80</action>
        </script>
        <script state="off">
            <action>maincpu.mb@1E35 = 82</action>
        </script>
    </cheat>

    <cheat desc="bullet speed - main shot">
        <parameter>
            <item value="0x01">01 (slow)</item>
            <item value="0x03">02       </item>
            <item value="0x06">03       </item>
            <item value="0x09">04       </item>
            <item value="0x0c">05 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.mb@29CF =  param</action> <!-- shot level 1 : right -->
            <action>maincpu.mb@29D1 = -param</action> <!-- shot level 1 : left -->
            <action>maincpu.mb@29D3 =  param</action> <!-- shot level 2 : right -->
            <action>maincpu.mb@29D5 = -param</action> <!-- shot level 2 : left -->
            <action>maincpu.mb@29DB =  param</action> <!-- shot level 3 : right -->
            <action>maincpu.mb@29DD = -param</action> <!-- shot level 3 : left -->
        </script>
        <script state="off">
            <action>maincpu.mb@29CF = 03</action>
            <action>maincpu.mb@29D1 = FD</action>
            <action>maincpu.mb@29D3 = 04</action>
            <action>maincpu.mb@29D5 = FC</action>
            <action>maincpu.mb@29DB = 04</action>
            <action>maincpu.mb@29DD = FC</action>
        </script>
    </cheat>

    <cheat desc="multiple jump">
        <script state="on">
            <action>maincpu.mq@012F4 = 4EB90004D8102070</action>
            <action>maincpu.mq@4D810 = 024000030C000001</action>
            <action>maincpu.mq@4D818 = 660C083900050006</action>
            <action>maincpu.mq@4D820 = 0C8267024240E548</action>
            <action>maincpu.mq@4D828 = 4E75FFFFFFFFFFFF</action>
            <!--
            4D810 | 0240 0003           : andi.w  #$3, D0
            4D814 | 0C00 0001           : cmpi.b  #$1, D0
            4D818 | 660C                : bne     $4d826
            4D81A | 0839 0005 0006 0C82 : btst    #$5, $60c82.l
            4D822 | 6702                : beq     $4d826
            4D824 | 4240                : clr.w   D0
            4D826 | E548                : lsl.w   #2, D0
            4D828 | 4E75                : rts
            -->
        </script>
        <script state="off">
            <action>maincpu.mq@012F4 = 02400003E5482070</action>
            <action>maincpu.mq@4D810 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@4D818 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@4D820 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@4D828 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="hidden item finder">
        <script state="on">
            <!-- invisible point -->
            <action>maincpu.mq@03AA8 = 4EB90004D8306700</action>
            <action>maincpu.mq@4D830 = 4247322800029279</action>
            <action>maincpu.mq@4D838 = 0006020264024441</action>
            <action>maincpu.mq@4D840 = 0C41001064043E3C</action>
            <action>maincpu.mq@4D848 = FFFF4A474E75FFFF</action>
            <!--
            4D830 | 4247           : clr.w   D7
            4D832 | 3228 0002      : move.w  ($2,A0), D1
            4D836 | 9279 0006 0202 : sub.w   $60202.l, D1
            4D83C | 6402           : bcc     $4d840
            4D83E | 4441           : neg.w   D1
            4D840 | 0C41 0010      : cmpi.w  #$10, D1
            4D844 | 6404           : bcc     $4d84a
            4D846 | 3E3C FFFF      : move.w  #$ffff, D7
            4D84A | 4A47           : tst.w   D7
            4D84C | 4E75           : rts
            -->
            <!-- mask -->
            <action>maincpu.mw@3B38 = 4E71</action>
        </script>
        <script state="off">
            <action>maincpu.mq@03AA8 = 610002AA4A476700</action>
            <action>maincpu.mq@4D830 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@4D838 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@4D840 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@4D848 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mw@03B38 = 6718            </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="on">
            <action>maincpu.mw@117D0 = 0C40</action>
        </script>
        <script state="change">
            <action>maincpu.mw@117D2 = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@117D0 = B0701000</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@0060A = 0004D850        </action>
            <action>maincpu.mq@4D850 = 4EB8098441F90006</action>
            <action>maincpu.mq@4D858 = 100043F9000C0003</action>
            <action>maincpu.mq@4D860 = 12001029FFFEB200</action>
            <action>maincpu.mq@4D868 = 67F60C0000FB6602</action>
            <action>maincpu.mq@4D870 = 53100C0000F76602</action>
            <action>maincpu.mq@4D878 = 52100C0000FD6604</action>
            <action>maincpu.mq@4D880 = 041000100C0000FE</action>
            <action>maincpu.mq@4D888 = 6604061000100C00</action>
            <action>maincpu.mq@4D890 = 00EF660212900C00</action>
            <action>maincpu.mq@4D898 = 00DF660412BC001C</action>
            <action>maincpu.mq@4D8A0 = 60BEFFFFFFFFFFFF</action>
            <!--
            4D850 | 4EB8 0984      : jsr     $984.w       // clear objects
            4D854 | 41F9 0006 1000 : lea     $61000.l, A0 // sound code address
            4D85A | 43F9 000C 0003 : lea     $c0003.l, A1 // sound latch address
            4D860 | 1200           : move.b  D0, D1
            4D862 | 1029 FFFE      : move.b  (-$2,A1), D0 // read input ($c0001)
            4D866 | B200           : cmp.b   D0, D1
            4D868 | 67F6           : beq     $4d860
            4D86A | 0C00 00FB      : cmpi.b  #-$5, D0
            4D86E | 6602           : bne     $4d872
            4D870 | 5310           : subq.b  #1, (A0)     // decrease code -01
            4D872 | 0C00 00F7      : cmpi.b  #-$9, D0
            4D876 | 6602           : bne     $4d87a
            4D878 | 5210           : addq.b  #1, (A0)     // increase code +01
            4D87A | 0C00 00FD      : cmpi.b  #-$3, D0
            4D87E | 6604           : bne     $4d884
            4D880 | 0410 0010      : subi.b  #$10, (A0)   // decrease code -10
            4D884 | 0C00 00FE      : cmpi.b  #-$2, D0
            4D888 | 6604           : bne     $4d88e
            4D88A | 0610 0010      : addi.b  #$10, (A0)   // increase code +10
            4D88E | 0C00 00EF      : cmpi.b  #-$11, D0
            4D892 | 6602           : bne     $4d896
            4D894 | 1290           : move.b  (A0), (A1)   // play sound
            4D896 | 0C00 00DF      : cmpi.b  #-$21, D0
            4D89A | 6604           : bne     $4d8a0
            4D89C | 12BC 001C      : move.b  #$1c, (A1)   // stop sound
            4D8A0 | 60BE           : bra     $4d860
            -->
        </script>
        <script state="run">
            <output format="----- karnov 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@61000</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.md@0060A = 0001159E        </action>
            <action>maincpu.mq@4D850 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@4D858 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@4D860 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@4D868 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@4D870 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@4D878 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@4D880 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@4D888 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@4D890 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@4D898 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@4D8A0 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

</mamecheat>
karnovj.xml

Code: Select all

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

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mb@030E0 = 60</action> <!-- bomb -->
            <action>maincpu.mb@091F8 = 60</action> <!-- enemy -->
            <action>maincpu.mb@0E890 = 60</action> <!-- enemy -->
            <action>maincpu.mb@109BC = 60</action> <!-- bullet -->
        </script>
        <script state="off">
            <action>maincpu.mb@030E0 = 67</action>
            <action>maincpu.mb@091F8 = 64</action>
            <action>maincpu.mb@0E890 = 64</action>
            <action>maincpu.mb@109BC = 67</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.mb@1E1B = 80</action>
        </script>
        <script state="off">
            <action>maincpu.mb@1E1B = 82</action>
        </script>
    </cheat>

    <cheat desc="bullet speed - main shot">
        <parameter>
            <item value="0x01">01 (slow)</item>
            <item value="0x03">02       </item>
            <item value="0x06">03       </item>
            <item value="0x09">04       </item>
            <item value="0x0c">05 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.mb@29C5 =  param</action> <!-- shot level 1 : right -->
            <action>maincpu.mb@29C7 = -param</action> <!-- shot level 1 : left -->
            <action>maincpu.mb@29C9 =  param</action> <!-- shot level 2 : right -->
            <action>maincpu.mb@29CB = -param</action> <!-- shot level 2 : left -->
            <action>maincpu.mb@29D1 =  param</action> <!-- shot level 3 : right -->
            <action>maincpu.mb@29D3 = -param</action> <!-- shot level 3 : left -->
        </script>
        <script state="off">
            <action>maincpu.mb@29C5 = 03</action>
            <action>maincpu.mb@29C7 = FD</action>
            <action>maincpu.mb@29C9 = 04</action>
            <action>maincpu.mb@29CB = FC</action>
            <action>maincpu.mb@29D1 = 04</action>
            <action>maincpu.mb@29D3 = FC</action>
        </script>
    </cheat>

    <cheat desc="multiple jump">
        <script state="on">
            <action>maincpu.mq@012DA = 4EB90004D5F02070</action>
            <action>maincpu.mq@4D5F0 = 024000030C000001</action>
            <action>maincpu.mq@4D5F8 = 660C083900050006</action>
            <action>maincpu.mq@4D600 = 0C8267024240E548</action>
            <action>maincpu.mq@4D608 = 4E75FFFFFFFFFFFF</action>
            <!--
            4D5F0 | 0240 0003           : andi.w  #$3, D0
            4D5F4 | 0C00 0001           : cmpi.b  #$1, D0
            4D5F8 | 660C                : bne     $4d606
            4D5FA | 0839 0005 0006 0C82 : btst    #$5, $60c82.l
            4D602 | 6702                : beq     $4d606
            4D604 | 4240                : clr.w   D0
            4D606 | E548                : lsl.w   #2, D0
            4D608 | 4E75                : rts
            -->
        </script>
        <script state="off">
            <action>maincpu.mq@012DA = 02400003E5482070</action>
            <action>maincpu.mq@4D5F0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@4D5F8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@4D600 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@4D608 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="hidden item finder">
        <script state="on">
            <!-- invisible point -->
            <action>maincpu.mq@03A9E = 4EB90004D6106700</action>
            <action>maincpu.mq@4D610 = 4247322800029279</action>
            <action>maincpu.mq@4D618 = 0006020264024441</action>
            <action>maincpu.mq@4D620 = 0C41001064043E3C</action>
            <action>maincpu.mq@4D628 = FFFF4A474E75FFFF</action>
            <!--
            4D610 | 4247           : clr.w   D7
            4D612 | 3228 0002      : move.w  ($2,A0), D1
            4D616 | 9279 0006 0202 : sub.w   $60202.l, D1
            4D61C | 6402           : bcc     $4d620
            4D61E | 4441           : neg.w   D1
            4D620 | 0C41 0010      : cmpi.w  #$10, D1
            4D624 | 6404           : bcc     $4d62a
            4D626 | 3E3C FFFF      : move.w  #$ffff, D7
            4D62A | 4A47           : tst.w   D7
            4D62C | 4E75           : rts
            -->
            <!-- mask -->
            <action>maincpu.mw@3B2E = 4E71</action>
        </script>
        <script state="off">
            <action>maincpu.mq@03A9E = 610002AA4A476700</action>
            <action>maincpu.mq@4D610 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@4D618 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@4D620 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@4D628 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mw@03B2E = 6718            </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="on">
            <action>maincpu.mw@10F32 = 0C40</action>
        </script>
        <script state="change">
            <action>maincpu.mw@10F34 = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@10F32 = B0701000</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@0060A = 0004D630        </action>
            <action>maincpu.mq@4D630 = 4EB8097E41F90006</action>
            <action>maincpu.mq@4D638 = 100043F9000C0003</action>
            <action>maincpu.mq@4D640 = 12001029FFFEB200</action>
            <action>maincpu.mq@4D648 = 67F60C0000FB6602</action>
            <action>maincpu.mq@4D650 = 53100C0000F76602</action>
            <action>maincpu.mq@4D658 = 52100C0000FD6604</action>
            <action>maincpu.mq@4D660 = 041000100C0000FE</action>
            <action>maincpu.mq@4D668 = 6604061000100C00</action>
            <action>maincpu.mq@4D670 = 00EF660212900C00</action>
            <action>maincpu.mq@4D678 = 00DF660412BC001C</action>
            <action>maincpu.mq@4D680 = 60BEFFFFFFFFFFFF</action>
            <!--
            4D630 | 4EB8 097E      : jsr     $97e.w       // clear objects
            4D634 | 41F9 0006 1000 : lea     $61000.l, A0 // sound code address
            4D63A | 43F9 000C 0003 : lea     $c0003.l, A1 // sound latch address
            4D640 | 1200           : move.b  D0, D1
            4D642 | 1029 FFFE      : move.b  (-$2,A1), D0 // read input ($c0001)
            4D646 | B200           : cmp.b   D0, D1
            4D648 | 67F6           : beq     $4d640
            4D64A | 0C00 00FB      : cmpi.b  #-$5, D0
            4D64E | 6602           : bne     $4d652
            4D650 | 5310           : subq.b  #1, (A0)     // decrease code -01
            4D652 | 0C00 00F7      : cmpi.b  #-$9, D0
            4D656 | 6602           : bne     $4d65a
            4D658 | 5210           : addq.b  #1, (A0)     // increase code +01
            4D65A | 0C00 00FD      : cmpi.b  #-$3, D0
            4D65E | 6604           : bne     $4d664
            4D660 | 0410 0010      : subi.b  #$10, (A0)   // decrease code -10
            4D664 | 0C00 00FE      : cmpi.b  #-$2, D0
            4D668 | 6604           : bne     $4d66e
            4D66A | 0610 0010      : addi.b  #$10, (A0)   // increase code +10
            4D66E | 0C00 00EF      : cmpi.b  #-$11, D0
            4D672 | 6602           : bne     $4d676
            4D674 | 1290           : move.b  (A0), (A1)   // play sound
            4D676 | 0C00 00DF      : cmpi.b  #-$21, D0
            4D67A | 6604           : bne     $4d680
            4D67C | 12BC 001C      : move.b  #$1c, (A1)   // stop sound
            4D680 | 60BE           : bra     $4d640
            -->
        </script>
        <script state="run">
            <output format="----- karnov 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@61000</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.md@0060A = 00010D22        </action>
            <action>maincpu.mq@4D630 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@4D638 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@4D640 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@4D648 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@4D650 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@4D658 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@4D660 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@4D668 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@4D670 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@4D678 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@4D680 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

</mamecheat>
karnovjbl.xml

Code: Select all

<!-- Karnov (Japan, bootleg with NEC D8748HD) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mb@030E0 = 60</action> <!-- bomb -->
            <action>maincpu.mb@091F8 = 60</action> <!-- enemy -->
            <action>maincpu.mb@0E890 = 60</action> <!-- enemy -->
            <action>maincpu.mb@109BC = 60</action> <!-- bullet -->
        </script>
        <script state="off">
            <action>maincpu.mb@030E0 = 67</action>
            <action>maincpu.mb@091F8 = 64</action>
            <action>maincpu.mb@0E890 = 64</action>
            <action>maincpu.mb@109BC = 67</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.mb@1E1B = 80</action>
        </script>
        <script state="off">
            <action>maincpu.mb@1E1B = 82</action>
        </script>
    </cheat>

    <cheat desc="bullet speed - main shot">
        <parameter>
            <item value="0x01">01 (slow)</item>
            <item value="0x03">02       </item>
            <item value="0x06">03       </item>
            <item value="0x09">04       </item>
            <item value="0x0c">05 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.mb@29C5 =  param</action> <!-- shot level 1 : right -->
            <action>maincpu.mb@29C7 = -param</action> <!-- shot level 1 : left -->
            <action>maincpu.mb@29C9 =  param</action> <!-- shot level 2 : right -->
            <action>maincpu.mb@29CB = -param</action> <!-- shot level 2 : left -->
            <action>maincpu.mb@29D1 =  param</action> <!-- shot level 3 : right -->
            <action>maincpu.mb@29D3 = -param</action> <!-- shot level 3 : left -->
        </script>
        <script state="off">
            <action>maincpu.mb@29C5 = 03</action>
            <action>maincpu.mb@29C7 = FD</action>
            <action>maincpu.mb@29C9 = 04</action>
            <action>maincpu.mb@29CB = FC</action>
            <action>maincpu.mb@29D1 = 04</action>
            <action>maincpu.mb@29D3 = FC</action>
        </script>
    </cheat>

    <cheat desc="multiple jump">
        <script state="on">
            <action>maincpu.mq@012DA = 4EB900047B302070</action>
            <action>maincpu.mq@47B30 = 024000030C000001</action>
            <action>maincpu.mq@47B38 = 660C083900050006</action>
            <action>maincpu.mq@47B40 = 0C8267024240E548</action>
            <action>maincpu.mq@47B48 = 4E75FFFFFFFFFFFF</action>
            <!--
            47B30 | 0240 0003           : andi.w  #$3, D0
            47B34 | 0C00 0001           : cmpi.b  #$1, D0
            47B38 | 660C                : bne     $47b46
            47B3A | 0839 0005 0006 0C82 : btst    #$5, $60c82.l
            47B42 | 6702                : beq     $47b46
            47B44 | 4240                : clr.w   D0
            47B46 | E548                : lsl.w   #2, D0
            47B48 | 4E75                : rts
            -->
        </script>
        <script state="off">
            <action>maincpu.mq@012DA = 02400003E5482070</action>
            <action>maincpu.mq@47B30 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47B38 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47B40 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47B48 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="hidden item finder">
        <script state="on">
            <!-- invisible point -->
            <action>maincpu.mq@03A9E = 4EB900047B506700</action>
            <action>maincpu.mq@47B50 = 4247322800029279</action>
            <action>maincpu.mq@47B58 = 0006020264024441</action>
            <action>maincpu.mq@47B60 = 0C41001064043E3C</action>
            <action>maincpu.mq@47B68 = FFFF4A474E75FFFF</action>
            <!--
            47B50 | 4247           : clr.w   D7
            47B52 | 3228 0002      : move.w  ($2,A0), D1
            47B56 | 9279 0006 0202 : sub.w   $60202.l, D1
            47B5C | 6402           : bcc     $47b60
            47B5E | 4441           : neg.w   D1
            47B60 | 0C41 0010      : cmpi.w  #$10, D1
            47B64 | 6404           : bcc     $47b6a
            47B66 | 3E3C FFFF      : move.w  #$ffff, D7
            47B6A | 4A47           : tst.w   D7
            47B6C | 4E75           : rts
            -->
            <!-- mask -->
            <action>maincpu.mw@3B2E = 4E71</action>
        </script>
        <script state="off">
            <action>maincpu.mq@03A9E = 610002AA4A476700</action>
            <action>maincpu.mq@47B50 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47B58 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47B60 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47B68 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mw@03B2E = 6718            </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="on">
            <action>maincpu.mw@10F32 = 0C40</action>
        </script>
        <script state="change">
            <action>maincpu.mw@10F34 = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@10F32 = B0701000</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@0060A = 00047B70        </action>
            <action>maincpu.mq@47B70 = 4EB8097E41F90006</action>
            <action>maincpu.mq@47B78 = 100043F9000C0003</action>
            <action>maincpu.mq@47B80 = 12001029FFFEB200</action>
            <action>maincpu.mq@47B88 = 67F60C0000FB6602</action>
            <action>maincpu.mq@47B90 = 53100C0000F76602</action>
            <action>maincpu.mq@47B98 = 52100C0000FD6604</action>
            <action>maincpu.mq@47BA0 = 041000100C0000FE</action>
            <action>maincpu.mq@47BA8 = 6604061000100C00</action>
            <action>maincpu.mq@47BB0 = 00EF660212900C00</action>
            <action>maincpu.mq@47BB8 = 00DF660412BC001C</action>
            <action>maincpu.mq@47BC0 = 60BEFFFFFFFFFFFF</action>
            <!--
            47B70 | 4EB8 097E      : jsr     $97e.w       // clear objects
            47B74 | 41F9 0006 1000 : lea     $61000.l, A0 // sound code address
            47B7A | 43F9 000C 0003 : lea     $c0003.l, A1 // sound latch address
            47B80 | 1200           : move.b  D0, D1
            47B82 | 1029 FFFE      : move.b  (-$2,A1), D0 // read input ($c0001)
            47B86 | B200           : cmp.b   D0, D1
            47B88 | 67F6           : beq     $47b80
            47B8A | 0C00 00FB      : cmpi.b  #-$5, D0
            47B8E | 6602           : bne     $47b92
            47B90 | 5310           : subq.b  #1, (A0)     // decrease code -01
            47B92 | 0C00 00F7      : cmpi.b  #-$9, D0
            47B96 | 6602           : bne     $47b9a
            47B98 | 5210           : addq.b  #1, (A0)     // increase code +01
            47B9A | 0C00 00FD      : cmpi.b  #-$3, D0
            47B9E | 6604           : bne     $47ba4
            47BA0 | 0410 0010      : subi.b  #$10, (A0)   // decrease code -10
            47BA4 | 0C00 00FE      : cmpi.b  #-$2, D0
            47BA8 | 6604           : bne     $47bae
            47BAA | 0610 0010      : addi.b  #$10, (A0)   // increase code +10
            47BAE | 0C00 00EF      : cmpi.b  #-$11, D0
            47BB2 | 6602           : bne     $47bb6
            47BB4 | 1290           : move.b  (A0), (A1)   // play sound
            47BB6 | 0C00 00DF      : cmpi.b  #-$21, D0
            47BBA | 6604           : bne     $47bc0
            47BBC | 12BC 001C      : move.b  #$1c, (A1)   // stop sound
            47BC0 | 60BE           : bra     $47b80
            -->
        </script>
        <script state="run">
            <output format="----- karnov 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@61000</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.md@0060A = 00010D22        </action>
            <action>maincpu.mq@47B70 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47B78 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47B80 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47B88 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47B90 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47B98 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47BA0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47BA8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47BB0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47BB8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47BC0 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

</mamecheat>
karnovjbl freezes after the game starts. So I can't verify the cheat codes except "sound test mode".