Code: Select all
<!-- Super Zaxxon (315-5013) -->
<mamecheat version="1">
<cheat desc="no hit">
<script state="on">
<action>maincpu.mb@1251 = 40</action> <!-- enemy -->
<action>maincpu.mb@1270 = C4</action> <!-- bullet -->
<action>maincpu.mb@132C = 40</action> <!-- enemy -->
<action>maincpu.mb@1367 = C4</action> <!-- bullet -->
<action>maincpu.mb@1388 = 40</action> <!-- enemy -->
<action>maincpu.mb@14FD = FB</action> <!-- wall -->
<action>maincpu.mb@1565 = FB</action> <!-- wall -->
<action>maincpu.ob@1710 = C9</action> <!-- fire (boss) -->
</script>
<script state="off">
<action>maincpu.mb@1251 = 41</action>
<action>maincpu.mb@1270 = C5</action>
<action>maincpu.mb@132C = 41</action>
<action>maincpu.mb@1367 = C5</action>
<action>maincpu.mb@1388 = 41</action>
<action>maincpu.mb@14FD = FC</action>
<action>maincpu.mb@1565 = FC</action>
<action>maincpu.ob@1710 = C8</action>
</script>
</cheat>
<cheat desc="rapid fire">
<script state="on">
<action>maincpu.mb@366F = 0F</action>
</script>
<script state="off">
<action>maincpu.mb@366F = 0E</action>
</script>
</cheat>
<cheat desc="player speed">
<parameter min="0x01" max="0x05" step="0x01" />
<script state="on">
<action>maincpu.mw@0B0A = 5000 </action>
<action>maincpu.oq@5000 = 10C1FFFFCDC5FF06</action>
<action>maincpu.mq@5000 = FFFF33B7FFFF00FF</action>
<action>maincpu.oq@5008 = FFFFFFFFFFFFC9FF</action>
<action>maincpu.mq@5008 = FFFFFFFFFFFFFFF9</action>
<!--
5000 | 06 xx : ld b,$xx
5002 | C5 : push bc
5003 | CD B7 33 : call $33B7
5006 | C1 : pop bc
5007 | 10 F9 : djnz $5002
5009 | C9 : ret
-->
</script>
<script state="change">
<action>maincpu.mb@5001 = param</action>
</script>
<script state="off">
<action>maincpu.mw@0B0A = 33B7 </action>
<action>maincpu.oq@5000 = 8808880888088808</action>
<action>maincpu.mq@5000 = 2888288828882888</action>
<action>maincpu.oq@5008 = 8808880888088808</action>
<action>maincpu.mq@5008 = 2888288828882888</action>
</script>
</cheat>
<cheat desc="bullet speed">
<parameter min="0x01" max="0x05" step="0x01" />
<script state="on">
<action>maincpu.mw@0B0D = 5010 </action>
<action>maincpu.oq@5010 = 10C1FFFFCDC5FF06</action>
<action>maincpu.mq@5010 = FFFF35ADFFFF00FF</action>
<action>maincpu.oq@5018 = FFFFFFFFFFFFC9FF</action>
<action>maincpu.mq@5018 = FFFFFFFFFFFFFFF9</action>
<!--
5010 | 06 xx : ld b,$xx
5012 | C5 : push bc
5013 | CD AD 35 : call $35AD
5016 | C1 : pop bc
5017 | 10 F9 : djnz $5012
5019 | C9 : ret
-->
</script>
<script state="change">
<action>maincpu.mb@5011 = param</action>
</script>
<script state="off">
<action>maincpu.mw@0B63 = 39C7 </action>
<action>maincpu.oq@5010 = A888A888A888A888</action>
<action>maincpu.mq@5010 = 2028202820282028</action>
<action>maincpu.oq@5018 = A888A888A888A888</action>
<action>maincpu.mq@5018 = 2028202820282028</action>
</script>
</cheat>
<cheat desc="fuel speed">
<parameter>
<item value="0x80">01 (slow)</item>
<item value="0x40">02 </item>
<item value="0x20">03 </item>
<item value="0x10">04 </item>
<item value="0x01">05 (fast)</item>
</parameter>
<script state="on">
<action>maincpu.od@300B = D8FFFFCD </action>
<action>maincpu.md@300B = FF5020FF </action>
<action>maincpu.oq@5020 = FFFFFFC9FFFE237E</action>
<action>maincpu.mq@5020 = FFFFFFFF00FFFFFF</action>
<!--
5020 | 7E : ld a,(hl)
5021 | 23 : inc hl
5022 | FE xx : cp $xx
5024 | C9 : ret
-->
</script>
<script state="change">
<action>maincpu.mb@5023 = param</action>
</script>
<script state="off">
<action>maincpu.od@300B = D8BE237E </action>
<action>maincpu.md@300B = 5836A356 </action>
<action>maincpu.oq@5020 = 8808880888088808</action>
<action>maincpu.mq@5020 = 2888288828882888</action>
</script>
</cheat>
</mamecheat>