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: 1316 Joined: Tue Dec 01, 2020 1:24 pm
Been thanked: 9 times
Post
by jman » Sun Aug 27, 2023 1:55 pm
Code: Select all
<!-- Meta Fox -->
<mamecheat version="1">
<cheat desc="no hit">
<script state="on">
<action>maincpu.mb@1969e = 60</action> <!-- bullet -->
<action>maincpu.mb@2d21e = 60</action> <!-- enemy -->
</script>
<script state="off">
<action>maincpu.mb@1969e = 67</action>
<action>maincpu.mb@2d21e = 67</action>
</script>
</cheat>
<cheat desc="auto fire">
<script state="on">
<action>maincpu.mb@f09c = 60</action> <!-- disable auto fire item check -->
<action>maincpu.mb@f0df = 30</action> <!-- button -->
<action>maincpu.mb@f0eb = 02</action> <!-- shot timer 1 -->
<action>maincpu.md@f586 = 103c0002</action> <!-- shot timer 2 -->
</script>
<script state="off">
<action>maincpu.mb@f09c = 67</action>
<action>maincpu.mb@f0df = 31</action>
<action>maincpu.mb@f0eb = 05</action>
<action>maincpu.md@f586 = 10350000</action>
</script>
</cheat>
<cheat desc="player speed">
<parameter>
<item value="0x0001">01 (slow)</item>
<item value="0x0003">02 </item>
<item value="0x0005">03 </item>
<item value="0x0007">04 </item>
<item value="0x0009">05 (fast)</item>
</parameter>
<script state="on">
<action>maincpu.mw@f274 = 103c</action> <!-- right -->
<action>maincpu.mw@f2aa = 103c</action> <!-- left -->
<action>maincpu.mw@f2d0 = 103c</action> <!-- down -->
<action>maincpu.mw@f2e6 = 103c</action> <!-- up -->
</script>
<script state="change">
<action>maincpu.mw@f276 = param</action>
<action>maincpu.mw@f2ac = param</action>
<action>maincpu.mw@f2d2 = param</action>
<action>maincpu.mw@f2e8 = param</action>
</script>
<script state="off">
<action>maincpu.md@f274 = 102b001d</action>
<action>maincpu.md@f2aa = 102b001d</action>
<action>maincpu.md@f2d0 = 102b001c</action>
<action>maincpu.md@f2e6 = 102b001c</action>
</script>
</cheat>
<cheat desc="sound test mode">
<!-- the game crash when you try to play code 0x13 or later -->
<comment>reset the game (F3) to enter sound test mode</comment>
<script state="on">
<action>maincpu.md@05aa4 = 00032df0</action>
<action>maincpu.mq@32df0 = 41f88000103900b0</action>
<action>maincpu.mq@32df8 = 0009b02800026740</action>
<action>maincpu.mq@32e00 = 0c00000266025310</action>
<action>maincpu.mq@32e08 = 0c00000166025210</action>
<action>maincpu.mq@32e10 = 0c00000866040410</action>
<action>maincpu.mq@32e18 = 00100c0000046604</action>
<action>maincpu.mq@32e20 = 061000100c000010</action>
<action>maincpu.mq@32e28 = 660a115000034eb9</action>
<action>maincpu.mq@32e30 = 0000d7b00c000020</action>
<action>maincpu.mq@32e38 = 66064eb900008578</action>
<action>maincpu.mq@32e40 = 114000024ef85abc</action>
<!--
32df0 | 41f8 8000 : lea $8000.w,A0 // sound code address ($ff8000)
32df4 | 1039 00b0 0009 : move.b $b00009.l,D0 // read input
32dfa | b028 0002 : cmp.b ($2,A0),D0
32dfe | 6740 : beq $32e40
32e00 | 0c00 0002 : cmpi.b #$2,D0
32e04 | 6602 : bne $32e08
32e06 | 5310 : subq.b #1,(A0) // decrease code -01
32e08 | 0c00 0001 : cmpi.b #$1,D0
32e0c | 6602 : bne $32e10
32e0e | 5210 : addq.b #1,(A0) // increase code +01
32e10 | 0c00 0008 : cmpi.b #$8,D0
32e14 | 6604 : bne $32e1a
32e16 | 0410 0010 : subi.b #$10,(A0) // decrease code -10
32e1a | 0c00 0004 : cmpi.b #$4,D0
32e1e | 6604 : bne $32e24
32e20 | 0610 0010 : addi.b #$10,(A0) // increase code + 10
32e24 | 0c00 0010 : cmpi.b #$10,D0
32e28 | 660a : bne $32e34
32e2a | 1150 0003 : move.b (A0),($3,A0) // play sound
32e2e | 4eb9 0000 d7b0 : jsr $d7b0.l
32e34 | 0c00 0020 : cmpi.b #$20,D0
32e38 | 6606 : bne $32e40
32e3a | 4eb9 0000 8578 : jsr $8578.l // stop sound
32e40 | 1140 0002 : move.b D0,($2,A0)
32e44 | 4ef8 5abc : jmp $5abc.w
-->
</script>
<script state="run">
<output format="----- meta fox 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 %2.2X >>" line="19" align="center" >
<argument>maincpu.pb@ff8000</argument>
</output>
</script>
<script state="off">
<action>maincpu.md@05aa4 = 0000753e</action>
<action>maincpu.mq@32df0 = 0000000000000000</action>
<action>maincpu.mq@32df8 = 0000000000000000</action>
<action>maincpu.mq@32e00 = 0000000000000000</action>
<action>maincpu.mq@32e08 = 0000000000000000</action>
<action>maincpu.mq@32e10 = 0000000000000000</action>
<action>maincpu.mq@32e18 = 0000000000000000</action>
<action>maincpu.mq@32e20 = 0000000000000000</action>
<action>maincpu.mq@32e28 = 0000000000000000</action>
<action>maincpu.mq@32e30 = 0000000000000000</action>
<action>maincpu.mq@32e38 = 0000000000000000</action>
<action>maincpu.mq@32e40 = 0000000000000000</action>
</script>
</cheat>
</mamecheat>
"sound test mode" : the game crash when you try to play code 0x13 or later.
jman
Posts: 1316 Joined: Tue Dec 01, 2020 1:24 pm
Been thanked: 9 times
Post
by jman » Sat Jun 21, 2025 10:06 am
metafox.xml
Code: Select all
<!-- Meta Fox -->
<mamecheat version="1">
<cheat desc="no hit">
<script state="on">
<action>maincpu.mb@1969E = 60</action> <!-- bullet -->
<action>maincpu.mb@2D21E = 60</action> <!-- enemy -->
</script>
<script state="off">
<action>maincpu.mb@1969E = 67</action>
<action>maincpu.mb@2D21E = 67</action>
</script>
</cheat>
<cheat desc="rapid fire">
<script state="on">
<action>maincpu.mb@F09C = 60 </action> <!-- disable auto fire item -->
<action>maincpu.mb@F0DF = 30 </action> <!-- button -->
<action>maincpu.mb@F0EB = 02 </action> <!-- shot timer 1 -->
<action>maincpu.md@F586 = 103C0002</action> <!-- shot timer 2 -->
</script>
<script state="off">
<action>maincpu.mb@F09C = 67 </action>
<action>maincpu.mb@F0DF = 31 </action>
<action>maincpu.mb@F0EB = 05 </action>
<action>maincpu.md@F586 = 10350000</action>
</script>
</cheat>
<cheat desc="player speed">
<parameter>
<item value="0x103C0001">01 (slow)</item>
<item value="0x103C0003">02 </item>
<item value="0x103C0006">03 </item>
<item value="0x103C0009">04 </item>
<item value="0x103C000C">05 (fast)</item>
</parameter>
<script state="change">
<action>maincpu.md@F274 = param</action> <!-- right -->
<action>maincpu.md@F2AA = param</action> <!-- left -->
<action>maincpu.md@F2D0 = param</action> <!-- down -->
<action>maincpu.md@F2E6 = param</action> <!-- up -->
</script>
<script state="off">
<action>maincpu.md@F274 = 102B001D</action>
<action>maincpu.md@F2AA = 102B001D</action>
<action>maincpu.md@F2D0 = 102B001C</action>
<action>maincpu.md@F2E6 = 102B001C</action>
</script>
</cheat>
<cheat desc="auto damage">
<script state="on">
<action>maincpu.md@10C90 = 4EB80200 </action>
<action>maincpu.mq@00200 = 4EF900032E500000</action>
<action>maincpu.mq@15BE4 = 4EB900032E8C0C68</action>
<action>maincpu.mq@163B2 = 4EB900032E966E30</action>
<action>maincpu.mq@169F0 = 4EB900032E8C0C68</action>
<action>maincpu.mq@16E88 = 4EB900032EA06C12</action>
<action>maincpu.mq@17358 = 4EB900032E8C0C68</action>
<action>maincpu.mq@17802 = 4EB900032E8C0C68</action>
<action>maincpu.mq@17D18 = 4EB900032EAA6E0A</action>
<action>maincpu.mq@32E50 = 4A6800206B303228</action>
<action>maincpu.mq@32E58 = 00080C4101906306</action>
<action>maincpu.mq@32E60 = 0C41FFF063203228</action>
<action>maincpu.mq@32E68 = 00060C4101606216</action>
<action>maincpu.mq@32E70 = 0C41001063105368</action>
<action>maincpu.mq@32E78 = 00206A06527900F0</action>
<action>maincpu.mq@32E80 = 307808D000003228</action>
<action>maincpu.mq@32E88 = 00204E7561C21168</action>
<action>maincpu.mq@32E90 = 002400254E7561B8</action>
<action>maincpu.mq@32E98 = 0C68000000204E75</action>
<action>maincpu.mq@32EA0 = 61AE0C6800C80020</action>
<action>maincpu.mq@32EA8 = 4E7561A40C68012C</action>
<action>maincpu.mq@32EB0 = 00204E7500000000</action>
<!--
32E50 | 4A68 0020 : tst.w ($20,A0)
32E54 | 6B30 : bmi $32e86
32E56 | 3228 0008 : move.w ($8,A0), D1
32E5A | 0C41 0190 : cmpi.w #$190, D1
32E5E | 6306 : bls $32e66
32E60 | 0C41 FFF0 : cmpi.w #-$10, D1
32E64 | 6320 : bls $32e86
32E66 | 3228 0006 : move.w ($6,A0), D1
32E6A | 0C41 0160 : cmpi.w #$160, D1
32E6E | 6216 : bhi $32e86
32E70 | 0C41 0010 : cmpi.w #$10, D1
32E74 | 6310 : bls $32e86
32E76 | 5368 0020 : subq.w #1, ($20,A0)
32E7A | 6A06 : bpl $32e82
32E7C | 5279 00F0 3078 : addq.w #1, $f03078.l
32E82 | 08D0 0000 : bset #$0, (A0)
32E86 | 3228 0020 : move.w ($20,A0), D1
32E8A | 4E75 : rts
32E8C | 61C2 : bsr $32e50
32E8E | 1168 0024 0025 : move.b ($24,A0), ($25,A0)
32E94 | 4E75 : rts
32E96 | 61B8 : bsr $32e50
32E98 | 0C68 0000 0020 : cmpi.w #$0, ($20,A0)
32E9E | 4E75 : rts
32EA0 | 61AE : bsr $32e50
32EA2 | 0C68 00C8 0020 : cmpi.w #$c8, ($20,A0)
32EA8 | 4E75 : rts
32EAA | 61A4 : bsr $32e50
32EAC | 0C68 012C 0020 : cmpi.w #$12c, ($20,A0)
32EB2 | 4E75 : rts
-->
</script>
<script state="off">
<action>maincpu.md@10C90 = 32280020 </action>
<action>maincpu.mq@00200 = 0000051000000510</action>
<action>maincpu.mq@15BE4 = 1168002400250C68</action>
<action>maincpu.mq@163B2 = 0C68000000206E30</action>
<action>maincpu.mq@169F0 = 1168002400250C68</action>
<action>maincpu.mq@16E88 = 0C6800C800206C12</action>
<action>maincpu.mq@17358 = 1168002400250C68</action>
<action>maincpu.mq@17802 = 1168002400250C68</action>
<action>maincpu.mq@17D18 = 0C68012C00206E0A</action>
<action>maincpu.mq@32E50 = 0000000000000000</action>
<action>maincpu.mq@32E58 = 0000000000000000</action>
<action>maincpu.mq@32E60 = 0000000000000000</action>
<action>maincpu.mq@32E68 = 0000000000000000</action>
<action>maincpu.mq@32E70 = 0000000000000000</action>
<action>maincpu.mq@32E78 = 0000000000000000</action>
<action>maincpu.mq@32E80 = 0000000000000000</action>
<action>maincpu.mq@32E88 = 0000000000000000</action>
<action>maincpu.mq@32E90 = 0000000000000000</action>
<action>maincpu.mq@32E98 = 0000000000000000</action>
<action>maincpu.mq@32EA0 = 0000000000000000</action>
<action>maincpu.mq@32EA8 = 0000000000000000</action>
<action>maincpu.mq@32EB0 = 0000000000000000</action>
</script>
</cheat>
<cheat desc="sound test mode">
<!-- the game crash when you try to play code 0x13 or later -->
<comment>reset the game (F3) to enter sound test mode</comment>
<script state="on">
<action>maincpu.md@05AA4 = 00032DF0 </action>
<action>maincpu.mq@32DF0 = 41F88000103900B0</action>
<action>maincpu.mq@32DF8 = 0009B02800026740</action>
<action>maincpu.mq@32E00 = 0C00000266025310</action>
<action>maincpu.mq@32E08 = 0C00000166025210</action>
<action>maincpu.mq@32E10 = 0C00000866040410</action>
<action>maincpu.mq@32E18 = 00100C0000046604</action>
<action>maincpu.mq@32E20 = 061000100C000010</action>
<action>maincpu.mq@32E28 = 660A115000034EB9</action>
<action>maincpu.mq@32E30 = 0000D7B00C000020</action>
<action>maincpu.mq@32E38 = 66064EB900008578</action>
<action>maincpu.mq@32E40 = 114000024EF85ABC</action>
<!--
32DF0 | 41F8 8000 : lea $8000.w, A0 // sound code address ($FF8000)
32DF4 | 1039 00B0 0009 : move.b $b00009.l, D0 // read input
32DFA | B028 0002 : cmp.b ($2,A0), D0
32DFE | 6740 : beq $32e40
32E00 | 0C00 0002 : cmpi.b #$2, D0
32E04 | 6602 : bne $32e08
32E06 | 5310 : subq.b #1, (A0) // decrease code -01
32E08 | 0C00 0001 : cmpi.b #$1, D0
32E0C | 6602 : bne $32e10
32E0E | 5210 : addq.b #1, (A0) // increase code +01
32E10 | 0C00 0008 : cmpi.b #$8, D0
32E14 | 6604 : bne $32e1a
32E16 | 0410 0010 : subi.b #$10, (A0) // decrease code -10
32E1A | 0C00 0004 : cmpi.b #$4, D0
32E1E | 6604 : bne $32e24
32E20 | 0610 0010 : addi.b #$10, (A0) // increase code +10
32E24 | 0C00 0010 : cmpi.b #$10, D0
32E28 | 660A : bne $32e34
32E2A | 1150 0003 : move.b (A0), ($3,A0) // play sound
32E2E | 4EB9 0000 D7B0 : jsr $d7b0.l
32E34 | 0C00 0020 : cmpi.b #$20, D0
32E38 | 6606 : bne $32e40
32E3A | 4EB9 0000 8578 : jsr $8578.l // stop sound
32E40 | 1140 0002 : move.b D0, ($2,A0)
32E44 | 4EF8 5ABC : jmp $5abc.w
-->
</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@FF8000</argument>
</output>
</script>
<script state="off">
<action>maincpu.md@05AA4 = 0000753E </action>
<action>maincpu.mq@32DF0 = 0000000000000000</action>
<action>maincpu.mq@32DF8 = 0000000000000000</action>
<action>maincpu.mq@32E00 = 0000000000000000</action>
<action>maincpu.mq@32E08 = 0000000000000000</action>
<action>maincpu.mq@32E10 = 0000000000000000</action>
<action>maincpu.mq@32E18 = 0000000000000000</action>
<action>maincpu.mq@32E20 = 0000000000000000</action>
<action>maincpu.mq@32E28 = 0000000000000000</action>
<action>maincpu.mq@32E30 = 0000000000000000</action>
<action>maincpu.mq@32E38 = 0000000000000000</action>
<action>maincpu.mq@32E40 = 0000000000000000</action>
</script>
</cheat>
</mamecheat>
"auto damage" : Added new.