Code: Select all
<!-- Gundhara -->
<mamecheat version="1">
<cheat desc="no hit">
<script state="on">
<action>maincpu.mb@19524 = 60</action> <!-- P1 enemy -->
<action>maincpu.mb@195e0 = 60</action> <!-- P2 enemy -->
<action>maincpu.mb@19c32 = 60</action> <!-- bullet -->
<action>maincpu.mb@19c9e = 60</action> <!-- bullet (walker) -->
<action>maincpu.mb@19dfc = 60</action> <!-- P1 missile -->
<action>maincpu.mb@19e5e = 60</action> <!-- P2 missile -->
<action>maincpu.mb@19f96 = 60</action> <!-- P1 bomb -->
<action>maincpu.mb@19ffa = 60</action> <!-- P2 bomb -->
<action>maincpu.mb@1a0c6 = 60</action> <!-- P1 attack -->
<action>maincpu.mb@1a118 = 60</action> <!-- P2 attack -->
<action>maincpu.mb@29eca = 60</action> <!-- P1 enemy (mission 2) -->
<action>maincpu.mb@29f6e = 60</action> <!-- P2 enemy (mission 2) -->
<action>maincpu.mb@2a008 = 60</action> <!-- P1 bullet (mission 2) -->
<action>maincpu.mb@2a052 = 60</action> <!-- P2 bullet (mission 2) -->
</script>
<script state="off">
<action>maincpu.mb@19524 = 6c</action>
<action>maincpu.mb@195e0 = 6c</action>
<action>maincpu.mb@19c32 = 6e</action>
<action>maincpu.mb@19c9e = 6e</action>
<action>maincpu.mb@19dfc = 6d</action>
<action>maincpu.mb@19e5e = 6d</action>
<action>maincpu.mb@19f96 = 6d</action>
<action>maincpu.mb@1a0c6 = 6d</action>
<action>maincpu.mb@1a118 = 6d</action>
<action>maincpu.mb@29eca = 6c</action>
<action>maincpu.mb@29f6e = 6c</action>
<action>maincpu.mb@2a008 = 64</action>
<action>maincpu.mb@2a052 = 64</action>
</script>
</cheat>
<cheat desc="walk through wall">
<script state="on">
<action>maincpu.mb@2514e = 60</action>
</script>
<script state="off">
<action>maincpu.mb@2514e = 67</action>
</script>
</cheat>
<cheat desc="rapid fire">
<script state="on">
<action>maincpu.mb@223bd = 15</action> <!-- vulcan -->
<action>maincpu.mb@22535 = 15</action> <!-- shotgun -->
<action>maincpu.mb@22747 = 15</action> <!-- laser -->
<action>maincpu.mb@228e1 = 15</action> <!-- bazooka -->
<action>maincpu.mb@22a95 = 15</action> <!-- fire -->
<action>maincpu.mb@22bff = 15</action> <!-- kick -->
<action>maincpu.mb@290f7 = 14</action> <!-- P1 shot (mission 2) -->
<action>maincpu.mb@29855 = 14</action> <!-- P2 shot (mission 2) -->
<action>maincpu.mb@4e3d7 = 15</action> <!-- walker (mission 4) -->
</script>
<script state="off">
<action>maincpu.mb@223bd = 1d</action>
<action>maincpu.mb@22535 = 1d</action>
<action>maincpu.mb@22747 = 1d</action>
<action>maincpu.mb@228e1 = 1d</action>
<action>maincpu.mb@22a95 = 1d</action>
<action>maincpu.mb@22bff = 1d</action>
<action>maincpu.mb@290f7 = 1c</action>
<action>maincpu.mb@29855 = 1c</action>
<action>maincpu.mb@4e3d7 = 1d</action>
</script>
</cheat>
<cheat desc="player speed">
<parameter>
<item value="0x0180">01 (slow)</item>
<item value="0x0280">02 </item>
<item value="0x0380">03 </item>
<item value="0x0480">04 </item>
<item value="0x0580">05 (fast)</item>
</parameter>
<script state="on">
<action>maincpu.mq@024e88 = 4eb9001bed104eb9</action>
<action>maincpu.mq@024e90 = 001bed263d710000</action>
<action>maincpu.mq@1bed10 = 363c000034300000</action>
<action>maincpu.mq@1bed18 = 67066a0244433403</action>
<action>maincpu.mq@1bed20 = 3d4236004e75363c</action>
<action>maincpu.mq@1bed28 = 0000343000206706</action>
<action>maincpu.mq@1bed30 = 6a02444334033d42</action>
<action>maincpu.mq@1bed38 = 3c004e7500000000</action>
<!--
1bed10 | 363c xxxx : move.w #$xxxx,D3 // x-position
1bed14 | 3430 0000 : move.w (A0,D0.w),D2
1bed18 | 6706 : beq $1bed20
1bed1a | 6a02 : bpl $1bed1e
1bed1c | 4443 : neg.w D3
1bed1e | 3403 : move.w D3,D2
1bed20 | 3d42 3600 : move.w D2,($3600,A6)
1bed24 | 4e75 : rts
1bed26 | 363c xxxx : move.w #$xxxx,D3 // y-position
1bed2a | 3430 0020 : move.w ($20,A0,D0.w),D2
1bed2e | 6706 : beq $1bed36
1bed30 | 6a02 : bpl $1bed34
1bed32 | 4443 : neg.w D3
1bed34 | 3403 : move.w D3,D2
1bed36 | 3d42 3c00 : move.w D2,($3c00,A6)
1bed3a | 4e75 : rts
-->
</script>
<script state="change">
<action>maincpu.mw@1bed12 = param</action>
<action>maincpu.mw@1bed28 = param</action>
<action>maincpu.mw@028e28 = param</action> <!-- P1 left (mission 2) -->
<action>maincpu.mw@028e46 = -param</action> <!-- P1 right (mission 2) -->
<action>maincpu.mw@028e64 = param</action> <!-- P1 up (mission 2) -->
<action>maincpu.mw@028e80 = -param</action> <!-- P1 down (mission 2) -->
<action>maincpu.mw@029598 = param</action> <!-- P2 left (mission 2) -->
<action>maincpu.mw@0295b6 = -param</action> <!-- P2 right (mission 2) -->
<action>maincpu.mw@0295d4 = param</action> <!-- P2 up (mission 2) -->
<action>maincpu.mw@0295f0 = -param</action> <!-- P2 down (mission 2) -->
</script>
<script state="off">
<action>maincpu.mq@024e88 = 3d70000036003d70</action>
<action>maincpu.mq@024e90 = 00203c003d710000</action>
<action>maincpu.mq@1bed10 = 0000000000000000</action>
<action>maincpu.mq@1bed18 = 0000000000000000</action>
<action>maincpu.mq@1bed20 = 0000000000000000</action>
<action>maincpu.mq@1bed28 = 0000000000000000</action>
<action>maincpu.mq@1bed30 = 0000000000000000</action>
<action>maincpu.mq@1bed38 = 0000000000000000</action>
<action>maincpu.mw@028e28 = 0240</action>
<action>maincpu.mw@028e46 = fdc0</action>
<action>maincpu.mw@028e64 = 0240</action>
<action>maincpu.mw@028e80 = fdc0</action>
<action>maincpu.mw@029598 = 0240</action>
<action>maincpu.mw@0295b6 = fdc0</action>
<action>maincpu.mw@0295d4 = 0240</action>
<action>maincpu.mw@0295f0 = fdc0</action>
</script>
</cheat>
<cheat desc="direct turn">
<script state="on">
<action>maincpu.mb@25045 = 08</action>
<action>maincpu.mb@2504d = 08</action>
</script>
<script state="off">
<action>maincpu.mb@25045 = 2c</action>
<action>maincpu.mb@2504d = 2c</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@043398 = 4ef9001bed404e71</action>
<action>maincpu.mq@1bed40 = 41f9002100001602</action>
<action>maincpu.mq@1bed48 = 143900400001b602</action>
<action>maincpu.mq@1bed50 = 67f40c0200fe6602</action>
<action>maincpu.mq@1bed58 = 53100c0200fd6602</action>
<action>maincpu.mq@1bed60 = 52100c0200f76604</action>
<action>maincpu.mq@1bed68 = 041000100c0200fb</action>
<action>maincpu.mq@1bed70 = 6604061000100c02</action>
<action>maincpu.mq@1bed78 = 00ef662042401010</action>
<action>maincpu.mq@1bed80 = 0c0000116e0c323c</action>
<action>maincpu.mq@1bed88 = 000f4eb90000a1ca</action>
<action>maincpu.mq@1bed90 = 600a040000124eb9</action>
<action>maincpu.mq@1bed98 = 0000a20c0c0200df</action>
<action>maincpu.mq@1beda0 = 660c323c000f4240</action>
<action>maincpu.mq@1beda8 = 4eb90000a1ca6096</action>
<!--
1bed40 | 41f9 0021 0000 : lea $210000.l,A0 // sound code address
1bed46 | 1602 : move.b D2,D3
1bed48 | 1439 0040 0001 : move.b $400001.l,D2 // read input
1bed4e | b602 : cmp.b D2,D3
1bed50 | 67f4 : beq $1bed46
1bed52 | 0c02 00fe : cmpi.b #-$2,D2
1bed56 | 6602 : bne $1bed5a
1bed58 | 5310 : subq.b #1,(A0) // decrease code -01
1bed5a | 0c02 00fd : cmpi.b #-$3,D2
1bed5e | 6602 : bne $1bed62
1bed60 | 5210 : addq.b #1,(A0) // increase code +01
1bed62 | 0c02 00f7 : cmpi.b #-$9,D2
1bed66 | 6604 : bne $1bed6c
1bed68 | 0410 0010 : subi.b #$10,(A0) // decrease code -10
1bed6c | 0c02 00fb : cmpi.b #-$5,D2
1bed70 | 6604 : bne $1bed76
1bed72 | 0610 0010 : addi.b #$10,(A0) // increase code +10
1bed76 | 0c02 00ef : cmpi.b #-$11,D2
1bed7a | 6620 : bne $1bed9c
1bed7c | 4240 : clr.w D0 // play sound
1bed7e | 1010 : move.b (A0),D0
1bed80 | 0c00 0011 : cmpi.b #$11,D0
1bed84 | 6e0c : bgt $1bed92
1bed86 | 323c 000f : move.w #$f,D1
1bed8a | 4eb9 0000 a1ca : jsr $a1ca.l // music
1bed90 | 600a : bra $1bed9c
1bed92 | 0400 0012 : subi.b #$12,D0
1bed96 | 4eb9 0000 a20c : jsr $a20c.l // sfx
1bed9c | 0c02 00df : cmpi.b #-$21,D2
1beda0 | 660c : bne $1bedae
1beda2 | 323c 000f : move.w #$f,D1
1beda6 | 4240 : clr.w D0 // stop sound
1beda8 | 4eb9 0000 a1ca : jsr $a1ca.l
1bedae | 6096 : bra $1bed46
-->
</script>
<script state="run">
<output format="----- gundhara 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@210000</argument>
</output>
</script>
<script state="off">
<action>maincpu.mq@043398 = 083900060020a649</action>
<action>maincpu.mq@1bed40 = 0000000000000000</action>
<action>maincpu.mq@1bed48 = 0000000000000000</action>
<action>maincpu.mq@1bed50 = 0000000000000000</action>
<action>maincpu.mq@1bed58 = 0000000000000000</action>
<action>maincpu.mq@1bed60 = 0000000000000000</action>
<action>maincpu.mq@1bed68 = 0000000000000000</action>
<action>maincpu.mq@1bed70 = 0000000000000000</action>
<action>maincpu.mq@1bed78 = 0000000000000000</action>
<action>maincpu.mq@1bed80 = 0000000000000000</action>
<action>maincpu.mq@1bed88 = 0000000000000000</action>
<action>maincpu.mq@1bed90 = 0000000000000000</action>
<action>maincpu.mq@1bed98 = 0000000000000000</action>
<action>maincpu.mq@1beda0 = 0000000000000000</action>
<action>maincpu.mq@1beda8 = 0000000000000000</action>
</script>
</cheat>
</mamecheat>