Page 1 of 1

[bonzeadv]+ Bonze Adventure/Jigoku Meguri

Posted: Sat Jul 12, 2025 9:32 am
by jman
bonzeadv.xml

Code: Select all

<!-- Bonze Adventure (World, rev 1) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mw@0D462 = 6008</action> <!-- trap -->
            <action>maincpu.mw@0D9BC = 6000</action> <!-- trap -->
            <action>maincpu.mw@128E4 = 0BB6</action> <!-- most enemies -->
            <action>maincpu.mw@128F2 = 0BA8</action> <!-- bullet -->
            <action>maincpu.mw@12982 = 3210</action> <!-- rare enemies -->
            <action>maincpu.mw@129D2 = 3210</action> <!-- barrier -->
            <action>maincpu.mw@129FA = 3210</action> <!-- wind -->
            <action>maincpu.mw@12C7E = 08AD</action> <!-- water pillar -->
        </script>
        <script state="off">
            <action>maincpu.mw@0D462 = 6608</action>
            <action>maincpu.mw@0D9BC = 6600</action>
            <action>maincpu.mw@128E4 = 0B0C</action>
            <action>maincpu.mw@128F2 = 0AD2</action>
            <action>maincpu.mw@12982 = 2E8A</action>
            <action>maincpu.mw@129D2 = 30D0</action>
            <action>maincpu.mw@129FA = 2CF0</action>
            <action>maincpu.mw@12C7E = 08ED</action>
        </script>
    </cheat>

    <cheat desc="rapid fire">
        <script state="on">
            <action>maincpu.mb@FE7D = 08              </action>
            <action>maincpu.md@FE8C = 4EF80110        </action>
            <action>maincpu.mq@0110 = 4EB90001072C4EF9</action>
            <action>maincpu.mq@0118 = 0000FE98FFFFFFFF</action>
            <!--
            0110 | 4EB9 0001 072C : jsr     $1072c.l
            0116 | 4EF9 0000 FE98 : jmp     $fe98.l
            -->
        </script>
        <script state="off">
            <action>maincpu.mb@FE7D = 12              </action>
            <action>maincpu.md@FE8C = 6100089E        </action>
            <action>maincpu.mq@0110 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@0118 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="walk speed">
        <parameter min="0x01" max="0x05" step="0x01" />
        <script state="on">
            <action>maincpu.mq@0DF98 = 4EB90003C1C04E75</action>
            <action>maincpu.mq@3C1C0 = 30300000670C7000</action>
            <action>maincpu.mq@3C1C8 = 082D000615DF6702</action>
            <action>maincpu.mq@3C1D0 = 70003B4015D84E75</action>
            <!--
            3C1C0 | 3030 0000      : move.w  (A0,D0.w), D0
            3C1C4 | 670C           : beq     $3c1d2
            3C1C6 | 7000           : moveq   #$0, D0
            3C1C8 | 082D 0006 15DF : btst    #$6, ($15df,A5)
            3C1CE | 6702           : beq     $3c1d2
            3C1D0 | 70xx           : moveq   #$xx, D0
            3C1D2 | 3B40 15D8      : move.w  D0, ($15d8,A5)
            3C1D6 | 4E75           : rts
            -->
        </script>
        <script state="change">
            <action>maincpu.mb@3C1D1 = param</action>
        </script>
        <script state="off">
            <action>maincpu.mq@0DF98 = 3B70000015D84E75</action>
            <action>maincpu.mq@3C1C0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C1C8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C1D0 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="multiple jump">
        <script state="on">
            <action>maincpu.md@D0AC = 4EB80130        </action>
            <action>maincpu.mq@0130 = 4A6D15EE672C302D</action>
            <action>maincpu.mq@0138 = 0B94322D3F803B40</action>
            <action>maincpu.mq@0140 = 3F804640C0410800</action>
            <action>maincpu.mq@0148 = 000567163B7C000F</action>
            <action>maincpu.mq@0150 = 15F03B7C008015EE</action>
            <action>maincpu.mq@0158 = 103C00184EB90001</action>
            <action>maincpu.mq@0160 = 8C4C4EF90000D140</action>
            <!--
            0130 | 4A6D 15EE      : tst.w   ($15ee,A5)
            0134 | 672C           : beq     $162
            0136 | 302D 0B94      : move.w  ($b94,A5), D0
            013A | 322D 3F80      : move.w  ($3f80,A5), D1
            013E | 3B40 3F80      : move.w  D0, ($3f80,A5)
            0142 | 4640           : not.w   D0
            0144 | C041           : and.w   D1, D0
            0146 | 0800 0005      : btst    #$5, D0
            014A | 6716           : beq     $162
            014C | 3B7C 000F 15F0 : move.w  #$f, ($15f0,A5)
            0152 | 3B7C 0080 15EE : move.w  #$80, ($15ee,A5)
            0158 | 103C 0018      : move.b  #$18, D0
            015C | 4EB9 0001 8C4C : jsr     $18c4c.l
            0162 | 4EF9 0000 D140 : jmp     $d140.l
            -->
        </script>
        <script state="off">
            <action>maincpu.md@D0AC = 61000092        </action>
            <action>maincpu.mq@0130 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@0138 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@0140 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@0148 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@0150 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@0158 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@0160 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="max bullets up">
        <script state="on">
            <action>maincpu.md@FE6A = 0C400005</action>
        </script>
        <script state="off">
            <action>maincpu.md@FE6A = B06D0C34</action>
        </script>
    </cheat>

    <cheat desc="short hit mark">
        <script state="on">
            <action>maincpu.md@FF94 = 103C0000</action>
        </script>
        <script state="off">
            <action>maincpu.md@FF94 = 103B000E</action>
        </script>
    </cheat>

    <cheat desc="timer speed">
        <parameter>
            <item value="0x00FF">01 (slow)</item>
            <item value="0x007F">02       </item>
            <item value="0x003F">03       </item>
            <item value="0x001F">04       </item>
            <item value="0x0000">05 (fast)</item>
        </parameter>
        <script state="on">
            <action>maincpu.md@15500 = 4EB80120        </action>
            <action>maincpu.mq@00120 = 102D152902000000</action>
            <action>maincpu.mq@00128 = 6604536D0C424E75</action>
            <!--
            0120 | 102D 1529 : move.b  ($1529,A5), D0
            0124 | 0200 xxxx : andi.b  #$xx, D0
            0128 | 6604      : bne     $12e
            012A | 536D 0C42 : subq.w  #1, ($c42,A5)
            012E | 4E75      : rts
            -->
        </script>
        <script state="change">
            <action>maincpu.mw@0126 = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@15500 = 536D0C42        </action>
            <action>maincpu.mq@00120 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@00128 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="hidden item finder">
        <script state="on">
            <action>maincpu.md@1A562 = 0003C1D8        </action>
            <action>maincpu.mq@3C1D8 = 302D0C1E906C0002</action>
            <action>maincpu.mq@3C1E0 = 65080C4000206422</action>
            <action>maincpu.mq@3C1E8 = 600844400C400010</action>
            <action>maincpu.mq@3C1F0 = 6418302D0C1C906C</action>
            <action>maincpu.mq@3C1F8 = 0006640244400C40</action>
            <action>maincpu.mq@3C200 = 00286406197C0001</action>
            <action>maincpu.mq@3C208 = 001F4EF9000222AC</action>
            <!--
            3C1D8 | 302D 0C1E      : move.w  ($c1e,A5), D0
            3C1DC | 906C 0002      : sub.w   ($2,A4), D0
            3C1E0 | 6508           : bcs     $3c1ea
            3C1E2 | 0C40 0020      : cmpi.w  #$20, D0
            3C1E6 | 6422           : bcc     $3c20a
            3C1E8 | 6008           : bra     $3c1f2
            3C1EA | 4440           : neg.w   D0
            3C1EC | 0C40 0010      : cmpi.w  #$10, D0
            3C1F0 | 6418           : bcc     $3c20a
            3C1F2 | 302D 0C1C      : move.w  ($c1c,A5), D0
            3C1F6 | 906C 0006      : sub.w   ($6,A4), D0
            3C1FA | 6402           : bcc     $3c1fe
            3C1FC | 4440           : neg.w   D0
            3C1FE | 0C40 0028      : cmpi.w  #$28, D0
            3C202 | 6406           : bcc     $3c20a
            3C204 | 197C 0001 001F : move.b  #$1, ($1f,A4)
            3C20A | 4EF9 0002 22AC : jmp     $222ac.l
            -->
        </script>
        <script state="off">
            <action>maincpu.md@1A562 = 000222AC        </action>
            <action>maincpu.mq@3C1D8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C1E0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C1E8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C1F0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C1F8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C200 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C208 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <comment>set &quot;skip ram/rom check&quot; then reset the game (F3)</comment>
        <script state="on">
            <action>maincpu.md@07B7E = 0003C210        </action>
            <action>maincpu.mq@3C210 = 303C00EF60424E49</action>
            <action>maincpu.mq@3C218 = 1401122D0B77B401</action>
            <action>maincpu.mq@3C220 = 67F40C01003B6602</action>
            <action>maincpu.mq@3C228 = 53150C0100376602</action>
            <action>maincpu.mq@3C230 = 52150C01003D6604</action>
            <action>maincpu.mq@3C238 = 041500100C01003E</action>
            <action>maincpu.mq@3C240 = 6604061500100C01</action>
            <action>maincpu.mq@3C248 = 002F660410156008</action>
            <action>maincpu.mq@3C250 = 0C01001F66084200</action>
            <action>maincpu.mq@3C258 = 4EB900018C4C60B6</action>
            <!--
            3C210 | 303C 00EF      : move.w  #$ef, D0      // enable sound
            3C214 | 6042           : bra     $3c258
            3C216 | 4E49           : trap    #$9
            3C218 | 1401           : move.b  D1, D2
            3C21A | 122D 0B77      : move.b  ($b77,A5), D1 // read input ($10CB77)
            3C21E | B401           : cmp.b   D1, D2
            3C220 | 67F4           : beq     $3c216
            3C222 | 0C01 003B      : cmpi.b  #$3b, D1
            3C226 | 6602           : bne     $3c22a
            3C228 | 5315           : subq.b  #1, (A5)      // decrease code -01
            3C22A | 0C01 0037      : cmpi.b  #$37, D1
            3C22E | 6602           : bne     $3c232
            3C230 | 5215           : addq.b  #1, (A5)      // increase code +01
            3C232 | 0C01 003D      : cmpi.b  #$3d, D1
            3C236 | 6604           : bne     $3c23c
            3C238 | 0415 0010      : subi.b  #$10, (A5)    // decrease code -10
            3C23C | 0C01 003E      : cmpi.b  #$3e, D1
            3C240 | 6604           : bne     $3c246
            3C242 | 0615 0010      : addi.b  #$10, (A5)    // increase code +10
            3C246 | 0C01 002F      : cmpi.b  #$2f, D1
            3C24A | 6604           : bne     $3c250
            3C24C | 1015           : move.b  (A5), D0      // play sound
            3C24E | 6008           : bra     $3c258
            3C250 | 0C01 001F      : cmpi.b  #$1f, D1
            3C254 | 6608           : bne     $3c25e
            3C256 | 4200           : clr.b   D0            // stop sound
            3C258 | 4EB9 0001 8C4C : jsr     $18c4c.l      // send sound code
            3C25E | 60B6           : bra     $3c216
            -->
        </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@10C000</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.md@07B7E = 0000A050        </action>
            <action>maincpu.mq@3C210 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C218 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C220 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C228 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C230 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C238 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C240 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C248 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C250 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C258 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="skip ram/rom check">
        <script state="on">
            <action>maincpu.md@739A = 0000739E</action> <!-- ram -->
            <action>maincpu.md@743C = 610000C4</action> <!-- rom -->
        </script>
        <script state="off">
            <action>maincpu.md@739A = 00026178</action>
            <action>maincpu.md@743C = 610000C6</action>
        </script>
    </cheat>

</mamecheat>
bonzeadvo.xml

Code: Select all

<!-- Bonze Adventure (World) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mw@0D45C = 6008</action> <!-- trap -->
            <action>maincpu.mw@0D9B6 = 6000</action> <!-- trap -->
            <action>maincpu.mw@128E4 = 0BB6</action> <!-- most enemies -->
            <action>maincpu.mw@128F2 = 0BA8</action> <!-- bullet -->
            <action>maincpu.mw@12982 = 3210</action> <!-- rare enemies -->
            <action>maincpu.mw@129D2 = 3210</action> <!-- barrier -->
            <action>maincpu.mw@129FA = 3210</action> <!-- wind -->
            <action>maincpu.mw@12C7E = 08AD</action> <!-- water pillar -->
        </script>
        <script state="off">
            <action>maincpu.mw@0D45C = 6608</action>
            <action>maincpu.mw@0D9B6 = 6600</action>
            <action>maincpu.mw@128E4 = 0B0C</action>
            <action>maincpu.mw@128F2 = 0AD2</action>
            <action>maincpu.mw@12982 = 2E8A</action>
            <action>maincpu.mw@129D2 = 30D0</action>
            <action>maincpu.mw@129FA = 2CF0</action>
            <action>maincpu.mw@12C7E = 08ED</action>
        </script>
    </cheat>

    <cheat desc="rapid fire">
        <script state="on">
            <action>maincpu.mb@FE7D = 08              </action>
            <action>maincpu.md@FE8C = 4EF80110        </action>
            <action>maincpu.mq@0110 = 4EB90001072C4EF9</action>
            <action>maincpu.mq@0118 = 0000FE98FFFFFFFF</action>
            <!--
            0110 | 4EB9 0001 072C : jsr     $1072c.l
            0116 | 4EF9 0000 FE98 : jmp     $fe98.l
            -->
        </script>
        <script state="off">
            <action>maincpu.mb@FE7D = 12              </action>
            <action>maincpu.md@FE8C = 6100089E        </action>
            <action>maincpu.mq@0110 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@0118 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="walk speed">
        <parameter min="0x01" max="0x05" step="0x01" />
        <script state="on">
            <action>maincpu.mq@0DF98 = 4EB90003C1C04E75</action>
            <action>maincpu.mq@3C1C0 = 30300000670C7000</action>
            <action>maincpu.mq@3C1C8 = 082D000615DF6702</action>
            <action>maincpu.mq@3C1D0 = 70003B4015D84E75</action>
            <!--
            3C1C0 | 3030 0000      : move.w  (A0,D0.w), D0
            3C1C4 | 670C           : beq     $3c1d2
            3C1C6 | 7000           : moveq   #$0, D0
            3C1C8 | 082D 0006 15DF : btst    #$6, ($15df,A5)
            3C1CE | 6702           : beq     $3c1d2
            3C1D0 | 70xx           : moveq   #$xx, D0
            3C1D2 | 3B40 15D8      : move.w  D0, ($15d8,A5)
            3C1D6 | 4E75           : rts
            -->
        </script>
        <script state="change">
            <action>maincpu.mb@3C1D1 = param</action>
        </script>
        <script state="off">
            <action>maincpu.mq@0DF98 = 3B70000015D84E75</action>
            <action>maincpu.mq@3C1C0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C1C8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C1D0 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="multiple jump">
        <script state="on">
            <action>maincpu.md@D0AC = 4EB80130        </action>
            <action>maincpu.mq@0130 = 4A6D15EE672C302D</action>
            <action>maincpu.mq@0138 = 0B94322D3F803B40</action>
            <action>maincpu.mq@0140 = 3F804640C0410800</action>
            <action>maincpu.mq@0148 = 000567163B7C000F</action>
            <action>maincpu.mq@0150 = 15F03B7C008015EE</action>
            <action>maincpu.mq@0158 = 103C00184EB90001</action>
            <action>maincpu.mq@0160 = 8C4C4EF90000D140</action>
            <!--
            0130 | 4A6D 15EE      : tst.w   ($15ee,A5)
            0134 | 672C           : beq     $162
            0136 | 302D 0B94      : move.w  ($b94,A5), D0
            013A | 322D 3F80      : move.w  ($3f80,A5), D1
            013E | 3B40 3F80      : move.w  D0, ($3f80,A5)
            0142 | 4640           : not.w   D0
            0144 | C041           : and.w   D1, D0
            0146 | 0800 0005      : btst    #$5, D0
            014A | 6716           : beq     $162
            014C | 3B7C 000F 15F0 : move.w  #$f, ($15f0,A5)
            0152 | 3B7C 0080 15EE : move.w  #$80, ($15ee,A5)
            0158 | 103C 0018      : move.b  #$18, D0
            015C | 4EB9 0001 8C4C : jsr     $18c4c.l
            0162 | 4EF9 0000 D140 : jmp     $d140.l
            -->
        </script>
        <script state="off">
            <action>maincpu.md@D0AC = 61000092        </action>
            <action>maincpu.mq@0130 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@0138 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@0140 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@0148 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@0150 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@0158 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@0160 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="max bullets up">
        <script state="on">
            <action>maincpu.md@FE6A = 0C400005</action>
        </script>
        <script state="off">
            <action>maincpu.md@FE6A = B06D0C34</action>
        </script>
    </cheat>

    <cheat desc="short hit mark">
        <script state="on">
            <action>maincpu.md@FF94 = 103C0000</action>
        </script>
        <script state="off">
            <action>maincpu.md@FF94 = 103B000E</action>
        </script>
    </cheat>

    <cheat desc="timer speed">
        <parameter>
            <item value="0x00FF">01 (slow)</item>
            <item value="0x007F">02       </item>
            <item value="0x003F">03       </item>
            <item value="0x001F">04       </item>
            <item value="0x0000">05 (fast)</item>
        </parameter>
        <script state="on">
            <action>maincpu.md@15500 = 4EB80120        </action>
            <action>maincpu.mq@00120 = 102D152902000000</action>
            <action>maincpu.mq@00128 = 6604536D0C424E75</action>
            <!--
            0120 | 102D 1529 : move.b  ($1529,A5), D0
            0124 | 0200 xxxx : andi.b  #$xx, D0
            0128 | 6604      : bne     $12e
            012A | 536D 0C42 : subq.w  #1, ($c42,A5)
            012E | 4E75      : rts
            -->
        </script>
        <script state="change">
            <action>maincpu.mw@0126 = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@15500 = 536D0C42        </action>
            <action>maincpu.mq@00120 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@00128 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="hidden item finder">
        <script state="on">
            <action>maincpu.md@1A562 = 0003C1D8        </action>
            <action>maincpu.mq@3C1D8 = 302D0C1E906C0002</action>
            <action>maincpu.mq@3C1E0 = 65080C4000206422</action>
            <action>maincpu.mq@3C1E8 = 600844400C400010</action>
            <action>maincpu.mq@3C1F0 = 6418302D0C1C906C</action>
            <action>maincpu.mq@3C1F8 = 0006640244400C40</action>
            <action>maincpu.mq@3C200 = 00286406197C0001</action>
            <action>maincpu.mq@3C208 = 001F4EF9000222AC</action>
            <!--
            3C1D8 | 302D 0C1E      : move.w  ($c1e,A5), D0
            3C1DC | 906C 0002      : sub.w   ($2,A4), D0
            3C1E0 | 6508           : bcs     $3c1ea
            3C1E2 | 0C40 0020      : cmpi.w  #$20, D0
            3C1E6 | 6422           : bcc     $3c20a
            3C1E8 | 6008           : bra     $3c1f2
            3C1EA | 4440           : neg.w   D0
            3C1EC | 0C40 0010      : cmpi.w  #$10, D0
            3C1F0 | 6418           : bcc     $3c20a
            3C1F2 | 302D 0C1C      : move.w  ($c1c,A5), D0
            3C1F6 | 906C 0006      : sub.w   ($6,A4), D0
            3C1FA | 6402           : bcc     $3c1fe
            3C1FC | 4440           : neg.w   D0
            3C1FE | 0C40 0028      : cmpi.w  #$28, D0
            3C202 | 6406           : bcc     $3c20a
            3C204 | 197C 0001 001F : move.b  #$1, ($1f,A4)
            3C20A | 4EF9 0002 22AC : jmp     $222ac.l
            -->
        </script>
        <script state="off">
            <action>maincpu.md@1A562 = 000222AC        </action>
            <action>maincpu.mq@3C1D8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C1E0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C1E8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C1F0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C1F8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C200 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C208 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <comment>set &quot;skip ram/rom check&quot; then reset the game (F3)</comment>
        <script state="on">
            <action>maincpu.md@07B7E = 0003C210        </action>
            <action>maincpu.mq@3C210 = 303C00EF60424E49</action>
            <action>maincpu.mq@3C218 = 1401122D0B77B401</action>
            <action>maincpu.mq@3C220 = 67F40C01003B6602</action>
            <action>maincpu.mq@3C228 = 53150C0100376602</action>
            <action>maincpu.mq@3C230 = 52150C01003D6604</action>
            <action>maincpu.mq@3C238 = 041500100C01003E</action>
            <action>maincpu.mq@3C240 = 6604061500100C01</action>
            <action>maincpu.mq@3C248 = 002F660410156008</action>
            <action>maincpu.mq@3C250 = 0C01001F66084200</action>
            <action>maincpu.mq@3C258 = 4EB900018C4C60B6</action>
            <!--
            3C210 | 303C 00EF      : move.w  #$ef, D0      // enable sound
            3C214 | 6042           : bra     $3c258
            3C216 | 4E49           : trap    #$9
            3C218 | 1401           : move.b  D1, D2
            3C21A | 122D 0B77      : move.b  ($b77,A5), D1 // read input ($10CB77)
            3C21E | B401           : cmp.b   D1, D2
            3C220 | 67F4           : beq     $3c216
            3C222 | 0C01 003B      : cmpi.b  #$3b, D1
            3C226 | 6602           : bne     $3c22a
            3C228 | 5315           : subq.b  #1, (A5)      // decrease code -01
            3C22A | 0C01 0037      : cmpi.b  #$37, D1
            3C22E | 6602           : bne     $3c232
            3C230 | 5215           : addq.b  #1, (A5)      // increase code +01
            3C232 | 0C01 003D      : cmpi.b  #$3d, D1
            3C236 | 6604           : bne     $3c23c
            3C238 | 0415 0010      : subi.b  #$10, (A5)    // decrease code -10
            3C23C | 0C01 003E      : cmpi.b  #$3e, D1
            3C240 | 6604           : bne     $3c246
            3C242 | 0615 0010      : addi.b  #$10, (A5)    // increase code +10
            3C246 | 0C01 002F      : cmpi.b  #$2f, D1
            3C24A | 6604           : bne     $3c250
            3C24C | 1015           : move.b  (A5), D0      // play sound
            3C24E | 6008           : bra     $3c258
            3C250 | 0C01 001F      : cmpi.b  #$1f, D1
            3C254 | 6608           : bne     $3c25e
            3C256 | 4200           : clr.b   D0            // stop sound
            3C258 | 4EB9 0001 8C4C : jsr     $18c4c.l      // send sound code
            3C25E | 60B6           : bra     $3c216
            -->
        </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@10C000</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.md@07B7E = 0000A050        </action>
            <action>maincpu.mq@3C210 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C218 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C220 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C228 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C230 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C238 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C240 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C248 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C250 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C258 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="skip ram/rom check">
        <script state="on">
            <action>maincpu.md@739A = 0000739E</action> <!-- ram -->
            <action>maincpu.md@743C = 610000C4</action> <!-- rom -->
        </script>
        <script state="off">
            <action>maincpu.md@739A = 00026178</action>
            <action>maincpu.md@743C = 610000C6</action>
        </script>
    </cheat>

</mamecheat>
bonzeadvu.xml

Code: Select all

<!-- Bonze Adventure (US, rev 1) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mw@0D462 = 6008</action> <!-- trap -->
            <action>maincpu.mw@0D9BC = 6000</action> <!-- trap -->
            <action>maincpu.mw@128E4 = 0BB6</action> <!-- most enemies -->
            <action>maincpu.mw@128F2 = 0BA8</action> <!-- bullet -->
            <action>maincpu.mw@12982 = 3210</action> <!-- rare enemies -->
            <action>maincpu.mw@129D2 = 3210</action> <!-- barrier -->
            <action>maincpu.mw@129FA = 3210</action> <!-- wind -->
            <action>maincpu.mw@12C7E = 08AD</action> <!-- water pillar -->
        </script>
        <script state="off">
            <action>maincpu.mw@0D462 = 6608</action>
            <action>maincpu.mw@0D9BC = 6600</action>
            <action>maincpu.mw@128E4 = 0B0C</action>
            <action>maincpu.mw@128F2 = 0AD2</action>
            <action>maincpu.mw@12982 = 2E8A</action>
            <action>maincpu.mw@129D2 = 30D0</action>
            <action>maincpu.mw@129FA = 2CF0</action>
            <action>maincpu.mw@12C7E = 08ED</action>
        </script>
    </cheat>

    <cheat desc="rapid fire">
        <script state="on">
            <action>maincpu.mb@FE7D = 08              </action>
            <action>maincpu.md@FE8C = 4EF80110        </action>
            <action>maincpu.mq@0110 = 4EB90001072C4EF9</action>
            <action>maincpu.mq@0118 = 0000FE98FFFFFFFF</action>
            <!--
            0110 | 4EB9 0001 072C : jsr     $1072c.l
            0116 | 4EF9 0000 FE98 : jmp     $fe98.l
            -->
        </script>
        <script state="off">
            <action>maincpu.mb@FE7D = 12              </action>
            <action>maincpu.md@FE8C = 6100089E        </action>
            <action>maincpu.mq@0110 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@0118 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="walk speed">
        <parameter min="0x01" max="0x05" step="0x01" />
        <script state="on">
            <action>maincpu.mq@0DF98 = 4EB90003C1C04E75</action>
            <action>maincpu.mq@3C1C0 = 30300000670C7000</action>
            <action>maincpu.mq@3C1C8 = 082D000615DF6702</action>
            <action>maincpu.mq@3C1D0 = 70003B4015D84E75</action>
            <!--
            3C1C0 | 3030 0000      : move.w  (A0,D0.w), D0
            3C1C4 | 670C           : beq     $3c1d2
            3C1C6 | 7000           : moveq   #$0, D0
            3C1C8 | 082D 0006 15DF : btst    #$6, ($15df,A5)
            3C1CE | 6702           : beq     $3c1d2
            3C1D0 | 70xx           : moveq   #$xx, D0
            3C1D2 | 3B40 15D8      : move.w  D0, ($15d8,A5)
            3C1D6 | 4E75           : rts
            -->
        </script>
        <script state="change">
            <action>maincpu.mb@3C1D1 = param</action>
        </script>
        <script state="off">
            <action>maincpu.mq@0DF98 = 3B70000015D84E75</action>
            <action>maincpu.mq@3C1C0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C1C8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C1D0 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="multiple jump">
        <script state="on">
            <action>maincpu.md@D0AC = 4EB80130        </action>
            <action>maincpu.mq@0130 = 4A6D15EE672C302D</action>
            <action>maincpu.mq@0138 = 0B94322D3F803B40</action>
            <action>maincpu.mq@0140 = 3F804640C0410800</action>
            <action>maincpu.mq@0148 = 000567163B7C000F</action>
            <action>maincpu.mq@0150 = 15F03B7C008015EE</action>
            <action>maincpu.mq@0158 = 103C00184EB90001</action>
            <action>maincpu.mq@0160 = 8C4C4EF90000D140</action>
            <!--
            0130 | 4A6D 15EE      : tst.w   ($15ee,A5)
            0134 | 672C           : beq     $162
            0136 | 302D 0B94      : move.w  ($b94,A5), D0
            013A | 322D 3F80      : move.w  ($3f80,A5), D1
            013E | 3B40 3F80      : move.w  D0, ($3f80,A5)
            0142 | 4640           : not.w   D0
            0144 | C041           : and.w   D1, D0
            0146 | 0800 0005      : btst    #$5, D0
            014A | 6716           : beq     $162
            014C | 3B7C 000F 15F0 : move.w  #$f, ($15f0,A5)
            0152 | 3B7C 0080 15EE : move.w  #$80, ($15ee,A5)
            0158 | 103C 0018      : move.b  #$18, D0
            015C | 4EB9 0001 8C4C : jsr     $18c4c.l
            0162 | 4EF9 0000 D140 : jmp     $d140.l
            -->
        </script>
        <script state="off">
            <action>maincpu.md@D0AC = 61000092        </action>
            <action>maincpu.mq@0130 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@0138 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@0140 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@0148 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@0150 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@0158 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@0160 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="max bullets up">
        <script state="on">
            <action>maincpu.md@FE6A = 0C400005</action>
        </script>
        <script state="off">
            <action>maincpu.md@FE6A = B06D0C34</action>
        </script>
    </cheat>

    <cheat desc="short hit mark">
        <script state="on">
            <action>maincpu.md@FF94 = 103C0000</action>
        </script>
        <script state="off">
            <action>maincpu.md@FF94 = 103B000E</action>
        </script>
    </cheat>

    <cheat desc="timer speed">
        <parameter>
            <item value="0x00FF">01 (slow)</item>
            <item value="0x007F">02       </item>
            <item value="0x003F">03       </item>
            <item value="0x001F">04       </item>
            <item value="0x0000">05 (fast)</item>
        </parameter>
        <script state="on">
            <action>maincpu.md@15500 = 4EB80120        </action>
            <action>maincpu.mq@00120 = 102D152902000000</action>
            <action>maincpu.mq@00128 = 6604536D0C424E75</action>
            <!--
            0120 | 102D 1529 : move.b  ($1529,A5), D0
            0124 | 0200 xxxx : andi.b  #$xx, D0
            0128 | 6604      : bne     $12e
            012A | 536D 0C42 : subq.w  #1, ($c42,A5)
            012E | 4E75      : rts
            -->
        </script>
        <script state="change">
            <action>maincpu.mw@0126 = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@15500 = 536D0C42        </action>
            <action>maincpu.mq@00120 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@00128 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="hidden item finder">
        <script state="on">
            <action>maincpu.md@1A562 = 0003C1D8        </action>
            <action>maincpu.mq@3C1D8 = 302D0C1E906C0002</action>
            <action>maincpu.mq@3C1E0 = 65080C4000206422</action>
            <action>maincpu.mq@3C1E8 = 600844400C400010</action>
            <action>maincpu.mq@3C1F0 = 6418302D0C1C906C</action>
            <action>maincpu.mq@3C1F8 = 0006640244400C40</action>
            <action>maincpu.mq@3C200 = 00286406197C0001</action>
            <action>maincpu.mq@3C208 = 001F4EF9000222AC</action>
            <!--
            3C1D8 | 302D 0C1E      : move.w  ($c1e,A5), D0
            3C1DC | 906C 0002      : sub.w   ($2,A4), D0
            3C1E0 | 6508           : bcs     $3c1ea
            3C1E2 | 0C40 0020      : cmpi.w  #$20, D0
            3C1E6 | 6422           : bcc     $3c20a
            3C1E8 | 6008           : bra     $3c1f2
            3C1EA | 4440           : neg.w   D0
            3C1EC | 0C40 0010      : cmpi.w  #$10, D0
            3C1F0 | 6418           : bcc     $3c20a
            3C1F2 | 302D 0C1C      : move.w  ($c1c,A5), D0
            3C1F6 | 906C 0006      : sub.w   ($6,A4), D0
            3C1FA | 6402           : bcc     $3c1fe
            3C1FC | 4440           : neg.w   D0
            3C1FE | 0C40 0028      : cmpi.w  #$28, D0
            3C202 | 6406           : bcc     $3c20a
            3C204 | 197C 0001 001F : move.b  #$1, ($1f,A4)
            3C20A | 4EF9 0002 22AC : jmp     $222ac.l
            -->
        </script>
        <script state="off">
            <action>maincpu.md@1A562 = 000222AC        </action>
            <action>maincpu.mq@3C1D8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C1E0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C1E8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C1F0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C1F8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C200 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C208 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <comment>set &quot;skip ram/rom check&quot; then reset the game (F3)</comment>
        <script state="on">
            <action>maincpu.md@07B7E = 0003C210        </action>
            <action>maincpu.mq@3C210 = 303C00EF60424E49</action>
            <action>maincpu.mq@3C218 = 1401122D0B77B401</action>
            <action>maincpu.mq@3C220 = 67F40C01003B6602</action>
            <action>maincpu.mq@3C228 = 53150C0100376602</action>
            <action>maincpu.mq@3C230 = 52150C01003D6604</action>
            <action>maincpu.mq@3C238 = 041500100C01003E</action>
            <action>maincpu.mq@3C240 = 6604061500100C01</action>
            <action>maincpu.mq@3C248 = 002F660410156008</action>
            <action>maincpu.mq@3C250 = 0C01001F66084200</action>
            <action>maincpu.mq@3C258 = 4EB900018C4C60B6</action>
            <!--
            3C210 | 303C 00EF      : move.w  #$ef, D0      // enable sound
            3C214 | 6042           : bra     $3c258
            3C216 | 4E49           : trap    #$9
            3C218 | 1401           : move.b  D1, D2
            3C21A | 122D 0B77      : move.b  ($b77,A5), D1 // read input ($10CB77)
            3C21E | B401           : cmp.b   D1, D2
            3C220 | 67F4           : beq     $3c216
            3C222 | 0C01 003B      : cmpi.b  #$3b, D1
            3C226 | 6602           : bne     $3c22a
            3C228 | 5315           : subq.b  #1, (A5)      // decrease code -01
            3C22A | 0C01 0037      : cmpi.b  #$37, D1
            3C22E | 6602           : bne     $3c232
            3C230 | 5215           : addq.b  #1, (A5)      // increase code +01
            3C232 | 0C01 003D      : cmpi.b  #$3d, D1
            3C236 | 6604           : bne     $3c23c
            3C238 | 0415 0010      : subi.b  #$10, (A5)    // decrease code -10
            3C23C | 0C01 003E      : cmpi.b  #$3e, D1
            3C240 | 6604           : bne     $3c246
            3C242 | 0615 0010      : addi.b  #$10, (A5)    // increase code +10
            3C246 | 0C01 002F      : cmpi.b  #$2f, D1
            3C24A | 6604           : bne     $3c250
            3C24C | 1015           : move.b  (A5), D0      // play sound
            3C24E | 6008           : bra     $3c258
            3C250 | 0C01 001F      : cmpi.b  #$1f, D1
            3C254 | 6608           : bne     $3c25e
            3C256 | 4200           : clr.b   D0            // stop sound
            3C258 | 4EB9 0001 8C4C : jsr     $18c4c.l      // send sound code
            3C25E | 60B6           : bra     $3c216
            -->
        </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@10C000</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.md@07B7E = 0000A050        </action>
            <action>maincpu.mq@3C210 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C218 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C220 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C228 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C230 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C238 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C240 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C248 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C250 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C258 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="skip ram/rom check">
        <script state="on">
            <action>maincpu.md@739A = 0000739E</action> <!-- ram -->
            <action>maincpu.md@743C = 610000C4</action> <!-- rom -->
        </script>
        <script state="off">
            <action>maincpu.md@739A = 00026178</action>
            <action>maincpu.md@743C = 610000C6</action>
        </script>
    </cheat>

</mamecheat>
jigkmgri.xml

Code: Select all

<!-- Jigoku Meguri (Japan, rev 1) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mw@0D462 = 6008</action> <!-- trap -->
            <action>maincpu.mw@0D9BC = 6000</action> <!-- trap -->
            <action>maincpu.mw@128E4 = 0BB6</action> <!-- most enemies -->
            <action>maincpu.mw@128F2 = 0BA8</action> <!-- bullet -->
            <action>maincpu.mw@12982 = 3210</action> <!-- rare enemies -->
            <action>maincpu.mw@129D2 = 3210</action> <!-- barrier -->
            <action>maincpu.mw@129FA = 3210</action> <!-- wind -->
            <action>maincpu.mw@12C7E = 08AD</action> <!-- water pillar -->
        </script>
        <script state="off">
            <action>maincpu.mw@0D462 = 6608</action>
            <action>maincpu.mw@0D9BC = 6600</action>
            <action>maincpu.mw@128E4 = 0B0C</action>
            <action>maincpu.mw@128F2 = 0AD2</action>
            <action>maincpu.mw@12982 = 2E8A</action>
            <action>maincpu.mw@129D2 = 30D0</action>
            <action>maincpu.mw@129FA = 2CF0</action>
            <action>maincpu.mw@12C7E = 08ED</action>
        </script>
    </cheat>

    <cheat desc="rapid fire">
        <script state="on">
            <action>maincpu.mb@FE7D = 08              </action>
            <action>maincpu.md@FE8C = 4EF80110        </action>
            <action>maincpu.mq@0110 = 4EB90001072C4EF9</action>
            <action>maincpu.mq@0118 = 0000FE98FFFFFFFF</action>
            <!--
            0110 | 4EB9 0001 072C : jsr     $1072c.l
            0116 | 4EF9 0000 FE98 : jmp     $fe98.l
            -->
        </script>
        <script state="off">
            <action>maincpu.mb@FE7D = 12              </action>
            <action>maincpu.md@FE8C = 6100089E        </action>
            <action>maincpu.mq@0110 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@0118 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="walk speed">
        <parameter min="0x01" max="0x05" step="0x01" />
        <script state="on">
            <action>maincpu.mq@0DF98 = 4EB90003C1C04E75</action>
            <action>maincpu.mq@3C1C0 = 30300000670C7000</action>
            <action>maincpu.mq@3C1C8 = 082D000615DF6702</action>
            <action>maincpu.mq@3C1D0 = 70003B4015D84E75</action>
            <!--
            3C1C0 | 3030 0000      : move.w  (A0,D0.w), D0
            3C1C4 | 670C           : beq     $3c1d2
            3C1C6 | 7000           : moveq   #$0, D0
            3C1C8 | 082D 0006 15DF : btst    #$6, ($15df,A5)
            3C1CE | 6702           : beq     $3c1d2
            3C1D0 | 70xx           : moveq   #$xx, D0
            3C1D2 | 3B40 15D8      : move.w  D0, ($15d8,A5)
            3C1D6 | 4E75           : rts
            -->
        </script>
        <script state="change">
            <action>maincpu.mb@3C1D1 = param</action>
        </script>
        <script state="off">
            <action>maincpu.mq@0DF98 = 3B70000015D84E75</action>
            <action>maincpu.mq@3C1C0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C1C8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C1D0 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="multiple jump">
        <script state="on">
            <action>maincpu.md@D0AC = 4EB80130        </action>
            <action>maincpu.mq@0130 = 4A6D15EE672C302D</action>
            <action>maincpu.mq@0138 = 0B94322D3F803B40</action>
            <action>maincpu.mq@0140 = 3F804640C0410800</action>
            <action>maincpu.mq@0148 = 000567163B7C000F</action>
            <action>maincpu.mq@0150 = 15F03B7C008015EE</action>
            <action>maincpu.mq@0158 = 103C00184EB90001</action>
            <action>maincpu.mq@0160 = 8C4C4EF90000D140</action>
            <!--
            0130 | 4A6D 15EE      : tst.w   ($15ee,A5)
            0134 | 672C           : beq     $162
            0136 | 302D 0B94      : move.w  ($b94,A5), D0
            013A | 322D 3F80      : move.w  ($3f80,A5), D1
            013E | 3B40 3F80      : move.w  D0, ($3f80,A5)
            0142 | 4640           : not.w   D0
            0144 | C041           : and.w   D1, D0
            0146 | 0800 0005      : btst    #$5, D0
            014A | 6716           : beq     $162
            014C | 3B7C 000F 15F0 : move.w  #$f, ($15f0,A5)
            0152 | 3B7C 0080 15EE : move.w  #$80, ($15ee,A5)
            0158 | 103C 0018      : move.b  #$18, D0
            015C | 4EB9 0001 8C4C : jsr     $18c4c.l
            0162 | 4EF9 0000 D140 : jmp     $d140.l
            -->
        </script>
        <script state="off">
            <action>maincpu.md@D0AC = 61000092        </action>
            <action>maincpu.mq@0130 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@0138 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@0140 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@0148 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@0150 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@0158 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@0160 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="max bullets up">
        <script state="on">
            <action>maincpu.md@FE6A = 0C400005</action>
        </script>
        <script state="off">
            <action>maincpu.md@FE6A = B06D0C34</action>
        </script>
    </cheat>

    <cheat desc="short hit mark">
        <script state="on">
            <action>maincpu.md@FF94 = 103C0000</action>
        </script>
        <script state="off">
            <action>maincpu.md@FF94 = 103B000E</action>
        </script>
    </cheat>

    <cheat desc="timer speed">
        <parameter>
            <item value="0x00FF">01 (slow)</item>
            <item value="0x007F">02       </item>
            <item value="0x003F">03       </item>
            <item value="0x001F">04       </item>
            <item value="0x0000">05 (fast)</item>
        </parameter>
        <script state="on">
            <action>maincpu.md@15500 = 4EB80120        </action>
            <action>maincpu.mq@00120 = 102D152902000000</action>
            <action>maincpu.mq@00128 = 6604536D0C424E75</action>
            <!--
            0120 | 102D 1529 : move.b  ($1529,A5), D0
            0124 | 0200 xxxx : andi.b  #$xx, D0
            0128 | 6604      : bne     $12e
            012A | 536D 0C42 : subq.w  #1, ($c42,A5)
            012E | 4E75      : rts
            -->
        </script>
        <script state="change">
            <action>maincpu.mw@0126 = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@15500 = 536D0C42        </action>
            <action>maincpu.mq@00120 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@00128 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="hidden item finder">
        <script state="on">
            <action>maincpu.md@1A562 = 0003C1D8        </action>
            <action>maincpu.mq@3C1D8 = 302D0C1E906C0002</action>
            <action>maincpu.mq@3C1E0 = 65080C4000206422</action>
            <action>maincpu.mq@3C1E8 = 600844400C400010</action>
            <action>maincpu.mq@3C1F0 = 6418302D0C1C906C</action>
            <action>maincpu.mq@3C1F8 = 0006640244400C40</action>
            <action>maincpu.mq@3C200 = 00286406197C0001</action>
            <action>maincpu.mq@3C208 = 001F4EF9000222AC</action>
            <!--
            3C1D8 | 302D 0C1E      : move.w  ($c1e,A5), D0
            3C1DC | 906C 0002      : sub.w   ($2,A4), D0
            3C1E0 | 6508           : bcs     $3c1ea
            3C1E2 | 0C40 0020      : cmpi.w  #$20, D0
            3C1E6 | 6422           : bcc     $3c20a
            3C1E8 | 6008           : bra     $3c1f2
            3C1EA | 4440           : neg.w   D0
            3C1EC | 0C40 0010      : cmpi.w  #$10, D0
            3C1F0 | 6418           : bcc     $3c20a
            3C1F2 | 302D 0C1C      : move.w  ($c1c,A5), D0
            3C1F6 | 906C 0006      : sub.w   ($6,A4), D0
            3C1FA | 6402           : bcc     $3c1fe
            3C1FC | 4440           : neg.w   D0
            3C1FE | 0C40 0028      : cmpi.w  #$28, D0
            3C202 | 6406           : bcc     $3c20a
            3C204 | 197C 0001 001F : move.b  #$1, ($1f,A4)
            3C20A | 4EF9 0002 22AC : jmp     $222ac.l
            -->
        </script>
        <script state="off">
            <action>maincpu.md@1A562 = 000222AC        </action>
            <action>maincpu.mq@3C1D8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C1E0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C1E8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C1F0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C1F8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C200 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C208 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <comment>set &quot;skip ram/rom check&quot; then reset the game (F3)</comment>
        <script state="on">
            <action>maincpu.md@07B7E = 0003C210        </action>
            <action>maincpu.mq@3C210 = 303C00EF60424E49</action>
            <action>maincpu.mq@3C218 = 1401122D0B77B401</action>
            <action>maincpu.mq@3C220 = 67F40C01003B6602</action>
            <action>maincpu.mq@3C228 = 53150C0100376602</action>
            <action>maincpu.mq@3C230 = 52150C01003D6604</action>
            <action>maincpu.mq@3C238 = 041500100C01003E</action>
            <action>maincpu.mq@3C240 = 6604061500100C01</action>
            <action>maincpu.mq@3C248 = 002F660410156008</action>
            <action>maincpu.mq@3C250 = 0C01001F66084200</action>
            <action>maincpu.mq@3C258 = 4EB900018C4C60B6</action>
            <!--
            3C210 | 303C 00EF      : move.w  #$ef, D0      // enable sound
            3C214 | 6042           : bra     $3c258
            3C216 | 4E49           : trap    #$9
            3C218 | 1401           : move.b  D1, D2
            3C21A | 122D 0B77      : move.b  ($b77,A5), D1 // read input ($10CB77)
            3C21E | B401           : cmp.b   D1, D2
            3C220 | 67F4           : beq     $3c216
            3C222 | 0C01 003B      : cmpi.b  #$3b, D1
            3C226 | 6602           : bne     $3c22a
            3C228 | 5315           : subq.b  #1, (A5)      // decrease code -01
            3C22A | 0C01 0037      : cmpi.b  #$37, D1
            3C22E | 6602           : bne     $3c232
            3C230 | 5215           : addq.b  #1, (A5)      // increase code +01
            3C232 | 0C01 003D      : cmpi.b  #$3d, D1
            3C236 | 6604           : bne     $3c23c
            3C238 | 0415 0010      : subi.b  #$10, (A5)    // decrease code -10
            3C23C | 0C01 003E      : cmpi.b  #$3e, D1
            3C240 | 6604           : bne     $3c246
            3C242 | 0615 0010      : addi.b  #$10, (A5)    // increase code +10
            3C246 | 0C01 002F      : cmpi.b  #$2f, D1
            3C24A | 6604           : bne     $3c250
            3C24C | 1015           : move.b  (A5), D0      // play sound
            3C24E | 6008           : bra     $3c258
            3C250 | 0C01 001F      : cmpi.b  #$1f, D1
            3C254 | 6608           : bne     $3c25e
            3C256 | 4200           : clr.b   D0            // stop sound
            3C258 | 4EB9 0001 8C4C : jsr     $18c4c.l      // send sound code
            3C25E | 60B6           : bra     $3c216
            -->
        </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@10C000</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.md@07B7E = 0000A050        </action>
            <action>maincpu.mq@3C210 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C218 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C220 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C228 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C230 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C238 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C240 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C248 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C250 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C258 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="skip ram/rom check">
        <script state="on">
            <action>maincpu.md@739A = 0000739E</action> <!-- ram -->
            <action>maincpu.md@743C = 610000C4</action> <!-- rom -->
        </script>
        <script state="off">
            <action>maincpu.md@739A = 00026178</action>
            <action>maincpu.md@743C = 610000C6</action>
        </script>
    </cheat>

</mamecheat>

[bonzeadv]+ Bonze Adventure/Jigoku Meguri

Posted: Sat Jul 12, 2025 9:33 am
by jman
jigkmgria.xml

Code: Select all

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

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mw@0D45C = 6008</action> <!-- trap -->
            <action>maincpu.mw@0D9B6 = 6000</action> <!-- trap -->
            <action>maincpu.mw@128E4 = 0BB6</action> <!-- most enemies -->
            <action>maincpu.mw@128F2 = 0BA8</action> <!-- bullet -->
            <action>maincpu.mw@12982 = 3210</action> <!-- rare enemies -->
            <action>maincpu.mw@129D2 = 3210</action> <!-- barrier -->
            <action>maincpu.mw@129FA = 3210</action> <!-- wind -->
            <action>maincpu.mw@12C7E = 08AD</action> <!-- water pillar -->
        </script>
        <script state="off">
            <action>maincpu.mw@0D45C = 6608</action>
            <action>maincpu.mw@0D9B6 = 6600</action>
            <action>maincpu.mw@128E4 = 0B0C</action>
            <action>maincpu.mw@128F2 = 0AD2</action>
            <action>maincpu.mw@12982 = 2E8A</action>
            <action>maincpu.mw@129D2 = 30D0</action>
            <action>maincpu.mw@129FA = 2CF0</action>
            <action>maincpu.mw@12C7E = 08ED</action>
        </script>
    </cheat>

    <cheat desc="rapid fire">
        <script state="on">
            <action>maincpu.mb@FE7D = 08              </action>
            <action>maincpu.md@FE8C = 4EF80110        </action>
            <action>maincpu.mq@0110 = 4EB90001072C4EF9</action>
            <action>maincpu.mq@0118 = 0000FE98FFFFFFFF</action>
            <!--
            0110 | 4EB9 0001 072C : jsr     $1072c.l
            0116 | 4EF9 0000 FE98 : jmp     $fe98.l
            -->
        </script>
        <script state="off">
            <action>maincpu.mb@FE7D = 12              </action>
            <action>maincpu.md@FE8C = 6100089E        </action>
            <action>maincpu.mq@0110 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@0118 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="walk speed">
        <parameter min="0x01" max="0x05" step="0x01" />
        <script state="on">
            <action>maincpu.mq@0DF98 = 4EB90003C1C04E75</action>
            <action>maincpu.mq@3C1C0 = 30300000670C7000</action>
            <action>maincpu.mq@3C1C8 = 082D000615DF6702</action>
            <action>maincpu.mq@3C1D0 = 70003B4015D84E75</action>
            <!--
            3C1C0 | 3030 0000      : move.w  (A0,D0.w), D0
            3C1C4 | 670C           : beq     $3c1d2
            3C1C6 | 7000           : moveq   #$0, D0
            3C1C8 | 082D 0006 15DF : btst    #$6, ($15df,A5)
            3C1CE | 6702           : beq     $3c1d2
            3C1D0 | 70xx           : moveq   #$xx, D0
            3C1D2 | 3B40 15D8      : move.w  D0, ($15d8,A5)
            3C1D6 | 4E75           : rts
            -->
        </script>
        <script state="change">
            <action>maincpu.mb@3C1D1 = param</action>
        </script>
        <script state="off">
            <action>maincpu.mq@0DF98 = 3B70000015D84E75</action>
            <action>maincpu.mq@3C1C0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C1C8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C1D0 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="multiple jump">
        <script state="on">
            <action>maincpu.md@D0AC = 4EB80130        </action>
            <action>maincpu.mq@0130 = 4A6D15EE672C302D</action>
            <action>maincpu.mq@0138 = 0B94322D3F803B40</action>
            <action>maincpu.mq@0140 = 3F804640C0410800</action>
            <action>maincpu.mq@0148 = 000567163B7C000F</action>
            <action>maincpu.mq@0150 = 15F03B7C008015EE</action>
            <action>maincpu.mq@0158 = 103C00184EB90001</action>
            <action>maincpu.mq@0160 = 8C4C4EF90000D140</action>
            <!--
            0130 | 4A6D 15EE      : tst.w   ($15ee,A5)
            0134 | 672C           : beq     $162
            0136 | 302D 0B94      : move.w  ($b94,A5), D0
            013A | 322D 3F80      : move.w  ($3f80,A5), D1
            013E | 3B40 3F80      : move.w  D0, ($3f80,A5)
            0142 | 4640           : not.w   D0
            0144 | C041           : and.w   D1, D0
            0146 | 0800 0005      : btst    #$5, D0
            014A | 6716           : beq     $162
            014C | 3B7C 000F 15F0 : move.w  #$f, ($15f0,A5)
            0152 | 3B7C 0080 15EE : move.w  #$80, ($15ee,A5)
            0158 | 103C 0018      : move.b  #$18, D0
            015C | 4EB9 0001 8C4C : jsr     $18c4c.l
            0162 | 4EF9 0000 D140 : jmp     $d140.l
            -->
        </script>
        <script state="off">
            <action>maincpu.md@D0AC = 61000092        </action>
            <action>maincpu.mq@0130 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@0138 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@0140 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@0148 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@0150 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@0158 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@0160 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="max bullets up">
        <script state="on">
            <action>maincpu.md@FE6A = 0C400005</action>
        </script>
        <script state="off">
            <action>maincpu.md@FE6A = B06D0C34</action>
        </script>
    </cheat>

    <cheat desc="short hit mark">
        <script state="on">
            <action>maincpu.md@FF94 = 103C0000</action>
        </script>
        <script state="off">
            <action>maincpu.md@FF94 = 103B000E</action>
        </script>
    </cheat>

    <cheat desc="timer speed">
        <parameter>
            <item value="0x00FF">01 (slow)</item>
            <item value="0x007F">02       </item>
            <item value="0x003F">03       </item>
            <item value="0x001F">04       </item>
            <item value="0x0000">05 (fast)</item>
        </parameter>
        <script state="on">
            <action>maincpu.md@15500 = 4EB80120        </action>
            <action>maincpu.mq@00120 = 102D152902000000</action>
            <action>maincpu.mq@00128 = 6604536D0C424E75</action>
            <!--
            0120 | 102D 1529 : move.b  ($1529,A5), D0
            0124 | 0200 xxxx : andi.b  #$xx, D0
            0128 | 6604      : bne     $12e
            012A | 536D 0C42 : subq.w  #1, ($c42,A5)
            012E | 4E75      : rts
            -->
        </script>
        <script state="change">
            <action>maincpu.mw@0126 = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@15500 = 536D0C42        </action>
            <action>maincpu.mq@00120 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@00128 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="hidden item finder">
        <script state="on">
            <action>maincpu.md@1A562 = 0003C1D8        </action>
            <action>maincpu.mq@3C1D8 = 302D0C1E906C0002</action>
            <action>maincpu.mq@3C1E0 = 65080C4000206422</action>
            <action>maincpu.mq@3C1E8 = 600844400C400010</action>
            <action>maincpu.mq@3C1F0 = 6418302D0C1C906C</action>
            <action>maincpu.mq@3C1F8 = 0006640244400C40</action>
            <action>maincpu.mq@3C200 = 00286406197C0001</action>
            <action>maincpu.mq@3C208 = 001F4EF9000222AC</action>
            <!--
            3C1D8 | 302D 0C1E      : move.w  ($c1e,A5), D0
            3C1DC | 906C 0002      : sub.w   ($2,A4), D0
            3C1E0 | 6508           : bcs     $3c1ea
            3C1E2 | 0C40 0020      : cmpi.w  #$20, D0
            3C1E6 | 6422           : bcc     $3c20a
            3C1E8 | 6008           : bra     $3c1f2
            3C1EA | 4440           : neg.w   D0
            3C1EC | 0C40 0010      : cmpi.w  #$10, D0
            3C1F0 | 6418           : bcc     $3c20a
            3C1F2 | 302D 0C1C      : move.w  ($c1c,A5), D0
            3C1F6 | 906C 0006      : sub.w   ($6,A4), D0
            3C1FA | 6402           : bcc     $3c1fe
            3C1FC | 4440           : neg.w   D0
            3C1FE | 0C40 0028      : cmpi.w  #$28, D0
            3C202 | 6406           : bcc     $3c20a
            3C204 | 197C 0001 001F : move.b  #$1, ($1f,A4)
            3C20A | 4EF9 0002 22AC : jmp     $222ac.l
            -->
        </script>
        <script state="off">
            <action>maincpu.md@1A562 = 000222AC        </action>
            <action>maincpu.mq@3C1D8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C1E0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C1E8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C1F0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C1F8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C200 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C208 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <comment>set &quot;skip ram/rom check&quot; then reset the game (F3)</comment>
        <script state="on">
            <action>maincpu.md@07B7E = 0003C210        </action>
            <action>maincpu.mq@3C210 = 303C00EF60424E49</action>
            <action>maincpu.mq@3C218 = 1401122D0B77B401</action>
            <action>maincpu.mq@3C220 = 67F40C01003B6602</action>
            <action>maincpu.mq@3C228 = 53150C0100376602</action>
            <action>maincpu.mq@3C230 = 52150C01003D6604</action>
            <action>maincpu.mq@3C238 = 041500100C01003E</action>
            <action>maincpu.mq@3C240 = 6604061500100C01</action>
            <action>maincpu.mq@3C248 = 002F660410156008</action>
            <action>maincpu.mq@3C250 = 0C01001F66084200</action>
            <action>maincpu.mq@3C258 = 4EB900018C4C60B6</action>
            <!--
            3C210 | 303C 00EF      : move.w  #$ef, D0      // enable sound
            3C214 | 6042           : bra     $3c258
            3C216 | 4E49           : trap    #$9
            3C218 | 1401           : move.b  D1, D2
            3C21A | 122D 0B77      : move.b  ($b77,A5), D1 // read input ($10CB77)
            3C21E | B401           : cmp.b   D1, D2
            3C220 | 67F4           : beq     $3c216
            3C222 | 0C01 003B      : cmpi.b  #$3b, D1
            3C226 | 6602           : bne     $3c22a
            3C228 | 5315           : subq.b  #1, (A5)      // decrease code -01
            3C22A | 0C01 0037      : cmpi.b  #$37, D1
            3C22E | 6602           : bne     $3c232
            3C230 | 5215           : addq.b  #1, (A5)      // increase code +01
            3C232 | 0C01 003D      : cmpi.b  #$3d, D1
            3C236 | 6604           : bne     $3c23c
            3C238 | 0415 0010      : subi.b  #$10, (A5)    // decrease code -10
            3C23C | 0C01 003E      : cmpi.b  #$3e, D1
            3C240 | 6604           : bne     $3c246
            3C242 | 0615 0010      : addi.b  #$10, (A5)    // increase code +10
            3C246 | 0C01 002F      : cmpi.b  #$2f, D1
            3C24A | 6604           : bne     $3c250
            3C24C | 1015           : move.b  (A5), D0      // play sound
            3C24E | 6008           : bra     $3c258
            3C250 | 0C01 001F      : cmpi.b  #$1f, D1
            3C254 | 6608           : bne     $3c25e
            3C256 | 4200           : clr.b   D0            // stop sound
            3C258 | 4EB9 0001 8C4C : jsr     $18c4c.l      // send sound code
            3C25E | 60B6           : bra     $3c216
            -->
        </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@10C000</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.md@07B7E = 0000A050        </action>
            <action>maincpu.mq@3C210 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C218 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C220 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C228 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C230 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C238 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C240 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C248 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C250 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3C258 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="skip ram/rom check">
        <script state="on">
            <action>maincpu.md@739A = 0000739E</action> <!-- ram -->
            <action>maincpu.md@743C = 610000C4</action> <!-- rom -->
        </script>
        <script state="off">
            <action>maincpu.md@739A = 00026178</action>
            <action>maincpu.md@743C = 610000C6</action>
        </script>
    </cheat>

</mamecheat>
bonzeadvp.xml

Code: Select all

<!-- Bonze Adventure (World, prototype, newer) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mw@0D426 = 6008</action> <!-- trap -->
            <action>maincpu.mw@0D980 = 6000</action> <!-- trap -->
            <action>maincpu.mw@128AE = 0BB6</action> <!-- most enemies -->
            <action>maincpu.mw@128BC = 0BA8</action> <!-- bullet -->
            <action>maincpu.mw@1294C = 31DA</action> <!-- rare enemies -->
            <action>maincpu.mw@1299C = 31DA</action> <!-- barrier -->
            <action>maincpu.mw@129C4 = 31DA</action> <!-- wind -->
            <action>maincpu.mw@12C48 = 08AD</action> <!-- water pillar -->
        </script>
        <script state="off">
            <action>maincpu.mw@0D426 = 6608</action>
            <action>maincpu.mw@0D9B0 = 6600</action>
            <action>maincpu.mw@128AE = 0B0C</action>
            <action>maincpu.mw@128BC = 0AD2</action>
            <action>maincpu.mw@1294C = 2E54</action>
            <action>maincpu.mw@1299C = 309A</action>
            <action>maincpu.mw@129C4 = 2CBA</action>
            <action>maincpu.mw@12C48 = 08ED</action>
        </script>
    </cheat>

    <cheat desc="rapid fire">
        <script state="on">
            <action>maincpu.mb@FE47 = 08              </action>
            <action>maincpu.md@FE56 = 4EF80110        </action>
            <action>maincpu.mq@0110 = 4EB9000106F64EF9</action>
            <action>maincpu.mq@0118 = 0000FE62FFFFFFFF</action>
            <!--
            0110 | 4EB9 0001 06F6 : jsr     $106F6.l
            0116 | 4EF9 0000 FE62 : jmp     $fe62.l
            -->
        </script>
        <script state="off">
            <action>maincpu.mb@FE47 = 12              </action>
            <action>maincpu.md@FE56 = 6100089E        </action>
            <action>maincpu.mq@0110 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@0118 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="walk speed">
        <parameter min="0x01" max="0x05" step="0x01" />
        <script state="on">
            <action>maincpu.mq@0DF62 = 4EB90003B5E04E75</action>
            <action>maincpu.mq@3B5E0 = 30300000670C7000</action>
            <action>maincpu.mq@3B5E8 = 082D000615DD6702</action>
            <action>maincpu.mq@3B5F0 = 70003B4015D64E75</action>
            <!--
            3B5E0 | 3030 0000      : move.w  (A0,D0.w), D0
            3B5E4 | 670C           : beq     $3b5f2
            3B5E6 | 7000           : moveq   #$0, D0
            3B5E8 | 082D 0006 15DD : btst    #$6, ($15dd,A5)
            3B5EE | 6702           : beq     $3b5f2
            3B5F0 | 70xx           : moveq   #$xx, D0
            3B5F2 | 3B40 15D6      : move.w  D0, ($15d6,A5)
            3B5F6 | 4E75           : rts
            -->
        </script>
        <script state="change">
            <action>maincpu.mb@3B5F1 = param</action>
        </script>
        <script state="off">
            <action>maincpu.mq@0DF62 = 3B70000015D84E75</action>
            <action>maincpu.mq@3B5E0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3B5E8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3B5F0 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="multiple jump">
        <script state="on">
            <action>maincpu.md@D076 = 4EB80130        </action>
            <action>maincpu.mq@0130 = 4A6D15EC672C302D</action>
            <action>maincpu.mq@0138 = 0B94322D3F803B40</action>
            <action>maincpu.mq@0140 = 3F804640C0410800</action>
            <action>maincpu.mq@0148 = 000567163B7C000F</action>
            <action>maincpu.mq@0150 = 15EE3B7C008015EC</action>
            <action>maincpu.mq@0158 = 103C00184EB90001</action>
            <action>maincpu.mq@0160 = 8BF44EF90000D10A</action>
            <!--
            0130 | 4A6D 15EC      : tst.w   ($15ec,A5)
            0134 | 672C           : beq     $162
            0136 | 302D 0B94      : move.w  ($b94,A5), D0
            013A | 322D 3F80      : move.w  ($3f80,A5), D1
            013E | 3B40 3F80      : move.w  D0, ($3f80,A5)
            0142 | 4640           : not.w   D0
            0144 | C041           : and.w   D1, D0
            0146 | 0800 0005      : btst    #$5, D0
            014A | 6716           : beq     $162
            014C | 3B7C 000F 15EE : move.w  #$f, ($15ee,A5)
            0152 | 3B7C 0080 15EC : move.w  #$80, ($15ec,A5)
            0158 | 103C 0018      : move.b  #$18, D0
            015C | 4EB9 0001 8BF4 : jsr     $18bf4.l
            0162 | 4EF9 0000 D10A : jmp     $d10a.l
            -->
        </script>
        <script state="off">
            <action>maincpu.md@D076 = 61000092        </action>
            <action>maincpu.mq@0130 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@0138 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@0140 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@0148 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@0150 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@0158 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@0160 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="max bullets up">
        <script state="on">
            <action>maincpu.md@FE34 = 0C400005</action>
        </script>
        <script state="off">
            <action>maincpu.md@FE34 = B06D0C32</action>
        </script>
    </cheat>

    <cheat desc="short hit mark">
        <script state="on">
            <action>maincpu.md@FF5E = 103C0000</action>
        </script>
        <script state="off">
            <action>maincpu.md@FF5E = 103B000E</action>
        </script>
    </cheat>

    <cheat desc="timer speed">
        <parameter>
            <item value="0x00FF">01 (slow)</item>
            <item value="0x007F">02       </item>
            <item value="0x003F">03       </item>
            <item value="0x001F">04       </item>
            <item value="0x0000">05 (fast)</item>
        </parameter>
        <script state="on">
            <action>maincpu.md@154CA = 4EB80120        </action>
            <action>maincpu.mq@00120 = 102D152702000000</action>
            <action>maincpu.mq@00128 = 6604536D0C404E75</action>
            <!--
            0120 | 102D 1527 : move.b  ($1527,A5), D0
            0124 | 0200 xxxx : andi.b  #$xx, D0
            0128 | 6604      : bne     $12e
            012A | 536D 0C40 : subq.w  #1, ($c40,A5)
            012E | 4E75      : rts
            -->
        </script>
        <script state="change">
            <action>maincpu.mw@0126 = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@154CA = 536D0C40        </action>
            <action>maincpu.mq@00120 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@00128 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="hidden item finder">
        <script state="on">
            <action>maincpu.md@1A50A = 0003B5F8        </action>
            <action>maincpu.mq@3B5F8 = 302D0C1C906C0002</action>
            <action>maincpu.mq@3B600 = 65080C4000206422</action>
            <action>maincpu.mq@3B608 = 600844400C400010</action>
            <action>maincpu.mq@3B610 = 6418302D0C1A906C</action>
            <action>maincpu.mq@3B618 = 0006640244400C40</action>
            <action>maincpu.mq@3B620 = 00286406197C0001</action>
            <action>maincpu.mq@3B628 = 001F4EF900022254</action>
            <!--
            3B5F8 | 302D 0C1C      : move.w  ($c1c,A5), D0
            3B5FC | 906C 0002      : sub.w   ($2,A4), D0
            3B600 | 6508           : bcs     $3b60a
            3B602 | 0C40 0020      : cmpi.w  #$20, D0
            3B606 | 6422           : bcc     $3b62a
            3B608 | 6008           : bra     $3b612
            3B60A | 4440           : neg.w   D0
            3B60C | 0C40 0010      : cmpi.w  #$10, D0
            3B610 | 6418           : bcc     $3b62a
            3B612 | 302D 0C1A      : move.w  ($c1a,A5), D0
            3B616 | 906C 0006      : sub.w   ($6,A4), D0
            3B61A | 6402           : bcc     $3b61e
            3B61C | 4440           : neg.w   D0
            3B61E | 0C40 0028      : cmpi.w  #$28, D0
            3B622 | 6406           : bcc     $3b62a
            3B624 | 197C 0001 001F : move.b  #$1, ($1f,A4)
            3B62A | 4EF9 0002 2254 : jmp     $22254.l
            -->
        </script>
        <script state="off">
            <action>maincpu.md@1A50A = 00022254        </action>
            <action>maincpu.mq@3B5F8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3B600 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3B608 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3B610 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3B618 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3B620 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3B628 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <comment>set &quot;skip ram/rom check&quot; then reset the game (F3)</comment>
        <script state="on">
            <action>maincpu.md@07B54 = 0003B630        </action>
            <action>maincpu.mq@3B630 = 303C00EF60424E49</action>
            <action>maincpu.mq@3B638 = 1401122D0B77B401</action>
            <action>maincpu.mq@3B640 = 67F40C01003B6602</action>
            <action>maincpu.mq@3B648 = 53150C0100376602</action>
            <action>maincpu.mq@3B650 = 52150C01003D6604</action>
            <action>maincpu.mq@3B658 = 041500100C01003E</action>
            <action>maincpu.mq@3B660 = 6604061500100C01</action>
            <action>maincpu.mq@3B668 = 002F660410156008</action>
            <action>maincpu.mq@3B670 = 0C01001F66084200</action>
            <action>maincpu.mq@3B678 = 4EB900018BF460B6</action>
            <!--
            3B630 | 303C 00EF      : move.w  #$ef, D0      // enable sound
            3B634 | 6042           : bra     $3b678
            3B636 | 4E49           : trap    #$9
            3B638 | 1401           : move.b  D1, D2
            3B63A | 122D 0B77      : move.b  ($b77,A5), D1 // read input ($10CB77)
            3B63E | B401           : cmp.b   D1, D2
            3B640 | 67F4           : beq     $3c216
            3B642 | 0C01 003B      : cmpi.b  #$3b, D1
            3B646 | 6602           : bne     $3b64a
            3B648 | 5315           : subq.b  #1, (A5)      // decrease code -01
            3B64A | 0C01 0037      : cmpi.b  #$37, D1
            3B64E | 6602           : bne     $3b652
            3B650 | 5215           : addq.b  #1, (A5)      // increase code +01
            3B652 | 0C01 003D      : cmpi.b  #$3d, D1
            3B656 | 6604           : bne     $3b65c
            3B658 | 0415 0010      : subi.b  #$10, (A5)    // decrease code -10
            3B65C | 0C01 003E      : cmpi.b  #$3e, D1
            3B660 | 6604           : bne     $3b666
            3B662 | 0615 0010      : addi.b  #$10, (A5)    // increase code +10
            3B666 | 0C01 002F      : cmpi.b  #$2f, D1
            3B66A | 6604           : bne     $3b670
            3B66C | 1015           : move.b  (A5), D0      // play sound
            3B66E | 6008           : bra     $3b678
            3B670 | 0C01 001F      : cmpi.b  #$1f, D1
            3B674 | 6608           : bne     $3b67e
            3B676 | 4200           : clr.b   D0            // stop sound
            3B678 | 4EB9 0001 8BF4 : jsr     $18bf4.l      // send sound code
            3B67E | 60B6           : bra     $3b636
            -->
        </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@10C000</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.md@07B54 = 0000A020        </action>
            <action>maincpu.mq@3B630 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3B638 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3B640 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3B648 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3B650 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3B658 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3B660 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3B668 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3B670 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3B678 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="skip ram/rom check">
        <script state="on">
            <action>maincpu.md@7376 = 0000737A</action> <!-- ram -->
            <action>maincpu.md@7418 = 610000C4</action> <!-- rom -->
        </script>
        <script state="off">
            <action>maincpu.md@7376 = 00026120</action>
            <action>maincpu.md@7418 = 610000C6</action>
        </script>
    </cheat>

</mamecheat>
bonzeadvp2.xml

Code: Select all

<!-- Bonze Adventure (World, prototype, older) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mw@97AA = 6008</action> <!-- trap -->
            <action>maincpu.mw@9D36 = 6000</action> <!-- trap -->
            <action>maincpu.mw@EFF8 = 0AEA</action> <!-- most enemies -->
            <action>maincpu.mw@F006 = 0ADC</action> <!-- bullet -->
            <action>maincpu.mw@F056 = F878</action> <!-- rare enemies -->
            <action>maincpu.mw@F0A6 = F878</action> <!-- barrier -->
            <action>maincpu.mw@F0CE = F878</action> <!-- wind -->
            <action>maincpu.mw@F2F8 = 08AD</action> <!-- water pillar -->
        </script>
        <script state="off">
            <action>maincpu.mw@97AA = 6608</action>
            <action>maincpu.mw@9D36 = 6600</action>
            <action>maincpu.mw@EFF8 = 0A60</action>
            <action>maincpu.mw@F006 = 0A26</action>
            <action>maincpu.mw@F056 = F4EA</action>
            <action>maincpu.mw@F0A6 = F738</action>
            <action>maincpu.mw@F0CE = F36A</action>
            <action>maincpu.mw@F2F8 = 08ED</action>
        </script>
    </cheat>

    <cheat desc="rapid fire">
        <script state="on">
            <action>maincpu.mb@C1B3 = 08              </action>
            <action>maincpu.md@C1C2 = 4EF80110        </action>
            <action>maincpu.mq@0110 = 4EB90000CA624EF9</action>
            <action>maincpu.mq@0118 = 0000C1CEFFFFFFFF</action>
            <!--
            0110 | 4EB9 0000 CA62 : jsr     $ca62.l
            0116 | 4EF9 0000 C1CE : jmp     $c1ce.l
            -->
        </script>
        <script state="off">
            <action>maincpu.mb@C1B3 = 12              </action>
            <action>maincpu.md@C1C2 = 6100089E        </action>
            <action>maincpu.mq@0110 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@0118 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="walk speed">
        <parameter min="0x01" max="0x05" step="0x01" />
        <script state="on">
            <action>maincpu.mq@0A308 = 4EB900034C404E75</action>
            <action>maincpu.mq@34C40 = 30300000670C7000</action>
            <action>maincpu.mq@34C48 = 082D000602D56702</action>
            <action>maincpu.mq@34C50 = 70003B4015AA4E75</action>
            <!--
            34C40 | 3030 0000      : move.w  (A0,D0.w), D0
            34C44 | 670C           : beq     $34c52
            34C46 | 7000           : moveq   #$0, D0
            34C48 | 082D 0006 02D5 : btst    #$6, ($2d5,A5)
            34C4E | 6702           : beq     $34c52
            34C50 | 70xx           : moveq   #$xx, D0
            34C52 | 3B40 15AA      : move.w  D0, ($15aa,A5)
            34C56 | 4E75           : rts
            -->
        </script>
        <script state="change">
            <action>maincpu.mb@34C51 = param</action>
        </script>
        <script state="off">
            <action>maincpu.mq@0A308 = 3B70000015AA4E75</action>
            <action>maincpu.mq@34C40 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@34C48 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@34C50 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="multiple jump">
        <script state="on">
            <action>maincpu.md@9482 = 4EB80130        </action>
            <action>maincpu.mq@0130 = 4A6D15C0672C302D</action>
            <action>maincpu.mq@0138 = 0B8E322D3F803B40</action>
            <action>maincpu.mq@0140 = 3F804640C0410800</action>
            <action>maincpu.mq@0148 = 000567163B7C000F</action>
            <action>maincpu.mq@0150 = 15C23B7C008015C0</action>
            <action>maincpu.mq@0158 = 103C00184EB90001</action>
            <action>maincpu.mq@0160 = 4C684EF90000948E</action>
            <!--
            0130 | 4A6D 15C0      : tst.w   ($15c0,A5)
            0134 | 672C           : beq     $162
            0136 | 302D 0B8E      : move.w  ($b8e,A5), D0
            013A | 322D 3F80      : move.w  ($3f80,A5), D1
            013E | 3B40 3F80      : move.w  D0, ($3f80,A5)
            0142 | 4640           : not.w   D0
            0144 | C041           : and.w   D1, D0
            0146 | 0800 0005      : btst    #$5, D0
            014A | 6716           : beq     $162
            014C | 3B7C 000F 15C2 : move.w  #$f, ($15c2,A5)
            0152 | 3B7C 0080 15C0 : move.w  #$80, ($15c0,A5)
            0158 | 103C 0018      : move.b  #$18, D0
            015C | 4EB9 0001 4C68 : jsr     $14c68.l
            0162 | 4EF9 0000 948E : jmp     $948e.l
            -->
        </script>
        <script state="off">
            <action>maincpu.md@9482 = 6100000A        </action>
            <action>maincpu.mq@0130 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@0138 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@0140 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@0148 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@0150 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@0158 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@0160 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="max bullets up">
        <script state="on">
            <action>maincpu.md@C1A0 = 0C400005</action>
        </script>
        <script state="off">
            <action>maincpu.md@C1A0 = B06D0C28</action>
        </script>
    </cheat>

    <cheat desc="short hit mark">
        <script state="on">
            <action>maincpu.md@C2CA = 103C0000</action>
        </script>
        <script state="off">
            <action>maincpu.md@C2CA = 103B000E</action>
        </script>
    </cheat>

    <cheat desc="timer speed">
        <parameter>
            <item value="0x00FF">01 (slow)</item>
            <item value="0x007F">02       </item>
            <item value="0x003F">03       </item>
            <item value="0x001F">04       </item>
            <item value="0x0000">05 (fast)</item>
        </parameter>
        <script state="on">
            <action>maincpu.md@11B1C = 4EB80120        </action>
            <action>maincpu.mq@00120 = 102D151B02000000</action>
            <action>maincpu.mq@00128 = 6604536D0C364E75</action>
            <!--
            0120 | 102D 151B : move.b  ($151b,A5), D0
            0124 | 0200 xxxx : andi.b  #$xx, D0
            0128 | 6604      : bne     $12e
            012A | 536D 0C36 : subq.w  #1, ($c36,A5)
            012E | 4E75      : rts
            -->
        </script>
        <script state="change">
            <action>maincpu.mw@0126 = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@11B1C = 536D0C36        </action>
            <action>maincpu.mq@00120 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@00128 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="hidden item finder">
        <script state="on">
            <action>maincpu.md@1651C = 00034C58        </action>
            <action>maincpu.mq@34C58 = 302D0C12906C0002</action>
            <action>maincpu.mq@34C60 = 65080C4000206422</action>
            <action>maincpu.mq@34C68 = 600844400C400010</action>
            <action>maincpu.mq@34C70 = 6418302D0C10906C</action>
            <action>maincpu.mq@34C78 = 0006640244400C40</action>
            <action>maincpu.mq@34C80 = 00286406197C0001</action>
            <action>maincpu.mq@34C88 = 001F4EF90001D6E2</action>
            <!--
            34C58 | 302D 0C12      : move.w  ($c12,A5), D0
            34C5C | 906C 0002      : sub.w   ($2,A4), D0
            34C60 | 6508           : bcs     $34c6a
            34C62 | 0C40 0020      : cmpi.w  #$20, D0
            34C66 | 6422           : bcc     $34c8a
            34C68 | 6008           : bra     $34c72
            34C6A | 4440           : neg.w   D0
            34C6C | 0C40 0010      : cmpi.w  #$10, D0
            34C70 | 6418           : bcc     $34c8a
            34C72 | 302D 0C10      : move.w  ($c10,A5), D0
            34C76 | 906C 0006      : sub.w   ($6,A4), D0
            34C7A | 6402           : bcc     $34c7e
            34C7C | 4440           : neg.w   D0
            34C7E | 0C40 0028      : cmpi.w  #$28, D0
            34C82 | 6406           : bcc     $34c8a
            34C84 | 197C 0001 001F : move.b  #$1, ($1f,A4)
            34C8A | 4EF9 0001 D6E2 : jmp     $1d6e2.l
            -->
        </script>
        <script state="off">
            <action>maincpu.md@1651C = 0001D6E2        </action>
            <action>maincpu.mq@34C58 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@34C60 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@34C68 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@34C70 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@34C78 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@34C80 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@34C88 = FFFFFFFFFFFFFFFF</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@06EDE = 00034C90        </action>
            <action>maincpu.mq@34C90 = 303C00EF60424E49</action>
            <action>maincpu.mq@34C98 = 1401122D0B71B401</action>
            <action>maincpu.mq@34CA0 = 67F40C01003B6602</action>
            <action>maincpu.mq@34CA8 = 53150C0100376602</action>
            <action>maincpu.mq@34CB0 = 52150C01003D6604</action>
            <action>maincpu.mq@34CB8 = 041500100C01003E</action>
            <action>maincpu.mq@34CC0 = 6604061500100C01</action>
            <action>maincpu.mq@34CC8 = 002F660410156008</action>
            <action>maincpu.mq@34CD0 = 0C01001F66084200</action>
            <action>maincpu.mq@34CD8 = 4EB900014C6860B6</action>
            <!--
            3B630 | 303C 00EF      : move.w  #$ef, D0      // enable sound
            3B634 | 6042           : bra     $34cd8
            3B636 | 4E49           : trap    #$9
            3B638 | 1401           : move.b  D1, D2
            3B63A | 122D 0B71      : move.b  ($b71,A5), D1 // read input ($10CB77)
            3B63E | B401           : cmp.b   D1, D2
            3B640 | 67F4           : beq     $34c96
            3B642 | 0C01 003B      : cmpi.b  #$3b, D1
            3B646 | 6602           : bne     $34caa
            3B648 | 5315           : subq.b  #1, (A5)      // decrease code -01
            3B64A | 0C01 0037      : cmpi.b  #$37, D1
            3B64E | 6602           : bne     $34cb2
            3B650 | 5215           : addq.b  #1, (A5)      // increase code +01
            3B652 | 0C01 003D      : cmpi.b  #$3d, D1
            3B656 | 6604           : bne     $34cbc
            3B658 | 0415 0010      : subi.b  #$10, (A5)    // decrease code -10
            3B65C | 0C01 003E      : cmpi.b  #$3e, D1
            3B660 | 6604           : bne     $34cc6
            3B662 | 0615 0010      : addi.b  #$10, (A5)    // increase code +10
            3B666 | 0C01 002F      : cmpi.b  #$2f, D1
            3B66A | 6604           : bne     $34cd0
            3B66C | 1015           : move.b  (A5), D0      // play sound
            3B66E | 6008           : bra     $34cd8
            3B670 | 0C01 001F      : cmpi.b  #$1f, D1
            3B674 | 6608           : bne     $34cde
            3B676 | 4200           : clr.b   D0            // stop sound
            3B678 | 4EB9 0001 4C68 : jsr     $14c68.l      // send sound code
            3B67E | 60B6           : bra     $34c96
            -->
        </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@10C000</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.md@06EDE = 00009102        </action>
            <action>maincpu.mq@34C90 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@34C98 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@34CA0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@34CA8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@34CB0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@34CB8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@34CC0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@34CC8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@34CD0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@34CD8 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

</mamecheat>
  • "walk speed" : Incorrect slip happens at ice maze.
  • "max bullets up" : Max is 5 bullets.
  • "hidden item finder" : Hidden item appears automatically when you go near "hidden" point.
  • "skip ram/rom check" : Removed from bonzeadvp2. This set seems not to check ram/rom at boot.