[ambush]+ Ambush

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: 1316
Joined: Tue Dec 01, 2020 1:24 pm
Been thanked: 9 times

[ambush]+ Ambush

Post by jman »

ambush.xml

Code: Select all

<!-- Ambush -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mb@19B7 = C9</action> <!-- objects -->
            <action>maincpu.mb@4AA6 = 18</action> <!-- course out [side] (take off) -->
            <action>maincpu.mb@4F56 = 18</action> <!-- course out [front] (take off) -->
            <action>maincpu.mb@7A12 = 18</action> <!-- slow speed (landing) -->
            <action>maincpu.mb@7A53 = 00</action> <!-- fast speed (landing) -->
            <action>maincpu.mb@7A5A = 00</action> <!-- course out (landing) -->
        </script>
        <script state="off">
            <action>maincpu.mb@19B7 = D8</action>
            <action>maincpu.mb@4AA6 = 38</action>
            <action>maincpu.mb@4F56 = 30</action>
            <action>maincpu.mb@7A12 = 30</action>
            <action>maincpu.mb@7A53 = D4</action>
            <action>maincpu.mb@7A5A = CD</action>
        </script>
    </cheat>

    <cheat desc="rapid fire">
        <script state="on">
            <action>maincpu.mw@362B = 1F18</action>
        </script>
        <script state="off">
            <action>maincpu.mw@362B = C8A7</action>
        </script>
    </cheat>

    <cheat desc="easy take off/landing">
        <script state="on">
            <action>maincpu.mw@48F2 = 37AF</action> <!-- position -->
            <action>maincpu.mw@4A45 = 8780</action> <!-- speed -->
        </script>
        <script state="run">
            <action>maincpu.pq@8780 = 323D0B20A786003A</action>
            <action>maincpu.pq@8788 = 850232842C328428</action>
            <action>maincpu.pq@8790 = 0D2803FE84273AC9</action>
            <action>maincpu.pq@8798 = 842C32842832FF3E</action>
            <action>maincpu.pq@87A0 = 2832AFC9850232AF</action>
            <action>maincpu.pq@87A8 = C9850232842C3284</action>
            <!--
            8780 | 3A 00 86 : ld   a,($8600) // check current scene
            8783 | A7       : and  a
            8784 | 20 0B    : jr   nz,$8791
            8786 | 3D       : dec  a         // max speed
            8787 | 32 28 84 : ld   ($8428),a
            878A | 32 2C 84 : ld   ($842C),a
            878D | 32 02 85 : ld   ($8502),a
            8790 | C9       : ret
            8791 | 3A 27 84 : ld   a,($8427) // check landing state
            8794 | FE 03    : cp   $03
            8796 | 28 0D    : jr   z,$87A5
            8798 | 3E FF    : ld   a,$FF     // middle speed
            879A | 32 28 84 : ld   ($8428),a
            879D | 32 2C 84 : ld   ($842C),a
            87A0 | AF       : xor  a
            87A1 | 32 02 85 : ld   ($8502),a
            87A4 | C9       : ret
            87A5 | AF       : xor  a         // min speed
            87A6 | 32 28 84 : ld   ($8428),a
            87A9 | 32 2C 84 : ld   ($842C),a
            87AC | 32 02 85 : ld   ($8502),a
            87AF | C9       : ret
            -->
        </script>
        <script state="off">
            <action>maincpu.mw@48F2 = 40FE            </action>
            <action>maincpu.mw@4A45 = 4700            </action>
            <action>maincpu.pq@8780 = 0000000000000000</action>
            <action>maincpu.pq@8788 = 0000000000000000</action>
            <action>maincpu.pq@8790 = 0000000000000000</action>
            <action>maincpu.pq@8798 = 0000000000000000</action>
            <action>maincpu.pq@87A0 = 0000000000000000</action>
            <action>maincpu.pq@87A8 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="timer speed">
        <parameter>
            <item value="0xFF">01 (slow)</item>
            <item value="0x80">02       </item>
            <item value="0x40">03       </item>
            <item value="0x20">04       </item>
            <item value="0x01">05 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.mb@4D38 = param</action>
        </script>
        <script state="off">
            <action>maincpu.mb@4D38 = 15</action>
        </script>
    </cheat>

    <cheat desc="fuel speed">
        <parameter>
            <item value="0xFF3E">01 (slow)</item>
            <item value="0x803E">02       </item>
            <item value="0x403E">03       </item>
            <item value="0x203E">04       </item>
            <item value="0x013E">05 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.mw@4DA1 = param</action>
        </script>
        <script state="off">
            <action>maincpu.mw@4DA1 = 44ED</action>
        </script>
    </cheat>

    <cheat desc="reverse control">
        <script state="on">
            <action>maincpu.mw@34AA = 3574</action> <!-- up -->
            <action>maincpu.mw@34B1 = 3599</action> <!-- down -->
            <action>maincpu.mw@4A37 = 4600</action> <!-- up (take-off) -->
            <action>maincpu.mw@4A42 = 4E00</action> <!-- down (take-off) -->
        </script>
        <script state="off">
            <action>maincpu.mw@34AA = 3599</action>
            <action>maincpu.mw@34B1 = 3574</action>
            <action>maincpu.mw@4A37 = 4E00</action>
            <action>maincpu.mw@4A42 = 4600</action>
        </script>
    </cheat>

    <cheat desc="skip ram/rom check">
        <script state="on">
            <action>maincpu.mw@014A = 01E4</action> <!-- ram/rom check -->
            <action>maincpu.mw@020C = 0010</action> <!-- wait -->
        </script>
        <script state="off">
            <action>maincpu.mw@014A = 0158</action>
            <action>maincpu.mw@020C = F310</action>
        </script>
    </cheat>

</mamecheat>
ambushh.xml

Code: Select all

<!-- Ambush (hack?) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mb@19B7 = C9</action> <!-- objects -->
            <action>maincpu.mb@4AA6 = 18</action> <!-- course out [side] (take off) -->
            <action>maincpu.mb@4F56 = 18</action> <!-- course out [front] (take off) -->
            <action>maincpu.mb@7A12 = 18</action> <!-- slow speed (landing) -->
            <action>maincpu.mb@7A53 = 00</action> <!-- fast speed (landing) -->
            <action>maincpu.mb@7A5A = 00</action> <!-- course out (landing) -->
        </script>
        <script state="off">
            <action>maincpu.mb@19B7 = D8</action>
            <action>maincpu.mb@4AA6 = 38</action>
            <action>maincpu.mb@4F56 = 30</action>
            <action>maincpu.mb@7A12 = 30</action>
            <action>maincpu.mb@7A53 = D4</action>
            <action>maincpu.mb@7A5A = CD</action>
        </script>
    </cheat>

    <cheat desc="rapid fire">
        <script state="on">
            <action>maincpu.mw@362B = 1F18</action>
        </script>
        <script state="off">
            <action>maincpu.mw@362B = C8A7</action>
        </script>
    </cheat>

    <cheat desc="easy take off/landing">
        <script state="on">
            <action>maincpu.mw@48F2 = 37AF</action> <!-- position -->
            <action>maincpu.mw@4A45 = 8780</action> <!-- speed -->
        </script>
        <script state="run">
            <action>maincpu.pq@8780 = 323D0B20A786003A</action>
            <action>maincpu.pq@8788 = 850232842C328428</action>
            <action>maincpu.pq@8790 = 0D2803FE84273AC9</action>
            <action>maincpu.pq@8798 = 842C32842832FF3E</action>
            <action>maincpu.pq@87A0 = 2832AFC9850232AF</action>
            <action>maincpu.pq@87A8 = C9850232842C3284</action>
            <!--
            8780 | 3A 00 86 : ld   a,($8600) // check current scene
            8783 | A7       : and  a
            8784 | 20 0B    : jr   nz,$8791
            8786 | 3D       : dec  a         // max speed
            8787 | 32 28 84 : ld   ($8428),a
            878A | 32 2C 84 : ld   ($842C),a
            878D | 32 02 85 : ld   ($8502),a
            8790 | C9       : ret
            8791 | 3A 27 84 : ld   a,($8427) // check landing state
            8794 | FE 03    : cp   $03
            8796 | 28 0D    : jr   z,$87A5
            8798 | 3E FF    : ld   a,$FF     // middle speed
            879A | 32 28 84 : ld   ($8428),a
            879D | 32 2C 84 : ld   ($842C),a
            87A0 | AF       : xor  a
            87A1 | 32 02 85 : ld   ($8502),a
            87A4 | C9       : ret
            87A5 | AF       : xor  a         // min speed
            87A6 | 32 28 84 : ld   ($8428),a
            87A9 | 32 2C 84 : ld   ($842C),a
            87AC | 32 02 85 : ld   ($8502),a
            87AF | C9       : ret
            -->
        </script>
        <script state="off">
            <action>maincpu.mw@48F2 = 40FE            </action>
            <action>maincpu.mw@4A45 = 4700            </action>
            <action>maincpu.pq@8780 = 0000000000000000</action>
            <action>maincpu.pq@8788 = 0000000000000000</action>
            <action>maincpu.pq@8790 = 0000000000000000</action>
            <action>maincpu.pq@8798 = 0000000000000000</action>
            <action>maincpu.pq@87A0 = 0000000000000000</action>
            <action>maincpu.pq@87A8 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="timer speed">
        <parameter>
            <item value="0xFF">01 (slow)</item>
            <item value="0x80">02       </item>
            <item value="0x40">03       </item>
            <item value="0x20">04       </item>
            <item value="0x01">05 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.mb@4D38 = param</action>
        </script>
        <script state="off">
            <action>maincpu.mb@4D38 = 15</action>
        </script>
    </cheat>

    <cheat desc="fuel speed">
        <parameter>
            <item value="0xFF3E">01 (slow)</item>
            <item value="0x803E">02       </item>
            <item value="0x403E">03       </item>
            <item value="0x203E">04       </item>
            <item value="0x013E">05 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.mw@4DA1 = param</action>
        </script>
        <script state="off">
            <action>maincpu.mw@4DA1 = 44ED</action>
        </script>
    </cheat>

    <cheat desc="reverse control">
        <script state="on">
            <action>maincpu.mw@34AA = 3574</action> <!-- up -->
            <action>maincpu.mw@34B1 = 3599</action> <!-- down -->
            <action>maincpu.mw@4A37 = 4600</action> <!-- up (take-off) -->
            <action>maincpu.mw@4A42 = 4E00</action> <!-- down (take-off) -->
        </script>
        <script state="off">
            <action>maincpu.mw@34AA = 3599</action>
            <action>maincpu.mw@34B1 = 3574</action>
            <action>maincpu.mw@4A37 = 4E00</action>
            <action>maincpu.mw@4A42 = 4600</action>
        </script>
    </cheat>

    <cheat desc="skip ram/rom check">
        <script state="on">
            <action>maincpu.mw@014A = 01E4</action> <!-- ram/rom check -->
            <action>maincpu.mw@020C = 0010</action> <!-- wait -->
        </script>
        <script state="off">
            <action>maincpu.mw@014A = 0158</action>
            <action>maincpu.mw@020C = F310</action>
        </script>
    </cheat>

</mamecheat>
ambushj.xml

Code: Select all

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

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mb@1993 = C9</action> <!-- objects -->
            <action>maincpu.mb@4AA0 = 18</action> <!-- course out [side] (take off) -->
            <action>maincpu.mb@4F50 = 18</action> <!-- course out [front] (take off) -->
            <action>maincpu.mb@7C89 = 18</action> <!-- slow speed (landing) -->
            <action>maincpu.mb@7CCA = 00</action> <!-- fast speed (landing) -->
            <action>maincpu.mb@7CD1 = 00</action> <!-- course out (landing) -->
        </script>
        <script state="off">
            <action>maincpu.mb@1993 = D8</action>
            <action>maincpu.mb@4AA0 = 38</action>
            <action>maincpu.mb@4F50 = 30</action>
            <action>maincpu.mb@7C89 = 30</action>
            <action>maincpu.mb@7CCA = D4</action>
            <action>maincpu.mb@7CD1 = CD</action>
        </script>
    </cheat>

    <cheat desc="rapid fire">
        <script state="on">
            <action>maincpu.mw@3625 = 1F18</action>
        </script>
        <script state="off">
            <action>maincpu.mw@3625 = C8A7</action>
        </script>
    </cheat>

    <cheat desc="easy take off/landing">
        <script state="on">
            <action>maincpu.mw@48EC = 37AF</action> <!-- position -->
            <action>maincpu.mw@4A3F = 8780</action> <!-- speed -->
        </script>
        <script state="run">
            <action>maincpu.pq@8780 = 323D0B20A786003A</action>
            <action>maincpu.pq@8788 = 8514328436328432</action>
            <action>maincpu.pq@8790 = 0D2803FE84313AC9</action>
            <action>maincpu.pq@8798 = 843632843232FF3E</action>
            <action>maincpu.pq@87A0 = 3232AFC9851432AF</action>
            <action>maincpu.pq@87A8 = C985143284363284</action>
            <!--
            8780 | 3A 00 86 : ld   a,($8600) // check current scene
            8783 | A7       : and  a
            8784 | 20 0B    : jr   nz,$8791
            8786 | 3D       : dec  a         // max speed
            8787 | 32 32 84 : ld   ($8432),a
            878A | 32 36 84 : ld   ($8436),a
            878D | 32 14 85 : ld   ($8514),a
            8790 | C9       : ret
            8791 | 3A 31 84 : ld   a,($8431) // check landing state
            8794 | FE 03    : cp   $03
            8796 | 28 0D    : jr   z,$87A5
            8798 | 3E FF    : ld   a,$FF     // middle speed
            879A | 32 32 84 : ld   ($8432),a
            879D | 32 36 84 : ld   ($8436),a
            87A0 | AF       : xor  a
            87A1 | 32 14 85 : ld   ($8514),a
            87A4 | C9       : ret
            87A5 | AF       : xor  a         // min speed
            87A6 | 32 32 84 : ld   ($8432),a
            87A9 | 32 36 84 : ld   ($8436),a
            87AC | 32 14 85 : ld   ($8514),a
            87AF | C9       : ret
            -->
        </script>
        <script state="off">
            <action>maincpu.mw@48EC = 40FE            </action>
            <action>maincpu.mw@4A3F = 46FA            </action>
            <action>maincpu.pq@8780 = 0000000000000000</action>
            <action>maincpu.pq@8788 = 0000000000000000</action>
            <action>maincpu.pq@8790 = 0000000000000000</action>
            <action>maincpu.pq@8798 = 0000000000000000</action>
            <action>maincpu.pq@87A0 = 0000000000000000</action>
            <action>maincpu.pq@87A8 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="timer speed">
        <parameter>
            <item value="0xFF">01 (slow)</item>
            <item value="0x80">02       </item>
            <item value="0x40">03       </item>
            <item value="0x20">04       </item>
            <item value="0x01">05 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.mb@4D32 = param</action>
        </script>
        <script state="off">
            <action>maincpu.mb@4D32 = 15</action>
        </script>
    </cheat>

    <cheat desc="fuel speed">
        <parameter>
            <item value="0xFF3E">01 (slow)</item>
            <item value="0x803E">02       </item>
            <item value="0x403E">03       </item>
            <item value="0x203E">04       </item>
            <item value="0x013E">05 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.mw@4D9B = param</action>
        </script>
        <script state="off">
            <action>maincpu.mw@4D9B = 44ED</action>
        </script>
    </cheat>

    <cheat desc="reverse control">
        <script state="on">
            <action>maincpu.mw@34A4 = 356E</action> <!-- up -->
            <action>maincpu.mw@34AB = 3593</action> <!-- down -->
            <action>maincpu.mw@4A31 = 4600</action> <!-- up (take-off) -->
            <action>maincpu.mw@4A3C = 4E00</action> <!-- down (take-off) -->
        </script>
        <script state="off">
            <action>maincpu.mw@34A4 = 3593</action>
            <action>maincpu.mw@34AB = 356E</action>
            <action>maincpu.mw@4A31 = 4E00</action>
            <action>maincpu.mw@4A3C = 4600</action>
        </script>
    </cheat>

    <cheat desc="skip ram/rom check">
        <script state="on">
            <action>maincpu.mw@014A = 01E4</action> <!-- ram/rom check -->
            <action>maincpu.mw@020C = 0010</action> <!-- wait -->
        </script>
        <script state="off">
            <action>maincpu.mw@014A = 0158</action>
            <action>maincpu.mw@020C = F310</action>
        </script>
    </cheat>

</mamecheat>
ambushv.xml

Code: Select all

<!-- Ambush (Volt Electronics) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mb@1993 = C9</action> <!-- objects -->
            <action>maincpu.mb@4AA0 = 18</action> <!-- course out [side] (take off) -->
            <action>maincpu.mb@4F50 = 18</action> <!-- course out [front] (take off) -->
            <action>maincpu.mb@7C89 = 18</action> <!-- slow speed (landing) -->
            <action>maincpu.mb@7CCA = 00</action> <!-- fast speed (landing) -->
            <action>maincpu.mb@7CD1 = 00</action> <!-- course out (landing) -->
        </script>
        <script state="off">
            <action>maincpu.mb@1993 = D8</action>
            <action>maincpu.mb@4AA0 = 38</action>
            <action>maincpu.mb@4F50 = 30</action>
            <action>maincpu.mb@7C89 = 30</action>
            <action>maincpu.mb@7CCA = D4</action>
            <action>maincpu.mb@7CD1 = CD</action>
        </script>
    </cheat>

    <cheat desc="rapid fire">
        <script state="on">
            <action>maincpu.mw@3625 = 1F18</action>
        </script>
        <script state="off">
            <action>maincpu.mw@3625 = C8A7</action>
        </script>
    </cheat>

    <cheat desc="easy take off/landing">
        <script state="on">
            <action>maincpu.mw@48EC = 37AF</action> <!-- position -->
            <action>maincpu.mw@4A3F = 8780</action> <!-- speed -->
        </script>
        <script state="run">
            <action>maincpu.pq@8780 = 323D0B20A786003A</action>
            <action>maincpu.pq@8788 = 8514328436328432</action>
            <action>maincpu.pq@8790 = 0D2803FE84313AC9</action>
            <action>maincpu.pq@8798 = 843632843232FF3E</action>
            <action>maincpu.pq@87A0 = 3232AFC9851432AF</action>
            <action>maincpu.pq@87A8 = C985143284363284</action>
            <!--
            8780 | 3A 00 86 : ld   a,($8600) // check current scene
            8783 | A7       : and  a
            8784 | 20 0B    : jr   nz,$8791
            8786 | 3D       : dec  a         // max speed
            8787 | 32 32 84 : ld   ($8432),a
            878A | 32 36 84 : ld   ($8436),a
            878D | 32 14 85 : ld   ($8514),a
            8790 | C9       : ret
            8791 | 3A 31 84 : ld   a,($8431) // check landing state
            8794 | FE 03    : cp   $03
            8796 | 28 0D    : jr   z,$87A5
            8798 | 3E FF    : ld   a,$FF     // middle speed
            879A | 32 32 84 : ld   ($8432),a
            879D | 32 36 84 : ld   ($8436),a
            87A0 | AF       : xor  a
            87A1 | 32 14 85 : ld   ($8514),a
            87A4 | C9       : ret
            87A5 | AF       : xor  a         // min speed
            87A6 | 32 32 84 : ld   ($8432),a
            87A9 | 32 36 84 : ld   ($8436),a
            87AC | 32 14 85 : ld   ($8514),a
            87AF | C9       : ret
            -->
        </script>
        <script state="off">
            <action>maincpu.mw@48EC = 40FE            </action>
            <action>maincpu.mw@4A3F = 46FA            </action>
            <action>maincpu.pq@8780 = 0000000000000000</action>
            <action>maincpu.pq@8788 = 0000000000000000</action>
            <action>maincpu.pq@8790 = 0000000000000000</action>
            <action>maincpu.pq@8798 = 0000000000000000</action>
            <action>maincpu.pq@87A0 = 0000000000000000</action>
            <action>maincpu.pq@87A8 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="timer speed">
        <parameter>
            <item value="0xFF">01 (slow)</item>
            <item value="0x80">02       </item>
            <item value="0x40">03       </item>
            <item value="0x20">04       </item>
            <item value="0x01">05 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.mb@4D32 = param</action>
        </script>
        <script state="off">
            <action>maincpu.mb@4D32 = 15</action>
        </script>
    </cheat>

    <cheat desc="fuel speed">
        <parameter>
            <item value="0xFF3E">01 (slow)</item>
            <item value="0x803E">02       </item>
            <item value="0x403E">03       </item>
            <item value="0x203E">04       </item>
            <item value="0x013E">05 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.mw@4D9B = param</action>
        </script>
        <script state="off">
            <action>maincpu.mw@4D9B = 44ED</action>
        </script>
    </cheat>

    <cheat desc="reverse control">
        <script state="on">
            <action>maincpu.mw@34A4 = 356E</action> <!-- up -->
            <action>maincpu.mw@34AB = 3593</action> <!-- down -->
            <action>maincpu.mw@4A31 = 4600</action> <!-- up (take-off) -->
            <action>maincpu.mw@4A3C = 4E00</action> <!-- down (take-off) -->
        </script>
        <script state="off">
            <action>maincpu.mw@34A4 = 3593</action>
            <action>maincpu.mw@34AB = 356E</action>
            <action>maincpu.mw@4A31 = 4E00</action>
            <action>maincpu.mw@4A3C = 4600</action>
        </script>
    </cheat>

    <cheat desc="skip ram/rom check">
        <script state="on">
            <action>maincpu.mw@014A = 01E4</action> <!-- ram/rom check -->
            <action>maincpu.mw@020C = 0010</action> <!-- wait -->
        </script>
        <script state="off">
            <action>maincpu.mw@014A = 0158</action>
            <action>maincpu.mw@020C = F310</action>
        </script>
    </cheat>

</mamecheat>
  • "easy take off/landing" : Easy take off and landing with variable speed and fixed position. Hold down (take off) or up (landing) key.
  • "reverse control" : This code exchanges up and down without input change.
BTW, I can't create "sound test mode" in this game. Because music/sfx are called by sub routine directly instead of "sound code". So I need to search all "sound parameters" but it's very difficulty.
jman

my wip cheat database back-up (06/01/2025 ver.)
https://u3.getuploader.com/...../download/58
downloadpass : jman2020
Post Reply