Page 1 of 1

[vigilantd] Vigilante

Posted: Mon May 16, 2022 9:43 am
by jman

Code: Select all

<cheat desc="no hit">
    <script state="on">
        <action>maincpu.mb@306a =   c9</action> <!-- catch (enemy) -->
        <action>maincpu.mb@3487 =   c9</action> <!-- catch (boss) -->
        <action>maincpu.mb@55d9 =   c2</action> <!-- catch (final boss) -->
        <action>maincpu.mw@6016 = 60d7</action> <!-- weapon -->
        <action>maincpu.mb@6057 =   c9</action> <!-- enemy -->
        <action>maincpu.mb@7c18 =   00</action> <!-- catch (enemy in stage 5) -->
    </script>
    <script state="off">
        <action>maincpu.mb@306a =   d0</action>
        <action>maincpu.mb@3487 =   cd</action>
        <action>maincpu.mb@55d9 =   c6</action>
        <action>maincpu.mw@6016 = 5fac</action>
        <action>maincpu.mb@6057 =   c8</action>
        <action>maincpu.mb@7c18 =   65</action>
    </script>
</cheat>

<cheat desc="auto fire">
    <script state="on">
        <action>maincpu.mw@283e =             7da0</action> <!-- stand -->
        <action>maincpu.mw@2893 =             7da0</action> <!-- crouch -->
        <action>maincpu.mw@28be =             7da0</action> <!-- ? -->
        <action>maincpu.mw@2b04 =             7da0</action> <!-- jump -->
        <action>maincpu.mq@7da0 = ffc9e0313a23f6cd</action>
        <!--
        7da0 | cd f6 23 : call $23F6
        7da3 | 3a 31 e0 : ld   a,($E031)
        7da6 | c9       : ret
        -->
    </script>
    <script state="off">
        <action>maincpu.mw@283e =             23f6</action>
        <action>maincpu.mw@2893 =             23f6</action>
        <action>maincpu.mw@28be =             23f6</action>
        <action>maincpu.mw@2b04 =             23f6</action>
        <action>maincpu.mq@7da0 = ffffffffffffffff</action>
    </script>
</cheat>

<cheat desc="attack speed up">
    <script state="on">
        <action>maincpu.mb@19128 = ff</action> <!-- punch -->
        <action>maincpu.mb@19149 = 7f</action> <!-- kick -->
        <action>maincpu.mb@1917b = ff</action> <!-- punch (jump) -->
        <action>maincpu.mb@1919c = ff</action> <!-- kick (jump) -->
        <action>maincpu.mb@191c0 = 7f</action> <!-- kick (crouch) -->
        <action>maincpu.mb@191d1 = ff</action> <!-- punch (crouch) -->
        <action>maincpu.mb@191f5 = 7f</action> <!-- nunchaku -->
        <action>maincpu.mb@19209 = 7f</action> <!-- nunchaku (crouch) -->
        <action>maincpu.mb@1921a = ff</action> <!-- nunchaku (jump) -->
    </script>
    <script state="off">
        <action>maincpu.mb@19128 = f6</action>
        <action>maincpu.mb@19149 = 76</action>
        <action>maincpu.mb@1917b = f7</action>
        <action>maincpu.mb@1919c = f7</action>
        <action>maincpu.mb@191c0 = 76</action>
        <action>maincpu.mb@191d1 = f6</action>
        <action>maincpu.mb@191f5 = 79</action>
        <action>maincpu.mb@19209 = 79</action>
        <action>maincpu.mb@1921a = f9</action>
    </script>
</cheat>

<cheat desc="timer speed">
    <parameter>
        <item value="0xff">01 (slow)</item>
        <item value="0xc0">02       </item>
        <item value="0x80">03       </item>
        <item value="0x40">04       </item>
        <item value="0x01">05 (fast)</item>
    </parameter>
    <script state="change">
        <action>maincpu.mb@5a20 = param</action>
    </script>
    <script state="off">
        <action>maincpu.mb@5a20 = 5a</action>
    </script>
</cheat>

<cheat desc="sound test mode">
    <comment>reset the game (F3) to enter sound test mode</comment>
    <script state="on">
        <action>maincpu.mw@014d0 =             9830</action>
        <action>maincpu.mq@1d830 = 2847b801dbe20021</action>
        <action>maincpu.mq@1d838 = fefe350120fdfefa</action>
        <action>maincpu.mq@1d840 = 3e0420fbfe340120</action>
        <action>maincpu.mq@1d848 = 3e0620f7fe0618f0</action>
        <action>maincpu.mq@1d850 = 207ffe0f18778610</action>
        <action>maincpu.mq@1d858 = 0420dffe06187e03</action>
        <action>maincpu.mq@1d860 = ffffcd1800d3203e</action>
        <!--
        9830 | 21 00 e2 : ld  hl,$E200 // sound code address
        9833 | db 01    : in  a,($01)  // read input
        9835 | b8       : cp  b
        9836 | 47       : ld  b,a
        9837 | 28 fa    : jr  z,$9833
        9839 | fe fd    : cp  $FD
        983b | 20 01    : jr  nz,$983E
        983d | 35       : dec (hl)     // decrease code -01
        983e | fe fe    : cp  $FE
        9840 | 20 01    : jr  nz,$9843
        9842 | 34       : inc (hl)     // increase code +01
        9843 | fe fb    : cp  $FB
        9845 | 20 04    : jr  nz,$984B
        9847 | 3e f0    : ld  a,$F0    // decrease code -10
        9849 | 18 06    : jr  $9851
        984b | fe f7    : cp  $F7
        984d | 20 06    : jr  nz,$9855
        984f | 3e 10    : ld  a,$10    // increase code +10
        9851 | 86       : add a,(hl)
        9852 | 77       : ld  (hl),a
        9853 | 18 0f    : jr  $9864
        9855 | fe 7f    : cp  $7F
        9857 | 20 03    : jr  nz,$985C
        9859 | 7e       : ld  a,(hl)   // play sound
        985a | 18 06    : jr  $9862
        985c | fe df    : cp  $DF
        985e | 20 04    : jr  nz,$9864
        9860 | 3e 20    : ld  a,$20    // stop sound
        9862 | d3 00    : out ($00),a
        9864 | 18 cd    : jr  $9833
        -->
    </script>
    <script state="run">
        <output format="----- vigilante 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="up : increase code +10"                line="13" align="center" />
        <output format="down : decrease 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="&lt;&lt; sound code %2.2X &gt;&gt;"    line="19" align="center">
            <argument>maincpu.pb@e200</argument>
        </output>
    </script>
    <script state="off">
        <action>maincpu.mw@014d0 =            1885</action>
        <action>maincpu.mq@1d830 = fffffffffffffff</action>
        <action>maincpu.mq@1d838 = fffffffffffffff</action>
        <action>maincpu.mq@1d840 = fffffffffffffff</action>
        <action>maincpu.mq@1d848 = fffffffffffffff</action>
        <action>maincpu.mq@1d850 = fffffffffffffff</action>
    </script>
</cheat>

<cheat desc="skip ram/rom check">
    <script state="on">
        <action>maincpu.mb@14d9 = 4a</action>
    </script>
    <script state="off">
        <action>maincpu.mb@14d9 = 1d</action>
    </script>
</cheat>

[vigilant]+ Vigilante

Posted: Thu Jun 27, 2024 10:08 am
by jman
vigilant.xml

Code: Select all

<!-- Vigilante (World, Rev E) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mb@3031 = C9</action> <!-- catch (enemy) -->
            <action>maincpu.mb@344E = C9</action> <!-- catch (boss) -->
            <action>maincpu.mb@55A1 = 8A</action> <!-- catch (last boss) -->
            <action>maincpu.mb@5FC0 = 84</action> <!-- weapon -->
            <action>maincpu.mb@6001 = C9</action> <!-- enemy -->
            <action>maincpu.mb@7BCE = 00</action> <!-- catch (enemy in stage 5) -->
        </script>
        <script state="off">
            <action>maincpu.mb@3031 = D0</action>
            <action>maincpu.mb@344E = CD</action>
            <action>maincpu.mb@55A1 = 8E</action>
            <action>maincpu.mb@5FC0 = 56</action>
            <action>maincpu.mb@6001 = C8</action>
            <action>maincpu.mb@7BCE = 65</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.mb@23B9 = E7</action>
        </script>
        <script state="off">
            <action>maincpu.mb@23B9 = 47</action>
        </script>
    </cheat>

    <cheat desc="attack speed up">
        <script state="on">
            <action>maincpu.mb@19120 = FF</action> <!-- punch -->
            <action>maincpu.mb@19141 = 7F</action> <!-- kick -->
            <action>maincpu.mb@19173 = FF</action> <!-- punch (jump) -->
            <action>maincpu.mb@19194 = FF</action> <!-- kick (jump) -->
            <action>maincpu.mb@191B8 = 7F</action> <!-- kick (crouch) -->
            <action>maincpu.mb@191C9 = FF</action> <!-- punch (crouch) -->
            <action>maincpu.mb@191ED = 7F</action> <!-- nunchaku -->
            <action>maincpu.mb@19201 = 7F</action> <!-- nunchaku (crouch) -->
            <action>maincpu.mb@19212 = FF</action> <!-- nunchaku (jump) -->
        </script>
        <script state="off">
            <action>maincpu.mb@19120 = F6</action>
            <action>maincpu.mb@19141 = 76</action>
            <action>maincpu.mb@19173 = F7</action>
            <action>maincpu.mb@19194 = F7</action>
            <action>maincpu.mb@191B8 = 76</action>
            <action>maincpu.mb@191C9 = F6</action>
            <action>maincpu.mb@191ED = 79</action>
            <action>maincpu.mb@19201 = 79</action>
            <action>maincpu.mb@19212 = F9</action>
        </script>
    </cheat>

    <cheat desc="timer speed">
        <parameter>
            <item value="0xff">01 (slow)</item>
            <item value="0xc0">02       </item>
            <item value="0x80">03       </item>
            <item value="0x40">04       </item>
            <item value="0x01">05 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.mb@59D4 = param</action>
        </script>
        <script state="off">
            <action>maincpu.mb@59D4 = 78</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <!-- you can't stop samples by sound stop button -->
        <comment>reset the game (F3) to enter sound test mode</comment>
        <script state="on">
            <action>maincpu.mw@0149D = 9720            </action>
            <action>maincpu.mq@1D720 = 2847B801DBE20021</action>
            <action>maincpu.mq@1D728 = FEFE350120FDFEFA</action>
            <action>maincpu.mq@1D730 = 3E0420FBFE340120</action>
            <action>maincpu.mq@1D738 = 3E0620F7FE0618F0</action>
            <action>maincpu.mq@1D740 = 207FFE0F18778610</action>
            <action>maincpu.mq@1D748 = 0420DFFE06187E03</action>
            <action>maincpu.mq@1D750 = FFFFCD1800D3203E</action>
            <!--
            9720 | 21 00 E2 : ld   hl,$E200 // sound code address
            9723 | DB 01    : in   a,($01)  // read input
            9725 | B8       : cp   b
            9726 | 47       : ld   b,a
            9727 | 28 FA    : jr   z,$9723
            9729 | FE FD    : cp   $FD
            972B | 20 01    : jr   nz,$972E
            972D | 35       : dec  (hl)     // decrease code -01
            972E | FE FE    : cp   $FE
            9730 | 20 01    : jr   nz,$9733
            9732 | 34       : inc  (hl)     // increase code +01
            9733 | FE FB    : cp   $FB
            9735 | 20 04    : jr   nz,$973B
            9737 | 3E F0    : ld   a,$F0    // decrease code -10
            9739 | 18 06    : jr   $9741
            973B | FE F7    : cp   $F7
            973D | 20 06    : jr   nz,$9745
            973F | 3E 10    : ld   a,$10    // increase code +10
            9741 | 86       : add  a,(hl)
            9742 | 77       : ld   (hl),a
            9743 | 18 0F    : jr   $9754
            9745 | FE 7F    : cp   $7F
            9747 | 20 03    : jr   nz,$974C
            9749 | 7E       : ld   a,(hl)   // play sound
            974A | 18 06    : jr   $9752
            974C | FE DF    : cp   $DF
            974E | 20 04    : jr   nz,$9754
            9750 | 3E 20    : ld   a,$20    // stop sound
            9752 | D3 00    : out  ($00),a  // send sound code
            9754 | 18 CD    : jr   $9723
            -->
        </script>
        <script state="run">
            <output format="----- vigilante 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="&lt;&lt; sound code %02X &gt;&gt;"     line="19" align="center"  >
                <argument>maincpu.pb@E200</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.mw@0149D = 1847            </action>
            <action>maincpu.mq@1D720 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@1D728 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@1D730 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@1D738 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@1D740 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@1D748 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@1D750 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="skip ram/rom check">
        <script state="on">
            <action>maincpu.mb@14A6 = DE</action>
        </script>
        <script state="off">
            <action>maincpu.mb@14A6 = EA</action>
        </script>
    </cheat>

</mamecheat>
vigilantg.xml

Code: Select all

<!-- Vigilante (US, Rev G) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mb@302F = C9</action> <!-- catch (enemy) -->
            <action>maincpu.mb@344C = C9</action> <!-- catch (boss) -->
            <action>maincpu.mb@55BE = A7</action> <!-- catch (last boss) -->
            <action>maincpu.mb@5FDD = A1</action> <!-- weapon -->
            <action>maincpu.mb@601E = C9</action> <!-- enemy -->
            <action>maincpu.mb@7BEB = 00</action> <!-- catch (enemy in stage 5) -->
        </script>
        <script state="off">
            <action>maincpu.mb@302F = D0</action>
            <action>maincpu.mb@344C = CD</action>
            <action>maincpu.mb@55BE = AB</action>
            <action>maincpu.mb@5FDD = 73</action>
            <action>maincpu.mb@601E = C8</action>
            <action>maincpu.mb@7BEB = 65</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.mb@23B7 = E7</action>
        </script>
        <script state="off">
            <action>maincpu.mb@23B7 = 47</action>
        </script>
    </cheat>

    <cheat desc="attack speed up">
        <script state="on">
            <action>maincpu.mb@19120 = FF</action> <!-- punch -->
            <action>maincpu.mb@19141 = 7F</action> <!-- kick -->
            <action>maincpu.mb@19173 = FF</action> <!-- punch (jump) -->
            <action>maincpu.mb@19194 = FF</action> <!-- kick (jump) -->
            <action>maincpu.mb@191B8 = 7F</action> <!-- kick (crouch) -->
            <action>maincpu.mb@191C9 = FF</action> <!-- punch (crouch) -->
            <action>maincpu.mb@191ED = 7F</action> <!-- nunchaku -->
            <action>maincpu.mb@19201 = 7F</action> <!-- nunchaku (crouch) -->
            <action>maincpu.mb@19212 = FF</action> <!-- nunchaku (jump) -->
        </script>
        <script state="off">
            <action>maincpu.mb@19120 = F6</action>
            <action>maincpu.mb@19141 = 76</action>
            <action>maincpu.mb@19173 = F7</action>
            <action>maincpu.mb@19194 = F7</action>
            <action>maincpu.mb@191B8 = 76</action>
            <action>maincpu.mb@191C9 = F6</action>
            <action>maincpu.mb@191ED = 79</action>
            <action>maincpu.mb@19201 = 79</action>
            <action>maincpu.mb@19212 = F9</action>
        </script>
    </cheat>

    <cheat desc="timer speed">
        <parameter>
            <item value="0xff">01 (slow)</item>
            <item value="0xc0">02       </item>
            <item value="0x80">03       </item>
            <item value="0x40">04       </item>
            <item value="0x01">05 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.mb@59F1 = param</action>
        </script>
        <script state="off">
            <action>maincpu.mb@59F1 = 78</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <!-- you can't stop samples by sound stop button -->
        <comment>reset the game (F3) to enter sound test mode</comment>
        <script state="on">
            <action>maincpu.mw@0149B = 9750            </action>
            <action>maincpu.mq@1D750 = 2847B801DBE20021</action>
            <action>maincpu.mq@1D758 = FEFE350120FDFEFA</action>
            <action>maincpu.mq@1D760 = 3E0420FBFE340120</action>
            <action>maincpu.mq@1D768 = 3E0620F7FE0618F0</action>
            <action>maincpu.mq@1D770 = 207FFE0F18778610</action>
            <action>maincpu.mq@1D778 = 0420DFFE06187E03</action>
            <action>maincpu.mq@1D780 = FFFFCD1800D3203E</action>
            <!--
            9750 | 21 00 E2 : ld   hl,$E200 // sound code address
            9753 | DB 01    : in   a,($01)  // read input
            9755 | B8       : cp   b
            9756 | 47       : ld   b,a
            9757 | 28 FA    : jr   z,$9753
            9759 | FE FD    : cp   $FD
            975B | 20 01    : jr   nz,$975E
            975D | 35       : dec  (hl)     // decrease code -01
            975E | FE FE    : cp   $FE
            9760 | 20 01    : jr   nz,$9763
            9762 | 34       : inc  (hl)     // increase code +01
            9763 | FE FB    : cp   $FB
            9765 | 20 04    : jr   nz,$976B
            9767 | 3E F0    : ld   a,$F0    // decrease code -10
            9769 | 18 06    : jr   $9771
            976B | FE F7    : cp   $F7
            976D | 20 06    : jr   nz,$9775
            976F | 3E 10    : ld   a,$10    // increase code +10
            9771 | 86       : add  a,(hl)
            9772 | 77       : ld   (hl),a
            9773 | 18 0F    : jr   $9784
            9775 | FE 7F    : cp   $7F
            9777 | 20 03    : jr   nz,$977C
            9779 | 7E       : ld   a,(hl)   // play sound
            977A | 18 06    : jr   $9782
            977C | FE DF    : cp   $DF
            977E | 20 04    : jr   nz,$9784
            9780 | 3E 20    : ld   a,$20    // stop sound
            9782 | D3 00    : out  ($00),a  // send sound code
            9784 | 18 CD    : jr   $9753
            -->
        </script>
        <script state="run">
            <output format="----- vigilante 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="&lt;&lt; sound code %02X &gt;&gt;"     line="19" align="center"  >
                <argument>maincpu.pb@E200</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.mw@0149B = 1845            </action>
            <action>maincpu.mq@1D750 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@1D758 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@1D760 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@1D768 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@1D770 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@1D778 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@1D780 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="skip ram/rom check">
        <script state="on">
            <action>maincpu.mb@14A4 = DC</action>
        </script>
        <script state="off">
            <action>maincpu.mb@14A4 = E8</action>
        </script>
    </cheat>

</mamecheat>
vigilanto.xml

Code: Select all

<!-- Vigilante (US) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mb@302F = C9</action> <!-- catch (enemy) -->
            <action>maincpu.mb@344C = C9</action> <!-- catch (boss) -->
            <action>maincpu.mb@559F = 88</action> <!-- catch (last boss) -->
            <action>maincpu.mb@5FBE = 82</action> <!-- weapon -->
            <action>maincpu.mb@5FFF = C9</action> <!-- enemy -->
            <action>maincpu.mb@7BCC = 00</action> <!-- catch (enemy in stage 5) -->
        </script>
        <script state="off">
            <action>maincpu.mb@302F = D0</action>
            <action>maincpu.mb@344C = CD</action>
            <action>maincpu.mb@559F = 8C</action>
            <action>maincpu.mb@5FBE = 54</action>
            <action>maincpu.mb@5FFF = C8</action>
            <action>maincpu.mb@7BCC = 65</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.mb@23B7 = E7</action>
        </script>
        <script state="off">
            <action>maincpu.mb@23B7 = 47</action>
        </script>
    </cheat>

    <cheat desc="attack speed up">
        <script state="on">
            <action>maincpu.mb@19120 = FF</action> <!-- punch -->
            <action>maincpu.mb@19141 = 7F</action> <!-- kick -->
            <action>maincpu.mb@19173 = FF</action> <!-- punch (jump) -->
            <action>maincpu.mb@19194 = FF</action> <!-- kick (jump) -->
            <action>maincpu.mb@191B8 = 7F</action> <!-- kick (crouch) -->
            <action>maincpu.mb@191C9 = FF</action> <!-- punch (crouch) -->
            <action>maincpu.mb@191ED = 7F</action> <!-- nunchaku -->
            <action>maincpu.mb@19201 = 7F</action> <!-- nunchaku (crouch) -->
            <action>maincpu.mb@19212 = FF</action> <!-- nunchaku (jump) -->
        </script>
        <script state="off">
            <action>maincpu.mb@19120 = F6</action>
            <action>maincpu.mb@19141 = 76</action>
            <action>maincpu.mb@19173 = F7</action>
            <action>maincpu.mb@19194 = F7</action>
            <action>maincpu.mb@191B8 = 76</action>
            <action>maincpu.mb@191C9 = F6</action>
            <action>maincpu.mb@191ED = 79</action>
            <action>maincpu.mb@19201 = 79</action>
            <action>maincpu.mb@19212 = F9</action>
        </script>
    </cheat>

    <cheat desc="timer speed">
        <parameter>
            <item value="0xff">01 (slow)</item>
            <item value="0xc0">02       </item>
            <item value="0x80">03       </item>
            <item value="0x40">04       </item>
            <item value="0x01">05 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.mb@59D2 = param</action>
        </script>
        <script state="off">
            <action>maincpu.mb@59D2 = 78</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <!-- you can't stop samples by sound stop button -->
        <comment>reset the game (F3) to enter sound test mode</comment>
        <script state="on">
            <action>maincpu.mw@0149B = 9750            </action>
            <action>maincpu.mq@1D750 = 2847B801DBE20021</action>
            <action>maincpu.mq@1D758 = FEFE350120FDFEFA</action>
            <action>maincpu.mq@1D760 = 3E0420FBFE340120</action>
            <action>maincpu.mq@1D768 = 3E0620F7FE0618F0</action>
            <action>maincpu.mq@1D770 = 207FFE0F18778610</action>
            <action>maincpu.mq@1D778 = 0420DFFE06187E03</action>
            <action>maincpu.mq@1D780 = FFFFCD1800D3203E</action>
            <!--
            9750 | 21 00 E2 : ld   hl,$E200 // sound code address
            9753 | DB 01    : in   a,($01)  // read input
            9755 | B8       : cp   b
            9756 | 47       : ld   b,a
            9757 | 28 FA    : jr   z,$9753
            9759 | FE FD    : cp   $FD
            975B | 20 01    : jr   nz,$975E
            975D | 35       : dec  (hl)     // decrease code -01
            975E | FE FE    : cp   $FE
            9760 | 20 01    : jr   nz,$9763
            9762 | 34       : inc  (hl)     // increase code +01
            9763 | FE FB    : cp   $FB
            9765 | 20 04    : jr   nz,$976B
            9767 | 3E F0    : ld   a,$F0    // decrease code -10
            9769 | 18 06    : jr   $9771
            976B | FE F7    : cp   $F7
            976D | 20 06    : jr   nz,$9775
            976F | 3E 10    : ld   a,$10    // increase code +10
            9771 | 86       : add  a,(hl)
            9772 | 77       : ld   (hl),a
            9773 | 18 0F    : jr   $9784
            9775 | FE 7F    : cp   $7F
            9777 | 20 03    : jr   nz,$977C
            9779 | 7E       : ld   a,(hl)   // play sound
            977A | 18 06    : jr   $9782
            977C | FE DF    : cp   $DF
            977E | 20 04    : jr   nz,$9784
            9780 | 3E 20    : ld   a,$20    // stop sound
            9782 | D3 00    : out  ($00),a  // send sound code
            9784 | 18 CD    : jr   $9753
            -->
        </script>
        <script state="run">
            <output format="----- vigilante 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="&lt;&lt; sound code %02X &gt;&gt;"     line="19" align="center"  >
                <argument>maincpu.pb@E200</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.mw@0149B = 1845            </action>
            <action>maincpu.mq@1D750 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@1D758 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@1D760 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@1D768 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@1D770 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@1D778 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@1D780 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="skip ram/rom check">
        <script state="on">
            <action>maincpu.mb@14A4 = DC</action>
        </script>
        <script state="off">
            <action>maincpu.mb@14A4 = E8</action>
        </script>
    </cheat>

</mamecheat>
vigilanta.xml

Code: Select all

<!-- Vigilante (World, Rev A) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mb@302F = C9</action> <!-- catch (enemy) -->
            <action>maincpu.mb@344C = C9</action> <!-- catch (boss) -->
            <action>maincpu.mb@559F = 88</action> <!-- catch (last boss) -->
            <action>maincpu.mb@5FBE = 82</action> <!-- weapon -->
            <action>maincpu.mb@5FFF = C9</action> <!-- enemy -->
            <action>maincpu.mb@7BCC = 00</action> <!-- catch (enemy in stage 5) -->
        </script>
        <script state="off">
            <action>maincpu.mb@302F = D0</action>
            <action>maincpu.mb@344C = CD</action>
            <action>maincpu.mb@559F = 8C</action>
            <action>maincpu.mb@5FBE = 54</action>
            <action>maincpu.mb@5FFF = C8</action>
            <action>maincpu.mb@7BCC = 65</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.mb@23B7 = E7</action>
        </script>
        <script state="off">
            <action>maincpu.mb@23B7 = 47</action>
        </script>
    </cheat>

    <cheat desc="attack speed up">
        <script state="on">
            <action>maincpu.mb@19120 = FF</action> <!-- punch -->
            <action>maincpu.mb@19141 = 7F</action> <!-- kick -->
            <action>maincpu.mb@19173 = FF</action> <!-- punch (jump) -->
            <action>maincpu.mb@19194 = FF</action> <!-- kick (jump) -->
            <action>maincpu.mb@191B8 = 7F</action> <!-- kick (crouch) -->
            <action>maincpu.mb@191C9 = FF</action> <!-- punch (crouch) -->
            <action>maincpu.mb@191ED = 7F</action> <!-- nunchaku -->
            <action>maincpu.mb@19201 = 7F</action> <!-- nunchaku (crouch) -->
            <action>maincpu.mb@19212 = FF</action> <!-- nunchaku (jump) -->
        </script>
        <script state="off">
            <action>maincpu.mb@19120 = F6</action>
            <action>maincpu.mb@19141 = 76</action>
            <action>maincpu.mb@19173 = F7</action>
            <action>maincpu.mb@19194 = F7</action>
            <action>maincpu.mb@191B8 = 76</action>
            <action>maincpu.mb@191C9 = F6</action>
            <action>maincpu.mb@191ED = 79</action>
            <action>maincpu.mb@19201 = 79</action>
            <action>maincpu.mb@19212 = F9</action>
        </script>
    </cheat>

    <cheat desc="timer speed">
        <parameter>
            <item value="0xff">01 (slow)</item>
            <item value="0xc0">02       </item>
            <item value="0x80">03       </item>
            <item value="0x40">04       </item>
            <item value="0x01">05 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.mb@59D2 = param</action>
        </script>
        <script state="off">
            <action>maincpu.mb@59D2 = 78</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <!-- you can't stop samples by sound stop button -->
        <comment>reset the game (F3) to enter sound test mode</comment>
        <script state="on">
            <action>maincpu.mw@0149B = 9720            </action>
            <action>maincpu.mq@1D720 = 2847B801DBE20021</action>
            <action>maincpu.mq@1D728 = FEFE350120FDFEFA</action>
            <action>maincpu.mq@1D730 = 3E0420FBFE340120</action>
            <action>maincpu.mq@1D738 = 3E0620F7FE0618F0</action>
            <action>maincpu.mq@1D740 = 207FFE0F18778610</action>
            <action>maincpu.mq@1D748 = 0420DFFE06187E03</action>
            <action>maincpu.mq@1D750 = FFFFCD1800D3203E</action>
            <!--
            9720 | 21 00 E2 : ld   hl,$E200 // sound code address
            9723 | DB 01    : in   a,($01)  // read input
            9725 | B8       : cp   b
            9726 | 47       : ld   b,a
            9727 | 28 FA    : jr   z,$9723
            9729 | FE FD    : cp   $FD
            972B | 20 01    : jr   nz,$972E
            972D | 35       : dec  (hl)     // decrease code -01
            972E | FE FE    : cp   $FE
            9730 | 20 01    : jr   nz,$9733
            9732 | 34       : inc  (hl)     // increase code +01
            9733 | FE FB    : cp   $FB
            9735 | 20 04    : jr   nz,$973B
            9737 | 3E F0    : ld   a,$F0    // decrease code -10
            9739 | 18 06    : jr   $9741
            973B | FE F7    : cp   $F7
            973D | 20 06    : jr   nz,$9745
            973F | 3E 10    : ld   a,$10    // increase code +10
            9741 | 86       : add  a,(hl)
            9742 | 77       : ld   (hl),a
            9743 | 18 0F    : jr   $9754
            9745 | FE 7F    : cp   $7F
            9747 | 20 03    : jr   nz,$974C
            9749 | 7E       : ld   a,(hl)   // play sound
            974A | 18 06    : jr   $9752
            974C | FE DF    : cp   $DF
            974E | 20 04    : jr   nz,$9754
            9750 | 3E 20    : ld   a,$20    // stop sound
            9752 | D3 00    : out  ($00),a  // send sound code
            9754 | 18 CD    : jr   $9723
            -->
        </script>
        <script state="run">
            <output format="----- vigilante 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="&lt;&lt; sound code %02X &gt;&gt;"     line="19" align="center"  >
                <argument>maincpu.pb@E200</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.mw@0149B = 1845            </action>
            <action>maincpu.mq@1D720 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@1D728 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@1D730 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@1D738 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@1D740 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@1D748 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@1D750 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="skip ram/rom check">
        <script state="on">
            <action>maincpu.mb@14A4 = DC</action>
        </script>
        <script state="off">
            <action>maincpu.mb@14A4 = E8</action>
        </script>
    </cheat>

</mamecheat>
vigilantb.xml

Code: Select all

<!-- Vigilante (US, Rev B) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mb@302F = C9</action> <!-- catch (enemy) -->
            <action>maincpu.mb@344C = C9</action> <!-- catch (boss) -->
            <action>maincpu.mb@559F = 88</action> <!-- catch (last boss) -->
            <action>maincpu.mb@5FBE = 82</action> <!-- weapon -->
            <action>maincpu.mb@5FFF = C9</action> <!-- enemy -->
            <action>maincpu.mb@7BCC = 00</action> <!-- catch (enemy in stage 5) -->
        </script>
        <script state="off">
            <action>maincpu.mb@302F = D0</action>
            <action>maincpu.mb@344C = CD</action>
            <action>maincpu.mb@559F = 8C</action>
            <action>maincpu.mb@5FBE = 54</action>
            <action>maincpu.mb@5FFF = C8</action>
            <action>maincpu.mb@7BCC = 65</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.mb@23B7 = E7</action>
        </script>
        <script state="off">
            <action>maincpu.mb@23B7 = 47</action>
        </script>
    </cheat>

    <cheat desc="attack speed up">
        <script state="on">
            <action>maincpu.mb@19120 = FF</action> <!-- punch -->
            <action>maincpu.mb@19141 = 7F</action> <!-- kick -->
            <action>maincpu.mb@19173 = FF</action> <!-- punch (jump) -->
            <action>maincpu.mb@19194 = FF</action> <!-- kick (jump) -->
            <action>maincpu.mb@191B8 = 7F</action> <!-- kick (crouch) -->
            <action>maincpu.mb@191C9 = FF</action> <!-- punch (crouch) -->
            <action>maincpu.mb@191ED = 7F</action> <!-- nunchaku -->
            <action>maincpu.mb@19201 = 7F</action> <!-- nunchaku (crouch) -->
            <action>maincpu.mb@19212 = FF</action> <!-- nunchaku (jump) -->
        </script>
        <script state="off">
            <action>maincpu.mb@19120 = F6</action>
            <action>maincpu.mb@19141 = 76</action>
            <action>maincpu.mb@19173 = F7</action>
            <action>maincpu.mb@19194 = F7</action>
            <action>maincpu.mb@191B8 = 76</action>
            <action>maincpu.mb@191C9 = F6</action>
            <action>maincpu.mb@191ED = 79</action>
            <action>maincpu.mb@19201 = 79</action>
            <action>maincpu.mb@19212 = F9</action>
        </script>
    </cheat>

    <cheat desc="timer speed">
        <parameter>
            <item value="0xff">01 (slow)</item>
            <item value="0xc0">02       </item>
            <item value="0x80">03       </item>
            <item value="0x40">04       </item>
            <item value="0x01">05 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.mb@59D2 = param</action>
        </script>
        <script state="off">
            <action>maincpu.mb@59D2 = 78</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <!-- you can't stop samples by sound stop button -->
        <comment>reset the game (F3) to enter sound test mode</comment>
        <script state="on">
            <action>maincpu.mw@0149B = 9750            </action>
            <action>maincpu.mq@1D750 = 2847B801DBE20021</action>
            <action>maincpu.mq@1D758 = FEFE350120FDFEFA</action>
            <action>maincpu.mq@1D760 = 3E0420FBFE340120</action>
            <action>maincpu.mq@1D768 = 3E0620F7FE0618F0</action>
            <action>maincpu.mq@1D770 = 207FFE0F18778610</action>
            <action>maincpu.mq@1D778 = 0420DFFE06187E03</action>
            <action>maincpu.mq@1D780 = FFFFCD1800D3203E</action>
            <!--
            9750 | 21 00 E2 : ld   hl,$E200 // sound code address
            9753 | DB 01    : in   a,($01)  // read input
            9755 | B8       : cp   b
            9756 | 47       : ld   b,a
            9757 | 28 FA    : jr   z,$9753
            9759 | FE FD    : cp   $FD
            975B | 20 01    : jr   nz,$975E
            975D | 35       : dec  (hl)     // decrease code -01
            975E | FE FE    : cp   $FE
            9760 | 20 01    : jr   nz,$9763
            9762 | 34       : inc  (hl)     // increase code +01
            9763 | FE FB    : cp   $FB
            9765 | 20 04    : jr   nz,$976B
            9767 | 3E F0    : ld   a,$F0    // decrease code -10
            9769 | 18 06    : jr   $9771
            976B | FE F7    : cp   $F7
            976D | 20 06    : jr   nz,$9775
            976F | 3E 10    : ld   a,$10    // increase code +10
            9771 | 86       : add  a,(hl)
            9772 | 77       : ld   (hl),a
            9773 | 18 0F    : jr   $9784
            9775 | FE 7F    : cp   $7F
            9777 | 20 03    : jr   nz,$977C
            9779 | 7E       : ld   a,(hl)   // play sound
            977A | 18 06    : jr   $9782
            977C | FE DF    : cp   $DF
            977E | 20 04    : jr   nz,$9784
            9780 | 3E 20    : ld   a,$20    // stop sound
            9782 | D3 00    : out  ($00),a  // send sound code
            9784 | 18 CD    : jr   $9753
            -->
        </script>
        <script state="run">
            <output format="----- vigilante 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="&lt;&lt; sound code %02X &gt;&gt;"     line="19" align="center"  >
                <argument>maincpu.pb@E200</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.mw@0149B = 1845            </action>
            <action>maincpu.mq@1D750 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@1D758 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@1D760 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@1D768 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@1D770 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@1D778 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@1D780 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="skip ram/rom check">
        <script state="on">
            <action>maincpu.mb@14A4 = DC</action>
        </script>
        <script state="off">
            <action>maincpu.mb@14A4 = E8</action>
        </script>
    </cheat>

</mamecheat>
vigilantc.xml

Code: Select all

<!-- Vigilante (World, Rev C) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mb@302F = C9</action> <!-- catch (enemy) -->
            <action>maincpu.mb@344C = C9</action> <!-- catch (boss) -->
            <action>maincpu.mb@559F = 88</action> <!-- catch (last boss) -->
            <action>maincpu.mb@5FBE = 82</action> <!-- weapon -->
            <action>maincpu.mb@5FFF = C9</action> <!-- enemy -->
            <action>maincpu.mb@7BCC = 00</action> <!-- catch (enemy in stage 5) -->
        </script>
        <script state="off">
            <action>maincpu.mb@302F = D0</action>
            <action>maincpu.mb@344C = CD</action>
            <action>maincpu.mb@559F = 8C</action>
            <action>maincpu.mb@5FBE = 54</action>
            <action>maincpu.mb@5FFF = C8</action>
            <action>maincpu.mb@7BCC = 65</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.mb@23B7 = E7</action>
        </script>
        <script state="off">
            <action>maincpu.mb@23B7 = 47</action>
        </script>
    </cheat>

    <cheat desc="attack speed up">
        <script state="on">
            <action>maincpu.mb@19120 = FF</action> <!-- punch -->
            <action>maincpu.mb@19141 = 7F</action> <!-- kick -->
            <action>maincpu.mb@19173 = FF</action> <!-- punch (jump) -->
            <action>maincpu.mb@19194 = FF</action> <!-- kick (jump) -->
            <action>maincpu.mb@191B8 = 7F</action> <!-- kick (crouch) -->
            <action>maincpu.mb@191C9 = FF</action> <!-- punch (crouch) -->
            <action>maincpu.mb@191ED = 7F</action> <!-- nunchaku -->
            <action>maincpu.mb@19201 = 7F</action> <!-- nunchaku (crouch) -->
            <action>maincpu.mb@19212 = FF</action> <!-- nunchaku (jump) -->
        </script>
        <script state="off">
            <action>maincpu.mb@19120 = F6</action>
            <action>maincpu.mb@19141 = 76</action>
            <action>maincpu.mb@19173 = F7</action>
            <action>maincpu.mb@19194 = F7</action>
            <action>maincpu.mb@191B8 = 76</action>
            <action>maincpu.mb@191C9 = F6</action>
            <action>maincpu.mb@191ED = 79</action>
            <action>maincpu.mb@19201 = 79</action>
            <action>maincpu.mb@19212 = F9</action>
        </script>
    </cheat>

    <cheat desc="timer speed">
        <parameter>
            <item value="0xff">01 (slow)</item>
            <item value="0xc0">02       </item>
            <item value="0x80">03       </item>
            <item value="0x40">04       </item>
            <item value="0x01">05 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.mb@59D2 = param</action>
        </script>
        <script state="off">
            <action>maincpu.mb@59D2 = 78</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <!-- you can't stop samples by sound stop button -->
        <comment>reset the game (F3) to enter sound test mode</comment>
        <script state="on">
            <action>maincpu.mw@0149B = 9720            </action>
            <action>maincpu.mq@1D720 = 2847B801DBE20021</action>
            <action>maincpu.mq@1D728 = FEFE350120FDFEFA</action>
            <action>maincpu.mq@1D730 = 3E0420FBFE340120</action>
            <action>maincpu.mq@1D738 = 3E0620F7FE0618F0</action>
            <action>maincpu.mq@1D740 = 207FFE0F18778610</action>
            <action>maincpu.mq@1D748 = 0420DFFE06187E03</action>
            <action>maincpu.mq@1D750 = FFFFCD1800D3203E</action>
            <!--
            9720 | 21 00 E2 : ld   hl,$E200 // sound code address
            9723 | DB 01    : in   a,($01)  // read input
            9725 | B8       : cp   b
            9726 | 47       : ld   b,a
            9727 | 28 FA    : jr   z,$9723
            9729 | FE FD    : cp   $FD
            972B | 20 01    : jr   nz,$972E
            972D | 35       : dec  (hl)     // decrease code -01
            972E | FE FE    : cp   $FE
            9730 | 20 01    : jr   nz,$9733
            9732 | 34       : inc  (hl)     // increase code +01
            9733 | FE FB    : cp   $FB
            9735 | 20 04    : jr   nz,$973B
            9737 | 3E F0    : ld   a,$F0    // decrease code -10
            9739 | 18 06    : jr   $9741
            973B | FE F7    : cp   $F7
            973D | 20 06    : jr   nz,$9745
            973F | 3E 10    : ld   a,$10    // increase code +10
            9741 | 86       : add  a,(hl)
            9742 | 77       : ld   (hl),a
            9743 | 18 0F    : jr   $9754
            9745 | FE 7F    : cp   $7F
            9747 | 20 03    : jr   nz,$974C
            9749 | 7E       : ld   a,(hl)   // play sound
            974A | 18 06    : jr   $9752
            974C | FE DF    : cp   $DF
            974E | 20 04    : jr   nz,$9754
            9750 | 3E 20    : ld   a,$20    // stop sound
            9752 | D3 00    : out  ($00),a  // send sound code
            9754 | 18 CD    : jr   $9723
            -->
        </script>
        <script state="run">
            <output format="----- vigilante 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="&lt;&lt; sound code %02X &gt;&gt;"     line="19" align="center"  >
                <argument>maincpu.pb@E200</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.mw@0149B = 1845            </action>
            <action>maincpu.mq@1D720 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@1D728 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@1D730 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@1D738 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@1D740 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@1D748 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@1D750 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="skip ram/rom check">
        <script state="on">
            <action>maincpu.mb@14A4 = DC</action>
        </script>
        <script state="off">
            <action>maincpu.mb@14A4 = E8</action>
        </script>
    </cheat>

</mamecheat>
vigilantd.xml

Code: Select all

<!-- Vigilante (Japan, Rev D) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mb@306A = C9</action> <!-- catch (enemy) -->
            <action>maincpu.mb@3487 = C9</action> <!-- catch (boss) -->
            <action>maincpu.mb@55D9 = C2</action> <!-- catch (last boss) -->
            <action>maincpu.mb@6016 = DA</action> <!-- weapon -->
            <action>maincpu.mb@6057 = C9</action> <!-- enemy -->
            <action>maincpu.mb@7C18 = 00</action> <!-- catch (enemy in stage 5) -->
        </script>
        <script state="off">
            <action>maincpu.mb@306A = D0</action>
            <action>maincpu.mb@3487 = CD</action>
            <action>maincpu.mb@55D9 = C6</action>
            <action>maincpu.mb@6016 = AC</action>
            <action>maincpu.mb@6057 = C8</action>
            <action>maincpu.mb@7C18 = 65</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.mb@23FB = E7</action>
        </script>
        <script state="off">
            <action>maincpu.mb@23FB = 47</action>
        </script>
    </cheat>

    <cheat desc="attack speed up">
        <script state="on">
            <action>maincpu.mb@19128 = FF</action> <!-- punch -->
            <action>maincpu.mb@19149 = 7F</action> <!-- kick -->
            <action>maincpu.mb@1917B = FF</action> <!-- punch (jump) -->
            <action>maincpu.mb@1919C = FF</action> <!-- kick (jump) -->
            <action>maincpu.mb@191C0 = 7F</action> <!-- kick (crouch) -->
            <action>maincpu.mb@191D1 = FF</action> <!-- punch (crouch) -->
            <action>maincpu.mb@191F5 = 7F</action> <!-- nunchaku -->
            <action>maincpu.mb@19209 = 7F</action> <!-- nunchaku (crouch) -->
            <action>maincpu.mb@1921A = FF</action> <!-- nunchaku (jump) -->
        </script>
        <script state="off">
            <action>maincpu.mb@19128 = F6</action>
            <action>maincpu.mb@19149 = 76</action>
            <action>maincpu.mb@1917B = F7</action>
            <action>maincpu.mb@1919C = F7</action>
            <action>maincpu.mb@191C0 = 76</action>
            <action>maincpu.mb@191D1 = F6</action>
            <action>maincpu.mb@191F5 = 79</action>
            <action>maincpu.mb@19209 = 79</action>
            <action>maincpu.mb@1921A = F9</action>
        </script>
    </cheat>

    <cheat desc="timer speed">
        <parameter>
            <item value="0xff">01 (slow)</item>
            <item value="0xc0">02       </item>
            <item value="0x80">03       </item>
            <item value="0x40">04       </item>
            <item value="0x01">05 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.pb@EBD8 = param</action> <!-- initialize sub timer -->
            <action>maincpu.mb@5A20 = param</action>
        </script>
        <script state="off">
            <action>maincpu.pb@EBD8 = 5A</action>
            <action>maincpu.mb@5A20 = 5A</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <!-- you can't stop samples by sound stop button -->
        <comment>reset the game (F3) to enter sound test mode</comment>
        <script state="on">
            <action>maincpu.mw@014D0 = 9830            </action>
            <action>maincpu.mq@1D830 = 2847B801DBE20021</action>
            <action>maincpu.mq@1D838 = FEFE350120FDFEFA</action>
            <action>maincpu.mq@1D840 = 3E0420FBFE340120</action>
            <action>maincpu.mq@1D848 = 3E0620F7FE0618F0</action>
            <action>maincpu.mq@1D850 = 207FFE0F18778610</action>
            <action>maincpu.mq@1D858 = 0420DFFE06187E03</action>
            <action>maincpu.mq@1D860 = FFFFCD1800D3203E</action>
            <!--
            9830 | 21 00 E2 : ld   hl,$E200 // sound code address
            9833 | DB 01    : in   a,($01)  // read input
            9835 | B8       : cp   b
            9836 | 47       : ld   b,a
            9837 | 28 FA    : jr   z,$9833
            9839 | FE FD    : cp   $FD
            983B | 20 01    : jr   nz,$983E
            983D | 35       : dec  (hl)     // decrease code -01
            983E | FE FE    : cp   $FE
            9840 | 20 01    : jr   nz,$9843
            9842 | 34       : inc  (hl)     // increase code +01
            9843 | FE FB    : cp   $FB
            9845 | 20 04    : jr   nz,$984B
            9847 | 3E F0    : ld   a,$F0    // decrease code -10
            9849 | 18 06    : jr   $9851
            984B | FE F7    : cp   $F7
            984D | 20 06    : jr   nz,$9855
            984F | 3E 10    : ld   a,$10    // increase code +10
            9851 | 86       : add  a,(hl)
            9852 | 77       : ld   (hl),a
            9853 | 18 0F    : jr   $9864
            9855 | FE 7F    : cp   $7F
            9857 | 20 03    : jr   nz,$985C
            9859 | 7E       : ld   a,(hl)   // play sound
            985A | 18 06    : jr   $9862
            985C | FE DF    : cp   $DF
            985E | 20 04    : jr   nz,$9864
            9860 | 3E 20    : ld   a,$20    // stop sound
            9862 | D3 00    : out  ($00),a  // send sound code
            9864 | 18 CD    : jr   $9833
            -->
        </script>
        <script state="run">
            <output format="----- vigilante 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="&lt;&lt; sound code %02X &gt;&gt;"     line="19" align="center"  >
                <argument>maincpu.pb@E200</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.mw@014D0 = 1885            </action>
            <action>maincpu.mq@1D830 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@1D838 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@1D840 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@1D848 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@1D850 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@1D858 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@1D860 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="skip ram/rom check">
        <script state="on">
            <action>maincpu.mb@14D9 = 4A</action>
        </script>
        <script state="off">
            <action>maincpu.mb@14D9 = 1D</action>
        </script>
    </cheat>

</mamecheat>
vigilantbl.xml

Code: Select all

<!-- Vigilante (bootleg) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mb@302F = C9</action> <!-- catch (enemy) -->
            <action>maincpu.mb@344C = C9</action> <!-- catch (boss) -->
            <action>maincpu.mb@559F = 88</action> <!-- catch (last boss) -->
            <action>maincpu.mb@5FBE = 82</action> <!-- weapon -->
            <action>maincpu.mb@5FFF = C9</action> <!-- enemy -->
            <action>maincpu.mb@7BCC = 00</action> <!-- catch (enemy in stage 5) -->
        </script>
        <script state="off">
            <action>maincpu.mb@302F = D0</action>
            <action>maincpu.mb@344C = CD</action>
            <action>maincpu.mb@559F = 8C</action>
            <action>maincpu.mb@5FBE = 54</action>
            <action>maincpu.mb@5FFF = C8</action>
            <action>maincpu.mb@7BCC = 65</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.mb@23B7 = E7</action>
        </script>
        <script state="off">
            <action>maincpu.mb@23B7 = 47</action>
        </script>
    </cheat>

    <cheat desc="attack speed up">
        <script state="on">
            <action>maincpu.mb@19120 = FF</action> <!-- punch -->
            <action>maincpu.mb@19141 = 7F</action> <!-- kick -->
            <action>maincpu.mb@19173 = FF</action> <!-- punch (jump) -->
            <action>maincpu.mb@19194 = FF</action> <!-- kick (jump) -->
            <action>maincpu.mb@191B8 = 7F</action> <!-- kick (crouch) -->
            <action>maincpu.mb@191C9 = FF</action> <!-- punch (crouch) -->
            <action>maincpu.mb@191ED = 7F</action> <!-- nunchaku -->
            <action>maincpu.mb@19201 = 7F</action> <!-- nunchaku (crouch) -->
            <action>maincpu.mb@19212 = FF</action> <!-- nunchaku (jump) -->
        </script>
        <script state="off">
            <action>maincpu.mb@19120 = F6</action>
            <action>maincpu.mb@19141 = 76</action>
            <action>maincpu.mb@19173 = F7</action>
            <action>maincpu.mb@19194 = F7</action>
            <action>maincpu.mb@191B8 = 76</action>
            <action>maincpu.mb@191C9 = F6</action>
            <action>maincpu.mb@191ED = 79</action>
            <action>maincpu.mb@19201 = 79</action>
            <action>maincpu.mb@19212 = F9</action>
        </script>
    </cheat>

    <cheat desc="timer speed">
        <parameter>
            <item value="0xff">01 (slow)</item>
            <item value="0xc0">02       </item>
            <item value="0x80">03       </item>
            <item value="0x40">04       </item>
            <item value="0x01">05 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.mb@59D2 = param</action>
        </script>
        <script state="off">
            <action>maincpu.mb@59D2 = 78</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <!-- you can't stop samples by sound stop button -->
        <comment>reset the game (F3) to enter sound test mode</comment>
        <script state="on">
            <action>maincpu.mw@0149B = 9750            </action>
            <action>maincpu.mq@1D750 = 2847B801DBE20021</action>
            <action>maincpu.mq@1D758 = FEFE350120FDFEFA</action>
            <action>maincpu.mq@1D760 = 3E0420FBFE340120</action>
            <action>maincpu.mq@1D768 = 3E0620F7FE0618F0</action>
            <action>maincpu.mq@1D770 = 207FFE0F18778610</action>
            <action>maincpu.mq@1D778 = 0420DFFE06187E03</action>
            <action>maincpu.mq@1D780 = FFFFCD1800D3203E</action>
            <!--
            9750 | 21 00 E2 : ld   hl,$E200 // sound code address
            9753 | DB 01    : in   a,($01)  // read input
            9755 | B8       : cp   b
            9756 | 47       : ld   b,a
            9757 | 28 FA    : jr   z,$9753
            9759 | FE FD    : cp   $FD
            975B | 20 01    : jr   nz,$975E
            975D | 35       : dec  (hl)     // decrease code -01
            975E | FE FE    : cp   $FE
            9760 | 20 01    : jr   nz,$9763
            9762 | 34       : inc  (hl)     // increase code +01
            9763 | FE FB    : cp   $FB
            9765 | 20 04    : jr   nz,$976B
            9767 | 3E F0    : ld   a,$F0    // decrease code -10
            9769 | 18 06    : jr   $9771
            976B | FE F7    : cp   $F7
            976D | 20 06    : jr   nz,$9775
            976F | 3E 10    : ld   a,$10    // increase code +10
            9771 | 86       : add  a,(hl)
            9772 | 77       : ld   (hl),a
            9773 | 18 0F    : jr   $9784
            9775 | FE 7F    : cp   $7F
            9777 | 20 03    : jr   nz,$977C
            9779 | 7E       : ld   a,(hl)   // play sound
            977A | 18 06    : jr   $9782
            977C | FE DF    : cp   $DF
            977E | 20 04    : jr   nz,$9784
            9780 | 3E 20    : ld   a,$20    // stop sound
            9782 | D3 00    : out  ($00),a  // send sound code
            9784 | 18 CD    : jr   $9753
            -->
        </script>
        <script state="run">
            <output format="----- vigilante 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="&lt;&lt; sound code %02X &gt;&gt;"     line="19" align="center"  >
                <argument>maincpu.pb@E200</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.mw@0149B = 1845            </action>
            <action>maincpu.mq@1D750 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@1D758 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@1D760 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@1D768 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@1D770 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@1D778 = FFFFFFFFFFFFFFFF</action>
            <action>maincpu.mq@1D780 = FFFFFFFFFFFFFFFF</action>
        </script>
    </cheat>

    <cheat desc="skip ram/rom check">
        <script state="on">
            <action>maincpu.mb@14A4 = DC</action>
        </script>
        <script state="off">
            <action>maincpu.mb@14A4 = E8</action>
        </script>
    </cheat>

</mamecheat>