[crazym] Crazy Mazey

This forum is for posting M.A.M.E. arcade cheats. Requests will be fulfilled here....but please keep the requests to the requests forum.
Post Reply
jman
Posts: 850
Joined: Tue Dec 01, 2020 1:24 pm

[crazym] Crazy Mazey

Post by jman »

crazym is added in 0.261. Program code is very similar to pacman though address is different.

Code: Select all

<!-- Crazy Mazey -->
<mamecheat version="1">

    <cheat desc="infinite credits">
        <script state="run">
            <action>maincpu.pb@426E = 99</action>
        </script>
    </cheat>

    <cheat desc="infinite lives">
        <script state="run">
            <action>maincpu.pw@4214 = 0909</action>
        </script>
    </cheat>

    <cheat desc="finish current level now">
        <script state="on">
            <action>maincpu.pb@420E = F4</action>
        </script>
    </cheat>

</mamecheat>
I give up converting other codes from pacman in the database based on 0.259 because it's too complex to read the original code and small piece of information.

So I try converting pac-man/puck man codes I posted except "sound test mode" and "skip ram/rom check".

Code: Select all

    <cheat desc="no hit (test)">
        <script state="on">
            <action>maincpu.md@1708 = C83F70CD        </action>
            <action>maincpu.mq@3F70 = FFC916FACCA77E19</action>
            <!--
            3F70 | 19       : add  hl,de
            3F71 | 7E       : ld   a,(hl)
            3F72 | A7       : and  a
            3F73 | CC FA 16 : call z,$16FA
            3F76 | C9       : ret
            -->
        </script>
        <script state="off">
            <action>maincpu.md@1708 = C8A77E19        </action>
            <action>maincpu.mq@3F70 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="walk through wall (test)">
        <script state="on">
            <action>maincpu.mb@18A5 = 18</action>
        </script>
        <script state="off">
            <action>maincpu.mb@18A5 = 20</action>
        </script>
    </cheat>

    <cheat desc="player speed up (test)">
        <script state="on">
            <action>maincpu.md@179C = 3E3F80C3        </action>
            <action>maincpu.mq@3F80 = 03FE42043A419D21</action>
            <action>maincpu.mq@3F88 = FFFF179FC317D5CA</action>
            <!--
            3F80 | 21 9D 41 : ld   hl,$419D
            3F83 | 3A 04 42 : ld   a,($4204) // check intermission
            3F86 | FE 03    : cp   $03
            3F88 | CA D5 17 : jp   z,$17D5
            3F8B | C3 9F 17 : jp   $179F
            -->
        </script>
        <script state="off">
            <action>maincpu.md@179C = 3E419D21        </action>
            <action>maincpu.mq@3F80 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3F88 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="enemy speed (test)">
        <parameter>
            <item value="0x0f">01 (slow)</item>
            <item value="0x07">02       </item>
            <item value="0x03">03       </item>
            <item value="0x01">04       </item>
            <item value="0x00">05 (fast)</item>
        </parameter>
        <script state="on">
            <action>maincpu.mw@0FF7 = 3E50            </action>
            <action>maincpu.md@1B04 = A73E64C3        </action> <!-- red -->
            <action>maincpu.md@1C17 = A73E74C3        </action> <!-- orange -->
            <action>maincpu.md@1CEE = A73E84C3        </action> <!-- blue -->
            <action>maincpu.md@1DC5 = A73E94C3        </action> <!-- pink -->
            <action>maincpu.mq@3E50 = C93443F021179CCD</action>
            <action>maincpu.mq@3E58 = F03AC903FE42043A</action>
            <action>maincpu.mq@3E60 = 3A3E58CDC900E643</action>
            <action>maincpu.mq@3E68 = 3E5ECD1B07C24199</action>
            <action>maincpu.mq@3E70 = 3A3E58CD1B90C3C0</action>
            <action>maincpu.mq@3E78 = 3E5ECD1C1AC2419A</action>
            <action>maincpu.mq@3E80 = 3A3E58CD1C67C3C0</action>
            <action>maincpu.mq@3E88 = 3E5ECD1CF1C2419B</action>
            <action>maincpu.mq@3E90 = 3A3E58CD1D3EC3C0</action>
            <action>maincpu.mq@3E98 = 3E5ECD1DC8C2419C</action>
            <action>maincpu.mq@3EA0 = FFFFFFFF1E15C3C0</action>
            <!--
            3E50 | CD 9C 17 : call $179C     // timer calculation routine
            3E53 | 21 F0 43 : ld   hl,$43F0
            3E56 | 34       : inc  (hl)
            3E57 | C9       : ret
            3E58 | 3A 04 42 : ld   a,($4204) // intermission check routine
            3E5B | FE 03    : cp   $03
            3E5D | C9       : ret
            3E5E | 3A F0 43 : ld   a,($43F0) // timer check routine
            3E61 | E6 xx    : and  $xx
            3E63 | C9       : ret
            3E64 | CD 58 3E : call $3E58     // red
            3E67 | 3A 99 41 : ld   a,($4199)
            3E6A | C2 07 1B : jp   nz,$1B07
            3E6D | CD 5E 3E : call $3E5E
            3E70 | C0       : ret  nz
            3E71 | C3 90 1B : jp   $1B90
            3E74 | CD 58 3E : call $3E58     // orange
            3E77 | 3A 9A 41 : ld   a,($419A)
            3E7A | C2 1A 1C : jp   nz,$1C1A
            3E7D | CD 5E 3E : call $3E5E
            3E80 | C0       : ret  nz
            3E81 | C3 67 1C : jp   $1C67
            3E84 | CD 58 3E : call $3E58     // blue
            3E87 | 3A 9B 41 : ld   a,($419B)
            3E8A | C2 F1 1C : jp   nz,$1CF1
            3E8D | CD 5E 3E : call $3E5E
            3E90 | C0       : ret  nz
            3E91 | C3 3E 1D : jp   $1D3E
            3E94 | CD 58 3E : call $3E58     // pink
            3E97 | 3A 9C 41 : ld   a,($419C)
            3E9A | C2 C8 1D : jp   nz,$1DC8
            3E9D | CD 5E 3E : call $3E5E
            3EA0 | C0       : ret  nz
            3EA1 | C3 15 1E : jp   $1E15
            -->
        </script>
        <script state="change">
            <action>maincpu.mb@3E62 = param</action>
        </script>
        <script state="off">
            <action>maincpu.mw@0FF7 = 179C            </action>
            <action>maincpu.md@1B04 = A741993A        </action>
            <action>maincpu.md@1C17 = A7419A3A        </action>
            <action>maincpu.md@1CEE = A7419B3A        </action>
            <action>maincpu.md@1DC5 = A7419C3A        </action>
            <action>maincpu.mq@3E50 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3E58 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3E60 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3E68 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3E70 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3E78 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3E80 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3E88 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3E90 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3E98 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@3EA0 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="move manually (test)">
        <script state="on">
            <action>maincpu.mb@188E = C9</action>
        </script>
        <script state="off">
            <action>maincpu.mb@188E = 2A</action>
        </script>
    </cheat>
Post Reply