[turbofrc] Turbo Force

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

[turbofrc] Turbo Force

Post by jman »

Code: Select all

<cheat desc="no hit">
    <script state="on">
        <action>maincpu.mw@479c = 0002</action> <!-- background -->
        <action>maincpu.mw@47c0 = 0002</action> <!-- background -->
        <action>maincpu.mw@62bc = 4e75</action> <!-- enemy -->
        <action>maincpu.mw@636e = 4e75</action> <!-- bullet -->
    </script>
    <script state="off">
        <action>maincpu.mw@479c = 0084</action>
        <action>maincpu.mw@47c0 = 006e</action>
        <action>maincpu.mw@62bc = 08ee</action>
        <action>maincpu.mw@636e = 08ee</action>
    </script>
</cheat>

<cheat desc="fire speed up">
    <script state="on">
        <action>maincpu.mw@46b6 = 4e71</action>
    </script>
    <script state="off">
        <action>maincpu.mw@46b6 = 67d4</action>
    </script>
</cheat>

<cheat desc="player speed">
    <parameter>
        <item value="0x01">01 (slow)</item>
        <item value="0x02">02       </item>
        <item value="0x04">03       </item>
        <item value="0x06">04       </item>
        <item value="0x08">05 (fast)</item>
    </parameter>
    <script state="on">
        <action>maincpu.md@43fc =         4eb800c0</action> // y position
        <action>maincpu.md@440e =         4eb800c0</action> // x position
        <action>maincpu.mq@00c0 = 7608323000006706</action>
        <action>maincpu.mq@00c8 = 6a02444332034e75</action>
        <!--
        00c0 | 76xx      : moveq  #$xx,D3
        00c2 | 3230 0000 : move.w (A0,D0.w),D1
        00c6 | 6706      : beq    $ce
        00c8 | 6a02      : bpl    $cc
        00ca | 4443      : neg.w  D3
        00cc | 3203      : move.w D3,D1
        00ce | 4e75      : rts
        -->
    </script>
    <script state="change">
        <action>maincpu.mb@00c1 = param</action>
    </script>
    <script state="off">
        <action>maincpu.md@43fc =         32300000</action>
        <action>maincpu.md@440e =         32300000</action>
        <action>maincpu.mq@00c0 = ffffffffffffffff</action>
        <action>maincpu.mq@00c8 = ffffffffffffffff</action>
    </script>
</cheat>

<cheat desc="bullet speed">
    <parameter>
        <item value="0x08">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.mq@4bc2 = 4eb9000000d041f9</action>
        <action>maincpu.mq@00d0 = 70003d4000424e75</action>
        <!--
        00d0 | 70xx      : moveq  #$xx,D0
        00d2 | 3d40 0042 : move.w D0,($42,A6)
        00d6 | 4e75      : rts
        -->
    </script>
    <script state="change">
        <action>maincpu.mb@00d1 = param</action>
    </script>
    <script state="off">
        <action>maincpu.mq@4bc2 = 3d706000004241f9</action>
        <action>maincpu.mq@00d0 = ffffffffffffffff</action>
    </script>
</cheat>

<cheat desc="no power down">
    <script state="on">
        <action>maincpu.mb@4614 = 60</action>
    </script>
    <script state="off">
        <action>maincpu.mb@4614 = 6a</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@0ac0 =         0000a6e0</action>
        <action>maincpu.mq@a6e0 = 41f9000c010043f9</action>
        <action>maincpu.mq@a6e8 = 000ff00e32003039</action>
        <action>maincpu.mq@a6f0 = 000ff000b24067f4</action>
        <action>maincpu.mq@a6f8 = 0c40fffb66025310</action>
        <action>maincpu.mq@a700 = 0c40fff766025210</action>
        <action>maincpu.mq@a708 = 0c40fffd66040410</action>
        <action>maincpu.mq@a710 = 00100c40fffe6604</action>
        <action>maincpu.mq@a718 = 061000100c40ffef</action>
        <action>maincpu.mq@a720 = 660212900c40fbff</action>
        <action>maincpu.mq@a728 = 660412bc000560bc</action>
        <!--
        a6e0 | 41f9 000c 0100 : lea    $c0100.l,A0 // sound code address
        a6e6 | 43f9 000f f00e : lea    $ff00e.l,A1 // sound latch address
        a6ec | 3200           : move.w D0, D1
        a6ee | 3039 000f f000 : move.w $ff000.l,D0
        a6f4 | b240           : cmp.w  D0, D1
        a6f6 | 67f4           : beq    $a6ec
        a6f8 | 0c40 fffb      : cmpi.w #-$5,D0
        a6fc | 6602           : bne    $a700
        a6fe | 5310           : subq.b #1,(A0)     // decrease code -01
        a700 | 0c40 fff7      : cmpi.w #-$9,D0
        a704 | 6602           : bne    $a708
        a706 | 5210           : addq.b #1,(A0)     // increase code +01
        a708 | 0c40 fffd      : cmpi.w #-$3,D0
        a70c | 6604           : bne    $a712
        a70e | 0410 0010      : subi.b #$10,(A0)   // decrease code -10
        a712 | 0c40 fffe      : cmpi.w #-$2,D0
        a716 | 6604           : bne    $a71c
        a718 | 0610 0010      : addi.b #$10,(A0)   // increase code +10
        a71c | 0c40 ffef      : cmpi.w #-$11,D0
        a720 | 6602           : bne    $a724
        a722 | 1290           : move.b (A0),(A1)   // play sound
        a724 | 0c40 fbff      : cmpi.w #-$401,D0
        a728 | 6604           : bne    $a72e
        a72a | 12bc 0005      : move.b #$5,(A1)    // stop sound
        a72e | 60bc           : bra    $a6ec
        -->
    </script>
    <script state="run">
        <output format="----- turbo force 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="start : 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@c0100</argument>
        </output>
    </script>
    <script state="off">
        <action>maincpu.md@0ac0 =         00066004</action>
        <action>maincpu.mq@a6e0 = ffffffffffffffff</action>
        <action>maincpu.mq@a6e8 = ffffffffffffffff</action>
        <action>maincpu.mq@a6f0 = ffffffffffffffff</action>
        <action>maincpu.mq@a6f8 = ffffffffffffffff</action>
        <action>maincpu.mq@a700 = ffffffffffffffff</action>
        <action>maincpu.mq@a708 = ffffffffffffffff</action>
        <action>maincpu.mq@a710 = ffffffffffffffff</action>
        <action>maincpu.mq@a718 = ffffffffffffffff</action>
        <action>maincpu.mq@a720 = ffffffffffffffff</action>
        <action>maincpu.mq@a728 = ffffffffffffffff</action>
    </script>
</cheat>
jman
Posts: 842
Joined: Tue Dec 01, 2020 1:24 pm

[turbofrc]+ Turbo Force

Post by jman »

turbofrc.xml

Code: Select all

<!-- Turbo Force (World, set 1) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mw@479C = 0002</action> <!-- background -->
            <action>maincpu.mw@47C0 = 0002</action> <!-- background -->
            <action>maincpu.mw@62BC = 4E75</action> <!-- enemy -->
            <action>maincpu.mw@636E = 4E75</action> <!-- bullet -->
        </script>
        <script state="off">
            <action>maincpu.mw@479C = 0084</action>
            <action>maincpu.mw@47C0 = 006E</action>
            <action>maincpu.mw@62BC = 08EE</action>
            <action>maincpu.mw@636E = 08EE</action>
        </script>
    </cheat>

    <cheat desc="fire speed up">
        <script state="on">
            <action>maincpu.mw@46B6 = 4E71</action>
        </script>
        <script state="off">
            <action>maincpu.mw@46B6 = 67D4</action>
        </script>
    </cheat>

    <cheat desc="player speed">
        <parameter>
            <item value="0x0001">01 (slow)</item>
            <item value="0x0002">02       </item>
            <item value="0x0004">03       </item>
            <item value="0x0006">04       </item>
            <item value="0x0008">05 (fast)</item>
        </parameter>
        <script state="on">
            <action>maincpu.mq@43FC = 4EB90000A6E04E71</action> // y position
            <action>maincpu.mq@440E = 4EB90000A6E84E71</action> // x position
            <action>maincpu.mq@A6E0 = 610ED36E000E4E75</action>
            <action>maincpu.mq@A6E8 = 6106D36E000C4E75</action>
            <action>maincpu.mq@A6F0 = 363C000032300000</action>
            <action>maincpu.mq@A6F8 = 67066A0244433203</action>
            <action>maincpu.mq@A700 = 4E75FFFFFFFFFFFF</action>
            <!--
            A6E0 | 610E      : bsr     $a6f0         // y position
            A6E2 | D36E 000E : add.w   D1, ($e,A6)
            A6E6 | 4E75      : rts
            A6E8 | 6106      : bsr     $a6f0         // x position
            A6EA | D36E 000C : add.w   D1, ($c,A6)
            A6EE | 4E75      : rts
            A6F0 | 363C xxxx : move.w  #$xx, D3
            A6F4 | 3230 0000 : move.w  (A0,D0.w), D1
            A6F8 | 6706      : beq     $a700
            A6FA | 6A02      : bpl     $a6fe
            A6FC | 4443      : neg.w   D3
            A6FE | 3203      : move.w  D3, D1
            A700 | 4E75      : rts
            -->
        </script>
        <script state="change">
            <action>maincpu.mw@A6F2 = param</action>
        </script>
        <script state="off">
            <action>maincpu.mq@43FC = 32300000D36E000E</action>
            <action>maincpu.mq@440E = 32300000D36E000C</action>
            <action>maincpu.mq@A6E0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A6E8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A6F0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A6F8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A700 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="bullet speed">
        <parameter>
            <item value="0x0004">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.mq@4BC2 = 4EB90000A71041F9</action>
            <action>maincpu.mq@A710 = 3D7C000000424E75</action> <!-- move.w #$xx,($42,A6) / rts -->
        </script>
        <script state="change">
            <action>maincpu.mw@A712 = param</action>
        </script>
        <script state="off">
            <action>maincpu.mq@4BC2 = 3D706000004241F9</action>
            <action>maincpu.mq@A710 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="no power down">
        <script state="on">
            <action>maincpu.mb@4614 = 60</action>
        </script>
        <script state="off">
            <action>maincpu.mb@4614 = 6A</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@0AC0 = 0000A720        </action>
            <action>maincpu.mq@A720 = 41F9000C000043F9</action>
            <action>maincpu.mq@A728 = 000FF00E32003029</action>
            <action>maincpu.mq@A730 = FFF2B24067F60C40</action>
            <action>maincpu.mq@A738 = FFFB660253100C40</action>
            <action>maincpu.mq@A740 = FFF7660252100C40</action>
            <action>maincpu.mq@A748 = FFFD660404100010</action>
            <action>maincpu.mq@A750 = 0C40FFFE66040610</action>
            <action>maincpu.mq@A758 = 00100C40FFEF6602</action>
            <action>maincpu.mq@A760 = 12900C40FBFF6604</action>
            <action>maincpu.mq@A768 = 12BC000160BEFFFF</action>
            <!--
            A720 | 41F9 000C 0000 : lea     $c0000.l, A0 // sound code address
            A726 | 43F9 000F F00E : lea     $ff00e.l, A1 // sound latch address
            A72C | 3200           : move.w  D0, D1
            A72E | 3029 FFF2      : move.w  (-$e,A1), D0 // read input ($ff000)
            A732 | B240           : cmp.w   D0, D1
            A734 | 67F6           : beq     $a72c
            A736 | 0C40 FFFB      : cmpi.w  #-$5, D0
            A73A | 6602           : bne     $a73e
            A73C | 5310           : subq.b  #1, (A0)     // decrease code -01
            A73E | 0C40 FFF7      : cmpi.w  #-$9, D0
            A742 | 6602           : bne     $a746
            A744 | 5210           : addq.b  #1, (A0)     // increase code +01
            A746 | 0C40 FFFD      : cmpi.w  #-$3, D0
            A74A | 6604           : bne     $a750
            A74C | 0410 0010      : subi.b  #$10, (A0)   // decrease code -10
            A750 | 0C40 FFFE      : cmpi.w  #-$2, D0
            A754 | 6604           : bne     $a75a
            A756 | 0610 0010      : addi.b  #$10, (A0)   // increase code +10
            A75A | 0C40 FFEF      : cmpi.w  #-$11, D0
            A75E | 6602           : bne     $a762
            A760 | 1290           : move.b  (A0), (A1)   // play sound
            A762 | 0C40 FBFF      : cmpi.w  #-$401, D0
            A766 | 6604           : bne     $a76c
            A768 | 12BC 0001      : move.b  #$1, (A1)    // stop sound
            A76C | 60BE           : bra     $a72c
            -->
        </script>
        <script state="run">
            <output format="----- turbo force 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="start 1 : 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@C0000</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.md@0AC0 = 00066004        </action>
            <action>maincpu.mq@A720 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A728 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A730 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A738 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A740 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A748 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A750 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A758 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A760 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A768 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

</mamecheat>
turbofrco.xml

Code: Select all

<!-- Turbo Force (World, set 2) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mw@479C = 0002</action> <!-- background -->
            <action>maincpu.mw@47C0 = 0002</action> <!-- background -->
            <action>maincpu.mw@62BC = 4E75</action> <!-- enemy -->
            <action>maincpu.mw@636E = 4E75</action> <!-- bullet -->
        </script>
        <script state="off">
            <action>maincpu.mw@479C = 0084</action>
            <action>maincpu.mw@47C0 = 006E</action>
            <action>maincpu.mw@62BC = 08EE</action>
            <action>maincpu.mw@636E = 08EE</action>
        </script>
    </cheat>

    <cheat desc="fire speed up">
        <script state="on">
            <action>maincpu.mw@46B6 = 4E71</action>
        </script>
        <script state="off">
            <action>maincpu.mw@46B6 = 67D4</action>
        </script>
    </cheat>

    <cheat desc="player speed">
        <parameter>
            <item value="0x0001">01 (slow)</item>
            <item value="0x0002">02       </item>
            <item value="0x0004">03       </item>
            <item value="0x0006">04       </item>
            <item value="0x0008">05 (fast)</item>
        </parameter>
        <script state="on">
            <action>maincpu.mq@43FC = 4EB90000A6E04E71</action> // y position
            <action>maincpu.mq@440E = 4EB90000A6E84E71</action> // x position
            <action>maincpu.mq@A6E0 = 610ED36E000E4E75</action>
            <action>maincpu.mq@A6E8 = 6106D36E000C4E75</action>
            <action>maincpu.mq@A6F0 = 363C000032300000</action>
            <action>maincpu.mq@A6F8 = 67066A0244433203</action>
            <action>maincpu.mq@A700 = 4E75FFFFFFFFFFFF</action>
            <!--
            A6E0 | 610E      : bsr     $a6f0         // y position
            A6E2 | D36E 000E : add.w   D1, ($e,A6)
            A6E6 | 4E75      : rts
            A6E8 | 6106      : bsr     $a6f0         // x position
            A6EA | D36E 000C : add.w   D1, ($c,A6)
            A6EE | 4E75      : rts
            A6F0 | 363C xxxx : move.w  #$xx, D3
            A6F4 | 3230 0000 : move.w  (A0,D0.w), D1
            A6F8 | 6706      : beq     $a700
            A6FA | 6A02      : bpl     $a6fe
            A6FC | 4443      : neg.w   D3
            A6FE | 3203      : move.w  D3, D1
            A700 | 4E75      : rts
            -->
        </script>
        <script state="change">
            <action>maincpu.mw@A6F2 = param</action>
        </script>
        <script state="off">
            <action>maincpu.mq@43FC = 32300000D36E000E</action>
            <action>maincpu.mq@440E = 32300000D36E000C</action>
            <action>maincpu.mq@A6E0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A6E8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A6F0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A6F8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A700 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="bullet speed">
        <parameter>
            <item value="0x0004">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.mq@4BC2 = 4EB90000A71041F9</action>
            <action>maincpu.mq@A710 = 3D7C000000424E75</action> <!-- move.w #$xx,($42,A6) / rts -->
        </script>
        <script state="change">
            <action>maincpu.mw@A712 = param</action>
        </script>
        <script state="off">
            <action>maincpu.mq@4BC2 = 3D706000004241F9</action>
            <action>maincpu.mq@A710 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="no power down">
        <script state="on">
            <action>maincpu.mb@4614 = 60</action>
        </script>
        <script state="off">
            <action>maincpu.mb@4614 = 6A</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@0AC0 = 0000A720        </action>
            <action>maincpu.mq@A720 = 41F9000C000043F9</action>
            <action>maincpu.mq@A728 = 000FF00E32003029</action>
            <action>maincpu.mq@A730 = FFF2B24067F60C40</action>
            <action>maincpu.mq@A738 = FFFB660253100C40</action>
            <action>maincpu.mq@A740 = FFF7660252100C40</action>
            <action>maincpu.mq@A748 = FFFD660404100010</action>
            <action>maincpu.mq@A750 = 0C40FFFE66040610</action>
            <action>maincpu.mq@A758 = 00100C40FFEF6602</action>
            <action>maincpu.mq@A760 = 12900C40FBFF6604</action>
            <action>maincpu.mq@A768 = 12BC000160BEFFFF</action>
            <!--
            A720 | 41F9 000C 0000 : lea     $c0000.l, A0 // sound code address
            A726 | 43F9 000F F00E : lea     $ff00e.l, A1 // sound latch address
            A72C | 3200           : move.w  D0, D1
            A72E | 3029 FFF2      : move.w  (-$e,A1), D0 // read input ($ff000)
            A732 | B240           : cmp.w   D0, D1
            A734 | 67F6           : beq     $a72c
            A736 | 0C40 FFFB      : cmpi.w  #-$5, D0
            A73A | 6602           : bne     $a73e
            A73C | 5310           : subq.b  #1, (A0)     // decrease code -01
            A73E | 0C40 FFF7      : cmpi.w  #-$9, D0
            A742 | 6602           : bne     $a746
            A744 | 5210           : addq.b  #1, (A0)     // increase code +01
            A746 | 0C40 FFFD      : cmpi.w  #-$3, D0
            A74A | 6604           : bne     $a750
            A74C | 0410 0010      : subi.b  #$10, (A0)   // decrease code -10
            A750 | 0C40 FFFE      : cmpi.w  #-$2, D0
            A754 | 6604           : bne     $a75a
            A756 | 0610 0010      : addi.b  #$10, (A0)   // increase code +10
            A75A | 0C40 FFEF      : cmpi.w  #-$11, D0
            A75E | 6602           : bne     $a762
            A760 | 1290           : move.b  (A0), (A1)   // play sound
            A762 | 0C40 FBFF      : cmpi.w  #-$401, D0
            A766 | 6604           : bne     $a76c
            A768 | 12BC 0001      : move.b  #$1, (A1)    // stop sound
            A76C | 60BE           : bra     $a72c
            -->
        </script>
        <script state="run">
            <output format="----- turbo force 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="start 1 : 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@C0000</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.md@0AC0 = 00066004        </action>
            <action>maincpu.mq@A720 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A728 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A730 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A738 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A740 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A748 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A750 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A758 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A760 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A768 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

</mamecheat>
turbofrcu.xml

Code: Select all

<!-- Turbo Force (US, set 1) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mw@479C = 0002</action> <!-- background -->
            <action>maincpu.mw@47C0 = 0002</action> <!-- background -->
            <action>maincpu.mw@62BC = 4E75</action> <!-- enemy -->
            <action>maincpu.mw@636E = 4E75</action> <!-- bullet -->
        </script>
        <script state="off">
            <action>maincpu.mw@479C = 0084</action>
            <action>maincpu.mw@47C0 = 006E</action>
            <action>maincpu.mw@62BC = 08EE</action>
            <action>maincpu.mw@636E = 08EE</action>
        </script>
    </cheat>

    <cheat desc="fire speed up">
        <script state="on">
            <action>maincpu.mw@46B6 = 4E71</action>
        </script>
        <script state="off">
            <action>maincpu.mw@46B6 = 67D4</action>
        </script>
    </cheat>

    <cheat desc="player speed">
        <parameter>
            <item value="0x0001">01 (slow)</item>
            <item value="0x0002">02       </item>
            <item value="0x0004">03       </item>
            <item value="0x0006">04       </item>
            <item value="0x0008">05 (fast)</item>
        </parameter>
        <script state="on">
            <action>maincpu.mq@43FC = 4EB90000A6E04E71</action> // y position
            <action>maincpu.mq@440E = 4EB90000A6E84E71</action> // x position
            <action>maincpu.mq@A6E0 = 610ED36E000E4E75</action>
            <action>maincpu.mq@A6E8 = 6106D36E000C4E75</action>
            <action>maincpu.mq@A6F0 = 363C000032300000</action>
            <action>maincpu.mq@A6F8 = 67066A0244433203</action>
            <action>maincpu.mq@A700 = 4E75FFFFFFFFFFFF</action>
            <!--
            A6E0 | 610E      : bsr     $a6f0         // y position
            A6E2 | D36E 000E : add.w   D1, ($e,A6)
            A6E6 | 4E75      : rts
            A6E8 | 6106      : bsr     $a6f0         // x position
            A6EA | D36E 000C : add.w   D1, ($c,A6)
            A6EE | 4E75      : rts
            A6F0 | 363C xxxx : move.w  #$xx, D3
            A6F4 | 3230 0000 : move.w  (A0,D0.w), D1
            A6F8 | 6706      : beq     $a700
            A6FA | 6A02      : bpl     $a6fe
            A6FC | 4443      : neg.w   D3
            A6FE | 3203      : move.w  D3, D1
            A700 | 4E75      : rts
            -->
        </script>
        <script state="change">
            <action>maincpu.mw@A6F2 = param</action>
        </script>
        <script state="off">
            <action>maincpu.mq@43FC = 32300000D36E000E</action>
            <action>maincpu.mq@440E = 32300000D36E000C</action>
            <action>maincpu.mq@A6E0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A6E8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A6F0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A6F8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A700 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="bullet speed">
        <parameter>
            <item value="0x0004">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.mq@4BC2 = 4EB90000A71041F9</action>
            <action>maincpu.mq@A710 = 3D7C000000424E75</action> <!-- move.w #$xx,($42,A6) / rts -->
        </script>
        <script state="change">
            <action>maincpu.mw@A712 = param</action>
        </script>
        <script state="off">
            <action>maincpu.mq@4BC2 = 3D706000004241F9</action>
            <action>maincpu.mq@A710 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="no power down">
        <script state="on">
            <action>maincpu.mb@4614 = 60</action>
        </script>
        <script state="off">
            <action>maincpu.mb@4614 = 6A</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@0AC0 = 0000A720        </action>
            <action>maincpu.mq@A720 = 41F9000C000043F9</action>
            <action>maincpu.mq@A728 = 000FF00E32003029</action>
            <action>maincpu.mq@A730 = FFF2B24067F60C40</action>
            <action>maincpu.mq@A738 = FFFB660253100C40</action>
            <action>maincpu.mq@A740 = FFF7660252100C40</action>
            <action>maincpu.mq@A748 = FFFD660404100010</action>
            <action>maincpu.mq@A750 = 0C40FFFE66040610</action>
            <action>maincpu.mq@A758 = 00100C40FFEF6602</action>
            <action>maincpu.mq@A760 = 12900C40FBFF6604</action>
            <action>maincpu.mq@A768 = 12BC000160BEFFFF</action>
            <!--
            A720 | 41F9 000C 0000 : lea     $c0000.l, A0 // sound code address
            A726 | 43F9 000F F00E : lea     $ff00e.l, A1 // sound latch address
            A72C | 3200           : move.w  D0, D1
            A72E | 3029 FFF2      : move.w  (-$e,A1), D0 // read input ($ff000)
            A732 | B240           : cmp.w   D0, D1
            A734 | 67F6           : beq     $a72c
            A736 | 0C40 FFFB      : cmpi.w  #-$5, D0
            A73A | 6602           : bne     $a73e
            A73C | 5310           : subq.b  #1, (A0)     // decrease code -01
            A73E | 0C40 FFF7      : cmpi.w  #-$9, D0
            A742 | 6602           : bne     $a746
            A744 | 5210           : addq.b  #1, (A0)     // increase code +01
            A746 | 0C40 FFFD      : cmpi.w  #-$3, D0
            A74A | 6604           : bne     $a750
            A74C | 0410 0010      : subi.b  #$10, (A0)   // decrease code -10
            A750 | 0C40 FFFE      : cmpi.w  #-$2, D0
            A754 | 6604           : bne     $a75a
            A756 | 0610 0010      : addi.b  #$10, (A0)   // increase code +10
            A75A | 0C40 FFEF      : cmpi.w  #-$11, D0
            A75E | 6602           : bne     $a762
            A760 | 1290           : move.b  (A0), (A1)   // play sound
            A762 | 0C40 FBFF      : cmpi.w  #-$401, D0
            A766 | 6604           : bne     $a76c
            A768 | 12BC 0001      : move.b  #$1, (A1)    // stop sound
            A76C | 60BE           : bra     $a72c
            -->
        </script>
        <script state="run">
            <output format="----- turbo force 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="start 1 : 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@C0000</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.md@0AC0 = 00066004        </action>
            <action>maincpu.mq@A720 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A728 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A730 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A738 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A740 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A748 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A750 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A758 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A760 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A768 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

</mamecheat>
turbofrcua.xml

Code: Select all

<!-- Turbo Force (US, set 2) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mw@479C = 0002</action> <!-- background -->
            <action>maincpu.mw@47C0 = 0002</action> <!-- background -->
            <action>maincpu.mw@62BC = 4E75</action> <!-- enemy -->
            <action>maincpu.mw@636E = 4E75</action> <!-- bullet -->
        </script>
        <script state="off">
            <action>maincpu.mw@479C = 0084</action>
            <action>maincpu.mw@47C0 = 006E</action>
            <action>maincpu.mw@62BC = 08EE</action>
            <action>maincpu.mw@636E = 08EE</action>
        </script>
    </cheat>

    <cheat desc="fire speed up">
        <script state="on">
            <action>maincpu.mw@46B6 = 4E71</action>
        </script>
        <script state="off">
            <action>maincpu.mw@46B6 = 67D4</action>
        </script>
    </cheat>

    <cheat desc="player speed">
        <parameter>
            <item value="0x0001">01 (slow)</item>
            <item value="0x0002">02       </item>
            <item value="0x0004">03       </item>
            <item value="0x0006">04       </item>
            <item value="0x0008">05 (fast)</item>
        </parameter>
        <script state="on">
            <action>maincpu.mq@43FC = 4EB90000A6E04E71</action> // y position
            <action>maincpu.mq@440E = 4EB90000A6E84E71</action> // x position
            <action>maincpu.mq@A6E0 = 610ED36E000E4E75</action>
            <action>maincpu.mq@A6E8 = 6106D36E000C4E75</action>
            <action>maincpu.mq@A6F0 = 363C000032300000</action>
            <action>maincpu.mq@A6F8 = 67066A0244433203</action>
            <action>maincpu.mq@A700 = 4E75FFFFFFFFFFFF</action>
            <!--
            A6E0 | 610E      : bsr     $a6f0         // y position
            A6E2 | D36E 000E : add.w   D1, ($e,A6)
            A6E6 | 4E75      : rts
            A6E8 | 6106      : bsr     $a6f0         // x position
            A6EA | D36E 000C : add.w   D1, ($c,A6)
            A6EE | 4E75      : rts
            A6F0 | 363C xxxx : move.w  #$xx, D3
            A6F4 | 3230 0000 : move.w  (A0,D0.w), D1
            A6F8 | 6706      : beq     $a700
            A6FA | 6A02      : bpl     $a6fe
            A6FC | 4443      : neg.w   D3
            A6FE | 3203      : move.w  D3, D1
            A700 | 4E75      : rts
            -->
        </script>
        <script state="change">
            <action>maincpu.mw@A6F2 = param</action>
        </script>
        <script state="off">
            <action>maincpu.mq@43FC = 32300000D36E000E</action>
            <action>maincpu.mq@440E = 32300000D36E000C</action>
            <action>maincpu.mq@A6E0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A6E8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A6F0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A6F8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A700 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="bullet speed">
        <parameter>
            <item value="0x0004">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.mq@4BC2 = 4EB90000A71041F9</action>
            <action>maincpu.mq@A710 = 3D7C000000424E75</action> <!-- move.w #$xx,($42,A6) / rts -->
        </script>
        <script state="change">
            <action>maincpu.mw@A712 = param</action>
        </script>
        <script state="off">
            <action>maincpu.mq@4BC2 = 3D706000004241F9</action>
            <action>maincpu.mq@A710 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="no power down">
        <script state="on">
            <action>maincpu.mb@4614 = 60</action>
        </script>
        <script state="off">
            <action>maincpu.mb@4614 = 6A</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@0AC0 = 0000A720        </action>
            <action>maincpu.mq@A720 = 41F9000C000043F9</action>
            <action>maincpu.mq@A728 = 000FF00E32003029</action>
            <action>maincpu.mq@A730 = FFF2B24067F60C40</action>
            <action>maincpu.mq@A738 = FFFB660253100C40</action>
            <action>maincpu.mq@A740 = FFF7660252100C40</action>
            <action>maincpu.mq@A748 = FFFD660404100010</action>
            <action>maincpu.mq@A750 = 0C40FFFE66040610</action>
            <action>maincpu.mq@A758 = 00100C40FFEF6602</action>
            <action>maincpu.mq@A760 = 12900C40FBFF6604</action>
            <action>maincpu.mq@A768 = 12BC000160BEFFFF</action>
            <!--
            A720 | 41F9 000C 0000 : lea     $c0000.l, A0 // sound code address
            A726 | 43F9 000F F00E : lea     $ff00e.l, A1 // sound latch address
            A72C | 3200           : move.w  D0, D1
            A72E | 3029 FFF2      : move.w  (-$e,A1), D0 // read input ($ff000)
            A732 | B240           : cmp.w   D0, D1
            A734 | 67F6           : beq     $a72c
            A736 | 0C40 FFFB      : cmpi.w  #-$5, D0
            A73A | 6602           : bne     $a73e
            A73C | 5310           : subq.b  #1, (A0)     // decrease code -01
            A73E | 0C40 FFF7      : cmpi.w  #-$9, D0
            A742 | 6602           : bne     $a746
            A744 | 5210           : addq.b  #1, (A0)     // increase code +01
            A746 | 0C40 FFFD      : cmpi.w  #-$3, D0
            A74A | 6604           : bne     $a750
            A74C | 0410 0010      : subi.b  #$10, (A0)   // decrease code -10
            A750 | 0C40 FFFE      : cmpi.w  #-$2, D0
            A754 | 6604           : bne     $a75a
            A756 | 0610 0010      : addi.b  #$10, (A0)   // increase code +10
            A75A | 0C40 FFEF      : cmpi.w  #-$11, D0
            A75E | 6602           : bne     $a762
            A760 | 1290           : move.b  (A0), (A1)   // play sound
            A762 | 0C40 FBFF      : cmpi.w  #-$401, D0
            A766 | 6604           : bne     $a76c
            A768 | 12BC 0001      : move.b  #$1, (A1)    // stop sound
            A76C | 60BE           : bra     $a72c
            -->
        </script>
        <script state="run">
            <output format="----- turbo force 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="start 1 : 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@C0000</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.md@0AC0 = 00066004        </action>
            <action>maincpu.mq@A720 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A728 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A730 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A738 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A740 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A748 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A750 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A758 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A760 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@A768 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

</mamecheat>
Post Reply