[smsj/bombraid] Bomber Raid

This forum is for posting cheats for any non-arcade game in M.A.M.E. ( aka the M.E.S.S. games ) including any softwarelist game. Requests will be fulfilled here....but please keep the requests to the requests forum.
Post Reply
jman
Posts: 1315
Joined: Tue Dec 01, 2020 1:24 pm
Been thanked: 9 times

[smsj/bombraid] Bomber Raid

Post by jman »

Code: Select all

<cheat desc="no hit - player (wip)">
    <script state="on">
        <action>slot:cart:rom.mb@4ee1 = c9</action> <!-- enemy -->
        <action>slot:cart:rom.mb@4ec0 = c9</action> <!-- bullet -->
        <action>slot:cart:rom.mb@5766 = c9</action> <!-- boss -->
    </script>
    <script state="off">
        <action>slot:cart:rom.mb@4ee1 = 3a</action>
        <action>slot:cart:rom.mb@4ec0 = c0</action>
        <action>slot:cart:rom.mb@5766 = c0</action>
    </script>
</cheat>

<cheat desc="no hit - sidefighter (wip)">
    <script state="on">
        <action>slot:cart:rom.mb@5145 = c9</action> <!-- enemy -->
        <action>slot:cart:rom.mb@5120 = c9</action> <!-- bullet -->
    </script>
    <script state="off">
        <action>slot:cart:rom.mb@5145 = c8</action>
        <action>slot:cart:rom.mb@5120 = d0</action>
    </script>
</cheat>

<cheat desc="auto fire (wip)">
    <script state="on">
        <action>slot:cart:rom.mb@2fca = 0d</action>
    </script>
    <script state="off">
        <action>slot:cart:rom.mb@2fca = 5b</action>
    </script>
</cheat>

<cheat desc="player speed (wip)">
    <parameter min="0x01" max="0x05" step="0x01" />
    <script state="on">
        <action>slot:cart:rom.mw@2ccb =             7600</action>
        <action>slot:cart:rom.mq@7600 = 77dd7616cd097edd</action>
        <action>slot:cart:rom.mq@7608 = dd7616cd0b7edd09</action>
        <action>slot:cart:rom.mq@7610 = c8a7c9341bcd0b77</action>
        <action>slot:cart:rom.mq@7618 = ffffc944edf0003e</action>
        <!--
        7600 | dd 7e 09 : ld   a,(ix+$09)
        7603 | cd 16 76 : call $7616
        7606 | dd 77 09 : ld   (ix+$09),a
        7609 | dd 7e 0b : ld   a,(ix+$0b)
        760c | cd 16 76 : call $7616
        760f | dd 77 0b : ld   (ix+$0b),a
        7612 | cd 1b 34 : call $341b
        7615 | c9       : ret
        7616 | a7       : and  a
        7617 | c8       : ret  z
        7618 | 3e xx    : ld   a,$xx
        761a | f0       : ret  p
        761b | ed 44    : neg
        761d | c9       : ret
        -->
    </script>
    <script state="change">
        <action>slot:cart:rom.mb@7619 = param</action>
    </script>
    <script state="off">
        <action>slot:cart:rom.mw@2ccb =             341b</action>
        <action>slot:cart:rom.mq@7600 = ffffffffffffffff</action>
        <action>slot:cart:rom.mq@7608 = ffffffffffffffff</action>
        <action>slot:cart:rom.mq@7610 = ffffffffffffffff</action>
        <action>slot:cart:rom.mq@7618 = ffffffffffffffff</action>
    </script>
</cheat>

<cheat desc="bullet speed (wip)">
    <parameter>
        <item value="0x06">01 (slow)</item>
        <item value="0x0c">02       </item>
        <item value="0x12">03       </item>
        <item value="0x18">04       </item>
        <item value="0x1e">05 (fast)</item>
    </parameter>
    <script state="on">
        <action>slot:cart:rom.mw@3105 =             7620</action>
        <action>slot:cart:rom.mq@7620 = c9341bcd000b36dd</action>
        <!--
        7620 | DD 36 0B xx : ld   (ix+$0b),$xx
        7624 | CD 1B 34    : call $341B
        7627 | C9          : ret
        -->
    </script>
    <script state="change">
        <action>slot:cart:rom.mb@7623 = -param</action>
    </script>
    <script state="off">
        <action>slot:cart:rom.mw@3105 =             341b</action>
        <action>slot:cart:rom.mq@7620 = ffffffffffffffff</action>
    </script>
</cheat>

<cheat desc="sound test mode (wip)">
    <comment>reset the game (F3) to enter sound test mode</comment>
    <script state="on">
        <action>slot:cart:rom.mw@05d0 =             7630</action>
        <action>slot:cart:rom.mq@7630 = 22d5763311800021</action>
        <action>slot:cart:rom.mq@7638 = fec86fbddcdbc100</action>
        <action>slot:cart:rom.mq@7640 = 0120f7fe250120fb</action>
        <action>slot:cart:rom.mq@7648 = 04187c0320effe24</action>
        <action>slot:cart:rom.mq@7650 = c9d00332afc0dffe</action>
        <!--
        7630 | 21 00 80 : ld   hl,$8000   // initialize sound and input values
        7633 | 11 33 76 : ld   de,$7633
        7636 | d5       : push de
        7637 | 22 00 c1 : ld   ($c100),hl
        763a | db dc    : in   a,($dc)    // read input
        763c | bd       : cp   l
        763d | 6f       : ld   l,a
        763e | c8       : ret  z
        763f | fe fb    : cp   $fb
        7641 | 20 01    : jr   nz,$7644
        7643 | 25       : dec  h          // pressed left - code decrement
        7644 | fe f7    : cp   $f7
        7646 | 20 01    : jr   nz,$7649
        7648 | 24       : inc  h          // pressed right - code increment
        7649 | fe ef    : cp   $ef
        764b | 20 03    : jr   nz,$7650
        764d | 7c       : ld   a,h        // pressed button 1 - play sound
        764e | 18 04    : jr   $7654
        7650 | fe df    : cp   $df
        7652 | c0       : ret  nz
        7653 | af       : xor  a          // pressed button 2 - stop sound
        7654 | 32 03 d0 : ld   ($d003),a  // send sound code
        7657 | c9       : ret
        -->
    </script>
    <script state="run">
        <output format="----- bomber raid 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@c101</argument>
        </output>
    </script>
    <script state="off">
        <action>slot:cart:rom.mw@05d0 =             17f8</action>
        <action>slot:cart:rom.mq@7630 = ffffffffffffffff</action>
        <action>slot:cart:rom.mq@7638 = ffffffffffffffff</action>
        <action>slot:cart:rom.mq@7640 = ffffffffffffffff</action>
        <action>slot:cart:rom.mq@7648 = ffffffffffffffff</action>
        <action>slot:cart:rom.mq@7650 = ffffffffffffffff</action>
    </script>
</cheat>
jman

my wip cheat database back-up (06/01/2025 ver.)
https://u3.getuploader.com/...../download/58
downloadpass : jman2020
jman
Posts: 1315
Joined: Tue Dec 01, 2020 1:24 pm
Been thanked: 9 times

[sms/bombraid]+ Bomber Raid

Post by jman »

sms/bombraid.xml

Code: Select all

<!-- Bomber Raid (World) -->
<mamecheat version="1">

    <cheat desc="no hit - player">
        <script state="on">
            <action>slot:cart:rom.mb@4EC0 = C9</action> <!-- bullet -->
            <action>slot:cart:rom.mb@4EE4 = C9</action> <!-- enemy -->
            <action>slot:cart:rom.mb@5766 = C9</action> <!-- boss -->
        </script>
        <script state="off">
            <action>slot:cart:rom.mb@4EC0 = C0</action>
            <action>slot:cart:rom.mb@4EE4 = B7</action>
            <action>slot:cart:rom.mb@5766 = C0</action>
        </script>
    </cheat>

    <cheat desc="no hit - sidefighters">
        <script state="on">
            <action>slot:cart:rom.mb@5120 = C9</action> <!-- bullet -->
            <action>slot:cart:rom.mb@5145 = C9</action> <!-- enemy -->
        </script>
        <script state="off">
            <action>slot:cart:rom.mb@5120 = D0</action>
            <action>slot:cart:rom.mb@5145 = C8</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>slot:cart:rom.mb@2FCA = 0D</action>
        </script>
        <script state="off">
            <action>slot:cart:rom.mb@2FCA = 5B</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>slot:cart:rom.mw@2CCB = 7600            </action>
            <action>slot:cart:rom.mq@7600 = 77DD7616CD097EDD</action>
            <action>slot:cart:rom.mq@7608 = DD7616CD0B7EDD09</action>
            <action>slot:cart:rom.mq@7610 = C8A7C9341BCD0B77</action>
            <action>slot:cart:rom.mq@7618 = FFFFC944EDF0003E</action>
            <!--
            7600 | DD 7E 09 : ld   a,(ix+$09) // x position
            7603 | CD 16 76 : call $7616
            7606 | DD 77 09 : ld   (ix+$09),a
            7609 | DD 7E 0B : ld   a,(ix+$0b) // y position
            760C | CD 16 76 : call $7616
            760F | DD 77 0B : ld   (ix+$0b),a
            7612 | CD 1B 34 : call $341B
            7615 | C9       : ret
            7616 | A7       : and  a          // common routine
            7617 | C8       : ret  z
            7618 | 3E xx    : ld   a,$xx
            761A | F0       : ret  p
            761B | ED 44    : neg
            761D | C9       : ret
            -->
        </script>
        <script state="change">
            <action>slot:cart:rom.mb@7619 = param</action>
        </script>
        <script state="off">
            <action>slot:cart:rom.mw@2CCB = 341B            </action>
            <action>slot:cart:rom.mq@7600 = FFFFFFFFFFFFFFFF</action>
            <action>slot:cart:rom.mq@7608 = FFFFFFFFFFFFFFFF</action>
            <action>slot:cart:rom.mq@7610 = FFFFFFFFFFFFFFFF</action>
            <action>slot:cart:rom.mq@7618 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="bullet speed - main shot">
        <parameter>
            <item value="0x06">01 (slow)</item>
            <item value="0x0c">02       </item>
            <item value="0x12">03       </item>
            <item value="0x18">04       </item>
            <item value="0x1e">05 (fast)</item>
        </parameter>
        <script state="on">
            <action>slot:cart:rom.mw@3105 = 7620            </action>
            <action>slot:cart:rom.mq@7620 = C9341BCD000B36DD</action>
            <!--
            7620 | DD 36 0B xx : ld   (ix+$0b),$xx
            7624 | CD 1B 34    : call $341B
            7627 | C9          : ret
            -->
        </script>
        <script state="change">
            <action>slot:cart:rom.mb@7623 = -param</action>
        </script>
        <script state="off">
            <action>slot:cart:rom.mw@3105 = 341B            </action>
            <action>slot:cart:rom.mq@7620 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="sound device">
        <!-- smsj and sms1krfm only -->
        <comment>reset the game (F3) to switch sound device</comment>
        <parameter>
            <item value="0x0028">PSG</item>
            <item value="0x0118">FM </item>
        </parameter>
        <script state="change">
            <action>slot:cart:rom.mw@05AA = param</action>
        </script>
        <script state="off">
            <action>slot:cart:rom.mw@05AA = 0128</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <comment>set &quot;skip rom check error&quot; then reset the game (F3)</comment>
        <script state="on">
            <action>slot:cart:rom.mw@05D0 = 7630            </action>
            <action>slot:cart:rom.mq@7630 = 2847B8DCDBC20021</action>
            <action>slot:cart:rom.mq@7638 = F7FE350120FBFEFA</action>
            <action>slot:cart:rom.mq@7640 = 3E0420FDFE340120</action>
            <action>slot:cart:rom.mq@7648 = 3E0520FEFE0618F0</action>
            <action>slot:cart:rom.mq@7650 = 0520EFFE78778610</action>
            <action>slot:cart:rom.mq@7658 = 20DFFE051880F67E</action>
            <action>slot:cart:rom.mq@7660 = FFCC18D00332AF04</action>
            <!--
            7630 | 21 00 C2 : ld   hl,$C200  // sound code address
            7633 | DB DC    : in   a,($DC)   // read input
            7635 | B8       : cp   b
            7636 | 47       : ld   b,a
            7637 | 28 FA    : jr   z,$7633
            7639 | FE FB    : cp   $FB
            763B | 20 01    : jr   nz,$763E
            763D | 35       : dec  (hl)      // decrease code -01
            763E | FE F7    : cp   $F7
            7640 | 20 01    : jr   nz,$7643
            7642 | 34       : inc  (hl)      // increase code +01
            7643 | FE FD    : cp   $FD
            7645 | 20 04    : jr   nz,$764B
            7647 | 3E F0    : ld   a,$F0     // decrease code -10
            7649 | 18 06    : jr   $7651
            764B | FE FE    : cp   $FE
            764D | 20 05    : jr   nz,$7654
            764F | 3E 10    : ld   a,$10     // increase code +10
            7651 | 86       : add  a,(hl)
            7652 | 77       : ld   (hl),a
            7653 | 78       : ld   a,b
            7654 | FE EF    : cp   $EF
            7656 | 20 05    : jr   nz,$765D
            7658 | 7E       : ld   a,(hl)    // play sound
            7659 | F6 80    : or   $80
            765B | 18 05    : jr   $7662
            765D | FE DF    : cp   $DF
            765F | 20 04    : jr   nz,$7665
            7661 | AF       : xor  a         // stop sound
            7662 | 32 03 D0 : ld   ($D003),a // send sound code
            7665 | 18 CC    : jr   $7633
            -->
        </script>
        <script state="run">
            <output format="----- 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>slot:cart:rom.mw@05D0 = 17F8            </action>
            <action>slot:cart:rom.mq@7630 = FFFFFFFFFFFFFFFF</action>
            <action>slot:cart:rom.mq@7638 = FFFFFFFFFFFFFFFF</action>
            <action>slot:cart:rom.mq@7640 = FFFFFFFFFFFFFFFF</action>
            <action>slot:cart:rom.mq@7648 = FFFFFFFFFFFFFFFF</action>
            <action>slot:cart:rom.mq@7650 = FFFFFFFFFFFFFFFF</action>
            <action>slot:cart:rom.mq@7658 = FFFFFFFFFFFFFFFF</action>
            <action>slot:cart:rom.mq@7660 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="skip rom check error">
        <script state="on">
            <!-- detect bios -->
            <action>                                    temp0 = 00</action> <!-- initialize flag -->
            <action condition="user1.mw@0006 == 0x7d18">temp0 = 01</action>
            <action condition="user1.mw@0006 == 0x6518">temp0 = 02</action>
            <action condition="user1.mw@0006 == 0x36ff">temp0 = 03</action>
            <action condition="user1.mw@0006 == 0x6f18">temp0 = 04</action>
            <action condition="user1.mw@0006 == 0x0000">temp0 = 05</action>
            <action condition="user1.mw@0006 == 0x0406">temp0 = 06</action>
            <action condition="user1.mw@0006 == 0x94cd">temp0 = 07</action>
            <!-- US/European BIOS with Alex Kidd ($bef2) -->
            <action condition="temp0 == 01">user1.mb@17EF2 = C3</action>
            <!-- US/European BIOS v1.3 -->
            <action condition="temp0 == 02">user1.mb@00128 = C3</action>
            <!-- US/European BIOS v2.4 ($8142) -->
            <action condition="temp0 == 03">user1.mb@1C142 = C3</action>
            <!-- US/European BIOS v3.4 -->
            <action condition="temp0 == 04">user1.mb@0813E = C3</action>
            <!-- US/European BIOS v4.4 ($b0b9) -->
            <action condition="temp0 == 05">user1.mb@170B9 = C3</action>
            <!-- US Master System BIOS v1.0 -->
            <action condition="temp0 == 06">user1.mb@00140 = C3</action>
            <!-- European/Brazilian BIOS with Sonic -->
            <action condition="temp0 == 07">user1.mb@0270E = C3</action>
        </script>
        <script state="off">
            <action condition="temp0 == 01">user1.mb@17EF2 = CA</action>
            <action condition="temp0 == 02">user1.mb@00128 = CA</action>
            <action condition="temp0 == 03">user1.mb@1C142 = CA</action>
            <action condition="temp0 == 04">user1.mb@0813E = CA</action>
            <action condition="temp0 == 05">user1.mb@170B9 = CA</action>
            <action condition="temp0 == 06">user1.mb@00140 = CA</action>
            <action condition="temp0 == 07">user1.mb@0270E = CA</action>
        </script>
    </cheat>

</mamecheat>
sms/bombraidp.xml

Code: Select all

<!-- Battle Wings (Bomber Raid, prototype) -->
<mamecheat version="1">

    <cheat desc="no hit - player">
        <script state="on">
            <action>slot:cart:rom.mb@3F4B = C9</action> <!-- bullet -->
            <action>slot:cart:rom.mb@3F6F = C9</action> <!-- enemy -->
        </script>
        <script state="off">
            <action>slot:cart:rom.mb@3F4B = C0</action>
            <action>slot:cart:rom.mb@3F6F = B7</action>
        </script>
    </cheat>

    <cheat desc="no hit - sidefighters">
        <script state="on">
            <action>slot:cart:rom.mb@417E = C9</action> <!-- bullet -->
            <action>slot:cart:rom.mb@41A2 = C9</action> <!-- enemy -->
        </script>
        <script state="off">
            <action>slot:cart:rom.mb@417E = C0</action>
            <action>slot:cart:rom.mb@41A2 = C8</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>slot:cart:rom.mb@2095 = 0D</action>
        </script>
        <script state="off">
            <action>slot:cart:rom.mb@2095 = 5B</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>slot:cart:rom.mw@1D9A = 5C40            </action>
            <action>slot:cart:rom.mq@5C40 = 77DD5C56CD097EDD</action>
            <action>slot:cart:rom.mq@5C48 = DD5C56CD0B7EDD09</action>
            <action>slot:cart:rom.mq@5C50 = C8A7C924E2CD0B77</action>
            <action>slot:cart:rom.mq@5C58 = FFFFC944EDF0003E</action>
            <!--
            5C40 | DD 7E 09 : ld   a,(ix+$09) // x position
            5C43 | CD 56 5C : call $5C56
            5C46 | DD 77 09 : ld   (ix+$09),a
            5C49 | DD 7E 0B : ld   a,(ix+$0b) // y position
            5C4C | CD 56 5C : call $5C56
            5C4F | DD 77 0B : ld   (ix+$0b),a
            5C52 | CD E2 24 : call $24E2
            5C55 | C9       : ret
            5C56 | A7       : and  a          // common routine
            5C57 | C8       : ret  z
            5C58 | 3E xx    : ld   a,$xx
            5C5A | F0       : ret  p
            5C5B | ED 44    : neg
            5C5D | C9       : ret
            -->
        </script>
        <script state="change">
            <action>slot:cart:rom.mb@5C59 = param</action>
        </script>
        <script state="off">
            <action>slot:cart:rom.mw@1D9A = 24E2            </action>
            <action>slot:cart:rom.mq@5C40 = FFFFFFFFFFFFFFFF</action>
            <action>slot:cart:rom.mq@5C48 = FFFFFFFFFFFFFFFF</action>
            <action>slot:cart:rom.mq@5C50 = FFFFFFFFFFFFFFFF</action>
            <action>slot:cart:rom.mq@5C58 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="bullet speed - main shot">
        <parameter>
            <item value="0x06">01 (slow)</item>
            <item value="0x0c">02       </item>
            <item value="0x12">03       </item>
            <item value="0x18">04       </item>
            <item value="0x1e">05 (fast)</item>
        </parameter>
        <script state="on">
            <action>slot:cart:rom.mw@21D0 = 5C60            </action>
            <action>slot:cart:rom.mq@5C60 = C924E2CD000B36DD</action>
            <!--
            5C60 | DD 36 0B xx : ld   (ix+$0b),$xx
            5C64 | CD E2 24    : call $24E2
            5C67 | C9          : ret
            -->
        </script>
        <script state="change">
            <action>slot:cart:rom.mb@5C63 = -param</action>
        </script>
        <script state="off">
            <action>slot:cart:rom.mw@21D0 = 24E2            </action>
            <action>slot:cart:rom.mq@5C60 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="sound device">
        <!-- smsj and sms1krfm only -->
        <comment>reset the game (F3) to switch sound device</comment>
        <parameter>
            <item value="0x0028">PSG</item>
            <item value="0x0118">FM </item>
        </parameter>
        <script state="change">
            <action>slot:cart:rom.mw@04FF = param</action>
        </script>
        <script state="off">
            <action>slot:cart:rom.mw@04FF = 0128</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <comment>set &quot;skip rom check error&quot; then reset the game (F3)</comment>
        <script state="on">
            <action>slot:cart:rom.mw@0510 = 5C70            </action>
            <action>slot:cart:rom.mq@5C70 = 2847B8DCDBC20021</action>
            <action>slot:cart:rom.mq@5C78 = F7FE350120FBFEFA</action>
            <action>slot:cart:rom.mq@5C80 = 3E0420FDFE340120</action>
            <action>slot:cart:rom.mq@5C88 = 3E0520FEFE0618F0</action>
            <action>slot:cart:rom.mq@5C90 = 0520EFFE78778610</action>
            <action>slot:cart:rom.mq@5C98 = 20DFFE051880F67E</action>
            <action>slot:cart:rom.mq@5CA0 = FFCC18D00332AF04</action>
            <!--
            5C70 | 21 00 C2 : ld   hl,$C200  // sound code address
            5C73 | DB DC    : in   a,($DC)   // read input
            5C75 | B8       : cp   b
            5C76 | 47       : ld   b,a
            5C77 | 28 FA    : jr   z,$5C73
            5C79 | FE FB    : cp   $FB
            5C7B | 20 01    : jr   nz,$5C7E
            5C7D | 35       : dec  (hl)      // decrease code -01
            5C7E | FE F7    : cp   $F7
            5C80 | 20 01    : jr   nz,$5C83
            5C82 | 34       : inc  (hl)      // increase code +01
            5C83 | FE FD    : cp   $FD
            5C85 | 20 04    : jr   nz,$5C8B
            5C87 | 3E F0    : ld   a,$F0     // decrease code -10
            5C89 | 18 06    : jr   $5C91
            5C8B | FE FE    : cp   $FE
            5C8D | 20 05    : jr   nz,$5C94
            5C8F | 3E 10    : ld   a,$10     // increase code +10
            5C91 | 86       : add  a,(hl)
            5C92 | 77       : ld   (hl),a
            5C93 | 78       : ld   a,b
            5C94 | FE EF    : cp   $EF
            5C96 | 20 05    : jr   nz,$5C9D
            5C98 | 7E       : ld   a,(hl)    // play sound
            5C99 | F6 80    : or   $80
            5C9B | 18 05    : jr   $5CA2
            5C9D | FE DF    : cp   $DF
            5C9F | 20 04    : jr   nz,$5CA5
            5CA1 | AF       : xor  a         // stop sound
            5CA2 | 32 03 D0 : ld   ($D003),a // send sound code
            5CA5 | 18 CC    : jr   $5C73
            -->
        </script>
        <script state="run">
            <output format="----- 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>slot:cart:rom.mw@0510 = 0BC5            </action>
            <action>slot:cart:rom.mq@5C70 = FFFFFFFFFFFFFFFF</action>
            <action>slot:cart:rom.mq@5C78 = FFFFFFFFFFFFFFFF</action>
            <action>slot:cart:rom.mq@5C80 = FFFFFFFFFFFFFFFF</action>
            <action>slot:cart:rom.mq@5C88 = FFFFFFFFFFFFFFFF</action>
            <action>slot:cart:rom.mq@5C90 = FFFFFFFFFFFFFFFF</action>
            <action>slot:cart:rom.mq@5C98 = FFFFFFFFFFFFFFFF</action>
            <action>slot:cart:rom.mq@5CA0 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="skip rom check error">
        <script state="on">
            <!-- detect bios -->
            <action>                                    temp0 = 00</action> <!-- initialize flag -->
            <action condition="user1.mw@0006 == 0x7d18">temp0 = 01</action>
            <action condition="user1.mw@0006 == 0x6518">temp0 = 02</action>
            <action condition="user1.mw@0006 == 0x36ff">temp0 = 03</action>
            <action condition="user1.mw@0006 == 0x6f18">temp0 = 04</action>
            <action condition="user1.mw@0006 == 0x0000">temp0 = 05</action>
            <action condition="user1.mw@0006 == 0x0406">temp0 = 06</action>
            <action condition="user1.mw@0006 == 0x94cd">temp0 = 07</action>
            <!-- US/European BIOS with Alex Kidd ($bef2) -->
            <action condition="temp0 == 01">user1.mb@17EF2 = C3</action>
            <!-- US/European BIOS v1.3 -->
            <action condition="temp0 == 02">user1.mb@00128 = C3</action>
            <!-- US/European BIOS v2.4 ($8142) -->
            <action condition="temp0 == 03">user1.mb@1C142 = C3</action>
            <!-- US/European BIOS v3.4 -->
            <action condition="temp0 == 04">user1.mb@0813E = C3</action>
            <!-- US/European BIOS v4.4 ($b0b9) -->
            <action condition="temp0 == 05">user1.mb@170B9 = C3</action>
            <!-- US Master System BIOS v1.0 -->
            <action condition="temp0 == 06">user1.mb@00140 = C3</action>
            <!-- European/Brazilian BIOS with Sonic -->
            <action condition="temp0 == 07">user1.mb@0270E = C3</action>
        </script>
        <script state="off">
            <action condition="temp0 == 01">user1.mb@17EF2 = CA</action>
            <action condition="temp0 == 02">user1.mb@00128 = CA</action>
            <action condition="temp0 == 03">user1.mb@1C142 = CA</action>
            <action condition="temp0 == 04">user1.mb@0813E = CA</action>
            <action condition="temp0 == 05">user1.mb@170B9 = CA</action>
            <action condition="temp0 == 06">user1.mb@00140 = CA</action>
            <action condition="temp0 == 07">user1.mb@0270E = CA</action>
        </script>
    </cheat>

</mamecheat>
"no hit" : bombraidp is stuck in the middle of level 1 so that I can't arrive at boss area. And I can't find similar "no hit" routine against boss in this set.
jman

my wip cheat database back-up (06/01/2025 ver.)
https://u3.getuploader.com/...../download/58
downloadpass : jman2020
Post Reply