legionna.xml
Code: Select all
<!-- Legionnaire (World) -->
<mamecheat version="1">
<cheat desc="no hit">
<script state="on">
<action>maincpu.mb@3D30 = 60</action>
<action>maincpu.mb@4010 = 60</action>
</script>
<script state="off">
<action>maincpu.mb@3D30 = 66</action>
<action>maincpu.mb@4010 = 66</action>
</script>
</cheat>
<cheat desc="auto fire">
<script state="on">
<action>maincpu.mq@04140 = 4EB900049E403028</action> <!-- P1 -->
<action>maincpu.mq@041EE = 4EB900049E543028</action> <!-- P2 -->
<action>maincpu.mq@49E40 = 3E39001092280839</action>
<action>maincpu.mq@49E48 = 0000001092216702</action>
<action>maincpu.mq@49E50 = 3E064E751E390010</action>
<action>maincpu.mq@49E58 = 9228083900000010</action>
<action>maincpu.mq@49E60 = 922167021E064E75</action>
<!--
49E40 | 3E39 0010 9228 : move.w $109228.l, D7 // P1
49E46 | 0839 0000 0010 9221 : btst #$0, $109221.l
49E4E | 6702 : beq $49e52
49E50 | 3E06 : move.w D6, D7
49E52 | 4E75 : rts
49E54 | 1E39 0010 9228 : move.b $109228.l, D7 // P2
49E5A | 0839 0000 0010 9221 : btst #$0, $109221.l
49E62 | 6702 : beq $49e66
49E64 | 1E06 : move.b D6, D7
49E66 | 4E75 : rts
-->
</script>
<script state="off">
<action>maincpu.mq@04140 = 3E39001092283028</action>
<action>maincpu.mq@041EE = 1E39001092283028</action>
<action>maincpu.mq@49E40 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49E48 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49E50 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49E58 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49E60 = FFFFFFFFFFFFFFFF</action>
</script>
</cheat>
<cheat desc="player speed">
<parameter>
<item value="0x00008000">01 (slow)</item>
<item value="0x00018000">02 </item>
<item value="0x00028000">03 </item>
<item value="0x00038000">04 </item>
<item value="0x00048000">05 (fast)</item>
</parameter>
<script state="on">
<!-- chris -->
<action>maincpu.mq@04B90 = 4EB900049E704E71</action> <!-- x position -->
<action>maincpu.mq@04B98 = 4EB900049E884E71</action> <!-- y position -->
<!-- alfred -->
<action>maincpu.mq@05AC8 = 4EB900049E704E71</action> <!-- x position -->
<action>maincpu.mq@05AD0 = 4EB900049E884E71</action> <!-- y position -->
<!-- frank -->
<action>maincpu.mq@0697C = 4EB900049E704E71</action> <!-- x position -->
<action>maincpu.mq@06984 = 4EB900049E884E71</action> <!-- y position -->
<!-- main routine -->
<action>maincpu.mq@49E70 = 243C000000002028</action>
<action>maincpu.mq@49E78 = 004867066A024482</action>
<action>maincpu.mq@49E80 = 2002D0A8003C4E75</action>
<action>maincpu.mq@49E88 = 243C000000002228</action>
<action>maincpu.mq@49E90 = 004467066A024482</action>
<action>maincpu.mq@49E98 = 2202D2A800384E75</action>
<!--
49E70 | 243C xxxx xxxx : move.l #$xxxx, D2 // x position
49E76 | 2028 0048 : move.l ($48,A0), D0
49E7A | 6706 : beq $49e82
49E7C | 6A02 : bpl $49e80
49E7E | 4482 : neg.l D2
49E80 | 2002 : move.l D2, D0
49E82 | D0A8 003C : add.l ($3c,A0), D0
49E86 | 4E75 : rts
49E88 | 243C xxxx xxxx : move.l #$xxxx, D2 // y position
49E8E | 2228 0044 : move.l ($44,A0), D1
49E92 | 6706 : beq $49e9a
49E94 | 6A02 : bpl $49e98
49E96 | 4482 : neg.l D2
49E98 | 2202 : move.l D2, D1
49E9A | D2A8 0038 : add.l ($38,A0), D1
49E9E | 4E75 : rts
-->
</script>
<script state="change">
<action>maincpu.md@49E72 = param</action>
<action>maincpu.md@49E8A = param</action>
</script>
<script state="off">
<action>maincpu.mq@04B90 = 2028003CD0A80048</action>
<action>maincpu.mq@04B98 = 22280038D2A80044</action>
<action>maincpu.mq@05AC8 = 2028003CD0A80048</action>
<action>maincpu.mq@05AD0 = 22280038D2A80044</action>
<action>maincpu.mq@0697C = 2028003CD0A80048</action>
<action>maincpu.mq@06984 = 22280038D2A80044</action>
<action>maincpu.mq@49E70 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49E78 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49E80 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49E88 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49E90 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49E98 = FFFFFFFFFFFFFFFF</action>
</script>
</cheat>
<cheat desc="attack speed up">
<script state="on">
<!-- chris -->
<action>maincpu.md@4EDC = 317C0001</action>
<action>maincpu.md@4F64 = 317C0001</action>
<action>maincpu.md@4FE8 = 317C0001</action>
<action>maincpu.md@5074 = 317C0001</action>
<action>maincpu.md@5104 = 317C0001</action>
<!-- alfred -->
<action>maincpu.md@5E12 = 317C0001</action>
<action>maincpu.md@5E96 = 317C0001</action>
<action>maincpu.md@5F1A = 317C0001</action>
<action>maincpu.md@5FB6 = 317C0001</action>
<!-- frank -->
<action>maincpu.md@6CAA = 317C0001</action>
<action>maincpu.md@6D32 = 317C0001</action>
<action>maincpu.md@6DB6 = 317C0001</action>
<action>maincpu.md@6E42 = 317C0001</action>
</script>
<script state="off">
<action>maincpu.md@4EDC = 317B002C</action>
<action>maincpu.md@4F64 = 317B002C</action>
<action>maincpu.md@4FE8 = 317B002C</action>
<action>maincpu.md@5074 = 317B0030</action>
<action>maincpu.md@5104 = 317B0030</action>
<action>maincpu.md@5E12 = 317B002C</action>
<action>maincpu.md@5E96 = 317B002C</action>
<action>maincpu.md@5F1A = 317B0030</action>
<action>maincpu.md@5FB6 = 317B0030</action>
<action>maincpu.md@6CAA = 317B002C</action>
<action>maincpu.md@6D32 = 317B002C</action>
<action>maincpu.md@6DB6 = 317B0030</action>
<action>maincpu.md@6E42 = 317B0030</action>
</script>
</cheat>
<cheat desc="timer speed">
<parameter>
<item value="0x7fff">01 (slow)</item>
<item value="0x4000">02 </item>
<item value="0x1000">03 </item>
<item value="0x0200">04 </item>
<item value="0x0001">05 (fast)</item>
</parameter>
<script state="change">
<action>maincpu.mw@14D6 = param</action>
</script>
<script state="off">
<action>maincpu.mw@14D6 = 0200</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@00A3A = 00049EA0 </action>
<action>maincpu.mq@49EA0 = 41F9001081004280</action>
<action>maincpu.mq@49EA8 = 123900100745B228</action>
<action>maincpu.mq@49EB0 = 0001673E0C0100FB</action>
<action>maincpu.mq@49EB8 = 660253100C0100F7</action>
<action>maincpu.mq@49EC0 = 660252100C0100FD</action>
<action>maincpu.mq@49EC8 = 6604041000100C01</action>
<action>maincpu.mq@49ED0 = 00FE660406100010</action>
<action>maincpu.mq@49ED8 = 0C0100EF66061010</action>
<action>maincpu.mq@49EE0 = 6710600A0C0100DF</action>
<action>maincpu.mq@49EE8 = 6608303CFFFF4EB8</action>
<action>maincpu.mq@49EF0 = 0BA2114100014E75</action>
<!--
49EA0 | 41F9 0010 8100 : lea $108100.l, A0 // sound code address
49EA6 | 4280 : clr.l D0
49EA8 | 1239 0010 0745 : move.b $100745.l, D1 // read input
49EAE | B228 0001 : cmp.b ($1,A0), D1
49EB2 | 673E : beq $49ef2
49EB4 | 0C01 00FB : cmpi.b #-$5, D1
49EB8 | 6602 : bne $49ebc
49EBA | 5310 : subq.b #1, (A0) // decrease code -01
49EBC | 0C01 00F7 : cmpi.b #-$9, D1
49EC0 | 6602 : bne $49ec4
49EC2 | 5210 : addq.b #1, (A0) // increase code +01
49EC4 | 0C01 00FD : cmpi.b #-$3, D1
49EC8 | 6604 : bne $49ece
49ECA | 0410 0010 : subi.b #$10, (A0) // decrease code -10
49ECE | 0C01 00FE : cmpi.b #-$2, D1
49ED2 | 6604 : bne $49ed8
49ED4 | 0610 0010 : addi.b #$10, (A0) // increase code +10
49ED8 | 0C01 00EF : cmpi.b #-$11, D1
49EDC | 6606 : bne $49ee4
49EDE | 1010 : move.b (A0), D0 // play sound
49EE0 | 6710 : beq $49ef2 // ignore code 0x00
49EE2 | 600A : bra $49eee
49EE4 | 0C01 00DF : cmpi.b #-$21, D1
49EE8 | 6608 : bne $49ef2
49EEA | 303C FFFF : move.w #$ffff, D0 // stop sound
49EEE | 4EB8 0BA2 : jsr $ba2.w // send sound code
49EF2 | 1141 0001 : move.b D1, ($1,A0)
49EF6 | 4E75 : rts
-->
</script>
<script state="run">
<output format="----- legionnaire 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@108100</argument>
</output>
</script>
<script state="off">
<action>maincpu.md@00A3A = 0001F0A8 </action>
<action>maincpu.mq@49EA0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49EA8 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49EB0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49EB8 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49EC0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49EC8 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49ED0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49ED8 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49EE0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49EE8 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49EF0 = FFFFFFFFFFFFFFFF</action>
</script>
</cheat>
</mamecheat>
legionnau.xml
Code: Select all
<!-- Legionnaire (US) -->
<mamecheat version="1">
<cheat desc="no hit">
<script state="on">
<action>maincpu.mb@3D30 = 60</action>
<action>maincpu.mb@4010 = 60</action>
</script>
<script state="off">
<action>maincpu.mb@3D30 = 66</action>
<action>maincpu.mb@4010 = 66</action>
</script>
</cheat>
<cheat desc="auto fire">
<script state="on">
<action>maincpu.mq@04140 = 4EB900049E403028</action> <!-- P1 -->
<action>maincpu.mq@041EE = 4EB900049E543028</action> <!-- P2 -->
<action>maincpu.mq@49E40 = 3E39001092280839</action>
<action>maincpu.mq@49E48 = 0000001092216702</action>
<action>maincpu.mq@49E50 = 3E064E751E390010</action>
<action>maincpu.mq@49E58 = 9228083900000010</action>
<action>maincpu.mq@49E60 = 922167021E064E75</action>
<!--
49E40 | 3E39 0010 9228 : move.w $109228.l, D7 // P1
49E46 | 0839 0000 0010 9221 : btst #$0, $109221.l
49E4E | 6702 : beq $49e52
49E50 | 3E06 : move.w D6, D7
49E52 | 4E75 : rts
49E54 | 1E39 0010 9228 : move.b $109228.l, D7 // P2
49E5A | 0839 0000 0010 9221 : btst #$0, $109221.l
49E62 | 6702 : beq $49e66
49E64 | 1E06 : move.b D6, D7
49E66 | 4E75 : rts
-->
</script>
<script state="off">
<action>maincpu.mq@04140 = 3E39001092283028</action>
<action>maincpu.mq@041EE = 1E39001092283028</action>
<action>maincpu.mq@49E40 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49E48 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49E50 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49E58 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49E60 = FFFFFFFFFFFFFFFF</action>
</script>
</cheat>
<cheat desc="player speed">
<parameter>
<item value="0x00008000">01 (slow)</item>
<item value="0x00018000">02 </item>
<item value="0x00028000">03 </item>
<item value="0x00038000">04 </item>
<item value="0x00048000">05 (fast)</item>
</parameter>
<script state="on">
<!-- chris -->
<action>maincpu.mq@04B90 = 4EB900049E704E71</action> <!-- x position -->
<action>maincpu.mq@04B98 = 4EB900049E884E71</action> <!-- y position -->
<!-- alfred -->
<action>maincpu.mq@05AC8 = 4EB900049E704E71</action> <!-- x position -->
<action>maincpu.mq@05AD0 = 4EB900049E884E71</action> <!-- y position -->
<!-- frank -->
<action>maincpu.mq@0697C = 4EB900049E704E71</action> <!-- x position -->
<action>maincpu.mq@06984 = 4EB900049E884E71</action> <!-- y position -->
<!-- main routine -->
<action>maincpu.mq@49E70 = 243C000000002028</action>
<action>maincpu.mq@49E78 = 004867066A024482</action>
<action>maincpu.mq@49E80 = 2002D0A8003C4E75</action>
<action>maincpu.mq@49E88 = 243C000000002228</action>
<action>maincpu.mq@49E90 = 004467066A024482</action>
<action>maincpu.mq@49E98 = 2202D2A800384E75</action>
<!--
49E70 | 243C xxxx xxxx : move.l #$xxxx, D2 // x position
49E76 | 2028 0048 : move.l ($48,A0), D0
49E7A | 6706 : beq $49e82
49E7C | 6A02 : bpl $49e80
49E7E | 4482 : neg.l D2
49E80 | 2002 : move.l D2, D0
49E82 | D0A8 003C : add.l ($3c,A0), D0
49E86 | 4E75 : rts
49E88 | 243C xxxx xxxx : move.l #$xxxx, D2 // y position
49E8E | 2228 0044 : move.l ($44,A0), D1
49E92 | 6706 : beq $49e9a
49E94 | 6A02 : bpl $49e98
49E96 | 4482 : neg.l D2
49E98 | 2202 : move.l D2, D1
49E9A | D2A8 0038 : add.l ($38,A0), D1
49E9E | 4E75 : rts
-->
</script>
<script state="change">
<action>maincpu.md@49E72 = param</action>
<action>maincpu.md@49E8A = param</action>
</script>
<script state="off">
<action>maincpu.mq@04B90 = 2028003CD0A80048</action>
<action>maincpu.mq@04B98 = 22280038D2A80044</action>
<action>maincpu.mq@05AC8 = 2028003CD0A80048</action>
<action>maincpu.mq@05AD0 = 22280038D2A80044</action>
<action>maincpu.mq@0697C = 2028003CD0A80048</action>
<action>maincpu.mq@06984 = 22280038D2A80044</action>
<action>maincpu.mq@49E70 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49E78 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49E80 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49E88 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49E90 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49E98 = FFFFFFFFFFFFFFFF</action>
</script>
</cheat>
<cheat desc="attack speed up">
<script state="on">
<!-- chris -->
<action>maincpu.md@4EDC = 317C0001</action>
<action>maincpu.md@4F64 = 317C0001</action>
<action>maincpu.md@4FE8 = 317C0001</action>
<action>maincpu.md@5074 = 317C0001</action>
<action>maincpu.md@5104 = 317C0001</action>
<!-- alfred -->
<action>maincpu.md@5E12 = 317C0001</action>
<action>maincpu.md@5E96 = 317C0001</action>
<action>maincpu.md@5F1A = 317C0001</action>
<action>maincpu.md@5FB6 = 317C0001</action>
<!-- frank -->
<action>maincpu.md@6CAA = 317C0001</action>
<action>maincpu.md@6D32 = 317C0001</action>
<action>maincpu.md@6DB6 = 317C0001</action>
<action>maincpu.md@6E42 = 317C0001</action>
</script>
<script state="off">
<action>maincpu.md@4EDC = 317B002C</action>
<action>maincpu.md@4F64 = 317B002C</action>
<action>maincpu.md@4FE8 = 317B002C</action>
<action>maincpu.md@5074 = 317B0030</action>
<action>maincpu.md@5104 = 317B0030</action>
<action>maincpu.md@5E12 = 317B002C</action>
<action>maincpu.md@5E96 = 317B002C</action>
<action>maincpu.md@5F1A = 317B0030</action>
<action>maincpu.md@5FB6 = 317B0030</action>
<action>maincpu.md@6CAA = 317B002C</action>
<action>maincpu.md@6D32 = 317B002C</action>
<action>maincpu.md@6DB6 = 317B0030</action>
<action>maincpu.md@6E42 = 317B0030</action>
</script>
</cheat>
<cheat desc="timer speed">
<parameter>
<item value="0x7fff">01 (slow)</item>
<item value="0x4000">02 </item>
<item value="0x1000">03 </item>
<item value="0x0200">04 </item>
<item value="0x0001">05 (fast)</item>
</parameter>
<script state="change">
<action>maincpu.mw@14D6 = param</action>
</script>
<script state="off">
<action>maincpu.mw@14D6 = 0200</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@00A3A = 00049EA0 </action>
<action>maincpu.mq@49EA0 = 41F9001081004280</action>
<action>maincpu.mq@49EA8 = 123900100745B228</action>
<action>maincpu.mq@49EB0 = 0001673E0C0100FB</action>
<action>maincpu.mq@49EB8 = 660253100C0100F7</action>
<action>maincpu.mq@49EC0 = 660252100C0100FD</action>
<action>maincpu.mq@49EC8 = 6604041000100C01</action>
<action>maincpu.mq@49ED0 = 00FE660406100010</action>
<action>maincpu.mq@49ED8 = 0C0100EF66061010</action>
<action>maincpu.mq@49EE0 = 6710600A0C0100DF</action>
<action>maincpu.mq@49EE8 = 6608303CFFFF4EB8</action>
<action>maincpu.mq@49EF0 = 0BA2114100014E75</action>
<!--
49EA0 | 41F9 0010 8100 : lea $108100.l, A0 // sound code address
49EA6 | 4280 : clr.l D0
49EA8 | 1239 0010 0745 : move.b $100745.l, D1 // read input
49EAE | B228 0001 : cmp.b ($1,A0), D1
49EB2 | 673E : beq $49ef2
49EB4 | 0C01 00FB : cmpi.b #-$5, D1
49EB8 | 6602 : bne $49ebc
49EBA | 5310 : subq.b #1, (A0) // decrease code -01
49EBC | 0C01 00F7 : cmpi.b #-$9, D1
49EC0 | 6602 : bne $49ec4
49EC2 | 5210 : addq.b #1, (A0) // increase code +01
49EC4 | 0C01 00FD : cmpi.b #-$3, D1
49EC8 | 6604 : bne $49ece
49ECA | 0410 0010 : subi.b #$10, (A0) // decrease code -10
49ECE | 0C01 00FE : cmpi.b #-$2, D1
49ED2 | 6604 : bne $49ed8
49ED4 | 0610 0010 : addi.b #$10, (A0) // increase code +10
49ED8 | 0C01 00EF : cmpi.b #-$11, D1
49EDC | 6606 : bne $49ee4
49EDE | 1010 : move.b (A0), D0 // play sound
49EE0 | 6710 : beq $49ef2 // ignore code 0x00
49EE2 | 600A : bra $49eee
49EE4 | 0C01 00DF : cmpi.b #-$21, D1
49EE8 | 6608 : bne $49ef2
49EEA | 303C FFFF : move.w #$ffff, D0 // stop sound
49EEE | 4EB8 0BA2 : jsr $ba2.w // send sound code
49EF2 | 1141 0001 : move.b D1, ($1,A0)
49EF6 | 4E75 : rts
-->
</script>
<script state="run">
<output format="----- legionnaire 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@108100</argument>
</output>
</script>
<script state="off">
<action>maincpu.md@00A3A = 0001F0A8 </action>
<action>maincpu.mq@49EA0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49EA8 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49EB0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49EB8 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49EC0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49EC8 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49ED0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49ED8 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49EE0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49EE8 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49EF0 = FFFFFFFFFFFFFFFF</action>
</script>
</cheat>
</mamecheat>
legionnaj.xml
Code: Select all
<!-- Legionnaire (Japan) -->
<mamecheat version="1">
<cheat desc="no hit">
<script state="on">
<action>maincpu.mb@3D30 = 60</action>
<action>maincpu.mb@4010 = 60</action>
</script>
<script state="off">
<action>maincpu.mb@3D30 = 66</action>
<action>maincpu.mb@4010 = 66</action>
</script>
</cheat>
<cheat desc="auto fire">
<script state="on">
<action>maincpu.mq@04140 = 4EB900049E403028</action> <!-- P1 -->
<action>maincpu.mq@041EE = 4EB900049E543028</action> <!-- P2 -->
<action>maincpu.mq@49E40 = 3E39001092280839</action>
<action>maincpu.mq@49E48 = 0000001092216702</action>
<action>maincpu.mq@49E50 = 3E064E751E390010</action>
<action>maincpu.mq@49E58 = 9228083900000010</action>
<action>maincpu.mq@49E60 = 922167021E064E75</action>
<!--
49E40 | 3E39 0010 9228 : move.w $109228.l, D7 // P1
49E46 | 0839 0000 0010 9221 : btst #$0, $109221.l
49E4E | 6702 : beq $49e52
49E50 | 3E06 : move.w D6, D7
49E52 | 4E75 : rts
49E54 | 1E39 0010 9228 : move.b $109228.l, D7 // P2
49E5A | 0839 0000 0010 9221 : btst #$0, $109221.l
49E62 | 6702 : beq $49e66
49E64 | 1E06 : move.b D6, D7
49E66 | 4E75 : rts
-->
</script>
<script state="off">
<action>maincpu.mq@04140 = 3E39001092283028</action>
<action>maincpu.mq@041EE = 1E39001092283028</action>
<action>maincpu.mq@49E40 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49E48 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49E50 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49E58 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49E60 = FFFFFFFFFFFFFFFF</action>
</script>
</cheat>
<cheat desc="player speed">
<parameter>
<item value="0x00008000">01 (slow)</item>
<item value="0x00018000">02 </item>
<item value="0x00028000">03 </item>
<item value="0x00038000">04 </item>
<item value="0x00048000">05 (fast)</item>
</parameter>
<script state="on">
<!-- chris -->
<action>maincpu.mq@04B90 = 4EB900049E704E71</action> <!-- x position -->
<action>maincpu.mq@04B98 = 4EB900049E884E71</action> <!-- y position -->
<!-- alfred -->
<action>maincpu.mq@05AC8 = 4EB900049E704E71</action> <!-- x position -->
<action>maincpu.mq@05AD0 = 4EB900049E884E71</action> <!-- y position -->
<!-- frank -->
<action>maincpu.mq@0697C = 4EB900049E704E71</action> <!-- x position -->
<action>maincpu.mq@06984 = 4EB900049E884E71</action> <!-- y position -->
<!-- main routine -->
<action>maincpu.mq@49E70 = 243C000000002028</action>
<action>maincpu.mq@49E78 = 004867066A024482</action>
<action>maincpu.mq@49E80 = 2002D0A8003C4E75</action>
<action>maincpu.mq@49E88 = 243C000000002228</action>
<action>maincpu.mq@49E90 = 004467066A024482</action>
<action>maincpu.mq@49E98 = 2202D2A800384E75</action>
<!--
49E70 | 243C xxxx xxxx : move.l #$xxxx, D2 // x position
49E76 | 2028 0048 : move.l ($48,A0), D0
49E7A | 6706 : beq $49e82
49E7C | 6A02 : bpl $49e80
49E7E | 4482 : neg.l D2
49E80 | 2002 : move.l D2, D0
49E82 | D0A8 003C : add.l ($3c,A0), D0
49E86 | 4E75 : rts
49E88 | 243C xxxx xxxx : move.l #$xxxx, D2 // y position
49E8E | 2228 0044 : move.l ($44,A0), D1
49E92 | 6706 : beq $49e9a
49E94 | 6A02 : bpl $49e98
49E96 | 4482 : neg.l D2
49E98 | 2202 : move.l D2, D1
49E9A | D2A8 0038 : add.l ($38,A0), D1
49E9E | 4E75 : rts
-->
</script>
<script state="change">
<action>maincpu.md@49E72 = param</action>
<action>maincpu.md@49E8A = param</action>
</script>
<script state="off">
<action>maincpu.mq@04B90 = 2028003CD0A80048</action>
<action>maincpu.mq@04B98 = 22280038D2A80044</action>
<action>maincpu.mq@05AC8 = 2028003CD0A80048</action>
<action>maincpu.mq@05AD0 = 22280038D2A80044</action>
<action>maincpu.mq@0697C = 2028003CD0A80048</action>
<action>maincpu.mq@06984 = 22280038D2A80044</action>
<action>maincpu.mq@49E70 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49E78 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49E80 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49E88 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49E90 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49E98 = FFFFFFFFFFFFFFFF</action>
</script>
</cheat>
<cheat desc="attack speed up">
<script state="on">
<!-- chris -->
<action>maincpu.md@4EDC = 317C0001</action>
<action>maincpu.md@4F64 = 317C0001</action>
<action>maincpu.md@4FE8 = 317C0001</action>
<action>maincpu.md@5074 = 317C0001</action>
<action>maincpu.md@5104 = 317C0001</action>
<!-- alfred -->
<action>maincpu.md@5E12 = 317C0001</action>
<action>maincpu.md@5E96 = 317C0001</action>
<action>maincpu.md@5F1A = 317C0001</action>
<action>maincpu.md@5FB6 = 317C0001</action>
<!-- frank -->
<action>maincpu.md@6CAA = 317C0001</action>
<action>maincpu.md@6D32 = 317C0001</action>
<action>maincpu.md@6DB6 = 317C0001</action>
<action>maincpu.md@6E42 = 317C0001</action>
</script>
<script state="off">
<action>maincpu.md@4EDC = 317B002C</action>
<action>maincpu.md@4F64 = 317B002C</action>
<action>maincpu.md@4FE8 = 317B002C</action>
<action>maincpu.md@5074 = 317B0030</action>
<action>maincpu.md@5104 = 317B0030</action>
<action>maincpu.md@5E12 = 317B002C</action>
<action>maincpu.md@5E96 = 317B002C</action>
<action>maincpu.md@5F1A = 317B0030</action>
<action>maincpu.md@5FB6 = 317B0030</action>
<action>maincpu.md@6CAA = 317B002C</action>
<action>maincpu.md@6D32 = 317B002C</action>
<action>maincpu.md@6DB6 = 317B0030</action>
<action>maincpu.md@6E42 = 317B0030</action>
</script>
</cheat>
<cheat desc="timer speed">
<parameter>
<item value="0x7fff">01 (slow)</item>
<item value="0x4000">02 </item>
<item value="0x1000">03 </item>
<item value="0x0200">04 </item>
<item value="0x0001">05 (fast)</item>
</parameter>
<script state="change">
<action>maincpu.mw@14D6 = param</action>
</script>
<script state="off">
<action>maincpu.mw@14D6 = 0200</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@00A3A = 00049EA0 </action>
<action>maincpu.mq@49EA0 = 41F9001081004280</action>
<action>maincpu.mq@49EA8 = 123900100745B228</action>
<action>maincpu.mq@49EB0 = 0001673E0C0100FB</action>
<action>maincpu.mq@49EB8 = 660253100C0100F7</action>
<action>maincpu.mq@49EC0 = 660252100C0100FD</action>
<action>maincpu.mq@49EC8 = 6604041000100C01</action>
<action>maincpu.mq@49ED0 = 00FE660406100010</action>
<action>maincpu.mq@49ED8 = 0C0100EF66061010</action>
<action>maincpu.mq@49EE0 = 6710600A0C0100DF</action>
<action>maincpu.mq@49EE8 = 6608303CFFFF4EB8</action>
<action>maincpu.mq@49EF0 = 0BA2114100014E75</action>
<!--
49EA0 | 41F9 0010 8100 : lea $108100.l, A0 // sound code address
49EA6 | 4280 : clr.l D0
49EA8 | 1239 0010 0745 : move.b $100745.l, D1 // read input
49EAE | B228 0001 : cmp.b ($1,A0), D1
49EB2 | 673E : beq $49ef2
49EB4 | 0C01 00FB : cmpi.b #-$5, D1
49EB8 | 6602 : bne $49ebc
49EBA | 5310 : subq.b #1, (A0) // decrease code -01
49EBC | 0C01 00F7 : cmpi.b #-$9, D1
49EC0 | 6602 : bne $49ec4
49EC2 | 5210 : addq.b #1, (A0) // increase code +01
49EC4 | 0C01 00FD : cmpi.b #-$3, D1
49EC8 | 6604 : bne $49ece
49ECA | 0410 0010 : subi.b #$10, (A0) // decrease code -10
49ECE | 0C01 00FE : cmpi.b #-$2, D1
49ED2 | 6604 : bne $49ed8
49ED4 | 0610 0010 : addi.b #$10, (A0) // increase code +10
49ED8 | 0C01 00EF : cmpi.b #-$11, D1
49EDC | 6606 : bne $49ee4
49EDE | 1010 : move.b (A0), D0 // play sound
49EE0 | 6710 : beq $49ef2 // ignore code 0x00
49EE2 | 600A : bra $49eee
49EE4 | 0C01 00DF : cmpi.b #-$21, D1
49EE8 | 6608 : bne $49ef2
49EEA | 303C FFFF : move.w #$ffff, D0 // stop sound
49EEE | 4EB8 0BA2 : jsr $ba2.w // send sound code
49EF2 | 1141 0001 : move.b D1, ($1,A0)
49EF6 | 4E75 : rts
-->
</script>
<script state="run">
<output format="----- legionnaire 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@108100</argument>
</output>
</script>
<script state="off">
<action>maincpu.md@00A3A = 0001F0A8 </action>
<action>maincpu.mq@49EA0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49EA8 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49EB0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49EB8 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49EC0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49EC8 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49ED0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49ED8 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49EE0 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49EE8 = FFFFFFFFFFFFFFFF</action>
<action>maincpu.mq@49EF0 = FFFFFFFFFFFFFFFF</action>
</script>
</cheat>
</mamecheat>
"player speed" : Added new.