Code: Select all
<cheat desc="no hit">
<script state="on">
<action>maincpu.mw@209c = 2b7d</action> <!-- boss -->
<action>maincpu.mw@20e4 = 2b7d</action> <!-- middle enemy -->
<action>maincpu.mw@2100 = 2b7d</action> <!-- enemy -->
<action>maincpu.mw@2165 = 2b7d</action> <!-- bullet (air) -->
<action>maincpu.mw@21e6 = 2b7d</action> <!-- bullet (ground) -->
</script>
<script state="off">
<action>maincpu.mw@209c = 24e6</action>
<action>maincpu.mw@20e4 = 24e6</action>
<action>maincpu.mw@2100 = 24e6</action>
<action>maincpu.mw@2165 = 24e6</action>
<action>maincpu.mw@21e6 = 24e6</action>
</script>
</cheat>
<cheat desc="auto fire - shot">
<script state="on">
<action>maincpu.mb@3874 = 76</action>
</script>
<script state="off">
<action>maincpu.mb@3874 = ee</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.md@34a2 = fd000021</action> <!-- up -->
<action>maincpu.md@351a = fd000021</action> <!-- down -->
<action>maincpu.md@3565 = fd000021</action> <!-- left -->
<action>maincpu.md@35db = fd000021</action> <!-- right -->
</script>
<script state="change">
<action>maincpu.mw@34a3 = param</action>
<action>maincpu.mw@351b = -param</action>
<action>maincpu.mw@3566 = -param</action>
<action>maincpu.mw@35dc = param</action>
</script>
<script state="off">
<action>maincpu.md@34a2 = fd190016</action>
<action>maincpu.md@351a = fd52edb7</action>
<action>maincpu.md@3565 = fd52edb7</action>
<action>maincpu.md@35db = fd190016</action>
</script>
</cheat>
<cheat desc="bullet speed">
<parameter>
<item value="0x01">01 (slow)</item>
<item value="0x08">02 </item>
<item value="0x10">03 </item>
<item value="0x18">04 </item>
<item value="0x20">05 (fast)</item>
</parameter>
<script state="change">
<action>maincpu.mb@3919 = param</action> <!-- normal -->
<action>maincpu.mb@391e = param</action> <!-- normal (power-up) -->
<action>maincpu.mb@392f = param</action> <!-- reverse -->
<action>maincpu.mb@3934 = param</action> <!-- reverse (power-up) -->
</script>
<script state="off">
<action>maincpu.mb@3919 = 0c</action>
<action>maincpu.mb@391e = 0c</action>
<action>maincpu.mb@392f = 0c</action>
<action>maincpu.mb@3934 = 0c</action>
</script>
</cheat>
<cheat desc="fast bomb">
<script state="on">
<action>maincpu.mw@3b26 = 3b12</action>
</script>
<script state="off">
<action>maincpu.mw@3b26 = 3a95</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@01e9 = 7620</action>
<action>maincpu.mq@7620 = 47b8e0013ad90021</action>
<action>maincpu.mq@7628 = fe350120fdfef928</action>
<action>maincpu.mq@7630 = 0420fbfe340120fe</action>
<action>maincpu.mq@7638 = 0520f7fe0618f03e</action>
<action>maincpu.mq@7640 = 20effe787786103e</action>
<action>maincpu.mq@7648 = 0420dffe05187e03</action>
<action>maincpu.mq@7650 = 0000cd18d00032af</action>
<!--
7620 | 21 00 d9 : ld hl,$D900 // sound code address
7623 | 3a 01 e0 : ld a,($E001) // read input
7626 | b8 : cp b
7627 | 47 : ld b,a
7628 | 28 f9 : jr z,$7623
762a | fe fd : cp $FD
762c | 20 01 : jr nz,$762F
762e | 35 : dec (hl) // decrease code -01
762f | fe fe : cp $FE
7631 | 20 01 : jr nz,$7634
7633 | 34 : inc (hl) // increase code +01
7634 | fe fb : cp $FB
7636 | 20 04 : jr nz,$763C
7638 | 3e f0 : ld a,$F0 // decrease code -10
763a | 18 06 : jr $7642
763c | fe f7 : cp $F7
763e | 20 05 : jr nz,$7645
7640 | 3e 10 : ld a,$10 // increase code +10
7642 | 86 : add a,(hl)
7643 | 77 : ld (hl),a
7644 | 78 : ld a,b
7645 | fe ef : cp $EF
7647 | 20 03 : jr nz,$764C
7649 | 7e : ld a,(hl) // play sound
764a | 18 05 : jr $7651
764c | fe df : cp $DF
764e | 20 04 : jr nz,$7654
7650 | af : xor a // stop sound
7651 | 32 00 d0 : ld ($D000),a // send sound code
7654 | 18 cd : jr $7623
-->
</script>
<script state="run">
<output format="----- bombs away 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@d900</argument>
</output>
</script>
<script state="off">
<action>maincpu.mw@01e9 = 01c2</action>
<action>maincpu.mq@7620 = 0000000000000000</action>
<action>maincpu.mq@7628 = 0000000000000000</action>
<action>maincpu.mq@7630 = 0000000000000000</action>
<action>maincpu.mq@7638 = 0000000000000000</action>
<action>maincpu.mq@7640 = 0000000000000000</action>
<action>maincpu.mq@7648 = 0000000000000000</action>
<action>maincpu.mq@7650 = 0000000000000000</action>
</script>
</cheat>