This forum is for posting M.A.M.E. Work In Progress "Arcade"cheats that are not quite ready for the prime time. If the cheats are buggy or the cheat descriptions are non-standard then please post them here. Help maybe given but there are no guarantees and they will only be added to the cheat file when the cheat file maintainer is happy with them.
jman
Posts: 865 Joined: Tue Dec 01, 2020 1:24 pm
Post
by jman » Tue Dec 14, 2021 11:35 am
Code: Select all
<cheat desc="auto fire">
<script state="on">
<action>maincpu.mb@89cb = 13</action> <!-- laser -->
<action>maincpu.mb@891b = 13</action> <!-- puls -->
<action>maincpu.mb@8a1b = 13</action> <!-- k-can -->
<action>maincpu.mb@894e = 13</action> <!-- hyper 1 -->
<action>maincpu.mb@89b8 = 13</action> <!-- hyper 2 -->
</script>
<script state="off">
<action>maincpu.mb@89cb = 12</action>
<action>maincpu.mb@891b = 12</action>
<action>maincpu.mb@8a1b = 12</action>
<action>maincpu.mb@894e = 12</action>
<action>maincpu.mb@89b8 = 12</action>
</script>
</cheat>
<cheat desc="direct turn">
<script state="on">
<action>maincpu.md@8869 = bdf9a0d7</action>
<action>maincpu.md@887e = bdf9a0d7</action>
<action>maincpu.mq@f9a0 = d613c40f8ef9aae6</action>
<action>maincpu.mq@f9a8 = 8539ff0010ff0804</action>
<action>maincpu.mq@f9b0 = 0cff181c14ffffff</action>
<!--
f9a0 | d6 13 : LDB $13
f9a2 | c4 0f : ANDB #$0F
F9a4 | 8e f9 aa : LDX #$F9AA
f9a7 | e6 85 : LDB B,X
f9a9 | 39 : RTS
f9aa - f9b4 : input/direction conversion table
input direction
01 00 : up
02 10 : down
04 08 : left
05 04 : upper-left
06 0c : lower-left
08 18 : right
09 1c : upper-right
0a 14 : lower-right
-->
</script>
<script state="off">
<action>maincpu.md@8869 = 5ac41fd7</action>
<action>maincpu.md@887e = 5cc41fd7</action>
<action>maincpu.mq@f9a0 = ffffffffffffffff</action>
<action>maincpu.mq@f9a8 = ffffffffffffffff</action>
<action>maincpu.mq@f9b0 = 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@e1c9 = f9c0</action>
<action>maincpu.mq@f9c0 = d711f61800d11127</action>
<action>maincpu.mq@f9c8 = f7c1fb26020a10c1</action>
<action>maincpu.mq@f9d0 = f726020c10c1ef26</action>
<action>maincpu.mq@f9d8 = 0496102006c1df26</action>
<action>maincpu.mq@f9e0 = 058601b7180c20d8</action>
<!--
f9c0 | d7 11 : STB $11
f9c2 | f6 18 00 : LDB $1800 // read input
f9c5 | d1 11 : CMPB $11
f9c7 | 27 f7 : BEQ $F9C0
f9c9 | c1 fb : CMPB #$FB
f9cb | 26 02 : BNE $F9CF
f9cd | 0a 10 : DEC $10 // decrease code
f9cf | c1 f7 : CMPB #$F7
f9d1 | 26 02 : BNE $F9D5
f9d3 | 0c 10 : INC $10 // increase code
f9d5 | c1 ef : CMPB #$EF
f9d7 | 26 04 : BNE $F9DD
f9d9 | 96 10 : LDA $10 // play sound
f9db | 20 06 : BRA $F9E3
f9dd | c1 df : CMPB #$DF
f9df | 26 05 : BNE $F9E6
f9e1 | 86 01 : LDA #$01 // stop sound
f9e3 | b7 18 0c : STA $180C // send sound code
f9e6 | 20 d8 : BRA $F9C0
-->
</script>
<script state="run">
<output format="----- last mission sound test mode -----" line="10" align="center" />
<output format="left : decrease code" line="11" align="center" />
<output format="right : increase code" line="12" align="center" />
<output format="button 1 : play sound" line="13" align="center" />
<output format="button 2 : stop sound" line="14" align="center" />
<output format="----------------------------" line="15" align="center" />
<output format="<< sound code %2.2X >>" line="17" align="center">
<argument>maincpu.pb@0010</argument>
</output>
</script>
<script state="off">
<action>maincpu.mw@e1c9 = dbf0</action>
<action>maincpu.mq@f9c0 = ffffffffffffffff</action>
<action>maincpu.mq@f9c8 = ffffffffffffffff</action>
<action>maincpu.mq@f9d0 = ffffffffffffffff</action>
<action>maincpu.mq@f9d8 = ffffffffffffffff</action>
<action>maincpu.mq@f9e0 = ffffffffffffffff</action>
</script>
</cheat>
<cheat desc="skip ram/rom check">
<script state="on">
<action>maincpu.mw@8053 = 8055</action>
</script>
<script state="off">
<action>maincpu.mw@8053 = f360</action>
</script>
</cheat>
jman
Posts: 865 Joined: Tue Dec 01, 2020 1:24 pm
Post
by jman » Wed Dec 28, 2022 12:23 am
Code: Select all
<cheat desc="sound test mode">
<comment>reset the game (F3) to enter sound test mode</comment>
<script state="on">
<action>maincpu.mw@e1c9 = f9c0</action>
<action>maincpu.mq@f9c0 = 9711b61800911127</action>
<action>maincpu.mq@f9c8 = f7d61081fb26015a</action>
<action>maincpu.mq@f9d0 = 81f726015c81fd26</action>
<action>maincpu.mq@f9d8 = 02c01081fe2602cb</action>
<action>maincpu.mq@f9e0 = 10d71081ef270681</action>
<action>maincpu.mq@f9e8 = df2605c601f7180c</action>
<action>maincpu.mq@f9f0 = 20ceffffffffffff</action>
<!--
f9c0 | 97 11 : STA $11
f9c2 | b6 18 00 : LDA $1800 // read input
f9c5 | 91 11 : CMPA $11
f9c7 | 27 f7 : BEQ $F9C0
f9c9 | d6 10 : LDB $10
f9cb | 81 fb : CMPA #$FB
f9cd | 26 01 : BNE $F9D0
f9cf | 5a : DECB // decrease code -01
f9d0 | 81 f7 : CMPA #$F7
f9d2 | 26 01 : BNE $F9D5
f9d4 | 5c : INCB // increase code +01
f9d5 | 81 fd : CMPA #$FD
f9d7 | 26 02 : BNE $F9DB
f9d9 | c0 10 : SUBB #$10 // decrease code -10
f9db | 81 fe : CMPA #$FE
f9dd | 26 02 : BNE $F9E1
f9df | cb 10 : ADDB #$10 // increase code +10
f9e1 | d7 10 : STB $10
f9e3 | 81 ef : CMPA #$EF
f9e5 | 27 06 : BEQ $F9ED
f9e7 | 81 df : CMPA #$DF
f9e9 | 26 05 : BNE $F9F0
f9eb | c6 01 : LDB #$01 // stop sound
f9ed | f7 18 0c : STB $180C // send sound code
f9f0 | 20 ce : BRA $F9C0
-->
</script>
<script state="run">
<output format="----- last mission 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 %2.2X >>" line="19" align="center" >
<argument>maincpu.pb@0010</argument>
</output>
</script>
<script state="off">
<action>maincpu.mw@e1c9 = dbf0</action>
<action>maincpu.mq@f9c0 = ffffffffffffffff</action>
<action>maincpu.mq@f9c8 = ffffffffffffffff</action>
<action>maincpu.mq@f9d0 = ffffffffffffffff</action>
<action>maincpu.mq@f9d8 = ffffffffffffffff</action>
<action>maincpu.mq@f9e0 = ffffffffffffffff</action>
<action>maincpu.mq@f9f0 = ffffffffffffffff</action>
</script>
</cheat>
"sound test mode" : rewrite routine. add up/down key (code ±10).
jman
Posts: 865 Joined: Tue Dec 01, 2020 1:24 pm
Post
by jman » Mon Mar 11, 2024 9:15 am
lastmisn.xml
Code: Select all
<!-- Last Mission (World revision 8) -->
<mamecheat version="1">
<cheat desc="no hit">
<script state="on">
<action>maincpu.mb@8619 = 20</action>
</script>
<script state="off">
<action>maincpu.mb@8619 = 24</action>
</script>
</cheat>
<cheat desc="auto fire">
<script state="on">
<action>maincpu.mb@8A19 = 13</action> <!-- puls -->
<action>maincpu.mb@8A4C = 13</action> <!-- hyper -->
<action>maincpu.mb@8AB6 = 13</action> <!-- hyper -->
<action>maincpu.mb@8AC9 = 13</action> <!-- laser -->
<action>maincpu.mb@8B19 = 13</action> <!-- k-can -->
</script>
<script state="off">
<action>maincpu.mb@8A19 = 12</action>
<action>maincpu.mb@8A4C = 12</action>
<action>maincpu.mb@8AB6 = 12</action>
<action>maincpu.mb@8AC9 = 12</action>
<action>maincpu.mb@8B19 = 12</action>
</script>
</cheat>
<cheat desc="direct turn">
<script state="on">
<action>maincpu.md@8967 = BDFB80D7 </action>
<action>maincpu.md@897C = BDFB80D7 </action>
<action>maincpu.mq@FB80 = D613C40F8EFB8AE6</action>
<action>maincpu.mq@FB88 = 8539FF0010FF0804</action>
<action>maincpu.mq@FB90 = 0CFF181C14FFFFFF</action>
<!--
FB80 | D6 13 : LDB $13
FB82 | C4 0F : ANDB #$0F
FB84 | 8E FB 8A : LDX #$FB8A
FB87 | E6 85 : LDB B,X
FB89 | 39 : RTS
FB8A - FB94 : input/direction conversion table
input direction
01 00 : up
02 10 : down
04 08 : left
05 04 : upper-left
06 0c : lower-left
08 18 : right
09 1c : upper-right
0a 14 : lower-right
-->
</script>
<script state="off">
<action>maincpu.md@8967 = 5AC41FD7 </action>
<action>maincpu.md@897C = 5CC41FD7 </action>
<action>maincpu.mq@FB80 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@FB88 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@FB90 = 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@E2D8 = FBA0 </action>
<action>maincpu.mq@FBA0 = 9781B61800918127</action>
<action>maincpu.mq@FBA8 = F7D68081FB26015A</action>
<action>maincpu.mq@FBB0 = 81F726015C81FD26</action>
<action>maincpu.mq@FBB8 = 02C01081FE2602CB</action>
<action>maincpu.mq@FBC0 = 10D78081EF270681</action>
<action>maincpu.mq@FBC8 = DF2605C601F7180C</action>
<action>maincpu.mq@FBD0 = 20CEFFFFFFFFFFFF</action>
<!--
FBA0 | 97 81 : STA $81
FBA2 | B6 18 00 : LDA $1800 // read input
FBA5 | 91 81 : CMPA $81
FBA7 | 27 F7 : BEQ $FBA0
FBA9 | D6 80 : LDB $80
FBAB | 81 FB : CMPA #$FB
FBAD | 26 01 : BNE $FBB0
FBAF | 5A : DECB // decrease code -01
FBB0 | 81 F7 : CMPA #$F7
FBB2 | 26 01 : BNE $FBB5
FBB4 | 5C : INCB // increase code +01
FBB5 | 81 FD : CMPA #$FD
FBB7 | 26 02 : BNE $FBBB
FBB9 | C0 10 : SUBB #$10 // decrease code -10
FBBB | 81 FE : CMPA #$FE
FBBD | 26 02 : BNE $FBC1
FBBF | CB 10 : ADDB #$10 // increase code +10
FBC1 | D7 80 : STB $80
FBC3 | 81 EF : CMPA #$EF
FBC5 | 27 06 : BEQ $FBCD // play sound
FBC7 | 81 DF : CMPA #$DF
FBC9 | 26 05 : BNE $FBD0
FBCB | C6 01 : LDB #$01 // stop sound
FBCD | F7 18 0C : STB $180C // send sound code
FBD0 | 20 CE : BRA $FBA0
-->
</script>
<script state="run">
<output format="----- last mission 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@0080</argument>
</output>
</script>
<script state="off">
<action>maincpu.mw@E2D8 = DCEE </action>
<action>maincpu.mq@FBA0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@FBA8 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@FBB0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@FBB8 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@FBC0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@FBC8 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@FBD0 = FFFFFFFFFFFFFFFF</action>
</script>
</cheat>
<cheat desc="skip ram/rom check">
<script state="on">
<action>maincpu.mw@8053 = 8055</action>
</script>
<script state="off">
<action>maincpu.mw@8053 = F52E</action>
</script>
</cheat>
</mamecheat>
lastmisnu6.xml
Code: Select all
<!-- Last Mission (US revision 6) -->
<mamecheat version="1">
<cheat desc="no hit">
<script state="on">
<action>maincpu.mb@8619 = 20</action>
</script>
<script state="off">
<action>maincpu.mb@8619 = 24</action>
</script>
</cheat>
<cheat desc="auto fire">
<script state="on">
<action>maincpu.mb@8A19 = 13</action> <!-- puls -->
<action>maincpu.mb@8A4C = 13</action> <!-- hyper -->
<action>maincpu.mb@8AB6 = 13</action> <!-- hyper -->
<action>maincpu.mb@8AC9 = 13</action> <!-- laser -->
<action>maincpu.mb@8B19 = 13</action> <!-- k-can -->
</script>
<script state="off">
<action>maincpu.mb@8A19 = 12</action>
<action>maincpu.mb@8A4C = 12</action>
<action>maincpu.mb@8AB6 = 12</action>
<action>maincpu.mb@8AC9 = 12</action>
<action>maincpu.mb@8B19 = 12</action>
</script>
</cheat>
<cheat desc="direct turn">
<script state="on">
<action>maincpu.md@8967 = BDFB80D7 </action>
<action>maincpu.md@897C = BDFB80D7 </action>
<action>maincpu.mq@FB80 = D613C40F8EFB8AE6</action>
<action>maincpu.mq@FB88 = 8539FF0010FF0804</action>
<action>maincpu.mq@FB90 = 0CFF181C14FFFFFF</action>
<!--
FB80 | D6 13 : LDB $13
FB82 | C4 0F : ANDB #$0F
FB84 | 8E FB 8A : LDX #$FB8A
FB87 | E6 85 : LDB B,X
FB89 | 39 : RTS
FB8A - FB94 : input/direction conversion table
input direction
01 00 : up
02 10 : down
04 08 : left
05 04 : upper-left
06 0c : lower-left
08 18 : right
09 1c : upper-right
0a 14 : lower-right
-->
</script>
<script state="off">
<action>maincpu.md@8967 = 5AC41FD7 </action>
<action>maincpu.md@897C = 5CC41FD7 </action>
<action>maincpu.mq@FB80 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@FB88 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@FB90 = 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@E2D8 = FBA0 </action>
<action>maincpu.mq@FBA0 = 9781B61800918127</action>
<action>maincpu.mq@FBA8 = F7D68081FB26015A</action>
<action>maincpu.mq@FBB0 = 81F726015C81FD26</action>
<action>maincpu.mq@FBB8 = 02C01081FE2602CB</action>
<action>maincpu.mq@FBC0 = 10D78081EF270681</action>
<action>maincpu.mq@FBC8 = DF2605C601F7180C</action>
<action>maincpu.mq@FBD0 = 20CEFFFFFFFFFFFF</action>
<!--
FBA0 | 97 81 : STA $81
FBA2 | B6 18 00 : LDA $1800 // read input
FBA5 | 91 81 : CMPA $81
FBA7 | 27 F7 : BEQ $FBA0
FBA9 | D6 80 : LDB $80
FBAB | 81 FB : CMPA #$FB
FBAD | 26 01 : BNE $FBB0
FBAF | 5A : DECB // decrease code -01
FBB0 | 81 F7 : CMPA #$F7
FBB2 | 26 01 : BNE $FBB5
FBB4 | 5C : INCB // increase code +01
FBB5 | 81 FD : CMPA #$FD
FBB7 | 26 02 : BNE $FBBB
FBB9 | C0 10 : SUBB #$10 // decrease code -10
FBBB | 81 FE : CMPA #$FE
FBBD | 26 02 : BNE $FBC1
FBBF | CB 10 : ADDB #$10 // increase code +10
FBC1 | D7 80 : STB $80
FBC3 | 81 EF : CMPA #$EF
FBC5 | 27 06 : BEQ $FBCD // play sound
FBC7 | 81 DF : CMPA #$DF
FBC9 | 26 05 : BNE $FBD0
FBCB | C6 01 : LDB #$01 // stop sound
FBCD | F7 18 0C : STB $180C // send sound code
FBD0 | 20 CE : BRA $FBA0
-->
</script>
<script state="run">
<output format="----- last mission 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@0080</argument>
</output>
</script>
<script state="off">
<action>maincpu.mw@E2D8 = DCEE </action>
<action>maincpu.mq@FBA0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@FBA8 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@FBB0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@FBB8 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@FBC0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@FBC8 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@FBD0 = FFFFFFFFFFFFFFFF</action>
</script>
</cheat>
<cheat desc="skip ram/rom check">
<script state="on">
<action>maincpu.mw@8053 = 8055</action>
</script>
<script state="off">
<action>maincpu.mw@8053 = F535</action>
</script>
</cheat>
</mamecheat>
lastmisnu5.xml
Code: Select all
<!-- Last Mission (US revision 5) -->
<mamecheat version="1">
<cheat desc="no hit">
<script state="on">
<action>maincpu.mb@8619 = 20</action>
</script>
<script state="off">
<action>maincpu.mb@8619 = 24</action>
</script>
</cheat>
<cheat desc="auto fire">
<script state="on">
<action>maincpu.mb@89F8 = 13</action> <!-- puls -->
<action>maincpu.mb@8A2B = 13</action> <!-- hyper -->
<action>maincpu.mb@8A95 = 13</action> <!-- hyper -->
<action>maincpu.mb@8AA8 = 13</action> <!-- laser -->
<action>maincpu.mb@8AF8 = 13</action> <!-- k-can -->
</script>
<script state="off">
<action>maincpu.mb@89F8 = 12</action>
<action>maincpu.mb@8A2B = 12</action>
<action>maincpu.mb@8A95 = 12</action>
<action>maincpu.mb@8AA8 = 12</action>
<action>maincpu.mb@8AF8 = 12</action>
</script>
</cheat>
<cheat desc="direct turn">
<script state="on">
<action>maincpu.md@8946 = BDFB00D7 </action>
<action>maincpu.md@895B = BDFB00D7 </action>
<action>maincpu.mq@FB00 = D613C40F8EFB0AE6</action>
<action>maincpu.mq@FB08 = 8539FF0010FF0804</action>
<action>maincpu.mq@FB10 = 0CFF181C14FFFFFF</action>
<!--
FB00 | D6 13 : LDB $13
FB02 | C4 0F : ANDB #$0F
FB04 | 8E FB 0A : LDX #$FB0A
FB07 | E6 85 : LDB B,X
FB09 | 39 : RTS
FB0A - FB14 : input/direction conversion table
input direction
01 00 : up
02 10 : down
04 08 : left
05 04 : upper-left
06 0c : lower-left
08 18 : right
09 1c : upper-right
0a 14 : lower-right
-->
</script>
<script state="off">
<action>maincpu.md@8946 = 5AC41FD7 </action>
<action>maincpu.md@895B = 5CC41FD7 </action>
<action>maincpu.mq@FB00 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@FB08 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@FB10 = 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@E2B7 = FB20 </action>
<action>maincpu.mq@FB20 = 9781B61800918127</action>
<action>maincpu.mq@FB28 = F7D68081FB26015A</action>
<action>maincpu.mq@FB30 = 81F726015C81FD26</action>
<action>maincpu.mq@FB38 = 02C01081FE2602CB</action>
<action>maincpu.mq@FB40 = 10D78081EF270681</action>
<action>maincpu.mq@FB48 = DF2605C601F7180C</action>
<action>maincpu.mq@FB50 = 20CEFFFFFFFFFFFF</action>
<!--
FB20 | 97 81 : STA $81
FB22 | B6 18 00 : LDA $1800 // read input
FB25 | 91 81 : CMPA $81
FB27 | 27 F7 : BEQ $FB20
FB29 | D6 80 : LDB $80
FB2B | 81 FB : CMPA #$FB
FB2D | 26 01 : BNE $FB30
FB2F | 5A : DECB // decrease code -01
FB30 | 81 F7 : CMPA #$F7
FB32 | 26 01 : BNE $FB35
FB34 | 5C : INCB // increase code +01
FB35 | 81 FD : CMPA #$FD
FB37 | 26 02 : BNE $FB3B
FB39 | C0 10 : SUBB #$10 // decrease code -10
FB3B | 81 FE : CMPA #$FE
FB3D | 26 02 : BNE $FB41
FB3F | CB 10 : ADDB #$10 // increase code +10
FB41 | D7 80 : STB $80
FB43 | 81 EF : CMPA #$EF
FB45 | 27 06 : BEQ $FB4D // play sound
FB47 | 81 DF : CMPA #$DF
FB49 | 26 05 : BNE $FB50
FB4B | C6 01 : LDB #$01 // stop sound
FB4D | F7 18 0C : STB $180C // send sound code
FB50 | 20 CE : BRA $FB20
-->
</script>
<script state="run">
<output format="----- last mission 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@0080</argument>
</output>
</script>
<script state="off">
<action>maincpu.mw@E2B7 = DCCD </action>
<action>maincpu.mq@FB20 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@FB28 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@FB30 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@FB38 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@FB40 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@FB48 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@FB50 = FFFFFFFFFFFFFFFF</action>
</script>
</cheat>
<cheat desc="skip ram/rom check">
<script state="on">
<action>maincpu.mw@8053 = 8055</action>
</script>
<script state="off">
<action>maincpu.mw@8053 = F4B6</action>
</script>
</cheat>
</mamecheat>
lastmisnj.xml
Code: Select all
<!-- Last Mission (Japan) -->
<mamecheat version="1">
<cheat desc="no hit">
<script state="on">
<action>maincpu.mb@860F = 20</action>
</script>
<script state="off">
<action>maincpu.mb@860F = 24</action>
</script>
</cheat>
<cheat desc="auto fire">
<script state="on">
<action>maincpu.mb@891B = 13</action> <!-- puls -->
<action>maincpu.mb@894E = 13</action> <!-- hyper -->
<action>maincpu.mb@89B8 = 13</action> <!-- hyper -->
<action>maincpu.mb@89CB = 13</action> <!-- laser -->
<action>maincpu.mb@8A1B = 13</action> <!-- k-can -->
</script>
<script state="off">
<action>maincpu.mb@891B = 12</action>
<action>maincpu.mb@894E = 12</action>
<action>maincpu.mb@89B8 = 12</action>
<action>maincpu.mb@89CB = 12</action>
<action>maincpu.mb@8A1B = 12</action>
</script>
</cheat>
<cheat desc="direct turn">
<script state="on">
<action>maincpu.md@8869 = BDF9A0D7 </action>
<action>maincpu.md@887E = BDF9A0D7 </action>
<action>maincpu.mq@F9A0 = D613C40F8EF9AAE6</action>
<action>maincpu.mq@F9A8 = 8539FF0010FF0804</action>
<action>maincpu.mq@F9B0 = 0CFF181C14FFFFFF</action>
<!--
F9A0 | D6 13 : LDB $13
F9A2 | C4 0F : ANDB #$0F
F9A4 | 8E F9 AA : LDX #$F9AA
F9A7 | E6 85 : LDB B,X
F9A9 | 39 : RTS
F9AA - F9B4 : input/direction conversion table
input direction
01 00 : up
02 10 : down
04 08 : left
05 04 : upper-left
06 0c : lower-left
08 18 : right
09 1c : upper-right
0a 14 : lower-right
-->
</script>
<script state="off">
<action>maincpu.md@8869 = 5AC41FD7 </action>
<action>maincpu.md@887E = 5CC41FD7 </action>
<action>maincpu.mq@F9A0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@F9A8 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@F9B0 = 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@E1C9 = F9C0 </action>
<action>maincpu.mq@F9C0 = 9781B61800918127</action>
<action>maincpu.mq@F9C8 = F7D68081FB26015A</action>
<action>maincpu.mq@F9D0 = 81F726015C81FD26</action>
<action>maincpu.mq@F9D8 = 02C01081FE2602CB</action>
<action>maincpu.mq@F9E0 = 10D78081EF270681</action>
<action>maincpu.mq@F9E8 = DF2605C601F7180C</action>
<action>maincpu.mq@F9F0 = 20CEFFFFFFFFFFFF</action>
<!--
F9C0 | 97 81 : STA $81
F9C2 | B6 18 00 : LDA $1800 // read input
F9C5 | 91 81 : CMPA $81
F9C7 | 27 F7 : BEQ $F9C0
F9C9 | D6 80 : LDB $80
F9CB | 81 FB : CMPA #$FB
F9CD | 26 01 : BNE $F9D0
F9CF | 5A : DECB // decrease code -01
F9D0 | 81 F7 : CMPA #$F7
F9D2 | 26 01 : BNE $F9D5
F9D4 | 5C : INCB // increase code +01
F9D5 | 81 FD : CMPA #$FD
F9D7 | 26 02 : BNE $F9DB
F9D9 | C0 10 : SUBB #$10 // decrease code -10
F9DB | 81 FE : CMPA #$FE
F9DD | 26 02 : BNE $F9E1
F9DF | CB 10 : ADDB #$10 // increase code +10
F9E1 | D7 80 : STB $80
F9E3 | 81 EF : CMPA #$EF
F9E5 | 27 06 : BEQ $F9ED // play sound
F9E7 | 81 DF : CMPA #$DF
F9E9 | 26 05 : BNE $F9F0
F9EB | C6 01 : LDB #$01 // stop sound
F9ED | F7 18 0C : STB $180C // send sound code
F9F0 | 20 CE : BRA $F9C0
-->
</script>
<script state="run">
<output format="----- last mission 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@0080</argument>
</output>
</script>
<script state="off">
<action>maincpu.mw@E1C9 = DBF0 </action>
<action>maincpu.mq@F9C0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@F9C8 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@F9D0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@F9D8 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@F9E0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@F9E8 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@F9F0 = FFFFFFFFFFFFFFFF</action>
</script>
</cheat>
<cheat desc="skip ram/rom check">
<script state="on">
<action>maincpu.mw@8053 = 8055</action>
</script>
<script state="off">
<action>maincpu.mw@8053 = F360</action>
</script>
</cheat>
</mamecheat>