[bowmen] Bowmen

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

[bowmen] Bowmen

Post by jman »

bowmen will be added on 0.243.

Code: Select all

<cheat desc="no hit">
    <script state="on">
        <action>maincpu.mb@62dd = c9</action> <!-- P2 -->
        <action>maincpu.mb@6350 = c9</action> <!-- P1 -->
    </script>
    <script state="off">
        <action>maincpu.mb@62dd = 3a</action>
        <action>maincpu.mb@6350 = 3a</action>
    </script>
</cheat>

<cheat desc="auto fire">
    <script state="on">
        <action>maincpu.mw@4fbb = 4fbd</action> <!-- P2 punch -->
        <action>maincpu.mw@4f77 = 4f79</action> <!-- P2 weapon -->
        <action>maincpu.mw@52d6 = 52d8</action> <!-- P1 punch -->
        <action>maincpu.mw@5292 = 5294</action> <!-- P1 weapon -->
    </script>
    <script state="off">
        <action>maincpu.mw@4fbb = 4e04</action>
        <action>maincpu.mw@4f77 = 4dfc</action>
        <action>maincpu.mw@52d6 = 511f</action>
        <action>maincpu.mw@5292 = 5117</action>
    </script>
</cheat>

<cheat desc="attack speed up">
    <script state="on">
        <action>maincpu.mb@4fc5 = 0x0b</action> <!-- P2 normal -->
        <action>maincpu.mb@4fff = 0x0b</action> <!-- P2 upper -->
        <action>maincpu.mb@52e0 = 0x0b</action> <!-- P1 normal -->
        <action>maincpu.mb@531a = 0x0b</action> <!-- P1 upper -->
    </script>
    <script state="off">
        <action>maincpu.mb@4fc5 = 01</action>
        <action>maincpu.mb@4fff = 01</action>
        <action>maincpu.mb@52e0 = 01</action>
        <action>maincpu.mb@531a = 01</action>
    </script>
</cheat>

<cheat desc="timer speed">
    <parameter>
        <item value="0x7f">01 (slow)</item>
        <item value="0x5f">02       </item>
        <item value="0x3f">03       </item>
        <item value="0x1f">04       </item>
        <item value="0x01">05 (fast)</item>
    </parameter>
    <script state="change">
        <action>maincpu.mb@0fa9 = param</action>
    </script>
    <script state="off">
        <action>maincpu.mb@0fa9 = 38</action>
    </script>
</cheat>

<cheat desc="skip ram/rom check">
    <script state="on">
        <action>maincpu.mw@0849 = 0a0e</action>
    </script>
    <script state="off">
        <action>maincpu.mw@0849 = 093f</action>
    </script>
</cheat>
jman

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

[bowmen] sound test mode

Post by jman »

Code: Select all

<cheat desc="sound test mode">
    <comment>reset the game (F3) to enter sound test mode</comment>
    <script state="on">
        <action>maincpu.md@086d =         367d90c3</action>
        <action>maincpu.mq@7d90 = 2847b801dbe10021</action>
        <action>maincpu.mq@7d98 = fefe350120fdfefa</action>
        <action>maincpu.mq@7da0 = 3e0420fbfe340120</action>
        <action>maincpu.mq@7da8 = 3e0620f7fe0618f0</action>
        <action>maincpu.mq@7db0 = 207ffe0f18778610</action>
        <action>maincpu.mq@7db8 = 0420dffe06187e03</action>
        <action>maincpu.mq@7dc0 = ffffcd1800d3073e</action>
        <!--
        7d90 | 21 00 e1 : ld  hl,$E100 // sound code address
        7d93 | db 01    : in  a,($01)  // read input
        7d95 | b8       : cp  b
        7d96 | 47       : ld  b,a
        7d97 | 28 fa    : jr  z,$7D93
        7d99 | fe fd    : cp  $FD
        7d9b | 20 01    : jr  nz,$7D9E
        7d9d | 35       : dec (hl)     // decrease code -01
        7d9e | fe fe    : cp  $FE
        7da0 | 20 01    : jr  nz,$7DA3
        7da2 | 34       : inc (hl)     // increase code +01
        7da3 | fe fb    : cp  $FB
        7da5 | 20 04    : jr  nz,$7DAB
        7da7 | 3e f0    : ld  a,$F0    // decrease code -10
        7da9 | 18 06    : jr  $7DB1
        7dab | fe f7    : cp  $F7
        7dad | 20 06    : jr  nz,$7DB5
        7daf | 3e 10    : ld  a,$10
        7db1 | 86       : add a,(hl)   // increase code +10
        7db2 | 77       : ld  (hl),a
        7db3 | 18 0f    : jr  $7DC4
        7db5 | fe 7f    : cp  $7F
        7db7 | 20 03    : jr  nz,$7DBC
        7db9 | 7e       : ld  a,(hl)   // play sound
        7dba | 18 06    : jr  $7DC2
        7dbc | fe df    : cp  $DF
        7dbe | 20 04    : jr  nz,$7DC4
        7dc0 | 3e 07    : ld  a,$07    // stop sound
        7dc2 | d3 00    : out ($00),a
        7dc4 | 18 cd    : jr  $7D93
        -->
    </script>
    <script state="run">
        <output format="----- bowmen 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="up : increase code +10"             line="13" align="center" />
        <output format="down : decrease 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@e100</argument>
        </output>
    </script>
    <script state="off">
        <action>maincpu.md@086d =        36e1cc21</action>
        <action>maincpu.mq@7d90 = 000000000000000</action>
        <action>maincpu.mq@7d98 = 000000000000000</action>
        <action>maincpu.mq@7da0 = 000000000000000</action>
        <action>maincpu.mq@7da8 = 000000000000000</action>
        <action>maincpu.mq@7db0 = 000000000000000</action>
        <action>maincpu.mq@7db8 = 000000000000000</action>
        <action>maincpu.mq@7dc0 = 000000000000000</action>
    </script>
</cheat>
jman

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

[bowmen] Bowmen

Post by jman »

bowmen.xml

Code: Select all

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

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mb@62DD = C9</action> <!-- 2P -->
            <action>maincpu.mb@6350 = C9</action> <!-- 1P -->
        </script>
        <script state="off">
            <action>maincpu.mb@62DD = 3A</action>
            <action>maincpu.mb@6350 = 3A</action>
        </script>
    </cheat>

    <cheat desc="walk through wall">
        <script state="on">
            <!-- 2P -->
            <action>maincpu.mb@4DB8 = A1</action>
            <action>maincpu.mb@4DDF = CF</action>
            <!-- 1P -->
            <action>maincpu.mb@50D3 = CF</action>
            <action>maincpu.mb@50FA = 66</action>
        </script>
        <script state="off">
            <action>maincpu.mb@4DB8 = 40</action>
            <action>maincpu.mb@4DDF = D7</action>
            <action>maincpu.mb@50D3 = 6E</action>
            <action>maincpu.mb@50FA = 05</action>
        </script>
    </cheat>

    <cheat desc="rapid fire">
        <script state="on">
            <action>maincpu.mw@4FBB = 4FBD</action> <!-- 2P punch -->
            <action>maincpu.mw@4F77 = 4F79</action> <!-- 2P weapon -->
            <action>maincpu.mw@52D6 = 52D8</action> <!-- 1P punch -->
            <action>maincpu.mw@5292 = 5294</action> <!-- 1P weapon -->
        </script>
        <script state="off">
            <action>maincpu.mw@4FBB = 4E04</action>
            <action>maincpu.mw@4F77 = 4DFC</action>
            <action>maincpu.mw@52D6 = 511F</action>
            <action>maincpu.mw@5292 = 5117</action>
        </script>
    </cheat>

    <cheat desc="player speed">
        <parameter>
            <item value="0x0001">01 (slow)</item>
            <item value="0x0004">02       </item>
            <item value="0x0006">03       </item>
            <item value="0x0008">04       </item>
            <item value="0x000a">05 (fast)</item>
        </parameter>
        <script state="change">
            <!-- 2P -->
            <action>maincpu.mw@4D3E = -param</action> <!-- down -->
            <action>maincpu.mw@4D43 = -param</action> <!-- down -->
            <action>maincpu.mw@4D59 =  param</action> <!-- right -->
            <action>maincpu.mw@4D5E =  param</action> <!-- right -->
            <action>maincpu.mw@4D74 = -param</action> <!-- left -->
            <action>maincpu.mw@4D79 = -param</action> <!-- left -->
            <action>maincpu.mw@4D8A =  param</action> <!-- up -->
            <action>maincpu.mw@4D8F =  param</action> <!-- up -->
            <!-- 1P -->
            <action>maincpu.mw@5059 = -param</action> <!-- down -->
            <action>maincpu.mw@505E = -param</action> <!-- down -->
            <action>maincpu.mw@5074 =  param</action> <!-- right -->
            <action>maincpu.mw@5079 =  param</action> <!-- right -->
            <action>maincpu.mw@508F = -param</action> <!-- left -->
            <action>maincpu.mw@5094 = -param</action> <!-- left -->
            <action>maincpu.mw@50A5 =  param</action> <!-- up -->
            <action>maincpu.mw@50AA =  param</action> <!-- up -->
        </script>
        <script state="off">
            <action>maincpu.mw@4D3E = FFFA</action>
            <action>maincpu.mw@4D43 = FFFE</action>
            <action>maincpu.mw@4D59 = 0006</action>
            <action>maincpu.mw@4D5E = 0002</action>
            <action>maincpu.mw@4D74 = FFFA</action>
            <action>maincpu.mw@4D79 = FFFE</action>
            <action>maincpu.mw@4D8A = 0006</action>
            <action>maincpu.mw@4D8F = 0002</action>
            <action>maincpu.mw@5059 = FFFA</action>
            <action>maincpu.mw@505E = FFFE</action>
            <action>maincpu.mw@5074 = 0006</action>
            <action>maincpu.mw@5079 = 0002</action>
            <action>maincpu.mw@508F = FFFA</action>
            <action>maincpu.mw@5094 = FFFE</action>
            <action>maincpu.mw@50A5 = 0006</action>
            <action>maincpu.mw@50AA = 0002</action>
        </script>
    </cheat>

    <cheat desc="attack speed up">
        <script state="on">
            <action>maincpu.mb@4FC5 =  B</action> <!-- 2P normal -->
            <action>maincpu.mb@4FFF =  B</action> <!-- 2P upper -->
            <action>maincpu.mb@52E0 =  B</action> <!-- 1P normal -->
            <action>maincpu.mb@531A =  B</action> <!-- 1P upper -->
        </script>
        <script state="off">
            <action>maincpu.mb@4FC5 = 01</action>
            <action>maincpu.mb@4FFF = 01</action>
            <action>maincpu.mb@52E0 = 01</action>
            <action>maincpu.mb@531A = 01</action>
        </script>
    </cheat>

    <cheat desc="timer speed">
        <parameter>
            <item value="0x7f">01 (slow)</item>
            <item value="0x5f">02       </item>
            <item value="0x3f">03       </item>
            <item value="0x1f">04       </item>
            <item value="0x01">05 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.mb@0FA9 = param</action>
        </script>
        <script state="off">
            <action>maincpu.mb@0FA9 = 38</action>
        </script>
    </cheat>

    <cheat desc="easy level finish">
        <comment>press start button to finish current level</comment>
        <script state="on">
            <action>maincpu.md@4CD1 = A77DD0CD        </action>
            <action>maincpu.mq@7DD0 = C0E21B3A7FCB00DB</action>
            <action>maincpu.mq@7DD8 = 06C811D22021C0A7</action>
            <action>maincpu.mq@7DE0 = FEF0E60C28A77E23</action>
            <action>maincpu.mq@7DE8 = 00362B0036063080</action>
            <action>maincpu.mq@7DF0 = CDE920B37A1B2323</action>
            <action>maincpu.mq@7DF8 = 0000000000C955B1</action>
            <!--
            7DD0 | DB 00    : in   a,($00)
            7DD2 | CB 7F    : bit  7,a       // check 1P start button
            7DD4 | 3A 1B E2 : ld   a,($E21B)
            7DD7 | C0       : ret  nz
            7DD8 | A7       : and  a
            7DD9 | C0       : ret  nz
            7DDA | 21 20 D2 : ld   hl,$D220  // clear all blocks
            7DDD | 11 C8 06 : ld   de,$06C8
            7DE0 | 23       : inc  hl
            7DE1 | 7E       : ld   a,(hl)
            7DE2 | A7       : and  a
            7DE3 | 28 0C    : jr   z,$7DF1
            7DE5 | E6 F0    : and  $F0
            7DE7 | FE 80    : cp   $80
            7DE9 | 30 06    : jr   nc,$7DF1
            7DEB | 36 00    : ld   (hl),$00
            7DED | 2B       : dec  hl
            7DEE | 36 00    : ld   (hl),$00
            7DF0 | 23       : inc  hl
            7DF1 | 23       : inc  hl
            7DF2 | 1B       : dec  de
            7DF3 | 7A       : ld   a,d
            7DF4 | B3       : or   e
            7DF5 | 20 E9    : jr   nz,$7DE0
            7DF7 | CD B1 55 : call $55B1
            7DFA | C9       : ret
            -->
        </script>
        <script state="off">
            <action>maincpu.md@4CD1 = A7E21B3A        </action>
            <action>maincpu.mq@7DD0 = 0000000000000000</action>
            <action>maincpu.mq@7DD8 = 0000000000000000</action>
            <action>maincpu.mq@7DE0 = 0000000000000000</action>
            <action>maincpu.mq@7DE8 = 0000000000000000</action>
            <action>maincpu.mq@7DF0 = 0000000000000000</action>
            <action>maincpu.mq@7DF8 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <comment>reset the game (F3) to enter sound test mode</comment>
        <script state="on">
            <action>maincpu.md@086D = 367D90C3        </action>
            <action>maincpu.mq@7D90 = 2847B801DBE10021</action>
            <action>maincpu.mq@7D98 = FEFE350120FDFEFA</action>
            <action>maincpu.mq@7DA0 = 3E0420FBFE340120</action>
            <action>maincpu.mq@7DA8 = 3E0520F7FE0618F0</action>
            <action>maincpu.mq@7DB0 = 03207FFE78778610</action>
            <action>maincpu.mq@7DB8 = 3E0420DFFE06187E</action>
            <action>maincpu.mq@7DC0 = 000000CE1800D307</action>
            <!--
            7D90 | 21 00 E1 : ld   hl,$E100 // sound code address
            7D93 | DB 01    : in   a,($01)  // read input
            7D95 | B8       : cp   b
            7D96 | 47       : ld   b,a
            7D97 | 28 FA    : jr   z,$7D93
            7D99 | FE FD    : cp   $FD
            7D9B | 20 01    : jr   nz,$7D9E
            7D9D | 35       : dec  (hl)     // decrease code -01
            7D9E | FE FE    : cp   $FE
            7DA0 | 20 01    : jr   nz,$7DA3
            7DA2 | 34       : inc  (hl)     // increase code +01
            7DA3 | FE FB    : cp   $FB
            7DA5 | 20 04    : jr   nz,$7DAB
            7DA7 | 3E F0    : ld   a,$F0    // decrease code -10
            7DA9 | 18 06    : jr   $7DB1
            7DAB | FE F7    : cp   $F7
            7DAD | 20 05    : jr   nz,$7DB4
            7DAF | 3E 10    : ld   a,$10    // increase code +10
            7DB1 | 86       : add  a,(hl)
            7DB2 | 77       : ld   (hl),a
            7DB3 | 78       : ld   a,b
            7DB4 | FE 7F    : cp   $7F
            7DB6 | 20 03    : jr   nz,$7DBB
            7DB8 | 7E       : ld   a,(hl)   // play sound
            7DB9 | 18 06    : jr   $7DC1
            7DBB | FE DF    : cp   $DF
            7DBD | 20 04    : jr   nz,$7DC3
            7DBF | 3E 07    : ld   a,$07    // stop sound
            7DC1 | D3 00    : out  ($00),a  // send sound code
            7DC3 | 18 CE    : jr   $7D93
            -->
        </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@E100</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.md@086D = 36E1CC21       </action>
            <action>maincpu.mq@7D90 = 000000000000000</action>
            <action>maincpu.mq@7D98 = 000000000000000</action>
            <action>maincpu.mq@7DA0 = 000000000000000</action>
            <action>maincpu.mq@7DA8 = 000000000000000</action>
            <action>maincpu.mq@7DB0 = 000000000000000</action>
            <action>maincpu.mq@7DB8 = 000000000000000</action>
            <action>maincpu.mq@7DC0 = 000000000000000</action>
        </script>
    </cheat>

    <cheat desc="skip ram/rom check">
        <script state="on">
            <action>maincpu.mw@0849 = 0A0E</action>
        </script>
        <script state="off">
            <action>maincpu.mw@0849 = 093F</action>
        </script>
    </cheat>

</mamecheat>
  • "walk through wall" and "player speed" : Added new.
  • "easy level finish" : Added new. You can finish curret level when you press 1P start button.
jman

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