[aliensec]+ Alien Sector/Baraduke

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

[aliensec]+ Alien Sector/Baraduke

Post by jman »

aliensec.xml

Code: Select all

<!-- Alien Sector -->
<mamecheat version="1">

    <cheat desc="no hit - player">
        <script state="on">
            <action>maincpu.mb@8E72 = 20</action> <!-- enemy -->
            <action>maincpu.mb@8F46 = 20</action> <!-- enemy -->
            <action>maincpu.mb@9060 = 20</action> <!-- enemy -->
            <action>maincpu.mb@9182 = 20</action> <!-- enemy -->
            <action>maincpu.mb@931B = 20</action> <!-- bullet -->
            <action>maincpu.mb@93C8 = 20</action> <!-- enemy -->
            <action>maincpu.mb@98D1 = 20</action> <!-- enemy -->
            <action>maincpu.mb@9A7B = 20</action> <!-- enemy -->
            <action>maincpu.mb@9B62 = 20</action> <!-- enemy -->
            <action>maincpu.mb@9C3F = 20</action> <!-- enemy -->
            <action>maincpu.mb@9CF0 = 20</action> <!-- enemy -->
            <action>maincpu.mb@9E68 = 20</action> <!-- enemy -->
            <action>maincpu.mb@9FE2 = 20</action> <!-- bullet -->
            <action>maincpu.mb@A0EE = 20</action> <!-- enemy -->
            <action>maincpu.mb@A1FD = 20</action> <!-- enemy -->
            <action>maincpu.mb@A2C9 = 20</action> <!-- bullet -->
            <action>maincpu.mb@AE79 = 00</action> <!-- boss 2 -->
            <action>maincpu.mb@B185 = 20</action> <!-- boss 1 -->
        </script>
        <script state="off">
            <action>maincpu.mb@8E72 = 27</action>
            <action>maincpu.mb@8F46 = 27</action>
            <action>maincpu.mb@9060 = 27</action>
            <action>maincpu.mb@9182 = 27</action>
            <action>maincpu.mb@931B = 27</action>
            <action>maincpu.mb@93C8 = 27</action>
            <action>maincpu.mb@98D1 = 27</action>
            <action>maincpu.mb@9A7B = 27</action>
            <action>maincpu.mb@9B62 = 27</action>
            <action>maincpu.mb@9C3F = 27</action>
            <action>maincpu.mb@9CF0 = 27</action>
            <action>maincpu.mb@9E68 = 27</action>
            <action>maincpu.mb@9FE2 = 27</action>
            <action>maincpu.mb@A0EE = 27</action>
            <action>maincpu.mb@A1FD = 27</action>
            <action>maincpu.mb@A2C9 = 27</action>
            <action>maincpu.mb@AE79 = 0C</action>
            <action>maincpu.mb@B185 = 27</action>
        </script>
    </cheat>

    <cheat desc="no hit - paccet">
        <script state="on">
            <action>maincpu.mw@A70B = B740</action>
        </script>
        <script state="off">
            <action>maincpu.mw@A70B = B72E</action>
        </script>
    </cheat>

    <cheat desc="walk through wall">
        <script state="on">
            <!-- up -->
            <action>maincpu.mb@88DA = 00</action>
            <!-- right -->
            <action>maincpu.mb@88E9 = 00</action>
            <action>maincpu.mb@88EE = 00</action>
            <!-- left -->
            <action>maincpu.mb@88F8 = 00</action>
            <action>maincpu.mb@88FD = 00</action>
        </script>
        <script state="off">
            <action>maincpu.mb@88DA = 03</action>
            <action>maincpu.mb@88E9 = 56</action>
            <action>maincpu.mb@88EE = 51</action>
            <action>maincpu.mb@88F8 = 47</action>
            <action>maincpu.mb@88FD = 42</action>
        </script>
    </cheat>

    <cheat desc="rapid fire">
        <script state="on">
            <action>maincpu.mb@89BB = 01</action>
            <action>maincpu.mb@89C1 = 01</action>
        </script>
        <script state="off">
            <action>maincpu.mb@89BB = 10</action>
            <action>maincpu.mb@89C1 = 08</action>
        </script>
    </cheat>

    <cheat desc="player speed">
        <parameter>
            <item value="0x0100">01 (slow)</item>
            <item value="0x0200">02       </item>
            <item value="0x0300">03       </item>
            <item value="0x0400">04       </item>
            <item value="0x0500">05 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.mw@87E9 = -param</action> <!-- left -->
            <action>maincpu.mw@87F8 = -param</action> <!-- upper-left : up -->
            <action>maincpu.mw@87FE = -param</action> <!-- upper-left : left -->
            <action>maincpu.mw@880D =  param</action> <!-- lower-left : down -->
            <action>maincpu.mw@8813 = -param</action> <!-- lower-left : left -->
            <action>maincpu.mw@8828 =  param</action> <!-- right -->
            <action>maincpu.mw@8837 = -param</action> <!-- upper-right : up -->
            <action>maincpu.mw@883D =  param</action> <!-- upper-right : right -->
            <action>maincpu.mw@884B =  param</action> <!-- lower-right : down -->
            <action>maincpu.mw@8851 =  param</action> <!-- lower-right : right -->
            <action>maincpu.mw@886A = -param</action> <!-- up -->
            <action>maincpu.mw@887D =  param</action> <!-- down -->
        </script>
        <script state="off">
            <action>maincpu.mw@87E9 = FE00</action>
            <action>maincpu.mw@87F8 = FE80</action>
            <action>maincpu.mw@87FE = FE80</action>
            <action>maincpu.mw@880D = 0180</action>
            <action>maincpu.mw@8813 = FE80</action>
            <action>maincpu.mw@8828 = 0200</action>
            <action>maincpu.mw@8837 = FE80</action>
            <action>maincpu.mw@883D = 0180</action>
            <action>maincpu.mw@884B = 0180</action>
            <action>maincpu.mw@8851 = 0180</action>
            <action>maincpu.mw@886A = FE00</action>
            <action>maincpu.mw@887D = 0200</action>
        </script>
    </cheat>

    <cheat desc="bullet speed">
        <parameter>
            <item value="0x0100">01 (slow)</item>
            <item value="0x0400">02       </item>
            <item value="0x0800">03       </item>
            <item value="0x0C00">04       </item>
            <item value="0x1000">05 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.mw@A37C = param</action>
        </script>
        <script state="off">
            <action>maincpu.mw@A37C = 0800</action>
        </script>
    </cheat>

    <cheat desc="no recoil/free fall">
        <script state="on">
            <!-- recoil -->
            <action>maincpu.mb@89FF = 00</action>
            <!-- free fall -->
            <action>maincpu.mw@87E3 = 0000</action>
            <action>maincpu.mw@8822 = 0000</action>
            <action>maincpu.mw@8885 = 0000</action>
        </script>
        <script state="off">
            <action>maincpu.mb@89FF = F8  </action>
            <action>maincpu.mw@87E3 = 0080</action>
            <action>maincpu.mw@8822 = 0080</action>
            <action>maincpu.mw@8885 = 0100</action>
        </script>
    </cheat>

    <cheat desc="hidden character finder">
        <!-- floor 4, 7, 16, 20, 25, 33, 41, 44 -->
        <script state="on">
            <action>maincpu.mw@AA9B = AAF2</action>
        </script>
        <script state="off">
            <action>maincpu.mw@AA9B = AAC6</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <!-- you can't stop code 0x27 and 0x28 (voices) by sound stop button -->
        <comment>reset the game (F3) to enter sound test mode</comment>
        <script state="on">
            <action>maincpu.mw@C125 = F080            </action>
            <action>maincpu.mq@F080 = BDDFEABDE003BDC0</action>
            <action>maincpu.mq@F088 = 8F4FF6428127028A</action>
            <action>maincpu.mq@F090 = 01F6427F27028A02</action>
            <action>maincpu.mq@F098 = F6427D27028A04F6</action>
            <action>maincpu.mq@F0A0 = 427B27028A08F642</action>
            <action>maincpu.mq@F0A8 = 7927028A10F64267</action>
            <action>maincpu.mq@F0B0 = 27028A2097429141</action>
            <action>maincpu.mq@F0B8 = 2726D64081012601</action>
            <action>maincpu.mq@F0C0 = 5A810226015C8104</action>
            <action>maincpu.mq@F0C8 = 2602C01081082602</action>
            <action>maincpu.mq@F0D0 = CB10D74081102705</action>
            <action>maincpu.mq@F0D8 = 812026045FBDF0E9</action>
            <action>maincpu.mq@F0E0 = 96429741BDC08F20</action>
            <action>maincpu.mq@F0E8 = A0CE42845D271386</action>
            <action>maincpu.mq@F0F0 = 01C1272403A7C539</action>
            <action>maincpu.mq@F0F8 = C12825028602B743</action>
            <action>maincpu.mq@F100 = 293986416FC04A26</action>
            <action>maincpu.mq@F108 = FB39FFFFFFFFFFFF</action>
            <!--
            F080 | BD DF EA : JSR    $DFEA  // erase text
            F083 | BD E0 03 : JSR    $E003  // erase screen
            F086 | BD C0 8F : JSR    $C08F
            F089 | 4F       : CLRA
            F08A | F6 42 81 : LDB    $4281  // read left
            F08D | 27 02    : BEQ    $F091
            F08F | 8A 01    : ORA    #$01
            F091 | F6 42 7F : LDB    $427F  // read right
            F094 | 27 02    : BEQ    $F098
            F096 | 8A 02    : ORA    #$02
            F098 | F6 42 7D : LDB    $427D  // read up
            F09B | 27 02    : BEQ    $F09F
            F09D | 8A 04    : ORA    #$04
            F09F | F6 42 7B : LDB    $427B  // read down
            F0A2 | 27 02    : BEQ    $F0A6
            F0A4 | 8A 08    : ORA    #$08
            F0A6 | F6 42 79 : LDB    $4279  // read button 1
            F0A9 | 27 02    : BEQ    $F0AD
            F0AB | 8A 10    : ORA    #$10
            F0AD | F6 42 67 : LDB    $4267  // read start button
            F0B0 | 27 02    : BEQ    $F0B4
            F0B2 | 8A 20    : ORA    #$20
            F0B4 | 97 42    : STA    <$42
            F0B6 | 91 41    : CMPA   <$41
            F0B8 | 27 26    : BEQ    $F0E0
            F0BA | D6 40    : LDB    <$40
            F0BC | 81 01    : CMPA   #$01
            F0BE | 26 01    : BNE    $F0C1
            F0C0 | 5A       : DECB          // decrease code -01
            F0C1 | 81 02    : CMPA   #$02
            F0C3 | 26 01    : BNE    $F0C6
            F0C5 | 5C       : INCB          // increase code +01
            F0C6 | 81 04    : CMPA   #$04
            F0C8 | 26 02    : BNE    $F0CC
            F0CA | C0 10    : SUBB   #$10   // decrease code -10
            F0CC | 81 08    : CMPA   #$08
            F0CE | 26 02    : BNE    $F0D2
            F0D0 | CB 10    : ADDB   #$10   // increase code +10
            F0D2 | D7 40    : STB    <$40
            F0D4 | 81 10    : CMPA   #$10
            F0D6 | 27 05    : BEQ    $F0DD  // play sound
            F0D8 | 81 20    : CMPA   #$20
            F0DA | 26 04    : BNE    $F0E0
            F0DC | 5F       : CLRB          // stop sound
            F0DD | BD F0 E9 : JSR    $F0E9
            F0E0 | 96 42    : LDA    <$42
            F0E2 | 97 41    : STA    <$41
            F0E4 | BD C0 8F : JSR    $C08F
            F0E7 | 20 A0    : BRA    $F089
            F0E9 | CE 42 84 : LDU    #$4284 // sound parameter set/clear routine
            F0EC | 5D       : TSTB
            F0ED | 27 13    : BEQ    $F102
            F0EF | 86 01    : LDA    #$01   // set sound parameter
            F0F1 | C1 27    : CMPB   #$27
            F0F3 | 24 03    : BCC    $F0F8
            F0F5 | A7 C5    : STA    B,U    // music, sfx
            F0F7 | 39       : RTS
            F0F8 | C1 28    : CMPB   #$28   // voice
            F0FA | 25 02    : BCS    $F0FE
            F0FC | 86 02    : LDA    #$02
            F0FE | B7 43 29 : STA    $4329
            F101 | 39       : RTS
            F102 | 86 41    : LDA    #$41   // clear sound parameters
            F104 | 6F C0    : CLR    ,U+
            F106 | 4A       : DECA
            F107 | 26 FB    : BNE    $F114
            F109 | 39       : RTS
            -->
            <action>mcusub.mb@0075 = 00</action> <!-- enable sound ($8075) -->
        </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="1P start : 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@0040</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.mw@C125 = C1DC            </action>
            <action>maincpu.mq@F080 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@F088 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@F090 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@F098 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@F0A0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@F0A8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@F0B0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@F0B8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@F0C0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@F0C8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@F0D0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@F0D8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@F0E0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@F0E8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@F0F0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@F0F8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@F100 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@F108 = FFFFFFFFFFFFFFFF</action>
            <action> mcusub.mb@0075 = 01              </action>
        </script>
    </cheat>

    <cheat desc="skip ram check">
        <script state="on">
            <action>maincpu.mw@C015 = C017</action>
        </script>
        <script state="off">
            <action>maincpu.mw@C015 = CC17</action>
        </script>
    </cheat>

</mamecheat>
baraduke.xml

Code: Select all

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

    <cheat desc="no hit - player">
        <script state="on">
            <action>maincpu.mb@8E72 = 20</action> <!-- enemy -->
            <action>maincpu.mb@8F46 = 20</action> <!-- enemy -->
            <action>maincpu.mb@9060 = 20</action> <!-- enemy -->
            <action>maincpu.mb@9182 = 20</action> <!-- enemy -->
            <action>maincpu.mb@931B = 20</action> <!-- bullet -->
            <action>maincpu.mb@93C8 = 20</action> <!-- enemy -->
            <action>maincpu.mb@98D1 = 20</action> <!-- enemy -->
            <action>maincpu.mb@9A7B = 20</action> <!-- enemy -->
            <action>maincpu.mb@9B62 = 20</action> <!-- enemy -->
            <action>maincpu.mb@9C3F = 20</action> <!-- enemy -->
            <action>maincpu.mb@9CF0 = 20</action> <!-- enemy -->
            <action>maincpu.mb@9E68 = 20</action> <!-- enemy -->
            <action>maincpu.mb@9FE2 = 20</action> <!-- bullet -->
            <action>maincpu.mb@A0EE = 20</action> <!-- enemy -->
            <action>maincpu.mb@A1FD = 20</action> <!-- enemy -->
            <action>maincpu.mb@A2C9 = 20</action> <!-- bullet -->
            <action>maincpu.mb@AE79 = 00</action> <!-- boss 2 -->
            <action>maincpu.mb@B185 = 20</action> <!-- boss 1 -->
        </script>
        <script state="off">
            <action>maincpu.mb@8E72 = 27</action>
            <action>maincpu.mb@8F46 = 27</action>
            <action>maincpu.mb@9060 = 27</action>
            <action>maincpu.mb@9182 = 27</action>
            <action>maincpu.mb@931B = 27</action>
            <action>maincpu.mb@93C8 = 27</action>
            <action>maincpu.mb@98D1 = 27</action>
            <action>maincpu.mb@9A7B = 27</action>
            <action>maincpu.mb@9B62 = 27</action>
            <action>maincpu.mb@9C3F = 27</action>
            <action>maincpu.mb@9CF0 = 27</action>
            <action>maincpu.mb@9E68 = 27</action>
            <action>maincpu.mb@9FE2 = 27</action>
            <action>maincpu.mb@A0EE = 27</action>
            <action>maincpu.mb@A1FD = 27</action>
            <action>maincpu.mb@A2C9 = 27</action>
            <action>maincpu.mb@AE79 = 0C</action>
            <action>maincpu.mb@B185 = 27</action>
        </script>
    </cheat>

    <cheat desc="no hit - paccet">
        <script state="on">
            <action>maincpu.mw@A70B = B740</action>
        </script>
        <script state="off">
            <action>maincpu.mw@A70B = B72E</action>
        </script>
    </cheat>

    <cheat desc="walk through wall">
        <script state="on">
            <!-- up -->
            <action>maincpu.mb@88DA = 00</action>
            <!-- right -->
            <action>maincpu.mb@88E9 = 00</action>
            <action>maincpu.mb@88EE = 00</action>
            <!-- left -->
            <action>maincpu.mb@88F8 = 00</action>
            <action>maincpu.mb@88FD = 00</action>
        </script>
        <script state="off">
            <action>maincpu.mb@88DA = 03</action>
            <action>maincpu.mb@88E9 = 56</action>
            <action>maincpu.mb@88EE = 51</action>
            <action>maincpu.mb@88F8 = 47</action>
            <action>maincpu.mb@88FD = 42</action>
        </script>
    </cheat>

    <cheat desc="rapid fire">
        <script state="on">
            <action>maincpu.mb@89BB = 01</action>
            <action>maincpu.mb@89C1 = 01</action>
        </script>
        <script state="off">
            <action>maincpu.mb@89BB = 10</action>
            <action>maincpu.mb@89C1 = 08</action>
        </script>
    </cheat>

    <cheat desc="player speed">
        <parameter>
            <item value="0x0100">01 (slow)</item>
            <item value="0x0200">02       </item>
            <item value="0x0300">03       </item>
            <item value="0x0400">04       </item>
            <item value="0x0500">05 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.mw@87E9 = -param</action> <!-- left -->
            <action>maincpu.mw@87F8 = -param</action> <!-- upper-left : up -->
            <action>maincpu.mw@87FE = -param</action> <!-- upper-left : left -->
            <action>maincpu.mw@880D =  param</action> <!-- lower-left : down -->
            <action>maincpu.mw@8813 = -param</action> <!-- lower-left : left -->
            <action>maincpu.mw@8828 =  param</action> <!-- right -->
            <action>maincpu.mw@8837 = -param</action> <!-- upper-right : up -->
            <action>maincpu.mw@883D =  param</action> <!-- upper-right : right -->
            <action>maincpu.mw@884B =  param</action> <!-- lower-right : down -->
            <action>maincpu.mw@8851 =  param</action> <!-- lower-right : right -->
            <action>maincpu.mw@886A = -param</action> <!-- up -->
            <action>maincpu.mw@887D =  param</action> <!-- down -->
        </script>
        <script state="off">
            <action>maincpu.mw@87E9 = FE00</action>
            <action>maincpu.mw@87F8 = FE80</action>
            <action>maincpu.mw@87FE = FE80</action>
            <action>maincpu.mw@880D = 0180</action>
            <action>maincpu.mw@8813 = FE80</action>
            <action>maincpu.mw@8828 = 0200</action>
            <action>maincpu.mw@8837 = FE80</action>
            <action>maincpu.mw@883D = 0180</action>
            <action>maincpu.mw@884B = 0180</action>
            <action>maincpu.mw@8851 = 0180</action>
            <action>maincpu.mw@886A = FE00</action>
            <action>maincpu.mw@887D = 0200</action>
        </script>
    </cheat>

    <cheat desc="bullet speed">
        <parameter>
            <item value="0x0100">01 (slow)</item>
            <item value="0x0400">02       </item>
            <item value="0x0800">03       </item>
            <item value="0x0C00">04       </item>
            <item value="0x1000">05 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.mw@A37C = param</action>
        </script>
        <script state="off">
            <action>maincpu.mw@A37C = 0800</action>
        </script>
    </cheat>

    <cheat desc="no free fall/recoil">
        <script state="on">
            <!-- free fall -->
            <action>maincpu.mw@87E3 = 0000</action>
            <action>maincpu.mw@8822 = 0000</action>
            <action>maincpu.mw@8885 = 0000</action>
            <!-- recoil -->
            <action>maincpu.mb@89FF = 00</action>
        </script>
        <script state="off">
            <action>maincpu.mw@87E3 = 0080</action>
            <action>maincpu.mw@8822 = 0080</action>
            <action>maincpu.mw@8885 = 0100</action>
            <action>maincpu.mb@89FF = F8  </action>
        </script>
    </cheat>

    <cheat desc="hidden character finder">
        <!-- floor 4, 7, 16, 20, 25, 33, 41, 44 -->
        <script state="on">
            <action>maincpu.mw@AA9B = AAF2</action>
        </script>
        <script state="off">
            <action>maincpu.mw@AA9B = AAC6</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <!-- you can't stop code 0x27 and 0x28 (voices) by sound stop button -->
        <comment>reset the game (F3) to enter sound test mode</comment>
        <script state="on">
            <action>maincpu.mw@C125 = F090            </action>
            <action>maincpu.mq@F090 = BDDFF4BDE00DBDC0</action>
            <action>maincpu.mq@F098 = 8F4FF6428127028A</action>
            <action>maincpu.mq@F0A0 = 01F6427F27028A02</action>
            <action>maincpu.mq@F0A8 = F6427D27028A04F6</action>
            <action>maincpu.mq@F0B0 = 427B27028A08F642</action>
            <action>maincpu.mq@F0B8 = 7927028A10F64267</action>
            <action>maincpu.mq@F0C0 = 27028A2097429141</action>
            <action>maincpu.mq@F0C8 = 2726D64081012601</action>
            <action>maincpu.mq@F0D0 = 5A810226015C8104</action>
            <action>maincpu.mq@F0D8 = 2602C01081082602</action>
            <action>maincpu.mq@F0E0 = CB10D74081102705</action>
            <action>maincpu.mq@F0E8 = 812026045FBDF0F9</action>
            <action>maincpu.mq@F0F0 = 96429741BDC08F20</action>
            <action>maincpu.mq@F0F8 = A0CE42845D271386</action>
            <action>maincpu.mq@F100 = 01C1272403A7C539</action>
            <action>maincpu.mq@F108 = C12825028602B743</action>
            <action>maincpu.mq@F110 = 293986416FC04A26</action>
            <action>maincpu.mq@F118 = FB39FFFFFFFFFFFF</action>
            <!--
            F090 | BD DF F4 : JSR    $DFF4  // erase text
            F093 | BD E0 0D : JSR    $E00D  // erase screen
            F096 | BD C0 8F : JSR    $C08F
            F099 | 4F       : CLRA
            F09A | F6 42 81 : LDB    $4281  // read left
            F09D | 27 02    : BEQ    $F0A1
            F09F | 8A 01    : ORA    #$01
            F0A1 | F6 42 7F : LDB    $427F  // read right
            F0A4 | 27 02    : BEQ    $F0A8
            F0A6 | 8A 02    : ORA    #$02
            F0A8 | F6 42 7D : LDB    $427D  // read up
            F0AB | 27 02    : BEQ    $F0AF
            F0AD | 8A 04    : ORA    #$04
            F0AF | F6 42 7B : LDB    $427B  // read down
            F0B2 | 27 02    : BEQ    $F0B6
            F0B4 | 8A 08    : ORA    #$08
            F0B6 | F6 42 79 : LDB    $4279  // read button 1
            F0B9 | 27 02    : BEQ    $F0BD
            F0BB | 8A 10    : ORA    #$10
            F0BD | F6 42 67 : LDB    $4267  // read start button
            F0C0 | 27 02    : BEQ    $F0C4
            F0C2 | 8A 20    : ORA    #$20
            F0C4 | 97 42    : STA    <$42
            F0C6 | 91 41    : CMPA   <$41
            F0C8 | 27 26    : BEQ    $F0F0
            F0CA | D6 40    : LDB    <$40
            F0CC | 81 01    : CMPA   #$01
            F0CE | 26 01    : BNE    $F0D1
            F0D0 | 5A       : DECB          // decrease code -01
            F0D1 | 81 02    : CMPA   #$02
            F0D3 | 26 01    : BNE    $F0D6
            F0D5 | 5C       : INCB          // increase code +01
            F0D6 | 81 04    : CMPA   #$04
            F0D8 | 26 02    : BNE    $F0DC
            F0DA | C0 10    : SUBB   #$10   // decrease code -10
            F0DC | 81 08    : CMPA   #$08
            F0DE | 26 02    : BNE    $F0E2
            F0E0 | CB 10    : ADDB   #$10   // increase code +10
            F0E2 | D7 40    : STB    <$40
            F0E4 | 81 10    : CMPA   #$10
            F0E6 | 27 05    : BEQ    $F0ED  // play sound
            F0E8 | 81 20    : CMPA   #$20
            F0EA | 26 04    : BNE    $F0F0
            F0EC | 5F       : CLRB          // stop sound
            F0ED | BD F0 F9 : JSR    $F0F9
            F0F0 | 96 42    : LDA    <$42
            F0F2 | 97 41    : STA    <$41
            F0F4 | BD C0 8F : JSR    $C08F
            F0F7 | 20 A0    : BRA    $F099
            F0F9 | CE 42 84 : LDU    #$4284 // sound parameter set/clear routine
            F0FC | 5D       : TSTB
            F0FD | 27 13    : BEQ    $F112
            F0FF | 86 01    : LDA    #$01   // set sound parameter
            F101 | C1 27    : CMPB   #$27
            F103 | 24 03    : BCC    $F108
            F105 | A7 C5    : STA    B,U    // music, sfx
            F107 | 39       : RTS
            F108 | C1 28    : CMPB   #$28   // voice
            F10A | 25 02    : BCS    $F10E
            F10C | 86 02    : LDA    #$02
            F10E | B7 43 29 : STA    $4329
            F111 | 39       : RTS
            F112 | 86 41    : LDA    #$41   // clear sound parameters
            F114 | 6F C0    : CLR    ,U+
            F116 | 4A       : DECA
            F117 | 26 FB    : BNE    $F114
            F119 | 39       : RTS
            -->
            <action>mcusub.mb@0079 = 00</action> <!-- enable sound ($8079) -->
        </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="1P start : 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@0040</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.mw@C125 = C1DC            </action>
            <action>maincpu.mq@F090 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@F098 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@F0A0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@F0A8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@F0B0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@F0B8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@F0C0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@F0C8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@F0D0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@F0D8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@F0E0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@F0E8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@F0F0 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@F0F8 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@F100 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@F108 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@F110 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@F118 = FFFFFFFFFFFFFFFF</action>
            <action> mcusub.mb@0079 = 01              </action>
        </script>
    </cheat>

    <cheat desc="skip ram check">
        <script state="on">
            <action>maincpu.mw@C015 = C017</action>
        </script>
        <script state="off">
            <action>maincpu.mw@C015 = CC1F</action>
        </script>
    </cheat>

</mamecheat>
"sound test mode" : You can't stop voices (code 0x27 and 0x28) by sound stop button.
jman

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