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.
jman
Posts: 1288 Joined: Tue Dec 01, 2020 1:24 pm
Been thanked: 9 times
Post
by jman » Sun Apr 10, 2022 1:24 pm
Code: Select all
<cheat desc="no hit - shield">
<script state="on">
<!-- objects -->
<action>maincpu.mw@31323 = 9d50</action> <!-- ($7323) -->
<action>maincpu.mq@33d50 = 125410340562033c</action>
<action>maincpu.mq@33d58 = fe8fa90775958fff</action>
<!--
9d50 | 12 54 10 : LDA #$10,u
9d53 | 34 05 : CMPA #$05
9d55 | 62 03 : BCC $9D5A
9d57 | 3c fe : ANDCC #$FE
9d59 | 8f : RTS
9d5a | a9 07 75 95 : JSR $7595
9d5e | 8f : RTS
-->
<!-- background -->
<action>maincpu.mb@316f6 = 60</action> <!-- shield ($76f6) -->
<action>maincpu.mb@3170b = 60</action> <!-- shield ($770b) -->
<action>maincpu.mb@31889 = 60</action> <!-- t-trap ($7889) -->
<action>maincpu.mb@318a0 = 60</action> <!-- t-trap ($78a0) -->
<action>maincpu.mb@318b7 = 60</action> <!-- t-trap ($78b7) -->
<action>maincpu.mb@319d6 = 60</action> <!-- forcefield/bubble ($79d6) -->
<action>maincpu.mb@319ee = 60</action> <!-- forcefield/bubble ($79ee) -->
<action>maincpu.mb@31a06 = 60</action> <!-- forcefield/bubble ($7a06) -->
<action>maincpu.mb@31a26 = 60</action> <!-- forcefield/bubble ($7a26) -->
<action>maincpu.mb@31a3d = 60</action> <!-- forcefield/bubble ($7a3d) -->
</script>
<script state="off">
<action>maincpu.mw@31323 = 7595</action>
<action>maincpu.mq@33d50 = ffffffffffffffff</action>
<action>maincpu.mq@33d58 = ffffffffffffffff</action>
<action>maincpu.mb@316f6 = 73</action>
<action>maincpu.mb@3170b = 73</action>
<action>maincpu.mb@31889 = 73</action>
<action>maincpu.mb@318a0 = 73</action>
<action>maincpu.mb@318b7 = 73</action>
<action>maincpu.mb@319d6 = 73</action>
<action>maincpu.mb@319ee = 73</action>
<action>maincpu.mb@31a06 = 73</action>
<action>maincpu.mb@31a26 = 73</action>
<action>maincpu.mb@31a3d = 73</action>
</script>
</cheat>
<cheat desc="auto fire">
<script state="on">
<action>maincpu.mb@30421 = 97</action> <!-- shot -->
<action>maincpu.mb@30430 = 97</action> <!-- missile -->
</script>
<script state="off">
<action>maincpu.mb@30421 = 98</action>
<action>maincpu.mb@30430 = 98</action>
</script>
</cheat>
<cheat desc="player speed">
<parameter>
<item value="0x0080">01 (slow)</item>
<item value="0x0180">02 </item>
<item value="0x0280">03 </item>
<item value="0x0380">04 </item>
<item value="0x0480">05 (fast)</item>
</parameter>
<script state="on">
<action>maincpu.mb@300b4 = 81</action> <!-- fixed current speed for x position -->
<action>maincpu.mb@300da = 81</action> <!-- fixed current speed for y position -->
<action>maincpu.mb@3010c = 60</action> <!-- disable speed down in the water -->
</script>
<script state="change">
<action>maincpu.mw@30225 = param</action> <!-- vertical/horizon -->
<action>maincpu.mw@30231 = param</action> <!-- slant -->
</script>
<script state="off">
<action>maincpu.mb@300b4 = 9d</action>
<action>maincpu.mb@300da = 9d</action>
<action>maincpu.mb@3010c = 72</action>
<action>maincpu.mw@30225 = 0100</action>
<action>maincpu.mw@30231 = 00b6</action>
</script>
</cheat>
<cheat desc="roulette speed">
<parameter>
<item value="0x7f">01 (slow)</item>
<item value="0x3f">02 </item>
<item value="0x0f">03 </item>
<item value="0x03">04 </item>
<item value="0x00">05 (fast)</item>
</parameter>
<script state="change">
<action>maincpu.mb@30f12 = param</action>
</script>
<script state="off">
<action>maincpu.mb@30f12 = 03</action>
</script>
</cheat>
<cheat desc="sound test mode">
<comment>set ram/rom check skip then reset the game (F3)</comment>
<script state="on">
<action>maincpu.mw@3a40c = fc80</action> <!-- ($a40c) -->
<action>maincpu.mq@3fc80 = 3ac41112073f8c36</action>
<action>maincpu.mq@3fc88 = c41173f413c41034</action>
<action>maincpu.mq@3fc90 = f763018d34ef6301</action>
<action>maincpu.mq@3fc98 = 8a34fb63021d1034</action>
<action>maincpu.mq@3fca0 = fd630215103bc410</action>
<action>maincpu.mq@3fca8 = 34df730634bf630a</action>
<action>maincpu.mq@3fcb0 = 11fb3b073fcc3b07</action>
<action>maincpu.mq@3fcb8 = 3fc860c4ffffffff</action>
<!--
fc80 | 3a c4 11 : STA $11
fc83 | 12 07 3f 8c : LDA $3f8c // read input
fc87 | 36 c4 11 : CMPA $11
fc8a | 73 f4 : BEQ $FC80
fc8c | 13 c4 10 : LDB $10
fc8f | 34 f7 : CMPA #$F7
fc91 | 63 01 : BNE $FC94
fc93 | 8d : DECB // decrease code -01
fc94 | 34 ef : CMPA #$EF
fc96 | 63 01 : BNE $FC99
fc98 | 8a : INCB // increase code +01
fc99 | 34 fb : CMPA #$FB
fc9b | 63 02 : BNE $FC9F
fc9d | 1d 10 : SUBB #$10 // decrease code -10
fc9f | 34 fd : CMPA #$FD
fca1 | 63 02 : BNE $FCA5
fca3 | 15 10 : ADDB #$10 // increase code +10
fca5 | 3b c4 10 : STB $10
fca8 | 34 df : CMPA #$DF
fcaa | 73 06 : BEQ $FCB2
fcac | 34 bf : CMPA #$BF
fcae | 63 0a : BNE $FCBA
fcb0 | 11 fb : LDB #$FB // stop sound
fcb2 | 3b 07 3f cc : STB $3fcc // send sound code
fcb6 | 3b 07 3f c8 : STB $3fc8 // sound cpu trigger
fcba | 60 c4 : BRA $FC80
-->
</script>
<script state="run">
<output format="----- parodius da! 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="<< sound code %2.2X >>" line="19" align="center">
<argument>maincpu.pb@1810</argument>
</output>
</script>
<script state="off">
<action>maincpu.mw@3a40c = a51d</action>
<action>maincpu.mq@3fc80 = ffffffffffffffff</action>
<action>maincpu.mq@3fc88 = ffffffffffffffff</action>
<action>maincpu.mq@3fc90 = ffffffffffffffff</action>
<action>maincpu.mq@3fc98 = ffffffffffffffff</action>
<action>maincpu.mq@3fca0 = ffffffffffffffff</action>
<action>maincpu.mq@3fca8 = ffffffffffffffff</action>
<action>maincpu.mq@3fcb0 = ffffffffffffffff</action>
<action>maincpu.mq@3fcb8 = ffffffffffffffff</action>
</script>
</cheat>
<cheat desc="skip ram/rom check">
<script state="on">
<action>maincpu.md@3a108 = 6801ca13</action> <!-- LBRA $A2D5 ($a108) -->
</script>
<script state="off">
<action>maincpu.md@3a108 = 42000013</action>
</script>
</cheat>
jman
Posts: 1288 Joined: Tue Dec 01, 2020 1:24 pm
Been thanked: 9 times
Post
by jman » Mon May 05, 2025 10:21 am
parodius.xml
Code: Select all
<!-- Parodius Da!: Shinwa kara Owarai e (World, set 1) -->
<mamecheat version="1">
<cheat desc="no hit - player">
<script state="on">
<action>maincpu.mb@30282 = 8F</action> <!-- objects ($6282) -->
<action>maincpu.mb@30160 = 60</action> <!-- background ($6160) -->
</script>
<script state="off">
<action>maincpu.mb@30282 = 12</action>
<action>maincpu.mb@30160 = 73</action>
</script>
</cheat>
<cheat desc="no hit - shield">
<script state="on">
<!-- objects -->
<action>maincpu.mw@31323 = 9D50 </action> <!-- ($7323) -->
<action>maincpu.mq@33D50 = 125410340562033C</action>
<action>maincpu.mq@33D58 = FE8FA90775958FFF</action>
<!--
9D50 | 12 54 10 : LDA #$10,U
9D53 | 34 05 : CMPA #$05
9D55 | 62 03 : BCC $9D5A
9D57 | 3C FE : ANDCC #$FE
9D59 | 8F : RTS
9D5A | A9 07 75 95 : JSR $7595
9D5E | 8F : RTS
-->
<!-- background -->
<action>maincpu.mb@316F6 = 60</action> <!-- shield ($76F6) -->
<action>maincpu.mb@3170B = 60</action> <!-- shield ($770B) -->
<action>maincpu.mb@31889 = 60</action> <!-- t-trap ($7889) -->
<action>maincpu.mb@318A0 = 60</action> <!-- t-trap ($78A0) -->
<action>maincpu.mb@318B7 = 60</action> <!-- t-trap ($78B7) -->
<action>maincpu.mb@319D6 = 60</action> <!-- forcefield/bubble ($79D6) -->
<action>maincpu.mb@319EE = 60</action> <!-- forcefield/bubble ($79EE) -->
<action>maincpu.mb@31A06 = 60</action> <!-- forcefield/bubble ($7A06) -->
<action>maincpu.mb@31A26 = 60</action> <!-- forcefield/bubble ($7A26) -->
<action>maincpu.mb@31A3D = 60</action> <!-- forcefield/bubble ($7A3D) -->
</script>
<script state="off">
<action>maincpu.mw@31323 = 7595 </action>
<action>maincpu.mq@33D50 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@33D58 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mb@316F6 = 73 </action>
<action>maincpu.mb@3170B = 73 </action>
<action>maincpu.mb@31889 = 73 </action>
<action>maincpu.mb@318A0 = 73 </action>
<action>maincpu.mb@318B7 = 73 </action>
<action>maincpu.mb@319D6 = 73 </action>
<action>maincpu.mb@319EE = 73 </action>
<action>maincpu.mb@31A06 = 73 </action>
<action>maincpu.mb@31A26 = 73 </action>
<action>maincpu.mb@31A3D = 73 </action>
</script>
</cheat>
<cheat desc="rapid fire">
<script state="on">
<action>maincpu.mb@30421 = 97</action> <!-- shot ($6421) -->
<action>maincpu.mb@30430 = 97</action> <!-- missile ($6430) -->
</script>
<script state="off">
<action>maincpu.mb@30421 = 98</action>
<action>maincpu.mb@30430 = 98</action>
</script>
</cheat>
<cheat desc="player speed">
<parameter>
<item value="0x40008092">01 (slow)</item>
<item value="0x40018092">02 </item>
<item value="0x40038092">03 </item>
<item value="0x40058092">04 </item>
<item value="0x40078092">05 (fast)</item>
</parameter>
<script state="on">
<action>maincpu.mb@3010C = 60</action> <!-- no speed down in the water ($610C) -->
</script>
<script state="change">
<action>maincpu.md@300B4 = param</action> <!-- left/right ($60B4) -->
<action>maincpu.md@300DA = param</action> <!-- up/down ($60DA) -->
</script>
<script state="off">
<action>maincpu.mb@3010C = 72 </action>
<action>maincpu.md@300B4 = 9D41B192</action>
<action>maincpu.md@300DA = 9D41B192</action>
</script>
</cheat>
<cheat desc="no roulette">
<script state="on">
<action>maincpu.mb@31362 = 3D</action> <!-- ($7361) -->
</script>
<script state="off">
<action>maincpu.mb@31362 = 21</action>
</script>
</cheat>
<cheat desc="roulette speed">
<parameter>
<item value="0x3F">01 (slow)</item>
<item value="0x1F">02 </item>
<item value="0x0F">03 </item>
<item value="0x03">04 </item>
<item value="0x00">05 (fast)</item>
</parameter>
<script state="change">
<action>maincpu.mb@30F12 = param</action> <!-- ($6F12) -->
</script>
<script state="off">
<action>maincpu.mb@30F12 = 03</action>
</script>
</cheat>
<cheat desc="sound test mode">
<comment>set "skip ram/rom check" then reset the game (F3)</comment>
<script state="on">
<action>maincpu.mw@3A3FF = FC80 </action> <!-- ($A40C) -->
<action>maincpu.mq@3FC80 = 3AC48112073F8C36</action>
<action>maincpu.mq@3FC88 = C48173F413C48034</action>
<action>maincpu.mq@3FC90 = F763018D34EF6301</action>
<action>maincpu.mq@3FC98 = 8A34FB63021D1034</action>
<action>maincpu.mq@3FCA0 = FD630215103BC480</action>
<action>maincpu.mq@3FCA8 = 34DF730634BF630A</action>
<action>maincpu.mq@3FCB0 = 11FB3B073FCC3B07</action>
<action>maincpu.mq@3FCB8 = 3FC860C4FFFFFFFF</action>
<!--
FC80 | 3A C4 81 : STA $81
FC83 | 12 07 3F 8C : LDA $3F8C // read input
FC87 | 36 C4 81 : CMPA $81
FC8A | 73 F4 : BEQ $FC80
FC8C | 13 C4 80 : LDB $80
FC8F | 34 F7 : CMPA #$F7
FC91 | 63 01 : BNE $FC94
FC93 | 8D : DECB // decrease code -01
FC94 | 34 EF : CMPA #$EF
FC96 | 63 01 : BNE $FC99
FC98 | 8A : INCB // increase code +01
FC99 | 34 FB : CMPA #$FB
FC9B | 63 02 : BNE $FC9F
FC9D | 1D 10 : SUBB #$10 // decrease code -10
FC9F | 34 FD : CMPA #$FD
FCA1 | 63 02 : BNE $FCA5
FCA3 | 15 10 : ADDB #$10 // increase code +10
FCA5 | 3B C4 80 : STB $80
FCA8 | 34 DF : CMPA #$DF
FCAA | 73 06 : BEQ $FCB2 // play sound
FCAC | 34 BF : CMPA #$BF
FCAE | 63 0A : BNE $FCBA
FCB0 | 11 FB : LDB #$FB // stop sound
FCB2 | 3B 07 3F CC : STB $3FCC // send sound code
FCB6 | 3B 07 3F C8 : STB $3FC8 // audio cpu trigger
FCBA | 60 C4 : BRA $FC80
-->
</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@1880</argument>
</output>
</script>
<script state="off">
<action>maincpu.mw@3A3FF = A510 </action>
<action>maincpu.mq@3FC80 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3FC88 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3FC90 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3FC98 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3FCA0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3FCA8 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3FCB0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3FCB8 = FFFFFFFFFFFFFFFF</action>
</script>
</cheat>
<cheat desc="skip ram/rom check">
<script state="on">
<action> maincpu.md@3A108 = 6801CA13</action> <!-- ($A108) -->
<action>audiocpu.md@005D9 = 7105EEC3</action> <!-- ram -->
<action>audiocpu.md@005FE = 210618C3</action> <!-- rom -->
</script>
<script state="off">
<action> maincpu.md@3A108 = 42000013</action>
<action>audiocpu.md@005D9 = 71F00021</action>
<action>audiocpu.md@005FE = 21000001</action>
</script>
</cheat>
</mamecheat>
parodiuse.xml
Code: Select all
<!-- Parodius Da!: Shinwa kara Owarai e (World, set 2) -->
<mamecheat version="1">
<cheat desc="no hit - player">
<script state="on">
<action>maincpu.mb@30282 = 8F</action> <!-- objects ($6282) -->
<action>maincpu.mb@30160 = 60</action> <!-- background ($6160) -->
</script>
<script state="off">
<action>maincpu.mb@30282 = 12</action>
<action>maincpu.mb@30160 = 73</action>
</script>
</cheat>
<cheat desc="no hit - shield">
<script state="on">
<!-- objects -->
<action>maincpu.mw@31323 = 9D50 </action> <!-- ($7323) -->
<action>maincpu.mq@33D50 = 125410340562033C</action>
<action>maincpu.mq@33D58 = FE8FA90775958FFF</action>
<!--
9D50 | 12 54 10 : LDA #$10,U
9D53 | 34 05 : CMPA #$05
9D55 | 62 03 : BCC $9D5A
9D57 | 3C FE : ANDCC #$FE
9D59 | 8F : RTS
9D5A | A9 07 75 95 : JSR $7595
9D5E | 8F : RTS
-->
<!-- background -->
<action>maincpu.mb@316F6 = 60</action> <!-- shield ($76F6) -->
<action>maincpu.mb@3170B = 60</action> <!-- shield ($770B) -->
<action>maincpu.mb@31889 = 60</action> <!-- t-trap ($7889) -->
<action>maincpu.mb@318A0 = 60</action> <!-- t-trap ($78A0) -->
<action>maincpu.mb@318B7 = 60</action> <!-- t-trap ($78B7) -->
<action>maincpu.mb@319D6 = 60</action> <!-- forcefield/bubble ($79D6) -->
<action>maincpu.mb@319EE = 60</action> <!-- forcefield/bubble ($79EE) -->
<action>maincpu.mb@31A06 = 60</action> <!-- forcefield/bubble ($7A06) -->
<action>maincpu.mb@31A26 = 60</action> <!-- forcefield/bubble ($7A26) -->
<action>maincpu.mb@31A3D = 60</action> <!-- forcefield/bubble ($7A3D) -->
</script>
<script state="off">
<action>maincpu.mw@31323 = 7595 </action>
<action>maincpu.mq@33D50 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@33D58 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mb@316F6 = 73 </action>
<action>maincpu.mb@3170B = 73 </action>
<action>maincpu.mb@31889 = 73 </action>
<action>maincpu.mb@318A0 = 73 </action>
<action>maincpu.mb@318B7 = 73 </action>
<action>maincpu.mb@319D6 = 73 </action>
<action>maincpu.mb@319EE = 73 </action>
<action>maincpu.mb@31A06 = 73 </action>
<action>maincpu.mb@31A26 = 73 </action>
<action>maincpu.mb@31A3D = 73 </action>
</script>
</cheat>
<cheat desc="rapid fire">
<script state="on">
<action>maincpu.mb@30421 = 97</action> <!-- shot ($6421) -->
<action>maincpu.mb@30430 = 97</action> <!-- missile ($6430) -->
</script>
<script state="off">
<action>maincpu.mb@30421 = 98</action>
<action>maincpu.mb@30430 = 98</action>
</script>
</cheat>
<cheat desc="player speed">
<parameter>
<item value="0x40008092">01 (slow)</item>
<item value="0x40018092">02 </item>
<item value="0x40038092">03 </item>
<item value="0x40058092">04 </item>
<item value="0x40078092">05 (fast)</item>
</parameter>
<script state="on">
<action>maincpu.mb@3010C = 60</action> <!-- no speed down in the water ($610C) -->
</script>
<script state="change">
<action>maincpu.md@300B4 = param</action> <!-- left/right ($60B4) -->
<action>maincpu.md@300DA = param</action> <!-- up/down ($60DA) -->
</script>
<script state="off">
<action>maincpu.mb@3010C = 72 </action>
<action>maincpu.md@300B4 = 9D41B192</action>
<action>maincpu.md@300DA = 9D41B192</action>
</script>
</cheat>
<cheat desc="no roulette">
<script state="on">
<action>maincpu.mb@31362 = 3D</action> <!-- ($7361) -->
</script>
<script state="off">
<action>maincpu.mb@31362 = 21</action>
</script>
</cheat>
<cheat desc="roulette speed">
<parameter>
<item value="0x3F">01 (slow)</item>
<item value="0x1F">02 </item>
<item value="0x0F">03 </item>
<item value="0x03">04 </item>
<item value="0x00">05 (fast)</item>
</parameter>
<script state="change">
<action>maincpu.mb@30F12 = param</action> <!-- ($6F12) -->
</script>
<script state="off">
<action>maincpu.mb@30F12 = 03</action>
</script>
</cheat>
<cheat desc="sound test mode">
<comment>set "skip ram/rom check" then reset the game (F3)</comment>
<script state="on">
<action>maincpu.mw@3A40C = FC80 </action> <!-- ($A40C) -->
<action>maincpu.mq@3FC80 = 3AC48112073F8C36</action>
<action>maincpu.mq@3FC88 = C48173F413C48034</action>
<action>maincpu.mq@3FC90 = F763018D34EF6301</action>
<action>maincpu.mq@3FC98 = 8A34FB63021D1034</action>
<action>maincpu.mq@3FCA0 = FD630215103BC480</action>
<action>maincpu.mq@3FCA8 = 34DF730634BF630A</action>
<action>maincpu.mq@3FCB0 = 11FB3B073FCC3B07</action>
<action>maincpu.mq@3FCB8 = 3FC860C4FFFFFFFF</action>
<!--
FC80 | 3A C4 81 : STA $81
FC83 | 12 07 3F 8C : LDA $3F8C // read input
FC87 | 36 C4 81 : CMPA $81
FC8A | 73 F4 : BEQ $FC80
FC8C | 13 C4 80 : LDB $80
FC8F | 34 F7 : CMPA #$F7
FC91 | 63 01 : BNE $FC94
FC93 | 8D : DECB // decrease code -01
FC94 | 34 EF : CMPA #$EF
FC96 | 63 01 : BNE $FC99
FC98 | 8A : INCB // increase code +01
FC99 | 34 FB : CMPA #$FB
FC9B | 63 02 : BNE $FC9F
FC9D | 1D 10 : SUBB #$10 // decrease code -10
FC9F | 34 FD : CMPA #$FD
FCA1 | 63 02 : BNE $FCA5
FCA3 | 15 10 : ADDB #$10 // increase code +10
FCA5 | 3B C4 80 : STB $80
FCA8 | 34 DF : CMPA #$DF
FCAA | 73 06 : BEQ $FCB2 // play sound
FCAC | 34 BF : CMPA #$BF
FCAE | 63 0A : BNE $FCBA
FCB0 | 11 FB : LDB #$FB // stop sound
FCB2 | 3B 07 3F CC : STB $3FCC // send sound code
FCB6 | 3B 07 3F C8 : STB $3FC8 // audio cpu trigger
FCBA | 60 C4 : BRA $FC80
-->
</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@1880</argument>
</output>
</script>
<script state="off">
<action>maincpu.mw@3A40C = A51D </action>
<action>maincpu.mq@3FC80 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3FC88 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3FC90 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3FC98 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3FCA0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3FCA8 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3FCB0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3FCB8 = FFFFFFFFFFFFFFFF</action>
</script>
</cheat>
<cheat desc="skip ram/rom check">
<script state="on">
<action> maincpu.md@3A108 = 6801CA13</action> <!-- ($A108) -->
<action>audiocpu.md@005D9 = 7105EEC3</action> <!-- ram -->
<action>audiocpu.md@005FE = 210618C3</action> <!-- rom -->
</script>
<script state="off">
<action> maincpu.md@3A108 = 42000013</action>
<action>audiocpu.md@005D9 = 71F00021</action>
<action>audiocpu.md@005FE = 21000001</action>
</script>
</cheat>
</mamecheat>
parodiusj.xml
Code: Select all
<!-- Parodius Da!: Shinwa kara Owarai e (Japan) -->
<mamecheat version="1">
<cheat desc="no hit - player">
<script state="on">
<action>maincpu.mb@30282 = 8F</action> <!-- objects ($6282) -->
<action>maincpu.mb@30160 = 60</action> <!-- background ($6160) -->
</script>
<script state="off">
<action>maincpu.mb@30282 = 12</action>
<action>maincpu.mb@30160 = 73</action>
</script>
</cheat>
<cheat desc="no hit - shield">
<script state="on">
<!-- objects -->
<action>maincpu.mw@31323 = 9D50 </action> <!-- ($7323) -->
<action>maincpu.mq@33D50 = 125410340562033C</action>
<action>maincpu.mq@33D58 = FE8FA90775958FFF</action>
<!--
9D50 | 12 54 10 : LDA #$10,U
9D53 | 34 05 : CMPA #$05
9D55 | 62 03 : BCC $9D5A
9D57 | 3C FE : ANDCC #$FE
9D59 | 8F : RTS
9D5A | A9 07 75 95 : JSR $7595
9D5E | 8F : RTS
-->
<!-- background -->
<action>maincpu.mb@316F6 = 60</action> <!-- shield ($76F6) -->
<action>maincpu.mb@3170B = 60</action> <!-- shield ($770B) -->
<action>maincpu.mb@31889 = 60</action> <!-- t-trap ($7889) -->
<action>maincpu.mb@318A0 = 60</action> <!-- t-trap ($78A0) -->
<action>maincpu.mb@318B7 = 60</action> <!-- t-trap ($78B7) -->
<action>maincpu.mb@319D6 = 60</action> <!-- forcefield/bubble ($79D6) -->
<action>maincpu.mb@319EE = 60</action> <!-- forcefield/bubble ($79EE) -->
<action>maincpu.mb@31A06 = 60</action> <!-- forcefield/bubble ($7A06) -->
<action>maincpu.mb@31A26 = 60</action> <!-- forcefield/bubble ($7A26) -->
<action>maincpu.mb@31A3D = 60</action> <!-- forcefield/bubble ($7A3D) -->
</script>
<script state="off">
<action>maincpu.mw@31323 = 7595 </action>
<action>maincpu.mq@33D50 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@33D58 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mb@316F6 = 73 </action>
<action>maincpu.mb@3170B = 73 </action>
<action>maincpu.mb@31889 = 73 </action>
<action>maincpu.mb@318A0 = 73 </action>
<action>maincpu.mb@318B7 = 73 </action>
<action>maincpu.mb@319D6 = 73 </action>
<action>maincpu.mb@319EE = 73 </action>
<action>maincpu.mb@31A06 = 73 </action>
<action>maincpu.mb@31A26 = 73 </action>
<action>maincpu.mb@31A3D = 73 </action>
</script>
</cheat>
<cheat desc="rapid fire">
<script state="on">
<action>maincpu.mb@30421 = 97</action> <!-- shot ($6421) -->
<action>maincpu.mb@30430 = 97</action> <!-- missile ($6430) -->
</script>
<script state="off">
<action>maincpu.mb@30421 = 98</action>
<action>maincpu.mb@30430 = 98</action>
</script>
</cheat>
<cheat desc="player speed">
<parameter>
<item value="0x40008092">01 (slow)</item>
<item value="0x40018092">02 </item>
<item value="0x40038092">03 </item>
<item value="0x40058092">04 </item>
<item value="0x40078092">05 (fast)</item>
</parameter>
<script state="on">
<action>maincpu.mb@3010C = 60</action> <!-- no speed down in the water ($610C) -->
</script>
<script state="change">
<action>maincpu.md@300B4 = param</action> <!-- left/right ($60B4) -->
<action>maincpu.md@300DA = param</action> <!-- up/down ($60DA) -->
</script>
<script state="off">
<action>maincpu.mb@3010C = 72 </action>
<action>maincpu.md@300B4 = 9D41B192</action>
<action>maincpu.md@300DA = 9D41B192</action>
</script>
</cheat>
<cheat desc="no roulette">
<script state="on">
<action>maincpu.mb@31362 = 3D</action> <!-- ($7361) -->
</script>
<script state="off">
<action>maincpu.mb@31362 = 21</action>
</script>
</cheat>
<cheat desc="roulette speed">
<parameter>
<item value="0x3F">01 (slow)</item>
<item value="0x1F">02 </item>
<item value="0x0F">03 </item>
<item value="0x03">04 </item>
<item value="0x00">05 (fast)</item>
</parameter>
<script state="change">
<action>maincpu.mb@30F12 = param</action> <!-- ($6F12) -->
</script>
<script state="off">
<action>maincpu.mb@30F12 = 03</action>
</script>
</cheat>
<cheat desc="sound test mode">
<comment>set "skip ram/rom check" then reset the game (F3)</comment>
<script state="on">
<action>maincpu.mw@3A40C = FC80 </action> <!-- ($A40C) -->
<action>maincpu.mq@3FC80 = 3AC48112073F8C36</action>
<action>maincpu.mq@3FC88 = C48173F413C48034</action>
<action>maincpu.mq@3FC90 = F763018D34EF6301</action>
<action>maincpu.mq@3FC98 = 8A34FB63021D1034</action>
<action>maincpu.mq@3FCA0 = FD630215103BC480</action>
<action>maincpu.mq@3FCA8 = 34DF730634BF630A</action>
<action>maincpu.mq@3FCB0 = 11FB3B073FCC3B07</action>
<action>maincpu.mq@3FCB8 = 3FC860C4FFFFFFFF</action>
<!--
FC80 | 3A C4 81 : STA $81
FC83 | 12 07 3F 8C : LDA $3F8C // read input
FC87 | 36 C4 81 : CMPA $81
FC8A | 73 F4 : BEQ $FC80
FC8C | 13 C4 80 : LDB $80
FC8F | 34 F7 : CMPA #$F7
FC91 | 63 01 : BNE $FC94
FC93 | 8D : DECB // decrease code -01
FC94 | 34 EF : CMPA #$EF
FC96 | 63 01 : BNE $FC99
FC98 | 8A : INCB // increase code +01
FC99 | 34 FB : CMPA #$FB
FC9B | 63 02 : BNE $FC9F
FC9D | 1D 10 : SUBB #$10 // decrease code -10
FC9F | 34 FD : CMPA #$FD
FCA1 | 63 02 : BNE $FCA5
FCA3 | 15 10 : ADDB #$10 // increase code +10
FCA5 | 3B C4 80 : STB $80
FCA8 | 34 DF : CMPA #$DF
FCAA | 73 06 : BEQ $FCB2 // play sound
FCAC | 34 BF : CMPA #$BF
FCAE | 63 0A : BNE $FCBA
FCB0 | 11 FB : LDB #$FB // stop sound
FCB2 | 3B 07 3F CC : STB $3FCC // send sound code
FCB6 | 3B 07 3F C8 : STB $3FC8 // audio cpu trigger
FCBA | 60 C4 : BRA $FC80
-->
</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@1880</argument>
</output>
</script>
<script state="off">
<action>maincpu.mw@3A40C = A51D </action>
<action>maincpu.mq@3FC80 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3FC88 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3FC90 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3FC98 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3FCA0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3FCA8 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3FCB0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3FCB8 = FFFFFFFFFFFFFFFF</action>
</script>
</cheat>
<cheat desc="skip ram/rom check">
<script state="on">
<action> maincpu.md@3A108 = 6801CA13</action> <!-- ($A108) -->
<action>audiocpu.md@005D9 = 7105EEC3</action> <!-- ram -->
<action>audiocpu.md@005FE = 210618C3</action> <!-- rom -->
</script>
<script state="off">
<action> maincpu.md@3A108 = 42000013</action>
<action>audiocpu.md@005D9 = 71F00021</action>
<action>audiocpu.md@005FE = 21000001</action>
</script>
</cheat>
</mamecheat>
parodiusa.xml
Code: Select all
<!-- Parodius Da!: Shinwa kara Owarai e (Asia) -->
<mamecheat version="1">
<cheat desc="no hit - player">
<script state="on">
<action>maincpu.mb@30282 = 8F</action> <!-- objects ($6282) -->
<action>maincpu.mb@30160 = 60</action> <!-- background ($6160) -->
</script>
<script state="off">
<action>maincpu.mb@30282 = 12</action>
<action>maincpu.mb@30160 = 73</action>
</script>
</cheat>
<cheat desc="no hit - shield">
<script state="on">
<!-- objects -->
<action>maincpu.mw@31323 = 9D50 </action> <!-- ($7323) -->
<action>maincpu.mq@33D50 = 125410340562033C</action>
<action>maincpu.mq@33D58 = FE8FA90775958FFF</action>
<!--
9D50 | 12 54 10 : LDA #$10,U
9D53 | 34 05 : CMPA #$05
9D55 | 62 03 : BCC $9D5A
9D57 | 3C FE : ANDCC #$FE
9D59 | 8F : RTS
9D5A | A9 07 75 95 : JSR $7595
9D5E | 8F : RTS
-->
<!-- background -->
<action>maincpu.mb@316F6 = 60</action> <!-- shield ($76F6) -->
<action>maincpu.mb@3170B = 60</action> <!-- shield ($770B) -->
<action>maincpu.mb@31889 = 60</action> <!-- t-trap ($7889) -->
<action>maincpu.mb@318A0 = 60</action> <!-- t-trap ($78A0) -->
<action>maincpu.mb@318B7 = 60</action> <!-- t-trap ($78B7) -->
<action>maincpu.mb@319D6 = 60</action> <!-- forcefield/bubble ($79D6) -->
<action>maincpu.mb@319EE = 60</action> <!-- forcefield/bubble ($79EE) -->
<action>maincpu.mb@31A06 = 60</action> <!-- forcefield/bubble ($7A06) -->
<action>maincpu.mb@31A26 = 60</action> <!-- forcefield/bubble ($7A26) -->
<action>maincpu.mb@31A3D = 60</action> <!-- forcefield/bubble ($7A3D) -->
</script>
<script state="off">
<action>maincpu.mw@31323 = 7595 </action>
<action>maincpu.mq@33D50 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@33D58 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mb@316F6 = 73 </action>
<action>maincpu.mb@3170B = 73 </action>
<action>maincpu.mb@31889 = 73 </action>
<action>maincpu.mb@318A0 = 73 </action>
<action>maincpu.mb@318B7 = 73 </action>
<action>maincpu.mb@319D6 = 73 </action>
<action>maincpu.mb@319EE = 73 </action>
<action>maincpu.mb@31A06 = 73 </action>
<action>maincpu.mb@31A26 = 73 </action>
<action>maincpu.mb@31A3D = 73 </action>
</script>
</cheat>
<cheat desc="rapid fire">
<script state="on">
<action>maincpu.mb@30421 = 97</action> <!-- shot ($6421) -->
<action>maincpu.mb@30430 = 97</action> <!-- missile ($6430) -->
</script>
<script state="off">
<action>maincpu.mb@30421 = 98</action>
<action>maincpu.mb@30430 = 98</action>
</script>
</cheat>
<cheat desc="player speed">
<parameter>
<item value="0x40008092">01 (slow)</item>
<item value="0x40018092">02 </item>
<item value="0x40038092">03 </item>
<item value="0x40058092">04 </item>
<item value="0x40078092">05 (fast)</item>
</parameter>
<script state="on">
<action>maincpu.mb@3010C = 60</action> <!-- no speed down in the water ($610C) -->
</script>
<script state="change">
<action>maincpu.md@300B4 = param</action> <!-- left/right ($60B4) -->
<action>maincpu.md@300DA = param</action> <!-- up/down ($60DA) -->
</script>
<script state="off">
<action>maincpu.mb@3010C = 72 </action>
<action>maincpu.md@300B4 = 9D41B192</action>
<action>maincpu.md@300DA = 9D41B192</action>
</script>
</cheat>
<cheat desc="no roulette">
<script state="on">
<action>maincpu.mb@31362 = 3D</action> <!-- ($7361) -->
</script>
<script state="off">
<action>maincpu.mb@31362 = 21</action>
</script>
</cheat>
<cheat desc="roulette speed">
<parameter>
<item value="0x3F">01 (slow)</item>
<item value="0x1F">02 </item>
<item value="0x0F">03 </item>
<item value="0x03">04 </item>
<item value="0x00">05 (fast)</item>
</parameter>
<script state="change">
<action>maincpu.mb@30F12 = param</action> <!-- ($6F12) -->
</script>
<script state="off">
<action>maincpu.mb@30F12 = 03</action>
</script>
</cheat>
<cheat desc="sound test mode">
<comment>set "skip ram/rom check" then reset the game (F3)</comment>
<script state="on">
<action>maincpu.mw@3A40C = FC80 </action> <!-- ($A40C) -->
<action>maincpu.mq@3FC80 = 3AC48112073F8C36</action>
<action>maincpu.mq@3FC88 = C48173F413C48034</action>
<action>maincpu.mq@3FC90 = F763018D34EF6301</action>
<action>maincpu.mq@3FC98 = 8A34FB63021D1034</action>
<action>maincpu.mq@3FCA0 = FD630215103BC480</action>
<action>maincpu.mq@3FCA8 = 34DF730634BF630A</action>
<action>maincpu.mq@3FCB0 = 11FB3B073FCC3B07</action>
<action>maincpu.mq@3FCB8 = 3FC860C4FFFFFFFF</action>
<!--
FC80 | 3A C4 81 : STA $81
FC83 | 12 07 3F 8C : LDA $3F8C // read input
FC87 | 36 C4 81 : CMPA $81
FC8A | 73 F4 : BEQ $FC80
FC8C | 13 C4 80 : LDB $80
FC8F | 34 F7 : CMPA #$F7
FC91 | 63 01 : BNE $FC94
FC93 | 8D : DECB // decrease code -01
FC94 | 34 EF : CMPA #$EF
FC96 | 63 01 : BNE $FC99
FC98 | 8A : INCB // increase code +01
FC99 | 34 FB : CMPA #$FB
FC9B | 63 02 : BNE $FC9F
FC9D | 1D 10 : SUBB #$10 // decrease code -10
FC9F | 34 FD : CMPA #$FD
FCA1 | 63 02 : BNE $FCA5
FCA3 | 15 10 : ADDB #$10 // increase code +10
FCA5 | 3B C4 80 : STB $80
FCA8 | 34 DF : CMPA #$DF
FCAA | 73 06 : BEQ $FCB2 // play sound
FCAC | 34 BF : CMPA #$BF
FCAE | 63 0A : BNE $FCBA
FCB0 | 11 FB : LDB #$FB // stop sound
FCB2 | 3B 07 3F CC : STB $3FCC // send sound code
FCB6 | 3B 07 3F C8 : STB $3FC8 // audio cpu trigger
FCBA | 60 C4 : BRA $FC80
-->
</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@1880</argument>
</output>
</script>
<script state="off">
<action>maincpu.mw@3A40C = A51D </action>
<action>maincpu.mq@3FC80 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3FC88 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3FC90 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3FC98 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3FCA0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3FCA8 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3FCB0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3FCB8 = FFFFFFFFFFFFFFFF</action>
</script>
</cheat>
<cheat desc="skip ram/rom check">
<script state="on">
<action> maincpu.md@3A108 = 6801CA13</action> <!-- ($A108) -->
<action>audiocpu.md@005D9 = 7105EEC3</action> <!-- ram -->
<action>audiocpu.md@005FE = 210618C3</action> <!-- rom -->
</script>
<script state="off">
<action> maincpu.md@3A108 = 42000013</action>
<action>audiocpu.md@005D9 = 71F00021</action>
<action>audiocpu.md@005FE = 21000001</action>
</script>
</cheat>
</mamecheat>
"player speed" : Simplified code.
"no roulette" : Added new.
"sound test mode" : Rewritten routine.
"skip ram/rom check" : Added codes for audiocpu.