[ponpoko]+ Ponpoko

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

[ponpoko]+ Ponpoko

Post by jman »

ponpoko.xml

Code: Select all

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

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mb@1A17 = 00</action> <!-- pit, pin -->
            <action>maincpu.mb@1A68 = 18</action> <!-- enemy in pot -->
            <action>maincpu.mb@1AB8 = 18</action> <!-- enemy -->
        </script>
        <script state="off">
            <action>maincpu.mb@1A17 = 03</action>
            <action>maincpu.mb@1A68 = 30</action>
            <action>maincpu.mb@1AB8 = 30</action>
        </script>
    </cheat>

    <cheat desc="walk speed (test)">
        <comment>sometimes you can't pick up item</comment>
        <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="change">
            <action>maincpu.mb@168B = param</action> <!-- right -->
            <action>maincpu.mb@16E2 = param</action> <!-- left -->
        </script>
        <script state="off">
            <action>maincpu.mb@168B = 01</action>
            <action>maincpu.mb@16E2 = 01</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@087B = param</action> <!-- initialize -->
            <action>maincpu.mb@32E8 = param</action>
        </script>
        <script state="off">
            <action>maincpu.mb@087B = 26</action>
            <action>maincpu.mb@32E8 = 26</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <comment>set &quot;skip ram/rom check&quot; then reset the game (F3)</comment>
        <script state="on">
            <action>maincpu.mb@0ACC = C9              </action> <!-- disable score display -->
            <action>maincpu.mq@06C8 = 3A4F50403A4D0021</action>
            <action>maincpu.mq@06D0 = 2847B8B11FE65000</action>
            <action>maincpu.mq@06D8 = 04FE35012002FEF2</action>
            <action>maincpu.mq@06E0 = 3E042008FE340120</action>
            <action>maincpu.mq@06E8 = 3E052001FE0618F0</action>
            <action>maincpu.mq@06F0 = 052010FE78778610</action>
            <action>maincpu.mq@06F8 = 2020FE784E45327E</action>
            <action>maincpu.mq@0700 = 43324E4232FF3E08</action>
            <action>maincpu.mq@0708 = 0000000000C0184E</action>
            <!--
            06C8 | 21 00 4D : ld   hl,$4D00  // sound code address
            06CB | 3A 40 50 : ld   a,($5040) // read start button
            06CE | 4F       : ld   c,a
            06CF | 3A 00 50 : ld   a,($5000) // read other inputs
            06D2 | E6 1F    : and  $1F
            06D4 | B1       : or   c
            06D5 | B8       : cp   b
            06D6 | 47       : ld   b,a
            06D7 | 28 F2    : jr   z,$06CB
            06D9 | FE 02    : cp   $02
            06DB | 20 01    : jr   nz,$06DE
            06DD | 35       : dec  (hl)      // decrease code -01
            06DE | FE 04    : cp   $04
            06E0 | 20 01    : jr   nz,$06E3
            06E2 | 34       : inc  (hl)      // increase code +01
            06E3 | FE 08    : cp   $08
            06E5 | 20 04    : jr   nz,$06EB
            06E7 | 3E F0    : ld   a,$F0     // decrease code -10
            06E9 | 18 06    : jr   $06F1
            06EB | FE 01    : cp   $01
            06ED | 20 05    : jr   nz,$06F4
            06EF | 3E 10    : ld   a,$10     // increase code +10
            06F1 | 86       : add  a,(hl)
            06F2 | 77       : ld   (hl),a
            06F3 | 78       : ld   a,b
            06F4 | FE 10    : cp   $10
            06F6 | 20 05    : jr   nz,$06FD
            06F8 | 7E       : ld   a,(hl)    // play sound
            06F9 | 32 45 4E : ld   ($4E45),a // send sound code
            06FC | 78       : ld   a,b
            06FD | FE 20    : cp   $20
            06FF | 20 08    : jr   nz,$0709
            0701 | 3E FF    : ld   a,$FF     // stop sound
            0703 | 32 42 4E : ld   ($4E42),a
            0706 | 32 43 4E : ld   ($4E43),a
            0709 | 18 C0    : jr   $06CB
            -->
        </script>
        <script state="run">
            <output format="----- ponpoko sound test mode -----" line="10" align="center" />
            <output format="left : decrease code -01"            line="11" align="center" />
            <output format="right : increase code +01"           line="12" align="center" />
            <output format="down : decrease code -10"            line="13" align="center" />
            <output format="up : increase code +10"              line="14" align="center" />
            <output format="button 1 : play sound"               line="15" align="center" />
            <output format="start 1 : stop sound"                line="16" align="center" />
            <output format="----------------------------"        line="17" align="center" />
            <output format="&lt;&lt; sound code %2.2X &gt;&gt;"  line="19" align="center"  >
                <argument>maincpu.pb@4D00</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.mb@0ACC = CD              </action>
            <action>maincpu.mq@06C8 = 215F0016874C203A</action>
            <action>maincpu.mq@06D0 = 5E1906DC21E50A31</action>
            <action>maincpu.mq@06D8 = 06E706E4E9EB5623</action>
            <action>maincpu.mq@06E0 = 210000C3080907EF</action>
            <action>maincpu.mq@06E8 = 403A06FB21E507CA</action>
            <action>maincpu.mq@06F0 = 235E1900165F874E</action>
            <action>maincpu.mq@06F8 = 5D07460705E9EB56</action>
            <action>maincpu.mq@0700 = 0075CD07C9075E07</action>
            <action>maincpu.mq@0708 = 0104CD133E0DD0CD</action>
        </script>
    </cheat>

    <cheat desc="skip ram/rom check">
        <script state="on">
            <action>maincpu.mw@0001 = 06A4</action>
        </script>
        <script state="off">
            <action>maincpu.mw@0001 = B1C8</action>
        </script>
    </cheat>

</mamecheat>
ponpokov.xml

Code: Select all

<!-- Ponpoko (Venture Line) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mb@1A17 = 00</action> <!-- pit, pin -->
            <action>maincpu.mb@1A68 = 18</action> <!-- enemy in pot -->
            <action>maincpu.mb@1AB8 = 18</action> <!-- enemy -->
        </script>
        <script state="off">
            <action>maincpu.mb@1A17 = 03</action>
            <action>maincpu.mb@1A68 = 30</action>
            <action>maincpu.mb@1AB8 = 30</action>
        </script>
    </cheat>

    <cheat desc="walk speed (test)">
        <comment>sometimes you can't pick up item</comment>
        <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="change">
            <action>maincpu.mb@168B = param</action> <!-- right -->
            <action>maincpu.mb@16E2 = param</action> <!-- left -->
        </script>
        <script state="off">
            <action>maincpu.mb@168B = 01</action>
            <action>maincpu.mb@16E2 = 01</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@087B = param</action> <!-- initialize -->
            <action>maincpu.mb@32E8 = param</action>
        </script>
        <script state="off">
            <action>maincpu.mb@087B = 26</action>
            <action>maincpu.mb@32E8 = 26</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <comment>set &quot;skip ram/rom check&quot; then reset the game (F3)</comment>
        <script state="on">
            <action>maincpu.mb@0ACC = C9              </action> <!-- disable score display -->
            <action>maincpu.mq@06C8 = 3A4F50403A4D0021</action>
            <action>maincpu.mq@06D0 = 2847B8B11FE65000</action>
            <action>maincpu.mq@06D8 = 04FE35012002FEF2</action>
            <action>maincpu.mq@06E0 = 3E042008FE340120</action>
            <action>maincpu.mq@06E8 = 3E052001FE0618F0</action>
            <action>maincpu.mq@06F0 = 052010FE78778610</action>
            <action>maincpu.mq@06F8 = 2020FE784E45327E</action>
            <action>maincpu.mq@0700 = 43324E4232FF3E08</action>
            <action>maincpu.mq@0708 = 0000000000C0184E</action>
            <!--
            06C8 | 21 00 4D : ld   hl,$4D00  // sound code address
            06CB | 3A 40 50 : ld   a,($5040) // read start button
            06CE | 4F       : ld   c,a
            06CF | 3A 00 50 : ld   a,($5000) // read other inputs
            06D2 | E6 1F    : and  $1F
            06D4 | B1       : or   c
            06D5 | B8       : cp   b
            06D6 | 47       : ld   b,a
            06D7 | 28 F2    : jr   z,$06CB
            06D9 | FE 02    : cp   $02
            06DB | 20 01    : jr   nz,$06DE
            06DD | 35       : dec  (hl)      // decrease code -01
            06DE | FE 04    : cp   $04
            06E0 | 20 01    : jr   nz,$06E3
            06E2 | 34       : inc  (hl)      // increase code +01
            06E3 | FE 08    : cp   $08
            06E5 | 20 04    : jr   nz,$06EB
            06E7 | 3E F0    : ld   a,$F0     // decrease code -10
            06E9 | 18 06    : jr   $06F1
            06EB | FE 01    : cp   $01
            06ED | 20 05    : jr   nz,$06F4
            06EF | 3E 10    : ld   a,$10     // increase code +10
            06F1 | 86       : add  a,(hl)
            06F2 | 77       : ld   (hl),a
            06F3 | 78       : ld   a,b
            06F4 | FE 10    : cp   $10
            06F6 | 20 05    : jr   nz,$06FD
            06F8 | 7E       : ld   a,(hl)    // play sound
            06F9 | 32 45 4E : ld   ($4E45),a // send sound code
            06FC | 78       : ld   a,b
            06FD | FE 20    : cp   $20
            06FF | 20 08    : jr   nz,$0709
            0701 | 3E FF    : ld   a,$FF     // stop sound
            0703 | 32 42 4E : ld   ($4E42),a
            0706 | 32 43 4E : ld   ($4E43),a
            0709 | 18 C0    : jr   $06CB
            -->
        </script>
        <script state="run">
            <output format="----- ponpoko sound test mode -----" line="10" align="center" />
            <output format="left : decrease code -01"            line="11" align="center" />
            <output format="right : increase code +01"           line="12" align="center" />
            <output format="down : decrease code -10"            line="13" align="center" />
            <output format="up : increase code +10"              line="14" align="center" />
            <output format="button 1 : play sound"               line="15" align="center" />
            <output format="start 1 : stop sound"                line="16" align="center" />
            <output format="----------------------------"        line="17" align="center" />
            <output format="&lt;&lt; sound code %2.2X &gt;&gt;"  line="19" align="center"  >
                <argument>maincpu.pb@4D00</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.mb@0ACC = CD              </action>
            <action>maincpu.mq@06C8 = 215F0016874C203A</action>
            <action>maincpu.mq@06D0 = 5E1906DC21E50A31</action>
            <action>maincpu.mq@06D8 = 06E706E4E9EB5623</action>
            <action>maincpu.mq@06E0 = 210000C3080907EF</action>
            <action>maincpu.mq@06E8 = 403A06FB21E507CA</action>
            <action>maincpu.mq@06F0 = 235E1900165F874E</action>
            <action>maincpu.mq@06F8 = 5D07460705E9EB56</action>
            <action>maincpu.mq@0700 = 0075CD07C9075E07</action>
            <action>maincpu.mq@0708 = 0104CD133E0DD0CD</action>
        </script>
    </cheat>

    <cheat desc="skip ram/rom check">
        <script state="on">
            <action>maincpu.mw@0001 = 06A4</action>
        </script>
        <script state="off">
            <action>maincpu.mw@0001 = B1C8</action>
        </script>
    </cheat>

</mamecheat>
candory.xml

Code: Select all

<!-- Candory (Ponpoko bootleg with Mario) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mb@1A17 = 00</action> <!-- pit, pin -->
            <action>maincpu.mb@1A68 = 18</action> <!-- enemy in pot -->
            <action>maincpu.mb@1AB8 = 18</action> <!-- enemy -->
        </script>
        <script state="off">
            <action>maincpu.mb@1A17 = 03</action>
            <action>maincpu.mb@1A68 = 30</action>
            <action>maincpu.mb@1AB8 = 30</action>
        </script>
    </cheat>

    <cheat desc="walk speed (test)">
        <comment>sometimes you can't pick up item</comment>
        <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="change">
            <action>maincpu.mb@168B = param</action> <!-- right -->
            <action>maincpu.mb@16E2 = param</action> <!-- left -->
        </script>
        <script state="off">
            <action>maincpu.mb@168B = 01</action>
            <action>maincpu.mb@16E2 = 01</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@087B = param</action> <!-- initialize -->
            <action>maincpu.mb@32E8 = param</action>
        </script>
        <script state="off">
            <action>maincpu.mb@087B = 26</action>
            <action>maincpu.mb@32E8 = 26</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <comment>set &quot;skip ram/rom check&quot; then reset the game (F3)</comment>
        <script state="on">
            <action>maincpu.mb@0ACC = C9              </action> <!-- disable score display -->
            <action>maincpu.mq@06C8 = 3A4F50403A4D0021</action>
            <action>maincpu.mq@06D0 = 2847B8B11FE65000</action>
            <action>maincpu.mq@06D8 = 04FE35012002FEF2</action>
            <action>maincpu.mq@06E0 = 3E042008FE340120</action>
            <action>maincpu.mq@06E8 = 3E052001FE0618F0</action>
            <action>maincpu.mq@06F0 = 052010FE78778610</action>
            <action>maincpu.mq@06F8 = 2020FE784E45327E</action>
            <action>maincpu.mq@0700 = 43324E4232FF3E08</action>
            <action>maincpu.mq@0708 = 0000000000C0184E</action>
            <!--
            06C8 | 21 00 4D : ld   hl,$4D00  // sound code address
            06CB | 3A 40 50 : ld   a,($5040) // read start button
            06CE | 4F       : ld   c,a
            06CF | 3A 00 50 : ld   a,($5000) // read other inputs
            06D2 | E6 1F    : and  $1F
            06D4 | B1       : or   c
            06D5 | B8       : cp   b
            06D6 | 47       : ld   b,a
            06D7 | 28 F2    : jr   z,$06CB
            06D9 | FE 02    : cp   $02
            06DB | 20 01    : jr   nz,$06DE
            06DD | 35       : dec  (hl)      // decrease code -01
            06DE | FE 04    : cp   $04
            06E0 | 20 01    : jr   nz,$06E3
            06E2 | 34       : inc  (hl)      // increase code +01
            06E3 | FE 08    : cp   $08
            06E5 | 20 04    : jr   nz,$06EB
            06E7 | 3E F0    : ld   a,$F0     // decrease code -10
            06E9 | 18 06    : jr   $06F1
            06EB | FE 01    : cp   $01
            06ED | 20 05    : jr   nz,$06F4
            06EF | 3E 10    : ld   a,$10     // increase code +10
            06F1 | 86       : add  a,(hl)
            06F2 | 77       : ld   (hl),a
            06F3 | 78       : ld   a,b
            06F4 | FE 10    : cp   $10
            06F6 | 20 05    : jr   nz,$06FD
            06F8 | 7E       : ld   a,(hl)    // play sound
            06F9 | 32 45 4E : ld   ($4E45),a // send sound code
            06FC | 78       : ld   a,b
            06FD | FE 20    : cp   $20
            06FF | 20 08    : jr   nz,$0709
            0701 | 3E FF    : ld   a,$FF     // stop sound
            0703 | 32 42 4E : ld   ($4E42),a
            0706 | 32 43 4E : ld   ($4E43),a
            0709 | 18 C0    : jr   $06CB
            -->
        </script>
        <script state="run">
            <output format="----- ponpoko sound test mode -----" line="10" align="center" />
            <output format="left : decrease code -01"            line="11" align="center" />
            <output format="right : increase code +01"           line="12" align="center" />
            <output format="down : decrease code -10"            line="13" align="center" />
            <output format="up : increase code +10"              line="14" align="center" />
            <output format="button 1 : play sound"               line="15" align="center" />
            <output format="start 1 : stop sound"                line="16" align="center" />
            <output format="----------------------------"        line="17" align="center" />
            <output format="&lt;&lt; sound code %2.2X &gt;&gt;"  line="19" align="center"  >
                <argument>maincpu.pb@4D00</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.mb@0ACC = CD              </action>
            <action>maincpu.mq@06C8 = 215F0016874C203A</action>
            <action>maincpu.mq@06D0 = 5E1906DC21E50A31</action>
            <action>maincpu.mq@06D8 = 06E706E4E9EB5623</action>
            <action>maincpu.mq@06E0 = 210000C3080907EF</action>
            <action>maincpu.mq@06E8 = 403A06FB21E507CA</action>
            <action>maincpu.mq@06F0 = 235E1900165F874E</action>
            <action>maincpu.mq@06F8 = 5D07460705E9EB56</action>
            <action>maincpu.mq@0700 = 0075CD07C9075E07</action>
            <action>maincpu.mq@0708 = 0104CD133E0DD0CD</action>
        </script>
    </cheat>

    <cheat desc="skip ram/rom check">
        <script state="on">
            <action>maincpu.mw@0001 = 06A4</action>
        </script>
        <script state="off">
            <action>maincpu.mw@0001 = B1C8</action>
        </script>
    </cheat>

</mamecheat>
Post Reply