Code: Select all
<!-- Angel Kids (Japan) -->
<mamecheat version="1">
<cheat desc="keep a kid">
<script state="on">
<action>maincpu.mq@1AA9 = DD000000BE06CBDD</action>
</script>
<script state="off">
<action>maincpu.mq@1AA9 = DD5118303E0699CD</action>
</script>
</cheat>
<cheat desc="control a kid">
<comment>press left or right key on left lever to control a kid</comment>
<script state="on">
<action>maincpu.md@144E = 007B00CD </action>
<action>maincpu.mq@7B00 = CBC0363ACB2E5BED</action>
<action>maincpu.mq@7B08 = 01287FCB7A092877</action>
<action>maincpu.mq@7B10 = 7AC87FCB0A18572F</action>
<action>maincpu.mq@7B18 = 53ED572F01207FCB</action>
<action>maincpu.mq@7B20 = FFFFFFFFFFC9CB2E</action>
<!--
7B00 | ED 5B 2E CB : ld de,($CB2E) // read x speed
7B04 | 3A 36 C0 : ld a,($C036) // read left lever input
7B07 | CB 77 : bit 6,a
7B09 | 28 09 : jr z,$7B14
7B0B | 7A : ld a,d // try to move to left
7B0C | CB 7F : bit 7,a
7B0E | 28 01 : jr z,$7B11
7B10 | 2F : cpl
7B11 | 57 : ld d,a
7B12 | 18 0A : jr $7B1E
7B14 | CB 7F : bit 7,a
7B16 | C8 : ret z
7B17 | 7A : ld a,d // try to move to right
7B18 | CB 7F : bit 7,a
7B1A | 20 01 : jr nz,$7B1D
7B1C | 2F : cpl
7B1D | 57 : ld d,a
7B1E | ED 53 2E CB : ld ($CB2E),de // set x speed
7B22 | C9 : ret
-->
</script>
<script state="off">
<action>maincpu.md@144E = CB2E58ED </action>
<action>maincpu.mq@7B00 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@7B08 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@7B10 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@7B18 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@7B20 = FFFFFFFFFFFFFFFF</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@01B6 = 7B28 </action>
<action>maincpu.mq@7B28 = 0001ED0111ED0021</action>
<action>maincpu.mq@7B30 = C00021B0ED003602</action>
<action>maincpu.mq@7B38 = FEF92847B8C0363A</action>
<action>maincpu.mq@7B40 = 012080FE35012040</action>
<action>maincpu.mq@7B48 = 18F03E042020FE34</action>
<action>maincpu.mq@7B50 = 86103E052010FE06</action>
<action>maincpu.mq@7B58 = 187E032001FE7877</action>
<action>maincpu.mq@7B60 = 322F3E052002FE06</action>
<action>maincpu.mq@7B68 = FFFFFFFFCC18C601</action>
<!--
7B28 | 21 00 ED : ld hl,$ED00 // paint screen with black
7B2B | 11 01 ED : ld de,$ED01
7B2E | 01 00 02 : ld bc,$0200
7B31 | 36 00 : ld (hl),$00
7B33 | ED B0 : ldir
7B35 | 21 00 C0 : ld hl,$C000
7B38 | 3A 36 C0 : ld a,($C036) // read input
7B3B | B8 : cp b
7B3C | 47 : ld b,a
7B3D | 28 F9 : jr z,$7B38
7B3F | FE 40 : cp $40
7B41 | 20 01 : jr nz,$7B44
7B43 | 35 : dec (hl) // decrease code -01
7B44 | FE 80 : cp $80
7B46 | 20 01 : jr nz,$7B49
7B48 | 34 : inc (hl) // increase code +01
7B49 | FE 20 : cp $20
7B4B | 20 04 : jr nz,$7B51
7B4D | 3E F0 : ld a,$F0 // decrease code -10
7B4F | 18 06 : jr $7B57
7B51 | FE 10 : cp $10
7B53 | 20 05 : jr nz,$7B5A
7B55 | 3E 10 : ld a,$10 // increase code +10
7B57 | 86 : add a,(hl)
7B58 | 77 : ld (hl),a
7B59 | 78 : ld a,b
7B5A | FE 01 : cp $01
7B5C | 20 03 : jr nz,$7B61
7B5E | 7E : ld a,(hl) // play sound
7B5F | 18 06 : jr $7B67
7B61 | FE 02 : cp $02
7B63 | 20 05 : jr nz,$7B6A
7B65 | 3E 2F : ld a,$2F // stop sound
7B67 | 32 01 C6 : ld ($C601),a // set sound code
7B6A | 18 CC : jr $7B38
-->
</script>
<script state="run">
<output format="----- sound test mode -----" line="10" align="center" />
<output format="left/left : decrease code -01" line="11" align="center" />
<output format="left/right : increase code +01" line="12" align="center" />
<output format="left/down : decrease code -10" line="13" align="center" />
<output format="left/up : increase code +10" line="14" align="center" />
<output format="right/up : play sound" line="15" align="center" />
<output format="right/down : stop sound" line="16" align="center" />
<output format="----------------------------" line="17" align="center" />
<output format="<< sound code %02X >>" line="19" align="center" >
<argument>maincpu.pb@C000</argument>
</output>
</script>
<script state="off">
<action>maincpu.mw@01B6 = 089C </action>
<action>maincpu.mq@7B28 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@7B30 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@7B38 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@7B40 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@7B48 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@7B50 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@7B58 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@7B60 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@7B68 = FFFFFFFFFFFFFFFF</action>
</script>
</cheat>
</mamecheat>