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: 847 Joined: Tue Dec 01, 2020 1:24 pm
Post
by jman » Wed Feb 24, 2021 8:35 am
Code: Select all
<cheat desc="keep a ball">
<script state="on">
<action>maincpu.mq@01b9 = 161acd205332083e</action>
<action>maincpu.mq@01c1 = 20043a195211b3f2</action>
<!--
11b9 | 3e 08 : mvi a,08
11bb | 32 53 20 : sta a,$2053
11be | cd 1a 16 : call $161a
11c1 | f2 b3 11 : jp $11b3
-->
</script>
<script state="off">
<action>maincpu.mq@01b9 = 32023e19e8cd073e</action>
<action>maincpu.mq@01c1 = 20043a1952cd2052</action>
</script>
</cheat>
The above code has problem. Ball often passes through a block then goes to out of screen.
I don't know this is cheat related bug or emulation problem (this game is "not working" status).
Other addresses are...
206f : credit
2055 : life
2052 : ball x-position
2053 : ball y-position
2062 : flag for ball rise or fall
2056 : score (2bytes BCD)
207a : top score (2bytes BCD)
jman
Posts: 847 Joined: Tue Dec 01, 2020 1:24 pm
Post
by jman » Mon Oct 09, 2023 1:42 am
blockch.xml
Code: Select all
<!-- G.T. Block Challenger -->
<mamecheat version="1">
<cheat desc="keep a ball (test)">
<!-- unverified because the game doesn't work -->
<script state="on">
<action>maincpu.mq@01B9 = 161ACD205332083E</action>
<action>maincpu.mq@01C1 = 20043A195211B3F2</action>
<!--
11B9 | 3E 08 : mvi a,08
11BB | 32 53 20 : sta a,$2053
11BE | CD 1A 16 : call $161a
11C1 | F2 B3 11 : jp $11b3
-->
</script>
<script state="off">
<action>maincpu.mq@01B9 = 32023E19E8CD073E</action>
<action>maincpu.mq@01C1 = 20043A1952CD2052</action>
</script>
</cheat>
<cheat desc="ball speed (test)">
<!-- unverified because the game doesn't work -->
<parameter>
<item value="0x01">01 (slow)</item>
<item value="0x02">02 </item>
<item value="0x04">03 </item>
<item value="0x06">04 </item>
<item value="0x08">05 (fast)</item>
</parameter>
<script state="on">
<action>maincpu.mq@09FF = C96700CE7C6F00C6</action> <!-- up -->
<action>maincpu.mq@0A12 = C96700DE7C6F00D6</action> <!-- down -->
<action>maincpu.md@0A39 = 4FC900C6 </action> <!-- right -->
<action>maincpu.md@0A4B = 4FC900C6 </action> <!-- left -->
</script>
<script state="change">
<action>maincpu.mb@0A00 = param</action>
<action>maincpu.mb@0A13 = param</action>
<action>maincpu.mb@0A3A = param</action>
<action>maincpu.mb@0A4C = -param</action>
</script>
<script state="off">
<action>maincpu.mq@09FF = 20CA03FE794F03E6</action>
<action>maincpu.mq@0A12 = 1A2DCAA74F4F03E6</action>
<action>maincpu.md@0A39 = 4F03E647 </action>
<action>maincpu.md@0A4B = 4F03E647 </action>
</script>
</cheat>
</mamecheat>
tvgm8080.xml.
Code: Select all
<!-- TV Game 8080 -->
<mamecheat version="1">
<cheat desc="keep a ball (test)">
<!-- unverified because the game doesn't work -->
<script state="on">
<action>maincpu.mq@01B9 = 161ACD205332083E</action>
<action>maincpu.mq@01C1 = 20043A195211B3F2</action>
<!--
11B9 | 3E 08 : mvi a,08
11BB | 32 53 20 : sta a,$2053
11BE | CD 1A 16 : call $161a
11C1 | F2 B3 11 : jp $11b3
-->
</script>
<script state="off">
<action>maincpu.mq@01B9 = 32023E19E8CD073E</action>
<action>maincpu.mq@01C1 = 20043A1952CD2052</action>
</script>
</cheat>
<cheat desc="ball speed (test)">
<!-- unverified because the game doesn't work -->
<parameter>
<item value="0x01">01 (slow)</item>
<item value="0x02">02 </item>
<item value="0x04">03 </item>
<item value="0x06">04 </item>
<item value="0x08">05 (fast)</item>
</parameter>
<script state="on">
<action>maincpu.mq@09FF = C96700CE7C6F00C6</action> <!-- up -->
<action>maincpu.mq@0A12 = C96700DE7C6F00D6</action> <!-- down -->
<action>maincpu.md@0A39 = 4FC900C6 </action> <!-- right -->
<action>maincpu.md@0A4B = 4FC900C6 </action> <!-- left -->
</script>
<script state="change">
<action>maincpu.mb@0A00 = param</action>
<action>maincpu.mb@0A13 = param</action>
<action>maincpu.mb@0A3A = param</action>
<action>maincpu.mb@0A4C = -param</action>
</script>
<script state="off">
<action>maincpu.mq@09FF = 20CA03FE794F03E6</action>
<action>maincpu.mq@0A12 = 1A2DCAA74F4F03E6</action>
<action>maincpu.md@0A39 = 4F03E647 </action>
<action>maincpu.md@0A4B = 4F03E647 </action>
</script>
</cheat>
</mamecheat>
"keep a ball" : Changed status as test.
"ball speed" : Added new as test.
There games are marked as "machine not working". The ball doesn't appear in the field after start the game so that I can't verify the cheat codes.