[astrof]+ Astro Fighter

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

[astrof]+ Astro Fighter

Post by jman »

astrof.xml

Code: Select all

<!-- Astro Fighter (set 1) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mw@DF1D = 0CB0</action> <!-- bullet -->
            <action>maincpu.mw@E55E = 16B0</action> <!-- meteorite -->
            <action>maincpu.mw@E95D = 29B0</action> <!-- enemy -->
        </script>
        <script state="off">
            <action>maincpu.mw@DF1D = 12A5</action>
            <action>maincpu.mw@E55E = 14A5</action>
            <action>maincpu.mw@E95D = 00A9</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.mb@DC2E = 70</action>
        </script>
        <script state="off">
            <action>maincpu.mb@DC2E = 16</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@DBD3 = EAFDE020        </action> <!-- right -->
            <action>maincpu.md@DBE7 = EAFDE820        </action> <!-- left -->
            <action>maincpu.mq@FDE0 = 60808500691880A5</action>
            <action>maincpu.mq@FDE8 = A9808500E93880A5</action>
            <action>maincpu.mq@FDF0 = 0000000000006019</action>
            <!--
            FDE0 | A5 80 : lda $80  // right
            FDE2 | 18    : clc
            FDE3 | 69 xx : adc #$xx
            FDE5 | 85 80 : sta $80
            FDE7 | 60    : rts
            FDE8 | A5 80 : lda $80  // left
            FDEA | 38    : sec
            FDEB | E9 xx : sbc #$xx
            FDED | 85 80 : sta $80
            FDEF | A9 19 : lda #$19
            FDF1 | 60    : rts
            -->
        </script>
        <script state="change">
            <action>maincpu.mb@FDE4 = param</action>
            <action>maincpu.mb@FDEC = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@DBD3 = 80A580E6        </action>
            <action>maincpu.md@DBE7 = 19A980C6        </action>
            <action>maincpu.mq@FDE0 = 0000000000000000</action>
            <action>maincpu.mq@FDE8 = 0000000000000000</action>
            <action>maincpu.mq@FDF0 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="bullet speed (test)">
        <comment>sometimes fuel bar is broken</comment>
        <parameter min="0x01" max="0x05" step="0x01" />
        <script state="on">
            <action>maincpu.md@DC7A = EAFE0020        </action>
            <action>maincpu.mq@FE00 = 60918500EB3891A5</action>
            <!--
            FE00 | A5 91 : lda $91
            FE02 | 38    : sec
            FE03 | EB xx : sbc #$xx
            FE05 | 85 91 : sta $91
            FE07 | 60    : rts
            -->
            <action>maincpu.mb@DC80 = B0</action> <!-- range -->
        </script>
        <script state="change">
            <action>maincpu.mb@FE04 = param     </action>
        </script>
        <script state="off">
            <action>maincpu.md@DC7A = 91A591C6        </action>
            <action>maincpu.mq@FE00 = 0000000000000000</action>
            <action>maincpu.mb@DC80 = D0              </action>
        </script>
    </cheat>

    <cheat desc="fuel 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="on">
            <action>maincpu.md@E829 = D0EA00E9</action>
        </script>
        <script state="change">
            <action>maincpu.pb@007F = 00   </action> <!-- reset fuel timer -->
            <action>maincpu.mb@E82A = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@E829 = D0E848F9</action>
        </script>
    </cheat>

    <cheat desc="no decrease energy by shot">
        <script state="run">
            <action>maincpu.mb@DC44 = A5</action>
        </script>
        <script state="off">
            <action>maincpu.mb@DC44 = C6</action>
        </script>
    </cheat>

</mamecheat>
astrof2.xml

Code: Select all

<!-- Astro Fighter (set 2) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mw@DF1D = 0CB0</action> <!-- bullet -->
            <action>maincpu.mw@E55E = 16B0</action> <!-- meteorite -->
            <action>maincpu.mw@E95D = 29B0</action> <!-- enemy -->
        </script>
        <script state="off">
            <action>maincpu.mw@DF1D = 12A5</action>
            <action>maincpu.mw@E55E = 14A5</action>
            <action>maincpu.mw@E95D = 00A9</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.mb@DC2E = 70</action>
        </script>
        <script state="off">
            <action>maincpu.mb@DC2E = 16</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@DBD3 = EAFDE020        </action> <!-- right -->
            <action>maincpu.md@DBE7 = EAFDE820        </action> <!-- left -->
            <action>maincpu.mq@FDE0 = 60808500691880A5</action>
            <action>maincpu.mq@FDE8 = A9808500E93880A5</action>
            <action>maincpu.mq@FDF0 = 0000000000006019</action>
            <!--
            FDE0 | A5 80 : lda $80  // right
            FDE2 | 18    : clc
            FDE3 | 69 xx : adc #$xx
            FDE5 | 85 80 : sta $80
            FDE7 | 60    : rts
            FDE8 | A5 80 : lda $80  // left
            FDEA | 38    : sec
            FDEB | E9 xx : sbc #$xx
            FDED | 85 80 : sta $80
            FDEF | A9 19 : lda #$19
            FDF1 | 60    : rts
            -->
        </script>
        <script state="change">
            <action>maincpu.mb@FDE4 = param</action>
            <action>maincpu.mb@FDEC = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@DBD3 = 80A580E6        </action>
            <action>maincpu.md@DBE7 = 19A980C6        </action>
            <action>maincpu.mq@FDE0 = 0000000000000000</action>
            <action>maincpu.mq@FDE8 = 0000000000000000</action>
            <action>maincpu.mq@FDF0 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="bullet speed (test)">
        <comment>sometimes fuel bar is broken</comment>
        <parameter min="0x01" max="0x05" step="0x01" />
        <script state="on">
            <action>maincpu.md@DC7A = EAFE0020        </action>
            <action>maincpu.mq@FE00 = 60918500EB3891A5</action>
            <!--
            FE00 | A5 91 : lda $91
            FE02 | 38    : sec
            FE03 | EB xx : sbc #$xx
            FE05 | 85 91 : sta $91
            FE07 | 60    : rts
            -->
            <action>maincpu.mb@DC80 = B0</action> <!-- range -->
        </script>
        <script state="change">
            <action>maincpu.mb@FE04 = param     </action>
        </script>
        <script state="off">
            <action>maincpu.md@DC7A = 91A591C6        </action>
            <action>maincpu.mq@FE00 = 0000000000000000</action>
            <action>maincpu.mb@DC80 = D0              </action>
        </script>
    </cheat>

    <cheat desc="fuel 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="on">
            <action>maincpu.md@E829 = D0EA00E9</action>
        </script>
        <script state="change">
            <action>maincpu.pb@007F = 00   </action> <!-- reset fuel timer -->
            <action>maincpu.mb@E82A = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@E829 = D0E848F9</action>
        </script>
    </cheat>

    <cheat desc="no decrease energy by shot">
        <script state="run">
            <action>maincpu.mb@DC44 = A5</action>
        </script>
        <script state="off">
            <action>maincpu.mb@DC44 = C6</action>
        </script>
    </cheat>

</mamecheat>
astrof3.xml

Code: Select all

<!-- Astro Fighter (set 3) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mw@DF1D = 0CB0</action> <!-- bullet -->
            <action>maincpu.mw@E55E = 16B0</action> <!-- meteorite -->
            <action>maincpu.mw@E95D = 29B0</action> <!-- enemy -->
        </script>
        <script state="off">
            <action>maincpu.mw@DF1D = 12A5</action>
            <action>maincpu.mw@E55E = 14A5</action>
            <action>maincpu.mw@E95D = 00A9</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.mb@DC2E = 70</action>
        </script>
        <script state="off">
            <action>maincpu.mb@DC2E = 16</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@DBD3 = EAFDE020        </action> <!-- right -->
            <action>maincpu.md@DBE7 = EAFDE820        </action> <!-- left -->
            <action>maincpu.mq@FDE0 = 60808500691880A5</action>
            <action>maincpu.mq@FDE8 = A9808500E93880A5</action>
            <action>maincpu.mq@FDF0 = 0000000000006019</action>
            <!--
            FDE0 | A5 80 : lda $80  // right
            FDE2 | 18    : clc
            FDE3 | 69 xx : adc #$xx
            FDE5 | 85 80 : sta $80
            FDE7 | 60    : rts
            FDE8 | A5 80 : lda $80  // left
            FDEA | 38    : sec
            FDEB | E9 xx : sbc #$xx
            FDED | 85 80 : sta $80
            FDEF | A9 19 : lda #$19
            FDF1 | 60    : rts
            -->
        </script>
        <script state="change">
            <action>maincpu.mb@FDE4 = param</action>
            <action>maincpu.mb@FDEC = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@DBD3 = 80A580E6        </action>
            <action>maincpu.md@DBE7 = 19A980C6        </action>
            <action>maincpu.mq@FDE0 = 0000000000000000</action>
            <action>maincpu.mq@FDE8 = 0000000000000000</action>
            <action>maincpu.mq@FDF0 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="bullet speed (test)">
        <comment>sometimes fuel bar is broken</comment>
        <parameter min="0x01" max="0x05" step="0x01" />
        <script state="on">
            <action>maincpu.md@DC7A = EAFE0020        </action>
            <action>maincpu.mq@FE00 = 60918500EB3891A5</action>
            <!--
            FE00 | A5 91 : lda $91
            FE02 | 38    : sec
            FE03 | EB xx : sbc #$xx
            FE05 | 85 91 : sta $91
            FE07 | 60    : rts
            -->
            <action>maincpu.mb@DC80 = B0</action> <!-- range -->
        </script>
        <script state="change">
            <action>maincpu.mb@FE04 = param     </action>
        </script>
        <script state="off">
            <action>maincpu.md@DC7A = 91A591C6        </action>
            <action>maincpu.mq@FE00 = 0000000000000000</action>
            <action>maincpu.mb@DC80 = D0              </action>
        </script>
    </cheat>

    <cheat desc="fuel 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="on">
            <action>maincpu.md@E829 = D0EA00E9</action>
        </script>
        <script state="change">
            <action>maincpu.pb@007F = 00   </action> <!-- reset fuel timer -->
            <action>maincpu.mb@E82A = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@E829 = D0E848F9</action>
        </script>
    </cheat>

    <cheat desc="no decrease energy by shot">
        <script state="run">
            <action>maincpu.mb@DC44 = A5</action>
        </script>
        <script state="off">
            <action>maincpu.mb@DC44 = C6</action>
        </script>
    </cheat>

</mamecheat>
astroft.xml. This set is added in 0.261.

Code: Select all

<!-- Astro Fighter (Taito) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mw@DF72 = 0CB0</action> <!-- bullet -->
            <action>maincpu.mw@E5BE = 16B0</action> <!-- meteorite -->
            <action>maincpu.mw@EA83 = 29B0</action> <!-- enemy -->
        </script>
        <script state="off">
            <action>maincpu.mw@DF72 = 12A5</action>
            <action>maincpu.mw@E5BE = 14A5</action>
            <action>maincpu.mw@EA83 = 00A9</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.mb@DC8C = 70</action>
        </script>
        <script state="off">
            <action>maincpu.mb@DC8C = 16</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@DC31 = EAC00020        </action> <!-- right -->
            <action>maincpu.md@DC45 = EAC00820        </action> <!-- left -->
            <action>maincpu.mq@C000 = 60808500691880A5</action>
            <action>maincpu.mq@C008 = A9808500E93880A5</action>
            <action>maincpu.mq@C010 = 0000000000006019</action>
            <!--
            C000 | A5 80 : lda $80  // right
            C002 | 18    : clc
            C003 | 69 xx : adc #$xx
            C005 | 85 80 : sta $80
            C007 | 60    : rts
            C008 | A5 80 : lda $80  // left
            C00A | 38    : sec
            C00B | E9 xx : sbc #$xx
            C00D | 85 80 : sta $80
            C00F | A9 19 : lda #$19
            C011 | 60    : rts
            -->
        </script>
        <script state="change">
            <action>maincpu.mb@C004 = param</action>
            <action>maincpu.mb@C00C = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@DC31 = 80A580E6        </action>
            <action>maincpu.md@DC45 = 19A980C6        </action>
            <action>maincpu.mq@C000 = 0000000000000000</action>
            <action>maincpu.mq@C008 = 0000000000000000</action>
            <action>maincpu.mq@C010 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="bullet speed (test)">
        <comment>sometimes fuel bar is broken</comment>
        <parameter min="0x01" max="0x05" step="0x01" />
        <script state="on">
            <action>maincpu.md@DCD8 = EAC02020        </action>
            <action>maincpu.mq@C020 = 60918500EB3891A5</action>
            <!--
            C020 | A5 91 : lda $91
            C022 | 38    : sec
            C023 | EB xx : sbc #$xx
            C025 | 85 91 : sta $91
            C027 | 60    : rts
            -->
            <action>maincpu.mb@DCDE = B0</action> <!-- range -->
        </script>
        <script state="change">
            <action>maincpu.mb@C024 = param     </action>
        </script>
        <script state="off">
            <action>maincpu.md@DCD8 = 91A591C6        </action>
            <action>maincpu.mq@C020 = 0000000000000000</action>
            <action>maincpu.mb@DCDE = D0              </action>
        </script>
    </cheat>

    <cheat desc="fuel 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="on">
            <action>maincpu.md@E94F = D0EA00E9</action>
        </script>
        <script state="change">
            <action>maincpu.pb@007F = 00   </action> <!-- reset fuel timer -->
            <action>maincpu.mb@E950 = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@E94F = D0E96EF9</action>
        </script>
    </cheat>

    <cheat desc="no decrease energy by shot">
        <script state="run">
            <action>maincpu.mb@DCA2 = A5</action>
        </script>
        <script state="off">
            <action>maincpu.mb@DCA2 = C6</action>
        </script>
    </cheat>

</mamecheat>
astroff.xml

Code: Select all

<!-- Astro Fighter (Famaresa bootleg, set 1) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mw@DF72 = 0CB0</action> <!-- bullet -->
            <action>maincpu.mw@E5BE = 16B0</action> <!-- meteorite -->
            <action>maincpu.mw@EA83 = 29B0</action> <!-- enemy -->
        </script>
        <script state="off">
            <action>maincpu.mw@DF72 = 12A5</action>
            <action>maincpu.mw@E5BE = 14A5</action>
            <action>maincpu.mw@EA83 = 00A9</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.mb@DC8C = 70</action>
        </script>
        <script state="off">
            <action>maincpu.mb@DC8C = 16</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@DC31 = EAC00020        </action> <!-- right -->
            <action>maincpu.md@DC45 = EAC00820        </action> <!-- left -->
            <action>maincpu.mq@C000 = 60808500691880A5</action>
            <action>maincpu.mq@C008 = A9808500E93880A5</action>
            <action>maincpu.mq@C010 = 0000000000006019</action>
            <!--
            C000 | A5 80 : lda $80  // right
            C002 | 18    : clc
            C003 | 69 xx : adc #$xx
            C005 | 85 80 : sta $80
            C007 | 60    : rts
            C008 | A5 80 : lda $80  // left
            C00A | 38    : sec
            C00B | E9 xx : sbc #$xx
            C00D | 85 80 : sta $80
            C00F | A9 19 : lda #$19
            C011 | 60    : rts
            -->
        </script>
        <script state="change">
            <action>maincpu.mb@C004 = param</action>
            <action>maincpu.mb@C00C = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@DC31 = 80A580E6        </action>
            <action>maincpu.md@DC45 = 19A980C6        </action>
            <action>maincpu.mq@C000 = 0000000000000000</action>
            <action>maincpu.mq@C008 = 0000000000000000</action>
            <action>maincpu.mq@C010 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="bullet speed (test)">
        <comment>sometimes fuel bar is broken</comment>
        <parameter min="0x01" max="0x05" step="0x01" />
        <script state="on">
            <action>maincpu.md@DCD8 = EAC02020        </action>
            <action>maincpu.mq@C020 = 60918500EB3891A5</action>
            <!--
            C020 | A5 91 : lda $91
            C022 | 38    : sec
            C023 | EB xx : sbc #$xx
            C025 | 85 91 : sta $91
            C027 | 60    : rts
            -->
            <action>maincpu.mb@DCDE = B0</action> <!-- range -->
        </script>
        <script state="change">
            <action>maincpu.mb@C024 = param     </action>
        </script>
        <script state="off">
            <action>maincpu.md@DCD8 = 91A591C6        </action>
            <action>maincpu.mq@C020 = 0000000000000000</action>
            <action>maincpu.mb@DCDE = D0              </action>
        </script>
    </cheat>

    <cheat desc="fuel 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="on">
            <action>maincpu.md@E94F = D0EA00E9</action>
        </script>
        <script state="change">
            <action>maincpu.pb@007F = 00   </action> <!-- reset fuel timer -->
            <action>maincpu.mb@E950 = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@E94F = D0E96EF9</action>
        </script>
    </cheat>

    <cheat desc="no decrease energy by shot">
        <script state="run">
            <action>maincpu.mb@DCA2 = A5</action>
        </script>
        <script state="off">
            <action>maincpu.mb@DCA2 = C6</action>
        </script>
    </cheat>

</mamecheat>
astroff2.xml

Code: Select all

<!-- Astro Fighter (Famaresa bootleg, set 2) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mw@DF72 = 0CB0</action> <!-- bullet -->
            <action>maincpu.mw@E5BE = 16B0</action> <!-- meteorite -->
            <action>maincpu.mw@EA83 = 29B0</action> <!-- enemy -->
        </script>
        <script state="off">
            <action>maincpu.mw@DF72 = 12A5</action>
            <action>maincpu.mw@E5BE = 14A5</action>
            <action>maincpu.mw@EA83 = 00A9</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.mb@DC8C = 70</action>
        </script>
        <script state="off">
            <action>maincpu.mb@DC8C = 16</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@DC31 = EAC00020        </action> <!-- right -->
            <action>maincpu.md@DC45 = EAC00820        </action> <!-- left -->
            <action>maincpu.mq@C000 = 60808500691880A5</action>
            <action>maincpu.mq@C008 = A9808500E93880A5</action>
            <action>maincpu.mq@C010 = 0000000000006019</action>
            <!--
            C000 | A5 80 : lda $80  // right
            C002 | 18    : clc
            C003 | 69 xx : adc #$xx
            C005 | 85 80 : sta $80
            C007 | 60    : rts
            C008 | A5 80 : lda $80  // left
            C00A | 38    : sec
            C00B | E9 xx : sbc #$xx
            C00D | 85 80 : sta $80
            C00F | A9 19 : lda #$19
            C011 | 60    : rts
            -->
        </script>
        <script state="change">
            <action>maincpu.mb@C004 = param</action>
            <action>maincpu.mb@C00C = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@DC31 = 80A580E6        </action>
            <action>maincpu.md@DC45 = 19A980C6        </action>
            <action>maincpu.mq@C000 = 0000000000000000</action>
            <action>maincpu.mq@C008 = 0000000000000000</action>
            <action>maincpu.mq@C010 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="bullet speed (test)">
        <comment>sometimes fuel bar is broken</comment>
        <parameter min="0x01" max="0x05" step="0x01" />
        <script state="on">
            <action>maincpu.md@DCD8 = EAC02020        </action>
            <action>maincpu.mq@C020 = 60918500EB3891A5</action>
            <!--
            C020 | A5 91 : lda $91
            C022 | 38    : sec
            C023 | EB xx : sbc #$xx
            C025 | 85 91 : sta $91
            C027 | 60    : rts
            -->
            <action>maincpu.mb@DCDE = B0</action> <!-- range -->
        </script>
        <script state="change">
            <action>maincpu.mb@C024 = param     </action>
        </script>
        <script state="off">
            <action>maincpu.md@DCD8 = 91A591C6        </action>
            <action>maincpu.mq@C020 = 0000000000000000</action>
            <action>maincpu.mb@DCDE = D0              </action>
        </script>
    </cheat>

    <cheat desc="fuel 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="on">
            <action>maincpu.md@E94F = D0EA00E9</action>
        </script>
        <script state="change">
            <action>maincpu.pb@007F = 00   </action> <!-- reset fuel timer -->
            <action>maincpu.mb@E950 = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@E94F = D0E96EF9</action>
        </script>
    </cheat>

    <cheat desc="no decrease energy by shot">
        <script state="run">
            <action>maincpu.mb@DCA2 = A5</action>
        </script>
        <script state="off">
            <action>maincpu.mb@DCA2 = C6</action>
        </script>
    </cheat>

</mamecheat>
abattle.xml

Code: Select all

<!-- Astro Battle (set 1) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mw@DF72 = 0CB0</action> <!-- bullet -->
            <action>maincpu.mw@E5BE = 16B0</action> <!-- meteorite -->
            <action>maincpu.mw@EA83 = 29B0</action> <!-- enemy -->
        </script>
        <script state="off">
            <action>maincpu.mw@DF72 = 12A5</action>
            <action>maincpu.mw@E5BE = 14A5</action>
            <action>maincpu.mw@EA83 = 00A9</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.mb@DC8C = 70</action>
        </script>
        <script state="off">
            <action>maincpu.mb@DC8C = 16</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@DC31 = EAC00020        </action> <!-- right -->
            <action>maincpu.md@DC45 = EAC00820        </action> <!-- left -->
            <action>maincpu.mq@C000 = 60808500691880A5</action>
            <action>maincpu.mq@C008 = A9808500E93880A5</action>
            <action>maincpu.mq@C010 = 0000000000006019</action>
            <!--
            C000 | A5 80 : lda $80  // right
            C002 | 18    : clc
            C003 | 69 xx : adc #$xx
            C005 | 85 80 : sta $80
            C007 | 60    : rts
            C008 | A5 80 : lda $80  // left
            C00A | 38    : sec
            C00B | E9 xx : sbc #$xx
            C00D | 85 80 : sta $80
            C00F | A9 19 : lda #$19
            C011 | 60    : rts
            -->
        </script>
        <script state="change">
            <action>maincpu.mb@C004 = param</action>
            <action>maincpu.mb@C00C = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@DC31 = 80A580E6        </action>
            <action>maincpu.md@DC45 = 19A980C6        </action>
            <action>maincpu.mq@C000 = 0000000000000000</action>
            <action>maincpu.mq@C008 = 0000000000000000</action>
            <action>maincpu.mq@C010 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="bullet speed (test)">
        <comment>sometimes fuel bar is broken</comment>
        <parameter min="0x01" max="0x05" step="0x01" />
        <script state="on">
            <action>maincpu.md@DCD8 = EAC02020        </action>
            <action>maincpu.mq@C020 = 60918500EB3891A5</action>
            <!--
            C020 | A5 91 : lda $91
            C022 | 38    : sec
            C023 | EB xx : sbc #$xx
            C025 | 85 91 : sta $91
            C027 | 60    : rts
            -->
            <action>maincpu.mb@DCDE = B0</action> <!-- range -->
        </script>
        <script state="change">
            <action>maincpu.mb@C024 = param     </action>
        </script>
        <script state="off">
            <action>maincpu.md@DCD8 = 91A591C6        </action>
            <action>maincpu.mq@C020 = 0000000000000000</action>
            <action>maincpu.mb@DCDE = D0              </action>
        </script>
    </cheat>

    <cheat desc="fuel 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="on">
            <action>maincpu.md@E94F = D0EA00E9</action>
        </script>
        <script state="change">
            <action>maincpu.pb@007F = 00   </action> <!-- reset fuel timer -->
            <action>maincpu.mb@E950 = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@E94F = D0F5C320</action>
        </script>
    </cheat>

    <cheat desc="no decrease energy by shot">
        <script state="run">
            <action>maincpu.mw@DCA3 = F309</action>
        </script>
        <script state="off">
            <action>maincpu.mw@DCA3 = F2E8</action>
        </script>
    </cheat>

</mamecheat>
abattle2.xml

Code: Select all

<!-- Astro Battle (set 2) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mw@DF72 = 0CB0</action> <!-- bullet -->
            <action>maincpu.mw@E5BE = 16B0</action> <!-- meteorite -->
            <action>maincpu.mw@EA83 = 29B0</action> <!-- enemy -->
        </script>
        <script state="off">
            <action>maincpu.mw@DF72 = 12A5</action>
            <action>maincpu.mw@E5BE = 14A5</action>
            <action>maincpu.mw@EA83 = 00A9</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.mb@DC8C = 70</action>
        </script>
        <script state="off">
            <action>maincpu.mb@DC8C = 16</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@DC31 = EAC00020        </action> <!-- right -->
            <action>maincpu.md@DC45 = EAC00820        </action> <!-- left -->
            <action>maincpu.mq@C000 = 60808500691880A5</action>
            <action>maincpu.mq@C008 = A9808500E93880A5</action>
            <action>maincpu.mq@C010 = 0000000000006019</action>
            <!--
            C000 | A5 80 : lda $80  // right
            C002 | 18    : clc
            C003 | 69 xx : adc #$xx
            C005 | 85 80 : sta $80
            C007 | 60    : rts
            C008 | A5 80 : lda $80  // left
            C00A | 38    : sec
            C00B | E9 xx : sbc #$xx
            C00D | 85 80 : sta $80
            C00F | A9 19 : lda #$19
            C011 | 60    : rts
            -->
        </script>
        <script state="change">
            <action>maincpu.mb@C004 = param</action>
            <action>maincpu.mb@C00C = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@DC31 = 80A580E6        </action>
            <action>maincpu.md@DC45 = 19A980C6        </action>
            <action>maincpu.mq@C000 = 0000000000000000</action>
            <action>maincpu.mq@C008 = 0000000000000000</action>
            <action>maincpu.mq@C010 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="bullet speed (test)">
        <comment>sometimes fuel bar is broken</comment>
        <parameter min="0x01" max="0x05" step="0x01" />
        <script state="on">
            <action>maincpu.md@DCD8 = EAC02020        </action>
            <action>maincpu.mq@C020 = 60918500EB3891A5</action>
            <!--
            C020 | A5 91 : lda $91
            C022 | 38    : sec
            C023 | EB xx : sbc #$xx
            C025 | 85 91 : sta $91
            C027 | 60    : rts
            -->
            <action>maincpu.mb@DCDE = B0</action> <!-- range -->
        </script>
        <script state="change">
            <action>maincpu.mb@C024 = param     </action>
        </script>
        <script state="off">
            <action>maincpu.md@DCD8 = 91A591C6        </action>
            <action>maincpu.mq@C020 = 0000000000000000</action>
            <action>maincpu.mb@DCDE = D0              </action>
        </script>
    </cheat>

    <cheat desc="fuel 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="on">
            <action>maincpu.md@E94F = D0EA00E9</action>
        </script>
        <script state="change">
            <action>maincpu.pb@007F = 00   </action> <!-- reset fuel timer -->
            <action>maincpu.mb@E950 = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@E94F = D0F5C320</action>
        </script>
    </cheat>

    <cheat desc="no decrease energy by shot">
        <script state="run">
            <action>maincpu.mw@DCA3 = F309</action>
        </script>
        <script state="off">
            <action>maincpu.mw@DCA3 = F2E8</action>
        </script>
    </cheat>

</mamecheat>
afire.xml

Code: Select all

<!-- Astro Fire -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mw@DF72 = 0CB0</action> <!-- bullet -->
            <action>maincpu.mw@E5BE = 16B0</action> <!-- meteorite -->
            <action>maincpu.mw@EA83 = 29B0</action> <!-- enemy -->
        </script>
        <script state="off">
            <action>maincpu.mw@DF72 = 12A5</action>
            <action>maincpu.mw@E5BE = 14A5</action>
            <action>maincpu.mw@EA83 = 00A9</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.mb@DC8C = 70</action>
        </script>
        <script state="off">
            <action>maincpu.mb@DC8C = 16</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@DC31 = EAC00020        </action> <!-- right -->
            <action>maincpu.md@DC45 = EAC00820        </action> <!-- left -->
            <action>maincpu.mq@C000 = 60808500691880A5</action>
            <action>maincpu.mq@C008 = A9808500E93880A5</action>
            <action>maincpu.mq@C010 = 0000000000006019</action>
            <!--
            C000 | A5 80 : lda $80  // right
            C002 | 18    : clc
            C003 | 69 xx : adc #$xx
            C005 | 85 80 : sta $80
            C007 | 60    : rts
            C008 | A5 80 : lda $80  // left
            C00A | 38    : sec
            C00B | E9 xx : sbc #$xx
            C00D | 85 80 : sta $80
            C00F | A9 19 : lda #$19
            C011 | 60    : rts
            -->
        </script>
        <script state="change">
            <action>maincpu.mb@C004 = param</action>
            <action>maincpu.mb@C00C = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@DC31 = 80A580E6        </action>
            <action>maincpu.md@DC45 = 19A980C6        </action>
            <action>maincpu.mq@C000 = 0000000000000000</action>
            <action>maincpu.mq@C008 = 0000000000000000</action>
            <action>maincpu.mq@C010 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="bullet speed (test)">
        <comment>sometimes fuel bar is broken</comment>
        <parameter min="0x01" max="0x05" step="0x01" />
        <script state="on">
            <action>maincpu.md@DCD8 = EAC02020        </action>
            <action>maincpu.mq@C020 = 60918500EB3891A5</action>
            <!--
            C020 | A5 91 : lda $91
            C022 | 38    : sec
            C023 | EB xx : sbc #$xx
            C025 | 85 91 : sta $91
            C027 | 60    : rts
            -->
            <action>maincpu.mb@DCDE = B0</action> <!-- range -->
        </script>
        <script state="change">
            <action>maincpu.mb@C024 = param     </action>
        </script>
        <script state="off">
            <action>maincpu.md@DCD8 = 91A591C6        </action>
            <action>maincpu.mq@C020 = 0000000000000000</action>
            <action>maincpu.mb@DCDE = D0              </action>
        </script>
    </cheat>

    <cheat desc="fuel 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="on">
            <action>maincpu.md@E94F = D0EA00E9</action>
        </script>
        <script state="change">
            <action>maincpu.pb@007F = 00   </action> <!-- reset fuel timer -->
            <action>maincpu.mb@E950 = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@E94F = D0F5C320</action>
        </script>
    </cheat>

    <cheat desc="no decrease energy by shot">
        <script state="run">
            <action>maincpu.mw@DCA3 = F309</action>
        </script>
        <script state="off">
            <action>maincpu.mw@DCA3 = F2E8</action>
        </script>
    </cheat>

</mamecheat>
asterion.xml

Code: Select all

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

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mw@DF72 = 0CB0</action> <!-- bullet -->
            <action>maincpu.mw@E5BE = 16B0</action> <!-- meteorite -->
            <action>maincpu.mw@EA83 = 29B0</action> <!-- enemy -->
        </script>
        <script state="off">
            <action>maincpu.mw@DF72 = 12A5</action>
            <action>maincpu.mw@E5BE = 14A5</action>
            <action>maincpu.mw@EA83 = 00A9</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.mb@DC8C = 70</action>
        </script>
        <script state="off">
            <action>maincpu.mb@DC8C = 16</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@DC31 = EAC00020        </action> <!-- right -->
            <action>maincpu.md@DC45 = EAC00820        </action> <!-- left -->
            <action>maincpu.mq@C000 = 60808500691880A5</action>
            <action>maincpu.mq@C008 = A9808500E93880A5</action>
            <action>maincpu.mq@C010 = 0000000000006019</action>
            <!--
            C000 | A5 80 : lda $80  // right
            C002 | 18    : clc
            C003 | 69 xx : adc #$xx
            C005 | 85 80 : sta $80
            C007 | 60    : rts
            C008 | A5 80 : lda $80  // left
            C00A | 38    : sec
            C00B | E9 xx : sbc #$xx
            C00D | 85 80 : sta $80
            C00F | A9 19 : lda #$19
            C011 | 60    : rts
            -->
        </script>
        <script state="change">
            <action>maincpu.mb@C004 = param</action>
            <action>maincpu.mb@C00C = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@DC31 = 80A580E6        </action>
            <action>maincpu.md@DC45 = 19A980C6        </action>
            <action>maincpu.mq@C000 = 0000000000000000</action>
            <action>maincpu.mq@C008 = 0000000000000000</action>
            <action>maincpu.mq@C010 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="bullet speed (test)">
        <comment>sometimes fuel bar is broken</comment>
        <parameter min="0x01" max="0x05" step="0x01" />
        <script state="on">
            <action>maincpu.md@DCD8 = EAC02020        </action>
            <action>maincpu.mq@C020 = 60918500EB3891A5</action>
            <!--
            C020 | A5 91 : lda $91
            C022 | 38    : sec
            C023 | EB xx : sbc #$xx
            C025 | 85 91 : sta $91
            C027 | 60    : rts
            -->
            <action>maincpu.mb@DCDE = B0</action> <!-- range -->
        </script>
        <script state="change">
            <action>maincpu.mb@C024 = param     </action>
        </script>
        <script state="off">
            <action>maincpu.md@DCD8 = 91A591C6        </action>
            <action>maincpu.mq@C020 = 0000000000000000</action>
            <action>maincpu.mb@DCDE = D0              </action>
        </script>
    </cheat>

    <cheat desc="fuel 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="on">
            <action>maincpu.md@E94F = D0EA00E9</action>
        </script>
        <script state="change">
            <action>maincpu.pb@007F = 00   </action> <!-- reset fuel timer -->
            <action>maincpu.mb@E950 = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@E94F = D0F5C320</action>
        </script>
    </cheat>

    <cheat desc="no decrease energy by shot">
        <script state="run">
            <action>maincpu.mw@DCA3 = F309</action>
        </script>
        <script state="off">
            <action>maincpu.mw@DCA3 = F2E8</action>
        </script>
    </cheat>

</mamecheat>
jman
Posts: 850
Joined: Tue Dec 01, 2020 1:24 pm

[astrof]+ Astro Fighter

Post by jman »

acombat.xml

Code: Select all

<!-- Astro Combat (newer, CB) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mw@DF72 = 0CB0</action> <!-- bullet -->
            <action>maincpu.mw@E5BE = 16B0</action> <!-- meteorite -->
            <action>maincpu.mw@EA83 = 29B0</action> <!-- enemy -->
        </script>
        <script state="off">
            <action>maincpu.mw@DF72 = 12A5</action>
            <action>maincpu.mw@E5BE = 14A5</action>
            <action>maincpu.mw@EA83 = 00A9</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.mb@DC8C = 70</action>
        </script>
        <script state="off">
            <action>maincpu.mb@DC8C = 16</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@DC31 = EAC00020        </action> <!-- right -->
            <action>maincpu.md@DC45 = EAC00820        </action> <!-- left -->
            <action>maincpu.mq@C000 = 60808500691880A5</action>
            <action>maincpu.mq@C008 = A9808500E93880A5</action>
            <action>maincpu.mq@C010 = 0000000000006019</action>
            <!--
            C000 | A5 80 : lda $80  // right
            C002 | 18    : clc
            C003 | 69 xx : adc #$xx
            C005 | 85 80 : sta $80
            C007 | 60    : rts
            C008 | A5 80 : lda $80  // left
            C00A | 38    : sec
            C00B | E9 xx : sbc #$xx
            C00D | 85 80 : sta $80
            C00F | A9 19 : lda #$19
            C011 | 60    : rts
            -->
        </script>
        <script state="change">
            <action>maincpu.mb@C004 = param</action>
            <action>maincpu.mb@C00C = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@DC31 = 80A580E6        </action>
            <action>maincpu.md@DC45 = 19A980C6        </action>
            <action>maincpu.mq@C000 = 0000000000000000</action>
            <action>maincpu.mq@C008 = 0000000000000000</action>
            <action>maincpu.mq@C010 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="bullet speed (test)">
        <comment>sometimes fuel bar is broken</comment>
        <parameter min="0x01" max="0x05" step="0x01" />
        <script state="on">
            <action>maincpu.md@DCD8 = EAC02020        </action>
            <action>maincpu.mq@C020 = 60918500EB3891A5</action>
            <!--
            C020 | A5 91 : lda $91
            C022 | 38    : sec
            C023 | EB xx : sbc #$xx
            C025 | 85 91 : sta $91
            C027 | 60    : rts
            -->
            <action>maincpu.mb@DCDE = B0</action> <!-- range -->
        </script>
        <script state="change">
            <action>maincpu.mb@C024 = param     </action>
        </script>
        <script state="off">
            <action>maincpu.md@DCD8 = 91A591C6        </action>
            <action>maincpu.mq@C020 = 0000000000000000</action>
            <action>maincpu.mb@DCDE = D0              </action>
        </script>
    </cheat>

    <cheat desc="fuel 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="on">
            <action>maincpu.md@E94F = D0EA00E9</action>
        </script>
        <script state="change">
            <action>maincpu.pb@007F = 00   </action> <!-- reset fuel timer -->
            <action>maincpu.mb@E950 = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@E94F = D0F5C320</action>
        </script>
    </cheat>

    <cheat desc="no decrease energy by shot">
        <script state="run">
            <action>maincpu.mw@DCA3 = F309</action>
        </script>
        <script state="off">
            <action>maincpu.mw@DCA3 = F2E8</action>
        </script>
    </cheat>

</mamecheat>
acombato.xml

Code: Select all

<!-- Astro Combat (older, PZ) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mw@DF72 = 0CB0</action> <!-- bullet -->
            <action>maincpu.mw@E5BE = 16B0</action> <!-- meteorite -->
            <action>maincpu.mw@EA83 = 29B0</action> <!-- enemy -->
        </script>
        <script state="off">
            <action>maincpu.mw@DF72 = 12A5</action>
            <action>maincpu.mw@E5BE = 14A5</action>
            <action>maincpu.mw@EA83 = 00A9</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.mb@DC8C = 70</action>
        </script>
        <script state="off">
            <action>maincpu.mb@DC8C = 16</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@DC31 = EAC00020        </action> <!-- right -->
            <action>maincpu.md@DC45 = EAC00820        </action> <!-- left -->
            <action>maincpu.mq@C000 = 60808500691880A5</action>
            <action>maincpu.mq@C008 = A9808500E93880A5</action>
            <action>maincpu.mq@C010 = 0000000000006019</action>
            <!--
            C000 | A5 80 : lda $80  // right
            C002 | 18    : clc
            C003 | 69 xx : adc #$xx
            C005 | 85 80 : sta $80
            C007 | 60    : rts
            C008 | A5 80 : lda $80  // left
            C00A | 38    : sec
            C00B | E9 xx : sbc #$xx
            C00D | 85 80 : sta $80
            C00F | A9 19 : lda #$19
            C011 | 60    : rts
            -->
        </script>
        <script state="change">
            <action>maincpu.mb@C004 = param</action>
            <action>maincpu.mb@C00C = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@DC31 = 80A580E6        </action>
            <action>maincpu.md@DC45 = 19A980C6        </action>
            <action>maincpu.mq@C000 = 0000000000000000</action>
            <action>maincpu.mq@C008 = 0000000000000000</action>
            <action>maincpu.mq@C010 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="bullet speed (test)">
        <comment>sometimes fuel bar is broken</comment>
        <parameter min="0x01" max="0x05" step="0x01" />
        <script state="on">
            <action>maincpu.md@DCD8 = EAC02020        </action>
            <action>maincpu.mq@C020 = 60918500EB3891A5</action>
            <!--
            C020 | A5 91 : lda $91
            C022 | 38    : sec
            C023 | EB xx : sbc #$xx
            C025 | 85 91 : sta $91
            C027 | 60    : rts
            -->
            <action>maincpu.mb@DCDE = B0</action> <!-- range -->
        </script>
        <script state="change">
            <action>maincpu.mb@C024 = param     </action>
        </script>
        <script state="off">
            <action>maincpu.md@DCD8 = 91A591C6        </action>
            <action>maincpu.mq@C020 = 0000000000000000</action>
            <action>maincpu.mb@DCDE = D0              </action>
        </script>
    </cheat>

    <cheat desc="fuel 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="on">
            <action>maincpu.md@E94F = D0EA00E9</action>
        </script>
        <script state="change">
            <action>maincpu.pb@007F = 00   </action> <!-- reset fuel timer -->
            <action>maincpu.mb@E950 = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@E94F = D0F5C320</action>
        </script>
    </cheat>

    <cheat desc="no decrease energy by shot">
        <script state="run">
            <action>maincpu.mw@DCA3 = F309</action>
        </script>
        <script state="off">
            <action>maincpu.mw@DCA3 = F2E8</action>
        </script>
    </cheat>

</mamecheat>
acombat3.xml

Code: Select all

<!-- Astro Combat (unencrypted) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mw@DF72 = 0CB0</action> <!-- bullet -->
            <action>maincpu.mw@E5BE = 16B0</action> <!-- meteorite -->
            <action>maincpu.mw@EA83 = 29B0</action> <!-- enemy -->
        </script>
        <script state="off">
            <action>maincpu.mw@DF72 = 12A5</action>
            <action>maincpu.mw@E5BE = 14A5</action>
            <action>maincpu.mw@EA83 = 00A9</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.mb@DC8C = 70</action>
        </script>
        <script state="off">
            <action>maincpu.mb@DC8C = 16</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@DC31 = EAC00020        </action> <!-- right -->
            <action>maincpu.md@DC45 = EAC00820        </action> <!-- left -->
            <action>maincpu.mq@C000 = 60808500691880A5</action>
            <action>maincpu.mq@C008 = A9808500E93880A5</action>
            <action>maincpu.mq@C010 = 0000000000006019</action>
            <!--
            C000 | A5 80 : lda $80  // right
            C002 | 18    : clc
            C003 | 69 xx : adc #$xx
            C005 | 85 80 : sta $80
            C007 | 60    : rts
            C008 | A5 80 : lda $80  // left
            C00A | 38    : sec
            C00B | E9 xx : sbc #$xx
            C00D | 85 80 : sta $80
            C00F | A9 19 : lda #$19
            C011 | 60    : rts
            -->
        </script>
        <script state="change">
            <action>maincpu.mb@C004 = param</action>
            <action>maincpu.mb@C00C = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@DC31 = 80A580E6        </action>
            <action>maincpu.md@DC45 = 19A980C6        </action>
            <action>maincpu.mq@C000 = 0000000000000000</action>
            <action>maincpu.mq@C008 = 0000000000000000</action>
            <action>maincpu.mq@C010 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="bullet speed (test)">
        <comment>sometimes fuel bar is broken</comment>
        <parameter min="0x01" max="0x05" step="0x01" />
        <script state="on">
            <action>maincpu.md@DCD8 = EAC02020        </action>
            <action>maincpu.mq@C020 = 60918500EB3891A5</action>
            <!--
            C020 | A5 91 : lda $91
            C022 | 38    : sec
            C023 | EB xx : sbc #$xx
            C025 | 85 91 : sta $91
            C027 | 60    : rts
            -->
            <action>maincpu.mb@DCDE = B0</action> <!-- range -->
        </script>
        <script state="change">
            <action>maincpu.mb@C024 = param     </action>
        </script>
        <script state="off">
            <action>maincpu.md@DCD8 = 91A591C6        </action>
            <action>maincpu.mq@C020 = 0000000000000000</action>
            <action>maincpu.mb@DCDE = D0              </action>
        </script>
    </cheat>

    <cheat desc="fuel 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="on">
            <action>maincpu.md@E94F = D0EA00E9</action>
        </script>
        <script state="change">
            <action>maincpu.pb@007F = 00   </action> <!-- reset fuel timer -->
            <action>maincpu.mb@E950 = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@E94F = D0F5C320</action>
        </script>
    </cheat>

    <cheat desc="no decrease energy by shot">
        <script state="run">
            <action>maincpu.mw@DCA3 = F309</action>
        </script>
        <script state="off">
            <action>maincpu.mw@DCA3 = F2E8</action>
        </script>
    </cheat>

</mamecheat>
acombat4.xml

Code: Select all

<!-- Astro Combat (encrypted) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mw@DF72 = 0CB0</action> <!-- bullet -->
            <action>maincpu.mw@E5BE = 16B0</action> <!-- meteorite -->
            <action>maincpu.mw@EA83 = 29B0</action> <!-- enemy -->
        </script>
        <script state="off">
            <action>maincpu.mw@DF72 = 12A5</action>
            <action>maincpu.mw@E5BE = 14A5</action>
            <action>maincpu.mw@EA83 = 00A9</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.mb@DC8C = 70</action>
        </script>
        <script state="off">
            <action>maincpu.mb@DC8C = 16</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@DC31 = EAC00020        </action> <!-- right -->
            <action>maincpu.md@DC45 = EAC00820        </action> <!-- left -->
            <action>maincpu.mq@C000 = 60808500691880A5</action>
            <action>maincpu.mq@C008 = A9808500E93880A5</action>
            <action>maincpu.mq@C010 = 0000000000006019</action>
            <!--
            C000 | A5 80 : lda $80  // right
            C002 | 18    : clc
            C003 | 69 xx : adc #$xx
            C005 | 85 80 : sta $80
            C007 | 60    : rts
            C008 | A5 80 : lda $80  // left
            C00A | 38    : sec
            C00B | E9 xx : sbc #$xx
            C00D | 85 80 : sta $80
            C00F | A9 19 : lda #$19
            C011 | 60    : rts
            -->
        </script>
        <script state="change">
            <action>maincpu.mb@C004 = param</action>
            <action>maincpu.mb@C00C = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@DC31 = 80A580E6        </action>
            <action>maincpu.md@DC45 = 19A980C6        </action>
            <action>maincpu.mq@C000 = 0000000000000000</action>
            <action>maincpu.mq@C008 = 0000000000000000</action>
            <action>maincpu.mq@C010 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="bullet speed (test)">
        <comment>sometimes fuel bar is broken</comment>
        <parameter min="0x01" max="0x05" step="0x01" />
        <script state="on">
            <action>maincpu.md@DCD8 = EAC02020        </action>
            <action>maincpu.mq@C020 = 60918500EB3891A5</action>
            <!--
            C020 | A5 91 : lda $91
            C022 | 38    : sec
            C023 | EB xx : sbc #$xx
            C025 | 85 91 : sta $91
            C027 | 60    : rts
            -->
            <action>maincpu.mb@DCDE = B0</action> <!-- range -->
        </script>
        <script state="change">
            <action>maincpu.mb@C024 = param     </action>
        </script>
        <script state="off">
            <action>maincpu.md@DCD8 = 91A591C6        </action>
            <action>maincpu.mq@C020 = 0000000000000000</action>
            <action>maincpu.mb@DCDE = D0              </action>
        </script>
    </cheat>

    <cheat desc="fuel 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="on">
            <action>maincpu.md@E94F = D0EA00E9</action>
        </script>
        <script state="change">
            <action>maincpu.pb@007F = 00   </action> <!-- reset fuel timer -->
            <action>maincpu.mb@E950 = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@E94F = D0F5C320</action>
        </script>
    </cheat>

    <cheat desc="no decrease energy by shot">
        <script state="run">
            <action>maincpu.mw@DCA3 = F309</action>
        </script>
        <script state="off">
            <action>maincpu.mw@DCA3 = F2E8</action>
        </script>
    </cheat>

</mamecheat>
strfight.xml

Code: Select all

<!-- Star Fighter (bootleg of Astro Fighter) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mw@DF72 = 0CB0</action> <!-- bullet -->
            <action>maincpu.mw@E5BE = 16B0</action> <!-- meteorite -->
            <action>maincpu.mw@EA83 = 29B0</action> <!-- enemy -->
        </script>
        <script state="off">
            <action>maincpu.mw@DF72 = 12A5</action>
            <action>maincpu.mw@E5BE = 14A5</action>
            <action>maincpu.mw@EA83 = 00A9</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.mb@DC8C = 70</action>
        </script>
        <script state="off">
            <action>maincpu.mb@DC8C = 16</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@DC31 = EAC00020        </action> <!-- right -->
            <action>maincpu.md@DC45 = EAC00820        </action> <!-- left -->
            <action>maincpu.mq@C000 = 60808500691880A5</action>
            <action>maincpu.mq@C008 = A9808500E93880A5</action>
            <action>maincpu.mq@C010 = 0000000000006019</action>
            <!--
            C000 | A5 80 : lda $80  // right
            C002 | 18    : clc
            C003 | 69 xx : adc #$xx
            C005 | 85 80 : sta $80
            C007 | 60    : rts
            C008 | A5 80 : lda $80  // left
            C00A | 38    : sec
            C00B | E9 xx : sbc #$xx
            C00D | 85 80 : sta $80
            C00F | A9 19 : lda #$19
            C011 | 60    : rts
            -->
        </script>
        <script state="change">
            <action>maincpu.mb@C004 = param</action>
            <action>maincpu.mb@C00C = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@DC31 = 80A580E6        </action>
            <action>maincpu.md@DC45 = 19A980C6        </action>
            <action>maincpu.mq@C000 = 0000000000000000</action>
            <action>maincpu.mq@C008 = 0000000000000000</action>
            <action>maincpu.mq@C010 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="bullet speed (test)">
        <comment>sometimes fuel bar is broken</comment>
        <parameter min="0x01" max="0x05" step="0x01" />
        <script state="on">
            <action>maincpu.md@DCD8 = EAC02020        </action>
            <action>maincpu.mq@C020 = 60918500EB3891A5</action>
            <!--
            C020 | A5 91 : lda $91
            C022 | 38    : sec
            C023 | EB xx : sbc #$xx
            C025 | 85 91 : sta $91
            C027 | 60    : rts
            -->
            <action>maincpu.mb@DCDE = B0</action> <!-- range -->
        </script>
        <script state="change">
            <action>maincpu.mb@C024 = param     </action>
        </script>
        <script state="off">
            <action>maincpu.md@DCD8 = 91A591C6        </action>
            <action>maincpu.mq@C020 = 0000000000000000</action>
            <action>maincpu.mb@DCDE = D0              </action>
        </script>
    </cheat>

    <cheat desc="fuel 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="on">
            <action>maincpu.md@E94F = D0EA00E9</action>
        </script>
        <script state="change">
            <action>maincpu.pb@007F = 00   </action> <!-- reset fuel timer -->
            <action>maincpu.mb@E950 = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@E94F = D0F5C320</action>
        </script>
    </cheat>

    <cheat desc="no decrease energy by shot">
        <script state="run">
            <action>maincpu.mw@DCA3 = F309</action>
        </script>
        <script state="off">
            <action>maincpu.mw@DCA3 = F2E8</action>
        </script>
    </cheat>

</mamecheat>
sstarbtl.xml

Code: Select all

<!-- Super Star Battle -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mw@DF72 = 0CB0</action> <!-- bullet -->
            <action>maincpu.mw@E5BE = 16B0</action> <!-- meteorite -->
            <action>maincpu.mw@EA83 = 29B0</action> <!-- enemy -->
        </script>
        <script state="off">
            <action>maincpu.mw@DF72 = 12A5</action>
            <action>maincpu.mw@E5BE = 14A5</action>
            <action>maincpu.mw@EA83 = 00A9</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.mb@DC8C = 70</action>
        </script>
        <script state="off">
            <action>maincpu.mb@DC8C = 16</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@DC31 = EAC00020        </action> <!-- right -->
            <action>maincpu.md@DC45 = EAC00820        </action> <!-- left -->
            <action>maincpu.mq@C000 = 60808500691880A5</action>
            <action>maincpu.mq@C008 = A9808500E93880A5</action>
            <action>maincpu.mq@C010 = 0000000000006019</action>
            <!--
            C000 | A5 80 : lda $80  // right
            C002 | 18    : clc
            C003 | 69 xx : adc #$xx
            C005 | 85 80 : sta $80
            C007 | 60    : rts
            C008 | A5 80 : lda $80  // left
            C00A | 38    : sec
            C00B | E9 xx : sbc #$xx
            C00D | 85 80 : sta $80
            C00F | A9 19 : lda #$19
            C011 | 60    : rts
            -->
        </script>
        <script state="change">
            <action>maincpu.mb@C004 = param</action>
            <action>maincpu.mb@C00C = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@DC31 = 80A580E6        </action>
            <action>maincpu.md@DC45 = 19A980C6        </action>
            <action>maincpu.mq@C000 = 0000000000000000</action>
            <action>maincpu.mq@C008 = 0000000000000000</action>
            <action>maincpu.mq@C010 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="bullet speed (test)">
        <comment>sometimes fuel bar is broken</comment>
        <parameter min="0x01" max="0x05" step="0x01" />
        <script state="on">
            <action>maincpu.md@DCD8 = EAC02020        </action>
            <action>maincpu.mq@C020 = 60918500EB3891A5</action>
            <!--
            C020 | A5 91 : lda $91
            C022 | 38    : sec
            C023 | EB xx : sbc #$xx
            C025 | 85 91 : sta $91
            C027 | 60    : rts
            -->
            <action>maincpu.mb@DCDE = B0</action> <!-- range -->
        </script>
        <script state="change">
            <action>maincpu.mb@C024 = param     </action>
        </script>
        <script state="off">
            <action>maincpu.md@DCD8 = 91A591C6        </action>
            <action>maincpu.mq@C020 = 0000000000000000</action>
            <action>maincpu.mb@DCDE = D0              </action>
        </script>
    </cheat>

    <cheat desc="fuel 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="on">
            <action>maincpu.md@E94F = D0EA00E9</action>
        </script>
        <script state="change">
            <action>maincpu.pb@007F = 00   </action> <!-- reset fuel timer -->
            <action>maincpu.mb@E950 = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@E94F = D0F5C320</action>
        </script>
    </cheat>

    <cheat desc="no decrease energy by shot">
        <script state="run">
            <action>maincpu.mw@DCA3 = F309</action>
        </script>
        <script state="off">
            <action>maincpu.mw@DCA3 = F2E8</action>
        </script>
    </cheat>

</mamecheat>
Post Reply