[zedblade] Zed Blade/Operation Ragnarok

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

[zedblade] Zed Blade/Operation Ragnarok

Post by jman »

Code: Select all

<cheat desc="no hit">
    <script state="on">
        <action>maincpu.rb@9328 = 60</action> <!-- enemy -->
        <action>maincpu.rb@87ba = 60</action> <!-- bullet -->
    </script>
    <script state="off">
        <action>maincpu.rb@9328 = 66</action>
        <action>maincpu.rb@87ba = 66</action>
    </script>
</cheat>

<cheat desc="auto fire">
    <script state="on">
        <action>maincpu.rw@766e = 4e71</action>
    </script>
    <script state="off">
        <action>maincpu.rw@766e = 640e</action>
    </script>
</cheat>

<cheat desc="player speed">
    <parameter>
        <item value="0x00008000">01 (slow)</item>
        <item value="0x00028000">02       </item>
        <item value="0x00048000">03       </item>
        <item value="0x00068000">04       </item>
        <item value="0x00088000">05 (fast)</item>
    </parameter>
    <script state="on">
        <action>maincpu.rq@6d48 = 4eb90000fad04e71</action>
        <action>maincpu.rq@fad0 = 243c000000002230</action>
        <action>maincpu.rq@fad8 = 000067066a024482</action>
        <action>maincpu.rq@fae0 = 2202243c00000000</action>
        <action>maincpu.rq@fae8 = 2030000467066a02</action>
        <action>maincpu.rq@faf0 = 448220024e75ffff</action>
        <!--
        fad0 | 243c xxxx xxxx : move.l #$xxxx,D2
        fad6 | 2230 0000      : move.l (A0,D0.w),D1
        fada | 6706           : beq    $fae2
        fadc | 6a02           : bpl    $fae0
        fade | 4482           : neg.l  D2
        fae0 | 2202           : move.l D2,D1
        fae2 | 243c xxxx xxxx : move.l #$xxxx,D2
        fae8 | 2030 0004      : move.l ($4,A0,D0.w),D0
        faec | 6706           : beq    $faf4
        faee | 6a02           : bpl    $faf2
        faf0 | 4482           : neg.l  D2
        faf2 | 2002           : move.l D2,D0
        faf4 | 4e75           : rts
        -->
    </script>
    <script state="change">
        <action>maincpu.rd@fad2 = param</action>
        <action>maincpu.rd@fae4 = param</action>
    </script>
    <script state="off">
        <action>maincpu.rq@6d48 = 2230000020300004</action>
        <action>maincpu.rq@fad0 = ffffffffffffffff</action>
        <action>maincpu.rq@fad8 = ffffffffffffffff</action>
        <action>maincpu.rq@fae0 = ffffffffffffffff</action>
        <action>maincpu.rq@fae8 = ffffffffffffffff</action>
        <action>maincpu.rq@faf0 = ffffffffffffffff</action>
    </script>
</cheat>

<cheat desc="max bullets up">
    <script state="on">
        <action>maincpu.rq@76c4 = 4eb90000fb003218</action>
        <action>maincpu.rq@fb00 = 49f500003018e318</action>
        <action>maincpu.rq@fb08 = 4e75ffffffffffff</action>
        <!--
        fb00 | 49f5 0000 : lea    (A5,D0.w),A4
        fb04 | 3018      : move.w (A0)+,D0
        fb06 | e318      : rol.b  #1,D0
        fb08 | 4e75      : rts
        -->
    </script>
    <script state="off">
        <action>maincpu.rq@76c4 = 49f5000030183218</action>
        <action>maincpu.rq@fb00 = ffffffffffffffff</action>
        <action>maincpu.rq@fb08 = ffffffffffffffff</action>
    </script>
</cheat>
I omit "skip ram/rom check" because it has already posted here.
jman
Posts: 843
Joined: Tue Dec 01, 2020 1:24 pm

[zedblade] Zed Blade/Operation Ragnarok (update)

Post by jman »

Code: Select all

<cheat desc="sound test mode">
    <comment>reset the game (F3) to enter sound test mode</comment>
    <!-- don't play code 0x01, 0x03, and 0x10 because of no sound response -->
    <!-- valid bank number seems to be 0x00 and 0x0a -->
    <script state="on">
        <action>maincpu.rd@660a =         0000b61e</action> <!-- enable sound code check in interrupt -->
        <action>maincpu.rq@60e0 = 4ef90000fb105240</action>
        <action>maincpu.rq@fb10 = 41f90010800043e8</action>
        <action>maincpu.rq@fb18 = 0001247c0000b578</action>
        <action>maincpu.rq@fb20 = 1401123900300000</action>
        <action>maincpu.rq@fb28 = b40167f40c0100fb</action>
        <action>maincpu.rq@fb30 = 660253100c0100f7</action>
        <action>maincpu.rq@fb38 = 660252100c0100fd</action>
        <action>maincpu.rq@fb40 = 6604041000100c01</action>
        <action>maincpu.rq@fb48 = 00fe660406100010</action>
        <action>maincpu.rq@fb50 = 0c0100bb66025311</action>
        <action>maincpu.rq@fb58 = 0c0100b766025211</action>
        <action>maincpu.rq@fb60 = 0211000f0c0100ef</action>
        <action>maincpu.rq@fb68 = 6610424010116706</action>
        <action>maincpu.rq@fb70 = 06000010e1488010</action>
        <action>maincpu.rq@fb78 = 4e920c0100df660c</action>
        <action>maincpu.rq@fb80 = 303c01034e92303c</action>
        <action>maincpu.rq@fb88 = 07004e926092ffff</action>
        <!--
        fb10 | 41f9 0010 8000 : lea     $108000.l,A0 // $108000 : sound code address
        fb16 | 43e8 0001      : lea     ($1,A0),A1   // $108001 : bank number address
        fb1a | 247c 0000 b578 : movea.l #$b578,A2
        fb20 | 1401           : move.b  D1,D2
        fb22 | 1239 0030 0000 : move.b  $300000.l,D1 // read input
        fb28 | b401           : cmp.b   D1,D2
        fb2a | 67f4           : beq     $fb20
        fb2c | 0c01 00fb      : cmpi.b  #-$5,D1
        fb30 | 6602           : bne     $fb34
        fb32 | 5310           : subq.b  #1,(A0)      // decrease code -01
        fb34 | 0c01 00f7      : cmpi.b  #-$9,D1
        fb38 | 6602           : bne     $fb3c
        fb3a | 5210           : addq.b  #1,(A0)      // increase code +01
        fb3c | 0c01 00fd      : cmpi.b  #-$3,D1
        fb40 | 6604           : bne     $fb46
        fb42 | 0410 0010      : subi.b  #$10,(A0)    // decrease code -10
        fb46 | 0c01 00fe      : cmpi.b  #-$2,D1
        fb4a | 6604           : bne     $fb50
        fb4c | 0610 0010      : addi.b  #$10,(A0)    // increase code +10
        fb50 | 0c01 00bb      : cmpi.b  #-$45,D1
        fb54 | 6602           : bne     $fb58
        fb56 | 5311           : subq.b  #1,(A1)      // decrease bank -01
        fb58 | 0c01 00b7      : cmpi.b  #-$49,D1
        fb5c | 6602           : bne     $fb60
        fb5e | 5211           : addq.b  #1,(A1)      // increase bank +01
        fb60 | 0211 000f      : andi.b  #$f,(A1)
        fb64 | 0c01 00ef      : cmpi.b  #-$11,D1
        fb68 | 6610           : bne     $fb7a
        fb6a | 4240           : clr.w   D0           // play sound
        fb6c | 1011           : move.b  (A1),D0
        fb6e | 6706           : beq     $fb76
        fb70 | 0600 0010      : addi.b  #$10,D0
        fb74 | e148           : lsl.w   #8,D0
        fb76 | 8010           : or.b    (A0),D0
        fb78 | 4e92           : jsr     (A2)
        fb7a | 0c01 00df      : cmpi.b  #-$21,D1
        fb7e | 660c           : bne     $fb8c
        fb80 | 303c 0103      : move.w  #$103,D0     // stop sound
        fb84 | 4e92           : jsr     (A2)
        fb86 | 303c 0700      : move.w  #$700,D0
        fb8a | 4e92           : jsr     (A2)
        fb8c | 6092           : bra     $fb20
        -->
    </script>
    <script state="run">
        <output format="----- operation ragnarok 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 3 + left : decrease bank -01"            line="15" align="center" />
        <output format="button 3 + right : increase bank +01"           line="16" align="center" />
        <output format="button 1 : play sound"                          line="17" align="center" />
        <output format="button 2 : stop sound"                          line="18" align="center" />
        <output format="----------------------------"                   line="19" align="center" />
        <output format="&lt;&lt; bank %2.2X &gt;&gt;"                   line="21" align="center"  >
            <argument>maincpu.pb@108001</argument>
        </output>
        <output format="&lt;&lt; sound code %2.2X &gt;&gt;"             line="23" align="center"  >
            <argument>maincpu.pb@108000</argument>
        </output>
    </script>
    <script state="off">
        <action>maincpu.rd@660a =         00c0044a</action>
        <action>maincpu.rq@60e0 = 10390010fd895240</action>
        <action>maincpu.rq@fb10 = ffffffffffffffff</action>
        <action>maincpu.rq@fb18 = ffffffffffffffff</action>
        <action>maincpu.rq@fb20 = ffffffffffffffff</action>
        <action>maincpu.rq@fb28 = ffffffffffffffff</action>
        <action>maincpu.rq@fb30 = ffffffffffffffff</action>
        <action>maincpu.rq@fb38 = ffffffffffffffff</action>
        <action>maincpu.rq@fb40 = ffffffffffffffff</action>
        <action>maincpu.rq@fb48 = ffffffffffffffff</action>
        <action>maincpu.rq@fb50 = ffffffffffffffff</action>
        <action>maincpu.rq@fb58 = ffffffffffffffff</action>
        <action>maincpu.rq@fb60 = ffffffffffffffff</action>
        <action>maincpu.rq@fb68 = ffffffffffffffff</action>
        <action>maincpu.rq@fb70 = ffffffffffffffff</action>
        <action>maincpu.rq@fb78 = ffffffffffffffff</action>
        <action>maincpu.rq@fb80 = ffffffffffffffff</action>
        <action>maincpu.rq@fb88 = ffffffffffffffff</action>
    </script>
</cheat>
"sound test mode" : add new. Valid bank number seems to be 0x00 and 0x0a (not 0x08).
Post Reply