Page 1 of 1

[kidniki]+ Kid Niki/Yanchamaru

Posted: Wed Apr 30, 2025 10:38 am
by jman
kidniki.xml

Code: Select all

<!-- Kid Niki - Radical Ninja (World) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mw@33BD = 2310</action>
        </script>
        <script state="off">
            <action>maincpu.mw@33BD = 1817</action>
        </script>
    </cheat>

    <cheat desc="rapid fire">
        <script state="on">
            <action>maincpu.md@0194C = 7E93E0CD        </action>
            <action>maincpu.mq@113E0 = FEE0003A4FE10521</action>
            <action>maincpu.mq@113E8 = 7ECBC878CBC07905</action>
            <action>maincpu.mq@113F0 = FFFFFFFFC9BECBC8</action>
            <!--
            93E0 | 21 05 E1 : ld   hl,$E105
            93E3 | 4F       : ld   c,a
            93E4 | 3A 00 E0 : ld   a,($E000)
            93E7 | FE 05    : cp   $05
            93E9 | 79       : ld   a,c
            93EA | C0       : ret  nz
            93EB | CB 78    : bit  7,b
            93ED | C8       : ret  z
            93EE | CB 7E    : bit  7,(hl)
            93F0 | C8       : ret  z
            93F1 | CB BE    : res  7,(hl)
            93F3 | C9       : ret
            -->
        </script>
        <script state="off">
            <action>maincpu.md@0194C = 7EE10521        </action>
            <action>maincpu.mq@113E0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@113E8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@113F0 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="multiple jump">
        <script state="on">
            <action>maincpu.md@01721 = CF9400CD        </action>
            <action>maincpu.mq@11400 = DD2D2005FEE0003A</action>
            <action>maincpu.mq@11408 = FE7DDD2720E5FE7C</action>
            <action>maincpu.mq@11410 = 6FCBE1043A212000</action>
            <action>maincpu.mq@11418 = CBE1053A041E1A28</action>
            <action>maincpu.mq@11420 = 4FCB0618AF032847</action>
            <action>maincpu.mq@11428 = 1E0877DD013E0728</action>
            <action>maincpu.mq@11430 = C9005EDD0073DD0B</action>
            <!--
            9400 | 3A 00 E0 : ld   a,($E000)  // is playing the game?
            9403 | FE 05    : cp   $05
            9405 | 20 2D    : jr   nz,$9434
            9407 | DD 7C    : ld   a,ixh      // is player?
            9409 | FE E5    : cp   $E5
            940B | 20 27    : jr   nz,$9434
            940D | DD 7D    : ld   a,ixl
            940F | FE 00    : cp   $00
            9411 | 20 21    : jr   nz,$9434
            9413 | 3A 04 E1 : ld   a,($E104)  // is pressed jump button?
            9416 | CB 6F    : bit  5,a
            9418 | 28 1A    : jr   z,$9434
            941A | 1E 04    : ld   e,$04
            941C | 3A 05 E1 : ld   a,($E105)  // is pressed left/right key?
            941F | CB 47    : bit  0,a
            9421 | 28 03    : jr   z,$9426
            9423 | AF       : xor  a          // right
            9424 | 18 06    : jr   $942C
            9426 | CB 4F    : bit  1,a
            9428 | 28 07    : jr   z,$9431
            942A | 3E 01    : ld   a,$01      // left
            942C | DD 77 08 : ld   (ix+$08),a // set direction
            942F | 1E 0B    : ld   e,$0B
            9431 | DD 73 00 : ld   (ix+$00),e
            9434 | DD 5E 00 : ld   e,(ix+$00)
            9437 | C9       : ret
            -->
        </script>
        <script state="off">
            <action>maincpu.md@01721 = CF005EDD        </action>
            <action>maincpu.mq@11400 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@11408 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@11410 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@11418 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@11420 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@11428 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@11430 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="timer speed">
        <parameter>
            <item value="0xFF">01 (slow)</item>
            <item value="0x80">02       </item>
            <item value="0x40">03       </item>
            <item value="0x20">04       </item>
            <item value="0x00">01 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.pb@E123 = 00   </action> <!-- initialize sub timer -->
            <action>maincpu.mb@0C70 = param</action>
        </script>
        <script state="off">
            <action>maincpu.pb@E123 = 00</action>
            <action>maincpu.mb@0C70 = 12</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <script state="on">
            <action>maincpu.mb@005A7 = 00              </action> <!-- disable next sequence -->
            <action>maincpu.md@005B5 = E59440C3        </action>
            <action>maincpu.mq@11440 = 2847B801DBE80021</action>
            <action>maincpu.mq@11448 = FEFE350120FDFEFA</action>
            <action>maincpu.mq@11450 = 3E0420FBFE340120</action>
            <action>maincpu.mq@11458 = 3E0520F7FE0618F0</action>
            <action>maincpu.mq@11460 = 03207FFE78778610</action>
            <action>maincpu.mq@11468 = AF0420DFFE05187E</action>
            <action>maincpu.mq@11470 = FFFFFFCE181AD8CD</action>
            <!--
            9440 | 21 00 E8 : ld   hl,$E800 // sound code address
            9443 | DB 01    : in   a,($01)  // read input
            9445 | B8       : cp   b
            9446 | 47       : ld   b,a
            9447 | 28 FA    : jr   z,$9443
            9449 | FE FD    : cp   $FD
            944B | 20 01    : jr   nz,$944E
            944D | 35       : dec  (hl)     // decrease code -01
            944E | FE FE    : cp   $FE
            9450 | 20 01    : jr   nz,$9453
            9452 | 34       : inc  (hl)     // increase code +01
            9453 | FE FB    : cp   $FB
            9455 | 20 04    : jr   nz,$945B
            9457 | 3E F0    : ld   a,$F0    // decrease code -10
            9459 | 18 06    : jr   $9461
            945B | FE F7    : cp   $F7
            945D | 20 05    : jr   nz,$9464
            945F | 3E 10    : ld   a,$10    // increase code +10
            9461 | 86       : add  a,(hl)
            9462 | 77       : ld   (hl),a
            9463 | 78       : ld   a,b
            9464 | FE 7F    : cp   $7F
            9466 | 20 03    : jr   nz,$946B
            9468 | 7E       : ld   a,(hl)   // play sound
            9469 | 18 05    : jr   $9470
            946B | FE DF    : cp   $DF
            946D | 20 04    : jr   nz,$9473
            946F | AF       : xor  a        // stop sound
            9470 | CD D8 1A : call $1AD8    // send sound code
            9473 | 18 CE    : jr   $9443
            -->
        </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@E800</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.mb@005A7 = 03              </action>
            <action>maincpu.md@005B5 = E505B521        </action>
            <action>maincpu.mq@11440 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@11448 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@11450 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@11458 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@11460 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@11468 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@11470 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

</mamecheat>
kidnikiu.xml

Code: Select all

<!-- Kid Niki - Radical Ninja (US) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mw@33BD = 2310</action>
        </script>
        <script state="off">
            <action>maincpu.mw@33BD = 1817</action>
        </script>
    </cheat>

    <cheat desc="rapid fire">
        <script state="on">
            <action>maincpu.md@0194C = 7E93E0CD        </action>
            <action>maincpu.mq@113E0 = FEE0003A4FE10521</action>
            <action>maincpu.mq@113E8 = 7ECBC878CBC07905</action>
            <action>maincpu.mq@113F0 = FFFFFFFFC9BECBC8</action>
            <!--
            93E0 | 21 05 E1 : ld   hl,$E105
            93E3 | 4F       : ld   c,a
            93E4 | 3A 00 E0 : ld   a,($E000)
            93E7 | FE 05    : cp   $05
            93E9 | 79       : ld   a,c
            93EA | C0       : ret  nz
            93EB | CB 78    : bit  7,b
            93ED | C8       : ret  z
            93EE | CB 7E    : bit  7,(hl)
            93F0 | C8       : ret  z
            93F1 | CB BE    : res  7,(hl)
            93F3 | C9       : ret
            -->
        </script>
        <script state="off">
            <action>maincpu.md@0194C = 7EE10521        </action>
            <action>maincpu.mq@113E0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@113E8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@113F0 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="multiple jump">
        <script state="on">
            <action>maincpu.md@01721 = CF9400CD        </action>
            <action>maincpu.mq@11400 = DD2D2005FEE0003A</action>
            <action>maincpu.mq@11408 = FE7DDD2720E5FE7C</action>
            <action>maincpu.mq@11410 = 6FCBE1043A212000</action>
            <action>maincpu.mq@11418 = CBE1053A041E1A28</action>
            <action>maincpu.mq@11420 = 4FCB0618AF032847</action>
            <action>maincpu.mq@11428 = 1E0877DD013E0728</action>
            <action>maincpu.mq@11430 = C9005EDD0073DD0B</action>
            <!--
            9400 | 3A 00 E0 : ld   a,($E000)  // is playing the game?
            9403 | FE 05    : cp   $05
            9405 | 20 2D    : jr   nz,$9434
            9407 | DD 7C    : ld   a,ixh      // is player?
            9409 | FE E5    : cp   $E5
            940B | 20 27    : jr   nz,$9434
            940D | DD 7D    : ld   a,ixl
            940F | FE 00    : cp   $00
            9411 | 20 21    : jr   nz,$9434
            9413 | 3A 04 E1 : ld   a,($E104)  // is pressed jump button?
            9416 | CB 6F    : bit  5,a
            9418 | 28 1A    : jr   z,$9434
            941A | 1E 04    : ld   e,$04
            941C | 3A 05 E1 : ld   a,($E105)  // is pressed left/right key?
            941F | CB 47    : bit  0,a
            9421 | 28 03    : jr   z,$9426
            9423 | AF       : xor  a          // right
            9424 | 18 06    : jr   $942C
            9426 | CB 4F    : bit  1,a
            9428 | 28 07    : jr   z,$9431
            942A | 3E 01    : ld   a,$01      // left
            942C | DD 77 08 : ld   (ix+$08),a // set direction
            942F | 1E 0B    : ld   e,$0B
            9431 | DD 73 00 : ld   (ix+$00),e
            9434 | DD 5E 00 : ld   e,(ix+$00)
            9437 | C9       : ret
            -->
        </script>
        <script state="off">
            <action>maincpu.md@01721 = CF005EDD        </action>
            <action>maincpu.mq@11400 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@11408 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@11410 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@11418 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@11420 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@11428 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@11430 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="timer speed">
        <parameter>
            <item value="0xFF">01 (slow)</item>
            <item value="0x80">02       </item>
            <item value="0x40">03       </item>
            <item value="0x20">04       </item>
            <item value="0x00">01 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.pb@E123 = 00   </action> <!-- initialize sub timer -->
            <action>maincpu.mb@0C70 = param</action>
        </script>
        <script state="off">
            <action>maincpu.pb@E123 = 00</action>
            <action>maincpu.mb@0C70 = 12</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <script state="on">
            <action>maincpu.mb@005A7 = 00              </action> <!-- disable next sequence -->
            <action>maincpu.md@005B5 = E59440C3        </action>
            <action>maincpu.mq@11440 = 2847B801DBE80021</action>
            <action>maincpu.mq@11448 = FEFE350120FDFEFA</action>
            <action>maincpu.mq@11450 = 3E0420FBFE340120</action>
            <action>maincpu.mq@11458 = 3E0520F7FE0618F0</action>
            <action>maincpu.mq@11460 = 03207FFE78778610</action>
            <action>maincpu.mq@11468 = AF0420DFFE05187E</action>
            <action>maincpu.mq@11470 = FFFFFFCE181AD8CD</action>
            <!--
            9440 | 21 00 E8 : ld   hl,$E800 // sound code address
            9443 | DB 01    : in   a,($01)  // read input
            9445 | B8       : cp   b
            9446 | 47       : ld   b,a
            9447 | 28 FA    : jr   z,$9443
            9449 | FE FD    : cp   $FD
            944B | 20 01    : jr   nz,$944E
            944D | 35       : dec  (hl)     // decrease code -01
            944E | FE FE    : cp   $FE
            9450 | 20 01    : jr   nz,$9453
            9452 | 34       : inc  (hl)     // increase code +01
            9453 | FE FB    : cp   $FB
            9455 | 20 04    : jr   nz,$945B
            9457 | 3E F0    : ld   a,$F0    // decrease code -10
            9459 | 18 06    : jr   $9461
            945B | FE F7    : cp   $F7
            945D | 20 05    : jr   nz,$9464
            945F | 3E 10    : ld   a,$10    // increase code +10
            9461 | 86       : add  a,(hl)
            9462 | 77       : ld   (hl),a
            9463 | 78       : ld   a,b
            9464 | FE 7F    : cp   $7F
            9466 | 20 03    : jr   nz,$946B
            9468 | 7E       : ld   a,(hl)   // play sound
            9469 | 18 05    : jr   $9470
            946B | FE DF    : cp   $DF
            946D | 20 04    : jr   nz,$9473
            946F | AF       : xor  a        // stop sound
            9470 | CD D8 1A : call $1AD8    // send sound code
            9473 | 18 CE    : jr   $9443
            -->
        </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@E800</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.mb@005A7 = 03              </action>
            <action>maincpu.md@005B5 = E505B521        </action>
            <action>maincpu.mq@11440 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@11448 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@11450 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@11458 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@11460 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@11468 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@11470 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

</mamecheat>
kidnikib.xml

Code: Select all

<!-- Kid Niki (bootleg) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mw@31BB = 188F</action>
        </script>
        <script state="off">
            <action>maincpu.mw@31BB = 166C</action>
        </script>
    </cheat>

    <cheat desc="rapid fire">
        <script state="on">
            <action>maincpu.md@017A1 = 7E9FA8CD        </action>
            <action>maincpu.mq@11FA8 = FEE0003A4FE10521</action>
            <action>maincpu.mq@11FB0 = 7ECBC878CBC07905</action>
            <action>maincpu.mq@11FB8 = FFFFFFFFC9BECBC8</action>
            <!--
            9FA8 | 21 05 E1 : ld   hl,$E105
            9FAB | 4F       : ld   c,a
            9FAC | 3A 00 E0 : ld   a,($E000)
            9FAF | FE 05    : cp   $05
            9FB1 | 79       : ld   a,c
            9FB2 | C0       : ret  nz
            9FB3 | CB 78    : bit  7,b
            9FB5 | C8       : ret  z
            9FB6 | CB 7E    : bit  7,(hl)
            9FB8 | C8       : ret  z
            9FB9 | CB BE    : res  7,(hl)
            9FBB | C9       : ret
            -->
        </script>
        <script state="off">
            <action>maincpu.md@017A1 = 7EE10521        </action>
            <action>maincpu.mq@11FA8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@11FB0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@11FB8 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="multiple jump">
        <script state="on">
            <action>maincpu.md@0159B = CF9FC0CD        </action>
            <action>maincpu.mq@11FC0 = DD2D2005FEE0003A</action>
            <action>maincpu.mq@11FC8 = FE7DDD2720E5FE7C</action>
            <action>maincpu.mq@11FD0 = 6FCBE1043A212000</action>
            <action>maincpu.mq@11FD8 = CBE1053A041E1A28</action>
            <action>maincpu.mq@11FE0 = 4FCB0618AF032847</action>
            <action>maincpu.mq@11FE8 = 1E0877DD013E0728</action>
            <action>maincpu.mq@11FF0 = C9005EDD0073DD0B</action>
            <!--
            9FC0 | 3A 00 E0 : ld   a,($E000)  // is playing the game?
            9FC3 | FE 05    : cp   $05
            9FC5 | 20 2D    : jr   nz,$9FF4
            9FC7 | DD 7C    : ld   a,ixh      // is player?
            9FC9 | FE E5    : cp   $E5
            9FCB | 20 27    : jr   nz,$9FF4
            9FCD | DD 7D    : ld   a,ixl
            9FCF | FE 00    : cp   $00
            9FD1 | 20 21    : jr   nz,$9FF4
            9FD3 | 3A 04 E1 : ld   a,($E104)  // is pressed jump button?
            9FD6 | CB 6F    : bit  5,a
            9FD8 | 28 1A    : jr   z,$9FF4
            9FDA | 1E 04    : ld   e,$04
            9FDC | 3A 05 E1 : ld   a,($E105)  // is pressed left/right key?
            9FDF | CB 47    : bit  0,a
            9FE1 | 28 03    : jr   z,$9FE6
            9FE3 | AF       : xor  a          // right
            9FE4 | 18 06    : jr   $9FEC
            9FE6 | CB 4F    : bit  1,a
            9FE8 | 28 07    : jr   z,$9FF1
            9FEA | 3E 01    : ld   a,$01      // left
            9FEC | DD 77 08 : ld   (ix+$08),a // set direction
            9FEF | 1E 0B    : ld   e,$0B
            9FF1 | DD 73 00 : ld   (ix+$00),e
            9FF4 | DD 5E 00 : ld   e,(ix+$00)
            9FF7 | C9       : ret
            -->
        </script>
        <script state="off">
            <action>maincpu.md@0159B = CF005EDD        </action>
            <action>maincpu.mq@11FC0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@11FC8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@11FD0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@11FD8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@11FE0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@11FE8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@11FF0 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="timer speed">
        <parameter>
            <item value="0xFF">01 (slow)</item>
            <item value="0x80">02       </item>
            <item value="0x40">03       </item>
            <item value="0x20">04       </item>
            <item value="0x00">01 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.pb@E123 = 00   </action> <!-- initialize sub timer -->
            <action>maincpu.mb@0B6D = param</action>
        </script>
        <script state="off">
            <action>maincpu.pb@E123 = 00</action>
            <action>maincpu.mb@0B6D = 12</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <script state="on">
            <action>maincpu.mb@00551 = 00              </action> <!-- disable next sequence -->
            <action>maincpu.mq@0055F = C3E0613285D3013E</action>
            <action>maincpu.mq@00567 = E02832FF3E009FC0</action>
            <!--
            055F | 3E 01    : ld   a,$01
            0561 | D3 85    : out  ($85),a   // set bank
            0563 | 32 61 E0 : ld   ($E061),a // set bank at return from interrupt
            0566 | C3 C0 9F : jp   $9FC0
            -->
            <action>maincpu.mq@13FC0 = 2847B801DBE80021</action>
            <action>maincpu.mq@13FC8 = FEFE350120FDFEFA</action>
            <action>maincpu.mq@13FD0 = 3E0420FBFE340120</action>
            <action>maincpu.mq@13FD8 = 3E0520F7FE0618F0</action>
            <action>maincpu.mq@13FE0 = 03207FFE78778610</action>
            <action>maincpu.mq@13FE8 = AF0420DFFE05187E</action>
            <action>maincpu.mq@13FF0 = FFFFFFCE18192DCD</action>
            <!--
            9FC0 | 21 00 E8 : ld   hl,$E800 // sound code address
            9FC3 | DB 01    : in   a,($01)  // read input
            9FC5 | B8       : cp   b
            9FC6 | 47       : ld   b,a
            9FC7 | 28 FA    : jr   z,$9FC3
            9FC9 | FE FD    : cp   $FD
            9FCB | 20 01    : jr   nz,$9FCE
            9FCD | 35       : dec  (hl)     // decrease code -01
            9FCE | FE FE    : cp   $FE
            9FD0 | 20 01    : jr   nz,$9FD3
            9FD2 | 34       : inc  (hl)     // increase code +01
            9FD3 | FE FB    : cp   $FB
            9FD5 | 20 04    : jr   nz,$9FDB
            9FD7 | 3E F0    : ld   a,$F0    // decrease code -10
            9FD9 | 18 06    : jr   $9FE1
            9FDB | FE F7    : cp   $F7
            9FDD | 20 05    : jr   nz,$9FE4
            9FDF | 3E 10    : ld   a,$10    // increase code +10
            9FE1 | 86       : add  a,(hl)
            9FE2 | 77       : ld   (hl),a
            9FE3 | 78       : ld   a,b
            9FE4 | FE 7F    : cp   $7F
            9FE6 | 20 03    : jr   nz,$9FEB
            9FE8 | 7E       : ld   a,(hl)   // play sound
            9FE9 | 18 05    : jr   $9FF0
            9FEB | FE DF    : cp   $DF
            9FED | 20 04    : jr   nz,$9FF3
            9FEF | AF       : xor  a        // stop sound
            9FF0 | CD 2D 19 : call $192D    // send sound code
            9FF3 | 18 CE    : jr   $9FC3
            -->
        </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@E800</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.mb@00551 = 03              </action>
            <action>maincpu.mq@0055F = 7DE0262AE5055F21</action>
            <action>maincpu.mq@00567 = E02832FF3E2828BC</action>
            <action>maincpu.mq@13FC0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@13FC8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@13FD0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@13FD8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@13FE0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@13FE8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@13FF0 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

</mamecheat>
yanchamr.xml

Code: Select all

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

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mw@31BB = 188F</action>
        </script>
        <script state="off">
            <action>maincpu.mw@31BB = 166C</action>
        </script>
    </cheat>

    <cheat desc="rapid fire">
        <script state="on">
            <action>maincpu.md@017A1 = 7E9FA8CD        </action>
            <action>maincpu.mq@11FA8 = FEE0003A4FE10521</action>
            <action>maincpu.mq@11FB0 = 7ECBC878CBC07905</action>
            <action>maincpu.mq@11FB8 = FFFFFFFFC9BECBC8</action>
            <!--
            9FA8 | 21 05 E1 : ld   hl,$E105
            9FAB | 4F       : ld   c,a
            9FAC | 3A 00 E0 : ld   a,($E000)
            9FAF | FE 05    : cp   $05
            9FB1 | 79       : ld   a,c
            9FB2 | C0       : ret  nz
            9FB3 | CB 78    : bit  7,b
            9FB5 | C8       : ret  z
            9FB6 | CB 7E    : bit  7,(hl)
            9FB8 | C8       : ret  z
            9FB9 | CB BE    : res  7,(hl)
            9FBB | C9       : ret
            -->
        </script>
        <script state="off">
            <action>maincpu.md@017A1 = 7EE10521        </action>
            <action>maincpu.mq@11FA8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@11FB0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@11FB8 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="multiple jump">
        <script state="on">
            <action>maincpu.md@0159B = CF9FC0CD        </action>
            <action>maincpu.mq@11FC0 = DD2D2005FEE0003A</action>
            <action>maincpu.mq@11FC8 = FE7DDD2720E5FE7C</action>
            <action>maincpu.mq@11FD0 = 6FCBE1043A212000</action>
            <action>maincpu.mq@11FD8 = CBE1053A041E1A28</action>
            <action>maincpu.mq@11FE0 = 4FCB0618AF032847</action>
            <action>maincpu.mq@11FE8 = 1E0877DD013E0728</action>
            <action>maincpu.mq@11FF0 = C9005EDD0073DD0B</action>
            <!--
            9FC0 | 3A 00 E0 : ld   a,($E000)  // is playing the game?
            9FC3 | FE 05    : cp   $05
            9FC5 | 20 2D    : jr   nz,$9FF4
            9FC7 | DD 7C    : ld   a,ixh      // is player?
            9FC9 | FE E5    : cp   $E5
            9FCB | 20 27    : jr   nz,$9FF4
            9FCD | DD 7D    : ld   a,ixl
            9FCF | FE 00    : cp   $00
            9FD1 | 20 21    : jr   nz,$9FF4
            9FD3 | 3A 04 E1 : ld   a,($E104)  // is pressed jump button?
            9FD6 | CB 6F    : bit  5,a
            9FD8 | 28 1A    : jr   z,$9FF4
            9FDA | 1E 04    : ld   e,$04
            9FDC | 3A 05 E1 : ld   a,($E105)  // is pressed left/right key?
            9FDF | CB 47    : bit  0,a
            9FE1 | 28 03    : jr   z,$9FE6
            9FE3 | AF       : xor  a          // right
            9FE4 | 18 06    : jr   $9FEC
            9FE6 | CB 4F    : bit  1,a
            9FE8 | 28 07    : jr   z,$9FF1
            9FEA | 3E 01    : ld   a,$01      // left
            9FEC | DD 77 08 : ld   (ix+$08),a // set direction
            9FEF | 1E 0B    : ld   e,$0B
            9FF1 | DD 73 00 : ld   (ix+$00),e
            9FF4 | DD 5E 00 : ld   e,(ix+$00)
            9FF7 | C9       : ret
            -->
        </script>
        <script state="off">
            <action>maincpu.md@0159B = CF005EDD        </action>
            <action>maincpu.mq@11FC0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@11FC8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@11FD0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@11FD8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@11FE0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@11FE8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@11FF0 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="timer speed">
        <parameter>
            <item value="0xFF">01 (slow)</item>
            <item value="0x80">02       </item>
            <item value="0x40">03       </item>
            <item value="0x20">04       </item>
            <item value="0x00">01 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.pb@E123 = 00   </action> <!-- initialize sub timer -->
            <action>maincpu.mb@0B6D = param</action>
        </script>
        <script state="off">
            <action>maincpu.pb@E123 = 00</action>
            <action>maincpu.mb@0B6D = 12</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <script state="on">
            <action>maincpu.mb@00551 = 00              </action> <!-- disable next sequence -->
            <action>maincpu.mq@0055F = C3E0613285D3013E</action>
            <action>maincpu.mq@00567 = E02832FF3E009FC0</action>
            <!--
            055F | 3E 01    : ld   a,$01
            0561 | D3 85    : out  ($85),a   // set bank
            0563 | 32 61 E0 : ld   ($E061),a // set bank at return from interrupt
            0566 | C3 C0 9F : jp   $9FC0
            -->
            <action>maincpu.mq@13FC0 = 2847B801DBE80021</action>
            <action>maincpu.mq@13FC8 = FEFE350120FDFEFA</action>
            <action>maincpu.mq@13FD0 = 3E0420FBFE340120</action>
            <action>maincpu.mq@13FD8 = 3E0520F7FE0618F0</action>
            <action>maincpu.mq@13FE0 = 03207FFE78778610</action>
            <action>maincpu.mq@13FE8 = AF0420DFFE05187E</action>
            <action>maincpu.mq@13FF0 = FFFFFFCE18192DCD</action>
            <!--
            9FC0 | 21 00 E8 : ld   hl,$E800 // sound code address
            9FC3 | DB 01    : in   a,($01)  // read input
            9FC5 | B8       : cp   b
            9FC6 | 47       : ld   b,a
            9FC7 | 28 FA    : jr   z,$9FC3
            9FC9 | FE FD    : cp   $FD
            9FCB | 20 01    : jr   nz,$9FCE
            9FCD | 35       : dec  (hl)     // decrease code -01
            9FCE | FE FE    : cp   $FE
            9FD0 | 20 01    : jr   nz,$9FD3
            9FD2 | 34       : inc  (hl)     // increase code +01
            9FD3 | FE FB    : cp   $FB
            9FD5 | 20 04    : jr   nz,$9FDB
            9FD7 | 3E F0    : ld   a,$F0    // decrease code -10
            9FD9 | 18 06    : jr   $9FE1
            9FDB | FE F7    : cp   $F7
            9FDD | 20 05    : jr   nz,$9FE4
            9FDF | 3E 10    : ld   a,$10    // increase code +10
            9FE1 | 86       : add  a,(hl)
            9FE2 | 77       : ld   (hl),a
            9FE3 | 78       : ld   a,b
            9FE4 | FE 7F    : cp   $7F
            9FE6 | 20 03    : jr   nz,$9FEB
            9FE8 | 7E       : ld   a,(hl)   // play sound
            9FE9 | 18 05    : jr   $9FF0
            9FEB | FE DF    : cp   $DF
            9FED | 20 04    : jr   nz,$9FF3
            9FEF | AF       : xor  a        // stop sound
            9FF0 | CD 2D 19 : call $192D    // send sound code
            9FF3 | 18 CE    : jr   $9FC3
            -->
        </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@E800</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.mb@00551 = 03              </action>
            <action>maincpu.mq@0055F = 7DE0262AE5055F21</action>
            <action>maincpu.mq@00567 = E02832FF3E2828BC</action>
            <action>maincpu.mq@13FC0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@13FC8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@13FD0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@13FD8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@13FE0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@13FE8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@13FF0 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

</mamecheat>
lithero.xml

Code: Select all

<!-- Little Hero -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mw@31BB = 188F</action>
        </script>
        <script state="off">
            <action>maincpu.mw@31BB = 166C</action>
        </script>
    </cheat>

    <cheat desc="rapid fire">
        <script state="on">
            <action>maincpu.md@017A1 = 7E9FA8CD        </action>
            <action>maincpu.mq@11FA8 = FEE0003A4FE10521</action>
            <action>maincpu.mq@11FB0 = 7ECBC878CBC07905</action>
            <action>maincpu.mq@11FB8 = FFFFFFFFC9BECBC8</action>
            <!--
            9FA8 | 21 05 E1 : ld   hl,$E105
            9FAB | 4F       : ld   c,a
            9FAC | 3A 00 E0 : ld   a,($E000)
            9FAF | FE 05    : cp   $05
            9FB1 | 79       : ld   a,c
            9FB2 | C0       : ret  nz
            9FB3 | CB 78    : bit  7,b
            9FB5 | C8       : ret  z
            9FB6 | CB 7E    : bit  7,(hl)
            9FB8 | C8       : ret  z
            9FB9 | CB BE    : res  7,(hl)
            9FBB | C9       : ret
            -->
        </script>
        <script state="off">
            <action>maincpu.md@017A1 = 7EE10521        </action>
            <action>maincpu.mq@11FA8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@11FB0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@11FB8 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="multiple jump">
        <script state="on">
            <action>maincpu.md@0159B = CF9FC0CD        </action>
            <action>maincpu.mq@11FC0 = DD2D2005FEE0003A</action>
            <action>maincpu.mq@11FC8 = FE7DDD2720E5FE7C</action>
            <action>maincpu.mq@11FD0 = 6FCBE1043A212000</action>
            <action>maincpu.mq@11FD8 = CBE1053A041E1A28</action>
            <action>maincpu.mq@11FE0 = 4FCB0618AF032847</action>
            <action>maincpu.mq@11FE8 = 1E0877DD013E0728</action>
            <action>maincpu.mq@11FF0 = C9005EDD0073DD0B</action>
            <!--
            9FC0 | 3A 00 E0 : ld   a,($E000)  // is playing the game?
            9FC3 | FE 05    : cp   $05
            9FC5 | 20 2D    : jr   nz,$9FF4
            9FC7 | DD 7C    : ld   a,ixh      // is player?
            9FC9 | FE E5    : cp   $E5
            9FCB | 20 27    : jr   nz,$9FF4
            9FCD | DD 7D    : ld   a,ixl
            9FCF | FE 00    : cp   $00
            9FD1 | 20 21    : jr   nz,$9FF4
            9FD3 | 3A 04 E1 : ld   a,($E104)  // is pressed jump button?
            9FD6 | CB 6F    : bit  5,a
            9FD8 | 28 1A    : jr   z,$9FF4
            9FDA | 1E 04    : ld   e,$04
            9FDC | 3A 05 E1 : ld   a,($E105)  // is pressed left/right key?
            9FDF | CB 47    : bit  0,a
            9FE1 | 28 03    : jr   z,$9FE6
            9FE3 | AF       : xor  a          // right
            9FE4 | 18 06    : jr   $9FEC
            9FE6 | CB 4F    : bit  1,a
            9FE8 | 28 07    : jr   z,$9FF1
            9FEA | 3E 01    : ld   a,$01      // left
            9FEC | DD 77 08 : ld   (ix+$08),a // set direction
            9FEF | 1E 0B    : ld   e,$0B
            9FF1 | DD 73 00 : ld   (ix+$00),e
            9FF4 | DD 5E 00 : ld   e,(ix+$00)
            9FF7 | C9       : ret
            -->
        </script>
        <script state="off">
            <action>maincpu.md@0159B = CF005EDD        </action>
            <action>maincpu.mq@11FC0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@11FC8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@11FD0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@11FD8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@11FE0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@11FE8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@11FF0 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="timer speed">
        <parameter>
            <item value="0xFF">01 (slow)</item>
            <item value="0x80">02       </item>
            <item value="0x40">03       </item>
            <item value="0x20">04       </item>
            <item value="0x00">01 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.pb@E123 = 00   </action> <!-- initialize sub timer -->
            <action>maincpu.mb@0B6D = param</action>
        </script>
        <script state="off">
            <action>maincpu.pb@E123 = 00</action>
            <action>maincpu.mb@0B6D = 12</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <script state="on">
            <action>maincpu.mb@00551 = 00              </action> <!-- disable next sequence -->
            <action>maincpu.mq@0055F = C3E0613285D3013E</action>
            <action>maincpu.mq@00567 = E02832FF3E009FC0</action>
            <!--
            055F | 3E 01    : ld   a,$01
            0561 | D3 85    : out  ($85),a   // set bank
            0563 | 32 61 E0 : ld   ($E061),a // set bank at return from interrupt
            0566 | C3 C0 9F : jp   $9FC0
            -->
            <action>maincpu.mq@13FC0 = 2847B801DBE80021</action>
            <action>maincpu.mq@13FC8 = FEFE350120FDFEFA</action>
            <action>maincpu.mq@13FD0 = 3E0420FBFE340120</action>
            <action>maincpu.mq@13FD8 = 3E0520F7FE0618F0</action>
            <action>maincpu.mq@13FE0 = 03207FFE78778610</action>
            <action>maincpu.mq@13FE8 = AF0420DFFE05187E</action>
            <action>maincpu.mq@13FF0 = FFFFFFCE18192DCD</action>
            <!--
            9FC0 | 21 00 E8 : ld   hl,$E800 // sound code address
            9FC3 | DB 01    : in   a,($01)  // read input
            9FC5 | B8       : cp   b
            9FC6 | 47       : ld   b,a
            9FC7 | 28 FA    : jr   z,$9FC3
            9FC9 | FE FD    : cp   $FD
            9FCB | 20 01    : jr   nz,$9FCE
            9FCD | 35       : dec  (hl)     // decrease code -01
            9FCE | FE FE    : cp   $FE
            9FD0 | 20 01    : jr   nz,$9FD3
            9FD2 | 34       : inc  (hl)     // increase code +01
            9FD3 | FE FB    : cp   $FB
            9FD5 | 20 04    : jr   nz,$9FDB
            9FD7 | 3E F0    : ld   a,$F0    // decrease code -10
            9FD9 | 18 06    : jr   $9FE1
            9FDB | FE F7    : cp   $F7
            9FDD | 20 05    : jr   nz,$9FE4
            9FDF | 3E 10    : ld   a,$10    // increase code +10
            9FE1 | 86       : add  a,(hl)
            9FE2 | 77       : ld   (hl),a
            9FE3 | 78       : ld   a,b
            9FE4 | FE 7F    : cp   $7F
            9FE6 | 20 03    : jr   nz,$9FEB
            9FE8 | 7E       : ld   a,(hl)   // play sound
            9FE9 | 18 05    : jr   $9FF0
            9FEB | FE DF    : cp   $DF
            9FED | 20 04    : jr   nz,$9FF3
            9FEF | AF       : xor  a        // stop sound
            9FF0 | CD 2D 19 : call $192D    // send sound code
            9FF3 | 18 CE    : jr   $9FC3
            -->
        </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@E800</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.mb@00551 = 03              </action>
            <action>maincpu.mq@0055F = 7DE0262AE5055F21</action>
            <action>maincpu.mq@00567 = E02832FF3E2828BC</action>
            <action>maincpu.mq@13FC0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@13FC8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@13FD0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@13FD8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@13FE0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@13FE8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@13FF0 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

</mamecheat>