[raflesiau] Rafflesia

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

[raflesiau] Rafflesia

Post by jman »

raflesiau is (re)added in 0.235.

Code: Select all

<cheat desc="no hit">
    <script state="on">
        <action>maincpu.mb@60c0 = 69</action>
    </script>
    <script state="off">
        <action>maincpu.mb@60c0 = 4e</action>
    </script>
</cheat>

<cheat desc="auto fire">
    <script state="on">
        <action>maincpu.md@64b8 = c6c26fcb</action>
    </script>
    <script state="off">
        <action>maincpu.md@64b8 = c6ca20fe</action>
    </script>
</cheat>

<cheat desc="player speed">
    <parameter>
        <item value="0x0100">01 (slow)</item>
        <item value="0x0280">02       </item>
        <item value="0x0400">03       </item>
        <item value="0x0680">04       </item>
        <item value="0x0800">05 (fast)</item>
    </parameter>
    <script state="change">
        <action>maincpu.mw@257e =  param</action> <!-- up -->
        <action>maincpu.mw@258e = -param</action> <!-- down -->
        <action>maincpu.mw@2598 = -param</action> <!-- left -->
        <action>maincpu.mw@2588 =  param</action> <!-- right -->
        <action>maincpu.mw@2582 =  param</action> <!-- upper-right : up -->
        <action>maincpu.mw@2584 =  param</action> <!-- upper-right : right -->
        <action>maincpu.mw@258a = -param</action> <!-- lower-right : down -->
        <action>maincpu.mw@258c =  param</action> <!-- lower-right : right -->
        <action>maincpu.mw@2592 = -param</action> <!-- lower-left : down -->
        <action>maincpu.mw@2594 = -param</action> <!-- lower-left : left -->
        <action>maincpu.mw@259a =  param</action> <!-- upper-left : up -->
        <action>maincpu.mw@259c = -param</action> <!-- upper-left : left -->
    </script>
    <script state="off">
        <action>maincpu.mw@257e = 0300</action>
        <action>maincpu.mw@258e = fd00</action>
        <action>maincpu.mw@2598 = fe00</action>
        <action>maincpu.mw@2588 = 0200</action>
        <action>maincpu.mw@2582 = 0300</action>
        <action>maincpu.mw@2584 = 0180</action>
        <action>maincpu.mw@258a = fd00</action>
        <action>maincpu.mw@258c = 0180</action>
        <action>maincpu.mw@2592 = fd00</action>
        <action>maincpu.mw@2594 = fe80</action>
        <action>maincpu.mw@259a = 0300</action>
        <action>maincpu.mw@259c = fe80</action>
    </script>
</cheat>

<cheat desc="bullet speed">
    <parameter>
        <item value="0x02">01 (slow)</item>
        <item value="0x08">02       </item>
        <item value="0x10">03       </item>
        <item value="0x18">04       </item>
        <item value="0x20">05 (fast)</item>
    </parameter>
    <script state="change">
        <action>maincpu.mb@64e0 = param</action> <!-- shot 1 -->
        <action>maincpu.mb@64f0 = param</action> <!-- shot 2 -->
    </script>
    <script state="off">
        <action>maincpu.mb@64e0 = 08</action>
        <action>maincpu.mb@64f0 = 10</action>
    </script>
</cheat>

<cheat desc="sound test mode">
    <comment>reset the game (F3) to enter sound test mode</comment>
    <script state="on">
        <action>maincpu.mq@0066 = 6c1177803ec10021</action>
        <action>maincpu.mq@006e = fec847b800dbd500</action>
        <action>maincpu.mq@0076 = 0120bffe3501207f</action>
        <action>maincpu.mq@007e = 04187e0320fbfe34</action>
        <action>maincpu.mq@0086 = 00c914d3afc0fdfe</action>
        <!--
        0066 | 21 00 c1 : ld   hl,$c100 // sound code address
        0069 | 3e 80    : ld   a,$80    // initialize sound code
        006b | 77       : ld   (hl),a
        006c | 11 6c 00 : ld   de,$006c
        006f | d5       : push de
        0070 | db 00    : in   a,($00)  // read input
        0072 | b8       : cp   b
        0073 | 47       : ld   b,a
        0074 | c8       : ret  z
        0075 | fe 7f    : cp   $7f
        0077 | 20 01    : jr   nz,$007a
        0079 | 35       : dec  (hl)     // decrease code
        007a | fe bf    : cp   $bf
        007c | 20 01    : jr   nz,$007f
        007e | 34       : inc  (hl)     // increase code
        007f | fe fb    : cp   $fb
        0081 | 20 03    : jr   nz,$0086
        0083 | 7e       : ld   a,(hl)   // play sound
        0084 | 18 04    : jr   $008a
        0086 | fe fd    : cp   $fd
        0088 | c0       : ret  nz
        0089 | af       : xor  a        // stop sound
        008a | d3 14    : out  ($14),a  // send sound code
        008c | c9       : ret
        -->
    </script>
    <script state="run">
        <output format="----- rafflesia sound test mode -----" line="10" align="center" />
        <output format="left : code decrement"                 line="11" align="center" />
        <output format="right : code increment"                line="12" align="center" />
        <output format="button 1 : play sound"                 line="13" align="center" />
        <output format="button 2 : stop sound"                 line="14" align="center" />
        <output format="----------------------------"          line="15" align="center" />
        <output format="&lt;&lt; sound code %2.2X &gt;&gt;"    line="17" align="center">
            <argument>maincpu.pb@c100</argument>
        </output>
    </script>
    <script state="off">
        <action>maincpu.mq@0066 = 01accdc04532013e</action>
        <action>maincpu.mq@006e = 86cbc039210676c3</action>
        <action>maincpu.mq@0076 = c90031f323189ecb</action>
        <action>maincpu.mq@007e = 210b2040e6c0393a</action>
        <action>maincpu.mq@0086 = 0090da01d67ec028</action>
    </script>
</cheat>
jman
Posts: 843
Joined: Tue Dec 01, 2020 1:24 pm

[raflesia]+ Rafflesia

Post by jman »

I convert the cheat codes from raflesiau to raflesia. raflesia has encrypted region though.

raflesia.xml

Code: Select all

<cheat desc="no hit">
    <script state="on">
        <action>maincpu.mb@60b9 = 62</action>
    </script>
    <script state="off">
        <action>maincpu.mb@60b9 = 47</action>
    </script>
</cheat>

<cheat desc="auto fire">
    <script state="on">
        <action>maincpu.od@64b1 = efc26fcb</action>
    </script>
    <script state="off">
        <action>maincpu.od@64b1 = efca70fe</action>
    </script>
</cheat>

<cheat desc="player speed">
    <parameter>
        <item value="0x0100">01 (slow)</item>
        <item value="0x0280">02       </item>
        <item value="0x0400">03       </item>
        <item value="0x0680">04       </item>
        <item value="0x0800">05 (fast)</item>
    </parameter>
    <script state="change">
        <action>maincpu.mw@2577 =  param</action> <!-- up -->
        <action>maincpu.mw@257b =  param</action> <!-- upper-right : up -->
        <action>maincpu.mw@257d =  param</action> <!-- upper-right : right -->
        <action>maincpu.mw@2581 =  param</action> <!-- right -->
        <action>maincpu.mw@2583 = -param</action> <!-- lower-right : down -->
        <action>maincpu.mw@2585 =  param</action> <!-- lower-right : right -->
        <action>maincpu.mw@2587 = -param</action> <!-- down -->
        <action>maincpu.mw@258b = -param</action> <!-- lower-left : down -->
        <action>maincpu.mw@258d = -param</action> <!-- lower-left : left -->
        <action>maincpu.mw@2591 = -param</action> <!-- left -->
        <action>maincpu.mw@2593 =  param</action> <!-- upper-left : up -->
        <action>maincpu.mw@2595 = -param</action> <!-- upper-left : left -->
    </script>
    <script state="off">
        <action>maincpu.mw@2577 = 0300</action>
        <action>maincpu.mw@257b = 0300</action>
        <action>maincpu.mw@257d = 0180</action>
        <action>maincpu.mw@2581 = 0200</action>
        <action>maincpu.mw@2583 = fd00</action>
        <action>maincpu.mw@2585 = 0180</action>
        <action>maincpu.mw@2587 = fd00</action>
        <action>maincpu.mw@258b = fd00</action>
        <action>maincpu.mw@258d = fe80</action>
        <action>maincpu.mw@2591 = fe00</action>
        <action>maincpu.mw@2593 = 0300</action>
        <action>maincpu.mw@2595 = fe80</action>
    </script>
</cheat>

<cheat desc="bullet speed">
    <parameter>
        <item value="0x02">01 (slow)</item>
        <item value="0x08">02       </item>
        <item value="0x10">03       </item>
        <item value="0x18">04       </item>
        <item value="0x20">05 (fast)</item>
    </parameter>
    <script state="change">
        <action>maincpu.mb@64d9 = param</action> <!-- shot 1 -->
        <action>maincpu.mb@64e9 = param</action> <!-- shot 2 -->
    </script>
    <script state="off">
        <action>maincpu.mb@64d9 = 08</action>
        <action>maincpu.mb@64e9 = 10</action>
    </script>
</cheat>

<cheat desc="sound test mode">
    <comment>reset the game (F3) to enter sound test mode</comment>
    <script state="on">
        <action>maincpu.oq@0066 = 2847b890db325521</action>
        <action>maincpu.mq@0066 = 01ad8c0045c2006e</action>
        <action>maincpu.oq@006e = 86fe35692056fec3</action>
        <action>maincpu.mq@006e = bf9bc001757f00fa</action>
        <action>maincpu.oq@0076 = 3e5020f3fe349e20</action>
        <action>maincpu.mq@0076 = c90461ef2348019b</action>
        <action>maincpu.oq@007e = 3e5b2010fe90183a</action>
        <action>maincpu.mq@007e = 750574dfb20639f0</action>
        <action>maincpu.oq@0086 = 5520dafe78778678</action>
        <action>maincpu.mq@0086 = 0590fb01832ec010</action>
        <action>maincpu.oq@008e = 205bfe401821f67e</action>
        <action>maincpu.mq@008e = 17fd990565802277</action>
        <action>maincpu.oq@0096 = cbaecb18cbd3af21</action>
        <action>maincpu.mq@0096 = 9efecd9618c03903</action>
        <!--
        0066 | 21 00 c2 : ld  hl,$C200 // sound code address
        0069 | db 00    : in  a,($00)  // read input
        006b | b8       : cp  b
        006c | 47       : ld  b,a
        006d | 28 fa    : jr  z,$0069
        006f | fe 7f    : cp  $7F
        0071 | 20 01    : jr  nz,$0074
        0073 | 35       : dec (hl)     // decrease code -01
        0074 | fe bf    : cp  $BF
        0076 | 20 01    : jr  nz,$0079
        0078 | 34       : inc (hl)     // increase code +01
        0079 | fe ef    : cp  $EF
        007b | 20 04    : jr  nz,$0081
        007d | 3e f0    : ld  a,$F0    // decrease code -10
        007f | 18 06    : jr  $0087
        0081 | fe df    : cp  $DF
        0083 | 20 05    : jr  nz,$008A
        0085 | 3e 10    : ld  a,$10    // increase code +10
        0087 | 86       : add a,(hl)
        0088 | 77       : ld  (hl),a
        0089 | 78       : ld  a,b
        008a | fe fb    : cp  $FB
        008c | 20 05    : jr  nz,$0093
        008e | 7e       : ld  a,(hl)   // play sound
        008f | f6 80    : or  $80
        0091 | 18 05    : jr  $0098
        0093 | fe fd    : cp  $FD
        0095 | 20 03    : jr  nz,$009A
        0097 | af       : xor a        // stop sound
        0098 | d3 18    : out ($18),a  // send sound code
        009a | 18 cd    : jr  $0069
        -->
    </script>
    <script state="run">
        <output format="----- rafflesia 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="button 2 : 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@c200</argument>
        </output>
    </script>
    <script state="off">
        <action>maincpu.oq@005e = fb56ed5b4ccd975a</action>
        <action>maincpu.mq@005e = af06b90b189dc20a</action>
        <action>maincpu.oq@0066 = 51fdcd900132553e</action>
        <action>maincpu.mq@0066 = 01ad8cc04562016e</action>
        <action>maincpu.oq@006e = 86cb9469215622c3</action>
        <action>maincpu.mq@006e = d29bc03975067793</action>
        <action>maincpu.oq@0076 = 995031f373189ecb</action>
        <action>maincpu.mq@0076 = c90061a32348ca9b</action>
        <action>maincpu.oq@007e = 215b2010e690783a</action>
        <action>maincpu.mq@007e = 750b7440b2c0396a</action>
        <action>maincpu.oq@0086 = 55c0da51d67e9478</action>
        <action>maincpu.mq@0086 = 00908f01832ec028</action>
        <action>maincpu.oq@008e = 435bcd4031217727</action>
        <action>maincpu.mq@008e = 170b991065712277</action>
        <action>maincpu.oq@0096 = cbaecbc6cb906d21</action>
        <action>maincpu.mq@0096 = 9efe9e969ec03971</action>
    </script>
</cheat>
The codes for raflesiau is not changed except "sound test mode" (rewrite routine, add up/down key (code ±10)).
The following code is for raflesiau.

Code: Select all

<cheat desc="sound test mode">
    <comment>reset the game (F3) to enter sound test mode</comment>
    <script state="on">
        <action>maincpu.mq@0066 = 2847b800dbc20021</action>
        <action>maincpu.mq@006e = bffe3501207ffefa</action>
        <action>maincpu.mq@0076 = 3e0420effe340120</action>
        <action>maincpu.mq@007e = 3e0520dffe0618f0</action>
        <action>maincpu.mq@0086 = 0520fbfe78778610</action>
        <action>maincpu.mq@008e = 20fdfe051880f67e</action>
        <action>maincpu.mq@0096 = cbaecd1814d3af03</action>
        <!--
        0066 | 21 00 c2 : ld  hl,$C200 // sound code address
        0069 | db 00    : in  a,($00)  // read input
        006b | b8       : cp  b
        006c | 47       : ld  b,a
        006d | 28 fa    : jr  z,$0069
        006f | fe 7f    : cp  $7F
        0071 | 20 01    : jr  nz,$0074
        0073 | 35       : dec (hl)     // decrease code -01
        0074 | fe bf    : cp  $BF
        0076 | 20 01    : jr  nz,$0079
        0078 | 34       : inc (hl)     // increase code +01
        0079 | fe ef    : cp  $EF
        007b | 20 04    : jr  nz,$0081
        007d | 3e f0    : ld  a,$F0    // decrease code -10
        007f | 18 06    : jr  $0087
        0081 | fe df    : cp  $DF
        0083 | 20 05    : jr  nz,$008A
        0085 | 3e 10    : ld  a,$10    // increase code +10
        0087 | 86       : add a,(hl)
        0088 | 77       : ld  (hl),a
        0089 | 78       : ld  a,b
        008a | fe fb    : cp  $FB
        008c | 20 05    : jr  nz,$0093
        008e | 7e       : ld  a,(hl)   // play sound
        008f | f6 80    : or  $80
        0091 | 18 05    : jr  $0098
        0093 | fe fd    : cp  $FD
        0095 | 20 03    : jr  nz,$009A
        0097 | af       : xor a        // stop sound
        0098 | d3 14    : out ($14),a  // send sound code
        009a | 18 cd    : jr  $0069
        -->
    </script>
    <script state="run">
        <output format="----- rafflesia 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="button 2 : 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@c200</argument>
        </output>
    </script>
    <script state="off">
        <action>maincpu.mq@0066 = 01accdc04532013e</action>
        <action>maincpu.mq@006e = 86cbc039210676c3</action>
        <action>maincpu.mq@0076 = c90031f323189ecb</action>
        <action>maincpu.mq@007e = 210b2040e6c0393a</action>
        <action>maincpu.mq@0086 = 0090da01d67ec028</action>
        <action>maincpu.mq@008e = 16e6cd1048217727</action>
        <action>maincpu.mq@0096 = cbaecbc6cbc03921</action>
    </script>
</cheat>
jman
Posts: 843
Joined: Tue Dec 01, 2020 1:24 pm

[raflesia]+ Rafflesia

Post by jman »

raflesia.xml

Code: Select all

<!-- Rafflesia (315-5162) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mb@60B9 = 62</action>
        </script>
        <script state="off">
            <action>maincpu.mb@60B9 = 47</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.od@64B1 = EFC26FCB</action>
        </script>
        <script state="off">
            <action>maincpu.od@64B1 = EFCA70FE</action>
        </script>
    </cheat>

    <cheat desc="player speed">
        <parameter>
            <item value="0x0100">01 (slow)</item>
            <item value="0x0280">02       </item>
            <item value="0x0400">03       </item>
            <item value="0x0680">04       </item>
            <item value="0x0800">05 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.mw@2577 =  param</action> <!-- up -->
            <action>maincpu.mw@257B =  param</action> <!-- upper-right : up -->
            <action>maincpu.mw@257D =  param</action> <!-- upper-right : right -->
            <action>maincpu.mw@2581 =  param</action> <!-- right -->
            <action>maincpu.mw@2583 = -param</action> <!-- lower-right : down -->
            <action>maincpu.mw@2585 =  param</action> <!-- lower-right : right -->
            <action>maincpu.mw@2587 = -param</action> <!-- down -->
            <action>maincpu.mw@258B = -param</action> <!-- lower-left : down -->
            <action>maincpu.mw@258D = -param</action> <!-- lower-left : left -->
            <action>maincpu.mw@2591 = -param</action> <!-- left -->
            <action>maincpu.mw@2593 =  param</action> <!-- upper-left : up -->
            <action>maincpu.mw@2595 = -param</action> <!-- upper-left : left -->
        </script>
        <script state="off">
            <action>maincpu.mw@2577 = 0300</action>
            <action>maincpu.mw@257B = 0300</action>
            <action>maincpu.mw@257D = 0180</action>
            <action>maincpu.mw@2581 = 0200</action>
            <action>maincpu.mw@2583 = FD00</action>
            <action>maincpu.mw@2585 = 0180</action>
            <action>maincpu.mw@2587 = FD00</action>
            <action>maincpu.mw@258B = FD00</action>
            <action>maincpu.mw@258D = FE80</action>
            <action>maincpu.mw@2591 = FE00</action>
            <action>maincpu.mw@2593 = 0300</action>
            <action>maincpu.mw@2595 = FE80</action>
        </script>
    </cheat>

    <cheat desc="bullet speed">
        <parameter>
            <item value="0x02">01 (slow)</item>
            <item value="0x08">02       </item>
            <item value="0x10">03       </item>
            <item value="0x18">04       </item>
            <item value="0x20">05 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.mb@64D9 = param</action> <!-- shot 1 -->
            <action>maincpu.mb@64E9 = param</action> <!-- shot 2 -->
        </script>
        <script state="off">
            <action>maincpu.mb@64D9 = 08</action>
            <action>maincpu.mb@64E9 = 10</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <comment>reset the game (F3) to enter sound test mode</comment>
        <script state="on">
            <action>maincpu.oq@0066 = 2847B890DB325521</action>
            <action>maincpu.mq@0066 = 01AD8C0045C2006E</action>
            <action>maincpu.oq@006E = 86FE35692056FEC3</action>
            <action>maincpu.mq@006E = BF9BC001757F00FA</action>
            <action>maincpu.oq@0076 = 3E5020F3FE349E20</action>
            <action>maincpu.mq@0076 = C90461EF2348019B</action>
            <action>maincpu.oq@007E = 3E5B2010FE90183A</action>
            <action>maincpu.mq@007E = 750574DFB20639F0</action>
            <action>maincpu.oq@0086 = 5520DAFE78778678</action>
            <action>maincpu.mq@0086 = 0590FB01832EC010</action>
            <action>maincpu.oq@008E = 205BFE401821F67E</action>
            <action>maincpu.mq@008E = 17FD990565802277</action>
            <action>maincpu.oq@0096 = CBAECB18CBD3AF21</action>
            <action>maincpu.mq@0096 = 9EFECD9618C03903</action>
            <!--
            0066 | 21 00 C2 : ld   hl,$C200 // sound code address
            0069 | DB 00    : in   a,($00)  // read input
            006B | B8       : cp   b
            006C | 47       : ld   b,a
            006D | 28 FA    : jr   z,$0069
            006F | FE 7F    : cp   $7F
            0071 | 20 01    : jr   nz,$0074
            0073 | 35       : dec  (hl)     // decrease code -01
            0074 | FE BF    : cp   $BF
            0076 | 20 01    : jr   nz,$0079
            0078 | 34       : inc  (hl)     // increase code +01
            0079 | FE EF    : cp   $EF
            007B | 20 04    : jr   nz,$0081
            007D | 3E F0    : ld   a,$F0    // decrease code -10
            007F | 18 06    : jr   $0087
            0081 | FE DF    : cp   $DF
            0083 | 20 05    : jr   nz,$008A
            0085 | 3E 10    : ld   a,$10    // increase code +10
            0087 | 86       : add  a,(hl)
            0088 | 77       : ld   (hl),a
            0089 | 78       : ld   a,b
            008A | FE FB    : cp   $FB
            008C | 20 05    : jr   nz,$0093
            008E | 7E       : ld   a,(hl)   // play sound
            008F | F6 80    : or   $80
            0091 | 18 05    : jr   $0098
            0093 | FE FD    : cp   $FD
            0095 | 20 03    : jr   nz,$009A
            0097 | AF       : xor  a        // stop sound
            0098 | D3 18    : out  ($18),a  // send sound code
            009A | 18 CD    : jr   $0069
            -->
        </script>
        <script state="run">
            <output format="----- rafflesia 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="button 2 : stop sound"                 line="16" align="center" />
            <output format="----------------------------"          line="17" align="center" />
            <output format="&lt;&lt; sound code %02X &gt;&gt;"     line="19" align="center"  >
                <argument>maincpu.pb@C200</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.oq@005E = FB56ED5B4CCD975A</action>
            <action>maincpu.mq@005E = AF06B90B189DC20A</action>
            <action>maincpu.oq@0066 = 51FDCD900132553E</action>
            <action>maincpu.mq@0066 = 01AD8CC04562016E</action>
            <action>maincpu.oq@006E = 86CB9469215622C3</action>
            <action>maincpu.mq@006E = D29BC03975067793</action>
            <action>maincpu.oq@0076 = 995031F373189ECB</action>
            <action>maincpu.mq@0076 = C90061A32348CA9B</action>
            <action>maincpu.oq@007E = 215B2010E690783A</action>
            <action>maincpu.mq@007E = 750B7440B2C0396A</action>
            <action>maincpu.oq@0086 = 55C0DA51D67E9478</action>
            <action>maincpu.mq@0086 = 00908F01832EC028</action>
            <action>maincpu.oq@008E = 435BCD4031217727</action>
            <action>maincpu.mq@008E = 170B991065712277</action>
            <action>maincpu.oq@0096 = CBAECBC6CB906D21</action>
            <action>maincpu.mq@0096 = 9EFE9E969EC03971</action>
        </script>
    </cheat>

</mamecheat>
raflesiau.xml

Code: Select all

<!-- Rafflesia (not encrypted) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mb@60C0 = 69</action>
        </script>
        <script state="off">
            <action>maincpu.mb@60C0 = 4E</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.md@64B8 = C6C26FCB</action>
        </script>
        <script state="off">
            <action>maincpu.md@64B8 = C6CA20FE</action>
        </script>
    </cheat>

    <cheat desc="player speed">
        <parameter>
            <item value="0x0100">01 (slow)</item>
            <item value="0x0280">02       </item>
            <item value="0x0400">03       </item>
            <item value="0x0680">04       </item>
            <item value="0x0800">05 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.mw@257E =  param</action> <!-- up -->
            <action>maincpu.mw@2582 =  param</action> <!-- upper-right : up -->
            <action>maincpu.mw@2584 =  param</action> <!-- upper-right : right -->
            <action>maincpu.mw@2588 =  param</action> <!-- right -->
            <action>maincpu.mw@258A = -param</action> <!-- lower-right : down -->
            <action>maincpu.mw@258C =  param</action> <!-- lower-right : right -->
            <action>maincpu.mw@258E = -param</action> <!-- down -->
            <action>maincpu.mw@2592 = -param</action> <!-- lower-left : down -->
            <action>maincpu.mw@2594 = -param</action> <!-- lower-left : left -->
            <action>maincpu.mw@2598 = -param</action> <!-- left -->
            <action>maincpu.mw@259A =  param</action> <!-- upper-left : up -->
            <action>maincpu.mw@259C = -param</action> <!-- upper-left : left -->
        </script>
        <script state="off">
            <action>maincpu.mw@257E = 0300</action>
            <action>maincpu.mw@2582 = 0300</action>
            <action>maincpu.mw@2584 = 0180</action>
            <action>maincpu.mw@2588 = 0200</action>
            <action>maincpu.mw@258A = FD00</action>
            <action>maincpu.mw@258C = 0180</action>
            <action>maincpu.mw@258E = FD00</action>
            <action>maincpu.mw@2592 = FD00</action>
            <action>maincpu.mw@2594 = FE80</action>
            <action>maincpu.mw@2598 = FE00</action>
            <action>maincpu.mw@259A = 0300</action>
            <action>maincpu.mw@259C = FE80</action>
        </script>
    </cheat>

    <cheat desc="bullet speed">
        <parameter>
            <item value="0x02">01 (slow)</item>
            <item value="0x08">02       </item>
            <item value="0x10">03       </item>
            <item value="0x18">04       </item>
            <item value="0x20">05 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.mb@64E0 = param</action> <!-- shot 1 -->
            <action>maincpu.mb@64F0 = param</action> <!-- shot 2 -->
        </script>
        <script state="off">
            <action>maincpu.mb@64E0 = 08</action>
            <action>maincpu.mb@64F0 = 10</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <comment>reset the game (F3) to enter sound test mode</comment>
        <script state="on">
            <action>maincpu.mq@0066 = 2847B800DBC20021</action>
            <action>maincpu.mq@006E = BFFE3501207FFEFA</action>
            <action>maincpu.mq@0076 = 3E0420EFFE340120</action>
            <action>maincpu.mq@007E = 3E0520DFFE0618F0</action>
            <action>maincpu.mq@0086 = 0520FBFE78778610</action>
            <action>maincpu.mq@008E = 20FDFE051880F67E</action>
            <action>maincpu.mq@0096 = CBAECD1814D3AF03</action>
            <!--
            0066 | 21 00 C2 : ld   hl,$C200 // sound code address
            0069 | DB 00    : in   a,($00)  // read input
            006B | B8       : cp   b
            006C | 47       : ld   b,a
            006D | 28 FA    : jr   z,$0069
            006F | FE 7F    : cp   $7F
            0071 | 20 01    : jr   nz,$0074
            0073 | 35       : dec  (hl)     // decrease code -01
            0074 | FE BF    : cp   $BF
            0076 | 20 01    : jr   nz,$0079
            0078 | 34       : inc  (hl)     // increase code +01
            0079 | FE EF    : cp   $EF
            007B | 20 04    : jr   nz,$0081
            007D | 3E F0    : ld   a,$F0    // decrease code -10
            007F | 18 06    : jr   $0087
            0081 | FE DF    : cp   $DF
            0083 | 20 05    : jr   nz,$008A
            0085 | 3E 10    : ld   a,$10    // increase code +10
            0087 | 86       : add  a,(hl)
            0088 | 77       : ld   (hl),a
            0089 | 78       : ld   a,b
            008A | FE FB    : cp   $FB
            008C | 20 05    : jr   nz,$0093
            008E | 7E       : ld   a,(hl)   // play sound
            008F | F6 80    : or   $80
            0091 | 18 05    : jr   $0098
            0093 | FE FD    : cp   $FD
            0095 | 20 03    : jr   nz,$009A
            0097 | AF       : xor  a        // stop sound
            0098 | D3 14    : out  ($14),a  // send sound code
            009A | 18 CD    : jr   $0069
            -->
        </script>
        <script state="run">
            <output format="----- rafflesia 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="button 2 : stop sound"                 line="16" align="center" />
            <output format="----------------------------"          line="17" align="center" />
            <output format="&lt;&lt; sound code %02X &gt;&gt;"     line="19" align="center"  >
                <argument>maincpu.pb@C200</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.mq@0066 = 01ACCDC04532013E</action>
            <action>maincpu.mq@006E = 86CBC039210676C3</action>
            <action>maincpu.mq@0076 = C90031F323189ECB</action>
            <action>maincpu.mq@007E = 210B2040E6C0393A</action>
            <action>maincpu.mq@0086 = 0090DA01D67EC028</action>
            <action>maincpu.mq@008E = 16E6CD1048217727</action>
            <action>maincpu.mq@0096 = CBAECBC6CBC03921</action>
        </script>
    </cheat>

</mamecheat>
Post Reply