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.
jman
Posts: 1315 Joined: Tue Dec 01, 2020 1:24 pm
Been thanked: 9 times
Post
by jman » Sat Aug 07, 2021 8:26 am
Code: Select all
<cheat desc="no hit (wip)">
<script state="on">
<!-- objects -->
<action>slot:cart:rom.mw@01a7d = 8000</action>
<action>slot:cart:rom.mq@18000 = fe08380ffe007efd</action>
<action>slot:cart:rom.mq@18008 = a7c91a88cd043013</action>
<action>slot:cart:rom.mq@18010 = ffffffffffffffc9</action>
<!--
8000 | fd 7e 00 : ld a,(iy+$00)
8003 | fe 0f : cp $0f
8005 | 38 08 : jr c,$800f
8007 | fe 13 : cp $13
8009 | 30 04 : jr nc,$800f
800b | cd 88 1a : call $1a88
800e | c9 : ret
800f | a7 : and a
8010 | c9 : ret
-->
<action>slot:cart:rom.mb@02528 = e3</action> <!-- boss -->
</script>
<script state="off">
<action>slot:cart:rom.mw@01a7d = 1a88</action>
<action>slot:cart:rom.mq@18000 = ffffffffffffffff</action>
<action>slot:cart:rom.mq@18008 = ffffffffffffffff</action>
<action>slot:cart:rom.mq@18010 = ffffffffffffffff</action>
<action>slot:cart:rom.mb@02528 = 34</action>
</script>
</cheat>
<cheat desc="auto fire (wip)">
<script state="on">
<action>slot:cart:rom.mb@0950 = 01</action>
<action>slot:cart:rom.mb@0964 = 01</action>
</script>
<script state="off">
<action>slot:cart:rom.mb@0950 = 20</action>
<action>slot:cart:rom.mb@0964 = 20</action>
</script>
</cheat>
<cheat desc="player speed (wip)">
<parameter>
<item value="0x01">01 (slow)</item>
<item value="0x03">02 </item>
<item value="0x06">03 </item>
<item value="0x09">04 </item>
<item value="0x0c">05 </item>
<item value="0x0f">06 </item>
<item value="0x12">07 </item>
<item value="0x15">08 (fast)</item>
</parameter>
<script state="on">
<action>slot:cart:rom.md@0a3e = 7d00002e</action>
</script>
<script state="change">
<action>slot:cart:rom.mb@0a3f = param</action>
</script>
<script state="off">
<action>slot:cart:rom.md@0a3e = 7d136edd</action>
</script>
</cheat>
<cheat desc="information display (wip)">
<script state="run">
<action>temp0 = maincpu.pb@c102 band 0x01</action>
<action condition="maincpu.pb@c23f == 0">temp1 = 0</action>
<action condition="maincpu.pb@c23f != 0">temp1 = tobcd(frombcd(maincpu.pb@c23f - 1))</action>
<action condition="maincpu.pb@c120 == 0">temp2 = 0</action>
<action condition="maincpu.pb@c120 != 0">temp2 = tobcd(frombcd(maincpu.pb@c120 - 1))</action>
<action condition="maincpu.pb@c121 == 0">temp3 = 0</action>
<action condition="maincpu.pb@c121 != 0">temp3 = tobcd(frombcd(maincpu.pb@c121 - 1))</action>
<output condition="temp0 == 1" format="Player1 < %x > %6X HighScore : %6X Player2 < %x > %6X" line="1" align="center">
<argument>temp1</argument>
<argument>(maincpu.pb@c232 * 10000) + (maincpu.pb@c233 * 100) + (maincpu.pb@c234)</argument>
<argument>(maincpu.pb@c030 * 10000) + (maincpu.pb@c031 * 100) + (maincpu.pb@c032)</argument>
<argument>temp3</argument>
<argument>(maincpu.pb@c133 * 10000) + (maincpu.pb@c134 * 100) + (maincpu.pb@c135)</argument>
</output>
<output condition="temp0 == 0" format="Player1 < %x > %6X HighScore : %6X Player2 < %x > %6X" line="1" align="center">
<argument>temp2</argument>
<argument>(maincpu.pb@c130 * 10000) + (maincpu.pb@c131 * 100) + (maincpu.pb@c132)</argument>
<argument>(maincpu.pb@c030 * 10000) + (maincpu.pb@c031 * 100) + (maincpu.pb@c032)</argument>
<argument>temp1</argument>
<argument>(maincpu.pb@c232 * 10000) + (maincpu.pb@c233 * 100) + (maincpu.pb@c234)</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@1d40 = b810c3ffff32033e</action>
<action>slot:cart:rom.mq@f810 = d5b81411810021fb</action>
<action>slot:cart:rom.mq@f818 = c86fbddcdbc10022</action>
<action>slot:cart:rom.mq@f820 = 20f7fe250120fbfe</action>
<action>slot:cart:rom.mq@f828 = 187c0320effe2401</action>
<action>slot:cart:rom.mq@f830 = dc0032afc0dffe04</action>
<action>slot:cart:rom.mq@f838 = ffffffffffffffc9</action>
<!--
1d40 | 3e 03 : ld a,$03
1d42 | 32 ff ff : ld ($ffff),a // set bank
1d45 | c3 10 b8 : jp $b810
b810 | fb : ei
b811 | 21 00 81 : ld hl,$8100 // initialize sound and input value
b814 | 11 14 b8 : ld de,$b814
b817 | d5 : push de
b818 | 22 00 c1 : ld ($c100),hl
b81b | db dc : in a,($dc) // read input
b81d | bd : cp l
b81e | 6f : ld l,a
b81f | c8 : ret z
b820 | fe fb : cp $fb
b822 | 20 01 : jr nz,$b825
b824 | 25 : dec h // pressed left - code decrement
b825 | fe f7 : cp $f7
b827 | 20 01 : jr nz,$b82a
b829 | 24 : inc h // pressed right - code increment
b82a | fe ef : cp $ef
b82c | 20 03 : jr nz,$b831
b82e | 7c : ld a,h // pressed button 1 - play sound
b82f | 18 04 : jr $b835
b831 | fe df : cp $df
b833 | c0 : ret nz
b834 | af : xor a // pressed button 2 - stop sound
b835 | 32 00 dc : ld ($dc00),a // send sound code
b838 | c9 : ret
-->
</script>
<script state="run">
<output format="----- astro warrior 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="<< sound code %2.2X >>" line="17" align="center">
<argument>maincpu.pb@c101</argument>
</output>
</script>
<script state="off">
<action>slot:cart:rom.mq@1d40 = cd05f4cddffe31f3</action>
<action>slot:cart:rom.mq@f810 = ffffffffffffffff</action>
<action>slot:cart:rom.mq@f818 = ffffffffffffffff</action>
<action>slot:cart:rom.mq@f820 = ffffffffffffffff</action>
<action>slot:cart:rom.mq@f828 = ffffffffffffffff</action>
<action>slot:cart:rom.mq@f830 = ffffffffffffffff</action>
<action>slot:cart:rom.mq@f838 = ffffffffffffffff</action>
</script>
</cheat>
"information display" outputs score for player 1, 2, hiscore and life for player 1 and 2 on current screen.
jman
Posts: 1315 Joined: Tue Dec 01, 2020 1:24 pm
Been thanked: 9 times
Post
by jman » Mon Aug 12, 2024 7:40 am
sms/astrow.xml
Code: Select all
<!-- Astro Warrior (Japan, USA, Brazil) -->
<mamecheat version="1">
<cheat desc="no hit">
<script state="on">
<!-- objects -->
<action>slot:cart:rom.mw@01A7D = 8000 </action>
<action>slot:cart:rom.mq@18000 = FE08380FFE007EFD</action>
<action>slot:cart:rom.mq@18008 = A7C91A88CD043013</action>
<action>slot:cart:rom.mq@18010 = FFFFFFFFFFFFFFC9</action>
<!--
8000 | fd 7e 00 : ld a,(iy+$00)
8003 | fe 0f : cp $0f
8005 | 38 08 : jr c,$800f
8007 | fe 13 : cp $13
8009 | 30 04 : jr nc,$800f
800b | cd 88 1a : call $1a88
800e | c9 : ret
800f | a7 : and a
8010 | c9 : ret
-->
<action>slot:cart:rom.mb@2528 = E3</action> <!-- boss -->
</script>
<script state="off">
<action>slot:cart:rom.mw@01A7D = 1A88 </action>
<action>slot:cart:rom.mq@18000 = FFFFFFFFFFFFFFFF</action>
<action>slot:cart:rom.mq@18008 = FFFFFFFFFFFFFFFF</action>
<action>slot:cart:rom.mq@18010 = FFFFFFFFFFFFFFFF</action>
<action>slot:cart:rom.mb@02528 = 34 </action>
</script>
</cheat>
<cheat desc="auto fire">
<script state="on">
<action>slot:cart:rom.mb@0950 = 01</action>
<action>slot:cart:rom.mb@0964 = 01</action>
</script>
<script state="off">
<action>slot:cart:rom.mb@0950 = 20</action>
<action>slot:cart:rom.mb@0964 = 20</action>
</script>
</cheat>
<cheat desc="player speed">
<parameter>
<item value="0x01">01 (slow)</item>
<item value="0x04">02 </item>
<item value="0x08">03 </item>
<item value="0x0c">04 </item>
<item value="0x10">05 (fast)</item>
</parameter>
<script state="on">
<action>slot:cart:rom.md@0A3E = 7D00002E</action>
</script>
<script state="change">
<action>slot:cart:rom.mb@0A3F = param</action>
</script>
<script state="off">
<action>slot:cart:rom.md@0A3E = 7D136EDD</action>
</script>
</cheat>
<cheat desc="information display">
<script state="run">
<action>temp0 = maincpu.pb@C102 band 0x01</action>
<action condition="maincpu.pb@c23f == 0">temp1 = 00</action>
<action condition="maincpu.pb@c23f != 0">temp1 = tobcd(frombcd(maincpu.pb@C23F - 1))</action>
<action condition="maincpu.pb@c120 == 0">temp2 = 00</action>
<action condition="maincpu.pb@c120 != 0">temp2 = tobcd(frombcd(maincpu.pb@C120 - 1))</action>
<action condition="maincpu.pb@c121 == 0">temp3 = 00</action>
<action condition="maincpu.pb@c121 != 0">temp3 = tobcd(frombcd(maincpu.pb@C121 - 1))</action>
<output condition="temp0 == 01" format="1P < %x > %6X HighScore : %6X 2P < %x > %6X" line="1" align="center">
<argument>temp1</argument>
<argument>(maincpu.pb@C232 * 10000) + (maincpu.pb@C233 * 100) + (maincpu.pb@C234)</argument>
<argument>(maincpu.pb@C030 * 10000) + (maincpu.pb@C031 * 100) + (maincpu.pb@C032)</argument>
<argument>temp3</argument>
<argument>(maincpu.pb@C133 * 10000) + (maincpu.pb@C134 * 100) + (maincpu.pb@C135)</argument>
</output>
<output condition="temp0 == 00" format="1P < %x > %6X HighScore : %6X 2P < %x > %6X" line="1" align="center">
<argument>temp2</argument>
<argument>(maincpu.pb@C130 * 10000) + (maincpu.pb@C131 * 100) + (maincpu.pb@C132)</argument>
<argument>(maincpu.pb@C030 * 10000) + (maincpu.pb@C031 * 100) + (maincpu.pb@C032)</argument>
<argument>temp1</argument>
<argument>(maincpu.pb@C232 * 10000) + (maincpu.pb@C233 * 100) + (maincpu.pb@C234)</argument>
</output>
</script>
</cheat>
<cheat desc="sound test mode">
<comment>set "skip rom check error" then reset the game (F3)</comment>
<script state="on">
<action>slot:cart:rom.mq@1D40 = B810C3FFFF32033E</action>
<action>slot:cart:rom.mq@F810 = 47B8DCDBC10021FB</action>
<action>slot:cart:rom.mq@F818 = FE350120FBFEFA28</action>
<action>slot:cart:rom.mq@F820 = 0420FDFE340120F7</action>
<action>slot:cart:rom.mq@F828 = 0520FEFE0618F03E</action>
<action>slot:cart:rom.mq@F830 = 20EFFE787786103E</action>
<action>slot:cart:rom.mq@F838 = DFFE051880F67E05</action>
<action>slot:cart:rom.mq@F840 = CC18DC0032AF0420</action>
<!--
1D40 | 3E 03 : ld a,$03 // set bank
1D42 | 32 FF FF : ld ($FFFF),a
1D45 | C3 10 B8 : jp $B810
================================
B810 | FB : ei // enable interrupt
B811 | 21 00 C1 : ld hl,$C100 // sound code address
B814 | DB DC : in a,($DC)
B816 | B8 : cp b
B817 | 47 : ld b,a
B818 | 28 FA : jr z,$B814
B81A | FE FB : cp $FB
B81C | 20 01 : jr nz,$B81F
B81E | 35 : dec (hl) // decrease code -01
B81F | FE F7 : cp $F7
B821 | 20 01 : jr nz,$B824
B823 | 34 : inc (hl) // increase code +01
B824 | FE FD : cp $FD
B826 | 20 04 : jr nz,$B82C
B828 | 3E F0 : ld a,$F0 // decrease code -10
B82A | 18 06 : jr $B832
B82C | FE FE : cp $FE
B82E | 20 05 : jr nz,$B835
B830 | 3E 10 : ld a,$10 // increase code +10
B832 | 86 : add a,(hl)
B833 | 77 : ld (hl),a
B834 | 78 : ld a,b
B835 | FE EF : cp $EF
B837 | 20 05 : jr nz,$B83E
B839 | 7E : ld a,(hl) // play sound
B83A | F6 80 : or $80
B83C | 18 05 : jr $B843
B83E | FE DF : cp $DF
B840 | 20 04 : jr nz,$B846
B842 | AF : xor a // stop sound
B843 | 32 00 DC : ld ($DC00),a // send sound code
B846 | 18 CC : jr $B814
-->
</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="<< sound code %02X >>" line="19" align="center" >
<argument>maincpu.pb@C100</argument>
</output>
</script>
<script state="off">
<action>slot:cart:rom.mq@1D40 = CD05F4CDDFFE31F3</action>
<action>slot:cart:rom.mq@F810 = FFFFFFFFFFFFFFFF</action>
<action>slot:cart:rom.mq@F818 = FFFFFFFFFFFFFFFF</action>
<action>slot:cart:rom.mq@F820 = FFFFFFFFFFFFFFFF</action>
<action>slot:cart:rom.mq@F828 = FFFFFFFFFFFFFFFF</action>
<action>slot:cart:rom.mq@F830 = FFFFFFFFFFFFFFFF</action>
<action>slot:cart:rom.mq@F838 = FFFFFFFFFFFFFFFF</action>
<action>slot:cart:rom.mq@F840 = 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/saposos.xml
Code: Select all
<!-- S.O.S. Lagoa Poluida (Brazil) -->
<mamecheat version="1">
<cheat desc="no hit">
<script state="on">
<!-- objects -->
<action>slot:cart:rom.mw@01A7D = 8000 </action>
<action>slot:cart:rom.mq@18000 = FE08380FFE007EFD</action>
<action>slot:cart:rom.mq@18008 = A7C91A88CD043013</action>
<action>slot:cart:rom.mq@18010 = FFFFFFFFFFFFFFC9</action>
<!--
8000 | fd 7e 00 : ld a,(iy+$00)
8003 | fe 0f : cp $0f
8005 | 38 08 : jr c,$800f
8007 | fe 13 : cp $13
8009 | 30 04 : jr nc,$800f
800b | cd 88 1a : call $1a88
800e | c9 : ret
800f | a7 : and a
8010 | c9 : ret
-->
<action>slot:cart:rom.mb@2528 = E3</action> <!-- boss -->
</script>
<script state="off">
<action>slot:cart:rom.mw@01A7D = 1A88 </action>
<action>slot:cart:rom.mq@18000 = FFFFFFFFFFFFFFFF</action>
<action>slot:cart:rom.mq@18008 = FFFFFFFFFFFFFFFF</action>
<action>slot:cart:rom.mq@18010 = FFFFFFFFFFFFFFFF</action>
<action>slot:cart:rom.mb@02528 = 34 </action>
</script>
</cheat>
<cheat desc="auto fire">
<script state="on">
<action>slot:cart:rom.mb@0950 = 01</action>
<action>slot:cart:rom.mb@0964 = 01</action>
</script>
<script state="off">
<action>slot:cart:rom.mb@0950 = 20</action>
<action>slot:cart:rom.mb@0964 = 20</action>
</script>
</cheat>
<cheat desc="player speed">
<parameter>
<item value="0x01">01 (slow)</item>
<item value="0x04">02 </item>
<item value="0x08">03 </item>
<item value="0x0c">04 </item>
<item value="0x10">05 (fast)</item>
</parameter>
<script state="on">
<action>slot:cart:rom.md@0A3E = 7D00002E</action>
</script>
<script state="change">
<action>slot:cart:rom.mb@0A3F = param</action>
</script>
<script state="off">
<action>slot:cart:rom.md@0A3E = 7D136EDD</action>
</script>
</cheat>
<cheat desc="information display">
<script state="run">
<action>temp0 = maincpu.pb@C102 band 0x01</action>
<action condition="maincpu.pb@c23f == 0">temp1 = 00</action>
<action condition="maincpu.pb@c23f != 0">temp1 = tobcd(frombcd(maincpu.pb@C23F - 1))</action>
<action condition="maincpu.pb@c120 == 0">temp2 = 00</action>
<action condition="maincpu.pb@c120 != 0">temp2 = tobcd(frombcd(maincpu.pb@C120 - 1))</action>
<action condition="maincpu.pb@c121 == 0">temp3 = 00</action>
<action condition="maincpu.pb@c121 != 0">temp3 = tobcd(frombcd(maincpu.pb@C121 - 1))</action>
<output condition="temp0 == 01" format="1P < %x > %6X HighScore : %6X 2P < %x > %6X" line="1" align="center">
<argument>temp1</argument>
<argument>(maincpu.pb@C232 * 10000) + (maincpu.pb@C233 * 100) + (maincpu.pb@C234)</argument>
<argument>(maincpu.pb@C030 * 10000) + (maincpu.pb@C031 * 100) + (maincpu.pb@C032)</argument>
<argument>temp3</argument>
<argument>(maincpu.pb@C133 * 10000) + (maincpu.pb@C134 * 100) + (maincpu.pb@C135)</argument>
</output>
<output condition="temp0 == 00" format="1P < %x > %6X HighScore : %6X 2P < %x > %6X" line="1" align="center">
<argument>temp2</argument>
<argument>(maincpu.pb@C130 * 10000) + (maincpu.pb@C131 * 100) + (maincpu.pb@C132)</argument>
<argument>(maincpu.pb@C030 * 10000) + (maincpu.pb@C031 * 100) + (maincpu.pb@C032)</argument>
<argument>temp1</argument>
<argument>(maincpu.pb@C232 * 10000) + (maincpu.pb@C233 * 100) + (maincpu.pb@C234)</argument>
</output>
</script>
</cheat>
<cheat desc="sound test mode">
<comment>set "skip rom check error" then reset the game (F3)</comment>
<script state="on">
<action>slot:cart:rom.mq@1D40 = B810C3FFFF32033E</action>
<action>slot:cart:rom.mq@F810 = 47B8DCDBC10021FB</action>
<action>slot:cart:rom.mq@F818 = FE350120FBFEFA28</action>
<action>slot:cart:rom.mq@F820 = 0420FDFE340120F7</action>
<action>slot:cart:rom.mq@F828 = 0520FEFE0618F03E</action>
<action>slot:cart:rom.mq@F830 = 20EFFE787786103E</action>
<action>slot:cart:rom.mq@F838 = DFFE051880F67E05</action>
<action>slot:cart:rom.mq@F840 = CC18DC0032AF0420</action>
<!--
1D40 | 3E 03 : ld a,$03 // set bank
1D42 | 32 FF FF : ld ($FFFF),a
1D45 | C3 10 B8 : jp $B810
================================
B810 | FB : ei // enable interrupt
B811 | 21 00 C1 : ld hl,$C100 // sound code address
B814 | DB DC : in a,($DC)
B816 | B8 : cp b
B817 | 47 : ld b,a
B818 | 28 FA : jr z,$B814
B81A | FE FB : cp $FB
B81C | 20 01 : jr nz,$B81F
B81E | 35 : dec (hl) // decrease code -01
B81F | FE F7 : cp $F7
B821 | 20 01 : jr nz,$B824
B823 | 34 : inc (hl) // increase code +01
B824 | FE FD : cp $FD
B826 | 20 04 : jr nz,$B82C
B828 | 3E F0 : ld a,$F0 // decrease code -10
B82A | 18 06 : jr $B832
B82C | FE FE : cp $FE
B82E | 20 05 : jr nz,$B835
B830 | 3E 10 : ld a,$10 // increase code +10
B832 | 86 : add a,(hl)
B833 | 77 : ld (hl),a
B834 | 78 : ld a,b
B835 | FE EF : cp $EF
B837 | 20 05 : jr nz,$B83E
B839 | 7E : ld a,(hl) // play sound
B83A | F6 80 : or $80
B83C | 18 05 : jr $B843
B83E | FE DF : cp $DF
B840 | 20 04 : jr nz,$B846
B842 | AF : xor a // stop sound
B843 | 32 00 DC : ld ($DC00),a // send sound code
B846 | 18 CC : jr $B814
-->
</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="<< sound code %02X >>" line="19" align="center" >
<argument>maincpu.pb@C100</argument>
</output>
</script>
<script state="off">
<action>slot:cart:rom.mq@1D40 = CD05F4CDDFFE31F3</action>
<action>slot:cart:rom.mq@F810 = FFFFFFFFFFFFFFFF</action>
<action>slot:cart:rom.mq@F818 = FFFFFFFFFFFFFFFF</action>
<action>slot:cart:rom.mq@F820 = FFFFFFFFFFFFFFFF</action>
<action>slot:cart:rom.mq@F828 = FFFFFFFFFFFFFFFF</action>
<action>slot:cart:rom.mq@F830 = FFFFFFFFFFFFFFFF</action>
<action>slot:cart:rom.mq@F838 = FFFFFFFFFFFFFFFF</action>
<action>slot:cart:rom.mq@F840 = 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>