Code: Select all
<cheat desc="auto fire">
<script state="on">
<action>maincpu.mb@1942 = 00</action>
</script>
<script state="off">
<action>maincpu.mb@1942 = c0</action>
</script>
</cheat>
<cheat desc="player speed">
<parameter min="0x01" max="0x08" step="0x01" />
<script state="on">
<action>maincpu.md@1264 = 004800cd</action> <!-- y position -->
<action>maincpu.md@1282 = 004805cd</action> <!-- x position -->
<action>maincpu.mq@4800 = a77e130118588e11</action>
<action>maincpu.mq@4808 = ed4811f2003e0728</action>
<action>maincpu.mq@4810 = 000000c9801a4744</action>
<!--
4800 | 11 8e 58 : ld de,$588e // y position
4803 | 18 01 : jr $4806
4805 | 13 : inc de // x position
4806 | 7e : ld a,(hl)
4807 | a7 : and a
4808 | 28 07 : jr z,$4811
480a | 3e xx : ld a,$xx
480c | f2 11 48 : jp p,$4811
480f | ed 44 : neg
4811 | 47 : ld b,a
4812 | 1a : ld a,(de)
4813 | 80 : add a,b
4814 | c9 : ret
-->
</script>
<script state="change">
<action>maincpu.mb@480b = param</action>
</script>
<script state="off">
<action>maincpu.md@1264 = 86588e3a</action>
<action>maincpu.md@1282 = 86588f3a</action>
<action>maincpu.mq@4800 = 0000000000000000</action>
<action>maincpu.mq@4808 = 0000000000000000</action>
<action>maincpu.mq@4810 = 0000000000000000</action>
</script>
</cheat>
<cheat desc="direct turn on 2nd area">
<script state="on">
<action>maincpu.mw@121a = 4850</action>
<action>maincpu.mq@4850 = 0c280fe658313a47</action>
<action>maincpu.mq@4858 = 46195f0016486921</action>
<action>maincpu.mq@4860 = 58903278010736dd</action>
<action>maincpu.mq@4868 = 0e0200000c0400c9</action>
<action>maincpu.mq@4870 = 000000000a060800</action>
<!--
4850 | 47 : ld b,a
4851 | 3a 31 58 : ld a,($5831)
4854 | e6 0f : and $10
4856 | 28 0c : jr z,$4864
4858 | 21 69 48 : ld hl,$4869
485b | 16 00 : ld d,$00
485d | 5f : ld e,a
485e | 19 : add hl,de
485f | 46 : ld b,(hl)
4860 | dd 36 07 01 : ld (ix+$07),$01
4864 | 78 : ld a,b
4865 | 32 90 58 : ld ($5890),a
4868 | c9 : ret
4869 - 4872 : input/direction convert table
input direction
4 0 : up
1 4 : right
8 8 : down
2 c : left
5 2 : upper-right
9 6 : lower-right
a a : lower-left
6 e : upper-left
-->
</script>
<script state="off">
<action>maincpu.mw@121a = 108f</action>
<action>maincpu.mq@4850 = 0000000000000000</action>
<action>maincpu.mq@4858 = 0000000000000000</action>
<action>maincpu.mq@4860 = 0000000000000000</action>
<action>maincpu.mq@4868 = 0000000000000000</action>
<action>maincpu.mq@4870 = 0000000000000000</action>
</script>
</cheat>
<cheat desc="sound test mode">
<comment>reset the game (F3) to enter sound test mode</comment>
<script state="on">
<action>maincpu.mw@0005 = 06ae</action> <!-- skip some boot sequences -->
<action>maincpu.md@0742 = 004820c3</action>
<action>maincpu.mq@4820 = 843a590022000021</action>
<action>maincpu.mq@4828 = 2080fef6286fbd60</action>
<action>maincpu.mq@4830 = fe24012008fe2501</action>
<action>maincpu.mq@4838 = 10fe06187c032040</action>
<action>maincpu.mq@4840 = 18609032f23e0520</action>
<action>maincpu.mq@4848 = 00000000000000da</action>
<!--
4820 | 21 00 00 : ld hl,$0000 // initialize sound and input values
4823 | 22 00 59 : ld ($5900),hl
4826 | 3a 84 60 : ld a,($6084) // read input
4829 | bd : cp l
482a | 6f : ld l,a
482b | 28 f6 : jr z,$4823
482d | fe 80 : cp $80
482f | 20 01 : jr nz,$4832
4831 | 25 : dec h // decrease code
4832 | fe 08 : cp $08
4834 | 20 01 : jr nz,$4837
4836 | 24 : inc h // increase code
4837 | fe 40 : cp $40
4839 | 20 03 : jr nz,$483e
483b | 7c : ld a,h // play sound
483c | 18 06 : jr $4844
483e | fe 10 : cp $10
4840 | 20 05 : jr nz,$4847
4842 | 3e f2 : ld a,$f2 // stop sound
4844 | 32 90 60 : ld ($6090),a // send sound code
4847 | 18 da : jr $4823
-->
</script>
<script state="run">
<output format="----- zodiack sound test mode -----" line="10" align="center" />
<output format="left : decrease code" line="11" align="center" />
<output format="right : increase code" line="12" align="center" />
<output format="button 1 : play sound" line="13" align="center" />
<output format="up : 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@5901</argument>
</output>
</script>
<script state="off">
</script>
</cheat>
<cheat desc="skip ram/rom check">
<script state="on">
<action> maincpu.mw@44d6 = 2b18</action> <!-- maincpu : ram -->
<action> maincpu.mw@45f3 = 1f18</action> <!-- maincpu : rom -->
<action>audiocpu.mw@007a = 2818</action> <!-- audiocpu : ram -->
<!-- no rom check for audio cpu? -->
</script>
<script state="off">
<action> maincpu.mw@44d6 = dd21</action>
<action> maincpu.mw@45f3 = 0021</action>
<action>audiocpu.mw@007a = dd21</action>
</script>
</cheat>