tokio.xml
Code: Select all
<!-- Tokio / Scramble Formation (newer) -->
<mamecheat version="1">
<cheat desc="no hit - player">
<script state="on">
<action>subcpu.mb@493D = C9</action>
</script>
<script state="off">
<action>subcpu.mb@493D = D0</action>
</script>
</cheat>
<cheat desc="no hit - sidefighters">
<comment>also sidefigher attack (button 1 + 2) is "no hit"</comment>
<script state="on">
<action>subcpu.mb@49B1 = 18</action>
</script>
<script state="off">
<action>subcpu.mb@49B1 = 30</action>
</script>
</cheat>
<cheat desc="auto fire">
<script state="on">
<!-- common -->
<action>maincpu.mb@36A8 = 01</action>
<!-- shot -->
<action>maincpu.mb@5F81 = 01</action>
<action>maincpu.mb@5FC5 = 01</action>
<action>maincpu.mb@600E = 01</action>
<action>maincpu.mb@607D = 01</action>
<!-- bomb -->
<action>maincpu.mb@65F9 = 01</action>
</script>
<script state="off">
<action>maincpu.mb@36A8 = 23</action>
<action>maincpu.mb@5F81 = 08</action>
<action>maincpu.mb@5FC5 = 08</action>
<action>maincpu.mb@600E = 08</action>
<action>maincpu.mb@607D = 09</action>
<action>maincpu.mb@65F9 = 0A</action>
</script>
</cheat>
<cheat desc="player speed">
<parameter>
<item value="0x0100">01 (slow)</item>
<item value="0x0200">02 </item>
<item value="0x0400">03 </item>
<item value="0x0600">04 </item>
<item value="0x0800">05 (fast)</item>
</parameter>
<script state="on">
<action>maincpu.mb@4BAC = 11</action> <!-- up -->
<action>maincpu.mb@4BE5 = 11</action> <!-- down -->
<action>maincpu.mb@4C1E = 11</action> <!-- right -->
<action>maincpu.mb@4C53 = 11</action> <!-- left -->
<action>maincpu.mb@4C8D = 11</action> <!-- upper-right -->
<action>maincpu.mb@4CCE = 11</action> <!-- upper-left -->
<action>maincpu.mb@4D11 = 11</action> <!-- lower-right -->
<action>maincpu.mb@4D50 = 11</action> <!-- lower-left -->
</script>
<script state="change">
<action>maincpu.mw@4BAD = param</action>
<action>maincpu.mw@4BE6 = param</action>
<action>maincpu.mw@4C1F = param</action>
<action>maincpu.mw@4C54 = param</action>
<action>maincpu.mw@4C8E = param</action>
<action>maincpu.mw@4CCF = param</action>
<action>maincpu.mw@4D12 = param</action>
<action>maincpu.mw@4D51 = param</action>
</script>
<script state="off">
<action>maincpu.md@4BAC = 2A56235E</action>
<action>maincpu.md@4BE5 = 2A56235E</action>
<action>maincpu.md@4C1E = 2A56235E</action>
<action>maincpu.md@4C53 = 2A56235E</action>
<action>maincpu.md@4C8D = 2A56235E</action>
<action>maincpu.md@4CCE = 2A56235E</action>
<action>maincpu.md@4D11 = 2A56235E</action>
<action>maincpu.md@4D50 = 2A56235E</action>
</script>
</cheat>
<cheat desc="bullet speed - shot">
<parameter>
<item value="0x01">01 (slow)</item>
<item value="0x08">02 </item>
<item value="0x10">03 </item>
<item value="0x18">04 </item>
<item value="0x20">05 (fast)</item>
</parameter>
<script state="change">
<action>maincpu.mb@5DA7 = param</action>
</script>
<script state="off">
<action>maincpu.mb@5DA7 = 07</action>
</script>
</cheat>
<cheat desc="secret item finder (test)">
<!-- unsafe custom routine on banked rom -->
<script state="on">
<action>maincpu.md@07C08 = 209D60CD </action>
<action>maincpu.mq@2DD60 = FEE17E09E61621E5</action>
<action>maincpu.mq@2DD68 = FFFFC906FE7EC8FF</action>
<!--
9D60 | E5 : push hl
9D61 | 21 16 E6 : ld hl,$E616
9D64 | 09 : add hl,bc
9D65 | 7E : ld a,(hl)
9D66 | E1 : pop hl
9D67 | FE FF : cp $FF
9D69 | C8 : ret z
9D6A | 7E : ld a,(hl)
9D6B | FE 06 : cp $06
9D6D | C9 : ret
-->
</script>
<script state="off">
<action>maincpu.md@07C08 = 2006FE7E </action>
<action>maincpu.mq@2DD60 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@2DD68 = 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.mq@00B35 = 009130C3FA8032AF</action>
<action>maincpu.mq@11130 = EF3EFC0011E00021</action>
<action>maincpu.mq@11138 = B8FA063AFA003212</action>
<action>maincpu.mq@11140 = 350120FEFEF62847</action>
<action>maincpu.mq@11148 = 20FBFE340120FDFE</action>
<action>maincpu.mq@11150 = 20F7FE0618F03E04</action>
<action>maincpu.mq@11158 = DFFE787786103E05</action>
<action>maincpu.mq@11160 = 20EFFE78127E0320</action>
<action>maincpu.mq@11168 = FFFFFFCC1812AF02</action>
<!--
0B35 | AF : xor a
0B36 | 32 80 FA : ld ($FA80),a // set bank
0B39 | C3 30 91 : jp $9130
================================
9130 | 21 00 E0 : ld hl,$E000 // sound code address
9133 | 11 00 FC : ld de,$FC00 // sound latch address
9136 | 3E EF : ld a,$EF // enable sound
9138 | 12 : ld (de),a
9139 | 32 00 FA : ld ($FA00),a // watchdog
913C | 3A 06 FA : ld a,($FA06) // read input
913F | B8 : cp b
9140 | 47 : ld b,a
9141 | 28 F6 : jr z,$9139
9143 | FE FE : cp $FE
9145 | 20 01 : jr nz,$9148
9147 | 35 : dec (hl) // decrease code -01
9148 | FE FD : cp $FD
914A | 20 01 : jr nz,$914D
914C | 34 : inc (hl) // increase code +01
914D | FE FB : cp $FB
914F | 20 04 : jr nz,$9155
9151 | 3E F0 : ld a,$F0 // decrease code -10
9153 | 18 06 : jr $915B
9155 | FE F7 : cp $F7
9157 | 20 05 : jr nz,$915E
9159 | 3E 10 : ld a,$10 // increase code +10
915B | 86 : add a,(hl)
915C | 77 : ld (hl),a
915D | 78 : ld a,b
915E | FE DF : cp $DF
9160 | 20 03 : jr nz,$9165
9162 | 7E : ld a,(hl) // play sound
9163 | 12 : ld (de),a
9164 | 78 : ld a,b
9165 | FE EF : cp $EF
9167 | 20 02 : jr nz,$916B
9169 | AF : xor a // stop sound
916A | 12 : ld (de),a
916B | 18 CC : jr $9139
-->
</script>
<script state="run">
<output format="----- scramble formation 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@E000</argument>
</output>
</script>
<script state="off">
<action>maincpu.mq@00B35 = 0000000000000000</action>
<action>maincpu.mq@11130 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@11138 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@11140 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@11148 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@11150 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@11158 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@11160 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@11168 = FFFFFFFFFFFFFFFF</action>
</script>
</cheat>
</mamecheat>
tokioo.xml
Code: Select all
<!-- Tokio / Scramble Formation (older) -->
<mamecheat version="1">
<cheat desc="no hit - player">
<script state="on">
<action>subcpu.mb@493D = C9</action>
</script>
<script state="off">
<action>subcpu.mb@493D = D0</action>
</script>
</cheat>
<cheat desc="no hit - sidefighters">
<comment>also sidefigher attack (button 1 + 2) is "no hit"</comment>
<script state="on">
<action>subcpu.mb@49B1 = 18</action>
</script>
<script state="off">
<action>subcpu.mb@49B1 = 30</action>
</script>
</cheat>
<cheat desc="auto fire">
<script state="on">
<!-- common -->
<action>maincpu.mb@36A8 = 01</action>
<!-- shot -->
<action>maincpu.mb@5F81 = 01</action>
<action>maincpu.mb@5FC5 = 01</action>
<action>maincpu.mb@600E = 01</action>
<action>maincpu.mb@607D = 01</action>
<!-- bomb -->
<action>maincpu.mb@65F9 = 01</action>
</script>
<script state="off">
<action>maincpu.mb@36A8 = 23</action>
<action>maincpu.mb@5F81 = 08</action>
<action>maincpu.mb@5FC5 = 08</action>
<action>maincpu.mb@600E = 08</action>
<action>maincpu.mb@607D = 09</action>
<action>maincpu.mb@65F9 = 0A</action>
</script>
</cheat>
<cheat desc="player speed">
<parameter>
<item value="0x0100">01 (slow)</item>
<item value="0x0200">02 </item>
<item value="0x0400">03 </item>
<item value="0x0600">04 </item>
<item value="0x0800">05 (fast)</item>
</parameter>
<script state="on">
<action>maincpu.mb@4BAC = 11</action> <!-- up -->
<action>maincpu.mb@4BE5 = 11</action> <!-- down -->
<action>maincpu.mb@4C1E = 11</action> <!-- right -->
<action>maincpu.mb@4C53 = 11</action> <!-- left -->
<action>maincpu.mb@4C8D = 11</action> <!-- upper-right -->
<action>maincpu.mb@4CCE = 11</action> <!-- upper-left -->
<action>maincpu.mb@4D11 = 11</action> <!-- lower-right -->
<action>maincpu.mb@4D50 = 11</action> <!-- lower-left -->
</script>
<script state="change">
<action>maincpu.mw@4BAD = param</action>
<action>maincpu.mw@4BE6 = param</action>
<action>maincpu.mw@4C1F = param</action>
<action>maincpu.mw@4C54 = param</action>
<action>maincpu.mw@4C8E = param</action>
<action>maincpu.mw@4CCF = param</action>
<action>maincpu.mw@4D12 = param</action>
<action>maincpu.mw@4D51 = param</action>
</script>
<script state="off">
<action>maincpu.md@4BAC = 2A56235E</action>
<action>maincpu.md@4BE5 = 2A56235E</action>
<action>maincpu.md@4C1E = 2A56235E</action>
<action>maincpu.md@4C53 = 2A56235E</action>
<action>maincpu.md@4C8D = 2A56235E</action>
<action>maincpu.md@4CCE = 2A56235E</action>
<action>maincpu.md@4D11 = 2A56235E</action>
<action>maincpu.md@4D50 = 2A56235E</action>
</script>
</cheat>
<cheat desc="bullet speed - shot">
<parameter>
<item value="0x01">01 (slow)</item>
<item value="0x08">02 </item>
<item value="0x10">03 </item>
<item value="0x18">04 </item>
<item value="0x20">05 (fast)</item>
</parameter>
<script state="change">
<action>maincpu.mb@5DA7 = param</action>
</script>
<script state="off">
<action>maincpu.mb@5DA7 = 07</action>
</script>
</cheat>
<cheat desc="secret item finder (test)">
<!-- unsafe custom routine on banked rom -->
<script state="on">
<action>maincpu.md@07C08 = 209D60CD </action>
<action>maincpu.mq@2DD60 = FEE17E09E61621E5</action>
<action>maincpu.mq@2DD68 = FFFFC906FE7EC8FF</action>
<!--
9D60 | E5 : push hl
9D61 | 21 16 E6 : ld hl,$E616
9D64 | 09 : add hl,bc
9D65 | 7E : ld a,(hl)
9D66 | E1 : pop hl
9D67 | FE FF : cp $FF
9D69 | C8 : ret z
9D6A | 7E : ld a,(hl)
9D6B | FE 06 : cp $06
9D6D | C9 : ret
-->
</script>
<script state="off">
<action>maincpu.md@07C08 = 2006FE7E </action>
<action>maincpu.mq@2DD60 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@2DD68 = 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.mq@00B35 = 009130C3FA8032AF</action>
<action>maincpu.mq@11130 = EF3EFC0011E00021</action>
<action>maincpu.mq@11138 = B8FA063AFA003212</action>
<action>maincpu.mq@11140 = 350120FEFEF62847</action>
<action>maincpu.mq@11148 = 20FBFE340120FDFE</action>
<action>maincpu.mq@11150 = 20F7FE0618F03E04</action>
<action>maincpu.mq@11158 = DFFE787786103E05</action>
<action>maincpu.mq@11160 = 20EFFE78127E0320</action>
<action>maincpu.mq@11168 = FFFFFFCC1812AF02</action>
<!--
0B35 | AF : xor a
0B36 | 32 80 FA : ld ($FA80),a // set bank
0B39 | C3 30 91 : jp $9130
================================
9130 | 21 00 E0 : ld hl,$E000 // sound code address
9133 | 11 00 FC : ld de,$FC00 // sound latch address
9136 | 3E EF : ld a,$EF // enable sound
9138 | 12 : ld (de),a
9139 | 32 00 FA : ld ($FA00),a // watchdog
913C | 3A 06 FA : ld a,($FA06) // read input
913F | B8 : cp b
9140 | 47 : ld b,a
9141 | 28 F6 : jr z,$9139
9143 | FE FE : cp $FE
9145 | 20 01 : jr nz,$9148
9147 | 35 : dec (hl) // decrease code -01
9148 | FE FD : cp $FD
914A | 20 01 : jr nz,$914D
914C | 34 : inc (hl) // increase code +01
914D | FE FB : cp $FB
914F | 20 04 : jr nz,$9155
9151 | 3E F0 : ld a,$F0 // decrease code -10
9153 | 18 06 : jr $915B
9155 | FE F7 : cp $F7
9157 | 20 05 : jr nz,$915E
9159 | 3E 10 : ld a,$10 // increase code +10
915B | 86 : add a,(hl)
915C | 77 : ld (hl),a
915D | 78 : ld a,b
915E | FE DF : cp $DF
9160 | 20 03 : jr nz,$9165
9162 | 7E : ld a,(hl) // play sound
9163 | 12 : ld (de),a
9164 | 78 : ld a,b
9165 | FE EF : cp $EF
9167 | 20 02 : jr nz,$916B
9169 | AF : xor a // stop sound
916A | 12 : ld (de),a
916B | 18 CC : jr $9139
-->
</script>
<script state="run">
<output format="----- scramble formation 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@E000</argument>
</output>
</script>
<script state="off">
<action>maincpu.mq@00B35 = 0000000000000000</action>
<action>maincpu.mq@11130 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@11138 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@11140 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@11148 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@11150 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@11158 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@11160 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@11168 = FFFFFFFFFFFFFFFF</action>
</script>
</cheat>
</mamecheat>
tokiou.xml
Code: Select all
<!-- Tokio / Scramble Formation (US) -->
<mamecheat version="1">
<cheat desc="no hit - player">
<script state="on">
<action>subcpu.mb@493D = C9</action>
</script>
<script state="off">
<action>subcpu.mb@493D = D0</action>
</script>
</cheat>
<cheat desc="no hit - sidefighters">
<comment>also sidefigher attack (button 1 + 2) is "no hit"</comment>
<script state="on">
<action>subcpu.mb@49B1 = 18</action>
</script>
<script state="off">
<action>subcpu.mb@49B1 = 30</action>
</script>
</cheat>
<cheat desc="auto fire">
<script state="on">
<!-- common -->
<action>maincpu.mb@362D = 01</action>
<!-- shot -->
<action>maincpu.mb@5F18 = 01</action>
<action>maincpu.mb@5F5C = 01</action>
<action>maincpu.mb@5FA5 = 01</action>
<action>maincpu.mb@6014 = 01</action>
<!-- bomb -->
<action>maincpu.mb@6590 = 01</action>
</script>
<script state="off">
<action>maincpu.mb@362D = 23</action>
<action>maincpu.mb@5F18 = 08</action>
<action>maincpu.mb@5F5C = 08</action>
<action>maincpu.mb@5FA5 = 08</action>
<action>maincpu.mb@6014 = 09</action>
<action>maincpu.mb@6590 = 0A</action>
</script>
</cheat>
<cheat desc="player speed">
<parameter>
<item value="0x0100">01 (slow)</item>
<item value="0x0200">02 </item>
<item value="0x0400">03 </item>
<item value="0x0600">04 </item>
<item value="0x0800">05 (fast)</item>
</parameter>
<script state="on">
<action>maincpu.mb@4B43 = 11</action> <!-- up -->
<action>maincpu.mb@4B7C = 11</action> <!-- down -->
<action>maincpu.mb@4BB5 = 11</action> <!-- right -->
<action>maincpu.mb@4BEA = 11</action> <!-- left -->
<action>maincpu.mb@4C24 = 11</action> <!-- upper-right -->
<action>maincpu.mb@4C65 = 11</action> <!-- upper-left -->
<action>maincpu.mb@4CA8 = 11</action> <!-- lower-right -->
<action>maincpu.mb@4CE7 = 11</action> <!-- lower-left -->
</script>
<script state="change">
<action>maincpu.mw@4B44 = param</action>
<action>maincpu.mw@4B7D = param</action>
<action>maincpu.mw@4BB6 = param</action>
<action>maincpu.mw@4BEB = param</action>
<action>maincpu.mw@4C25 = param</action>
<action>maincpu.mw@4C66 = param</action>
<action>maincpu.mw@4CA9 = param</action>
<action>maincpu.mw@4CE8 = param</action>
</script>
<script state="off">
<action>maincpu.md@4B43 = 2A56235E</action>
<action>maincpu.md@4B7C = 2A56235E</action>
<action>maincpu.md@4BB5 = 2A56235E</action>
<action>maincpu.md@4BEA = 2A56235E</action>
<action>maincpu.md@4C24 = 2A56235E</action>
<action>maincpu.md@4C65 = 2A56235E</action>
<action>maincpu.md@4CA8 = 2A56235E</action>
<action>maincpu.md@4CE7 = 2A56235E</action>
</script>
</cheat>
<cheat desc="bullet speed - shot">
<parameter>
<item value="0x01">01 (slow)</item>
<item value="0x08">02 </item>
<item value="0x10">03 </item>
<item value="0x18">04 </item>
<item value="0x20">05 (fast)</item>
</parameter>
<script state="change">
<action>maincpu.mb@5D3E = param</action>
</script>
<script state="off">
<action>maincpu.mb@5D3E = 07</action>
</script>
</cheat>
<cheat desc="secret item finder (test)">
<!-- unsafe custom routine on banked rom -->
<script state="on">
<action>maincpu.md@07B9F = 209D60CD </action>
<action>maincpu.mq@2DD60 = FEE17E09E61621E5</action>
<action>maincpu.mq@2DD68 = FFFFC906FE7EC8FF</action>
<!--
9D60 | E5 : push hl
9D61 | 21 16 E6 : ld hl,$E616
9D64 | 09 : add hl,bc
9D65 | 7E : ld a,(hl)
9D66 | E1 : pop hl
9D67 | FE FF : cp $FF
9D69 | C8 : ret z
9D6A | 7E : ld a,(hl)
9D6B | FE 06 : cp $06
9D6D | C9 : ret
-->
</script>
<script state="off">
<action>maincpu.md@07B9F = 2006FE7E </action>
<action>maincpu.mq@2DD60 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@2DD68 = 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.mq@00C15 = 009130C3FA8032AF</action>
<action>maincpu.mq@11130 = EF3EFC0011E00021</action>
<action>maincpu.mq@11138 = B8FA063AFA003212</action>
<action>maincpu.mq@11140 = 350120FEFEF62847</action>
<action>maincpu.mq@11148 = 20FBFE340120FDFE</action>
<action>maincpu.mq@11150 = 20F7FE0618F03E04</action>
<action>maincpu.mq@11158 = DFFE787786103E05</action>
<action>maincpu.mq@11160 = 20EFFE78127E0320</action>
<action>maincpu.mq@11168 = FFFFFFCC1812AF02</action>
<!--
0B35 | AF : xor a
0B36 | 32 80 FA : ld ($FA80),a // set bank
0B39 | C3 30 91 : jp $9130
================================
9130 | 21 00 E0 : ld hl,$E000 // sound code address
9133 | 11 00 FC : ld de,$FC00 // sound latch address
9136 | 3E EF : ld a,$EF // enable sound
9138 | 12 : ld (de),a
9139 | 32 00 FA : ld ($FA00),a // watchdog
913C | 3A 06 FA : ld a,($FA06) // read input
913F | B8 : cp b
9140 | 47 : ld b,a
9141 | 28 F6 : jr z,$9139
9143 | FE FE : cp $FE
9145 | 20 01 : jr nz,$9148
9147 | 35 : dec (hl) // decrease code -01
9148 | FE FD : cp $FD
914A | 20 01 : jr nz,$914D
914C | 34 : inc (hl) // increase code +01
914D | FE FB : cp $FB
914F | 20 04 : jr nz,$9155
9151 | 3E F0 : ld a,$F0 // decrease code -10
9153 | 18 06 : jr $915B
9155 | FE F7 : cp $F7
9157 | 20 05 : jr nz,$915E
9159 | 3E 10 : ld a,$10 // increase code +10
915B | 86 : add a,(hl)
915C | 77 : ld (hl),a
915D | 78 : ld a,b
915E | FE DF : cp $DF
9160 | 20 03 : jr nz,$9165
9162 | 7E : ld a,(hl) // play sound
9163 | 12 : ld (de),a
9164 | 78 : ld a,b
9165 | FE EF : cp $EF
9167 | 20 02 : jr nz,$916B
9169 | AF : xor a // stop sound
916A | 12 : ld (de),a
916B | 18 CC : jr $9139
-->
</script>
<script state="run">
<output format="----- scramble formation 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@E000</argument>
</output>
</script>
<script state="off">
<action>maincpu.mq@00C15 = 0000000000000000</action>
<action>maincpu.mq@11130 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@11138 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@11140 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@11148 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@11150 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@11158 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@11160 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@11168 = FFFFFFFFFFFFFFFF</action>
</script>
</cheat>
</mamecheat>
tokiob.xml
Code: Select all
<!-- Tokio / Scramble Formation (bootleg) -->
<mamecheat version="1">
<cheat desc="no hit - player">
<script state="on">
<action>subcpu.mb@493D = C9</action>
</script>
<script state="off">
<action>subcpu.mb@493D = D0</action>
</script>
</cheat>
<cheat desc="no hit - sidefighters">
<comment>also sidefigher attack (button 1 + 2) is "no hit"</comment>
<script state="on">
<action>subcpu.mb@49B1 = 18</action>
</script>
<script state="off">
<action>subcpu.mb@49B1 = 30</action>
</script>
</cheat>
<cheat desc="auto fire">
<script state="on">
<!-- common -->
<action>maincpu.mb@36A8 = 01</action>
<!-- shot -->
<action>maincpu.mb@5F81 = 01</action>
<action>maincpu.mb@5FC5 = 01</action>
<action>maincpu.mb@600E = 01</action>
<action>maincpu.mb@607D = 01</action>
<!-- bomb -->
<action>maincpu.mb@65F9 = 01</action>
</script>
<script state="off">
<action>maincpu.mb@36A8 = 23</action>
<action>maincpu.mb@5F81 = 08</action>
<action>maincpu.mb@5FC5 = 08</action>
<action>maincpu.mb@600E = 08</action>
<action>maincpu.mb@607D = 09</action>
<action>maincpu.mb@65F9 = 0A</action>
</script>
</cheat>
<cheat desc="player speed">
<parameter>
<item value="0x0100">01 (slow)</item>
<item value="0x0200">02 </item>
<item value="0x0400">03 </item>
<item value="0x0600">04 </item>
<item value="0x0800">05 (fast)</item>
</parameter>
<script state="on">
<action>maincpu.mb@4BAC = 11</action> <!-- up -->
<action>maincpu.mb@4BE5 = 11</action> <!-- down -->
<action>maincpu.mb@4C1E = 11</action> <!-- right -->
<action>maincpu.mb@4C53 = 11</action> <!-- left -->
<action>maincpu.mb@4C8D = 11</action> <!-- upper-right -->
<action>maincpu.mb@4CCE = 11</action> <!-- upper-left -->
<action>maincpu.mb@4D11 = 11</action> <!-- lower-right -->
<action>maincpu.mb@4D50 = 11</action> <!-- lower-left -->
</script>
<script state="change">
<action>maincpu.mw@4BAD = param</action>
<action>maincpu.mw@4BE6 = param</action>
<action>maincpu.mw@4C1F = param</action>
<action>maincpu.mw@4C54 = param</action>
<action>maincpu.mw@4C8E = param</action>
<action>maincpu.mw@4CCF = param</action>
<action>maincpu.mw@4D12 = param</action>
<action>maincpu.mw@4D51 = param</action>
</script>
<script state="off">
<action>maincpu.md@4BAC = 2A56235E</action>
<action>maincpu.md@4BE5 = 2A56235E</action>
<action>maincpu.md@4C1E = 2A56235E</action>
<action>maincpu.md@4C53 = 2A56235E</action>
<action>maincpu.md@4C8D = 2A56235E</action>
<action>maincpu.md@4CCE = 2A56235E</action>
<action>maincpu.md@4D11 = 2A56235E</action>
<action>maincpu.md@4D50 = 2A56235E</action>
</script>
</cheat>
<cheat desc="bullet speed - shot">
<parameter>
<item value="0x01">01 (slow)</item>
<item value="0x08">02 </item>
<item value="0x10">03 </item>
<item value="0x18">04 </item>
<item value="0x20">05 (fast)</item>
</parameter>
<script state="change">
<action>maincpu.mb@5DA7 = param</action>
</script>
<script state="off">
<action>maincpu.mb@5DA7 = 07</action>
</script>
</cheat>
<cheat desc="secret item finder (test)">
<!-- unsafe custom routine on banked rom -->
<script state="on">
<action>maincpu.md@07C08 = 209D60CD </action>
<action>maincpu.mq@2DD60 = FEE17E09E61621E5</action>
<action>maincpu.mq@2DD68 = FFFFC906FE7EC8FF</action>
<!--
9D60 | E5 : push hl
9D61 | 21 16 E6 : ld hl,$E616
9D64 | 09 : add hl,bc
9D65 | 7E : ld a,(hl)
9D66 | E1 : pop hl
9D67 | FE FF : cp $FF
9D69 | C8 : ret z
9D6A | 7E : ld a,(hl)
9D6B | FE 06 : cp $06
9D6D | C9 : ret
-->
</script>
<script state="off">
<action>maincpu.md@07C08 = 2006FE7E </action>
<action>maincpu.mq@2DD60 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@2DD68 = 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.mq@00B35 = 009130C3FA8032AF</action>
<action>maincpu.mq@11130 = EF3EFC0011E00021</action>
<action>maincpu.mq@11138 = B8FA063AFA003212</action>
<action>maincpu.mq@11140 = 350120FEFEF62847</action>
<action>maincpu.mq@11148 = 20FBFE340120FDFE</action>
<action>maincpu.mq@11150 = 20F7FE0618F03E04</action>
<action>maincpu.mq@11158 = DFFE787786103E05</action>
<action>maincpu.mq@11160 = 20EFFE78127E0320</action>
<action>maincpu.mq@11168 = FFFFFFCC1812AF02</action>
<!--
0B35 | AF : xor a
0B36 | 32 80 FA : ld ($FA80),a // set bank
0B39 | C3 30 91 : jp $9130
================================
9130 | 21 00 E0 : ld hl,$E000 // sound code address
9133 | 11 00 FC : ld de,$FC00 // sound latch address
9136 | 3E EF : ld a,$EF // enable sound
9138 | 12 : ld (de),a
9139 | 32 00 FA : ld ($FA00),a // watchdog
913C | 3A 06 FA : ld a,($FA06) // read input
913F | B8 : cp b
9140 | 47 : ld b,a
9141 | 28 F6 : jr z,$9139
9143 | FE FE : cp $FE
9145 | 20 01 : jr nz,$9148
9147 | 35 : dec (hl) // decrease code -01
9148 | FE FD : cp $FD
914A | 20 01 : jr nz,$914D
914C | 34 : inc (hl) // increase code +01
914D | FE FB : cp $FB
914F | 20 04 : jr nz,$9155
9151 | 3E F0 : ld a,$F0 // decrease code -10
9153 | 18 06 : jr $915B
9155 | FE F7 : cp $F7
9157 | 20 05 : jr nz,$915E
9159 | 3E 10 : ld a,$10 // increase code +10
915B | 86 : add a,(hl)
915C | 77 : ld (hl),a
915D | 78 : ld a,b
915E | FE DF : cp $DF
9160 | 20 03 : jr nz,$9165
9162 | 7E : ld a,(hl) // play sound
9163 | 12 : ld (de),a
9164 | 78 : ld a,b
9165 | FE EF : cp $EF
9167 | 20 02 : jr nz,$916B
9169 | AF : xor a // stop sound
916A | 12 : ld (de),a
916B | 18 CC : jr $9139
-->
</script>
<script state="run">
<output format="----- scramble formation 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@E000</argument>
</output>
</script>
<script state="off">
<action>maincpu.mq@00B35 = 3AB9AAE62F7E0436</action>
<action>maincpu.mq@11130 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@11138 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@11140 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@11148 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@11150 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@11158 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@11160 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@11168 = FFFFFFFFFFFFFFFF</action>
</script>
</cheat>
</mamecheat>