Code: Select all
<!-- Air Buster: Trouble Specialty Raid Unit (World) -->
<mamecheat version="1">
<cheat desc="no hit">
<script state="on">
<!-- 1P -->
<action>master.mb@1241 = C3</action> <!-- enemy -->
<action>master.mb@1372 = C3</action> <!-- bullet -->
<action>master.mb@43D4 = C3</action> <!-- background -->
<!-- 2P -->
<action>master.mb@12F0 = C3</action> <!-- enemy -->
<action>master.mb@13BF = C3</action> <!-- bullet -->
<action>master.mb@4938 = C3</action> <!-- background -->
</script>
<script state="off">
<action>master.mb@1241 = DA</action>
<action>master.mb@1372 = DA</action>
<action>master.mb@43D4 = CA</action>
<action>master.mb@12F0 = DA</action>
<action>master.mb@13BF = DA</action>
<action>master.mb@4938 = CA</action>
</script>
</cheat>
<cheat desc="rapid fire">
<script state="on">
<!-- 1P -->
<action>master.mb@4C41 = C3</action> <!-- normal shot -->
<action>master.mb@4CC8 = C3</action> <!-- sub weapon -->
<!-- 2P -->
<action>master.mb@4DE4 = C3</action> <!-- normal shot -->
<action>master.mb@4E6B = C3</action> <!-- sub weapon -->
</script>
<script state="off">
<action>master.mb@4C41 = CA</action>
<action>master.mb@4CC8 = CA</action>
<action>master.mb@4DE4 = CA</action>
<action>master.mb@4E6B = CA</action>
</script>
</cheat>
<cheat desc="player speed">
<parameter>
<item value="0x08">01 (slow)</item>
<item value="0x28">02 </item>
<item value="0x38">03 </item>
<item value="0x48">04 </item>
<item value="0x58">05 (fast)</item>
</parameter>
<script state="on">
<action>master.mw@4334 = 7C4C </action> <!-- 1P -->
<action>master.mw@4898 = 7C4C </action> <!-- 2P -->
<action>master.mq@7C40 = 7C4AF2003EC8A77E</action>
<action>master.mq@7C48 = CD252525C97744ED</action>
<action>master.mq@7C50 = 242D7C40CD2C7C40</action>
<action>master.mq@7C58 = 0000C919DDCD2424</action>
<!--
7C40 | 7E : ld a,(hl) // speed calculation routine
7C41 | A7 : and a
7C42 | C8 : ret z
7C43 | 3E xx : ld a,$xx
7C45 | F2 4A 7C : jp p,$7C4A
7C48 | ED 44 : neg
7C4A | 77 : ld (hl),a
7C4B | C9 : ret
7C4C | 25 : dec h
7C4D | 25 : dec h
7C4E | 25 : dec h
7C4F | CD 40 7C : call $7C40 // x position
7C52 | 2C : inc l
7C53 | CD 40 7C : call $7C40 // y position
7C56 | 2D : dec l
7C57 | 24 : inc h
7C58 | 24 : inc h
7C59 | 24 : inc h
7C5A | CD DD 19 : call $19DD
7C5D | C9 : ret
-->
</script>
<script state="change">
<action>master.mb@7C44 = param</action>
</script>
<script state="off">
<action>master.mw@4334 = 19DD </action>
<action>master.mw@4898 = 19DD </action>
<action>master.mq@7C40 = 0000000000000000</action>
<action>master.mq@7C48 = 0000000000000000</action>
<action>master.mq@7C50 = 0000000000000000</action>
<action>master.mq@7C58 = 0000000000000000</action>
</script>
</cheat>
<cheat desc="effect of gravity">
<parameter>
<item value="0x3A438EC3">none </item>
<item value="0x3A4361CA">always</item>
</parameter>
<script state="change">
<action> master.md@435E = param </action> <!-- 1P -->
<action condition="param == 3A438EC3">master.md@48C2 = 3A48F2C3</action> <!-- 2P (none) -->
<action condition="param == 3A4361CA">master.md@48C2 = 3A48C5CA</action> <!-- 2P (always) -->
</script>
<script state="off">
<action>master.md@435E = 3A438ECA</action>
<action>master.md@48C2 = 3A48F2CA</action>
</script>
</cheat>
<cheat desc="sound test mode">
<!-- you can't stop sfxs (0x40 or later) by sound stop button -->
<comment>reset the game (F3) to enter sound test mode</comment>
<script state="on">
<action> slave.mw@03D3 = C3 </action> <!-- enable input check -->
<action> slave.mw@0A68 = 0A23 </action> <!-- enable input check -->
<action>master.mw@2925 = 7C60 </action>
<action>master.mq@7C60 = 77BEF0043AE00121</action>
<action>master.mq@7C68 = FE35012004FE2BC8</action>
<action>master.mq@7C70 = 042002FE34012008</action>
<action>master.mq@7C78 = 052001FE0618F03E</action>
<action>master.mq@7C80 = 2010FEC97786103E</action>
<action>master.mq@7C88 = 3EC020FE05187E03</action>
<action>master.mq@7C90 = 000000C9F1483202</action>
<!--
7C60 | 21 01 E0 : ld hl,$E001 // temporary input address
7C63 | 3A 04 F0 : ld a,($F004) // read input
7C66 | BE : cp (hl)
7C67 | 77 : ld (hl),a
7C68 | C8 : ret z
7C69 | 2B : dec hl // sound code address ($E000)
7C6A | FE 04 : cp $04
7C6C | 20 01 : jr nz,$7C6F
7C6E | 35 : dec (hl) // decrease code -01
7C6F | FE 08 : cp $08
7C71 | 20 01 : jr nz,$7C74
7C73 | 34 : inc (hl) // increase code +01
7C74 | FE 02 : cp $02
7C76 | 20 04 : jr nz,$7C7C
7C78 | 3E F0 : ld a,$F0 // decrease code -10
7C7A | 18 06 : jr $7C82
7C7C | FE 01 : cp $01
7C7E | 20 05 : jr nz,$7C85
7C80 | 3E 10 : ld a,$10 // increase code +10
7C82 | 86 : add a,(hl)
7C83 | 77 : ld (hl),a
7C84 | C9 : ret
7C85 | FE 10 : cp $10
7C87 | 20 03 : jr nz,$7C8C
7C89 | 7E : ld a,(hl) // play sound
7C8A | 18 05 : jr $7C91
7C8C | FE 20 : cp $20
7C8E | C0 : ret nz
7C8F | 3E 02 : ld a,$02 // stop sound
7C91 | 32 48 F1 : ld ($F148),a // send sound code
7C94 | C9 : ret
-->
</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>master.pb@E000</argument>
</output>
</script>
<script state="off">
<action> slave.mw@03D3 = CA </action>
<action> slave.mw@0A68 = 0A72 </action>
<action>master.mw@2925 = 3519 </action>
<action>master.mq@7C60 = 0000000000000000</action>
<action>master.mq@7C68 = 0000000000000000</action>
<action>master.mq@7C70 = 0000000000000000</action>
<action>master.mq@7C78 = 0000000000000000</action>
<action>master.mq@7C80 = 0000000000000000</action>
<action>master.mq@7C88 = 0000000000000000</action>
<action>master.mq@7C90 = 0000000000000000</action>
</script>
</cheat>
</mamecheat>
Code: Select all
<!-- Air Buster: Trouble Specialty Raid Unit (Japan) -->
<mamecheat version="1">
<cheat desc="no hit">
<script state="on">
<!-- 1P -->
<action>master.mb@1241 = C3</action> <!-- enemy -->
<action>master.mb@1372 = C3</action> <!-- bullet -->
<action>master.mb@43E3 = C3</action> <!-- background -->
<!-- 2P -->
<action>master.mb@12F0 = C3</action> <!-- enemy -->
<action>master.mb@13BF = C3</action> <!-- bullet -->
<action>master.mb@4947 = C3</action> <!-- background -->
</script>
<script state="off">
<action>master.mb@1241 = DA</action>
<action>master.mb@1372 = DA</action>
<action>master.mb@43E3 = CA</action>
<action>master.mb@12F0 = DA</action>
<action>master.mb@13BF = DA</action>
<action>master.mb@4947 = CA</action>
</script>
</cheat>
<cheat desc="rapid fire">
<script state="on">
<!-- 1P -->
<action>master.mb@4C50 = C3</action> <!-- normal shot -->
<action>master.mb@4CD7 = C3</action> <!-- sub weapon -->
<!-- 2P -->
<action>master.mb@4DF3 = C3</action> <!-- normal shot -->
<action>master.mb@4E7A = C3</action> <!-- sub weapon -->
</script>
<script state="off">
<action>master.mb@4C50 = CA</action>
<action>master.mb@4CD7 = CA</action>
<action>master.mb@4DF3 = CA</action>
<action>master.mb@4E7A = CA</action>
</script>
</cheat>
<cheat desc="player speed">
<parameter>
<item value="0x08">01 (slow)</item>
<item value="0x28">02 </item>
<item value="0x38">03 </item>
<item value="0x48">04 </item>
<item value="0x58">05 (fast)</item>
</parameter>
<script state="on">
<action>master.mw@4343 = 7C5C </action> <!-- 1P -->
<action>master.mw@48A7 = 7C5C </action> <!-- 2P -->
<action>master.mq@7C50 = 7C5AF2003EC8A77E</action>
<action>master.mq@7C58 = CD252525C97744ED</action>
<action>master.mq@7C60 = 242D7C50CD2C7C50</action>
<action>master.mq@7C68 = 0000C919DDCD2424</action>
<!--
7C50 | 7E : ld a,(hl) // speed calculation routine
7C51 | A7 : and a
7C52 | C8 : ret z
7C53 | 3E xx : ld a,$xx
7C55 | F2 5A 7C : jp p,$7C5A
7C58 | ED 44 : neg
7C5A | 77 : ld (hl),a
7C5B | C9 : ret
7C5C | 25 : dec h
7C5D | 25 : dec h
7C5E | 25 : dec h
7C5F | CD 50 7C : call $7C50 // x position
7C62 | 2C : inc l
7C63 | CD 50 7C : call $7C50 // y position
7C66 | 2D : dec l
7C67 | 24 : inc h
7C68 | 24 : inc h
7C69 | 24 : inc h
7C6A | CD DD 19 : call $19DD
7C6D | C9 : ret
-->
</script>
<script state="change">
<action>master.mb@7C54 = param</action>
</script>
<script state="off">
<action>master.mw@4343 = 19DD </action>
<action>master.mw@48A7 = 19DD </action>
<action>master.mq@7C50 = 0000000000000000</action>
<action>master.mq@7C58 = 0000000000000000</action>
<action>master.mq@7C60 = 0000000000000000</action>
<action>master.mq@7C68 = 0000000000000000</action>
</script>
</cheat>
<cheat desc="effect of gravity">
<parameter>
<item value="0x3A439DC3">none </item>
<item value="0x3A4370CA">always</item>
</parameter>
<script state="change">
<action> master.md@436D = param </action> <!-- 1P -->
<action condition="param == 3A439DC3">master.md@48D1 = 3A4901C3</action> <!-- 2P (none) -->
<action condition="param == 3A4370CA">master.md@48D1 = 3A48D4CA</action> <!-- 2P (always) -->
</script>
<script state="off">
<action>master.md@436D = 3A439DCA</action>
<action>master.md@48D1 = 3A4901CA</action>
</script>
</cheat>
<cheat desc="sound test mode">
<!-- you can't stop sfxs (0x40 or later) by sound stop button -->
<comment>reset the game (F3) to enter sound test mode</comment>
<script state="on">
<action> slave.mw@03D3 = C3 </action> <!-- enable input check -->
<action> slave.mw@0A70 = 0A2B </action> <!-- enable input check -->
<action>master.mw@2925 = 7C70 </action>
<action>master.mq@7C70 = 77BEF0043AE00121</action>
<action>master.mq@7C78 = FE35012004FE2BC8</action>
<action>master.mq@7C80 = 042002FE34012008</action>
<action>master.mq@7C88 = 052001FE0618F03E</action>
<action>master.mq@7C90 = 2010FEC97786103E</action>
<action>master.mq@7C98 = 3EC020FE05187E03</action>
<action>master.mq@7CA0 = 000000C9F1483202</action>
<!--
7C70 | 21 01 E0 : ld hl,$E001 // temporary input address
7C73 | 3A 04 F0 : ld a,($F004) // read input
7C76 | BE : cp (hl)
7C77 | 77 : ld (hl),a
7C78 | C8 : ret z
7C79 | 2B : dec hl // sound code address ($E000)
7C7A | FE 04 : cp $04
7C7C | 20 01 : jr nz,$7C7F
7C7E | 35 : dec (hl) // decrease code -01
7C7F | FE 08 : cp $08
7C81 | 20 01 : jr nz,$7C84
7C83 | 34 : inc (hl) // increase code +01
7C84 | FE 02 : cp $02
7C86 | 20 04 : jr nz,$7C8C
7C88 | 3E F0 : ld a,$F0 // decrease code -10
7C8A | 18 06 : jr $7C92
7C8C | FE 01 : cp $01
7C8E | 20 05 : jr nz,$7C95
7C90 | 3E 10 : ld a,$10 // increase code +10
7C92 | 86 : add a,(hl)
7C93 | 77 : ld (hl),a
7C94 | C9 : ret
7C95 | FE 10 : cp $10
7C97 | 20 03 : jr nz,$7C9C
7C99 | 7E : ld a,(hl) // play sound
7C9A | 18 05 : jr $7CA1
7C9C | FE 20 : cp $20
7C9E | C0 : ret nz
7C9F | 3E 02 : ld a,$02 // stop sound
7CA1 | 32 48 F1 : ld ($F148),a // send sound code
7CA4 | C9 : ret
-->
</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>master.pb@E000</argument>
</output>
</script>
<script state="off">
<action> slave.mw@03D3 = CA </action>
<action> slave.mw@0A70 = 0A7A </action>
<action>master.mw@2925 = 3528 </action>
<action>master.mq@7C70 = 0000000000000000</action>
<action>master.mq@7C78 = 0000000000000000</action>
<action>master.mq@7C80 = 0000000000000000</action>
<action>master.mq@7C88 = 0000000000000000</action>
<action>master.mq@7C90 = 0000000000000000</action>
<action>master.mq@7C98 = 0000000000000000</action>
<action>master.mq@7CA0 = 0000000000000000</action>
</script>
</cheat>
</mamecheat>
Code: Select all
<!-- Air Buster: Trouble Specialty Raid Unit (bootleg) -->
<mamecheat version="1">
<cheat desc="no hit">
<script state="on">
<!-- 1P -->
<action>master.mb@1241 = C3</action> <!-- enemy -->
<action>master.mb@1372 = C3</action> <!-- bullet -->
<action>master.mb@43E3 = C3</action> <!-- background -->
<!-- 2P -->
<action>master.mb@12F0 = C3</action> <!-- enemy -->
<action>master.mb@13BF = C3</action> <!-- bullet -->
<action>master.mb@4947 = C3</action> <!-- background -->
</script>
<script state="off">
<action>master.mb@1241 = DA</action>
<action>master.mb@1372 = DA</action>
<action>master.mb@43E3 = CA</action>
<action>master.mb@12F0 = DA</action>
<action>master.mb@13BF = DA</action>
<action>master.mb@4947 = CA</action>
</script>
</cheat>
<cheat desc="rapid fire">
<script state="on">
<!-- 1P -->
<action>master.mb@4C50 = C3</action> <!-- normal shot -->
<action>master.mb@4CD7 = C3</action> <!-- sub weapon -->
<!-- 2P -->
<action>master.mb@4DF3 = C3</action> <!-- normal shot -->
<action>master.mb@4E7A = C3</action> <!-- sub weapon -->
</script>
<script state="off">
<action>master.mb@4C50 = CA</action>
<action>master.mb@4CD7 = CA</action>
<action>master.mb@4DF3 = CA</action>
<action>master.mb@4E7A = CA</action>
</script>
</cheat>
<cheat desc="player speed">
<parameter>
<item value="0x08">01 (slow)</item>
<item value="0x28">02 </item>
<item value="0x38">03 </item>
<item value="0x48">04 </item>
<item value="0x58">05 (fast)</item>
</parameter>
<script state="on">
<action>master.mw@4343 = 7C5C </action> <!-- 1P -->
<action>master.mw@48A7 = 7C5C </action> <!-- 2P -->
<action>master.mq@7C50 = 7C5AF2003EC8A77E</action>
<action>master.mq@7C58 = CD252525C97744ED</action>
<action>master.mq@7C60 = 242D7C50CD2C7C50</action>
<action>master.mq@7C68 = 0000C919DDCD2424</action>
<!--
7C50 | 7E : ld a,(hl) // speed calculation routine
7C51 | A7 : and a
7C52 | C8 : ret z
7C53 | 3E xx : ld a,$xx
7C55 | F2 5A 7C : jp p,$7C5A
7C58 | ED 44 : neg
7C5A | 77 : ld (hl),a
7C5B | C9 : ret
7C5C | 25 : dec h
7C5D | 25 : dec h
7C5E | 25 : dec h
7C5F | CD 50 7C : call $7C50 // x position
7C62 | 2C : inc l
7C63 | CD 50 7C : call $7C50 // y position
7C66 | 2D : dec l
7C67 | 24 : inc h
7C68 | 24 : inc h
7C69 | 24 : inc h
7C6A | CD DD 19 : call $19DD
7C6D | C9 : ret
-->
</script>
<script state="change">
<action>master.mb@7C54 = param</action>
</script>
<script state="off">
<action>master.mw@4343 = 19DD </action>
<action>master.mw@48A7 = 19DD </action>
<action>master.mq@7C50 = 0000000000000000</action>
<action>master.mq@7C58 = 0000000000000000</action>
<action>master.mq@7C60 = 0000000000000000</action>
<action>master.mq@7C68 = 0000000000000000</action>
</script>
</cheat>
<cheat desc="effect of gravity">
<parameter>
<item value="0x3A439DC3">none </item>
<item value="0x3A4370CA">always</item>
</parameter>
<script state="change">
<action> master.md@436D = param </action> <!-- 1P -->
<action condition="param == 3A439DC3">master.md@48D1 = 3A4901C3</action> <!-- 2P (none) -->
<action condition="param == 3A4370CA">master.md@48D1 = 3A48D4CA</action> <!-- 2P (always) -->
</script>
<script state="off">
<action>master.md@436D = 3A439DCA</action>
<action>master.md@48D1 = 3A4901CA</action>
</script>
</cheat>
<cheat desc="sound test mode">
<!-- you can't stop sfxs (0x40 or later) by sound stop button -->
<comment>reset the game (F3) to enter sound test mode</comment>
<script state="on">
<action> slave.mw@03D3 = C3 </action> <!-- enable input check -->
<action> slave.mw@0A70 = 0A2B </action> <!-- enable input check -->
<action>master.mw@292D = 7C70 </action>
<action>master.mq@7C70 = 77BEF0043AE00121</action>
<action>master.mq@7C78 = FE35012004FE2BC8</action>
<action>master.mq@7C80 = 042002FE34012008</action>
<action>master.mq@7C88 = 052001FE0618F03E</action>
<action>master.mq@7C90 = 2010FEC97786103E</action>
<action>master.mq@7C98 = 3EC020FE05187E03</action>
<action>master.mq@7CA0 = 000000C9F1483202</action>
<!--
7C70 | 21 01 E0 : ld hl,$E001 // temporary input address
7C73 | 3A 04 F0 : ld a,($F004) // read input
7C76 | BE : cp (hl)
7C77 | 77 : ld (hl),a
7C78 | C8 : ret z
7C79 | 2B : dec hl // sound code address ($E000)
7C7A | FE 04 : cp $04
7C7C | 20 01 : jr nz,$7C7F
7C7E | 35 : dec (hl) // decrease code -01
7C7F | FE 08 : cp $08
7C81 | 20 01 : jr nz,$7C84
7C83 | 34 : inc (hl) // increase code +01
7C84 | FE 02 : cp $02
7C86 | 20 04 : jr nz,$7C8C
7C88 | 3E F0 : ld a,$F0 // decrease code -10
7C8A | 18 06 : jr $7C92
7C8C | FE 01 : cp $01
7C8E | 20 05 : jr nz,$7C95
7C90 | 3E 10 : ld a,$10 // increase code +10
7C92 | 86 : add a,(hl)
7C93 | 77 : ld (hl),a
7C94 | C9 : ret
7C95 | FE 10 : cp $10
7C97 | 20 03 : jr nz,$7C9C
7C99 | 7E : ld a,(hl) // play sound
7C9A | 18 05 : jr $7CA1
7C9C | FE 20 : cp $20
7C9E | C0 : ret nz
7C9F | 3E 02 : ld a,$02 // stop sound
7CA1 | 32 48 F1 : ld ($F148),a // send sound code
7CA4 | C9 : ret
-->
</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>master.pb@E000</argument>
</output>
</script>
<script state="off">
<action> slave.mw@03D3 = CA </action>
<action> slave.mw@0A70 = 0A7A </action>
<action>master.mw@292D = A9FA </action>
<action>master.mq@7C70 = 0000000000000000</action>
<action>master.mq@7C78 = 0000000000000000</action>
<action>master.mq@7C80 = 0000000000000000</action>
<action>master.mq@7C88 = 0000000000000000</action>
<action>master.mq@7C90 = 0000000000000000</action>
<action>master.mq@7C98 = 0000000000000000</action>
<action>master.mq@7CA0 = 0000000000000000</action>
</script>
</cheat>
</mamecheat>