[joemac] Caveman Ninja/Joe & Mac

This forum is for posting M.A.M.E. Work In Progress "Arcade"cheats that are not quite ready for the prime time. If the cheats are buggy or the cheat descriptions are non-standard then please post them here. Help maybe given but there are no guarantees and they will only be added to the cheat file when the cheat file maintainer is happy with them.
Post Reply
jman
Posts: 888
Joined: Tue Dec 01, 2020 1:24 pm
Been thanked: 4 times

[joemac] Caveman Ninja/Joe & Mac

Post by jman »

Code: Select all

<!-- Tatakae Genshizin Joe & Mac (Japan ver 1) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mq@11fca = 4eb9000477c01147</action>
            <action>maincpu.mq@477c0 = 4eb9000120a8b3fc</action>
            <action>maincpu.mq@477c8 = 00184e966e084a47</action>
            <action>maincpu.mq@477d0 = 67044cdf00804e75</action>
            <!--
            477c0 | 4eb9 0001 20a8 : jsr     $120a8.l
            477c6 | b3fc 0018 4e96 : cmpa.l  #$184e96,A1 // check player or weapon
            477cc | 6e08           : bgt     $477d6
            477ce | 4a47           : tst.w   D7
            477d0 | 6704           : beq     $477d6
            477d2 | 4cdf 0080      : movem.l (A7)+,D7
            477d6 | 4e75           : rts
            -->
        </script>
        <script state="off">
            <action>maincpu.mq@11fca = 4eba00dc4e711147</action>
            <action>maincpu.mq@477c0 = ffffffffffffffff</action>
            <action>maincpu.mq@477c8 = ffffffffffffffff</action>
            <action>maincpu.mq@477d0 = ffffffffffffffff</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <comment>you can't charge power</comment>
        <script state="on">
            <!-- normal -->
            <action>maincpu.mq@0fe82 = 4eb9000477e01e39</action> <!-- P1 -->
            <action>maincpu.mq@0ff02 = 4eb9000477ec1e39</action> <!-- P2 -->
            <!-- ride on dinosaur -->
            <action>maincpu.mq@0ffb4 = 4eb9000477e013f9</action> <!-- P1 -->
            <action>maincpu.mq@10046 = 4eb9000477ec33fc</action> <!-- P2 -->
            <!-- ride on bird -->
            <action>maincpu.mq@1010a = 4eb9000477e013f9</action> <!-- P1 -->
            <action>maincpu.mq@10170 = 4eb9000477ec33fc</action> <!-- P2 -->
            <!-- main routine -->
            <action>maincpu.mq@477e0 = 48e7008041f90018</action>
            <action>maincpu.mq@477e8 = 4c45600a48e70080</action>
            <action>maincpu.mq@477f0 = 41f900184c440839</action>
            <action>maincpu.mq@477f8 = 000000184d276710</action>
            <action>maincpu.mq@47800 = 08100004670a0890</action>
            <action>maincpu.mq@47808 = 000408e800040004</action>
            <action>maincpu.mq@47810 = 1c104cdf01004e75</action>
            <!--
            477e0 | 48e7 0080           : movem.l A0,-(A7)      // P1
            477e4 | 41f9 0018 4c45      : lea     $184c45.l,A0
            477ea | 600a                : bra     $477f6
            477ec | 48e7 0080           : movem.l A0,-(A7)      // P2
            477f0 | 41f9 0018 4c44      : lea     $184c44.l,A0
            477f6 | 0839 0000 0018 4d27 : btst    #$0,$184d27.l
            477fe | 6710                : beq     $47810
            47800 | 0810 0004           : btst    #$4,(A0)
            47804 | 670a                : beq     $47810
            47806 | 0890 0004           : bclr    #$4,(A0)
            4780a | 08e8 0004 0004      : bset    #$4,($4,A0)
            47810 | 1c10                : move.b  (A0),D6
            47812 | 4cdf 0100           : movem.l (A7)+,A0
            47816 | 4e75                : rts
            -->
        </script>
        <script state="off">
            <action>maincpu.mq@0fe82 = 1c3900184c451e39</action>
            <action>maincpu.mq@0ff02 = 1c3900184c441e39</action>
            <action>maincpu.mq@0ffb4 = 1c3900184c4513f9</action>
            <action>maincpu.mq@10046 = 1c3900184c4433fc</action>
            <action>maincpu.mq@1010a = 1c3900184c4513f9</action>
            <action>maincpu.mq@10170 = 1c3900184c4433fc</action>
            <action>maincpu.mq@477e0 = ffffffffffffffff</action>
            <action>maincpu.mq@477e8 = ffffffffffffffff</action>
            <action>maincpu.mq@477f0 = ffffffffffffffff</action>
            <action>maincpu.mq@477f8 = ffffffffffffffff</action>
            <action>maincpu.mq@47800 = ffffffffffffffff</action>
            <action>maincpu.mq@47808 = ffffffffffffffff</action>
            <action>maincpu.mq@47810 = 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@2138c =         00047820</action>
            <action>maincpu.mq@47820 = 41f90018410043f9</action>
            <action>maincpu.mq@47828 = 001bc0a912001039</action>
            <action>maincpu.mq@47830 = 001bc22db20067f4</action>
            <action>maincpu.mq@47838 = 0c0000fb66025310</action>
            <action>maincpu.mq@47840 = 0c0000f766025210</action>
            <action>maincpu.mq@47848 = 0c0000fd66040410</action>
            <action>maincpu.mq@47850 = 00100c0000fe6604</action>
            <action>maincpu.mq@47858 = 061000100c0000ef</action>
            <action>maincpu.mq@47860 = 660212900c0000df</action>
            <action>maincpu.mq@47868 = 660412bc000160bc</action>
            <!--
            47820 | 41f9 0018 4100 : lea    $184100.l,A0 // sound code address
            47826 | 43f9 001b c0a9 : lea    $1bc0a9.l,A1 // sound latch address
            4782c | 1200           : move.b D0,D1
            4782e | 1039 001b c22d : move.b $1bc22d.l,D0 // read input
            47834 | b200           : cmp.b  D0,D1
            47836 | 67f4           : beq    $4782c
            47838 | 0c00 00fb      : cmpi.b #-$5,D0
            4783c | 6602           : bne    $47840
            4783e | 5310           : subq.b #1,(A0)      // decrease code -01
            47840 | 0c00 00f7      : cmpi.b #-$9,D0
            47844 | 6602           : bne    $47848
            47846 | 5210           : addq.b #1,(A0)      // increase code +01
            47848 | 0c00 00fd      : cmpi.b #-$3,D0
            4784c | 6604           : bne    $47852
            4784e | 0410 0010      : subi.b #$10,(A0)    // decrease code -10
            47852 | 0c00 00fe      : cmpi.b #-$2,D0
            47856 | 6604           : bne    $4785c
            47858 | 0610 0010      : addi.b #$10,(A0)    // increase code +10
            4785c | 0c00 00ef      : cmpi.b #-$11,D0
            47860 | 6602           : bne    $47864
            47862 | 1290           : move.b (A0),(A1)    // play sound
            47864 | 0c00 00df      : cmpi.b #-$21,D0
            47868 | 6604           : bne    $4786e
            4786a | 12bc 0001      : move.b #$1,(A1)     // stop sound
            4786e | 60bc           : bra    $4782c
            -->
        </script>
        <script state="run">
            <output format="----- joe &amp; mac sound test mode -----" line="10" align="center" />
            <output format="left : decrease code -01"                  line="11" align="center" />
            <output format="right : increase code +01"                 line="12" align="center" />
            <output format="down : decrease code -10"                  line="13" align="center" />
            <output format="up : increase code +10"                    line="14" align="center" />
            <output format="button 1 : play sound"                     line="15" align="center" />
            <output format="button 2 : stop sound"                     line="16" align="center" />
            <output format="----------------------------"              line="17" align="center" />
            <output format="&lt;&lt; sound code %2.2X &gt;&gt;"        line="19" align="center"  >
                <argument>maincpu.pb@184100</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.md@2138c =         0000044e</action>
            <action>maincpu.mq@47820 = ffffffffffffffff</action>
            <action>maincpu.mq@47828 = ffffffffffffffff</action>
            <action>maincpu.mq@47830 = ffffffffffffffff</action>
            <action>maincpu.mq@47838 = ffffffffffffffff</action>
            <action>maincpu.mq@47840 = ffffffffffffffff</action>
            <action>maincpu.mq@47848 = ffffffffffffffff</action>
            <action>maincpu.mq@47850 = ffffffffffffffff</action>
            <action>maincpu.mq@47858 = ffffffffffffffff</action>
            <action>maincpu.mq@47860 = ffffffffffffffff</action>
            <action>maincpu.mq@47868 = ffffffffffffffff</action>
        </script>
    </cheat>

</mamecheat>
jman
Posts: 888
Joined: Tue Dec 01, 2020 1:24 pm
Been thanked: 4 times

[cninja]+ Caveman Ninja/Joe & Mac

Post by jman »

cninja.xml

Code: Select all

<!-- Caveman Ninja (World ver 4) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mq@11FD6 = 4EB9000477D01147</action>
            <action>maincpu.mq@477D0 = 4EB9000120B4B3FC</action>
            <action>maincpu.mq@477D8 = 00184E966E084A47</action>
            <action>maincpu.mq@477E0 = 67044CDF00804E75</action>
            <!--
            477D0 | 4EB9 0001 20B4 : jsr     $120b4.l
            477D6 | B3FC 0018 4E96 : cmpa.l  #$184e96, A1 // check player or weapon
            477DC | 6E08           : bgt     $477e6
            477DE | 4A47           : tst.w   D7
            477E0 | 6704           : beq     $477e6
            477E2 | 4CDF 0080      : movem.l (A7)+, D7
            477E6 | 4E75           : rts
            -->
        </script>
        <script state="off">
            <action>maincpu.mq@11FD6 = 4EBA00DC4E711147</action>
            <action>maincpu.mq@477D0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@477D8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@477E0 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <!-- normal -->
            <action>maincpu.mq@FE8E = 4EB9000477F01E39</action> <!-- P1 -->
            <action>maincpu.mq@FF0E = 4EB9000477FC1E39</action> <!-- P2 -->
            <!-- ride on dinosaur -->
            <action>maincpu.mq@0FFC0 = 4EB9000477F013F9</action> <!-- P1 -->
            <action>maincpu.mq@10052 = 4EB9000477FC33FC</action> <!-- P2 -->
            <!-- ride on bird -->
            <action>maincpu.mq@10116 = 4EB9000477F013F9</action> <!-- P1 -->
            <action>maincpu.mq@1017C = 4EB9000477FC33FC</action> <!-- P2 -->
            <!-- main routine -->
            <action>maincpu.mq@477F0 = 48E7008041F90018</action>
            <action>maincpu.mq@477F8 = 4C45600A48E70080</action>
            <action>maincpu.mq@47800 = 41F900184C440839</action>
            <action>maincpu.mq@47808 = 000000184D276710</action>
            <action>maincpu.mq@47810 = 08100004670A0890</action>
            <action>maincpu.mq@47818 = 000408E800040004</action>
            <action>maincpu.mq@47820 = 1C104CDF01004E75</action>
            <!--
            477F0 | 48E7 0080           : movem.l A0, -(A7)      // P1
            477F4 | 41F9 0018 4C45      : lea     $184c45.l, A0
            477FA | 600A                : bra     $47806
            477FC | 48E7 0080           : movem.l A0, -(A7)      // P2
            47800 | 41F9 0018 4C44      : lea     $184c44.l, A0
            47806 | 0839 0000 0018 4D27 : btst    #$0, $184d27.l
            4780E | 6710                : beq     $47820
            47810 | 0810 0004           : btst    #$4, (A0)
            47814 | 670A                : beq     $47820
            47816 | 0890 0004           : bclr    #$4, (A0)
            4781A | 08E8 0004 0004      : bset    #$4, ($4,A0)
            47820 | 1C10                : move.b  (A0), D6
            47822 | 4CDF 0100           : movem.l (A7)+, A0
            47826 | 4E75                : rts
            -->
        </script>
        <script state="off">
            <action>maincpu.mq@0FE8E = 1C3900184C451E39</action>
            <action>maincpu.mq@0FF0E = 1C3900184C441E39</action>
            <action>maincpu.mq@0FFC0 = 1C3900184C4513F9</action>
            <action>maincpu.mq@10052 = 1C3900184C4433FC</action>
            <action>maincpu.mq@10116 = 1C3900184C4513F9</action>
            <action>maincpu.mq@1017C = 1C3900184C4433FC</action>
            <action>maincpu.mq@477F0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@477F8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47800 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47808 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47810 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47818 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47820 = 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@2139A = 00047830        </action>
            <action>maincpu.mq@47830 = 41F90018400043F9</action>
            <action>maincpu.mq@47838 = 001BC0A912001029</action>
            <action>maincpu.mq@47840 = 0184B20067F60C00</action>
            <action>maincpu.mq@47848 = 00FB660253100C00</action>
            <action>maincpu.mq@47850 = 00F7660252100C00</action>
            <action>maincpu.mq@47858 = 00FD660404100010</action>
            <action>maincpu.mq@47860 = 0C0000FE66040610</action>
            <action>maincpu.mq@47868 = 00100C0000EF6602</action>
            <action>maincpu.mq@47870 = 12900C0000DF6604</action>
            <action>maincpu.mq@47878 = 12BC000160BEFFFF</action>
            <!--
            47830 | 41F9 0018 4000 : lea     $184000.l, A0 // sound code address
            47836 | 43F9 001B C0A9 : lea     $1bc0a9.l, A1 // sound latch address
            4783C | 1200           : move.b  D0, D1
            4783E | 1029 0184      : move.b  ($184,A1), D0 // read input ($1bc22d)
            47842 | B200           : cmp.b   D0, D1
            47844 | 67F6           : beq     $4783c
            47846 | 0C00 00FB      : cmpi.b  #-$5, D0
            4784A | 6602           : bne     $4784e
            4784C | 5310           : subq.b  #1, (A0)      // decrease code -01
            4784E | 0C00 00F7      : cmpi.b  #-$9, D0
            47852 | 6602           : bne     $47856
            47854 | 5210           : addq.b  #1, (A0)      // increase code +01
            47856 | 0C00 00FD      : cmpi.b  #-$3, D0
            4785A | 6604           : bne     $47860
            4785C | 0410 0010      : subi.b  #$10, (A0)    // decrease code -10
            47860 | 0C00 00FE      : cmpi.b  #-$2, D0
            47864 | 6604           : bne     $4786a
            47866 | 0610 0010      : addi.b  #$10, (A0)    // increase code +10
            4786A | 0C00 00EF      : cmpi.b  #-$11, D0
            4786E | 6602           : bne     $47872
            47870 | 1290           : move.b  (A0), (A1)    // play sound
            47872 | 0C00 00DF      : cmpi.b  #-$21, D0
            47876 | 6604           : bne     $4787c
            47878 | 12BC 0001      : move.b  #$1, (A1)     // stop sound
            4787C | 60BE           : bra     $4783c
            -->
        </script>
        <script state="run">
            <output format="----- caveman ninja 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@184000</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.md@2139A = 0000044E        </action>
            <action>maincpu.mq@47830 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47838 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47840 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47848 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47850 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47858 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47860 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47868 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47870 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47878 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

</mamecheat>
cninja1.xml

Code: Select all

<!-- Caveman Ninja (World ver 1) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mq@11E02 = 4EB9000475901147</action>
            <action>maincpu.mq@47590 = 4EB900011EE0B3FC</action>
            <action>maincpu.mq@47598 = 00184E966E084A47</action>
            <action>maincpu.mq@475A0 = 67044CDF00804E75</action>
            <!--
            47590 | 4EB9 0001 1EE0 : jsr     $11ee0.l
            47596 | B3FC 0018 4E96 : cmpa.l  #$184e96, A1 // check player or weapon
            4759C | 6E08           : bgt     $475a6
            4759E | 4A47           : tst.w   D7
            475A0 | 6704           : beq     $475a6
            475A2 | 4CDF 0080      : movem.l (A7)+, D7
            475A6 | 4E75           : rts
            -->
        </script>
        <script state="off">
            <action>maincpu.mq@11E02 = 4EBA00DC4E711147</action>
            <action>maincpu.mq@47590 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47598 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@475A0 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <!-- normal -->
            <action>maincpu.mq@FD8A = 4EB9000475B01E39</action> <!-- P1 -->
            <action>maincpu.mq@FE02 = 4EB9000475BC1E39</action> <!-- P2 -->
            <!-- ride on dinosaur -->
            <action>maincpu.mq@FEAC = 4EB9000475B013F9</action> <!-- P1 -->
            <action>maincpu.mq@FF3E = 4EB9000475BC33FC</action> <!-- P2 -->
            <!-- ride on bird -->
            <action>maincpu.mq@10002 = 4EB9000475B013F9</action> <!-- P1 -->
            <action>maincpu.mq@10068 = 4EB9000475BC33FC</action> <!-- P2 -->
            <!-- main routine -->
            <action>maincpu.mq@475B0 = 48E7008041F90018</action>
            <action>maincpu.mq@475B8 = 4C45600A48E70080</action>
            <action>maincpu.mq@475C0 = 41F900184C440839</action>
            <action>maincpu.mq@475C8 = 000000184D276710</action>
            <action>maincpu.mq@475D0 = 08100004670A0890</action>
            <action>maincpu.mq@475D8 = 000408E800040004</action>
            <action>maincpu.mq@475E0 = 1C104CDF01004E75</action>
            <!--
            475B0 | 48E7 0080           : movem.l A0, -(A7)      // P1
            475B4 | 41F9 0018 4C45      : lea     $184c45.l, A0
            475BA | 600A                : bra     $475c6
            475BC | 48E7 0080           : movem.l A0, -(A7)      // P2
            475C0 | 41F9 0018 4C44      : lea     $184c44.l, A0
            475C6 | 0839 0000 0018 4D27 : btst    #$0, $184d27.l
            475CE | 6710                : beq     $475e0
            475D0 | 0810 0004           : btst    #$4, (A0)
            475D4 | 670A                : beq     $475e0
            475D6 | 0890 0004           : bclr    #$4, (A0)
            475DA | 08E8 0004 0004      : bset    #$4, ($4,A0)
            475E0 | 1C10                : move.b  (A0), D6
            475E2 | 4CDF 0100           : movem.l (A7)+, A0
            475E6 | 4E75                : rts
            -->
        </script>
        <script state="off">
            <action>maincpu.mq@0FD8A = 1C3900184C451E39</action>
            <action>maincpu.mq@0FE02 = 1C3900184C441E39</action>
            <action>maincpu.mq@0FEAC = 1C3900184C4513F9</action>
            <action>maincpu.mq@0FF3E = 1C3900184C4433FC</action>
            <action>maincpu.mq@10002 = 1C3900184C4513F9</action>
            <action>maincpu.mq@10068 = 1C3900184C4433FC</action>
            <action>maincpu.mq@475B0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@475B8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@475C0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@475C8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@475D0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@475D8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@475E0 = 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@211B4 = 000475F0        </action>
            <action>maincpu.mq@475F0 = 41F90018400043F9</action>
            <action>maincpu.mq@475F8 = 001BC0A912001029</action>
            <action>maincpu.mq@47600 = 0184B20067F60C00</action>
            <action>maincpu.mq@47608 = 00FB660253100C00</action>
            <action>maincpu.mq@47610 = 00F7660252100C00</action>
            <action>maincpu.mq@47618 = 00FD660404100010</action>
            <action>maincpu.mq@47620 = 0C0000FE66040610</action>
            <action>maincpu.mq@47628 = 00100C0000EF6602</action>
            <action>maincpu.mq@47630 = 12900C0000DF6604</action>
            <action>maincpu.mq@47638 = 12BC000160BEFFFF</action>
            <!--
            475F0 | 41F9 0018 4000 : lea     $184000.l, A0 // sound code address
            475F6 | 43F9 001B C0A9 : lea     $1bc0a9.l, A1 // sound latch address
            475FC | 1200           : move.b  D0, D1
            475FE | 1029 0184      : move.b  ($184,A1), D0 // read input ($1bc22d)
            47602 | B200           : cmp.b   D0, D1
            47604 | 67F6           : beq     $475fc
            47606 | 0C00 00FB      : cmpi.b  #-$5, D0
            4760A | 6602           : bne     $4760e
            4760C | 5310           : subq.b  #1, (A0)      // decrease code -01
            4760E | 0C00 00F7      : cmpi.b  #-$9, D0
            47612 | 6602           : bne     $47616
            47614 | 5210           : addq.b  #1, (A0)      // increase code +01
            47616 | 0C00 00FD      : cmpi.b  #-$3, D0
            4761A | 6604           : bne     $47620
            4761C | 0410 0010      : subi.b  #$10, (A0)    // decrease code -10
            47620 | 0C00 00FE      : cmpi.b  #-$2, D0
            47624 | 6604           : bne     $4762a
            47626 | 0610 0010      : addi.b  #$10, (A0)    // increase code +10
            4762A | 0C00 00EF      : cmpi.b  #-$11, D0
            4762E | 6602           : bne     $47632
            47630 | 1290           : move.b  (A0), (A1)    // play sound
            47632 | 0C00 00DF      : cmpi.b  #-$21, D0
            47636 | 6604           : bne     $4763c
            47638 | 12BC 0001      : move.b  #$1, (A1)     // stop sound
            4763C | 60BE           : bra     $475fc
            -->
        </script>
        <script state="run">
            <output format="----- caveman ninja 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@184000</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.md@211B4 = 0000044E        </action>
            <action>maincpu.mq@475F0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@475F8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47600 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47608 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47610 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47618 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47620 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47628 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47630 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47638 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

</mamecheat>
cninjau.xml

Code: Select all

<!-- Caveman Ninja (US ver 4) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mq@11FD6 = 4EB9000478901147</action>
            <action>maincpu.mq@47890 = 4EB9000120B4B3FC</action>
            <action>maincpu.mq@47898 = 00184E966E084A47</action>
            <action>maincpu.mq@478A0 = 67044CDF00804E75</action>
            <!--
            47890 | 4EB9 0001 20B4 : jsr     $120b4.l
            47896 | B3FC 0018 4E96 : cmpa.l  #$184e96, A1 // check player or weapon
            4789C | 6E08           : bgt     $478a6
            4789E | 4A47           : tst.w   D7
            478A0 | 6704           : beq     $478a6
            478A2 | 4CDF 0080      : movem.l (A7)+, D7
            478A6 | 4E75           : rts
            -->
        </script>
        <script state="off">
            <action>maincpu.mq@11FD6 = 4EBA00DC4E711147</action>
            <action>maincpu.mq@47890 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47898 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@478A0 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <!-- normal -->
            <action>maincpu.mq@FE8E = 4EB9000478B01E39</action> <!-- P1 -->
            <action>maincpu.mq@FF0E = 4EB9000478BC1E39</action> <!-- P2 -->
            <!-- ride on dinosaur -->
            <action>maincpu.mq@0FFC0 = 4EB9000478B013F9</action> <!-- P1 -->
            <action>maincpu.mq@10052 = 4EB9000478BC33FC</action> <!-- P2 -->
            <!-- ride on bird -->
            <action>maincpu.mq@10116 = 4EB9000478B013F9</action> <!-- P1 -->
            <action>maincpu.mq@1017C = 4EB9000478BC33FC</action> <!-- P2 -->
            <!-- main routine -->
            <action>maincpu.mq@478B0 = 48E7008041F90018</action>
            <action>maincpu.mq@478B8 = 4C45600A48E70080</action>
            <action>maincpu.mq@478C0 = 41F900184C440839</action>
            <action>maincpu.mq@478C8 = 000000184D276710</action>
            <action>maincpu.mq@478D0 = 08100004670A0890</action>
            <action>maincpu.mq@478D8 = 000408E800040004</action>
            <action>maincpu.mq@478E0 = 1C104CDF01004E75</action>
            <!--
            478B0 | 48E7 0080           : movem.l A0, -(A7)      // P1
            478B4 | 41F9 0018 4C45      : lea     $184c45.l, A0
            478BA | 600A                : bra     $478c6
            478BC | 48E7 0080           : movem.l A0, -(A7)      // P2
            478C0 | 41F9 0018 4C44      : lea     $184c44.l, A0
            478C6 | 0839 0000 0018 4D27 : btst    #$0, $184d27.l
            478CE | 6710                : beq     $478e0
            478D0 | 0810 0004           : btst    #$4, (A0)
            478D4 | 670A                : beq     $478e0
            478D6 | 0890 0004           : bclr    #$4, (A0)
            478DA | 08E8 0004 0004      : bset    #$4, ($4,A0)
            478E0 | 1C10                : move.b  (A0), D6
            478E2 | 4CDF 0100           : movem.l (A7)+, A0
            478E6 | 4E75                : rts
            -->
        </script>
        <script state="off">
            <action>maincpu.mq@0FE8E = 1C3900184C451E39</action>
            <action>maincpu.mq@0FF0E = 1C3900184C441E39</action>
            <action>maincpu.mq@0FFC0 = 1C3900184C4513F9</action>
            <action>maincpu.mq@10052 = 1C3900184C4433FC</action>
            <action>maincpu.mq@10116 = 1C3900184C4513F9</action>
            <action>maincpu.mq@1017C = 1C3900184C4433FC</action>
            <action>maincpu.mq@478B0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@478B8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@478C0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@478C8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@478D0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@478D8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@478E0 = 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@213A0 = 000478F0        </action>
            <action>maincpu.mq@478F0 = 41F90018400043F9</action>
            <action>maincpu.mq@478F8 = 001BC0A912001029</action>
            <action>maincpu.mq@47900 = 0184B20067F60C00</action>
            <action>maincpu.mq@47908 = 00FB660253100C00</action>
            <action>maincpu.mq@47910 = 00F7660252100C00</action>
            <action>maincpu.mq@47918 = 00FD660404100010</action>
            <action>maincpu.mq@47920 = 0C0000FE66040610</action>
            <action>maincpu.mq@47928 = 00100C0000EF6602</action>
            <action>maincpu.mq@47930 = 12900C0000DF6604</action>
            <action>maincpu.mq@47938 = 12BC000160BEFFFF</action>
            <!--
            478F0 | 41F9 0018 4000 : lea     $184000.l, A0 // sound code address
            478F6 | 43F9 001B C0A9 : lea     $1bc0a9.l, A1 // sound latch address
            478FC | 1200           : move.b  D0, D1
            478FE | 1029 0184      : move.b  ($184,A1), D0 // read input ($1bc22d)
            47902 | B200           : cmp.b   D0, D1
            47904 | 67F6           : beq     $478fc
            47906 | 0C00 00FB      : cmpi.b  #-$5, D0
            4790A | 6602           : bne     $4790e
            4790C | 5310           : subq.b  #1, (A0)      // decrease code -01
            4790E | 0C00 00F7      : cmpi.b  #-$9, D0
            47912 | 6602           : bne     $47916
            47914 | 5210           : addq.b  #1, (A0)      // increase code +01
            47916 | 0C00 00FD      : cmpi.b  #-$3, D0
            4791A | 6604           : bne     $47920
            4791C | 0410 0010      : subi.b  #$10, (A0)    // decrease code -10
            47920 | 0C00 00FE      : cmpi.b  #-$2, D0
            47924 | 6604           : bne     $4792a
            47926 | 0610 0010      : addi.b  #$10, (A0)    // increase code +10
            4792A | 0C00 00EF      : cmpi.b  #-$11, D0
            4792E | 6602           : bne     $47932
            47930 | 1290           : move.b  (A0), (A1)    // play sound
            47932 | 0C00 00DF      : cmpi.b  #-$21, D0
            47936 | 6604           : bne     $4793c
            47938 | 12BC 0001      : move.b  #$1, (A1)     // stop sound
            4793C | 60BE           : bra     $478fc
            -->
        </script>
        <script state="run">
            <output format="----- caveman ninja 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@184000</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.md@213A0 = 0000044E        </action>
            <action>maincpu.mq@478F0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@478F8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47900 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47908 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47910 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47918 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47920 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47928 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47930 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47938 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

</mamecheat>
joemac.xml

Code: Select all

<!-- Tatakae Genshizin Joe & Mac (Japan ver 1) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mq@11FCA = 4EB9000477C01147</action>
            <action>maincpu.mq@477C0 = 4EB9000120A8B3FC</action>
            <action>maincpu.mq@477C8 = 00184E966E084A47</action>
            <action>maincpu.mq@477D0 = 67044CDF00804E75</action>
            <!--
            477C0 | 4EB9 0001 20A8 : jsr     $120a8.l
            477C6 | B3FC 0018 4E96 : cmpa.l  #$184e96, A1 // check player or weapon
            477CC | 6E08           : bgt     $477d6
            477CE | 4A47           : tst.w   D7
            477D0 | 6704           : beq     $477d6
            477D2 | 4CDF 0080      : movem.l (A7)+, D7
            477D6 | 4E75           : rts
            -->
        </script>
        <script state="off">
            <action>maincpu.mq@11FCA = 4EBA00DC4E711147</action>
            <action>maincpu.mq@477C0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@477C8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@477D0 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <!-- normal -->
            <action>maincpu.mq@FE82 = 4EB9000477E01E39</action> <!-- P1 -->
            <action>maincpu.mq@FF02 = 4EB9000477EC1E39</action> <!-- P2 -->
            <!-- ride on dinosaur -->
            <action>maincpu.mq@0FFB4 = 4EB9000477E013F9</action> <!-- P1 -->
            <action>maincpu.mq@10046 = 4EB9000477EC33FC</action> <!-- P2 -->
            <!-- ride on bird -->
            <action>maincpu.mq@1010A = 4EB9000477E013F9</action> <!-- P1 -->
            <action>maincpu.mq@10170 = 4EB9000477EC33FC</action> <!-- P2 -->
            <!-- main routine -->
            <action>maincpu.mq@477E0 = 48E7008041F90018</action>
            <action>maincpu.mq@477E8 = 4C45600A48E70080</action>
            <action>maincpu.mq@477F0 = 41F900184C440839</action>
            <action>maincpu.mq@477F8 = 000000184D276710</action>
            <action>maincpu.mq@47800 = 08100004670A0890</action>
            <action>maincpu.mq@47808 = 000408E800040004</action>
            <action>maincpu.mq@47810 = 1C104CDF01004E75</action>
            <!--
            477E0 | 48E7 0080           : movem.l A0, -(A7)      // P1
            477E4 | 41F9 0018 4C45      : lea     $184c45.l, A0
            477EA | 600A                : bra     $477f6
            477EC | 48E7 0080           : movem.l A0, -(A7)      // P2
            477F0 | 41F9 0018 4C44      : lea     $184c44.l, A0
            477F6 | 0839 0000 0018 4D27 : btst    #$0, $184d27.l
            477FE | 6710                : beq     $47810
            47800 | 0810 0004           : btst    #$4, (A0)
            47804 | 670A                : beq     $47810
            47806 | 0890 0004           : bclr    #$4, (A0)
            4780A | 08E8 0004 0004      : bset    #$4, ($4,A0)
            47810 | 1C10                : move.b  (A0), D6
            47812 | 4CDF 0100           : movem.l (A7)+, A0
            47816 | 4E75                : rts
            -->
        </script>
        <script state="off">
            <action>maincpu.mq@0FE82 = 1C3900184C451E39</action>
            <action>maincpu.mq@0FF02 = 1C3900184C441E39</action>
            <action>maincpu.mq@0FFB4 = 1C3900184C4513F9</action>
            <action>maincpu.mq@10046 = 1C3900184C4433FC</action>
            <action>maincpu.mq@1010A = 1C3900184C4513F9</action>
            <action>maincpu.mq@10170 = 1C3900184C4433FC</action>
            <action>maincpu.mq@477E0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@477E8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@477F0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@477F8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47800 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47808 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47810 = 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@2138C = 00047820        </action>
            <action>maincpu.mq@47820 = 41F90018400043F9</action>
            <action>maincpu.mq@47828 = 001BC0A912001029</action>
            <action>maincpu.mq@47830 = 0184B20067F60C00</action>
            <action>maincpu.mq@47838 = 00FB660253100C00</action>
            <action>maincpu.mq@47840 = 00F7660252100C00</action>
            <action>maincpu.mq@47848 = 00FD660404100010</action>
            <action>maincpu.mq@47850 = 0C0000FE66040610</action>
            <action>maincpu.mq@47858 = 00100C0000EF6602</action>
            <action>maincpu.mq@47860 = 12900C0000DF6604</action>
            <action>maincpu.mq@47868 = 12BC000160BEFFFF</action>
            <!--
            47820 | 41F9 0018 4000 : lea     $184000.l, A0 // sound code address
            47826 | 43F9 001B C0A9 : lea     $1bc0a9.l, A1 // sound latch address
            4782C | 1200           : move.b  D0, D1
            4782E | 1029 0184      : move.b  ($184,A1), D0 // read input ($1bc22d)
            47832 | B200           : cmp.b   D0, D1
            47834 | 67F6           : beq     $4782c
            47836 | 0C00 00FB      : cmpi.b  #-$5, D0
            4783A | 6602           : bne     $4783e
            4783C | 5310           : subq.b  #1, (A0)      // decrease code -01
            4783E | 0C00 00F7      : cmpi.b  #-$9, D0
            47842 | 6602           : bne     $47846
            47844 | 5210           : addq.b  #1, (A0)      // increase code +01
            47846 | 0C00 00FD      : cmpi.b  #-$3, D0
            4784A | 6604           : bne     $47850
            4784C | 0410 0010      : subi.b  #$10, (A0)    // decrease code -10
            47850 | 0C00 00FE      : cmpi.b  #-$2, D0
            47854 | 6604           : bne     $4785a
            47856 | 0610 0010      : addi.b  #$10, (A0)    // increase code +10
            4785A | 0C00 00EF      : cmpi.b  #-$11, D0
            4785E | 6602           : bne     $47862
            47860 | 1290           : move.b  (A0), (A1)    // play sound
            47862 | 0C00 00DF      : cmpi.b  #-$21, D0
            47866 | 6604           : bne     $4786c
            47868 | 12BC 0001      : move.b  #$1, (A1)     // stop sound
            4786C | 60BE           : bra     $4782c
            -->
        </script>
        <script state="run">
            <output format="----- joe &amp; mac 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@184000</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.md@2138C = 0000044E        </action>
            <action>maincpu.mq@47820 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47828 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47830 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47838 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47840 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47848 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47850 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47858 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47860 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47868 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

</mamecheat>
stoneage.xml

Code: Select all

<!-- Stoneage (bootleg of Caveman Ninja) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mq@11E02 = 4EB9000475901147</action>
            <action>maincpu.mq@47590 = 4EB900011EE0B3FC</action>
            <action>maincpu.mq@47598 = 00184E966E084A47</action>
            <action>maincpu.mq@475A0 = 67044CDF00804E75</action>
            <!--
            47590 | 4EB9 0001 1EE0 : jsr     $11ee0.l
            47596 | B3FC 0018 4E96 : cmpa.l  #$184e96, A1 // check player or weapon
            4759C | 6E08           : bgt     $475a6
            4759E | 4A47           : tst.w   D7
            475A0 | 6704           : beq     $475a6
            475A2 | 4CDF 0080      : movem.l (A7)+, D7
            475A6 | 4E75           : rts
            -->
        </script>
        <script state="off">
            <action>maincpu.mq@11E02 = 4EBA00DC4E711147</action>
            <action>maincpu.mq@47590 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47598 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@475A0 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <!-- normal -->
            <action>maincpu.mq@FD8A = 4EB9000475B01E39</action> <!-- P1 -->
            <action>maincpu.mq@FE02 = 4EB9000475BC1E39</action> <!-- P2 -->
            <!-- ride on dinosaur -->
            <action>maincpu.mq@FEAC = 4EB9000475B013F9</action> <!-- P1 -->
            <action>maincpu.mq@FF3E = 4EB9000475BC33FC</action> <!-- P2 -->
            <!-- ride on bird -->
            <action>maincpu.mq@10002 = 4EB9000475B013F9</action> <!-- P1 -->
            <action>maincpu.mq@10068 = 4EB9000475BC33FC</action> <!-- P2 -->
            <!-- main routine -->
            <action>maincpu.mq@475B0 = 48E7008041F90018</action>
            <action>maincpu.mq@475B8 = 4C45600A48E70080</action>
            <action>maincpu.mq@475C0 = 41F900184C440839</action>
            <action>maincpu.mq@475C8 = 000000184D276710</action>
            <action>maincpu.mq@475D0 = 08100004670A0890</action>
            <action>maincpu.mq@475D8 = 000408E800040004</action>
            <action>maincpu.mq@475E0 = 1C104CDF01004E75</action>
            <!--
            475B0 | 48E7 0080           : movem.l A0, -(A7)      // P1
            475B4 | 41F9 0018 4C45      : lea     $184c45.l, A0
            475BA | 600A                : bra     $475c6
            475BC | 48E7 0080           : movem.l A0, -(A7)      // P2
            475C0 | 41F9 0018 4C44      : lea     $184c44.l, A0
            475C6 | 0839 0000 0018 4D27 : btst    #$0, $184d27.l
            475CE | 6710                : beq     $475e0
            475D0 | 0810 0004           : btst    #$4, (A0)
            475D4 | 670A                : beq     $475e0
            475D6 | 0890 0004           : bclr    #$4, (A0)
            475DA | 08E8 0004 0004      : bset    #$4, ($4,A0)
            475E0 | 1C10                : move.b  (A0), D6
            475E2 | 4CDF 0100           : movem.l (A7)+, A0
            475E6 | 4E75                : rts
            -->
        </script>
        <script state="off">
            <action>maincpu.mq@0FD8A = 1C3900184C451E39</action>
            <action>maincpu.mq@0FE02 = 1C3900184C441E39</action>
            <action>maincpu.mq@0FEAC = 1C3900184C4513F9</action>
            <action>maincpu.mq@0FF3E = 1C3900184C4433FC</action>
            <action>maincpu.mq@10002 = 1C3900184C4513F9</action>
            <action>maincpu.mq@10068 = 1C3900184C4433FC</action>
            <action>maincpu.mq@475B0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@475B8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@475C0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@475C8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@475D0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@475D8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@475E0 = 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.mq@21152 = 4EF9000475F04EBA</action>
            <action>maincpu.mq@475F0 = 41F90018400043F9</action>
            <action>maincpu.mq@475F8 = 001BC0A912001029</action>
            <action>maincpu.mq@47600 = 0184B20067F60C00</action>
            <action>maincpu.mq@47608 = 00FB660253100C00</action>
            <action>maincpu.mq@47610 = 00F7660252100C00</action>
            <action>maincpu.mq@47618 = 00FD660404100010</action>
            <action>maincpu.mq@47620 = 0C0000FE66040610</action>
            <action>maincpu.mq@47628 = 00100C0000EF6602</action>
            <action>maincpu.mq@47630 = 12900C0000DF6604</action>
            <action>maincpu.mq@47638 = 12BC000160BEFFFF</action>
            <!--
            475F0 | 41F9 0018 4000 : lea     $184000.l, A0 // sound code address
            475F6 | 43F9 001B C0A9 : lea     $1bc0a9.l, A1 // sound latch address
            475FC | 1200           : move.b  D0, D1
            475FE | 1029 0184      : move.b  ($184,A1), D0 // read input ($1bc22d)
            47602 | B200           : cmp.b   D0, D1
            47604 | 67F6           : beq     $475fc
            47606 | 0C00 00FB      : cmpi.b  #-$5, D0
            4760A | 6602           : bne     $4760e
            4760C | 5310           : subq.b  #1, (A0)      // decrease code -01
            4760E | 0C00 00F7      : cmpi.b  #-$9, D0
            47612 | 6602           : bne     $47616
            47614 | 5210           : addq.b  #1, (A0)      // increase code +01
            47616 | 0C00 00FD      : cmpi.b  #-$3, D0
            4761A | 6604           : bne     $47620
            4761C | 0410 0010      : subi.b  #$10, (A0)    // decrease code -10
            47620 | 0C00 00FE      : cmpi.b  #-$2, D0
            47624 | 6604           : bne     $4762a
            47626 | 0610 0010      : addi.b  #$10, (A0)    // increase code +10
            4762A | 0C00 00EF      : cmpi.b  #-$11, D0
            4762E | 6602           : bne     $47632
            47630 | 1290           : move.b  (A0), (A1)    // play sound
            47632 | 0C00 00DF      : cmpi.b  #-$21, D0
            47636 | 6604           : bne     $4763c
            47638 | 12BC 0001      : move.b  #$1, (A1)     // stop sound
            4763C | 60BE           : bra     $475fc
            -->
        </script>
        <script state="run">
            <output format="----- stoneage 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@184000</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.mq@21152 = 4E714E714E714EBA</action>
            <action>maincpu.mq@475F0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@475F8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47600 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47608 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47610 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47618 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47620 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47628 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47630 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47638 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

</mamecheat>
cninjabl.xml

Code: Select all

<!-- Caveman Ninja (bootleg) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mq@11E02 = 4EB9000475901147</action>
            <action>maincpu.mq@47590 = 4EB900011EE0B3FC</action>
            <action>maincpu.mq@47598 = 00184E966E084A47</action>
            <action>maincpu.mq@475A0 = 67044CDF00804E75</action>
            <!--
            47590 | 4EB9 0001 1EE0 : jsr     $11ee0.l
            47596 | B3FC 0018 4E96 : cmpa.l  #$184e96, A1 // check player or weapon
            4759C | 6E08           : bgt     $475a6
            4759E | 4A47           : tst.w   D7
            475A0 | 6704           : beq     $475a6
            475A2 | 4CDF 0080      : movem.l (A7)+, D7
            475A6 | 4E75           : rts
            -->
        </script>
        <script state="off">
            <action>maincpu.mq@11E02 = 4EBA00DC4E711147</action>
            <action>maincpu.mq@47590 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47598 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@475A0 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <!-- normal -->
            <action>maincpu.mq@FD8A = 4EB9000475B01E39</action> <!-- P1 -->
            <action>maincpu.mq@FE02 = 4EB9000475BC1E39</action> <!-- P2 -->
            <!-- ride on dinosaur -->
            <action>maincpu.mq@FEAC = 4EB9000475B013F9</action> <!-- P1 -->
            <action>maincpu.mq@FF3E = 4EB9000475BC33FC</action> <!-- P2 -->
            <!-- ride on bird -->
            <action>maincpu.mq@10002 = 4EB9000475B013F9</action> <!-- P1 -->
            <action>maincpu.mq@10068 = 4EB9000475BC33FC</action> <!-- P2 -->
            <!-- main routine -->
            <action>maincpu.mq@475B0 = 48E7008041F90018</action>
            <action>maincpu.mq@475B8 = 4C45600A48E70080</action>
            <action>maincpu.mq@475C0 = 41F900184C440839</action>
            <action>maincpu.mq@475C8 = 000000184D276710</action>
            <action>maincpu.mq@475D0 = 08100004670A0890</action>
            <action>maincpu.mq@475D8 = 000408E800040004</action>
            <action>maincpu.mq@475E0 = 1C104CDF01004E75</action>
            <!--
            475B0 | 48E7 0080           : movem.l A0, -(A7)      // P1
            475B4 | 41F9 0018 4C45      : lea     $184c45.l, A0
            475BA | 600A                : bra     $475c6
            475BC | 48E7 0080           : movem.l A0, -(A7)      // P2
            475C0 | 41F9 0018 4C44      : lea     $184c44.l, A0
            475C6 | 0839 0000 0018 4D27 : btst    #$0, $184d27.l
            475CE | 6710                : beq     $475e0
            475D0 | 0810 0004           : btst    #$4, (A0)
            475D4 | 670A                : beq     $475e0
            475D6 | 0890 0004           : bclr    #$4, (A0)
            475DA | 08E8 0004 0004      : bset    #$4, ($4,A0)
            475E0 | 1C10                : move.b  (A0), D6
            475E2 | 4CDF 0100           : movem.l (A7)+, A0
            475E6 | 4E75                : rts
            -->
        </script>
        <script state="off">
            <action>maincpu.mq@0FD8A = 1C3900184C451E39</action>
            <action>maincpu.mq@0FE02 = 1C3900184C441E39</action>
            <action>maincpu.mq@0FEAC = 1C3900184C4513F9</action>
            <action>maincpu.mq@0FF3E = 1C3900184C4433FC</action>
            <action>maincpu.mq@10002 = 1C3900184C4513F9</action>
            <action>maincpu.mq@10068 = 1C3900184C4433FC</action>
            <action>maincpu.mq@475B0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@475B8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@475C0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@475C8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@475D0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@475D8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@475E0 = 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.mq@21152 = 4EF9000475F04EBA</action>
            <action>maincpu.mq@475F0 = 41F90018400043F9</action>
            <action>maincpu.mq@475F8 = 0017FF2B12001029</action>
            <action>maincpu.mq@47600 = 0002B20067F60C00</action>
            <action>maincpu.mq@47608 = 00FB660253100C00</action>
            <action>maincpu.mq@47610 = 00F7660252100C00</action>
            <action>maincpu.mq@47618 = 00FD660404100010</action>
            <action>maincpu.mq@47620 = 0C0000FE66040610</action>
            <action>maincpu.mq@47628 = 00100C0000EF6602</action>
            <action>maincpu.mq@47630 = 12900C0000DF6604</action>
            <action>maincpu.mq@47638 = 12BC000160BEFFFF</action>
            <!--
            475F0 | 41F9 0018 4000 : lea     $184000.l, A0 // sound code address
            475F6 | 43F9 0017 FF2B : lea     $17ff2b.l, A1 // sound latch address
            475FC | 1200           : move.b  D0, D1
            475FE | 1029 0002      : move.b  ($2,A1), D0 // read input ($17ff2d)
            47602 | B200           : cmp.b   D0, D1
            47604 | 67F6           : beq     $475fc
            47606 | 0C00 00FB      : cmpi.b  #-$5, D0
            4760A | 6602           : bne     $4760e
            4760C | 5310           : subq.b  #1, (A0)      // decrease code -01
            4760E | 0C00 00F7      : cmpi.b  #-$9, D0
            47612 | 6602           : bne     $47616
            47614 | 5210           : addq.b  #1, (A0)      // increase code +01
            47616 | 0C00 00FD      : cmpi.b  #-$3, D0
            4761A | 6604           : bne     $47620
            4761C | 0410 0010      : subi.b  #$10, (A0)    // decrease code -10
            47620 | 0C00 00FE      : cmpi.b  #-$2, D0
            47624 | 6604           : bne     $4762a
            47626 | 0610 0010      : addi.b  #$10, (A0)    // increase code +10
            4762A | 0C00 00EF      : cmpi.b  #-$11, D0
            4762E | 6602           : bne     $47632
            47630 | 1290           : move.b  (A0), (A1)    // play sound
            47632 | 0C00 00DF      : cmpi.b  #-$21, D0
            47636 | 6604           : bne     $4763c
            47638 | 12BC 0001      : move.b  #$1, (A1)     // stop sound
            4763C | 60BE           : bra     $475fc
            -->
        </script>
        <script state="run">
            <output format="----- caveman ninja 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@184000</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.mq@21152 = 4E714E714E714EBA</action>
            <action>maincpu.mq@475F0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@475F8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47600 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47608 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47610 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47618 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47620 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47628 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47630 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47638 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

</mamecheat>
cninjabl2.xml

Code: Select all

<!-- Tatakae Genshizin Joe & Mac (Japan, bootleg) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mq@11FCA = 4EB9000477C01147</action>
            <action>maincpu.mq@477C0 = 4EB9000120A8B3FC</action>
            <action>maincpu.mq@477C8 = 00184E966E084A47</action>
            <action>maincpu.mq@477D0 = 67044CDF00804E75</action>
            <!--
            477C0 | 4EB9 0001 20A8 : jsr     $120a8.l
            477C6 | B3FC 0018 4E96 : cmpa.l  #$184e96, A1 // check player or weapon
            477CC | 6E08           : bgt     $477d6
            477CE | 4A47           : tst.w   D7
            477D0 | 6704           : beq     $477d6
            477D2 | 4CDF 0080      : movem.l (A7)+, D7
            477D6 | 4E75           : rts
            -->
        </script>
        <script state="off">
            <action>maincpu.mq@11FCA = 4EBA00DC4E711147</action>
            <action>maincpu.mq@477C0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@477C8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@477D0 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <!-- normal -->
            <action>maincpu.mq@FE82 = 4EB9000477E01E39</action> <!-- P1 -->
            <action>maincpu.mq@FF02 = 4EB9000477EC1E39</action> <!-- P2 -->
            <!-- ride on dinosaur -->
            <action>maincpu.mq@0FFB4 = 4EB9000477E013F9</action> <!-- P1 -->
            <action>maincpu.mq@10046 = 4EB9000477EC33FC</action> <!-- P2 -->
            <!-- ride on bird -->
            <action>maincpu.mq@1010A = 4EB9000477E013F9</action> <!-- P1 -->
            <action>maincpu.mq@10170 = 4EB9000477EC33FC</action> <!-- P2 -->
            <!-- main routine -->
            <action>maincpu.mq@477E0 = 48E7008041F90018</action>
            <action>maincpu.mq@477E8 = 4C45600A48E70080</action>
            <action>maincpu.mq@477F0 = 41F900184C440839</action>
            <action>maincpu.mq@477F8 = 000000184D276710</action>
            <action>maincpu.mq@47800 = 08100004670A0890</action>
            <action>maincpu.mq@47808 = 000408E800040004</action>
            <action>maincpu.mq@47810 = 1C104CDF01004E75</action>
            <!--
            477E0 | 48E7 0080           : movem.l A0, -(A7)      // P1
            477E4 | 41F9 0018 4C45      : lea     $184c45.l, A0
            477EA | 600A                : bra     $477f6
            477EC | 48E7 0080           : movem.l A0, -(A7)      // P2
            477F0 | 41F9 0018 4C44      : lea     $184c44.l, A0
            477F6 | 0839 0000 0018 4D27 : btst    #$0, $184d27.l
            477FE | 6710                : beq     $47810
            47800 | 0810 0004           : btst    #$4, (A0)
            47804 | 670A                : beq     $47810
            47806 | 0890 0004           : bclr    #$4, (A0)
            4780A | 08E8 0004 0004      : bset    #$4, ($4,A0)
            47810 | 1C10                : move.b  (A0), D6
            47812 | 4CDF 0100           : movem.l (A7)+, A0
            47816 | 4E75                : rts
            -->
        </script>
        <script state="off">
            <action>maincpu.mq@0FE82 = 1C3900184C451E39</action>
            <action>maincpu.mq@0FF02 = 1C3900184C441E39</action>
            <action>maincpu.mq@0FFB4 = 1C3900184C4513F9</action>
            <action>maincpu.mq@10046 = 1C3900184C4433FC</action>
            <action>maincpu.mq@1010A = 1C3900184C4513F9</action>
            <action>maincpu.mq@10170 = 1C3900184C4433FC</action>
            <action>maincpu.mq@477E0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@477E8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@477F0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@477F8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47800 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47808 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47810 = 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@2138C = 00047820        </action>
            <action>maincpu.mq@47820 = 41F90018000043F9</action>
            <action>maincpu.mq@47828 = 001BC0A912001029</action>
            <action>maincpu.mq@47830 = 0184B20067F60C00</action>
            <action>maincpu.mq@47838 = 00FB660253100C00</action>
            <action>maincpu.mq@47840 = 00F7660252100C00</action>
            <action>maincpu.mq@47848 = 00FD660404100010</action>
            <action>maincpu.mq@47850 = 0C0000FE66040610</action>
            <action>maincpu.mq@47858 = 00100C0000EF6602</action>
            <action>maincpu.mq@47860 = 12900C0000DF6604</action>
            <action>maincpu.mq@47868 = 12BC000160BEFFFF</action>
            <!--
            47820 | 41F9 0018 0000 : lea     $180000.l, A0 // sound code address
            47826 | 43F9 001B C0A9 : lea     $1bc0a9.l, A1 // sound latch address
            4782C | 1200           : move.b  D0, D1
            4782E | 1029 0184      : move.b  ($184,A1), D0 // read input ($1bc22d)
            47832 | B200           : cmp.b   D0, D1
            47834 | 67F6           : beq     $4782c
            47836 | 0C00 00FB      : cmpi.b  #-$5, D0
            4783A | 6602           : bne     $4783e
            4783C | 5310           : subq.b  #1, (A0)      // decrease code -01
            4783E | 0C00 00F7      : cmpi.b  #-$9, D0
            47842 | 6602           : bne     $47846
            47844 | 5210           : addq.b  #1, (A0)      // increase code +01
            47846 | 0C00 00FD      : cmpi.b  #-$3, D0
            4784A | 6604           : bne     $47850
            4784C | 0410 0010      : subi.b  #$10, (A0)    // decrease code -10
            47850 | 0C00 00FE      : cmpi.b  #-$2, D0
            47854 | 6604           : bne     $4785a
            47856 | 0610 0010      : addi.b  #$10, (A0)    // increase code +10
            4785A | 0C00 00EF      : cmpi.b  #-$11, D0
            4785E | 6602           : bne     $47862
            47860 | 1290           : move.b  (A0), (A1)    // play sound
            47862 | 0C00 00DF      : cmpi.b  #-$21, D0
            47866 | 6604           : bne     $4786c
            47868 | 12BC 0001      : move.b  #$1, (A1)     // stop sound
            4786C | 60BE           : bra     $4782c
            -->
        </script>
        <script state="run">
            <output format="----- joe &amp; mac 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@180000</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.md@2138C = 0000044E        </action>
            <action>maincpu.mq@47820 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47828 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47830 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47838 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47840 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47848 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47850 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47858 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47860 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@47868 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

</mamecheat>
Post Reply