Code: Select all
<cheat desc="no hit">
<script state="on">
<action>maincpu.mb@17243 = be</action> <!-- main objects -->
<action>maincpu.mb@0b09f = be</action> <!-- blue enemy in stage 3 -->
<action>maincpu.mb@0b457 = be</action> <!-- blue enemy in stage 7 -->
</script>
<script state="off">
<action>maincpu.mb@17243 = c0</action>
<action>maincpu.mb@0b09f = c0</action>
<action>maincpu.mb@0b457 = c0</action>
</script>
</cheat>
<cheat desc="P1 auto fire">
<script state="on">
<action>maincpu.mb@05d0d = 02</action> <!-- laser -->
<action>maincpu.mw@05ee0 = 0002</action> <!-- ring -->
<action>maincpu.mw@0612a = 0002</action> <!-- way -->
<action>maincpu.mb@0638d = 02</action> <!-- missile -->
</script>
<script state="off">
<action>maincpu.mb@05d0d = aa</action>
<action>maincpu.mw@05ee0 = 0124</action>
<action>maincpu.mw@0612a = 0132</action>
<action>maincpu.mb@0638d = da</action>
</script>
</cheat>
<cheat desc="P2 auto fire">
<script state="on">
<action>maincpu.mb@05d25 = 02</action> <!-- laser -->
<action>maincpu.mw@05efa = 0002</action> <!-- ring -->
<action>maincpu.mw@06144 = 0002</action> <!-- way -->
<action>maincpu.mb@063b5 = 02</action> <!-- missile -->
</script>
<script state="off">
<action>maincpu.mb@05d25 = 92</action>
<action>maincpu.mw@05efa = 010a</action>
<action>maincpu.mw@06144 = 0118</action>
<action>maincpu.mb@063b5 = b2</action>
</script>
</cheat>
<cheat desc="player speed">
<parameter>
<item value="0x01">01 (slow)</item>
<item value="0x03">02 </item>
<item value="0x06">03 </item>
<item value="0x09">04 </item>
<item value="0x0c">05 (fast)</item>
</parameter>
<script state="on">
<action>maincpu.md@05118 = 00033400</action>
<action>maincpu.mq@33400 = 70001028000c673a</action>
<action>maincpu.mq@33408 = 5340e14843f90002</action>
<action>maincpu.mq@33410 = a3c0d3c070001028</action>
<action>maincpu.mq@33418 = 000de748d3c07000</action>
<action>maincpu.mq@33420 = 1028000f02400003</action>
<action>maincpu.mq@33428 = e348123100006114</action>
<action>maincpu.mq@33430 = d368000412310001</action>
<action>maincpu.mq@33438 = 610ad36800025228</action>
<action>maincpu.mq@33440 = 000f4e750c28000b</action>
<action>maincpu.mq@33448 = 0009670c74004a01</action>
<action>maincpu.mq@33450 = 67066a0244021202</action>
<action>maincpu.mq@33458 = 48814e7500000000</action>
<!--
33400 | 7000 : moveq #$0,D0
33402 | 1028 000c : move.b ($c,A0),D0
33406 | 673a : beq $33442
33408 | 5340 : subq.w #1,D0
3340a | e148 : lsl.w #8,D0
3340c | 43f9 0002 a3c0 : lea $2a3c0.l,A1
33412 | d3c0 : adda.l D0,A1
33414 | 7000 : moveq #$0,D0
33416 | 1028 000d : move.b ($d,A0),D0
3341a | e748 : lsl.w #3,D0
3341c | d3c0 : adda.l D0,A1
3341e | 7000 : moveq #$0,D0
33420 | 1028 000f : move.b ($f,A0),D0
33424 | 0240 0003 : andi.w #$3,D0
33428 | e348 : lsl.w #1,D0
3342a | 1231 0000 : move.b (A1,D0.w),D1
3342e | 6114 : bsr $33444
33430 | d368 0004 : add.w D1,($4,A0)
33434 | 1231 0001 : move.b ($1,A1,D0.w),D1
33438 | 610a : bsr $33444
3343a | d368 0002 : add.w D1,($2,A0)
3343e | 5228 000f : addq.b #1,($f,A0)
33442 | 4e75 : rts
33444 | 0c28 000b 0009 : cmpi.b #$b,($9,A0)
3344a | 670c : beq $33458
3344c | 74xx : moveq #$xx,D2
3344e | 4a01 : tst.b D1
33450 | 6706 : beq $33458
33452 | 6a02 : bpl $33456
33454 | 4402 : neg.b D2
33456 | 1202 : move.b D2,D1
33458 | 4881 : ext.w D1
3345a | 4e75 : rts
-->
</script>
<script state="change">
<action>maincpu.mb@3344d = param</action>
</script>
<script state="off">
<action>maincpu.md@05118 = 00017554</action>
<action>maincpu.mq@33400 = 0000000000000000</action>
<action>maincpu.mq@33408 = 0000000000000000</action>
<action>maincpu.mq@33410 = 0000000000000000</action>
<action>maincpu.mq@33418 = 0000000000000000</action>
<action>maincpu.mq@33420 = 0000000000000000</action>
<action>maincpu.mq@33428 = 0000000000000000</action>
<action>maincpu.mq@33430 = 0000000000000000</action>
<action>maincpu.mq@33438 = 0000000000000000</action>
<action>maincpu.mq@33440 = 0000000000000000</action>
<action>maincpu.mq@33448 = 0000000000000000</action>
<action>maincpu.mq@33450 = 0000000000000000</action>
<action>maincpu.mq@33458 = 0000000000000000</action>
</script>
</cheat>
<cheat desc="bullet speed">
<parameter>
<item value="0x02">01 (slow)</item>
<item value="0x06">02 </item>
<item value="0x0a">03 </item>
<item value="0x0e">04 </item>
<item value="0x12">05 (fast)</item>
</parameter>
<script state="on">
<action>maincpu.md@066e8 = 00033460</action> <!-- laser -->
<action>maincpu.md@069c4 = 00033460</action> <!-- ring -->
<action>maincpu.md@06e5a = 00033460</action> <!-- way -->
<action>maincpu.md@07190 = 00033460</action> <!-- missile -->
<action>maincpu.mq@33460 = 70001028000c6746</action>
<action>maincpu.mq@33468 = 5340e14843f90002</action>
<action>maincpu.mq@33470 = a3c0d3c070001028</action>
<action>maincpu.mq@33478 = 000de748d3c07000</action>
<action>maincpu.mq@33480 = 1028000f02400003</action>
<action>maincpu.mq@33488 = e348123100004881</action>
<action>maincpu.mq@33490 = d368000412310001</action>
<action>maincpu.mq@33498 = 74004a0167066a02</action>
<action>maincpu.mq@334a0 = 440212024881d368</action>
<action>maincpu.mq@334a8 = 00025228000f4e75</action>
<!--
33460 | 7000 : moveq #$0,D0
33462 | 1028 000c : move.b ($c,A0),D0
33466 | 6746 : beq $334ae
33468 | 5340 : subq.w #1,D0
3346a | e148 : lsl.w #8,D0
3346c | 43f9 0002 a3c0 : lea $2a3c0.l,A1
33472 | d3c0 : adda.l D0,A1
33474 | 7000 : moveq #$0,D0
33476 | 1028 000d : move.b ($d,A0),D0
3347a | e748 : lsl.w #3,D0
3347c | d3c0 : adda.l D0,A1
3347e | 7000 : moveq #$0,D0
33480 | 1028 000f : move.b ($f,A0),D0
33484 | 0240 0003 : andi.w #$3,D0
33488 | e348 : lsl.w #1,D0
3348a | 1231 0000 : move.b (A1,D0.w),D1
3348e | 4881 : ext.w D1
33490 | d368 0004 : add.w D1,($4,A0)
33494 | 1231 0001 : move.b ($1,A1,D0.w),D1
33498 | 74xx : moveq #$xx,D2
3349a | 4a01 : tst.b D1
3349c | 6706 : beq $334a4
3349e | 6a02 : bpl $334a2
334a0 | 4402 : neg.b D2
334a2 | 1202 : move.b D2,D1
334a4 | 4881 : ext.w D1
334a6 | d368 0002 : add.w D1,($2,A0)
334aa | 5228 000f : addq.b #1,($f,A0)
334ae | 4e75 : rts
-->
</script>
<script state="change">
<action>maincpu.mb@33499 = param</action>
</script>
<script state="off">
<action>maincpu.md@066e8 = 00017554</action>
<action>maincpu.md@069c4 = 00017554</action>
<action>maincpu.md@06e5a = 00017554</action>
<action>maincpu.md@07190 = 00017554</action>
<action>maincpu.mq@33460 = 0000000000000000</action>
<action>maincpu.mq@33468 = 0000000000000000</action>
<action>maincpu.mq@33470 = 0000000000000000</action>
<action>maincpu.mq@33478 = 0000000000000000</action>
<action>maincpu.mq@33480 = 0000000000000000</action>
<action>maincpu.mq@33488 = 0000000000000000</action>
<action>maincpu.mq@33490 = 0000000000000000</action>
<action>maincpu.mq@33498 = 0000000000000000</action>
<action>maincpu.mq@334a0 = 0000000000000000</action>
<action>maincpu.mq@334a8 = 0000000000000000</action>
</script>
</cheat>
<cheat desc="P1 max bullets up">
<script state="on">
<action>maincpu.mb@5d15 = 06</action> <!-- laser -->
<action>maincpu.mb@5ee9 = 06</action> <!-- ring -->
<action>maincpu.mb@6133 = 06</action> <!-- way -->
<action>maincpu.mb@639b = 16</action> <!-- missile -->
</script>
<script state="off">
<action>maincpu.mb@5d15 = 03</action>
<action>maincpu.mb@5ee9 = 03</action>
<action>maincpu.mb@6133 = 03</action>
<action>maincpu.mb@639b = 0b</action>
</script>
</cheat>
<cheat desc="P2 max bullets up">
<script state="on">
<action>maincpu.mb@5d2d = 06</action> <!-- laser -->
<action>maincpu.mb@5f03 = 06</action> <!-- ring -->
<action>maincpu.mb@614d = 06</action> <!-- way -->
<action>maincpu.mb@63c3 = 16</action> <!-- missile -->
</script>
<script state="off">
<action>maincpu.mb@5d2d = 03</action>
<action>maincpu.mb@5f03 = 03</action>
<action>maincpu.mb@614d = 03</action>
<action>maincpu.mb@63c3 = 0b</action>
</script>
</cheat>
<cheat desc="sound test mode">
<comment>reset the game (F3) to enter sound test mode</comment>
<script state="on">
<action>maincpu.mq@00652 = 4ef9000331704e71</action>
<action>maincpu.mq@33170 = 41f900c0c00043f9</action>
<action>maincpu.mq@33178 = 00c0e04614011239</action>
<action>maincpu.mq@33180 = 00400007b40167f4</action>
<action>maincpu.mq@33188 = 0c0100fb66025310</action>
<action>maincpu.mq@33190 = 0c0100f766025210</action>
<action>maincpu.mq@33198 = 0c0100fd66040410</action>
<action>maincpu.mq@331a0 = 00100c0100fe6604</action>
<action>maincpu.mq@331a8 = 061000100c0100ef</action>
<action>maincpu.mq@331b0 = 660a12bc00fe1350</action>
<action>maincpu.mq@331b8 = 0001600a0c0100df</action>
<action>maincpu.mq@331c0 = 660812bc00fa4eb8</action>
<action>maincpu.mq@331c8 = 119860b000000000</action>
<!--
33170 | 41f9 00c0 c000 : lea $c0c000.l,A0 // sound code address
33176 | 43f9 00c0 e046 : lea $c0e046.l,A1 // sound status address
3317c | 1401 : move.b D1,D2
3317e | 1239 0040 0007 : move.b $400007.l,D1 // read input
33184 | b401 : cmp.b D1,D2
33186 | 67f4 : beq $3317c
33188 | 0c01 00fb : cmpi.b #-$5,D1
3318c | 6602 : bne $33190
3318e | 5310 : subq.b #1,(A0) // decrease code -01
33190 | 0c01 00f7 : cmpi.b #-$9,D1
33194 | 6602 : bne $33198
33196 | 5210 : addq.b #1,(A0) // increase code +01
33198 | 0c01 00fd : cmpi.b #-$3,D1
3319c | 6604 : bne $331a2
3319e | 0410 0010 : subi.b #$10,(A0) // decrease code -10
331a2 | 0c01 00fe : cmpi.b #-$2,D1
331a6 | 6604 : bne $331ac
331a8 | 0610 0010 : addi.b #$10,(A0) // increase code +10
331ac | 0c01 00ef : cmpi.b #-$11,D1
331b0 | 660a : bne $331bc
331b2 | 12bc 00fe : move.b #$fe,(A1) // play sound
331b6 | 1350 0001 : move.b (A0),($1,A1)
331ba | 600a : bra $331c6
331bc | 0c01 00df : cmpi.b #-$21,D1
331c0 | 6608 : bne $331ca
331c2 | 12bc 00fa : move.b #$fa,(A1) // stop sound
331c6 | 4eb8 1198 : jsr $1198.w
331ca | 60b0 : bra $3317c
-->
</script>
<script state="run">
<output format="----- sky alert 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="up : increase code +10" line="13" align="center" />
<output format="down : decrease 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@c0c000</argument>
</output>
</script>
<script state="off">
<action>maincpu.mq@00652 = 0839000700c0e000</action>
<action>maincpu.mq@33170 = 0000000000000000</action>
<action>maincpu.mq@33178 = 0000000000000000</action>
<action>maincpu.mq@33180 = 0000000000000000</action>
<action>maincpu.mq@33188 = 0000000000000000</action>
<action>maincpu.mq@33190 = 0000000000000000</action>
<action>maincpu.mq@33198 = 0000000000000000</action>
<action>maincpu.mq@331a0 = 0000000000000000</action>
<action>maincpu.mq@331a8 = 0000000000000000</action>
<action>maincpu.mq@331b0 = 0000000000000000</action>
<action>maincpu.mq@331b8 = 0000000000000000</action>
<action>maincpu.mq@331c0 = 0000000000000000</action>
<action>maincpu.mq@331c8 = 0000000000000000</action>
</script>
</cheat>