Code: Select all
<cheat desc="no hit">
<script state="on">
<action>maincpu.mb@4c27 = c9</action> <!-- skull -->
<action>maincpu.mb@4da9 = 18</action> <!-- enemy -->
</script>
<script state="off">
<action>maincpu.mb@4c27 = d0</action>
<action>maincpu.mb@4da9 = 30</action>
</script>
</cheat>
<cheat desc="player speed">
<parameter min="0x01" max="0x05" step="0x01" />
<script state="on">
<action>maincpu.mw@1443 = 7190</action> <!-- normal deck -->
<action>maincpu.mw@247b = 7190</action> <!-- lesson deck -->
<action>maincpu.mq@7190 = 10c12638cdc50306</action>
<action>maincpu.mq@7198 = ffffffffffffc9f9</action>
<!--
7190 | 06 xx : ld b,$xx
7192 | c5 : push bc
7193 | cd 38 26 : call $2638
7196 | c1 : pop bc
7197 | 10 f9 : djnz $7192
7199 | c9 : ret
-->
</script>
<script state="change">
<action>maincpu.mb@7191 = param</action>
</script>
<script state="off">
<action>maincpu.mw@1443 = 2638</action>
<action>maincpu.mw@247b = 2638</action>
<action>maincpu.mq@7190 = ffffffffffffffff</action>
<action>maincpu.mq@7198 = ffffffffffffffff</action>
</script>
</cheat>
<cheat desc="sound test mode">
<comment>set ram/rom check skip then reset the game (F3)</comment>
<script state="on">
<action>maincpu.mb@10ef = 00</action> <!-- disable next sequence at boot -->
<action>maincpu.mw@016f = 71a0</action>
<action>maincpu.mq@71a0 = f7fec0023ae10021</action>
<action>maincpu.mq@71a8 = 003a0318ef3e0420</action>
<action>maincpu.mq@71b0 = fe2bea2877be23c0</action>
<action>maincpu.mq@71b8 = 0120fefe350120fd</action>
<action>maincpu.mq@71c0 = 71d3cd0520effe34</action>
<action>maincpu.mq@71c8 = 00cd0320f7fe0718</action>
<action>maincpu.mq@71d0 = b860a9f77ecd1860</action>
<action>maincpu.mq@71d8 = f460e560d660c760</action>
<action>maincpu.mq@71e0 = 5161386112610360</action>
<action>maincpu.mq@71e8 = 816178616f615d61</action>
<action>maincpu.mq@71f0 = a8619c6193618a61</action>
<action>maincpu.mq@71f8 = db61cc61c061b461</action>
<action>maincpu.mq@7200 = 1a620261f661e761</action>
<action>maincpu.mq@7208 = ffffffffffffff62</action>
<!--
71a0 | 21 00 e1 : ld hl,$E100 // sound code address
71a3 | 3a 02 c0 : ld a,($C002) // read button input
71a6 | fe f7 : cp $F7
71a8 | 20 04 : jr nz,$71AE
71aa | 3e ef : ld a,$EF
71ac | 18 03 : jr $71B1
71ae | 3a 00 c0 : ld a,($C000) // read stick input
71b1 | 23 : inc hl
71b2 | be : cp (hl)
71b3 | 77 : ld (hl),a
71b4 | 28 ea : jr z,$71A0
71b6 | 2b : dec hl
71b7 | fe fd : cp $FD
71b9 | 20 01 : jr nz,$71BC
71bb | 35 : dec (hl) // decrease code
71bc | fe fe : cp $FE
71be | 20 01 : jr nz,$71C1
71c0 | 34 : inc (hl) // increase code
71c1 | fe ef : cp $EF
71c3 | 20 05 : jr nz,$71CA
71c5 | cd d3 71 : call $71D3 // play sound
71c8 | 18 07 : jr $71D1
71ca | fe f7 : cp $F7
71cc | 20 03 : jr nz,$71D1
71ce | cd 00 60 : call $6000 // stop sound
71d1 | 18 cd : jr $71A0
71d3 | 7e : ld a,(hl) // jump to each address
71d4 | f7 : rst $30
71d5 - 7208 : jump addresses
code address
00 $60a9
01 $60b8
02 $60c7
03 $60d6
04 $60e5
05 $60f4
06 $6103
07 $6112
08 $6138
09 $6151
0a $615d
0b $616f
0c $6178
0d $6181
0e $618a
0f $6193
11 $619c
12 $61a8
13 $61b4
14 $61c0
15 $61cc
16 $61db
17 $61e7
18 $61f6
19 $6202
1a $621a
-->
</script>
<script state="run">
<output format="----- higemaru 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@e100</argument>
</output>
</script>
<script state="off">
<action>maincpu.mb@10ef = 34</action>
<action>maincpu.mw@016f = 0324</action>
<action>maincpu.mq@71a0 = ffffffffffffffff</action>
<action>maincpu.mq@71a8 = ffffffffffffffff</action>
<action>maincpu.mq@71b0 = ffffffffffffffff</action>
<action>maincpu.mq@71b8 = ffffffffffffffff</action>
<action>maincpu.mq@71c0 = ffffffffffffffff</action>
<action>maincpu.mq@71c8 = ffffffffffffffff</action>
<action>maincpu.mq@71d0 = ffffffffffffffff</action>
<action>maincpu.mq@71d8 = ffffffffffffffff</action>
<action>maincpu.mq@71e0 = ffffffffffffffff</action>
<action>maincpu.mq@71e8 = ffffffffffffffff</action>
<action>maincpu.mq@71f0 = ffffffffffffffff</action>
<action>maincpu.mq@71f8 = ffffffffffffffff</action>
<action>maincpu.mq@7200 = ffffffffffffffff</action>
<action>maincpu.mq@7208 = ffffffffffffffff</action>
</script>
</cheat>
<cheat desc="skip ram/rom check">
<script state="on">
<action>maincpu.mw@004b = 0050</action>
</script>
<script state="off">
<action>maincpu.mw@004b = 1bf1</action>
</script>
</cheat>