Code: Select all
<cheat desc="no hit - player (wip)">
<script state="on">
<action>slot:cart:rom.mb@4ee1 = c9</action> <!-- enemy -->
<action>slot:cart:rom.mb@4ec0 = c9</action> <!-- bullet -->
<action>slot:cart:rom.mb@5766 = c9</action> <!-- boss -->
</script>
<script state="off">
<action>slot:cart:rom.mb@4ee1 = 3a</action>
<action>slot:cart:rom.mb@4ec0 = c0</action>
<action>slot:cart:rom.mb@5766 = c0</action>
</script>
</cheat>
<cheat desc="no hit - sidefighter (wip)">
<script state="on">
<action>slot:cart:rom.mb@5145 = c9</action> <!-- enemy -->
<action>slot:cart:rom.mb@5120 = c9</action> <!-- bullet -->
</script>
<script state="off">
<action>slot:cart:rom.mb@5145 = c8</action>
<action>slot:cart:rom.mb@5120 = d0</action>
</script>
</cheat>
<cheat desc="auto fire (wip)">
<script state="on">
<action>slot:cart:rom.mb@2fca = 0d</action>
</script>
<script state="off">
<action>slot:cart:rom.mb@2fca = 5b</action>
</script>
</cheat>
<cheat desc="player speed (wip)">
<parameter min="0x01" max="0x05" step="0x01" />
<script state="on">
<action>slot:cart:rom.mw@2ccb = 7600</action>
<action>slot:cart:rom.mq@7600 = 77dd7616cd097edd</action>
<action>slot:cart:rom.mq@7608 = dd7616cd0b7edd09</action>
<action>slot:cart:rom.mq@7610 = c8a7c9341bcd0b77</action>
<action>slot:cart:rom.mq@7618 = ffffc944edf0003e</action>
<!--
7600 | dd 7e 09 : ld a,(ix+$09)
7603 | cd 16 76 : call $7616
7606 | dd 77 09 : ld (ix+$09),a
7609 | dd 7e 0b : ld a,(ix+$0b)
760c | cd 16 76 : call $7616
760f | dd 77 0b : ld (ix+$0b),a
7612 | cd 1b 34 : call $341b
7615 | c9 : ret
7616 | a7 : and a
7617 | c8 : ret z
7618 | 3e xx : ld a,$xx
761a | f0 : ret p
761b | ed 44 : neg
761d | c9 : ret
-->
</script>
<script state="change">
<action>slot:cart:rom.mb@7619 = param</action>
</script>
<script state="off">
<action>slot:cart:rom.mw@2ccb = 341b</action>
<action>slot:cart:rom.mq@7600 = ffffffffffffffff</action>
<action>slot:cart:rom.mq@7608 = ffffffffffffffff</action>
<action>slot:cart:rom.mq@7610 = ffffffffffffffff</action>
<action>slot:cart:rom.mq@7618 = ffffffffffffffff</action>
</script>
</cheat>
<cheat desc="bullet speed (wip)">
<parameter>
<item value="0x06">01 (slow)</item>
<item value="0x0c">02 </item>
<item value="0x12">03 </item>
<item value="0x18">04 </item>
<item value="0x1e">05 (fast)</item>
</parameter>
<script state="on">
<action>slot:cart:rom.mw@3105 = 7620</action>
<action>slot:cart:rom.mq@7620 = c9341bcd000b36dd</action>
<!--
7620 | DD 36 0B xx : ld (ix+$0b),$xx
7624 | CD 1B 34 : call $341B
7627 | C9 : ret
-->
</script>
<script state="change">
<action>slot:cart:rom.mb@7623 = -param</action>
</script>
<script state="off">
<action>slot:cart:rom.mw@3105 = 341b</action>
<action>slot:cart:rom.mq@7620 = ffffffffffffffff</action>
</script>
</cheat>
<cheat desc="sound test mode (wip)">
<comment>reset the game (F3) to enter sound test mode</comment>
<script state="on">
<action>slot:cart:rom.mw@05d0 = 7630</action>
<action>slot:cart:rom.mq@7630 = 22d5763311800021</action>
<action>slot:cart:rom.mq@7638 = fec86fbddcdbc100</action>
<action>slot:cart:rom.mq@7640 = 0120f7fe250120fb</action>
<action>slot:cart:rom.mq@7648 = 04187c0320effe24</action>
<action>slot:cart:rom.mq@7650 = c9d00332afc0dffe</action>
<!--
7630 | 21 00 80 : ld hl,$8000 // initialize sound and input values
7633 | 11 33 76 : ld de,$7633
7636 | d5 : push de
7637 | 22 00 c1 : ld ($c100),hl
763a | db dc : in a,($dc) // read input
763c | bd : cp l
763d | 6f : ld l,a
763e | c8 : ret z
763f | fe fb : cp $fb
7641 | 20 01 : jr nz,$7644
7643 | 25 : dec h // pressed left - code decrement
7644 | fe f7 : cp $f7
7646 | 20 01 : jr nz,$7649
7648 | 24 : inc h // pressed right - code increment
7649 | fe ef : cp $ef
764b | 20 03 : jr nz,$7650
764d | 7c : ld a,h // pressed button 1 - play sound
764e | 18 04 : jr $7654
7650 | fe df : cp $df
7652 | c0 : ret nz
7653 | af : xor a // pressed button 2 - stop sound
7654 | 32 03 d0 : ld ($d003),a // send sound code
7657 | c9 : ret
-->
</script>
<script state="run">
<output format="----- bomber raid sound test mode -----" line="10" align="center" />
<output format="left : code decrement" line="11" align="center" />
<output format="right : code increment" line="12" align="center" />
<output format="button 1 : play sound" line="13" align="center" />
<output format="button 2 : 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@c101</argument>
</output>
</script>
<script state="off">
<action>slot:cart:rom.mw@05d0 = 17f8</action>
<action>slot:cart:rom.mq@7630 = ffffffffffffffff</action>
<action>slot:cart:rom.mq@7638 = ffffffffffffffff</action>
<action>slot:cart:rom.mq@7640 = ffffffffffffffff</action>
<action>slot:cart:rom.mq@7648 = ffffffffffffffff</action>
<action>slot:cart:rom.mq@7650 = ffffffffffffffff</action>
</script>
</cheat>