[ktiger] Twin Cobra/Kyukyoku Tiger

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: 843
Joined: Tue Dec 01, 2020 1:24 pm

[ktiger] Twin Cobra/Kyukyoku Tiger

Post by jman »

First of all, this game has in-game rom check. The following codes cause game crash unless you set "skip rom error".

Code: Select all

<cheat desc="no hit">
    <script state="on">
        <action>maincpu.mw@234ba = 6018</action> <!-- enemy -->
        <action>maincpu.mw@23496 = 6018</action> <!-- bullet -->
        <action>maincpu.mb@21b98 =   60</action> <!-- middle enemy -->
    </script>
    <script state="off">
        <action>maincpu.mw@234ba = 66fc</action>
        <action>maincpu.mw@23496 = 66fc</action>
        <action>maincpu.mb@21b98 =   66</action>
    </script>
</cheat>

<cheat desc="auto fire">
    <script state="on">
        <action>maincpu.mb@25d39 = 00</action>
    </script>
    <script state="off">
        <action>maincpu.mb@25d39 = 20</action>
    </script>
</cheat>

<cheat desc="player speed">
    <parameter>
        <item value="0x05">01 (slow)</item>
        <item value="0x0a">02       </item>
        <item value="0x0f">03       </item>
        <item value="0x14">04       </item>
        <item value="0x19">05 (fast)</item>
    </parameter>
    <script state="on">
        <action>maincpu.md@25eca = 70004e71</action>
    </script>
    <script state="change">
        <action>maincpu.mb@25ecb = param</action>
    </script>
    <script state="off">
        <action>maincpu.md@25eca = 0640000a</action>
    </script>
</cheat>

<cheat desc="bullet speed">
    <parameter>
        <item value="0x20">01 (slow)</item>
        <item value="0x40">02       </item>
        <item value="0x60">03       </item>
        <item value="0x80">04       </item>
        <item value="0xa0">05 (fast)</item>
    </parameter>
    <script state="change">
        <action>maincpu.mb@26525 = param</action>
    </script>
    <script state="off">
        <action>maincpu.mb@26525 = 40</action>
    </script>
</cheat>

<cheat desc="skip rom error">
    <script state="on">
        <action>maincpu.mb@25934 =   60</action> <!-- boot -->
        <action>maincpu.mb@23f50 =   60</action> <!-- ingame -->
        <action>maincpu.mw@2176a = 0002</action> <!-- ingame -->
        <action>maincpu.mb@2562a =   60</action> <!-- ingame -->
        <action>maincpu.mb@25048 =   60</action> <!-- ingame -->
    </script>
    <script state="off">
        <action>maincpu.mb@25934 =   67</action>
        <action>maincpu.mb@23f50 =   67</action>
        <action>maincpu.mw@2176a = 1922</action>
        <action>maincpu.mb@2562a =   67</action>
        <action>maincpu.mb@25048 =   66</action>
    </script>
</cheat>
Current invincibility is not "no hit" (body hit erases bullet and damages middle enemy) so that I create "no hit" code.
jman
Posts: 843
Joined: Tue Dec 01, 2020 1:24 pm

[ktiger] sound test mode

Post by jman »

Code: Select all

<cheat desc="sound test mode">
    <comment>set rom error skip then reset the game (F3)</comment>
    <script state="on">
        <action>maincpu.mq@257de = 4ef90002ef404e71</action>
        <action>maincpu.mq@2ef40 = 41f9000301001401</action>
        <action>maincpu.mq@2ef48 = 123900078005b401</action>
        <action>maincpu.mq@2ef50 = 67f40c0100046602</action>
        <action>maincpu.mq@2ef58 = 53100c0100086602</action>
        <action>maincpu.mq@2ef60 = 52100c0100026604</action>
        <action>maincpu.mq@2ef68 = 041000100c010001</action>
        <action>maincpu.mq@2ef70 = 6604061000100c01</action>
        <action>maincpu.mq@2ef78 = 001066041010600a</action>
        <action>maincpu.mq@2ef80 = 0c010020660a103c</action>
        <action>maincpu.mq@2ef88 = 00fe13c00007a001</action>
        <action>maincpu.mq@2ef90 = 60b4ffffffffffff</action>
        <!--
        2ef40 | 41f9 0003 0100 : lea    $30100.l,A0 // sound code address
        2ef46 | 1401           : move.b D1,D2
        2ef48 | 1239 0007 8005 : move.b $78005.l,D1 // read input
        2ef4e | b401           : cmp.b  D1,D2
        2ef50 | 67f4           : beq    $2ef46
        2ef52 | 0c01 0004      : cmpi.b #$4,D1
        2ef56 | 6602           : bne    $2ef5a
        2ef58 | 5310           : subq.b #1,(A0)     // decrease code -01
        2ef5a | 0c01 0008      : cmpi.b #$8,D1
        2ef5e | 6602           : bne    $2ef62
        2ef60 | 5210           : addq.b #1,(A0)     // increase code +01
        2ef62 | 0c01 0002      : cmpi.b #$2,D1
        2ef66 | 6604           : bne    $2ef6c
        2ef68 | 0410 0010      : subi.b #$10,(A0)   // decrease code -10
        2ef6c | 0c01 0001      : cmpi.b #$1,D1
        2ef70 | 6604           : bne    $2ef76
        2ef72 | 0610 0010      : addi.b #$10,(A0)   // increase code +10
        2ef76 | 0c01 0010      : cmpi.b #$10,D1
        2ef7a | 6604           : bne    $2ef80
        2ef7c | 1010           : move.b (A0),D0     // play sound
        2ef7e | 600a           : bra    $2ef8a
        2ef80 | 0c01 0020      : cmpi.b #$20,D1
        2ef84 | 660a           : bne    $2ef90
        2ef86 | 103c 00fe      : move.b #$fe,D0     // stop sound
        2ef8a | 13c0 0007 a001 : move.b D0,$7a001.l
        2ef90 | 60b4           : bra    $2ef46
        -->
    </script>
    <script state="run">
        <output format="----- kyukyoku tiger 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="up : increase code +10"                     line="13" align="center" />
        <output format="down : decrease 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@30100</argument>
        </output>
    </script>
    <script state="off">
        <action>maincpu.md@257de = 6100e3004cdf0105</action>
        <action>maincpu.mq@2ef40 = 0000000000000000</action>
        <action>maincpu.mq@2ef48 = 0000000000000000</action>
        <action>maincpu.mq@2ef50 = 0000000000000000</action>
        <action>maincpu.mq@2ef58 = 0000000000000000</action>
        <action>maincpu.mq@2ef60 = 0000000000000000</action>
        <action>maincpu.mq@2ef68 = 0000000000000000</action>
        <action>maincpu.mq@2ef70 = 0000000000000000</action>
        <action>maincpu.mq@2ef78 = 0000000000000000</action>
        <action>maincpu.mq@2ef80 = 0000000000000000</action>
        <action>maincpu.mq@2ef88 = 0000000000000000</action>
        <action>maincpu.mq@2ef90 = 0000000000000000</action>
    </script>
</cheat>
jman
Posts: 843
Joined: Tue Dec 01, 2020 1:24 pm

[ktiger] Twin Cobra/Kyukyoku Tiger (update)

Post by jman »

In 0.249, new ktiger set is added and old ktiger is renamed to ktigera. Unfortunately, address and code is different between both sets.

ktiger.xml (new set from 0.249)

Code: Select all

<cheat desc="no hit">
    <script state="on">
        <action>maincpu.mw@21faa = 6000</action> <!-- middle enemy -->
        <action>maincpu.mw@23c40 = 6018</action> <!-- bullet -->
        <action>maincpu.mw@23c64 = 6018</action> <!-- enemy -->
    </script>
    <script state="off">
        <action>maincpu.mw@21faa = 6600</action>
        <action>maincpu.mw@23c40 = 66fc</action>
        <action>maincpu.mw@23c64 = 66fc</action>
    </script>
</cheat>

<cheat desc="auto fire">
    <script state="on">
        <action>maincpu.mb@262e3 = 00</action>
    </script>
    <script state="off">
        <action>maincpu.mb@262e3 = 20</action>
    </script>
</cheat>

<cheat desc="player speed">
    <parameter>
        <item value="0x01">01 (slow)</item>
        <item value="0x10">02       </item>
        <item value="0x18">03       </item>
        <item value="0x20">04       </item>
        <item value="0x28">05 (fast)</item>
    </parameter>
    <script state="on">
        <action>maincpu.md@26498 = 303c0000</action>
    </script>
    <script state="change">
        <action>maincpu.mb@2649b = param</action>
    </script>
    <script state="off">
        <action>maincpu.md@26498 = 0640000c</action>
    </script>
</cheat>

<cheat desc="bullet speed">
    <parameter>
        <item value="0x20">01 (slow)</item>
        <item value="0x40">02       </item>
        <item value="0x60">03       </item>
        <item value="0x80">04       </item>
        <item value="0xa0">05 (fast)</item>
    </parameter>
    <script state="change">
        <action>maincpu.mb@26cab = param</action>
    </script>
    <script state="off">
        <action>maincpu.mb@26cab = 40</action>
    </script>
</cheat>

<cheat desc="max bullets up (test)">
    <script state="on">
        <action>maincpu.mb@26bdd = 11</action>
    </script>
    <script state="off">
        <action>maincpu.mb@26bdd = 02</action>
    </script>
</cheat>

<cheat desc="sound test mode">
    <comment>set &quot;skip rom error&quot; then reset the game (F3)</comment>
    <script state="on">
        <action>maincpu.mq@25d00 = 4ef90002ef404e71</action>
        <action>maincpu.mq@2ef40 = 41f90003010043f9</action>
        <action>maincpu.mq@2ef48 = 0007a00112001029</action>
        <action>maincpu.mq@2ef50 = e004b20067f60c00</action>
        <action>maincpu.mq@2ef58 = 0004660253100c00</action>
        <action>maincpu.mq@2ef60 = 0008660252100c00</action>
        <action>maincpu.mq@2ef68 = 0002660404100010</action>
        <action>maincpu.mq@2ef70 = 0c00000166040610</action>
        <action>maincpu.mq@2ef78 = 00100c0000106602</action>
        <action>maincpu.mq@2ef80 = 12900c0000206604</action>
        <action>maincpu.mq@2ef88 = 12bc00fe60beffff</action>
        <!--
        2ef40 | 41f9 0003 0100 : lea    $30100.l,A0    // sound code address
        2ef46 | 43f9 0007 a001 : lea    $7a001.l,A1    // sound latch address
        2ef4c | 1200           : move.b D0,D1
        2ef4e | 1029 e004      : move.b (-$1ffc,A1),D0 // read input
        2ef52 | b200           : cmp.b  D0,D1
        2ef54 | 67f6           : beq    $2ef4c
        2ef56 | 0c00 0004      : cmpi.b #$4,D0
        2ef5a | 6602           : bne    $2ef5e
        2ef5c | 5310           : subq.b #1,(A0)        // decrease code -01
        2ef5e | 0c00 0008      : cmpi.b #$8,D0
        2ef62 | 6602           : bne    $2ef66
        2ef64 | 5210           : addq.b #1,(A0)        // increase code +01
        2ef66 | 0c00 0002      : cmpi.b #$2,D0
        2ef6a | 6604           : bne    $2ef70
        2ef6c | 0410 0010      : subi.b #$10,(A0)      // decrease code -10
        2ef70 | 0c00 0001      : cmpi.b #$1,D0
        2ef74 | 6604           : bne    $2ef7a
        2ef76 | 0610 0010      : addi.b #$10,(A0)      // increase code +10
        2ef7a | 0c00 0010      : cmpi.b #$10,D0
        2ef7e | 6602           : bne    $2ef82
        2ef80 | 1290           : move.b (A0),(A1)      // play sound
        2ef82 | 0c00 0020      : cmpi.b #$20,D0
        2ef86 | 6604           : bne    $2ef8c
        2ef88 | 12bc 00fe      : move.b #$fe,(A1)      // stop sound
        2ef8c | 60be           : bra    $2ef4c
        -->
    </script>
    <script state="run">
        <output format="----- kyukyoku tiger 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@30100</argument>
        </output>
    </script>
    <script state="off">
        <action>maincpu.md@25d00 = 6100e5d84cdf0105</action>
        <action>maincpu.mq@2ef40 = 0000000000000000</action>
        <action>maincpu.mq@2ef48 = 0000000000000000</action>
        <action>maincpu.mq@2ef50 = 0000000000000000</action>
        <action>maincpu.mq@2ef58 = 0000000000000000</action>
        <action>maincpu.mq@2ef60 = 0000000000000000</action>
        <action>maincpu.mq@2ef68 = 0000000000000000</action>
        <action>maincpu.mq@2ef70 = 0000000000000000</action>
        <action>maincpu.mq@2ef78 = 0000000000000000</action>
        <action>maincpu.mq@2ef80 = 0000000000000000</action>
        <action>maincpu.mq@2ef88 = 0000000000000000</action>
    </script>
</cheat>

<cheat desc="skip rom error">
    <script state="on">
        <action>maincpu.mb@25e56 =   60</action> <!-- boot -->
        <action>maincpu.mw@21b70 = 0002</action> <!-- ingame -->
        <action>maincpu.mb@2477c =   60</action> <!-- ingame -->
        <action>maincpu.mw@258ba = 0002</action> <!-- ingame -->
        <action>maincpu.mb@25b4c =   60</action> <!-- ingame -->
    </script>
    <script state="off">
        <action>maincpu.mb@25e56 =   67</action>
        <action>maincpu.mw@21b70 = 1c26</action>
        <action>maincpu.mb@2477c =   67</action>
        <action>maincpu.mw@258ba = eca6</action>
        <action>maincpu.mb@25b4c =   67</action>
    </script>
</cheat>
ktigera.xml (old ktiger.xml)

Code: Select all

<cheat desc="no hit">
    <script state="on">
        <action>maincpu.mw@21b98 = 6000</action> <!-- middle enemy -->
        <action>maincpu.mw@234ba = 6018</action> <!-- enemy -->
        <action>maincpu.mw@23496 = 6018</action> <!-- bullet -->
    </script>
    <script state="off">
        <action>maincpu.mb@21b98 = 6600</action>
        <action>maincpu.mw@234ba = 66fc</action>
        <action>maincpu.mw@23496 = 66fc</action>
    </script>
</cheat>

<cheat desc="auto fire">
    <script state="on">
        <action>maincpu.mb@25d39 = 00</action>
    </script>
    <script state="off">
        <action>maincpu.mb@25d39 = 20</action>
    </script>
</cheat>

<cheat desc="player speed">
    <parameter>
        <item value="0x01">01 (slow)</item>
        <item value="0x10">02       </item>
        <item value="0x18">03       </item>
        <item value="0x20">04       </item>
        <item value="0x28">05 (fast)</item>
    </parameter>
    <script state="on">
        <action>maincpu.md@25eca = 303c0000</action>
    </script>
    <script state="change">
        <action>maincpu.mb@25ecd = param</action>
    </script>
    <script state="off">
        <action>maincpu.md@25eca = 0640000a</action>
    </script>
</cheat>

<cheat desc="bullet speed">
    <parameter>
        <item value="0x20">01 (slow)</item>
        <item value="0x40">02       </item>
        <item value="0x60">03       </item>
        <item value="0x80">04       </item>
        <item value="0xa0">05 (fast)</item>
    </parameter>
    <script state="change">
        <action>maincpu.mb@26525 = param</action>
    </script>
    <script state="off">
        <action>maincpu.mb@26525 = 40</action>
    </script>
</cheat>

<cheat desc="max bullets up (test)">
    <script state="on">
        <action>maincpu.mb@26471 = 11</action>
    </script>
    <script state="off">
        <action>maincpu.mb@26471 = 03</action>
    </script>
</cheat>

<cheat desc="sound test mode">
    <comment>set &quot;skip rom error&quot; then reset the game (F3)</comment>
    <script state="on">
        <action>maincpu.mq@257de = 4ef90002ef404e71</action>
        <action>maincpu.mq@2ef40 = 41f90003010043f9</action>
        <action>maincpu.mq@2ef48 = 0007a00112001029</action>
        <action>maincpu.mq@2ef50 = e004b20067f60c00</action>
        <action>maincpu.mq@2ef58 = 0004660253100c00</action>
        <action>maincpu.mq@2ef60 = 0008660252100c00</action>
        <action>maincpu.mq@2ef68 = 0002660404100010</action>
        <action>maincpu.mq@2ef70 = 0c00000166040610</action>
        <action>maincpu.mq@2ef78 = 00100c0000106602</action>
        <action>maincpu.mq@2ef80 = 12900c0000206604</action>
        <action>maincpu.mq@2ef88 = 12bc00fe60beffff</action>
        <!--
        2ef40 | 41f9 0003 0100 : lea    $30100.l,A0    // sound code address
        2ef46 | 43f9 0007 a001 : lea    $7a001.l,A1    // sound latch address
        2ef4c | 1200           : move.b D0,D1
        2ef4e | 1029 e004      : move.b (-$1ffc,A1),D0 // read input
        2ef52 | b200           : cmp.b  D0,D1
        2ef54 | 67f6           : beq    $2ef4c
        2ef56 | 0c00 0004      : cmpi.b #$4,D0
        2ef5a | 6602           : bne    $2ef5e
        2ef5c | 5310           : subq.b #1,(A0)        // decrease code -01
        2ef5e | 0c00 0008      : cmpi.b #$8,D0
        2ef62 | 6602           : bne    $2ef66
        2ef64 | 5210           : addq.b #1,(A0)        // increase code +01
        2ef66 | 0c00 0002      : cmpi.b #$2,D0
        2ef6a | 6604           : bne    $2ef70
        2ef6c | 0410 0010      : subi.b #$10,(A0)      // decrease code -10
        2ef70 | 0c00 0001      : cmpi.b #$1,D0
        2ef74 | 6604           : bne    $2ef7a
        2ef76 | 0610 0010      : addi.b #$10,(A0)      // increase code +10
        2ef7a | 0c00 0010      : cmpi.b #$10,D0
        2ef7e | 6602           : bne    $2ef82
        2ef80 | 1290           : move.b (A0),(A1)      // play sound
        2ef82 | 0c00 0020      : cmpi.b #$20,D0
        2ef86 | 6604           : bne    $2ef8c
        2ef88 | 12bc 00fe      : move.b #$fe,(A1)      // stop sound
        2ef8c | 60be           : bra    $2ef4c
        -->
    </script>
    <script state="run">
        <output format="----- kyukyoku tiger 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@30100</argument>
        </output>
    </script>
    <script state="off">
        <action>maincpu.md@257de = 6100e3004cdf0105</action>
        <action>maincpu.mq@2ef40 = 0000000000000000</action>
        <action>maincpu.mq@2ef48 = 0000000000000000</action>
        <action>maincpu.mq@2ef50 = 0000000000000000</action>
        <action>maincpu.mq@2ef58 = 0000000000000000</action>
        <action>maincpu.mq@2ef60 = 0000000000000000</action>
        <action>maincpu.mq@2ef68 = 0000000000000000</action>
        <action>maincpu.mq@2ef70 = 0000000000000000</action>
        <action>maincpu.mq@2ef78 = 0000000000000000</action>
        <action>maincpu.mq@2ef80 = 0000000000000000</action>
        <action>maincpu.mq@2ef88 = 0000000000000000</action>
    </script>
</cheat>

<cheat desc="skip rom error">
    <script state="on">
        <action>maincpu.mb@25934 =   60</action> <!-- boot -->
        <action>maincpu.mw@2176a = 0002</action> <!-- ingame -->
        <action>maincpu.mb@23f50 =   60</action> <!-- ingame -->
        <action>maincpu.mw@2504a = 0002</action> <!-- ingame -->
        <action>maincpu.mb@2562a =   60</action> <!-- ingame -->
    </script>
    <script state="off">
        <action>maincpu.mb@25934 =   67</action>
        <action>maincpu.mw@2176a = 1922</action>
        <action>maincpu.mb@23f50 =   67</action>
        <action>maincpu.mw@2504a = ecfe</action>
        <action>maincpu.mb@2562a =   67</action>
    </script>
</cheat>
And some codes are updated.
  • "player speed" : rewrite routine. adjust item values.
  • "max bullets up" : add new as "test" code. Yellow weapon seems not to get "max bullets up".
  • "sound test mode" : rewrite routine.
Image
Normal shot level 1 is easy to understand for "max bullets up".
jman
Posts: 843
Joined: Tue Dec 01, 2020 1:24 pm

[twincobr]+ Twin Cobra/Kyukyoku Tiger

Post by jman »

First of all, this game has in-game ROM check and any ROM codes except "sound test mode" cause freeze/crash the game.
Someone reported as "bug" to MAME testers in the past (See https://mametesters.org/view.php?id=4119).
Please don't report because it is due to cheat, not MAME bug.

You note that "invincibility" in the database based on 0.259 coflicts with "skip rom error" by my post about in-game ROM check.
If you set both codes together then turn off either of one of code, in-game ROM check revives again.

twincobr.xml

Code: Select all

<!-- Twin Cobra (World) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mw@21F9E = 6000</action> <!-- middle enemy -->
            <action>maincpu.mw@23C1A = 6018</action> <!-- bullet -->
            <action>maincpu.mw@23C3E = 6018</action> <!-- enemy -->
        </script>
        <script state="off">
            <action>maincpu.mw@21F9E = 6600</action>
            <action>maincpu.mw@23C1A = 66FC</action>
            <action>maincpu.mw@23C3E = 66FC</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.mb@262C9 = 00</action>
        </script>
        <script state="off">
            <action>maincpu.mb@262C9 = 20</action>
        </script>
    </cheat>

    <cheat desc="player speed">
        <parameter>
            <item value="0x0001">01 (slow)</item>
            <item value="0x0010">02       </item>
            <item value="0x0018">03       </item>
            <item value="0x0020">04       </item>
            <item value="0x0028">05 (fast)</item>
        </parameter>
        <script state="on">
            <action>maincpu.mw@2647E = 303C</action>
        </script>
        <script state="change">
            <action>maincpu.mw@26480 = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@2647E = 0640000C</action>
        </script>
    </cheat>

    <cheat desc="bullet speed">
        <parameter>
            <item value="0x20">01 (slow)</item>
            <item value="0x40">02       </item>
            <item value="0x60">03       </item>
            <item value="0x80">04       </item>
            <item value="0xa0">05 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.mb@26C91 = param</action>
        </script>
        <script state="off">
            <action>maincpu.mb@26C91 = 40</action>
        </script>
    </cheat>

    <cheat desc="max bullets up (test)">
        <!-- yellow weapon doesn't get max bullet up? -->
        <script state="on">
            <action>maincpu.mb@26BC3 = 11</action>
        </script>
        <script state="off">
            <action>maincpu.mb@26BC3 = 02</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <comment>set &quot;skip rom error&quot; then reset the game (F3)</comment>
        <script state="on">
            <action>maincpu.mq@25CE6 = 4EF90002EF404E71</action>
            <action>maincpu.mq@2EF40 = 41F90003000043F9</action>
            <action>maincpu.mq@2EF48 = 0007A00112001029</action>
            <action>maincpu.mq@2EF50 = E004B20067F60C00</action>
            <action>maincpu.mq@2EF58 = 0004660253100C00</action>
            <action>maincpu.mq@2EF60 = 0008660252100C00</action>
            <action>maincpu.mq@2EF68 = 0002660404100010</action>
            <action>maincpu.mq@2EF70 = 0C00000166040610</action>
            <action>maincpu.mq@2EF78 = 00100C0000106602</action>
            <action>maincpu.mq@2EF80 = 12900C0000206604</action>
            <action>maincpu.mq@2EF88 = 12BC00FE60BEFFFF</action>
            <!--
            2EF40 | 41F9 0003 0000 : lea     $30000.l, A0    // sound code address
            2EF46 | 43F9 0007 A001 : lea     $7a001.l, A1    // sound latch address
            2EF4C | 1200           : move.b  D0, D1
            2EF4E | 1029 E004      : move.b  (-$1ffc,A1), D0 // read input ($78005)
            2EF52 | B200           : cmp.b   D0, D1
            2EF54 | 67F6           : beq     $2ef4c
            2EF56 | 0C00 0004      : cmpi.b  #$4, D0
            2EF5A | 6602           : bne     $2ef5e
            2EF5C | 5310           : subq.b  #1, (A0)        // decrease code -01
            2EF5E | 0C00 0008      : cmpi.b  #$8, D0
            2EF62 | 6602           : bne     $2ef66
            2EF64 | 5210           : addq.b  #1, (A0)        // increase code +01
            2EF66 | 0C00 0002      : cmpi.b  #$2, D0
            2EF6A | 6604           : bne     $2ef70
            2EF6C | 0410 0010      : subi.b  #$10, (A0)      // decrease code -10
            2EF70 | 0C00 0001      : cmpi.b  #$1, D0
            2EF74 | 6604           : bne     $2ef7a
            2EF76 | 0610 0010      : addi.b  #$10, (A0)      // increase code +10
            2EF7A | 0C00 0010      : cmpi.b  #$10, D0
            2EF7E | 6602           : bne     $2ef82
            2EF80 | 1290           : move.b  (A0), (A1)      // play sound
            2EF82 | 0C00 0020      : cmpi.b  #$20, D0
            2EF86 | 6604           : bne     $2ef8c
            2EF88 | 12BC 00FE      : move.b  #$fe, (A1)      // stop sound
            2EF8C | 60BE           : bra     $2ef4c
            -->
        </script>
        <script state="run">
            <output format="----- twin cobra 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@30000</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.md@25CE6 = 6100E5CC4CDF0105</action>
            <action>maincpu.mq@2EF40 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@2EF48 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@2EF50 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@2EF58 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@2EF60 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@2EF68 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@2EF70 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@2EF78 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@2EF80 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@2EF88 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="skip rom error">
        <script state="on">
            <action>maincpu.mw@25E3C = 603A</action> <!-- boot -->
            <action>maincpu.mw@21B64 = 0002</action> <!-- ingame -->
            <action>maincpu.mw@24754 = 6006</action> <!-- ingame -->
            <action>maincpu.mw@258A2 = 0002</action> <!-- ingame -->
            <action>maincpu.mw@25B32 = 6006</action> <!-- ingame -->
        </script>
        <script state="off">
            <action>maincpu.mw@25E3C = 673A</action>
            <action>maincpu.mw@21B64 = 1C0C</action>
            <action>maincpu.mw@24754 = 6706</action>
            <action>maincpu.mw@258A2 = EC98</action>
            <action>maincpu.mw@25B32 = 6706</action>
        </script>
    </cheat>

</mamecheat>
twincobru.xml

Code: Select all

<!-- Twin Cobra (US) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mw@21F9E = 6000</action> <!-- middle enemy -->
            <action>maincpu.mw@23C1A = 6018</action> <!-- bullet -->
            <action>maincpu.mw@23C3E = 6018</action> <!-- enemy -->
        </script>
        <script state="off">
            <action>maincpu.mw@21F9E = 6600</action>
            <action>maincpu.mw@23C1A = 66FC</action>
            <action>maincpu.mw@23C3E = 66FC</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.mb@262C3 = 00</action>
        </script>
        <script state="off">
            <action>maincpu.mb@262C3 = 20</action>
        </script>
    </cheat>

    <cheat desc="player speed">
        <parameter>
            <item value="0x0001">01 (slow)</item>
            <item value="0x0010">02       </item>
            <item value="0x0018">03       </item>
            <item value="0x0020">04       </item>
            <item value="0x0028">05 (fast)</item>
        </parameter>
        <script state="on">
            <action>maincpu.mw@26478 = 303C</action>
        </script>
        <script state="change">
            <action>maincpu.mw@2647A = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@26478 = 0640000C</action>
        </script>
    </cheat>

    <cheat desc="bullet speed">
        <parameter>
            <item value="0x20">01 (slow)</item>
            <item value="0x40">02       </item>
            <item value="0x60">03       </item>
            <item value="0x80">04       </item>
            <item value="0xa0">05 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.mb@26C8B = param</action>
        </script>
        <script state="off">
            <action>maincpu.mb@26C8B = 40</action>
        </script>
    </cheat>

    <cheat desc="max bullets up (test)">
        <!-- yellow weapon doesn't get max bullet up? -->
        <script state="on">
            <action>maincpu.mb@26BBD = 11</action>
        </script>
        <script state="off">
            <action>maincpu.mb@26BBD = 02</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <comment>set &quot;skip rom error&quot; then reset the game (F3)</comment>
        <script state="on">
            <action>maincpu.mq@25CE4 = 4EF90002EF404E71</action>
            <action>maincpu.mq@2EF40 = 41F90003000043F9</action>
            <action>maincpu.mq@2EF48 = 0007A00112001029</action>
            <action>maincpu.mq@2EF50 = E004B20067F60C00</action>
            <action>maincpu.mq@2EF58 = 0004660253100C00</action>
            <action>maincpu.mq@2EF60 = 0008660252100C00</action>
            <action>maincpu.mq@2EF68 = 0002660404100010</action>
            <action>maincpu.mq@2EF70 = 0C00000166040610</action>
            <action>maincpu.mq@2EF78 = 00100C0000106602</action>
            <action>maincpu.mq@2EF80 = 12900C0000206604</action>
            <action>maincpu.mq@2EF88 = 12BC00FE60BEFFFF</action>
            <!--
            2EF40 | 41F9 0003 0000 : lea     $30000.l, A0    // sound code address
            2EF46 | 43F9 0007 A001 : lea     $7a001.l, A1    // sound latch address
            2EF4C | 1200           : move.b  D0, D1
            2EF4E | 1029 E004      : move.b  (-$1ffc,A1), D0 // read input ($78005)
            2EF52 | B200           : cmp.b   D0, D1
            2EF54 | 67F6           : beq     $2ef4c
            2EF56 | 0C00 0004      : cmpi.b  #$4, D0
            2EF5A | 6602           : bne     $2ef5e
            2EF5C | 5310           : subq.b  #1, (A0)        // decrease code -01
            2EF5E | 0C00 0008      : cmpi.b  #$8, D0
            2EF62 | 6602           : bne     $2ef66
            2EF64 | 5210           : addq.b  #1, (A0)        // increase code +01
            2EF66 | 0C00 0002      : cmpi.b  #$2, D0
            2EF6A | 6604           : bne     $2ef70
            2EF6C | 0410 0010      : subi.b  #$10, (A0)      // decrease code -10
            2EF70 | 0C00 0001      : cmpi.b  #$1, D0
            2EF74 | 6604           : bne     $2ef7a
            2EF76 | 0610 0010      : addi.b  #$10, (A0)      // increase code +10
            2EF7A | 0C00 0010      : cmpi.b  #$10, D0
            2EF7E | 6602           : bne     $2ef82
            2EF80 | 1290           : move.b  (A0), (A1)      // play sound
            2EF82 | 0C00 0020      : cmpi.b  #$20, D0
            2EF86 | 6604           : bne     $2ef8c
            2EF88 | 12BC 00FE      : move.b  #$fe, (A1)      // stop sound
            2EF8C | 60BE           : bra     $2ef4c
            -->
        </script>
        <script state="run">
            <output format="----- twin cobra 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@30000</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.md@25CE4 = 6100E5CE4CDF0105</action>
            <action>maincpu.mq@2EF40 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@2EF48 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@2EF50 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@2EF58 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@2EF60 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@2EF68 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@2EF70 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@2EF78 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@2EF80 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@2EF88 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="skip rom error">
        <script state="on">
            <action>maincpu.mw@25E3A = 603A</action> <!-- boot -->
            <action>maincpu.mw@21B64 = 0002</action> <!-- ingame -->
            <action>maincpu.mw@24754 = 6006</action> <!-- ingame -->
            <action>maincpu.mw@258A0 = 0002</action> <!-- ingame -->
            <action>maincpu.mw@25B30 = 6006</action> <!-- ingame -->
        </script>
        <script state="off">
            <action>maincpu.mw@25E3A = 673A</action>
            <action>maincpu.mw@21B64 = 1C0C</action>
            <action>maincpu.mw@24754 = 6706</action>
            <action>maincpu.mw@258A0 = EC9A</action>
            <action>maincpu.mw@25B30 = 6706</action>
        </script>
    </cheat>

</mamecheat>
ktiger.xml

Code: Select all

<!-- Kyukyoku Tiger (Japan, 2 player cooperative) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mw@21FAA = 6000</action> <!-- middle enemy -->
            <action>maincpu.mw@23C40 = 6018</action> <!-- bullet -->
            <action>maincpu.mw@23C64 = 6018</action> <!-- enemy -->
        </script>
        <script state="off">
            <action>maincpu.mw@21FAA = 6600</action>
            <action>maincpu.mw@23C40 = 66FC</action>
            <action>maincpu.mw@23C64 = 66FC</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.mb@262E3 = 00</action>
        </script>
        <script state="off">
            <action>maincpu.mb@262E3 = 20</action>
        </script>
    </cheat>

    <cheat desc="player speed">
        <parameter>
            <item value="0x0001">01 (slow)</item>
            <item value="0x0010">02       </item>
            <item value="0x0018">03       </item>
            <item value="0x0020">04       </item>
            <item value="0x0028">05 (fast)</item>
        </parameter>
        <script state="on">
            <action>maincpu.mw@26498 = 303C</action>
        </script>
        <script state="change">
            <action>maincpu.mw@2649A = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@26498 = 0640000C</action>
        </script>
    </cheat>

    <cheat desc="bullet speed">
        <parameter>
            <item value="0x20">01 (slow)</item>
            <item value="0x40">02       </item>
            <item value="0x60">03       </item>
            <item value="0x80">04       </item>
            <item value="0xa0">05 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.mb@26CAB = param</action>
        </script>
        <script state="off">
            <action>maincpu.mb@26CAB = 40</action>
        </script>
    </cheat>

    <cheat desc="max bullets up (test)">
        <!-- yellow weapon doesn't get max bullet up? -->
        <script state="on">
            <action>maincpu.mb@26BDD = 11</action>
        </script>
        <script state="off">
            <action>maincpu.mb@26BDD = 02</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <comment>set &quot;skip rom error&quot; then reset the game (F3)</comment>
        <script state="on">
            <action>maincpu.mq@25D00 = 4EF90002EF404E71</action>
            <action>maincpu.mq@2EF40 = 41F90003000043F9</action>
            <action>maincpu.mq@2EF48 = 0007A00112001029</action>
            <action>maincpu.mq@2EF50 = E004B20067F60C00</action>
            <action>maincpu.mq@2EF58 = 0004660253100C00</action>
            <action>maincpu.mq@2EF60 = 0008660252100C00</action>
            <action>maincpu.mq@2EF68 = 0002660404100010</action>
            <action>maincpu.mq@2EF70 = 0C00000166040610</action>
            <action>maincpu.mq@2EF78 = 00100C0000106602</action>
            <action>maincpu.mq@2EF80 = 12900C0000206604</action>
            <action>maincpu.mq@2EF88 = 12BC00FE60BEFFFF</action>
            <!--
            2EF40 | 41F9 0003 0000 : lea     $30000.l, A0    // sound code address
            2EF46 | 43F9 0007 A001 : lea     $7a001.l, A1    // sound latch address
            2EF4C | 1200           : move.b  D0, D1
            2EF4E | 1029 E004      : move.b  (-$1ffc,A1), D0 // read input ($78005)
            2EF52 | B200           : cmp.b   D0, D1
            2EF54 | 67F6           : beq     $2ef4c
            2EF56 | 0C00 0004      : cmpi.b  #$4, D0
            2EF5A | 6602           : bne     $2ef5e
            2EF5C | 5310           : subq.b  #1, (A0)        // decrease code -01
            2EF5E | 0C00 0008      : cmpi.b  #$8, D0
            2EF62 | 6602           : bne     $2ef66
            2EF64 | 5210           : addq.b  #1, (A0)        // increase code +01
            2EF66 | 0C00 0002      : cmpi.b  #$2, D0
            2EF6A | 6604           : bne     $2ef70
            2EF6C | 0410 0010      : subi.b  #$10, (A0)      // decrease code -10
            2EF70 | 0C00 0001      : cmpi.b  #$1, D0
            2EF74 | 6604           : bne     $2ef7a
            2EF76 | 0610 0010      : addi.b  #$10, (A0)      // increase code +10
            2EF7A | 0C00 0010      : cmpi.b  #$10, D0
            2EF7E | 6602           : bne     $2ef82
            2EF80 | 1290           : move.b  (A0), (A1)      // play sound
            2EF82 | 0C00 0020      : cmpi.b  #$20, D0
            2EF86 | 6604           : bne     $2ef8c
            2EF88 | 12BC 00FE      : move.b  #$fe, (A1)      // stop sound
            2EF8C | 60BE           : bra     $2ef4c
            -->
        </script>
        <script state="run">
            <output format="----- kyukyoku tiger 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@30000</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.md@25D00 = 6100E5D84CDF0105</action>
            <action>maincpu.mq@2EF40 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@2EF48 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@2EF50 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@2EF58 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@2EF60 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@2EF68 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@2EF70 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@2EF78 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@2EF80 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@2EF88 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="skip rom error">
        <script state="on">
            <action>maincpu.mw@25E56 = 603E</action> <!-- boot -->
            <action>maincpu.mw@21B70 = 0002</action> <!-- ingame -->
            <action>maincpu.mw@2477C = 6006</action> <!-- ingame -->
            <action>maincpu.mw@258BA = 0002</action> <!-- ingame -->
            <action>maincpu.mw@25B4C = 6006</action> <!-- ingame -->
        </script>
        <script state="off">
            <action>maincpu.mw@25E56 = 673E</action>
            <action>maincpu.mw@21B70 = 1C26</action>
            <action>maincpu.mw@2477C = 6706</action>
            <action>maincpu.mw@258BA = ECA6</action>
            <action>maincpu.mw@25B4C = 6706</action>
        </script>
    </cheat>

</mamecheat>
ktigera.xml

Code: Select all

<!-- Kyukyoku Tiger (Japan, 2 player alternate) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mw@21B98 = 6000</action> <!-- middle enemy -->
            <action>maincpu.mw@234BA = 6018</action> <!-- enemy -->
            <action>maincpu.mw@23496 = 6018</action> <!-- bullet -->
        </script>
        <script state="off">
            <action>maincpu.mb@21B98 = 6600</action>
            <action>maincpu.mw@234BA = 66FC</action>
            <action>maincpu.mw@23496 = 66FC</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.mb@25D39 = 00</action>
        </script>
        <script state="off">
            <action>maincpu.mb@25D39 = 20</action>
        </script>
    </cheat>

    <cheat desc="player speed">
        <parameter>
            <item value="0x01">01 (slow)</item>
            <item value="0x10">02       </item>
            <item value="0x18">03       </item>
            <item value="0x20">04       </item>
            <item value="0x28">05 (fast)</item>
        </parameter>
        <script state="on">
            <action>maincpu.mw@25ECA = 303C</action>
        </script>
        <script state="change">
            <action>maincpu.mw@25ECC = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@25ECA = 0640000A</action>
        </script>
    </cheat>

    <cheat desc="bullet speed">
        <parameter>
            <item value="0x20">01 (slow)</item>
            <item value="0x40">02       </item>
            <item value="0x60">03       </item>
            <item value="0x80">04       </item>
            <item value="0xa0">05 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.mb@26525 = param</action>
        </script>
        <script state="off">
            <action>maincpu.mb@26525 = 40</action>
        </script>
    </cheat>

    <cheat desc="max bullets up (test)">
        <!-- yellow weapon doesn't get max bullet up? -->
        <script state="on">
            <action>maincpu.mb@26471 = 11</action>
        </script>
        <script state="off">
            <action>maincpu.mb@26471 = 03</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <comment>set &quot;skip rom error&quot; then reset the game (F3)</comment>
        <script state="on">
            <action>maincpu.mq@257DE = 4EF90002EF404E71</action>
            <action>maincpu.mq@2EF40 = 41F90003000043F9</action>
            <action>maincpu.mq@2EF48 = 0007A00112001029</action>
            <action>maincpu.mq@2EF50 = E004B20067F60C00</action>
            <action>maincpu.mq@2EF58 = 0004660253100C00</action>
            <action>maincpu.mq@2EF60 = 0008660252100C00</action>
            <action>maincpu.mq@2EF68 = 0002660404100010</action>
            <action>maincpu.mq@2EF70 = 0C00000166040610</action>
            <action>maincpu.mq@2EF78 = 00100C0000106602</action>
            <action>maincpu.mq@2EF80 = 12900C0000206604</action>
            <action>maincpu.mq@2EF88 = 12BC00FE60BEFFFF</action>
            <!--
            2EF40 | 41F9 0003 0000 : lea     $30000.l, A0    // sound code address
            2EF46 | 43F9 0007 A001 : lea     $7a001.l, A1    // sound latch address
            2EF4C | 1200           : move.b  D0, D1
            2EF4E | 1029 E004      : move.b  (-$1ffc,A1), D0 // read input ($78005)
            2EF52 | B200           : cmp.b   D0, D1
            2EF54 | 67F6           : beq     $2ef4c
            2EF56 | 0C00 0004      : cmpi.b  #$4, D0
            2EF5A | 6602           : bne     $2ef5e
            2EF5C | 5310           : subq.b  #1, (A0)        // decrease code -01
            2EF5E | 0C00 0008      : cmpi.b  #$8, D0
            2EF62 | 6602           : bne     $2ef66
            2EF64 | 5210           : addq.b  #1, (A0)        // increase code +01
            2EF66 | 0C00 0002      : cmpi.b  #$2, D0
            2EF6A | 6604           : bne     $2ef70
            2EF6C | 0410 0010      : subi.b  #$10, (A0)      // decrease code -10
            2EF70 | 0C00 0001      : cmpi.b  #$1, D0
            2EF74 | 6604           : bne     $2ef7a
            2EF76 | 0610 0010      : addi.b  #$10, (A0)      // increase code +10
            2EF7A | 0C00 0010      : cmpi.b  #$10, D0
            2EF7E | 6602           : bne     $2ef82
            2EF80 | 1290           : move.b  (A0), (A1)      // play sound
            2EF82 | 0C00 0020      : cmpi.b  #$20, D0
            2EF86 | 6604           : bne     $2ef8c
            2EF88 | 12BC 00FE      : move.b  #$fe, (A1)      // stop sound
            2EF8C | 60BE           : bra     $2ef4c
            -->
        </script>
        <script state="run">
            <output format="----- kyukyoku tiger 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@30000</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.md@257DE = 6100E3004CDF0105</action>
            <action>maincpu.mq@2EF40 = 0000000000000000</action>
            <action>maincpu.mq@2EF48 = 0000000000000000</action>
            <action>maincpu.mq@2EF50 = 0000000000000000</action>
            <action>maincpu.mq@2EF58 = 0000000000000000</action>
            <action>maincpu.mq@2EF60 = 0000000000000000</action>
            <action>maincpu.mq@2EF68 = 0000000000000000</action>
            <action>maincpu.mq@2EF70 = 0000000000000000</action>
            <action>maincpu.mq@2EF78 = 0000000000000000</action>
            <action>maincpu.mq@2EF80 = 0000000000000000</action>
            <action>maincpu.mq@2EF88 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="skip rom error">
        <script state="on">
            <action>maincpu.mw@25934 = 603A</action> <!-- boot -->
            <action>maincpu.mw@2176A = 0002</action> <!-- ingame -->
            <action>maincpu.mw@23F50 = 6006</action> <!-- ingame -->
            <action>maincpu.mw@2504A = 0002</action> <!-- ingame -->
            <action>maincpu.mw@2562A = 6006</action> <!-- ingame -->
        </script>
        <script state="off">
            <action>maincpu.mw@25934 = 673A</action>
            <action>maincpu.mw@2176A = 1922</action>
            <action>maincpu.mw@23F50 = 6706</action>
            <action>maincpu.mw@2504A = ECFE</action>
            <action>maincpu.mw@2562A = 6706</action>
        </script>
    </cheat>

</mamecheat>
Post Reply