Code: Select all
<!-- Acrobat Mission -->
<mamecheat version="1">
<cheat desc="no hit - player">
<script state="on">
<action>maincpu.mw@802C = 8170</action> <!-- bullet -->
<action>maincpu.mw@8034 = 78FC</action> <!-- enemy -->
<action>maincpu.mw@863A = 79D6</action> <!-- background -->
</script>
<script state="off">
<action>maincpu.mw@802C = 815C</action>
<action>maincpu.mw@8034 = 78DE</action>
<action>maincpu.mw@863A = 79D0</action>
</script>
</cheat>
<cheat desc="no hit - bomb">
<script state="on">
<action>maincpu.mw@9F66 = 793C</action>
</script>
<script state="off">
<action>maincpu.mw@9F66 = 791E</action>
</script>
</cheat>
<cheat desc="rapid fire">
<script state="on">
<!-- set fire button -->
<action>maincpu.md@07BD2 = 0003F360 </action>
<action>maincpu.mq@3F360 = 4EB836AE302E0222</action>
<action>maincpu.mq@3F368 = 02401010816E0224</action>
<action>maincpu.mq@3F370 = 4E75FFFFFFFFFFFF</action>
<!--
3F360 | 4EB8 36AE : jsr $36ae.w
3F364 | 302E 0222 : move.w ($222,A6), D0
3F368 | 0240 1010 : andi.w #$1010, D0
3F36C | 816E 0224 : or.w D0, ($224,A6)
3F370 | 4E75 : rts
-->
<!-- adjust shot power charge -->
<action>maincpu.mw@882E = 506C</action>
<action>maincpu.mw@8842 = 0018</action>
<!-- check fire button -->
<action>maincpu.mq@885E = 082E000402536616</action>
<action>maincpu.mq@8866 = 4A6C001466304E75</action>
<!--
885E | 082E 0004 0253 : btst #$4, ($253,A6) // check fire button
8864 | 6616 : bne $887c
8866 | 4A6C 0014 : tst.w ($14,A4) // check charge shot flag
886A | 6630 : bne $889c
886C | 4E75 : rts
-->
</script>
<script state="off">
<action>maincpu.md@07BD2 = 000036AE </action>
<action>maincpu.mq@3F360 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3F368 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3F370 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mw@0882E = 526C </action>
<action>maincpu.mw@08842 = 0019 </action>
<action>maincpu.mq@0885E = 4A6C0014660C302E</action>
<action>maincpu.mq@08866 = 025208000004660E</action>
</script>
</cheat>
<cheat desc="player speed">
<parameter>
<item value="0x0080">01 (slow)</item>
<item value="0x0280">02 </item>
<item value="0x0480">03 </item>
<item value="0x0680">04 </item>
<item value="0x0880">05 (fast)</item>
</parameter>
<script state="change">
<action>maincpu.mw@86AC = param</action>
</script>
<script state="off">
<action>maincpu.mw@86AC = 0280</action>
</script>
</cheat>
<cheat desc="bullet speed">
<parameter min="0x01" max="0x05" step="0x01" />
<script state="on">
<action>maincpu.mq@08C12 = 70004EB90003F378</action>
<action>maincpu.mq@08C1A = 4E71DBFC00000068</action>
<action>maincpu.mq@3F378 = 0C07001767060C07</action>
<action>maincpu.mq@3F380 = 00026E02700048E7</action>
<action>maincpu.mq@3F388 = 81804E904CDF0181</action>
<action>maincpu.mq@3F390 = 51C8FFF44E75FFFF</action>
<!--
08C12 | 70xx : moveq #$xx, D0
08C14 | 4EB9 0003 F378 : jsr $3f378.l
================================================
3F378 | 0C07 0017 : cmpi.b #$17, D7
3F37C | 6706 : beq $3f384
3F37E | 0C07 0002 : cmpi.b #$2, D7
3F382 | 6E02 : bgt $3f386
3F384 | 7000 : moveq #$0, D0
3F386 | 48E7 8180 : movem.l D0/D7/A0, -(A7)
3F38A | 4E90 : jsr (A0)
3F38C | 4CDF 0181 : movem.l (A7)+, D0/D7/A0
3F390 | 51C8 FFF4 : dbra D0, $3f386
3F394 | 4E75 : rts
-->
</script>
<script state="change">
<action>maincpu.mb@8C13 = param - 1</action>
</script>
<script state="off">
<action>maincpu.mq@08C12 = 48E701004E904CDF</action>
<action>maincpu.mq@08C1A = 0080DBFC00000068</action>
<action>maincpu.mq@3F378 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3F380 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3F388 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3F390 = FFFFFFFFFFFFFFFF</action>
</script>
</cheat>
<cheat desc="burner power up">
<script state="on">
<action>maincpu.mw@8694 = 4E71</action> <!-- speed until fire -->
<action>maincpu.mw@8D28 = 0100</action> <!-- fire power -->
</script>
<script state="off">
<action>maincpu.mw@8694 = 6610</action>
<action>maincpu.mw@8D28 = 0002</action>
</script>
</cheat>
<cheat desc="sound test mode">
<comment>set "skip ram/rom check" then reset the game (F3)</comment>
<script state="on">
<action>maincpu.md@006CE = 000020C8 </action> <!-- disable sound code 0x3F -->
<action>maincpu.md@00A3C = 0003F398 </action>
<action>maincpu.mq@3F398 = 41EE100043F9000C</action>
<action>maincpu.mq@3F3A0 = 001F12001029FFE4</action>
<action>maincpu.mq@3F3A8 = B20067F60C0000FD</action>
<action>maincpu.mq@3F3B0 = 660253100C0000FE</action>
<action>maincpu.mq@3F3B8 = 660252100C0000FB</action>
<action>maincpu.mq@3F3C0 = 6604041000100C00</action>
<action>maincpu.mq@3F3C8 = 00F7660406100010</action>
<action>maincpu.mq@3F3D0 = 0C0000EF66021290</action>
<action>maincpu.mq@3F3D8 = 0C0000DF66024211</action>
<action>maincpu.mq@3F3E0 = 60C0FFFFFFFFFFFF</action>
<!--
3F398 | 41EE 1000 : lea ($1000,A6), A0 // sound code address ($81000)
3F39C | 43F9 000C 001F : lea $c001f.l, A1 // sound latch address
3F3A2 | 1200 : move.b D0, D1
3F3A4 | 1029 FFE4 : move.b (-$1c,A1), D0 // read input ($C0003)
3F3A8 | B200 : cmp.b D0, D1
3F3AA | 67F6 : beq $3f3a2
3F3AC | 0C00 00FD : cmpi.b #-$3, D0
3F3B0 | 6602 : bne $3f3b4
3F3B2 | 5310 : subq.b #1, (A0) // decrease code -01
3F3B4 | 0C00 00FE : cmpi.b #-$2, D0
3F3B8 | 6602 : bne $3f3bc
3F3BA | 5210 : addq.b #1, (A0) // increase code +01
3F3BC | 0C00 00FB : cmpi.b #-$5, D0
3F3C0 | 6604 : bne $3f3c6
3F3C2 | 0410 0010 : subi.b #$10, (A0) // decrease code -10
3F3C6 | 0C00 00F7 : cmpi.b #-$9, D0
3F3CA | 6604 : bne $3f3d0
3F3CC | 0610 0010 : addi.b #$10, (A0) // increase code +10
3F3D0 | 0C00 00EF : cmpi.b #-$11, D0
3F3D4 | 6602 : bne $3f3d8
3F3D6 | 1290 : move.b (A0), (A1) // play sound
3F3D8 | 0C00 00DF : cmpi.b #-$21, D0
3F3DC | 6602 : bne $3f3e0
3F3DE | 4211 : clr.b (A1) // stop sound
3F3E0 | 60C0 : bra $3f3a2
-->
</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@81000</argument>
</output>
</script>
<script state="off">
<action>maincpu.md@006CE = 000020CA </action>
<action>maincpu.md@00A3C = 0000210C </action>
<action>maincpu.mq@3F398 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3F3A0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3F3A8 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3F3B0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3F3B8 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3F3C0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3F3C8 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3F3D0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3F3D8 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3F3E0 = FFFFFFFFFFFFFFFF</action>
</script>
</cheat>
<cheat desc="skip ram/rom check">
<script state="on">
<action>maincpu.mw@078C = 0A30</action> <!-- skip ram/rom check -->
<action>maincpu.mw@1C6C = 0001</action> <!-- skip dipswitch display -->
</script>
<script state="off">
<action>maincpu.mw@078C = 22B2</action>
<action>maincpu.mw@1C6C = 0258</action>
</script>
</cheat>
</mamecheat>
Code: Select all
<!-- Acrobat Mission (bootleg with Raiden sounds) -->
<mamecheat version="1">
<cheat desc="no hit - player">
<script state="on">
<action>maincpu.mw@802C = 8170</action> <!-- bullet -->
<action>maincpu.mw@8034 = 78FC</action> <!-- enemy -->
<action>maincpu.mw@863A = 79D6</action> <!-- background -->
</script>
<script state="off">
<action>maincpu.mw@802C = 815C</action>
<action>maincpu.mw@8034 = 78DE</action>
<action>maincpu.mw@863A = 79D0</action>
</script>
</cheat>
<cheat desc="no hit - bomb">
<script state="on">
<action>maincpu.mw@9F66 = 793C</action>
</script>
<script state="off">
<action>maincpu.mw@9F66 = 791E</action>
</script>
</cheat>
<cheat desc="rapid fire">
<script state="on">
<!-- set fire button -->
<action>maincpu.md@07BD2 = 0003F360 </action>
<action>maincpu.mq@3F360 = 4EB836AE302E0222</action>
<action>maincpu.mq@3F368 = 02401010816E0224</action>
<action>maincpu.mq@3F370 = 4E75FFFFFFFFFFFF</action>
<!--
3F360 | 4EB8 36AE : jsr $36ae.w
3F364 | 302E 0222 : move.w ($222,A6), D0
3F368 | 0240 1010 : andi.w #$1010, D0
3F36C | 816E 0224 : or.w D0, ($224,A6)
3F370 | 4E75 : rts
-->
<!-- adjust shot power charge -->
<action>maincpu.mw@882E = 506C</action>
<action>maincpu.mw@8842 = 0018</action>
<!-- check fire button -->
<action>maincpu.mq@885E = 082E000402536616</action>
<action>maincpu.mq@8866 = 4A6C001466304E75</action>
<!--
885E | 082E 0004 0253 : btst #$4, ($253,A6) // check fire button
8864 | 6616 : bne $887c
8866 | 4A6C 0014 : tst.w ($14,A4) // check charge shot flag
886A | 6630 : bne $889c
886C | 4E75 : rts
-->
</script>
<script state="off">
<action>maincpu.md@07BD2 = 000036AE </action>
<action>maincpu.mq@3F360 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3F368 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3F370 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mw@0882E = 526C </action>
<action>maincpu.mw@08842 = 0019 </action>
<action>maincpu.mq@0885E = 4A6C0014660C302E</action>
<action>maincpu.mq@08866 = 025208000004660E</action>
</script>
</cheat>
<cheat desc="player speed">
<parameter>
<item value="0x0080">01 (slow)</item>
<item value="0x0280">02 </item>
<item value="0x0480">03 </item>
<item value="0x0680">04 </item>
<item value="0x0880">05 (fast)</item>
</parameter>
<script state="change">
<action>maincpu.mw@86AC = param</action>
</script>
<script state="off">
<action>maincpu.mw@86AC = 0280</action>
</script>
</cheat>
<cheat desc="bullet speed">
<parameter min="0x01" max="0x05" step="0x01" />
<script state="on">
<action>maincpu.mq@08C12 = 70004EB90003F378</action>
<action>maincpu.mq@08C1A = 4E71DBFC00000068</action>
<action>maincpu.mq@3F378 = 0C07001767060C07</action>
<action>maincpu.mq@3F380 = 00026E02700048E7</action>
<action>maincpu.mq@3F388 = 81804E904CDF0181</action>
<action>maincpu.mq@3F390 = 51C8FFF44E75FFFF</action>
<!--
08C12 | 70xx : moveq #$xx, D0
08C14 | 4EB9 0003 F378 : jsr $3f378.l
================================================
3F378 | 0C07 0017 : cmpi.b #$17, D7
3F37C | 6706 : beq $3f384
3F37E | 0C07 0002 : cmpi.b #$2, D7
3F382 | 6E02 : bgt $3f386
3F384 | 7000 : moveq #$0, D0
3F386 | 48E7 8180 : movem.l D0/D7/A0, -(A7)
3F38A | 4E90 : jsr (A0)
3F38C | 4CDF 0181 : movem.l (A7)+, D0/D7/A0
3F390 | 51C8 FFF4 : dbra D0, $3f386
3F394 | 4E75 : rts
-->
</script>
<script state="change">
<action>maincpu.mb@8C13 = param - 1</action>
</script>
<script state="off">
<action>maincpu.mq@08C12 = 48E701004E904CDF</action>
<action>maincpu.mq@08C1A = 0080DBFC00000068</action>
<action>maincpu.mq@3F378 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3F380 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3F388 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3F390 = FFFFFFFFFFFFFFFF</action>
</script>
</cheat>
<cheat desc="burner power up">
<script state="on">
<action>maincpu.mw@8694 = 4E71</action> <!-- speed until fire -->
<action>maincpu.mw@8D28 = 0100</action> <!-- fire power -->
</script>
<script state="off">
<action>maincpu.mw@8694 = 6610</action>
<action>maincpu.mw@8D28 = 0002</action>
</script>
</cheat>
<cheat desc="sound test mode">
<comment>reset the game (F3) to enter sound test mode</comment>
<script state="on">
<action>maincpu.md@006CE = 000020C8 </action> <!-- disable sound code 0x3F -->
<action>maincpu.md@00A3C = 0003F398 </action>
<action>maincpu.mq@3F398 = 41EE100043F9000C</action>
<action>maincpu.mq@3F3A0 = 001E12001029FFE5</action>
<action>maincpu.mq@3F3A8 = B20067F60C0000FD</action>
<action>maincpu.mq@3F3B0 = 660253100C0000FE</action>
<action>maincpu.mq@3F3B8 = 660252100C0000FB</action>
<action>maincpu.mq@3F3C0 = 6604041000100C00</action>
<action>maincpu.mq@3F3C8 = 00F7660406100010</action>
<action>maincpu.mq@3F3D0 = 0C0000EF66081410</action>
<action>maincpu.mq@3F3D8 = 0042800032820C00</action>
<action>maincpu.mq@3F3E0 = 00DF660432BC82FF</action>
<action>maincpu.mq@3F3E8 = 60B8FFFFFFFFFFFF</action>
<!--
3F398 | 41EE 1000 : lea ($1000,A6), A0 // sound code address ($81000)
3F39C | 43F9 000C 001E : lea $c001e.l, A1 // sound latch address
3F3A2 | 1200 : move.b D0, D1
3F3A4 | 1029 FFE5 : move.b (-$1b,A1), D0 // read input ($C0003)
3F3A8 | B200 : cmp.b D0, D1
3F3AA | 67F6 : beq $3f3a2
3F3AC | 0C00 00FD : cmpi.b #-$3, D0
3F3B0 | 6602 : bne $3f3b4
3F3B2 | 5310 : subq.b #1, (A0) // decrease code -01
3F3B4 | 0C00 00FE : cmpi.b #-$2, D0
3F3B8 | 6602 : bne $3f3bc
3F3BA | 5210 : addq.b #1, (A0) // increase code +01
3F3BC | 0C00 00FB : cmpi.b #-$5, D0
3F3C0 | 6604 : bne $3f3c6
3F3C2 | 0410 0010 : subi.b #$10, (A0) // decrease code -10
3F3C6 | 0C00 00F7 : cmpi.b #-$9, D0
3F3CA | 6604 : bne $3f3d0
3F3CC | 0610 0010 : addi.b #$10, (A0) // increase code +10
3F3D0 | 0C00 00EF : cmpi.b #-$11, D0
3F3D4 | 6608 : bne $3f3de
3F3D6 | 1410 : move.b (A0), D2 // play sound
3F3D8 | 0042 8000 : ori.w #$8000, D2
3F3DC | 3282 : move.w D2, (A1)
3F3DE | 0C00 00DF : cmpi.b #-$21, D0
3F3E2 | 6604 : bne $3f3e8
3F3E4 | 32BC 82FF : move.w #$82ff, (A1) // stop sound
3F3E8 | 60B8 : bra $3f3a2
-->
</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@81000</argument>
</output>
</script>
<script state="off">
<action>maincpu.md@006CE = 000020CA </action>
<action>maincpu.md@00A3C = 0000210C </action>
<action>maincpu.mq@3F398 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3F3A0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3F3A8 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3F3B0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3F3B8 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3F3C0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3F3C8 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3F3D0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3F3D8 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3F3E0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@3F3E8 = FFFFFFFFFFFFFFFF</action>
</script>
</cheat>
<cheat desc="skip ram/rom check">
<script state="on">
<action>maincpu.md@078A = 00000A30</action> <!-- skip ram/rom check -->
<action>maincpu.mw@1C6C = 0001 </action> <!-- skip dipswitch display -->
</script>
<script state="off">
<action>maincpu.md@078A = 0003FC32</action>
<action>maincpu.mw@1C6C = 0258 </action>
</script>
</cheat>
</mamecheat>
- "rapid fire" : Sometimes "charge shot" counter doesn't be displayed and "charge shot" doesn't fire.
- "bullet speed" : This code affects "charge shot" speed.