[sf2j] Street Fighter II

This forum is for posting M.A.M.E. Work In Progress "Arcade"cheats that are not quite ready for the prime time. If the cheats are buggy or the cheat descriptions are non-standard then please post them here. Help maybe given but there are no guarantees and they will only be added to the cheat file when the cheat file maintainer is happy with them.
Post Reply
jman
Posts: 843
Joined: Tue Dec 01, 2020 1:24 pm

[sf2j] Street Fighter II

Post by jman »

Code: Select all

<cheat desc="no hit">
    <parameter>
        <item value="0x01">P1          </item>
        <item value="0x02">P2          </item>
        <item value="0x03">both players</item>
    </parameter>
    <script state="on">
        <!-- attack -->
        <action>maincpu.md@7e26e =         4eb800c0</action>
        <action>maincpu.md@7e290 =         4eb800c0</action>
        <action>maincpu.md@7e2b2 =         4eb800c0</action>
        <action>maincpu.mq@000c0 = b4fc83c666047000</action>
        <action>maincpu.mq@000c8 = 4e75b4fc86c66604</action>
        <action>maincpu.mq@000d0 = 70004e754eb90007</action>
        <action>maincpu.mq@000d8 = e4844e75ffffffff</action>
        <!--
        000c0 | b4fc 83c6      : cmpa.w #$83c6,A2
        000c4 | 6604           : bne    $ca
        000c6 | 7000           : moveq  #$0,D0
        000c8 | 4e75           : rts
        000ca | b4fc 86c6      : cmpa.w #$86c6,A2
        000ce | 6604           : bne    $d4
        000d0 | 7000           : moveq  #$0,D0
        000d2 | 4e75           : rts
        000d4 | 4eb9 0007 e484 : jsr    $7e484.l
        000da | 4e75           : rts
        -->
        <!-- throw -->
        <action>maincpu.md@02f84 =         4eb800e0</action>
        <action>maincpu.mq@000e0 = b6fc83c666047801</action>
        <action>maincpu.mq@000e8 = 4e75b6fc86c66604</action>
        <action>maincpu.mq@000f0 = 78014e75d844bc44</action>
        <action>maincpu.mq@000f8 = 4e75ffffffffffff</action>
        <!--
        000e0 | b6fc 83c6 : cmpa.w #$83c6,A3
        000e4 | 6604      : bne    $ea
        000e6 | 7801      : moveq  #$1,D4
        000e8 | 4e75      : rts
        000ea | b6fc 86c6 : cmpa.w #$86c6,A3
        000ee | 6604      : bne    $f4
        000f0 | 7801      : moveq  #$1,D4
        000f2 | 4e75      : rts
        000f4 | d844      : add.w  D4,D4
        000f6 | bc44      : cmp.w  D4,D6
        000f8 | 4e75      : rts
        -->
    </script>
    <script state="change">
        <action                                  >maincpu.mb@000c4 = 60</action>
        <action                                  >maincpu.mb@000ce = 60</action>
        <action condition="(param band 01) != 00">maincpu.mb@000c4 = 66</action>
        <action condition="(param band 02) != 00">maincpu.mb@000ce = 66</action>
        <action                                  >maincpu.mb@000e4 = 60</action>
        <action                                  >maincpu.mb@000ee = 60</action>
        <action condition="(param band 01) != 00">maincpu.mb@000e4 = 66</action>
        <action condition="(param band 02) != 00">maincpu.mb@000ee = 66</action>
    </script>
    <script state="off">
        <action>maincpu.md@7e26e =         61000214</action>
        <action>maincpu.md@7e290 =         610001f2</action>
        <action>maincpu.md@7e2b2 =         610001d0</action>
        <action>maincpu.mq@000c0 = ffffffffffffffff</action>
        <action>maincpu.mq@000c8 = ffffffffffffffff</action>
        <action>maincpu.mq@000d0 = ffffffffffffffff</action>
        <action>maincpu.mq@000d8 = ffffffffffffffff</action>
        <action>maincpu.md@02f84 =         d844bc44</action>
        <action>maincpu.mq@000e0 = ffffffffffffffff</action>
        <action>maincpu.mq@000e8 = ffffffffffffffff</action>
        <action>maincpu.mq@000f0 = ffffffffffffffff</action>
        <action>maincpu.mq@000f8 = ffffffffffffffff</action>
    </script>
</cheat>

<cheat desc="auto fire">
    <parameter>
        <item value="0x01">P1          </item>
        <item value="0x02">P2          </item>
        <item value="0x03">both players</item>
    </parameter>
    <script state="on">
        <action>maincpu.md@2ce2a =         4eb80100</action>
        <action>maincpu.mq@00100 = bcfc83c66702610e</action>
        <action>maincpu.mq@00108 = bcfc86c667026106</action>
        <action>maincpu.mq@00110 = 102e02914e75426e</action>
        <action>maincpu.mq@00118 = 0294426e02a84e75</action>
        <!--
        00100 | bcfc 83c6 : cmpa.w #$83c6,A6
        00104 | 6702      : beq    $108
        00106 | 610e      : bsr    $116
        00108 | bcfc 86c6 : cmpa.w #$86c6,A6
        0010c | 6702      : beq    $110
        0010e | 6106      : bsr    $116
        00110 | 102e 0291 : move.b ($291,A6),D0
        00114 | 4e75      : rts
        00116 | 426e 0294 : clr.w  ($294,A6)
        0011a | 426e 02a8 : clr.w  ($2a8,A6)
        0011e | 4e75      : rts
        -->
    </script>
    <script state="change">
        <action                                  >maincpu.mb@00104 = 60</action>
        <action                                  >maincpu.mb@0010c = 60</action>
        <action condition="(param band 01) != 00">maincpu.mb@00104 = 66</action>
        <action condition="(param band 02) != 00">maincpu.mb@0010c = 66</action>
    </script>
    <script state="off">
        <action>maincpu.md@2ce2a =         102e0291</action>
        <action>maincpu.mq@00100 = ffffffffffffffff</action>
        <action>maincpu.mq@00108 = ffffffffffffffff</action>
        <action>maincpu.mq@00110 = ffffffffffffffff</action>
        <action>maincpu.mq@00118 = ffffffffffffffff</action>
    </script>
</cheat>

<cheat desc="attack speed up">
    <parameter>
        <item value="0x01">P1          </item>
        <item value="0x02">P2          </item>
        <item value="0x03">both players</item>
    </parameter>
    <script state="on">
        <action>maincpu.md@276e =         4eb80120</action>
        <action>maincpu.mq@0120 = bcfc83c66602610e</action>
        <action>maincpu.mq@0128 = bcfc86c666026106</action>
        <action>maincpu.mq@0130 = 536e00184e75102e</action>
        <action>maincpu.mq@0138 = 000341fa00240c10</action>
        <action>maincpu.mq@0140 = 00ff6706b0186708</action>
        <action>maincpu.mq@0148 = 60f43d7c00010018</action>
        <action>maincpu.mq@0150 = 4e75ffffffffffff</action>
        <action>maincpu.mq@0160 = 0002040e1012ffff</action>
        <!--
        276e | 4eb8 0120      : jsr    $120.w
        0120 | bcfc 83c6      : cmpa.w #$83c6,A6
        0124 | 6602           : bne    $128
        0126 | 610e           : bsr    $136
        0128 | bcfc 86c6      : cmpa.w #$86c6,A6
        012c | 6602           : bne    $130
        012e | 6106           : bsr    $136
        0130 | 536e 0018      : subq.w #1,($18,A6)
        0134 | 4e75           : rts
        0136 | 102e 0003      : move.b ($3,A6),D0
        013a | 41fa 0024      : lea    ($24,PC);($160),A0
        013e | 0c10 00ff      : cmpi.b #-$1,(A0)
        0142 | 6706           : beq    $14a
        0144 | b018           : cmp.b  (A0)+,D0
        0146 | 6708           : beq    $150
        0148 | 60f4           : bra    $13e
        014a | 3d7c 0001 0018 : move.w #$1,($18,A6)
        0150 | 4e75           : rts
        0160 - 016f           : action status table
        -->
    </script>
    <script state="change">
        <action                                  >maincpu.mb@00124 = 60</action>
        <action                                  >maincpu.mb@0012c = 60</action>
        <action condition="(param band 01) != 00">maincpu.mb@00124 = 66</action>
        <action condition="(param band 02) != 00">maincpu.mb@0012c = 66</action>
    </script>
    <script state="off">
        <action>maincpu.md@276e =         536e0018</action>
        <action>maincpu.mq@0120 = ffffffffffffffff</action>
        <action>maincpu.mq@0128 = ffffffffffffffff</action>
        <action>maincpu.mq@0130 = ffffffffffffffff</action>
        <action>maincpu.mq@0138 = ffffffffffffffff</action>
        <action>maincpu.mq@0140 = ffffffffffffffff</action>
        <action>maincpu.mq@0148 = ffffffffffffffff</action>
        <action>maincpu.mq@0150 = ffffffffffffffff</action>
        <action>maincpu.mq@0160 = ffffffffffffffff</action>
    </script>
</cheat>
Still need test and improvement. Especially "attack speed up" code. I encounter game reset with "flying barcelona attack" by Balrog(J).
Post Reply