Code: Select all
<!-- Mighty Monkey -->
<mamecheat version="1">
<cheat desc="no hit">
<script state="on">
<action>maincpu.mw@3251 = 3253</action> <!-- background -->
<action>maincpu.mw@338E = 336E</action> <!-- enemy (monkey) -->
<action>maincpu.mw@33FA = 336E</action> <!-- enemy (dragon) -->
<action>maincpu.mw@3591 = 3597</action> <!-- hovering vulture -->
</script>
<script state="off">
<action>maincpu.mw@3251 = 3254</action>
<action>maincpu.mw@338E = 33DC</action>
<action>maincpu.mw@33FA = 33DD</action>
<action>maincpu.mw@3591 = 3599</action>
</script>
</cheat>
<cheat desc="rapid fire">
<script state="on">
<action>maincpu.mb@085A = 5C</action>
<action>maincpu.mb@1366 = 00</action> <!-- interval -->
</script>
<script state="off">
<action>maincpu.mb@085A = 60</action>
<action>maincpu.mb@1366 = D8</action>
</script>
</cheat>
<cheat desc="player speed">
<parameter min="0x01" max="0x05" step="0x01" />
<script state="on">
<action>maincpu.mw@0865 = D710 </action> <!-- up -->
<action>maincpu.mw@086D = D710 </action> <!-- down -->
<action>maincpu.mw@0875 = D71A </action> <!-- left -->
<action>maincpu.mw@087D = D71A </action> <!-- right -->
<action>maincpu.mq@D710 = 10C112BFCDC50006</action>
<action>maincpu.mq@D718 = 1410CDC50006C9F9</action>
<action>maincpu.mq@D720 = FFFFFFFFC9F910C1</action>
<!--
D710 | 06 xx : ld b,$xx // up, down
D712 | C5 : push bc
D713 | CD BF 12 : call $12BF
D716 | C1 : pop bc
D717 | 10 F9 : djnz $D712
D719 | C9 : ret
D71A | 06 xx : ld b,$xx // left, right
D71C | C5 : push bc
D71D | CD 10 14 : call $1410
D720 | C1 : pop bc
D721 | 10 F9 : djnz $D71C
D723 | C9 : ret
D724 | FF : rst $38
-->
</script>
<script state="change">
<action>maincpu.mb@D711 = param</action>
<action>maincpu.mb@D71B = param</action>
</script>
<script state="off">
<action>maincpu.mw@0865 = 12BF </action>
<action>maincpu.mw@086D = 12BF </action>
<action>maincpu.mw@0875 = 1410 </action>
<action>maincpu.mw@087D = 1410 </action>
<action>maincpu.mq@D710 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@D718 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@D720 = FFFFFFFFFFFFFFFF</action>
</script>
</cheat>
<cheat desc="bullet speed">
<parameter>
<item value="0x01">01 (slow)</item>
<item value="0x04">02 </item>
<item value="0x06">03 </item>
<item value="0x08">04 </item>
<item value="0x0a">05 (fast)</item>
</parameter>
<script state="change">
<action>maincpu.mb@2997 = param</action> <!-- left -->
<action>maincpu.mb@29B6 = param</action> <!-- right -->
</script>
<script state="off">
<action>maincpu.mb@2997 = 04</action>
<action>maincpu.mb@29B6 = 04</action>
</script>
</cheat>
<cheat desc="sound test mode">
<comment>set "skip rom check" then reset the game (F3)</comment>
<script state="on">
<action>maincpu.mw@036F = D730 </action>
<action>maincpu.mq@D730 = 40CDB0003A870021</action>
<action>maincpu.mq@D738 = 20DFFEF62847B8FD</action>
<action>maincpu.mq@D740 = FE340120EFFE3501</action>
<action>maincpu.mq@D748 = FE0618F03E0420BF</action>
<action>maincpu.mq@D750 = 787786103E05207F</action>
<action>maincpu.mq@D758 = FE05187E0320F7FE</action>
<action>maincpu.mq@D760 = 181403CDAF0420F9</action>
<action>maincpu.mq@D768 = FFFFFFFFFFFFFFCA</action>
<!--
D730 | 21 00 87 : ld hl,$8700 // sound code address
D733 | 3A 00 B0 : ld a,($B000) // watchdog
D736 | CD 40 FD : call $FD40 // read input
D739 | B8 : cp b
D73A | 47 : ld b,a
D73B | 28 F6 : jr z,$D733
D73D | FE DF : cp $DF
D73F | 20 01 : jr nz,$D742
D741 | 35 : dec (hl) // decrease code -01
D742 | FE EF : cp $EF
D744 | 20 01 : jr nz,$D747
D746 | 34 : inc (hl) // increase code +01
D747 | FE BF : cp $BF
D749 | 20 04 : jr nz,$D74F
D74B | 3E F0 : ld a,$F0 // decrease code -10
D74D | 18 06 : jr $D755
D74F | FE 7F : cp $7F
D751 | 20 05 : jr nz,$D758
D753 | 3E 10 : ld a,$10 // increase code +10
D755 | 86 : add a,(hl)
D756 | 77 : ld (hl),a
D757 | 78 : ld a,b
D758 | FE F7 : cp $F7
D75A | 20 03 : jr nz,$D75F
D75C | 7E : ld a,(hl) // play sound
D75D | 18 05 : jr $D764
D75F | FE F9 : cp $F9
D761 | 20 04 : jr nz,$D767
D763 | AF : xor a // stop sound
D764 | CD 03 14 : call $1403 // send sound code
D767 | 18 CA : jr $D733
-->
</script>
<script state="run">
<output format="----- 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="button 2 : stop sound" line="16" align="center" />
<output format="----------------------------" line="17" align="center" />
<output format="<< sound code %02X >>" line="19" align="center" >
<argument>maincpu.pb@8700</argument>
</output>
</script>
<script state="off">
<action>maincpu.mw@036F = F500 </action>
<action>maincpu.mq@D730 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@D738 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@D740 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@D748 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@D750 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@D758 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@D760 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@D768 = FFFFFFFFFFFFFFFF</action>
</script>
</cheat>
<cheat desc="skip rom check">
<script state="on">
<action>maincpu.mw@0025 = 0027</action>
</script>
<script state="off">
<action>maincpu.mw@0025 = 00DA</action>
</script>
</cheat>
</mamecheat>
Code: Select all
<!-- Mighty Monkey (bootleg on Super Cobra hardware) -->
<mamecheat version="1">
<cheat desc="no hit">
<script state="on">
<action>maincpu.mw@3251 = 3253</action> <!-- background -->
<action>maincpu.mw@338E = 336E</action> <!-- enemy (monkey) -->
<action>maincpu.mw@33FA = 336E</action> <!-- enemy (dragon) -->
<action>maincpu.mw@3591 = 3597</action> <!-- hovering vulture -->
</script>
<script state="off">
<action>maincpu.mw@3251 = 3254</action>
<action>maincpu.mw@338E = 33DC</action>
<action>maincpu.mw@33FA = 33DD</action>
<action>maincpu.mw@3591 = 3599</action>
</script>
</cheat>
<cheat desc="rapid fire">
<script state="on">
<action>maincpu.mb@085A = 5C</action>
<action>maincpu.mb@1366 = 00</action> <!-- interval -->
</script>
<script state="off">
<action>maincpu.mb@085A = 60</action>
<action>maincpu.mb@1366 = D8</action>
</script>
</cheat>
<cheat desc="player speed">
<parameter min="0x01" max="0x05" step="0x01" />
<script state="on">
<action>maincpu.mw@0865 = D710 </action> <!-- up -->
<action>maincpu.mw@086D = D710 </action> <!-- down -->
<action>maincpu.mw@0875 = D71A </action> <!-- left -->
<action>maincpu.mw@087D = D71A </action> <!-- right -->
<action>maincpu.mq@D710 = 10C112BFCDC50006</action>
<action>maincpu.mq@D718 = 1410CDC50006C9F9</action>
<action>maincpu.mq@D720 = FFFFFFFFC9F910C1</action>
<!--
D710 | 06 xx : ld b,$xx // up, down
D712 | C5 : push bc
D713 | CD BF 12 : call $12BF
D716 | C1 : pop bc
D717 | 10 F9 : djnz $D712
D719 | C9 : ret
D71A | 06 xx : ld b,$xx // left, right
D71C | C5 : push bc
D71D | CD 10 14 : call $1410
D720 | C1 : pop bc
D721 | 10 F9 : djnz $D71C
D723 | C9 : ret
D724 | FF : rst $38
-->
</script>
<script state="change">
<action>maincpu.mb@D711 = param</action>
<action>maincpu.mb@D71B = param</action>
</script>
<script state="off">
<action>maincpu.mw@0865 = 12BF </action>
<action>maincpu.mw@086D = 12BF </action>
<action>maincpu.mw@0875 = 1410 </action>
<action>maincpu.mw@087D = 1410 </action>
<action>maincpu.mq@D710 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@D718 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@D720 = FFFFFFFFFFFFFFFF</action>
</script>
</cheat>
<cheat desc="bullet speed">
<parameter>
<item value="0x01">01 (slow)</item>
<item value="0x04">02 </item>
<item value="0x06">03 </item>
<item value="0x08">04 </item>
<item value="0x0a">05 (fast)</item>
</parameter>
<script state="change">
<action>maincpu.mb@2997 = param</action> <!-- left -->
<action>maincpu.mb@29B6 = param</action> <!-- right -->
</script>
<script state="off">
<action>maincpu.mb@2997 = 04</action>
<action>maincpu.mb@29B6 = 04</action>
</script>
</cheat>
<cheat desc="sound test mode">
<comment>set "skip rom check" then reset the game (F3)</comment>
<script state="on">
<action>maincpu.mw@036F = D730 </action>
<action>maincpu.mq@D730 = 40CDB0003A870021</action>
<action>maincpu.mq@D738 = 20DFFEF62847B8FD</action>
<action>maincpu.mq@D740 = FE340120EFFE3501</action>
<action>maincpu.mq@D748 = FE0618F03E0420BF</action>
<action>maincpu.mq@D750 = 787786103E05207F</action>
<action>maincpu.mq@D758 = FE05187E0320F7FE</action>
<action>maincpu.mq@D760 = 181403CDAF0420F9</action>
<action>maincpu.mq@D768 = FFFFFFFFFFFFFFCA</action>
<!--
D730 | 21 00 87 : ld hl,$8700 // sound code address
D733 | 3A 00 B0 : ld a,($B000) // watchdog
D736 | CD 40 FD : call $FD40 // read input
D739 | B8 : cp b
D73A | 47 : ld b,a
D73B | 28 F6 : jr z,$D733
D73D | FE DF : cp $DF
D73F | 20 01 : jr nz,$D742
D741 | 35 : dec (hl) // decrease code -01
D742 | FE EF : cp $EF
D744 | 20 01 : jr nz,$D747
D746 | 34 : inc (hl) // increase code +01
D747 | FE BF : cp $BF
D749 | 20 04 : jr nz,$D74F
D74B | 3E F0 : ld a,$F0 // decrease code -10
D74D | 18 06 : jr $D755
D74F | FE 7F : cp $7F
D751 | 20 05 : jr nz,$D758
D753 | 3E 10 : ld a,$10 // increase code +10
D755 | 86 : add a,(hl)
D756 | 77 : ld (hl),a
D757 | 78 : ld a,b
D758 | FE F7 : cp $F7
D75A | 20 03 : jr nz,$D75F
D75C | 7E : ld a,(hl) // play sound
D75D | 18 05 : jr $D764
D75F | FE F9 : cp $F9
D761 | 20 04 : jr nz,$D767
D763 | AF : xor a // stop sound
D764 | CD 03 14 : call $1403 // send sound code
D767 | 18 CA : jr $D733
-->
</script>
<script state="run">
<output format="----- 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="button 2 : stop sound" line="16" align="center" />
<output format="----------------------------" line="17" align="center" />
<output format="<< sound code %02X >>" line="19" align="center" >
<argument>maincpu.pb@8700</argument>
</output>
</script>
<script state="off">
<action>maincpu.mw@036F = F500 </action>
<action>maincpu.mq@D730 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@D738 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@D740 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@D748 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@D750 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@D758 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@D760 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@D768 = FFFFFFFFFFFFFFFF</action>
</script>
</cheat>
<cheat desc="skip rom check">
<script state="on">
<action>maincpu.mw@0025 = 0027</action>
</script>
<script state="off">
<action>maincpu.mw@0025 = 00DA</action>
</script>
</cheat>
</mamecheat>
Code: Select all
<!-- Mighty Monkey (bootleg on Scramble hardware) -->
<mamecheat version="1">
<cheat desc="no hit">
<script state="on">
<action>maincpu.mw@3251 = 3253</action> <!-- background -->
<action>maincpu.mw@338E = 336E</action> <!-- enemy (monkey) -->
<action>maincpu.mw@33FA = 336E</action> <!-- enemy (dragon) -->
<action>maincpu.mw@3591 = 3597</action> <!-- hovering vulture -->
</script>
<script state="off">
<action>maincpu.mw@3251 = 3254</action>
<action>maincpu.mw@338E = 33DC</action>
<action>maincpu.mw@33FA = 33DD</action>
<action>maincpu.mw@3591 = 3599</action>
</script>
</cheat>
<cheat desc="rapid fire">
<script state="on">
<action>maincpu.mb@085A = 5C</action>
<action>maincpu.mb@1366 = 00</action> <!-- interval -->
</script>
<script state="off">
<action>maincpu.mb@085A = 60</action>
<action>maincpu.mb@1366 = D8</action>
</script>
</cheat>
<cheat desc="player speed">
<parameter min="0x01" max="0x05" step="0x01" />
<script state="on">
<action>maincpu.mw@0865 = D710 </action> <!-- up -->
<action>maincpu.mw@086D = D710 </action> <!-- down -->
<action>maincpu.mw@0875 = D71A </action> <!-- left -->
<action>maincpu.mw@087D = D71A </action> <!-- right -->
<action>maincpu.mq@D710 = 10C112BFCDC50006</action>
<action>maincpu.mq@D718 = 1410CDC50006C9F9</action>
<action>maincpu.mq@D720 = FFFFFFFFC9F910C1</action>
<!--
D710 | 06 xx : ld b,$xx // up, down
D712 | C5 : push bc
D713 | CD BF 12 : call $12BF
D716 | C1 : pop bc
D717 | 10 F9 : djnz $D712
D719 | C9 : ret
D71A | 06 xx : ld b,$xx // left, right
D71C | C5 : push bc
D71D | CD 10 14 : call $1410
D720 | C1 : pop bc
D721 | 10 F9 : djnz $D71C
D723 | C9 : ret
D724 | FF : rst $38
-->
</script>
<script state="change">
<action>maincpu.mb@D711 = param</action>
<action>maincpu.mb@D71B = param</action>
</script>
<script state="off">
<action>maincpu.mw@0865 = 12BF </action>
<action>maincpu.mw@086D = 12BF </action>
<action>maincpu.mw@0875 = 1410 </action>
<action>maincpu.mw@087D = 1410 </action>
<action>maincpu.mq@D710 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@D718 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@D720 = FFFFFFFFFFFFFFFF</action>
</script>
</cheat>
<cheat desc="bullet speed">
<parameter>
<item value="0x01">01 (slow)</item>
<item value="0x04">02 </item>
<item value="0x06">03 </item>
<item value="0x08">04 </item>
<item value="0x0a">05 (fast)</item>
</parameter>
<script state="change">
<action>maincpu.mb@2997 = param</action> <!-- left -->
<action>maincpu.mb@29B6 = param</action> <!-- right -->
</script>
<script state="off">
<action>maincpu.mb@2997 = 04</action>
<action>maincpu.mb@29B6 = 04</action>
</script>
</cheat>
<cheat desc="sound test mode">
<comment>set "skip rom check" then reset the game (F3)</comment>
<script state="on">
<action>maincpu.mw@036F = D730 </action>
<action>maincpu.mq@D730 = CDC570003A470021</action>
<action>maincpu.mq@D738 = FEF42847B8C1FD40</action>
<action>maincpu.mq@D740 = 0120EFFE350120DF</action>
<action>maincpu.mq@D748 = 18F03E0420BFFE34</action>
<action>maincpu.mq@D750 = 86103E05207FFE06</action>
<action>maincpu.mq@D758 = 187E0320F7FE7877</action>
<action>maincpu.mq@D760 = 03CDAF0420F9FE05</action>
<action>maincpu.mq@D768 = FFFFFFFFFFC81814</action>
<!--
D730 | 21 00 47 : ld hl,$4700 // sound code address
D733 | 3A 00 70 : ld a,($7000) // watchdog
D736 | C5 : push bc
D737 | CD 40 FD : call $FD40 // read input
D73A | C1 : pop bc
D73B | B8 : cp b
D73C | 47 : ld b,a
D73D | 28 F6 : jr z,$D733
D73F | FE DF : cp $DF
D741 | 20 01 : jr nz,$D744
D743 | 35 : dec (hl) // decrease code -01
D744 | FE EF : cp $EF
D746 | 20 01 : jr nz,$D749
D748 | 34 : inc (hl) // increase code +01
D749 | FE BF : cp $BF
D74B | 20 04 : jr nz,$D751
D74D | 3E F0 : ld a,$F0 // decrease code -10
D74F | 18 06 : jr $D757
D751 | FE 7F : cp $7F
D753 | 20 05 : jr nz,$D75A
D755 | 3E 10 : ld a,$10 // increase code +10
D757 | 86 : add a,(hl)
D758 | 77 : ld (hl),a
D759 | 78 : ld a,b
D75A | FE F7 : cp $F7
D75C | 20 03 : jr nz,$D761
D75E | 7E : ld a,(hl) // play sound
D75F | 18 05 : jr $D766
D761 | FE F9 : cp $F9
D763 | 20 04 : jr nz,$D769
D765 | AF : xor a // stop sound
D766 | CD 03 14 : call $1403 // send sound code
D769 | 18 CA : jr $D733
-->
</script>
<script state="run">
<output format="----- 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="button 2 : stop sound" line="16" align="center" />
<output format="----------------------------" line="17" align="center" />
<output format="<< sound code %02X >>" line="19" align="center" >
<argument>maincpu.pb@4700</argument>
</output>
</script>
<script state="off">
<action>maincpu.mw@036F = F500 </action>
<action>maincpu.mq@D730 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@D738 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@D740 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@D748 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@D750 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@D758 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@D760 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@D768 = FFFFFFFFFFFFFFFF</action>
</script>
</cheat>
<cheat desc="skip rom check">
<script state="on">
<action>maincpu.mw@0025 = 0027</action>
</script>
<script state="off">
<action>maincpu.mw@0025 = 00DA</action>
</script>
</cheat>
</mamecheat>
Code: Select all
<!-- Mighty Monkey (Kaina Games, bootleg on Scramble hardware) -->
<mamecheat version="1">
<cheat desc="no hit">
<script state="on">
<action>maincpu.mw@3251 = 3253</action> <!-- background -->
<action>maincpu.mw@338E = 336E</action> <!-- enemy (monkey) -->
<action>maincpu.mw@33FA = 336E</action> <!-- enemy (dragon) -->
<action>maincpu.mw@3591 = 3597</action> <!-- hovering vulture -->
</script>
<script state="off">
<action>maincpu.mw@3251 = 3254</action>
<action>maincpu.mw@338E = 33DC</action>
<action>maincpu.mw@33FA = 33DD</action>
<action>maincpu.mw@3591 = 3599</action>
</script>
</cheat>
<cheat desc="rapid fire">
<script state="on">
<action>maincpu.mb@085A = 5C</action>
<action>maincpu.mb@1366 = 00</action> <!-- interval -->
</script>
<script state="off">
<action>maincpu.mb@085A = 60</action>
<action>maincpu.mb@1366 = D8</action>
</script>
</cheat>
<cheat desc="player speed">
<parameter min="0x01" max="0x05" step="0x01" />
<script state="on">
<action>maincpu.mw@0865 = D710 </action> <!-- up -->
<action>maincpu.mw@086D = D710 </action> <!-- down -->
<action>maincpu.mw@0875 = D71A </action> <!-- left -->
<action>maincpu.mw@087D = D71A </action> <!-- right -->
<action>maincpu.mq@D710 = 10C112BFCDC50006</action>
<action>maincpu.mq@D718 = 1410CDC50006C9F9</action>
<action>maincpu.mq@D720 = FFFFFFFFC9F910C1</action>
<!--
D710 | 06 xx : ld b,$xx // up, down
D712 | C5 : push bc
D713 | CD BF 12 : call $12BF
D716 | C1 : pop bc
D717 | 10 F9 : djnz $D712
D719 | C9 : ret
D71A | 06 xx : ld b,$xx // left, right
D71C | C5 : push bc
D71D | CD 10 14 : call $1410
D720 | C1 : pop bc
D721 | 10 F9 : djnz $D71C
D723 | C9 : ret
D724 | FF : rst $38
-->
</script>
<script state="change">
<action>maincpu.mb@D711 = param</action>
<action>maincpu.mb@D71B = param</action>
</script>
<script state="off">
<action>maincpu.mw@0865 = 12BF </action>
<action>maincpu.mw@086D = 12BF </action>
<action>maincpu.mw@0875 = 1410 </action>
<action>maincpu.mw@087D = 1410 </action>
<action>maincpu.mq@D710 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@D718 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@D720 = FFFFFFFFFFFFFFFF</action>
</script>
</cheat>
<cheat desc="bullet speed">
<parameter>
<item value="0x01">01 (slow)</item>
<item value="0x04">02 </item>
<item value="0x06">03 </item>
<item value="0x08">04 </item>
<item value="0x0a">05 (fast)</item>
</parameter>
<script state="change">
<action>maincpu.mb@2997 = param</action> <!-- left -->
<action>maincpu.mb@29B6 = param</action> <!-- right -->
</script>
<script state="off">
<action>maincpu.mb@2997 = 04</action>
<action>maincpu.mb@29B6 = 04</action>
</script>
</cheat>
<cheat desc="sound test mode">
<comment>set "skip rom check" then reset the game (F3)</comment>
<script state="on">
<action>maincpu.mw@036F = D730 </action>
<action>maincpu.mq@D730 = 40CD70003A470021</action>
<action>maincpu.mq@D738 = 20DFFEF62847B8FD</action>
<action>maincpu.mq@D740 = FE340120EFFE3501</action>
<action>maincpu.mq@D748 = FE0618F03E0420BF</action>
<action>maincpu.mq@D750 = 787786103E05207F</action>
<action>maincpu.mq@D758 = FE05187E0320F7FE</action>
<action>maincpu.mq@D760 = 181403CDAF0420F9</action>
<action>maincpu.mq@D768 = FFFFFFFFFFFFFFCA</action>
<!--
D730 | 21 00 47 : ld hl,$4700 // sound code address
D733 | 3A 00 70 : ld a,($7000) // watchdog
D736 | CD 40 FD : call $FD40 // read input
D739 | B8 : cp b
D73A | 47 : ld b,a
D73B | 28 F6 : jr z,$D733
D73D | FE DF : cp $DF
D73F | 20 01 : jr nz,$D742
D741 | 35 : dec (hl) // decrease code -01
D742 | FE EF : cp $EF
D744 | 20 01 : jr nz,$D747
D746 | 34 : inc (hl) // increase code +01
D747 | FE BF : cp $BF
D749 | 20 04 : jr nz,$D74F
D74B | 3E F0 : ld a,$F0 // decrease code -10
D74D | 18 06 : jr $D755
D74F | FE 7F : cp $7F
D751 | 20 05 : jr nz,$D758
D753 | 3E 10 : ld a,$10 // increase code +10
D755 | 86 : add a,(hl)
D756 | 77 : ld (hl),a
D757 | 78 : ld a,b
D758 | FE F7 : cp $F7
D75A | 20 03 : jr nz,$D75F
D75C | 7E : ld a,(hl) // play sound
D75D | 18 05 : jr $D764
D75F | FE F9 : cp $F9
D761 | 20 04 : jr nz,$D767
D763 | AF : xor a // stop sound
D764 | CD 03 14 : call $1403 // send sound code
D767 | 18 CA : jr $D733
-->
</script>
<script state="run">
<output format="----- 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="button 2 : stop sound" line="16" align="center" />
<output format="----------------------------" line="17" align="center" />
<output format="<< sound code %02X >>" line="19" align="center" >
<argument>maincpu.pb@4700</argument>
</output>
</script>
<script state="off">
<action>maincpu.mw@036F = F500 </action>
<action>maincpu.mq@D730 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@D738 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@D740 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@D748 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@D750 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@D758 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@D760 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@D768 = FFFFFFFFFFFFFFFF</action>
</script>
</cheat>
<cheat desc="skip rom check">
<script state="on">
<action>maincpu.mw@0025 = 0027</action>
</script>
<script state="off">
<action>maincpu.mw@0025 = 00DA</action>
</script>
</cheat>
</mamecheat>
Code: Select all
<!-- Mighty Monkey (U.Games bootleg) -->
<mamecheat version="1">
<cheat desc="no hit">
<script state="on">
<action>maincpu.mw@3251 = 3253</action> <!-- background -->
<action>maincpu.mw@338E = 336E</action> <!-- enemy (monkey) -->
<action>maincpu.mw@33FA = 336E</action> <!-- enemy (dragon) -->
<action>maincpu.mw@3591 = 3597</action> <!-- hovering vulture -->
</script>
<script state="off">
<action>maincpu.mw@3251 = 3254</action>
<action>maincpu.mw@338E = 33DC</action>
<action>maincpu.mw@33FA = 33DD</action>
<action>maincpu.mw@3591 = 3599</action>
</script>
</cheat>
<cheat desc="rapid fire">
<script state="on">
<action>maincpu.mb@085A = 5C</action>
<action>maincpu.mb@1366 = 00</action> <!-- interval -->
</script>
<script state="off">
<action>maincpu.mb@085A = 60</action>
<action>maincpu.mb@1366 = D8</action>
</script>
</cheat>
<cheat desc="player speed">
<parameter min="0x01" max="0x05" step="0x01" />
<script state="on">
<action>maincpu.mw@0865 = D7B0 </action> <!-- up -->
<action>maincpu.mw@086D = D7B0 </action> <!-- down -->
<action>maincpu.mw@0875 = D7BA </action> <!-- left -->
<action>maincpu.mw@087D = D7BA </action> <!-- right -->
<action>maincpu.mq@D7B0 = 10C112BFCDC50006</action>
<action>maincpu.mq@D7B8 = 1410CDC50006C9F9</action>
<action>maincpu.mq@D7C0 = FFFFFFFFC9F910C1</action>
<!--
D7B0 | 06 xx : ld b,$xx // up, down
D7B2 | C5 : push bc
D7B3 | CD BF 12 : call $12BF
D7B6 | C1 : pop bc
D7B7 | 10 F9 : djnz $D7B2
D7B9 | C9 : ret
D7BA | 06 xx : ld b,$xx // left, right
D7BC | C5 : push bc
D7BD | CD 10 14 : call $1410
D7C0 | C1 : pop bc
D7C1 | 10 F9 : djnz $D7BC
D7C3 | C9 : ret
-->
</script>
<script state="change">
<action>maincpu.mb@D7B1 = param</action>
<action>maincpu.mb@D7BB = param</action>
</script>
<script state="off">
<action>maincpu.mw@0865 = 12BF </action>
<action>maincpu.mw@086D = 12BF </action>
<action>maincpu.mw@0875 = 1410 </action>
<action>maincpu.mw@087D = 1410 </action>
<action>maincpu.mq@D7B0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@D7B8 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@D7C0 = FFFFFFFFFFFFFFFF</action>
</script>
</cheat>
<cheat desc="bullet speed">
<parameter>
<item value="0x01">01 (slow)</item>
<item value="0x04">02 </item>
<item value="0x06">03 </item>
<item value="0x08">04 </item>
<item value="0x0a">05 (fast)</item>
</parameter>
<script state="change">
<action>maincpu.mb@2997 = param</action> <!-- left -->
<action>maincpu.mb@29B6 = param</action> <!-- right -->
</script>
<script state="off">
<action>maincpu.mb@2997 = 04</action>
<action>maincpu.mb@29B6 = 04</action>
</script>
</cheat>
<cheat desc="sound test mode (test)">
<!-- no sound -->
<comment>reset the game (F3) to enter sound test mode</comment>
<script state="on">
<action>maincpu.mw@036F = FD80 </action>
<action>maincpu.mq@FD80 = 40CDB0003A870021</action>
<action>maincpu.mq@FD88 = 20DFFEF62847B8FD</action>
<action>maincpu.mq@FD90 = FE340120EFFE3501</action>
<action>maincpu.mq@FD98 = FE0618F03E0420BF</action>
<action>maincpu.mq@FDA0 = 787786103E05207F</action>
<action>maincpu.mq@FDA8 = FE05187E0320F7FE</action>
<action>maincpu.mq@FDB0 = 181403CDAF0420F9</action>
<action>maincpu.mq@FDB8 = FFFFFFFFFFFFFFCA</action>
<!--
FD80 | 21 00 87 : ld hl,$8700 // sound code address
FD83 | 3A 00 B0 : ld a,($B000) // watchdog
FD86 | CD 40 FD : call $FD40 // read input
FD89 | B8 : cp b
FD8A | 47 : ld b,a
FD8B | 28 F6 : jr z,$FD83
FD8D | FE DF : cp $DF
FD8F | 20 01 : jr nz,$FD92
FD91 | 35 : dec (hl) // decrease code -01
FD92 | FE EF : cp $EF
FD94 | 20 01 : jr nz,$FD97
FD96 | 34 : inc (hl) // increase code +01
FD97 | FE BF : cp $BF
FD99 | 20 04 : jr nz,$FD9F
FD9B | 3E F0 : ld a,$F0 // decrease code -10
FD9D | 18 06 : jr $FDA5
FD9F | FE 7F : cp $7F
FDA1 | 20 05 : jr nz,$FDA8
FDA3 | 3E 10 : ld a,$10 // increase code +10
FDA5 | 86 : add a,(hl)
FDA6 | 77 : ld (hl),a
FDA7 | 78 : ld a,b
FDA8 | FE F7 : cp $F7
FDAA | 20 03 : jr nz,$FDAF
FDAC | 7E : ld a,(hl) // play sound
FDAD | 18 05 : jr $FDB4
FDAF | FE F9 : cp $F9
FDB1 | 20 04 : jr nz,$FDB7
FDB3 | AF : xor a // stop sound
FDB4 | CD 03 14 : call $1403 // send sound code
FDB7 | 18 CA : jr $FD83
-->
</script>
<script state="run">
<output format="----- 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="button 2 : stop sound" line="16" align="center" />
<output format="----------------------------" line="17" align="center" />
<output format="<< sound code %02X >>" line="19" align="center" >
<argument>maincpu.pb@8700</argument>
</output>
</script>
<script state="off">
<action>maincpu.mw@036F = F500 </action>
<action>maincpu.mq@FD80 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@FD88 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@FD90 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@FD98 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@FDA0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@FDA8 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@FDB0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@FDB8 = FFFFFFFFFFFFFFFF</action>
</script>
</cheat>
</mamecheat>
- You can't "eat" some enemies in dragon mode.
- Player character "hits" hovering vulture and kills this enemy.
- "sound test mode" : No sound response in mimonkeyug. So marked as "test" in this set.
- "skip rom check" : Removed from mimonkeyug. This sets patches ROM check from scratch.