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="<< sound code %02X >>" 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>
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="<< sound code %02X >>" 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>