Page 1 of 1

[hotdogst] Hotdog Storm

Posted: Tue Aug 03, 2021 9:15 am
by jman

Code: Select all

<cheat desc="no hit">
    <script state="on">
        <action>maincpu.mb@a549 = 02</action> <!-- bullet -->
        <action>maincpu.mb@a4c3 = 02</action> <!-- enemy -->
        <action>maincpu.mb@a50b = 02</action> <!-- boss -->
    </script>
    <script state="off">
        <action>maincpu.mb@a549 = 04</action>
        <action>maincpu.mb@a4c3 = a6</action>
        <action>maincpu.mb@a50b = 5e</action>
    </script>
</cheat>

<cheat desc="auto fire">
    <script state="on">
        <action>maincpu.mb@e87b = 91</action> <!-- player -->
        <action>maincpu.mb@e8af = 91</action> <!-- subunits -->
    </script>
    <script state="off">
        <action>maincpu.mb@e87b = 95</action>
        <action>maincpu.mb@e8af = 95</action>
    </script>
</cheat>

<cheat desc="player speed">
    <parameter>
        <item value="0x20">01 (slow)</item>
        <item value="0x40">02       </item>
        <item value="0x60">03       </item>
        <item value="0x80">04       </item>
        <item value="0xa0">05 (fast)</item>
    </parameter>
    <script state="on">
        <action>maincpu.mq@0a7e2 = 4eb900036890d241</action>
        <action>maincpu.mq@36890 = 342d0022bbfc0030</action>
        <action>maincpu.mq@36898 = 713a650cbbfc0030</action>
        <action>maincpu.mq@368a0 = 719a6404343c0000</action>
        <action>maincpu.mq@368a8 = d2414e7500000000</action>
        <!--
        36890 | 342d 0022      : move.w ($22,A5),D2
        36894 | bbfc 0030 713a : cmpa.l #$30713a,A5
        3689a | 650c           : bcs    $368a8
        3689c | bbfc 0030 719a : cmpa.l #$30719a,A5
        368a2 | 6404           : bcc    $36a8a
        368a4 | 343c 00xx      : move.w #$xx,D2
        368a8 | d241           : add.w  D1,D1
        368aa | 4e75           : rts
        -->
    </script>
    <script state="change">
        <action>maincpu.mb@368a7 = param</action>
    </script>
    <script state="off">
        <action>maincpu.mq@0a7e2 = 342d0022d241d241</action>
        <action>maincpu.mq@36890 = 0000000000000000</action>
        <action>maincpu.mq@36898 = 0000000000000000</action>
        <action>maincpu.mq@368a0 = 0000000000000000</action>
        <action>maincpu.mq@368a8 = 0000000000000000</action>
    </script>
</cheat>

<cheat desc="bullet speed - normal shot">
    <parameter>
        <item value="0x03">01 (slow)</item>
        <item value="0x06">02       </item>
        <item value="0x09">03       </item>
        <item value="0x0c">04       </item>
        <item value="0x10">05 (fast)</item>
    </parameter>
    <script state="change">
        <action>maincpu.mb@edd6 = param</action>
    </script>
    <script state="off">
        <action>maincpu.mb@edd6 = 06</action>
    </script>
</cheat>

<cheat desc="penetration shot">
    <script state="on">
        <action>maincpu.mb@ecdb = 02</action>
    </script>
    <script state="off">
        <action>maincpu.mb@ecdb = 84</action>
    </script>
</cheat>

<cheat desc="sound test mode">
    <script state="on">
        <action>maincpu.md@00490 =         000368b0</action>
        <action>maincpu.mq@368b0 = 41f90030106243f9</action>
        <action>maincpu.mq@368b8 = 0030107545f90030</action>
        <action>maincpu.mq@368c0 = 20007001308046fc</action>
        <action>maincpu.mq@368c8 = 20004a5066f846fc</action>
        <action>maincpu.mq@368d0 = 2700081100026702</action>
        <action>maincpu.mq@368d8 = 5352081100036702</action>
        <action>maincpu.mq@368e0 = 5252081100046704</action>
        <action>maincpu.mq@368e8 = 3212600a08110005</action>
        <action>maincpu.mq@368f0 = 670a323c00ff4eb9</action>
        <action>maincpu.mq@368f8 = 0000840060c40000</action>
        <!--
        0368b0 | 41f9 0030 1062 : lea    $301062.l,A0 // interrupt wait flag
        0368b6 | 43f9 0030 1075 : lea    $301075.l,A1 // input address
        0368bc | 45f9 0030 2000 : lea    $302000.l,A2 // sound code address
        0368c2 | 7001           : moveq  #$1,D0
        0368c4 | 3080           : move.w D0,(A0)
        0368c6 | 46fc 2000      : move   #$2000,SR
        0368ca | 4a50           : tst.w  (A0)         // wait interrupt
        0368cc | 66f8           : bne    $368c6
        0368ce | 46fc 2700      : move   #$2700,SR
        0368d2 | 0811 0002      : btst   #$2,(A1)
        0368d6 | 6702           : beq    $368da
        0368d8 | 5352           : subq.w #1,(A2)      // decrease code
        0368da | 0811 0003      : btst   #$3,(A1)
        0368de | 6702           : beq    $368e2
        0368e0 | 5252           : addq.w #1,(A2)      // increase code
        0368e2 | 0811 0004      : btst   #$4,(A1)
        0368e6 | 6704           : beq    $368ec
        0368e8 | 3212           : move.w (A2),D1      // play sound
        0368ea | 600a           : bra    $368f6
        0368ec | 0811 0005      : btst   #$5,(A1)
        0368f0 | 670a           : beq    $368fc
        0368f2 | 323c 00ff      : move.w #$ff,D1      // stop sound
        0368f6 | 4eb9 0000 8400 : jsr    $8400.l      // send sound code
        0368fc | 60c4           : bra    $368c2
        -->
    </script>
    <script state="run">
        <output format="----- hotdog storm 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="button 1 : play sound"                    line="13" align="center" />
        <output format="button 2 : stop sound"                    line="14" align="center" />
        <output format="----------------------------"             line="15" align="center" />
        <output format="&lt;&lt; sound code %4.4X &gt;&gt;"       line="17" align="center">
            <argument>maincpu.pw@302000</argument>
        </output>
    </script>
    <script state="off">
        <action>maincpu.md@00490 =         00000610</action>
        <action>maincpu.mq@368B0 = 0000000000000000</action>
        <action>maincpu.mq@368b8 = 0000000000000000</action>
        <action>maincpu.mq@368C0 = 0000000000000000</action>
        <action>maincpu.mq@368c8 = 0000000000000000</action>
        <action>maincpu.mq@368D0 = 0000000000000000</action>
        <action>maincpu.mq@368d8 = 0000000000000000</action>
        <action>maincpu.mq@368E0 = 0000000000000000</action>
        <action>maincpu.mq@368e8 = 0000000000000000</action>
        <action>maincpu.mq@368F0 = 0000000000000000</action>
        <action>maincpu.mq@368f8 = 0000000000000000</action>
    </script>
</cheat>

[hotdogst] Hotdog Storm (update)

Posted: Fri Oct 21, 2022 1:56 pm
by jman

Code: Select all

<cheat desc="player speed">
    <parameter>
        <item value="0x10">01 (slow)</item>
        <item value="0x30">02       </item>
        <item value="0x60">03       </item>
        <item value="0x90">04       </item>
        <item value="0xc0">05 (fast)</item>
    </parameter>
    <script state="on">
        <action>maincpu.mq@0a7e2 = 4eb900036890d241</action>
        <action>maincpu.mq@36890 = 342d00220c790005</action>
        <action>maincpu.mq@36898 = 003011986714bbfc</action>
        <action>maincpu.mq@368a0 = 0030713a6708bbfc</action>
        <action>maincpu.mq@368a8 = 0030716a6604343c</action>
        <action>maincpu.mq@368b0 = 0000d2414e750000</action>
        <!--
        36890 | 342d 0022           : move.w ($22,A5),D2
        36894 | 0c79 0005 0030 1198 : cmpi.w #$5,$301198.l // check ending scene
        3689c | 6714                : beq    $368b2
        3689e | bbfc 0030 713a      : cmpa.l #$30713a,A5
        368a4 | 6708                : beq    $368ae
        368a6 | bbfc 0030 716a      : cmpa.l #$30716a,A5
        368ac | 6604                : bne    $368b2
        368ae | 343c 00xx           : move.w #$xx,D2
        368b2 | d241                : add.w  D1,D1
        368b4 | 4e75                : rts
        -->
    </script>
    <script state="change">
        <action>maincpu.mb@368b1 = param</action>
    </script>
    <script state="off">
        <action>maincpu.mq@0a7e2 = 342d0022d241d241</action>
        <action>maincpu.mq@36890 = 0000000000000000</action>
        <action>maincpu.mq@36898 = 0000000000000000</action>
        <action>maincpu.mq@368a0 = 0000000000000000</action>
        <action>maincpu.mq@368a8 = 0000000000000000</action>
        <action>maincpu.mq@368b0 = 0000000000000000</action>
    </script>
</cheat>
"player speed" : adjust item values. fix "player character out of screen in the ending" bug.

Code: Select all

<cheat desc="starting stage">
    <parameter min="0x01" max="0x05" step="0x01" />
    <script state="change">
        <action>maincpu.mb@39b5 = param - 1</action>
    </script>
    <script state="off">
        <action>maincpu.mb@39b5 = 00</action>
    </script>
</cheat>
"starting stage" : add new.

Code: Select all

<cheat desc="sound test mode">
    <comment>reset the game (F3) to enter sound test mode</comment>
    <script state="on">
        <action>maincpu.md@00490 =         000368c0</action>
        <action>maincpu.mq@368c0 = 46fc200041f90030</action>
        <action>maincpu.mq@368c8 = 2000428114001039</action>
        <action>maincpu.mq@368d0 = 00c80001b40067f4</action>
        <action>maincpu.mq@368d8 = 0c0000fb66025310</action>
        <action>maincpu.mq@368e0 = 0c0000f766025210</action>
        <action>maincpu.mq@368e8 = 0c0000fd66040410</action>
        <action>maincpu.mq@368f0 = 00100c0000fe6604</action>
        <action>maincpu.mq@368f8 = 061000100c0000ef</action>
        <action>maincpu.mq@36900 = 66041210600a0c00</action>
        <action>maincpu.mq@36908 = 00df660a123c00ff</action>
        <action>maincpu.mq@36910 = 4eb90000840060b4</action>
        <!--
        368c0 | 46fc 2000      : move   #$2000,SR    // enable interrupt
        368c4 | 41f9 0030 2000 : lea    $302000.l,A0 // sound code address
        368ca | 4281           : clr.l  D1
        368cc | 1400           : move.b D0,D2
        368ce | 1039 00c8 0001 : move.b $c80001.l,D0 // read input
        368d4 | b400           : cmp.b  D0,D2
        368d6 | 67f4           : beq    $368cc
        368d8 | 0c00 00fb      : cmpi.b #-$5,D0
        368dc | 6602           : bne    $368e0
        368de | 5310           : subq.b #1,(A0)      // decrease code -01
        368e0 | 0c00 00f7      : cmpi.b #-$9,D0
        368e4 | 6602           : bne    $368e8
        368e6 | 5210           : addq.b #1,(A0)      // increase code +01
        368e8 | 0c00 00fd      : cmpi.b #-$3,D0
        368ec | 6604           : bne    $368f2
        368ee | 0410 0010      : subi.b #$10,(A0)    // decrease code -10
        368f2 | 0c00 00fe      : cmpi.b #-$2,D0
        368f6 | 6604           : bne    $368fc
        368f8 | 0610 0010      : addi.b #$10,(A0)    // increase code +10
        368fc | 0c00 00ef      : cmpi.b #-$11,D0
        36900 | 6604           : bne    $36906
        36902 | 1210           : move.b (A0),D1      // play sound
        36904 | 600a           : bra    $36910
        36906 | 0c00 00df      : cmpi.b #-$21,D0
        3690a | 660a           : bne    $36916
        3690c | 123c 00ff      : move.b #$ff,D1      // stop sound
        36910 | 4eb9 0000 8400 : jsr    $8400.l      // send sound code
        36916 | 60b4           : bra    $368cc
        -->
    </script>
    <script state="run">
        <output format="----- hotdog storm 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 %2.2X &gt;&gt;"       line="19" align="center"  >
            <argument>maincpu.pb@302000</argument>
        </output>
    </script>
    <script state="off">
        <action>maincpu.md@00490 =         00000610</action>
        <action>maincpu.mq@368c0 = 0000000000000000</action>
        <action>maincpu.mq@368c8 = 0000000000000000</action>
        <action>maincpu.mq@368d0 = 0000000000000000</action>
        <action>maincpu.mq@368d8 = 0000000000000000</action>
        <action>maincpu.mq@368e0 = 0000000000000000</action>
        <action>maincpu.mq@368e8 = 0000000000000000</action>
        <action>maincpu.mq@368f0 = 0000000000000000</action>
        <action>maincpu.mq@368f8 = 0000000000000000</action>
        <action>maincpu.mq@36900 = 0000000000000000</action>
        <action>maincpu.mq@36908 = 0000000000000000</action>
        <action>maincpu.mq@36910 = 0000000000000000</action>
    </script>
</cheat>
"sound test mode" : rewrite routine. add up/down key (code ±10).

The following codes are test.

Code: Select all

<cheat desc="fast fire - main shot (test)">
    <script state="on">
        <action>maincpu.mb@0e88d =               03</action>
        <action>maincpu.mb@0e8c1 =               01</action> <!-- missile (orange) -->
        <action>maincpu.mb@0f933 =               03</action>
        <action>maincpu.mq@0f974 = fffffffefffdfffc</action>
        <action>maincpu.md@0f97c =         fffbfffa</action>
        <action>maincpu.mb@15db5 =               01</action> <!-- charge shot (green) -->
    </script>
    <script state="off">
        <action>maincpu.mb@0e88d =               09</action>
        <action>maincpu.mb@0e8c1 =               09</action>
        <action>maincpu.mb@0f933 =               02</action>
        <action>maincpu.mq@0f974 = fffffffcfff9fff6</action>
        <action>maincpu.md@0f97c =         fff3fff0</action>
        <action>maincpu.mb@15db5 =               03</action>
    </script>
</cheat>
"fast fire" (aka "short main shot interval") : sometimes point is added to another player (especially charge shot)
ImageImage
left is normal and right is "fast fire".

Code: Select all

<cheat desc="short hit mark (test)">
    <script state="on">
        <action>maincpu.mb@ed81 = 01</action> <!-- main shot -->
        <action>maincpu.mb@f055 = 01</action> <!-- missile (orange) -->
        <action>maincpu.mb@f26f = 01</action> <!-- charge shot (red) -->
        <action>maincpu.mb@f323 = 01</action> <!-- charge shot (orange) -->
    </script>
    <script state="off">
        <action>maincpu.mb@ed81 = 05</action>
        <action>maincpu.mb@f055 = 10</action>
        <action>maincpu.mb@f26f = 0a</action>
        <action>maincpu.mb@f323 = 10</action>
    </script>
</cheat>
"short hit mark" : perhaps missing some hit marks with other weapons.

[hotdogst] Hotdog Storm

Posted: Wed Jan 10, 2024 9:22 am
by jman

Code: Select all

<!-- Hotdog Storm (Korea) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mb@A4C3 = 02</action> <!-- enemy -->
            <action>maincpu.mb@A50B = 02</action> <!-- boss -->
            <action>maincpu.mb@A549 = 02</action> <!-- bullet -->
        </script>
        <script state="off">
            <action>maincpu.mb@A4C3 = A6</action>
            <action>maincpu.mb@A50B = 5E</action>
            <action>maincpu.mb@A549 = 04</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.mb@E87B = 91</action> <!-- player -->
            <action>maincpu.mb@E8AF = 91</action> <!-- subunits -->
        </script>
        <script state="off">
            <action>maincpu.mb@E87B = 95</action>
            <action>maincpu.mb@E8AF = 95</action>
        </script>
    </cheat>

    <cheat desc="player speed">
        <parameter>
            <item value="0x0040">01 (slow)</item>
            <item value="0x00C0">02       </item>
            <item value="0x0140">03       </item>
            <item value="0x01C0">04       </item>
            <item value="0x0240">05 (fast)</item>
        </parameter>
        <script state="on">
            <action>maincpu.mq@0A7F2 = 4EB9000368903219</action> <!-- x position -->
            <action>maincpu.mq@0A7FC = 4EB9000368984E75</action> <!-- y position -->
            <action>maincpu.mq@36890 = 610ED36D00064E75</action>
            <action>maincpu.mq@36898 = 6106D36D00044E75</action>
            <action>maincpu.mq@368A0 = EA810C7900050030</action>
            <action>maincpu.mq@368A8 = 1198671EBBFC0030</action>
            <action>maincpu.mq@368B0 = 713A6708BBFC0030</action>
            <action>maincpu.mq@368B8 = 716A660E363C0000</action>
            <action>maincpu.mq@368C0 = 4A4167066A024443</action>
            <action>maincpu.mq@368C8 = 32034E7500000000</action>
            <!--
            36890 | 610E                : bsr     $368a0         // x position
            36892 | D36D 0006           : add.w   D1, ($6,A5)
            36896 | 4E75                : rts
            36898 | 6106                : bsr     $368a0         // y position
            3689A | D36D 0004           : add.w   D1, ($4,A5)
            3689E | 4E75                : rts
            368A0 | EA81                : asr.l   #5, D1
            368A2 | 0C79 0005 0030 1198 : cmpi.w  #$5, $301198.l // check ending
            368AA | 671E                : beq     $368ca
            368AC | BBFC 0030 713A      : cmpa.l  #$30713a, A5   // check player 1
            368B2 | 6708                : beq     $368bc
            368B4 | BBFC 0030 716A      : cmpa.l  #$30716a, A5   // check player 2
            368BA | 660E                : bne     $368ca
            368BC | 363C xxxx           : move.w  #$xx, D3
            368C0 | 4A41                : tst.w   D1
            368C2 | 6706                : beq     $368ca
            368C4 | 6A02                : bpl     $368c8
            368C6 | 4443                : neg.w   D3
            368C8 | 3203                : move.w  D3, D1
            368CA | 4E75                : rts
            -->
        </script>
        <script state="change">
            <action>maincpu.mw@368BE = param</action>
        </script>
        <script state="off">
            <action>maincpu.mq@0A7F2 = EA81D36D00063219</action>
            <action>maincpu.mq@0A7FC = EA81D36D00044E75</action>
            <action>maincpu.mq@36890 = 0000000000000000</action>
            <action>maincpu.mq@36898 = 0000000000000000</action>
            <action>maincpu.mq@368A0 = 0000000000000000</action>
            <action>maincpu.mq@368A8 = 0000000000000000</action>
            <action>maincpu.mq@368B0 = 0000000000000000</action>
            <action>maincpu.mq@368B8 = 0000000000000000</action>
            <action>maincpu.mq@368C0 = 0000000000000000</action>
            <action>maincpu.mq@368C8 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="bullet speed - main shot">
        <parameter>
            <item value="0x03">01 (slow)</item>
            <item value="0x06">02       </item>
            <item value="0x09">03       </item>
            <item value="0x0c">04       </item>
            <item value="0x10">05 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.mb@EDD6 = param</action>
        </script>
        <script state="off">
            <action>maincpu.mb@EDD6 = 06</action>
        </script>
    </cheat>

    <cheat desc="fast fire - main shot (test)">
        <!-- sometimes point is added to another player -->
        <script state="on">
            <action>maincpu.mb@0E88D = 03              </action>
            <action>maincpu.mb@0E8C1 = 01              </action> <!-- missile (orange) -->
            <action>maincpu.mb@0F933 = 03              </action>
            <action>maincpu.mq@0F974 = FFFFFFFEFFFDFFFC</action>
            <action>maincpu.md@0F97C = FFFBFFFA        </action>
            <action>maincpu.mb@15DB5 = 01              </action> <!-- charge shot (green) -->
        </script>
        <script state="off">
            <action>maincpu.mb@0E88D = 09              </action>
            <action>maincpu.mb@0E8C1 = 09              </action>
            <action>maincpu.mb@0F933 = 02              </action>
            <action>maincpu.mq@0F974 = FFFFFFFCFFF9FFF6</action>
            <action>maincpu.md@0F97C = FFF3FFF0        </action>
            <action>maincpu.mb@15DB5 = 03              </action>
        </script>
    </cheat>

    <cheat desc="penetration shot">
        <script state="on">
            <action>maincpu.mb@ECDB = 02</action>
        </script>
        <script state="off">
            <action>maincpu.mb@ECDB = 84</action>
        </script>
    </cheat>

    <cheat desc="short hit mark (test)">
        <!-- perhaps missing some hit marks with other weapons -->
        <script state="on">
            <action>maincpu.mb@ED81 = 01</action> <!-- main shot -->
            <action>maincpu.mb@F055 = 01</action> <!-- missile (orange) -->
            <action>maincpu.mb@F26F = 01</action> <!-- charge shot (red) -->
            <action>maincpu.mb@F323 = 01</action> <!-- charge shot (orange) -->
        </script>
        <script state="off">
            <action>maincpu.mb@ED81 = 05</action>
            <action>maincpu.mb@F055 = 10</action>
            <action>maincpu.mb@F26F = 0A</action>
            <action>maincpu.mb@F323 = 10</action>
        </script>
    </cheat>

    <cheat desc="starting stage">
        <parameter min="0x01" max="0x05" step="0x01" />
        <script state="change">
            <action>maincpu.mb@39B5 = param - 1</action>
        </script>
        <script state="off">
            <action>maincpu.mb@39B5 = 00</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <comment>reset the game (F3) to enter sound test mode</comment>
        <script state="on">
            <action>maincpu.md@00490 = 000368C0        </action>
            <action>maincpu.mq@368D0 = 46FC200041F90030</action>
            <action>maincpu.mq@368D8 = 2000428114001039</action>
            <action>maincpu.mq@368E0 = 00C80001B40067F4</action>
            <action>maincpu.mq@368E8 = 0C0000FB66025310</action>
            <action>maincpu.mq@368F0 = 0C0000F766025210</action>
            <action>maincpu.mq@368F8 = 0C0000FD66040410</action>
            <action>maincpu.mq@36900 = 00100C0000FE6604</action>
            <action>maincpu.mq@36908 = 061000100C0000EF</action>
            <action>maincpu.mq@36910 = 66041210600A0C00</action>
            <action>maincpu.mq@36918 = 00DF660A123C00FF</action>
            <action>maincpu.mq@36920 = 4EB90000840060B4</action>
            <!--
            368D0 | 46FC 2000      : move    #$2000, SR    // enable interrupt
            368D4 | 41F9 0030 2000 : lea     $302000.l, A0 // sound code address
            368DA | 4281           : clr.l   D1
            368DC | 1400           : move.b  D0, D2
            368DE | 1039 00C8 0001 : move.b  $c80001.l, D0 // read input
            368E4 | B400           : cmp.b   D0, D2
            368E6 | 67F4           : beq     $368dc
            368E8 | 0C00 00FB      : cmpi.b  #-$5, D0
            368EC | 6602           : bne     $368f0
            368EE | 5310           : subq.b  #1, (A0)      // decrease code -01
            368F0 | 0C00 00F7      : cmpi.b  #-$9, D0
            368F4 | 6602           : bne     $368f8
            368F6 | 5210           : addq.b  #1, (A0)      // increase code +01
            368F8 | 0C00 00FD      : cmpi.b  #-$3, D0
            368FC | 6604           : bne     $36902
            368FE | 0410 0010      : subi.b  #$10, (A0)    // decrease code -10
            36902 | 0C00 00FE      : cmpi.b  #-$2, D0
            36906 | 6604           : bne     $3690c
            36908 | 0610 0010      : addi.b  #$10, (A0)    // increase code +10
            3690C | 0C00 00EF      : cmpi.b  #-$11, D0
            36910 | 6604           : bne     $36916
            36912 | 1210           : move.b  (A0), D1      // play sound
            36914 | 600A           : bra     $36920
            36916 | 0C00 00DF      : cmpi.b  #-$21, D0
            3691A | 660A           : bne     $36926
            3691C | 123C 00FF      : move.b  #$ff, D1      // stop sound
            36920 | 4EB9 0000 8400 : jsr     $8400.l       // send sound code
            36926 | 60B4           : bra     $368dc
            -->
        </script>
        <script state="run">
            <output format="----- hotdog storm 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@302000</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.md@00490 = 00000610        </action>
            <action>maincpu.mq@368D0 = 0000000000000000</action>
            <action>maincpu.mq@368D8 = 0000000000000000</action>
            <action>maincpu.mq@368E0 = 0000000000000000</action>
            <action>maincpu.mq@368E8 = 0000000000000000</action>
            <action>maincpu.mq@368F0 = 0000000000000000</action>
            <action>maincpu.mq@368F8 = 0000000000000000</action>
            <action>maincpu.mq@36900 = 0000000000000000</action>
            <action>maincpu.mq@36908 = 0000000000000000</action>
            <action>maincpu.mq@36910 = 0000000000000000</action>
            <action>maincpu.mq@36918 = 0000000000000000</action>
            <action>maincpu.mq@36920 = 0000000000000000</action>
        </script>
    </cheat>

</mamecheat>
"player speed" : Rewritten routine.