[nsub]+ N-Sub

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

[nsub]+ N-Sub

Post by jman »

nsub.xml

Code: Select all

<!-- N-Sub (upright) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mb@1370 = 72</action> <!-- mine -->
            <action>maincpu.mb@15CE = 72</action> <!-- bomb -->
            <action>maincpu.mb@1924 = 0E</action> <!-- submarine -->
            <action>maincpu.mb@1D7E = 72</action> <!-- mine -->
            <action>maincpu.mb@1F4E = C9</action> <!-- mine -->
        </script>
        <script state="off">
            <action>maincpu.mb@1370 = 73</action>
            <action>maincpu.mb@15CE = 73</action>
            <action>maincpu.mb@1924 = 0F</action>
            <action>maincpu.mb@1D7E = 73</action>
            <action>maincpu.mb@1F4E = C0</action>
        </script>
    </cheat>

    <cheat desc="rapid fire">
        <script state="on">
            <action>maincpu.mb@262F = 00</action> <!-- upper -->
            <action>maincpu.mb@2639 = 00</action> <!-- left/right -->
        </script>
        <script state="off">
            <action>maincpu.mb@262F = 04</action>
            <action>maincpu.mb@2639 = C0</action>
        </script>
    </cheat>

    <cheat desc="player speed">
        <parameter>
            <item value="0x01">01 (slow)</item>
            <item value="0x04">02       </item>
            <item value="0x08">03 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.mb@13E8 =  param</action> <!-- up -->
            <action>maincpu.mb@13EA =  param</action> <!-- upper-left : up -->
            <action>maincpu.mb@13EB = -param</action> <!-- upper-left : left -->
            <action>maincpu.mb@13ED = -param</action> <!-- left -->
            <action>maincpu.mb@13EE = -param</action> <!-- lower-left : down -->
            <action>maincpu.mb@13EF = -param</action> <!-- lower-left : left -->
            <action>maincpu.mb@13F0 = -param</action> <!-- down -->
            <action>maincpu.mb@13F2 = -param</action> <!-- lower-right : down -->
            <action>maincpu.mb@13F3 =  param</action> <!-- lower-right : right -->
            <action>maincpu.mb@13F5 =  param</action> <!-- right -->
            <action>maincpu.mb@13F6 =  param</action> <!-- upper-right : up -->
            <action>maincpu.mb@13F7 =  param</action> <!-- upper-right : right -->
        </script>
        <script state="off">
            <action>maincpu.mb@13E8 = 02</action>
            <action>maincpu.mb@13EA = 02</action>
            <action>maincpu.mb@13EB = FC</action>
            <action>maincpu.mb@13ED = FC</action>
            <action>maincpu.mb@13EE = FE</action>
            <action>maincpu.mb@13EF = FC</action>
            <action>maincpu.mb@13F0 = FE</action>
            <action>maincpu.mb@13F2 = FE</action>
            <action>maincpu.mb@13F3 = 04</action>
            <action>maincpu.mb@13F5 = 04</action>
            <action>maincpu.mb@13F6 = 02</action>
            <action>maincpu.mb@13F7 = 04</action>
        </script>
    </cheat>

    <cheat desc="bullet speed">
        <parameter min="0x01" max="0x05" step="0x01" />
        <script state="on">
            <action>maincpu.md@037F = E93F10CD        </action>
            <action>maincpu.mq@3F10 = 7DC029FE7C0566DD</action>
            <action>maincpu.mq@3F18 = 06C93F1F21C0FAFE</action>
            <action>maincpu.mq@3F20 = F910C129FACDC500</action>
            <action>maincpu.mq@3F28 = 00000000000000C9</action>
            <!--
            3F10 | DD 66 05 : ld   h,(ix+$05)
            3F13 | 7C       : ld   a,h
            3F14 | FE 29    : cp   $29
            3F16 | C0       : ret  nz
            3F17 | 7D       : ld   a,l
            3F18 | FE FA    : cp   $FA
            3F1A | C0       : ret  nz
            3F1B | 21 1F 3F : ld   hl,$3F1F
            3F1E | C9       : ret
            3F1F | 06 xx    : ld   b,$xx
            3F21 | C5       : push bc
            3F22 | CD FA 29 : call $29FA
            3F25 | C1       : pop  bc
            3F26 | 10 F9    : djnz $3F21
            3F28 | C9       : ret
            -->
        </script>
        <script state="change">
            <action>maincpu.mb@3F20 = param - 1</action>
        </script>
        <script state="off">
            <action>maincpu.md@037F = E90566DD        </action>
            <action>maincpu.mq@3F10 = 0000000000000000</action>
            <action>maincpu.mq@3F18 = 0000000000000000</action>
            <action>maincpu.mq@3F20 = 0000000000000000</action>
            <action>maincpu.mq@3F28 = 0000000000000000</action>
        </script>
    </cheat>

</mamecheat>
nsubc.xml. This set was added in 0.274.

Code: Select all

<!-- N-Sub (cocktail) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mb@138E = 90</action> <!-- mine -->
            <action>maincpu.mb@160A = 90</action> <!-- bomb -->
            <action>maincpu.mb@1960 = 0E</action> <!-- submarine -->
            <action>maincpu.mb@1DBA = 90</action> <!-- mine -->
            <action>maincpu.mb@1F8A = C9</action> <!-- mine -->
        </script>
        <script state="off">
            <action>maincpu.mb@138E = 91</action>
            <action>maincpu.mb@160A = 91</action>
            <action>maincpu.mb@1960 = 0F</action>
            <action>maincpu.mb@1DBA = 91</action>
            <action>maincpu.mb@1F8A = C0</action>
        </script>
    </cheat>

    <cheat desc="rapid fire">
        <script state="on">
            <action>maincpu.mb@26A5 = 00</action> <!-- upper -->
            <action>maincpu.mb@26AF = 00</action> <!-- left/right -->
        </script>
        <script state="off">
            <action>maincpu.mb@26A5 = 04</action>
            <action>maincpu.mb@26AF = C0</action>
        </script>
    </cheat>

    <cheat desc="player speed">
        <parameter>
            <item value="0x01">01 (slow)</item>
            <item value="0x04">02       </item>
            <item value="0x08">03 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.mb@1424 =  param</action> <!-- up -->
            <action>maincpu.mb@1426 =  param</action> <!-- upper-left : up -->
            <action>maincpu.mb@1427 = -param</action> <!-- upper-left : left -->
            <action>maincpu.mb@1429 = -param</action> <!-- left -->
            <action>maincpu.mb@142A = -param</action> <!-- lower-left : down -->
            <action>maincpu.mb@142B = -param</action> <!-- lower-left : left -->
            <action>maincpu.mb@142C = -param</action> <!-- down -->
            <action>maincpu.mb@142E = -param</action> <!-- lower-right : down -->
            <action>maincpu.mb@142F =  param</action> <!-- lower-right : right -->
            <action>maincpu.mb@1431 =  param</action> <!-- right -->
            <action>maincpu.mb@1432 =  param</action> <!-- upper-right : up -->
            <action>maincpu.mb@1433 =  param</action> <!-- upper-right : right -->
        </script>
        <script state="off">
            <action>maincpu.mb@1424 = 02</action>
            <action>maincpu.mb@1426 = 02</action>
            <action>maincpu.mb@1427 = FC</action>
            <action>maincpu.mb@1429 = FC</action>
            <action>maincpu.mb@142A = FE</action>
            <action>maincpu.mb@142B = FC</action>
            <action>maincpu.mb@142C = FE</action>
            <action>maincpu.mb@142E = FE</action>
            <action>maincpu.mb@142F = 04</action>
            <action>maincpu.mb@1431 = 04</action>
            <action>maincpu.mb@1432 = 02</action>
            <action>maincpu.mb@1433 = 04</action>
        </script>
    </cheat>

    <cheat desc="bullet speed">
        <parameter min="0x01" max="0x05" step="0x01" />
        <script state="on">
            <action>maincpu.md@037F = E93F10CD        </action>
            <action>maincpu.mq@3F10 = 7DC02AFE7C0566DD</action>
            <action>maincpu.mq@3F18 = 06C93F1F21C070FE</action>
            <action>maincpu.mq@3F20 = F910C12A70CDC500</action>
            <action>maincpu.mq@3F28 = 00000000000000C9</action>
            <!--
            3F10 | DD 66 05 : ld   h,(ix+$05)
            3F13 | 7C       : ld   a,h
            3F14 | FE 2A    : cp   $2A
            3F16 | C0       : ret  nz
            3F17 | 7D       : ld   a,l
            3F18 | FE 70    : cp   $70
            3F1A | C0       : ret  nz
            3F1B | 21 1F 3F : ld   hl,$3F1F
            3F1E | C9       : ret
            3F1F | 06 xx    : ld   b,$xx
            3F21 | C5       : push bc
            3F22 | CD 70 2A : call $2A70
            3F25 | C1       : pop  bc
            3F26 | 10 F9    : djnz $3F21
            3F28 | C9       : ret
            -->
        </script>
        <script state="change">
            <action>maincpu.mb@3F20 = param - 1</action>
        </script>
        <script state="off">
            <action>maincpu.md@037F = E90566DD        </action>
            <action>maincpu.mq@3F10 = 0000000000000000</action>
            <action>maincpu.mq@3F18 = 0000000000000000</action>
            <action>maincpu.mq@3F20 = 0000000000000000</action>
            <action>maincpu.mq@3F28 = 0000000000000000</action>
        </script>
    </cheat>

</mamecheat>
jman

my wip cheat database back-up (2024/12/01 ver.)
https://u3.getuploader.com/...../download/47
downloadpass : jman2020
Post Reply