[smsj/ashura] Secret Command/Ashura

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

[smsj/ashura] Secret Command/Ashura

Post by jman »

Code: Select all

<cheat desc="no hit (wip)">
    <script state="on">
        <action>slot:cart:rom.mb@25bc = da</action> <!-- bullet -->
        <action>slot:cart:rom.mb@25eb = 55</action> <!-- P1 tank -->
        <action>slot:cart:rom.mb@25f8 = 55</action> <!-- P2 tank -->
        <action>slot:cart:rom.mb@2632 = 55</action> <!-- P1 grenade -->
        <action>slot:cart:rom.mb@263d = 55</action> <!-- P2 grenade -->
    </script>
    <script state="off">
        <action>slot:cart:rom.mb@25bc = fa</action>
        <action>slot:cart:rom.mb@25eb = 56</action>
        <action>slot:cart:rom.mb@25f8 = 56</action>
        <action>slot:cart:rom.mb@2632 = 56</action>
        <action>slot:cart:rom.mb@263d = 56</action>
    </script>
</cheat>

<cheat desc="auto fire (wip)">
    <script state="on">
        <action>slot:cart:rom.md@1239 =         4f0010cd</action> <!-- P1 -->
        <action>slot:cart:rom.md@14ed =         4f001bcd</action> <!-- P2 -->
        <action>slot:cart:rom.mq@0010 = 643a4710e6c1633a</action>
        <action>slot:cart:rom.mq@0018 = 10e6c1653ac9b0c1</action>
        <action>slot:cart:rom.mq@0020 = ffffc9b0c1663a47</action>
        <!--
        0010 | 3a 63 c1 : ld  a,($c163) // P1
        0013 | e6 10    : and $10
        0015 | 47       : ld  b,a
        0016 | 3a 64 c1 : ld  a,($c164)
        0019 | b0       : or  b
        001a | c9       : ret
        001b | 3a 65 c1 : ld  a,($c165) // P2
        001e | e6 10    : and $10
        0020 | 47       : ld  b,a
        0021 | 3a 66 c1 : ld  a,($c166)
        0024 | b0       : or  b
        0025 | c9       : ret
        -->
    </script>
    <script state="off">
        <action>slot:cart:rom.md@1239 =         4fc1643a</action>
        <action>slot:cart:rom.md@14ed =         4fc1663a</action>
        <action>slot:cart:rom.mq@0010 = ffffffffffffffff</action>
        <action>slot:cart:rom.mq@0018 = ffffffffffffffff</action>
        <action>slot:cart:rom.mq@0020 = ffffffffffffffff</action>
    </script>
</cheat>

<cheat desc="walk through wall (wip)">
    <script state="on">
        <action>slot:cart:rom.mw@2963 = 013e</action>
    </script>
    <script state="off">
        <action>slot:cart:rom.mw@2963 = bedb</action>
    </script>
</cheat>

<cheat desc="P1 player speed (wip)">
    <parameter>
        <item value="0x00">01 (slow)</item>
        <item value="0x01">02       </item>
        <item value="0x02">03       </item>
        <item value="0x03">04       </item>
        <item value="0x04">05 (fast)</item>
    </parameter>
    <script state="change">
        <action>slot:cart:rom.mb@12a1 = -param - 1</action> <!-- up -->
        <action>slot:cart:rom.mb@12bc = -param - 1</action> <!-- upper-left -->
        <action>slot:cart:rom.mb@12fc = -param - 1</action> <!-- upper-right : up -->
        <action>slot:cart:rom.mb@12fe =  param    </action> <!-- upper-right : right -->
        <action>slot:cart:rom.mb@137b = -param - 1</action> <!-- left -->
        <action>slot:cart:rom.mb@13ad =  param    </action> <!-- right -->
        <action>slot:cart:rom.mb@13df =  param    </action> <!-- down -->
        <action>slot:cart:rom.mb@13f9 =  param    </action> <!-- lower-left : down -->
        <action>slot:cart:rom.mb@13fb = -param - 1</action> <!-- lower-left : left -->
        <action>slot:cart:rom.mb@142f =  param    </action> <!-- lower-right -->
    </script>
    <script state="off">
        <action>slot:cart:rom.mb@12a1 = ff</action>
        <action>slot:cart:rom.mb@12bc = ff</action>
        <action>slot:cart:rom.mb@12fc = ff</action>
        <action>slot:cart:rom.mb@12fe = 00</action>
        <action>slot:cart:rom.mb@137b = ff</action>
        <action>slot:cart:rom.mb@13ad = 00</action>
        <action>slot:cart:rom.mb@13df = 00</action>
        <action>slot:cart:rom.mb@13f9 = 00</action>
        <action>slot:cart:rom.mb@13fb = ff</action>
        <action>slot:cart:rom.mb@142f = 00</action>
    </script>
</cheat>

<cheat desc="P2 player speed (wip)">
    <parameter>
        <item value="0x00">01 (slow)</item>
        <item value="0x01">02       </item>
        <item value="0x02">03       </item>
        <item value="0x03">04       </item>
        <item value="0x04">05 (fast)</item>
    </parameter>
    <script state="change">
        <action>slot:cart:rom.mb@1555 = -param - 1</action> <!-- up -->
        <action>slot:cart:rom.mb@1570 = -param - 1</action> <!-- upper-left -->
        <action>slot:cart:rom.mb@15b0 = -param - 1</action> <!-- upper-right : up -->
        <action>slot:cart:rom.mb@15b2 =  param    </action> <!-- upper-right : right -->
        <action>slot:cart:rom.mb@162f = -param - 1</action> <!-- left -->
        <action>slot:cart:rom.mb@1661 =  param    </action> <!-- right -->
        <action>slot:cart:rom.mb@1693 =  param    </action> <!-- down -->
        <action>slot:cart:rom.mb@16ac =  param    </action> <!-- lower-left : down -->
        <action>slot:cart:rom.mb@16ae = -param - 1</action> <!-- lower-left : left -->
        <action>slot:cart:rom.mb@16e2 =  param    </action> <!-- lower-right -->
    </script>
    <script state="off">
        <action>slot:cart:rom.mb@1555 = ff</action>
        <action>slot:cart:rom.mb@1570 = ff</action>
        <action>slot:cart:rom.mb@15b0 = ff</action>
        <action>slot:cart:rom.mb@15b2 = 00</action>
        <action>slot:cart:rom.mb@162f = ff</action>
        <action>slot:cart:rom.mb@1661 = 00</action>
        <action>slot:cart:rom.mb@1693 = 00</action>
        <action>slot:cart:rom.mb@16ac = 00</action>
        <action>slot:cart:rom.mb@16ae = ff</action>
        <action>slot:cart:rom.mb@16e2 = 00</action>
    </script>
</cheat>

<cheat desc="information display (wip)">
    <script state="run">
        <output format="P1 &lt;%2X&gt; [%2X] %6X    HighScore %6X    P2 &lt;%2X&gt; [%2X] %6X" line="1" align="center">
            <argument>tobcd(maincpu.pb@c11f)                                                      </argument>
            <argument>tobcd(maincpu.pb@c121)                                                      </argument>
            <argument>(maincpu.pb@c11b * 100000) + (maincpu.pb@c11a * 1000) + (maincpu.pb@c119*10)</argument>
            <argument>(maincpu.pb@c118 * 100000) + (maincpu.pb@c117 * 1000) + (maincpu.pb@c116*10)</argument>
            <argument>tobcd(maincpu.pb@c120)                                                      </argument>
            <argument>tobcd(maincpu.pb@c122)                                                      </argument>
            <argument>(maincpu.pb@c11e * 100000) + (maincpu.pb@c11d * 1000) + (maincpu.pb@c11c*10)</argument>
        </output>
    </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.mq@00d5 = bf00c3ffff32023e</action>
        <action>slot:cart:rom.mq@bf00 = 061177803ec10021</action>
        <action>slot:cart:rom.mq@bf08 = fec847b8dcdbd5bf</action>
        <action>slot:cart:rom.mq@bf10 = 0120f7fe350120fb</action>
        <action>slot:cart:rom.mq@bf18 = 04187e0320effe34</action>
        <action>slot:cart:rom.mq@bf20 = c9dc0032afc0dffe</action>
        <!--
        00d5 | 3e 02    : ld   a,$02
        00d7 | 32 ff ff : ld   ($ffff),a // set bank
        00da | c3 00 bf : jp   $bf00
        bf00 | 21 00 c1 : ld   hl,$c100  // initialize sound code
        bf03 | 3e 80    : ld   a,$80
        bf05 | 77       : ld   (hl),a
        bf06 | 11 06 bf : ld   de,$bf06
        bf09 | d5       : push de
        bf0a | db dc    : in   a,($dc)   // read input
        bf0c | b8       : cp   b
        bf0d | 47       : ld   b,a
        bf0e | c8       : ret  z
        bf0f | fe fb    : cp   $fb
        bf11 | 20 01    : jr   nz,$bf14
        bf13 | 35       : dec  (hl)      // decrease code
        bf14 | fe f7    : cp   $f7
        bf16 | 20 01    : jr   nz,$bf19
        bf18 | 34       : inc  (hl)      // increase code
        bf19 | fe ef    : cp   $ef
        bf1b | 20 03    : jr   nz,$bf20
        bf1d | 7e       : ld   a,(hl)    // play sound
        bf1e | 18 04    : jr   $bf24
        bf20 | fe df    : cp   $df
        bf22 | c0       : ret  nz
        bf23 | af       : xor  a         // stop sound
        bf24 | 32 00 dc : ld   ($dc00),a // send sound code
        bf27 | c9       : ret
        -->
    </script>
    <script state="run">
        <output format="----- ashura sound test mode -----" line="10" align="center" />
        <output format="left : decrease code"               line="11" align="center" />
        <output format="right : increase code"              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>slot:cart:rom.mq@00d5 = 7582c24fcbc1103a</action>
        <action>slot:cart:rom.mq@bf00 = ffffffffffffffff</action>
        <action>slot:cart:rom.mq@bf08 = ffffffffffffffff</action>
        <action>slot:cart:rom.mq@bf10 = ffffffffffffffff</action>
        <action>slot:cart:rom.mq@bf18 = ffffffffffffffff</action>
        <action>slot:cart:rom.mq@bf20 = ffffffffffffffff</action>
    </script>
</cheat>
Post Reply