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: 874 Joined: Tue Dec 01, 2020 1:24 pm
Been thanked: 3 times
Post
by jman » Sat Oct 15, 2022 9:05 am
Code: Select all
<cheat desc="auto fire">
<script state="on">
<action>cpu1.mb@ae77 = 00</action> <!-- shot interval -->
<action>cpu1.mb@ae7f = 2f</action> <!-- shot -->
<action>cpu1.mb@aee8 = 2f</action> <!-- missile -->
</script>
<script state="off">
<action>cpu1.mb@ae77 = 0f</action>
<action>cpu1.mb@ae7f = 26</action>
<action>cpu1.mb@aee8 = 26</action>
</script>
</cheat>
<cheat desc="direct turn">
<script state="on">
<action>cpu1.mq@ad7b = a602a701201150eb</action> <!-- LDA $2,X / STA $1,X / BRA $AD92 -->
</script>
<script state="off">
<action>cpu1.mq@ad7b = c6038180250150eb</action>
</script>
</cheat>
<cheat desc="sound test mode">
<comment>set "skip ram/rom check" then reset the game (F3)</comment>
<script state="on">
<action>cpu1.mw@8140 = 813f</action> <!-- disable next sequence -->
<action>cpu1.mw@bc4c = fd80</action>
<action>cpu1.mq@fd80 = 8e5300b65731a101</action>
<action>cpu1.mq@fd88 = 272be68481012601</action>
<action>cpu1.mq@fd90 = 5a810226015c8108</action>
<action>cpu1.mq@fd98 = 2602c01081042602</action>
<action>cpu1.mq@fda0 = cb10e78481102602</action>
<action>cpu1.mq@fda8 = 2005812026075ff7</action>
<action>cpu1.mq@fdb0 = 3a00f73800a70139</action>
<!--
fd80 | 8e 53 00 : LDX #$5300 // sound code address
fd83 | b6 57 31 : LDA $5731 // read input
fd86 | a1 01 : CMPA $1,X
fd88 | 27 2b : BEQ $FDB5
fd8a | e6 84 : LDB ,X
fd8c | 81 01 : CMPA #$01
fd8e | 26 01 : BNE $FD91
fd90 | 5a : DECB // decrease code -01
fd91 | 81 02 : CMPA #$02
fd93 | 26 01 : BNE $FD96
fd95 | 5c : INCB // increase code +01
fd96 | 81 08 : CMPA #$08
fd98 | 26 02 : BNE $FD9C
fd9a | c0 10 : SUBB #$10 // decrease code -10
fd9c | 81 04 : CMPA #$04
fd9e | 26 02 : BNE $FDA2
fda0 | cb 10 : ADDB #$10 // increase code +10
fda2 | e7 84 : STB ,X
fda4 | 81 10 : CMPA #$10
fda6 | 26 02 : BNE $FDAA
fda8 | 20 05 : BRA $FDAF // play sound
fdaa | 81 20 : CMPA #$20
fdac | 26 07 : BNE $FDB5
fdae | 5f : CLRB // stop sound
fdaf | f7 3a 00 : STB $3A00 // send sound code
fdb2 | f7 38 00 : STB $3800 // sound hardware trigger
fdb5 | a7 01 : STA $1,X
fdb7 | 39 : RTS
-->
</script>
<script state="run">
<output format="----- time pilot '84 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>cpu1.pb@5300</argument>
</output>
</script>
<script state="off">
<action>cpu1.mw@8140 = 83af</action>
<action>cpu1.mw@bc4c = 8cf3</action>
<action>cpu1.mq@fd80 = ffffffffffffffff</action>
<action>cpu1.mq@fd88 = ffffffffffffffff</action>
<action>cpu1.mq@fd90 = ffffffffffffffff</action>
<action>cpu1.mq@fd98 = ffffffffffffffff</action>
<action>cpu1.mq@fda0 = ffffffffffffffff</action>
<action>cpu1.mq@fda8 = ffffffffffffffff</action>
<action>cpu1.mq@fdb0 = ffffffffffffffff</action>
</script>
</cheat>
<cheat desc="skip ram/rom check">
<script state="on">
<action>cpu1.mw@810c = 2013</action> <!-- cross-hatch -->
<action>cpu1.md@b681 = 7e80008e</action> <!-- cpu1 -->
<action> sub.md@e042 = 7ee0dab7</action> <!-- sub -->
</script>
<script state="off">
<action>cpu1.mw@810c = 8d34</action>
<action>cpu1.md@b681 = b757ff8e</action>
<action> sub.md@e042 = 8e6000b7</action>
</script>
</cheat>
jman
Posts: 874 Joined: Tue Dec 01, 2020 1:24 pm
Been thanked: 3 times
Post
by jman » Sat Mar 16, 2024 11:47 am
tp84.xml
Code: Select all
<!-- Time Pilot '84 (set 1) -->
<mamecheat version="1">
<cheat desc="no hit">
<script state="on">
<action>sub.mb@F46E = 00</action> <!-- enemy -->
<action>sub.mb@F4B3 = 00</action> <!-- enemy -->
<action>sub.mb@F4FD = 00</action> <!-- enemy -->
<action>sub.mb@F547 = 00</action> <!-- enemy -->
<action>sub.mb@F588 = 20</action> <!-- boss -->
<action>sub.mb@F5C4 = 00</action> <!-- bullet -->
<action>sub.mb@F609 = 00</action> <!-- bullet -->
<action>sub.mb@F64E = 00</action> <!-- bullet -->
<action>sub.mb@F698 = 00</action> <!-- missile -->
<action>sub.mb@F6E2 = 00</action> <!-- missile -->
</script>
<script state="off">
<action>sub.mb@F46E = B</action>
<action>sub.mb@F4B3 = B</action>
<action>sub.mb@F4FD = B</action>
<action>sub.mb@F547 = B</action>
<action>sub.mb@F588 = 24</action>
<action>sub.mb@F5C4 = B</action>
<action>sub.mb@F609 = B</action>
<action>sub.mb@F64E = B</action>
<action>sub.mb@F698 = B</action>
<action>sub.mb@F6E2 = B</action>
</script>
</cheat>
<cheat desc="auto fire">
<script state="on">
<action>cpu1.mb@AE77 = 00</action> <!-- shot interval -->
<action>cpu1.mb@AE7F = 2F</action> <!-- shot -->
<action>cpu1.mb@AEE8 = 2F</action> <!-- missile -->
</script>
<script state="off">
<action>cpu1.mb@AE77 = 0F</action>
<action>cpu1.mb@AE7F = 26</action>
<action>cpu1.mb@AEE8 = 26</action>
</script>
</cheat>
<cheat desc="direct turn">
<script state="on">
<action>cpu1.mq@AD7B = A602A701201150EB</action> <!-- LDA $2,X / STA $1,X / BRA $AD92 -->
</script>
<script state="off">
<action>cpu1.mq@AD7B = C6038180250150EB</action>
</script>
</cheat>
<cheat desc="sound test mode">
<comment>set "skip ram/rom check" then reset the game (F3)</comment>
<script state="on">
<action>cpu1.mw@8140 = 813F </action> <!-- disable next sequence -->
<action>cpu1.mw@BC4C = FD80 </action>
<action>cpu1.mq@FD80 = B6573191112729D6</action>
<action>cpu1.mq@FD88 = 10810126015A8102</action>
<action>cpu1.mq@FD90 = 26015C81082602C0</action>
<action>cpu1.mq@FD98 = 1081042602CB10D7</action>
<action>cpu1.mq@FDA0 = 1081102705812026</action>
<action>cpu1.mq@FDA8 = 075FF73A00F73800</action>
<action>cpu1.mq@FDB0 = 971139FFFFFFFFFF</action>
<!--
FD80 | B6 57 31 : LDA $5731 // read input
FD83 | 91 11 : CMPA $11
FD85 | 27 29 : BEQ $FDB0
FD87 | D6 10 : LDB $10
FD89 | 81 01 : CMPA #$01
FD8B | 26 01 : BNE $FD8E
FD8D | 5A : DECB // decrease code -01
FD8E | 81 02 : CMPA #$02
FD90 | 26 01 : BNE $FD93
FD92 | 5C : INCB // increase code +01
FD93 | 81 08 : CMPA #$08
FD95 | 26 02 : BNE $FD99
FD97 | C0 10 : SUBB #$10 // decrease code -10
FD99 | 81 04 : CMPA #$04
FD9B | 26 02 : BNE $FD9F
FD9D | CB 10 : ADDB #$10 // increase code +10
FD9F | D7 10 : STB $10
FDA1 | 81 10 : CMPA #$10
FDA3 | 27 05 : BEQ $FDAA // play sound
FDA5 | 81 20 : CMPA #$20
FDA7 | 26 07 : BNE $FDB0
FDA9 | 5F : CLRB // stop sound
FDAA | F7 3A 00 : STB $3A00 // send sound code
FDAD | F7 38 00 : STB $3800 // sound hardware trigger
FDB0 | 97 11 : STA $11
FDB2 | 39 : RTS
-->
</script>
<script state="run">
<output format="----- time pilot '84 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>cpu1.pb@4410</argument>
</output>
</script>
<script state="off">
<action>cpu1.mw@8140 = 83AF </action>
<action>cpu1.mw@BC4C = 8CF3 </action>
<action>cpu1.mq@FD80 = FFFFFFFFFFFFFFFF</action>
<action>cpu1.mq@FD88 = FFFFFFFFFFFFFFFF</action>
<action>cpu1.mq@FD90 = FFFFFFFFFFFFFFFF</action>
<action>cpu1.mq@FD98 = FFFFFFFFFFFFFFFF</action>
<action>cpu1.mq@FDA0 = FFFFFFFFFFFFFFFF</action>
<action>cpu1.mq@FDA8 = FFFFFFFFFFFFFFFF</action>
<action>cpu1.mq@FDB0 = FFFFFFFFFFFFFFFF</action>
</script>
</cheat>
<cheat desc="skip ram/rom check">
<script state="on">
<action>cpu1.mw@810C = 2013 </action> <!-- cross-hatch -->
<action>cpu1.md@B681 = 7E80008E</action> <!-- cpu1 -->
<action> sub.md@E042 = 7EE0DAB7</action> <!-- sub -->
</script>
<script state="off">
<action>cpu1.mw@810C = 8D34 </action>
<action>cpu1.md@B681 = B757FF8E</action>
<action> sub.md@E042 = 8E6000B7</action>
</script>
</cheat>
</mamecheat>
tp84a.xml
Code: Select all
<!-- Time Pilot '84 (set 2) -->
<mamecheat version="1">
<cheat desc="no hit">
<script state="on">
<action>sub.mb@F46E = 00</action> <!-- enemy -->
<action>sub.mb@F4B3 = 00</action> <!-- enemy -->
<action>sub.mb@F4FD = 00</action> <!-- enemy -->
<action>sub.mb@F547 = 00</action> <!-- enemy -->
<action>sub.mb@F588 = 20</action> <!-- boss -->
<action>sub.mb@F5C4 = 00</action> <!-- bullet -->
<action>sub.mb@F609 = 00</action> <!-- bullet -->
<action>sub.mb@F64E = 00</action> <!-- bullet -->
<action>sub.mb@F698 = 00</action> <!-- missile -->
<action>sub.mb@F6E2 = 00</action> <!-- missile -->
</script>
<script state="off">
<action>sub.mb@F46E = B</action>
<action>sub.mb@F4B3 = B</action>
<action>sub.mb@F4FD = B</action>
<action>sub.mb@F547 = B</action>
<action>sub.mb@F588 = 24</action>
<action>sub.mb@F5C4 = B</action>
<action>sub.mb@F609 = B</action>
<action>sub.mb@F64E = B</action>
<action>sub.mb@F698 = B</action>
<action>sub.mb@F6E2 = B</action>
</script>
</cheat>
<cheat desc="auto fire">
<script state="on">
<action>cpu1.mb@AE77 = 00</action> <!-- shot interval -->
<action>cpu1.mb@AE7F = 2F</action> <!-- shot -->
<action>cpu1.mb@AEE8 = 2F</action> <!-- missile -->
</script>
<script state="off">
<action>cpu1.mb@AE77 = 0F</action>
<action>cpu1.mb@AE7F = 26</action>
<action>cpu1.mb@AEE8 = 26</action>
</script>
</cheat>
<cheat desc="direct turn">
<script state="on">
<action>cpu1.mq@AD7B = A602A701201150EB</action> <!-- LDA $2,X / STA $1,X / BRA $AD92 -->
</script>
<script state="off">
<action>cpu1.mq@AD7B = C6038180250150EB</action>
</script>
</cheat>
<cheat desc="sound test mode">
<comment>set "skip ram/rom check" then reset the game (F3)</comment>
<script state="on">
<action>cpu1.mw@8140 = 813F </action> <!-- disable next sequence -->
<action>cpu1.mw@BC4C = FD80 </action>
<action>cpu1.mq@FD80 = B6573191112729D6</action>
<action>cpu1.mq@FD88 = 10810126015A8102</action>
<action>cpu1.mq@FD90 = 26015C81082602C0</action>
<action>cpu1.mq@FD98 = 1081042602CB10D7</action>
<action>cpu1.mq@FDA0 = 1081102705812026</action>
<action>cpu1.mq@FDA8 = 075FF73A00F73800</action>
<action>cpu1.mq@FDB0 = 971139FFFFFFFFFF</action>
<!--
FD80 | B6 57 31 : LDA $5731 // read input
FD83 | 91 11 : CMPA $11
FD85 | 27 29 : BEQ $FDB0
FD87 | D6 10 : LDB $10
FD89 | 81 01 : CMPA #$01
FD8B | 26 01 : BNE $FD8E
FD8D | 5A : DECB // decrease code -01
FD8E | 81 02 : CMPA #$02
FD90 | 26 01 : BNE $FD93
FD92 | 5C : INCB // increase code +01
FD93 | 81 08 : CMPA #$08
FD95 | 26 02 : BNE $FD99
FD97 | C0 10 : SUBB #$10 // decrease code -10
FD99 | 81 04 : CMPA #$04
FD9B | 26 02 : BNE $FD9F
FD9D | CB 10 : ADDB #$10 // increase code +10
FD9F | D7 10 : STB $10
FDA1 | 81 10 : CMPA #$10
FDA3 | 27 05 : BEQ $FDAA // play sound
FDA5 | 81 20 : CMPA #$20
FDA7 | 26 07 : BNE $FDB0
FDA9 | 5F : CLRB // stop sound
FDAA | F7 3A 00 : STB $3A00 // send sound code
FDAD | F7 38 00 : STB $3800 // sound hardware trigger
FDB0 | 97 11 : STA $11
FDB2 | 39 : RTS
-->
</script>
<script state="run">
<output format="----- time pilot '84 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>cpu1.pb@4410</argument>
</output>
</script>
<script state="off">
<action>cpu1.mw@8140 = 83AF </action>
<action>cpu1.mw@BC4C = 8CF3 </action>
<action>cpu1.mq@FD80 = FFFFFFFFFFFFFFFF</action>
<action>cpu1.mq@FD88 = FFFFFFFFFFFFFFFF</action>
<action>cpu1.mq@FD90 = FFFFFFFFFFFFFFFF</action>
<action>cpu1.mq@FD98 = FFFFFFFFFFFFFFFF</action>
<action>cpu1.mq@FDA0 = FFFFFFFFFFFFFFFF</action>
<action>cpu1.mq@FDA8 = FFFFFFFFFFFFFFFF</action>
<action>cpu1.mq@FDB0 = FFFFFFFFFFFFFFFF</action>
</script>
</cheat>
<cheat desc="skip ram/rom check">
<script state="on">
<action>cpu1.mw@810C = 2013 </action> <!-- cross-hatch -->
<action>cpu1.md@B681 = 7E80008E</action> <!-- cpu1 -->
<action> sub.md@E042 = 7EE0DAB7</action> <!-- sub -->
</script>
<script state="off">
<action>cpu1.mw@810C = 8D34 </action>
<action>cpu1.md@B681 = B757FF8E</action>
<action> sub.md@E042 = 8E6000B7</action>
</script>
</cheat>
</mamecheat>
tp84b.xml
Code: Select all
<!-- Time Pilot '84 (set 3) -->
<mamecheat version="1">
<cheat desc="no hit">
<script state="on">
<action>sub.mb@E592 = 00</action> <!-- enemy -->
<action>sub.mb@E5D7 = 00</action> <!-- enemy -->
<action>sub.mb@E621 = 00</action> <!-- enemy -->
<action>sub.mb@E66B = 00</action> <!-- enemy -->
<action>sub.mb@E6AC = 20</action> <!-- boss -->
<action>sub.mb@E6E8 = 00</action> <!-- bullet -->
<action>sub.mb@E72D = 00</action> <!-- bullet -->
<action>sub.mb@E772 = 00</action> <!-- bullet -->
<action>sub.mb@E7BC = 00</action> <!-- missile -->
<action>sub.mb@E806 = 00</action> <!-- missile -->
</script>
<script state="off">
<action>sub.mb@E592 = B</action>
<action>sub.mb@E5D7 = B</action>
<action>sub.mb@E621 = B</action>
<action>sub.mb@E66B = B</action>
<action>sub.mb@E6AC = 24</action>
<action>sub.mb@E6E8 = B</action>
<action>sub.mb@E72D = B</action>
<action>sub.mb@E772 = B</action>
<action>sub.mb@E7BC = B</action>
<action>sub.mb@E806 = B</action>
</script>
</cheat>
<cheat desc="auto fire">
<script state="on">
<action>cpu1.mb@AEA5 = 00</action> <!-- shot interval -->
<action>cpu1.mb@AEAD = 2F</action> <!-- shot -->
<action>cpu1.mb@AF16 = 2F</action> <!-- missile -->
</script>
<script state="off">
<action>cpu1.mb@AEA5 = 0F</action>
<action>cpu1.mb@AEAD = 26</action>
<action>cpu1.mb@AF16 = 26</action>
</script>
</cheat>
<cheat desc="direct turn">
<script state="on">
<action>cpu1.mq@ADA9 = A602A701201150EB</action> <!-- LDA $2,X / STA $1,X / BRA $ADC0 -->
</script>
<script state="off">
<action>cpu1.mq@ADA9 = C6038180250150EB</action>
</script>
</cheat>
<cheat desc="sound test mode">
<comment>set "skip ram/rom check" then reset the game (F3)</comment>
<script state="on">
<action>cpu1.mw@8152 = 8151 </action> <!-- disable next sequence -->
<action>cpu1.mw@BC4C = FD70 </action>
<action>cpu1.mq@FD70 = B6173191112729D6</action>
<action>cpu1.mq@FD78 = 10810126015A8102</action>
<action>cpu1.mq@FD80 = 26015C81082602C0</action>
<action>cpu1.mq@FD88 = 1081042602CB10D7</action>
<action>cpu1.mq@FD90 = 1081102705812026</action>
<action>cpu1.mq@FD98 = 075FF71E80F71E00</action>
<action>cpu1.mq@FDA0 = 971139FFFFFFFFFF</action>
<!--
FD70 | B6 17 31 : LDA $1731 // read input
FD73 | 91 11 : CMPA $11
FD75 | 27 29 : BEQ $FDA0
FD77 | D6 10 : LDB $10
FD79 | 81 01 : CMPA #$01
FD7B | 26 01 : BNE $FD7E
FD7D | 5A : DECB // decrease code -01
FD7E | 81 02 : CMPA #$02
FD80 | 26 01 : BNE $FD83
FD82 | 5C : INCB // increase code +01
FD83 | 81 08 : CMPA #$08
FD85 | 26 02 : BNE $FD89
FD87 | C0 10 : SUBB #$10 // decrease code -10
FD89 | 81 04 : CMPA #$04
FD8B | 26 02 : BNE $FD8F
FD8D | CB 10 : ADDB #$10 // increase code +10
FD8F | D7 10 : STB $10
FD91 | 81 10 : CMPA #$10
FD93 | 27 05 : BEQ $FD9A // play sound
FD95 | 81 20 : CMPA #$20
FD97 | 26 07 : BNE $FDA0
FD99 | 5F : CLRB // stop sound
FD9A | F7 1E 80 : STB $1E80 // send sound code
FD9D | F7 1E 00 : STB $1E00 // sound hardware trigger
FDA0 | 97 11 : STA $11
FDA2 | 39 : RTS
-->
</script>
<script state="run">
<output format="----- time pilot '84 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>cpu1.pb@0410</argument>
</output>
</script>
<script state="off">
<action>cpu1.mw@8140 = 83C1 </action>
<action>cpu1.mw@BC4C = 8D05 </action>
<action>cpu1.mq@FD70 = FFFFFFFFFFFFFFFF</action>
<action>cpu1.mq@FD78 = FFFFFFFFFFFFFFFF</action>
<action>cpu1.mq@FD80 = FFFFFFFFFFFFFFFF</action>
<action>cpu1.mq@FD88 = FFFFFFFFFFFFFFFF</action>
<action>cpu1.mq@FD90 = FFFFFFFFFFFFFFFF</action>
<action>cpu1.mq@FD98 = FFFFFFFFFFFFFFFF</action>
<action>cpu1.mq@FDA0 = FFFFFFFFFFFFFFFF</action>
</script>
</cheat>
<cheat desc="skip ram/rom check">
<script state="on">
<action>cpu1.mw@811E = 2013 </action> <!-- cross-hatch -->
<action>cpu1.md@B684 = 7E80008E</action> <!-- cpu1 -->
<action> sub.md@E01C = 7EE10AB7</action> <!-- sub -->
</script>
<script state="off">
<action>cpu1.mw@810C = 8D34 </action>
<action>cpu1.md@B684 = B717FF8E</action>
<action> sub.md@E01C = 8E6000B7</action>
</script>
</cheat>
</mamecheat>