swimmer.xml
Code: Select all
<!-- Swimmer (set 1) -->
<mamecheat version="1">
<cheat desc="no hit">
<script state="on">
<action>maincpu.mb@31A4 = C9</action> <!-- enemy -->
<action>maincpu.mb@344E = C9</action> <!-- crab -->
<action>maincpu.mb@3566 = C9</action> <!-- piranha -->
<action>maincpu.mb@3745 = C9</action> <!-- water spider -->
</script>
<script state="off">
<action>maincpu.mb@31A4 = 3E</action>
<action>maincpu.mb@344E = 3E</action>
<action>maincpu.mb@3566 = FD</action>
<action>maincpu.mb@3745 = 3E</action>
</script>
</cheat>
<cheat desc="player speed">
<parameter>
<item value="0x01">01 (slow)</item>
<item value="0x04">02 </item>
<item value="0x08">03 </item>
<item value="0x0c">04 </item>
<item value="0x10">05 (fast)</item>
</parameter>
<script state="on">
<action>maincpu.mw@3C71 = 0006</action> <!-- y position -->
<action>maincpu.mw@3CB2 = 0006</action> <!-- x position -->
</script>
<script state="change">
<action>maincpu.mb@3C72 = param</action>
<action>maincpu.mb@3CB3 = param</action>
</script>
<script state="off">
<action>maincpu.mw@3C71 = 477E</action>
<action>maincpu.mw@3CB2 = 477E</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@059D = 7EE0 </action>
<action>maincpu.mq@7EE0 = 04E6B8003A810021</action>
<action>maincpu.mq@7EE8 = B1A8003A4F070707</action>
<action>maincpu.mq@7EF0 = 012002FEEF2847B8</action>
<action>maincpu.mq@7EF8 = 08FE34012001FE35</action>
<action>maincpu.mq@7F00 = 04FE0618F03E0420</action>
<action>maincpu.mq@7F08 = FE787786103E0520</action>
<action>maincpu.mq@7F10 = 061880F67E052010</action>
<action>maincpu.mq@7F18 = 0032FF3E052020FE</action>
<action>maincpu.mq@7F20 = 0000000000C018A8</action>
<!--
7EE0 | 21 00 81 : ld hl,$8100 // sound code address
7EE3 | 3A 00 B8 : ld a,($B800) // read start button
7EE6 | E6 04 : and $04
7EE8 | 07 : rlca
7EE9 | 07 : rlca
7EEA | 07 : rlca
7EEB | 4F : ld c,a
7EEC | 3A 00 A8 : ld a,($A800) // read otherinputs
7EEF | B1 : or c
7EF0 | B8 : cp b
7EF1 | 47 : ld b,a
7EF2 | 28 EF : jr z,$7EE3
7EF4 | FE 02 : cp $02
7EF6 | 20 01 : jr nz,$7EF9
7EF8 | 35 : dec (hl) // decrease code -01
7EF9 | FE 01 : cp $01
7EFB | 20 01 : jr nz,$7EFE
7EFD | 34 : inc (hl) // increase code +01
7EFE | FE 08 : cp $08
7F00 | 20 04 : jr nz,$7F06
7F02 | 3E F0 : ld a,$F0 // decrease code -10
7F04 | 18 06 : jr $7F0C
7F06 | FE 04 : cp $04
7F08 | 20 05 : jr nz,$7F0F
7F0A | 3E 10 : ld a,$10 // increase code +10
7F0C | 86 : add a,(hl)
7F0D | 77 : ld (hl),a
7F0E | 78 : ld a,b
7F0F | FE 10 : cp $10
7F11 | 20 05 : jr nz,$7F18
7F13 | 7E : ld a,(hl) // play sound
7F14 | F6 80 : or $80
7F16 | 18 06 : jr $7F1E
7F18 | FE 20 : cp $20
7F1A | 20 05 : jr nz,$7F21
7F1C | 3E FF : ld a,$FF // stop sound
7F1E | 32 00 A8 : ld ($A800),a // send sound code
7F21 | 18 C0 : jr $7EE3
-->
</script>
<script state="run">
<output format="----- swimmer 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="1P start : stop sound" line="16" align="center" />
<output format="----------------------------" line="17" align="center" />
<output format="<< sound code %02X >>" line="19" align="center" >
<argument>maincpu.pb@8100</argument>
</output>
</script>
<script state="off">
<action>maincpu.mw@059D = 64D2 </action>
<action>maincpu.mq@7EE0 = 0000000000000000</action>
<action>maincpu.mq@7EE8 = 0000000000000000</action>
<action>maincpu.mq@7EF0 = 0000000000000000</action>
<action>maincpu.mq@7EF8 = 0000000000000000</action>
<action>maincpu.mq@7F00 = 0000000000000000</action>
<action>maincpu.mq@7F08 = 0000000000000000</action>
<action>maincpu.mq@7F10 = 0000000000000000</action>
<action>maincpu.mq@7F18 = 0000000000000000</action>
<action>maincpu.mq@7F20 = 0000000000000000</action>
</script>
</cheat>
<cheat desc="skip ram/rom check">
<script state="on">
<action>maincpu.mw@01EE = 4818</action> <!-- ram -->
<action>maincpu.mw@10C0 = 3418</action> <!-- rom -->
</script>
<script state="off">
<action>maincpu.mb@01EE = 803A</action>
<action>maincpu.mb@10C0 = 21DD</action>
</script>
</cheat>
</mamecheat>
swimmera.xml
Code: Select all
<!-- Swimmer (set 2) -->
<mamecheat version="1">
<cheat desc="no hit">
<script state="on">
<action>maincpu.mb@31A4 = C9</action> <!-- enemy -->
<action>maincpu.mb@344E = C9</action> <!-- crab -->
<action>maincpu.mb@3566 = C9</action> <!-- piranha -->
<action>maincpu.mb@3745 = C9</action> <!-- water spider -->
</script>
<script state="off">
<action>maincpu.mb@31A4 = 3E</action>
<action>maincpu.mb@344E = 3E</action>
<action>maincpu.mb@3566 = FD</action>
<action>maincpu.mb@3745 = 3E</action>
</script>
</cheat>
<cheat desc="player speed">
<parameter>
<item value="0x01">01 (slow)</item>
<item value="0x04">02 </item>
<item value="0x08">03 </item>
<item value="0x0c">04 </item>
<item value="0x10">05 (fast)</item>
</parameter>
<script state="on">
<action>maincpu.mw@3C71 = 0006</action> <!-- y position -->
<action>maincpu.mw@3CB2 = 0006</action> <!-- x position -->
</script>
<script state="change">
<action>maincpu.mb@3C72 = param</action>
<action>maincpu.mb@3CB3 = param</action>
</script>
<script state="off">
<action>maincpu.mw@3C71 = 477E</action>
<action>maincpu.mw@3CB2 = 477E</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@0594 = 04E6B8003A800021</action>
<action>maincpu.mq@059C = B1A8003A4F070707</action>
<action>maincpu.mq@05A4 = 012002FEEF2847B8</action>
<action>maincpu.mq@05AC = 08FE34012001FE35</action>
<action>maincpu.mq@05B4 = 04FE0618F03E0420</action>
<action>maincpu.mq@05BC = FE787786103E0520</action>
<action>maincpu.mq@05C4 = 061880F67E052010</action>
<action>maincpu.mq@05CC = 0032FF3E052020FE</action>
<action>maincpu.mq@05D4 = 0000000000C018A8</action>
<!--
0594 | 21 00 80 : ld hl,$8000 // sound code address
0597 | 3A 00 B8 : ld a,($B800) // read start button
059A | E6 04 : and $04
059C | 07 : rlca
059D | 07 : rlca
059E | 07 : rlca
059F | 4F : ld c,a
05A0 | 3A 00 A8 : ld a,($A800) // read other inputs
05A3 | B1 : or c
05A4 | B8 : cp b
05A5 | 47 : ld b,a
05A6 | 28 EF : jr z,$0597
05A8 | FE 02 : cp $02
05AA | 20 01 : jr nz,$05AD
05AC | 35 : dec (hl) // decrease code -01
05AD | FE 01 : cp $01
05AF | 20 01 : jr nz,$05B2
05B1 | 34 : inc (hl) // increase code +01
05B2 | FE 08 : cp $08
05B4 | 20 04 : jr nz,$05BA
05B6 | 3E F0 : ld a,$F0 // decrease code -10
05B8 | 18 06 : jr $05C0
05BA | FE 04 : cp $04
05BC | 20 05 : jr nz,$05C3
05BE | 3E 10 : ld a,$10 // increase code +10
05C0 | 86 : add a,(hl)
05C1 | 77 : ld (hl),a
05C2 | 78 : ld a,b
05C3 | FE 10 : cp $10
05C5 | 20 05 : jr nz,$05CC
05C7 | 7E : ld a,(hl) // play sound
05C8 | F6 80 : or $80
05CA | 18 06 : jr $05D2
05CC | FE 20 : cp $20
05CE | 20 05 : jr nz,$05D5
05D0 | 3E FF : ld a,$FF // stop sound
05D2 | 32 00 A8 : ld ($A800),a // send sound code
05D5 | 18 C0 : jr $0597
-->
</script>
<script state="run">
<output format="----- swimmer 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="1P start : stop sound" line="16" align="center" />
<output format="----------------------------" line="17" align="center" />
<output format="<< sound code %02X >>" line="19" align="center" >
<argument>maincpu.pb@8000</argument>
</output>
</script>
<script state="off">
<action>maincpu.mq@0594 = 5F16040001900021</action>
<action>maincpu.mq@059C = 00019C002164D2CD</action>
<action>maincpu.mq@05A4 = ECCD64D2CD041604</action>
<action>maincpu.mq@05AC = 182867CBA8003A10</action>
<action>maincpu.mq@05B4 = A8003AFF1006233E</action>
<action>maincpu.mq@05BC = 1006233EF42067CB</action>
<action>maincpu.mq@05C4 = F42867CBA8003AFF</action>
<action>maincpu.mq@05CC = 0332013E86D031E7</action>
<action>maincpu.mq@05D4 = 0601828A21FF3EA0</action>
</script>
</cheat>
<cheat desc="skip ram/rom check">
<script state="on">
<action>maincpu.mw@01EE = 4818</action> <!-- ram -->
<action>maincpu.mw@10EC = 3418</action> <!-- rom -->
</script>
<script state="off">
<action>maincpu.mb@01EE = 803A</action>
<action>maincpu.mb@10EC = 21DD</action>
</script>
</cheat>
</mamecheat>
swimmerb.xml
Code: Select all
<!-- Swimmer (set 3) -->
<mamecheat version="1">
<cheat desc="no hit">
<script state="on">
<action>maincpu.mb@3184 = C9</action> <!-- enemy -->
<action>maincpu.mb@342E = C9</action> <!-- crab -->
<action>maincpu.mb@3546 = C9</action> <!-- piranha -->
<action>maincpu.mb@3725 = C9</action> <!-- water spider -->
</script>
<script state="off">
<action>maincpu.mb@3184 = 3E</action>
<action>maincpu.mb@342E = 3E</action>
<action>maincpu.mb@3546 = FD</action>
<action>maincpu.mb@3725 = 3E</action>
</script>
</cheat>
<cheat desc="player speed">
<parameter>
<item value="0x01">01 (slow)</item>
<item value="0x04">02 </item>
<item value="0x08">03 </item>
<item value="0x0c">04 </item>
<item value="0x10">05 (fast)</item>
</parameter>
<script state="on">
<action>maincpu.mw@3C71 = 0006</action> <!-- y position -->
<action>maincpu.mw@3CB2 = 0006</action> <!-- x position -->
</script>
<script state="change">
<action>maincpu.mb@3C72 = param</action>
<action>maincpu.mb@3CB3 = param</action>
</script>
<script state="off">
<action>maincpu.mw@3C71 = 477E</action>
<action>maincpu.mw@3CB2 = 477E</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@0594 = 04E6B8003A800021</action>
<action>maincpu.mq@059C = B1A8003A4F070707</action>
<action>maincpu.mq@05A4 = 012002FEEF2847B8</action>
<action>maincpu.mq@05AC = 08FE34012001FE35</action>
<action>maincpu.mq@05B4 = 04FE0618F03E0420</action>
<action>maincpu.mq@05BC = FE787786103E0520</action>
<action>maincpu.mq@05C4 = 061880F67E052010</action>
<action>maincpu.mq@05CC = 0032FF3E052020FE</action>
<action>maincpu.mq@05D4 = 0000000000C018A8</action>
<!--
0594 | 21 00 80 : ld hl,$8000 // sound code address
0597 | 3A 00 B8 : ld a,($B800) // read start button
059A | E6 04 : and $04
059C | 07 : rlca
059D | 07 : rlca
059E | 07 : rlca
059F | 4F : ld c,a
05A0 | 3A 00 A8 : ld a,($A800) // read other inputs
05A3 | B1 : or c
05A4 | B8 : cp b
05A5 | 47 : ld b,a
05A6 | 28 EF : jr z,$0597
05A8 | FE 02 : cp $02
05AA | 20 01 : jr nz,$05AD
05AC | 35 : dec (hl) // decrease code -01
05AD | FE 01 : cp $01
05AF | 20 01 : jr nz,$05B2
05B1 | 34 : inc (hl) // increase code +01
05B2 | FE 08 : cp $08
05B4 | 20 04 : jr nz,$05BA
05B6 | 3E F0 : ld a,$F0 // decrease code -10
05B8 | 18 06 : jr $05C0
05BA | FE 04 : cp $04
05BC | 20 05 : jr nz,$05C3
05BE | 3E 10 : ld a,$10 // increase code +10
05C0 | 86 : add a,(hl)
05C1 | 77 : ld (hl),a
05C2 | 78 : ld a,b
05C3 | FE 10 : cp $10
05C5 | 20 05 : jr nz,$05CC
05C7 | 7E : ld a,(hl) // play sound
05C8 | F6 80 : or $80
05CA | 18 06 : jr $05D2
05CC | FE 20 : cp $20
05CE | 20 05 : jr nz,$05D5
05D0 | 3E FF : ld a,$FF // stop sound
05D2 | 32 00 A8 : ld ($A800),a // send sound code
05D5 | 18 C0 : jr $0597
-->
</script>
<script state="run">
<output format="----- swimmer 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="1P start : stop sound" line="16" align="center" />
<output format="----------------------------" line="17" align="center" />
<output format="<< sound code %02X >>" line="19" align="center" >
<argument>maincpu.pb@8000</argument>
</output>
</script>
<script state="off">
<action>maincpu.mq@0594 = 5F16040001900021</action>
<action>maincpu.mq@059C = 00019C002164D2CD</action>
<action>maincpu.mq@05A4 = ECCD64D2CD041604</action>
<action>maincpu.mq@05AC = 182867CBA8003A10</action>
<action>maincpu.mq@05B4 = A8003AFF1006233E</action>
<action>maincpu.mq@05BC = 1006233EF42067CB</action>
<action>maincpu.mq@05C4 = F42867CBA8003AFF</action>
<action>maincpu.mq@05CC = 0332013E86D031E7</action>
<action>maincpu.mq@05D4 = 0601828A21FF3EA0</action>
</script>
</cheat>
<cheat desc="skip ram/rom check">
<script state="on">
<action>maincpu.mw@01EE = 4818</action> <!-- ram -->
<action>maincpu.mw@10EC = 3418</action> <!-- rom -->
</script>
<script state="off">
<action>maincpu.mb@01EE = 803A</action>
<action>maincpu.mb@10EC = 21DD</action>
</script>
</cheat>
</mamecheat>