[snapjack] Snap Jack

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

[snapjack] Snap Jack

Post by jman »

Code: Select all

<cheat desc="no hit">
    <script state="on">
        <action>maincpu.mb@28ca = 0e</action> <!-- eatable enemy -->
        <action>maincpu.mb@3360 = c9</action> <!-- other enemy -->
        <action>maincpu.mb@2f4c = c9</action> <!-- background -->
        <action>maincpu.mb@1a34 = 18</action> <!-- bridge -->
    </script>
    <script state="off">
        <action>maincpu.mb@28ca = 11</action>
        <action>maincpu.mb@3360 = 21</action>
        <action>maincpu.mb@2f4c = dd</action>
        <action>maincpu.mb@1a34 = 38</action>
    </script>
</cheat>

<cheat desc="no fall down into water">
    <script state="on">
        <action>maincpu.mw@3701 = 1618</action> <!-- auto jump -->
        <action>maincpu.mw@3745 = 0f18</action> <!-- forced to success landing -->
    </script>
    <script state="off">
        <action>maincpu.mw@3701 = 9b21</action>
        <action>maincpu.mw@3745 = 4c1e</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@1be1 = efe5610022010021</action>
        <action>maincpu.mq@1be9 = bd90003ae13b73cd</action>
        <action>maincpu.mq@1bf1 = 250120fefef0286f</action>
        <action>maincpu.mq@1bf9 = 20f7fe240120fbfe</action>
        <action>maincpu.mq@1c01 = fdfe07181c10cd05</action>
        <action>maincpu.mq@1c09 = 44d4181c1bcd0320</action>
        <action>maincpu.mq@1c11 = d13efd10136c0511</action>
        <action>maincpu.mq@1c19 = 6c05111806afc912</action>
        <action>maincpu.mq@1c21 = ffffffc9fc101213</action>
        <!--
        1be1 | 21 00 01 : ld   hl,$0100   // initialize sound and input values
        1be4 | 22 00 61 : ld   ($6100),hl
        1be7 | e5       : push hl
        1be8 | ef       : rst  $28
        1be9 | cd 73 3b : call $3b73
        1bec | e1       : pop  hl
        1bed | 3a 00 90 : ld   a,($9000)  // read input
        1bf0 | bd       : cp   l
        1bf1 | 6f       : ld   l,a
        1bf2 | 28 f0    : jr   z,$1be4
        1bf4 | fe fe    : cp   $fe
        1bf6 | 20 01    : jr   nz,$1bf9
        1bf8 | 25       : dec  h          // decrease code
        1bf9 | fe fb    : cp   $fb
        1bfb | 20 01    : jr   nz,$1bfe
        1bfd | 24       : inc  h          // increase code
        1bfe | fe f7    : cp   $f7
        1c00 | 20 05    : jr   nz,$1c07
        1c02 | cd 10 1c : call $1c10      // play sound
        1c05 | 18 07    : jr   $1c0e
        1c07 | fe fd    : cp   $fd
        1c09 | 20 03    : jr   nz,$1c0e
        1c0b | cd 1b 1c : call $1c1b      // stop sound
        1c0e | 18 d4    : jr   $1be4
        1c10 | 44       : ld   b,h        // sound address set routine
        1c11 | 11 05 6c : ld   de,$6c05
        1c14 | 13       : inc  de
        1c15 | 10 fd    : djnz $1c14
        1c17 | 3e d1    : ld   a,$d1
        1c19 | 12       : ld   (de),a
        1c1a | c9       : ret
        1c1b | af       : xor  a          // sound stop routine
        1c1c | 06 18    : ld   b,$18
        1c1e | 11 05 6c : ld   de,$6c05
        1c21 | 13       : inc  de
        1c22 | 12       : ld   (de),a
        1c23 | 10 fc    : djnz $1c21
        1c25 | c9       : ret
        -->
    </script>
    <script state="run">
        <output format="----- snap jack sound test mode -----" line="10" align="center" />
        <output format="left : decrease code"                  line="11" align="center" />
        <output format="right : increase code"                 line="12" align="center" />
        <output format="up : play sound"                       line="13" align="center" />
        <output format="down : stop sound"                     line="14" align="center" />
        <output format="----------------------------"          line="15" align="center" />
        <output format="&lt;&lt; sound code %2.2X &gt;&gt;"    line="17" align="center">
            <argument>maincpu.pb@6101</argument>
        </output>
    </script>
    <script state="off">
        <action>maincpu.mq@1be1 = 191bfc2100165f87</action>
        <action>maincpu.mq@1be9 = 47c8a77ed48011cf</action>
        <action>maincpu.mq@1bf1 = fc102371eb234e23</action>
        <action>maincpu.mq@1bf9 = 5e1c251c06f118eb</action>
        <action>maincpu.mq@1c01 = 0400131c9c1c811c</action>
        <action>maincpu.mq@1c09 = 0900070103030902</action>
        <action>maincpu.mq@1c11 = 8002800309020401</action>
        <action>maincpu.mq@1c19 = 18010803a002a002</action>
        <action>maincpu.mq@1c21 = 0204001300006003</action>
    </script>
</cheat>
This game does not have button input so that play sound is "up" and stop sound is "down".
Post Reply