Page 1 of 1

[funkybee] Funky Bee

Posted: Sun Oct 30, 2022 1:40 pm
by jman

Code: Select all

<cheat desc="no hit">
    <script state="on">
        <action>maincpu.mq@3436 = 803321eb384000cd</action>
        <action>maincpu.mq@4000 = 02cbddd00dfe0330</action>
        <action>maincpu.mq@4008 = 000000c937b6cbb6</action>
        <!--
        3436 | cd 00 40    : call $4000
        3439 | 38 eb       : jr   c,$3426
        ====================================
        4000 | 30 03       : jr   nc,$4005
        4002 | fe 0d       : cp   $0D
        4004 | d0          : ret  nc
        4005 | dd cb 02 b6 : res  6,(ix+$02)
        4009 | cb b6       : res  6,(hl)
        400b | 37          : scf
        400c | c9          : ret
        -->
    </script>
    <script state="off">
        <action>maincpu.mq@3436 = 8033211c380dfed0</action>
        <action>maincpu.mq@4000 = 0000000000000000</action>
        <action>maincpu.mq@4008 = 0000000000000000</action>
    </script>
</cheat>

<cheat desc="auto fire">
    <script state="on">
        <action>maincpu.md@2854 =         214010c3</action>
        <action>maincpu.mq@4010 = c377af0520870021</action>
        <action>maincpu.mq@4018 = fe0628a7347e2911</action>
        <action>maincpu.mq@4020 = 2857c377aff42002</action>
        <!--
        4010 | 21 00 87 : ld  hl,$8700
        4013 | 20 05    : jr  nz,$401A
        4015 | af       : xor a
        4016 | 77       : ld  (hl),a
        4017 | c3 11 29 : jp  $2911
        401a | 7e       : ld  a,(hl)
        401b | 34       : inc (hl)
        401c | a7       : and a
        401d | 28 06    : jr  z,$4025
        401f | fe 02    : cp  $02
        4021 | 20 f4    : jr  nz,$4017
        4023 | af       : xor a
        4024 | 77       : ld  (hl),a
        4025 | c3 57 28 : jp  $2857
        -->
    </script>
    <script state="off">
        <action>maincpu.md@2854 =         212911ca</action>
        <action>maincpu.mq@4010 = 0000000000000000</action>
        <action>maincpu.mq@4018 = 0000000000000000</action>
        <action>maincpu.mq@4020 = 0000000000000000</action>
    </script>
</cheat>

<cheat desc="player speed">
    <parameter min="0x01" max="0x05" step="0x01" />
    <script state="on">
        <action>maincpu.md@295f =         214030cd</action>
        <action>maincpu.mq@4030 = f0003ec8a7811432</action>
        <action>maincpu.mq@4038 = 0000000000c944ed</action>
        <!--
        4030 | 32 14 81 : ld  ($8114),a
        4033 | a7       : and a
        4034 | c8       : ret z
        4035 | 3e xx    : ld  a,$xx
        4037 | f0       : ret p
        4038 | ed 44    : neg
        403a | c9       : ret
        -->
    </script>
    <script state="change">
        <action>maincpu.mb@4036 = param</action>
    </script>
    <script state="off">
        <action>maincpu.md@295f =         21811432</action>
        <action>maincpu.mq@4030 = 0000000000000000</action>
        <action>maincpu.mq@4038 = 0000000000000000</action>
    </script>
</cheat>

<cheat desc="bullet speed">
    <parameter>
        <item value="0x01">01 (slow)</item>
        <item value="0x03">02       </item>
        <item value="0x06">03       </item>
        <item value="0x09">04       </item>
        <item value="0x0c">05 (fast)</item>
    </parameter>
    <script state="on">
        <action>maincpu.md@2b04 =         1b4040cd</action>
        <action>maincpu.mq@4040 = 4615fe79f547cbc5</action>
        <action>maincpu.mq@4048 = c9c178f100060220</action>
        <!--
        4040 | c5    : push bc
        4041 | cb 47 : bit  0,a
        4043 | f5    : push af
        4044 | 79    : ld   a,c
        4045 | fe 15 : cp   $15
        4047 | 46    : ld   b,(hl)
        4048 | 20 02 : jr   nz,$404C
        404a | 06 xx : ld   b,$xx
        404c | f1    : pop  af
        404d | 78    : ld   a,b
        404e | c1    : pop  bc
        404f | c9    : ret
        -->
    </script>
    <script state="change">
        <action>maincpu.mb@404b = param</action>
    </script>
    <script state="off">
        <action>maincpu.md@2b04 =         1b7e47cb</action>
        <action>maincpu.mq@4040 = 0000000000000000</action>
        <action>maincpu.mq@4048 = 0000000000000000</action>
    </script>
</cheat>

<cheat desc="sound test mode">
    <comment>set &quot;skip rom check&quot; then reset the game (F3)</comment>
    <script state="on">
        <action>maincpu.mw@0049 =             004b</action> <!-- enable sound in interrupt -->
        <action>maincpu.mb@38a0 =               00</action> <!-- enable sound -->
        <action>maincpu.md@03ac =         eb4050c3</action>
        <action>maincpu.mq@4050 = 01213826cd0967cd</action>
        <action>maincpu.mq@4058 = 070708e6f8003a82</action>
        <action>maincpu.mq@4060 = 2877beb0f8013a47</action>
        <action>maincpu.mq@4068 = fe35012001fe2bea</action>
        <action>maincpu.mq@4070 = 042008fe34012002</action>
        <action>maincpu.mq@4078 = 062004fe0618f03e</action>
        <action>maincpu.mq@4080 = 10fe10187786103e</action>
        <action>maincpu.mq@4088 = 2020fe06187e0320</action>
        <action>maincpu.mq@4090 = bb183893cdf23e05</action>
        <!--
        4050 | cd 67 09 : call $0967     // erase screen
        4053 | cd 26 38 : call $3826     // check sound
        4056 | 21 01 82 : ld   hl,$8201  // $8200 = sound code, $8201 = temporary input
        4059 | 3a 00 f8 : ld   a,($F800) // read start button
        405c | e6 08    : and  $08
        405e | 07       : rlca
        405f | 07       : rlca
        4060 | 47       : ld   b,a
        4061 | 3a 01 f8 : ld   a,($F801) // read other inputs
        4064 | b0       : or   b
        4065 | be       : cp   (hl)
        4066 | 77       : ld   (hl),a
        4067 | 28 ea    : jr   z,$4053
        4069 | 2b       : dec  hl
        406a | fe 01    : cp   $01
        406c | 20 01    : jr   nz,$406F
        406e | 35       : dec  (hl)      // decrease code -01
        406f | fe 02    : cp   $02
        4071 | 20 01    : jr   nz,$4074
        4073 | 34       : inc  (hl)      // increase code +01
        4074 | fe 08    : cp   $08
        4076 | 20 04    : jr   nz,$407C
        4078 | 3e f0    : ld   a,$F0     // decrease code -10
        407a | 18 06    : jr   $4082
        407c | fe 04    : cp   $04
        407e | 20 06    : jr   nz,$4086
        4080 | 3e 10    : ld   a,$10     // increase code +10
        4082 | 86       : add  a,(hl)
        4083 | 77       : ld   (hl),a
        4084 | 18 10    : jr   $4096
        4086 | fe 10    : cp   $10
        4088 | 20 03    : jr   nz,$408D
        408a | 7e       : ld   a,(hl)    // play sound
        408b | 18 06    : jr   $4093
        408d | fe 20    : cp   $20
        408f | 20 05    : jr   nz,$4096
        4091 | 3e f2    : ld   a,$F2     // stop sound
        4093 | cd 93 38 : call $3893     // send sound code
        4096 | 18 bb    : jr   $4053
        -->
    </script>
    <script state="run">
        <output format="----- funky bee 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="start : 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@8200</argument>
        </output>
    </script>
    <script state="off">
        <action>maincpu.mw@0049 =             0141</action>
        <action>maincpu.mb@38a0 =               15</action>
        <action>maincpu.md@03ac =         eb09100e</action>
        <action>maincpu.mq@4050 = 0000000000000000</action>
        <action>maincpu.mq@4058 = 0000000000000000</action>
        <action>maincpu.mq@4060 = 0000000000000000</action>
        <action>maincpu.mq@4068 = 0000000000000000</action>
        <action>maincpu.mq@4070 = 0000000000000000</action>
        <action>maincpu.mq@4078 = 0000000000000000</action>
        <action>maincpu.mq@4080 = 0000000000000000</action>
        <action>maincpu.mq@4088 = 0000000000000000</action>
        <action>maincpu.mq@4090 = 0000000000000000</action>
    </script>
</cheat>

<cheat desc="skip rom check">
    <script state="on">
        <action>maincpu.md@3ee3 = 010345c3</action>
    </script>
    <script state="off">
        <action>maincpu.md@3ee3 = 01000021</action>
    </script>
</cheat>

[funkybee]+ Funky Bee

Posted: Thu Feb 22, 2024 11:47 pm
by jman
funkybee.xml

Code: Select all

<!-- Funky Bee -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mq@3436 = 803321EB384000CD</action>
            <action>maincpu.mq@4000 = 02CBDDD00DFE0330</action>
            <action>maincpu.mq@4008 = 000000C937B6CBB6</action>
            <!--
            3436 | CD 00 40    : call $4000
            3439 | 38 EB       : jr   c,$3426
            ====================================
            4000 | 30 03       : jr   nc,$4005
            4002 | FE 0D       : cp   $0D
            4004 | D0          : ret  nc
            4005 | DD CB 02 B6 : res  6,(ix+$02)
            4009 | CB B6       : res  6,(hl)
            400B | 37          : scf
            400C | C9          : ret
            -->
        </script>
        <script state="off">
            <action>maincpu.mq@3436 = 8033211C380DFED0</action>
            <action>maincpu.mq@4000 = 0000000000000000</action>
            <action>maincpu.mq@4008 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.md@2854 = 214010C3</action>
            <action>maincpu.mq@4010 = 01E6806F3A2911CA</action>
            <action>maincpu.mq@4018 = 00002857C32911C2</action>
            <!--
            4010 | CA 11 29 : jp   z,$2911
            4013 | 3A 6F 80 : ld   a,($806F)
            4016 | E6 01    : and  $01
            4018 | C2 11 29 : jp   nz,$2911
            401B | C3 57 28 : jp   $2857
            -->
        </script>
        <script state="off">
            <action>maincpu.md@2854 = 212911CA        </action>
            <action>maincpu.mq@4010 = 0000000000000000</action>
            <action>maincpu.mq@4018 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="player speed">
        <parameter min="0x01" max="0x05" step="0x01" />
        <script state="on">
            <action>maincpu.md@295F = 214020CD        </action>
            <action>maincpu.mq@4020 = F0003EC8A7811432</action>
            <action>maincpu.mq@4028 = 0000000000C944ED</action>
            <!--
            4020 | 32 14 81 : ld   ($8114),a
            4023 | A7       : and  a
            4024 | C8       : ret  z
            4025 | 3E xx    : ld   a,$xx
            4027 | F0       : ret  p
            4028 | ED 44    : neg
            402A | C9       : ret
            -->
        </script>
        <script state="change">
            <action>maincpu.mb@4026 = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@295F = 21811432        </action>
            <action>maincpu.mq@4020 = 0000000000000000</action>
            <action>maincpu.mq@4028 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="bullet speed">
        <parameter>
            <item value="0x01">01 (slow)</item>
            <item value="0x03">02       </item>
            <item value="0x06">03       </item>
            <item value="0x09">04       </item>
            <item value="0x0c">05 (fast)</item>
        </parameter>
        <script state="on">
            <action>maincpu.md@2B04 = 1B4030CD        </action>
            <action>maincpu.mq@4030 = 4615FE79F547CBC5</action>
            <action>maincpu.mq@4038 = C9C178F100060220</action>
            <!--
            4030 | C5    : push bc
            4031 | CB 47 : bit  0,a
            4033 | F5    : push af
            4034 | 79    : ld   a,c
            4035 | FE 15 : cp   $15
            4037 | 46    : ld   b,(hl)
            4038 | 20 02 : jr   nz,$403C
            403A | 06 xx : ld   b,$xx
            403C | F1    : pop  af
            403D | 78    : ld   a,b
            403E | C1    : pop  bc
            403F | C9    : ret
            -->
        </script>
        <script state="change">
            <action>maincpu.mb@403B = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@2B04 = 1B7E47CB        </action>
            <action>maincpu.mq@4030 = 0000000000000000</action>
            <action>maincpu.mq@4038 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <comment>set &quot;skip rom check&quot; then reset the game (F3)</comment>
        <script state="on">
            <action>maincpu.mw@0049 = 004B            </action> <!-- enable sound in interrupt -->
            <action>maincpu.mb@38A0 = 00              </action> <!-- enable sound -->
            <action>maincpu.md@03AC = EB4040C3        </action>
            <action>maincpu.mq@4040 = 01213826CD0967CD</action>
            <action>maincpu.mq@4048 = 070708E6F8003A82</action>
            <action>maincpu.mq@4050 = 2877BEB0F8013A47</action>
            <action>maincpu.mq@4058 = FE35012001FE2BEA</action>
            <action>maincpu.mq@4060 = 042008FE34012002</action>
            <action>maincpu.mq@4068 = 062004FE0618F03E</action>
            <action>maincpu.mq@4070 = 10FE10187786103E</action>
            <action>maincpu.mq@4078 = 2020FE06187E0320</action>
            <action>maincpu.mq@4080 = BB183893CDF23E05</action>
            <!--
            4040 | CD 67 09 : call $0967     // erase screen
            4043 | CD 26 38 : call $3826     // check sound
            4046 | 21 01 82 : ld   hl,$8201  // temporary input address
            4049 | 3A 00 F8 : ld   a,($F800) // read start button
            404C | E6 08    : and  $08
            404E | 07       : rlca
            404F | 07       : rlca
            4050 | 47       : ld   b,a
            4051 | 3A 01 F8 : ld   a,($F801) // read other inputs
            4054 | B0       : or   b
            4055 | BE       : cp   (hl)
            4056 | 77       : ld   (hl),a
            4057 | 28 EA    : jr   z,$4043
            4059 | 2B       : dec  hl        // sound code address ($8200)
            405A | FE 01    : cp   $01
            405C | 20 01    : jr   nz,$405F
            405E | 35       : dec  (hl)      // decrease code -01
            405F | FE 02    : cp   $02
            4061 | 20 01    : jr   nz,$4064
            4063 | 34       : inc  (hl)      // increase code +01
            4064 | FE 08    : cp   $08
            4066 | 20 04    : jr   nz,$406C
            4068 | 3E F0    : ld   a,$F0     // decrease code -10
            406A | 18 06    : jr   $4072
            406C | FE 04    : cp   $04
            406E | 20 06    : jr   nz,$4076
            4070 | 3E 10    : ld   a,$10     // increase code +10
            4072 | 86       : add  a,(hl)
            4073 | 77       : ld   (hl),a
            4074 | 18 10    : jr   $4086
            4076 | FE 10    : cp   $10
            4078 | 20 03    : jr   nz,$407D
            407A | 7E       : ld   a,(hl)    // play sound
            407B | 18 06    : jr   $4083
            407D | FE 20    : cp   $20
            407F | 20 05    : jr   nz,$4086
            4081 | 3E F2    : ld   a,$F2     // stop sound
            4083 | CD 93 38 : call $3893     // send sound code
            4086 | 18 BB    : jr   $4043
            -->
        </script>
        <script state="run">
            <output format="----- funky bee 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="P1 start : 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@8200</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.mw@0049 = 0141            </action>
            <action>maincpu.mb@38A0 = 15              </action>
            <action>maincpu.md@03AC = EB09100E        </action>
            <action>maincpu.mq@4040 = 0000000000000000</action>
            <action>maincpu.mq@4048 = 0000000000000000</action>
            <action>maincpu.mq@4050 = 0000000000000000</action>
            <action>maincpu.mq@4058 = 0000000000000000</action>
            <action>maincpu.mq@4060 = 0000000000000000</action>
            <action>maincpu.mq@4068 = 0000000000000000</action>
            <action>maincpu.mq@4070 = 0000000000000000</action>
            <action>maincpu.mq@4078 = 0000000000000000</action>
            <action>maincpu.mq@4080 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="skip rom check">
        <script state="on">
            <action>maincpu.md@3EE3 = 010345C3</action>
        </script>
        <script state="off">
            <action>maincpu.md@3EE3 = 01000021</action>
        </script>
    </cheat>

</mamecheat>
funkybeeb.xml

Code: Select all

<!-- Funky Bee (bootleg, harder) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mq@3436 = 803321EB384000CD</action>
            <action>maincpu.mq@4000 = 02CBDDD00DFE0330</action>
            <action>maincpu.mq@4008 = 000000C937B6CBB6</action>
            <!--
            3436 | CD 00 40    : call $4000
            3439 | 38 EB       : jr   c,$3426
            ====================================
            4000 | 30 03       : jr   nc,$4005
            4002 | FE 0D       : cp   $0D
            4004 | D0          : ret  nc
            4005 | DD CB 02 B6 : res  6,(ix+$02)
            4009 | CB B6       : res  6,(hl)
            400B | 37          : scf
            400C | C9          : ret
            -->
        </script>
        <script state="off">
            <action>maincpu.mq@3436 = 8033211C380DFED0</action>
            <action>maincpu.mq@4000 = 0000000000000000</action>
            <action>maincpu.mq@4008 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.md@2854 = 214010C3</action>
            <action>maincpu.mq@4010 = 01E6806F3A2911CA</action>
            <action>maincpu.mq@4018 = 00002857C32911C2</action>
            <!--
            4010 | CA 11 29 : jp   z,$2911
            4013 | 3A 6F 80 : ld   a,($806F)
            4016 | E6 01    : and  $01
            4018 | C2 11 29 : jp   nz,$2911
            401B | C3 57 28 : jp   $2857
            -->
        </script>
        <script state="off">
            <action>maincpu.md@2854 = 212911CA        </action>
            <action>maincpu.mq@4010 = 0000000000000000</action>
            <action>maincpu.mq@4018 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="player speed">
        <parameter min="0x01" max="0x05" step="0x01" />
        <script state="on">
            <action>maincpu.md@295F = 214020CD        </action>
            <action>maincpu.mq@4020 = F0003EC8A7811432</action>
            <action>maincpu.mq@4028 = 0000000000C944ED</action>
            <!--
            4020 | 32 14 81 : ld   ($8114),a
            4023 | A7       : and  a
            4024 | C8       : ret  z
            4025 | 3E xx    : ld   a,$xx
            4027 | F0       : ret  p
            4028 | ED 44    : neg
            402A | C9       : ret
            -->
        </script>
        <script state="change">
            <action>maincpu.mb@4026 = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@295F = 21811432        </action>
            <action>maincpu.mq@4020 = 0000000000000000</action>
            <action>maincpu.mq@4028 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="bullet speed">
        <parameter>
            <item value="0x01">01 (slow)</item>
            <item value="0x03">02       </item>
            <item value="0x06">03       </item>
            <item value="0x09">04       </item>
            <item value="0x0c">05 (fast)</item>
        </parameter>
        <script state="on">
            <action>maincpu.md@2B04 = 1B4030CD        </action>
            <action>maincpu.mq@4030 = 4615FE79F547CBC5</action>
            <action>maincpu.mq@4038 = C9C178F100060220</action>
            <!--
            4030 | C5    : push bc
            4031 | CB 47 : bit  0,a
            4033 | F5    : push af
            4034 | 79    : ld   a,c
            4035 | FE 15 : cp   $15
            4037 | 46    : ld   b,(hl)
            4038 | 20 02 : jr   nz,$403C
            403A | 06 xx : ld   b,$xx
            403C | F1    : pop  af
            403D | 78    : ld   a,b
            403E | C1    : pop  bc
            403F | C9    : ret
            -->
        </script>
        <script state="change">
            <action>maincpu.mb@403B = param</action>
        </script>
        <script state="off">
            <action>maincpu.md@2B04 = 1B7E47CB        </action>
            <action>maincpu.mq@4030 = 0000000000000000</action>
            <action>maincpu.mq@4038 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="sound test mode">
        <comment>set &quot;skip rom check&quot; then reset the game (F3)</comment>
        <script state="on">
            <action>maincpu.mw@0049 = 004B            </action> <!-- enable sound in interrupt -->
            <action>maincpu.mb@38A0 = 00              </action> <!-- enable sound -->
            <action>maincpu.md@03AC = EB4040C3        </action>
            <action>maincpu.mq@4040 = 01213826CD0967CD</action>
            <action>maincpu.mq@4048 = 070708E6F8003A82</action>
            <action>maincpu.mq@4050 = 2877BEB0F8013A47</action>
            <action>maincpu.mq@4058 = FE35012001FE2BEA</action>
            <action>maincpu.mq@4060 = 042008FE34012002</action>
            <action>maincpu.mq@4068 = 062004FE0618F03E</action>
            <action>maincpu.mq@4070 = 10FE10187786103E</action>
            <action>maincpu.mq@4078 = 2020FE06187E0320</action>
            <action>maincpu.mq@4080 = BB183893CDF23E05</action>
            <!--
            4040 | CD 67 09 : call $0967     // erase screen
            4043 | CD 26 38 : call $3826     // check sound
            4046 | 21 01 82 : ld   hl,$8201  // temporary input address
            4049 | 3A 00 F8 : ld   a,($F800) // read start button
            404C | E6 08    : and  $08
            404E | 07       : rlca
            404F | 07       : rlca
            4050 | 47       : ld   b,a
            4051 | 3A 01 F8 : ld   a,($F801) // read other inputs
            4054 | B0       : or   b
            4055 | BE       : cp   (hl)
            4056 | 77       : ld   (hl),a
            4057 | 28 EA    : jr   z,$4043
            4059 | 2B       : dec  hl        // sound code address ($8200)
            405A | FE 01    : cp   $01
            405C | 20 01    : jr   nz,$405F
            405E | 35       : dec  (hl)      // decrease code -01
            405F | FE 02    : cp   $02
            4061 | 20 01    : jr   nz,$4064
            4063 | 34       : inc  (hl)      // increase code +01
            4064 | FE 08    : cp   $08
            4066 | 20 04    : jr   nz,$406C
            4068 | 3E F0    : ld   a,$F0     // decrease code -10
            406A | 18 06    : jr   $4072
            406C | FE 04    : cp   $04
            406E | 20 06    : jr   nz,$4076
            4070 | 3E 10    : ld   a,$10     // increase code +10
            4072 | 86       : add  a,(hl)
            4073 | 77       : ld   (hl),a
            4074 | 18 10    : jr   $4086
            4076 | FE 10    : cp   $10
            4078 | 20 03    : jr   nz,$407D
            407A | 7E       : ld   a,(hl)    // play sound
            407B | 18 06    : jr   $4083
            407D | FE 20    : cp   $20
            407F | 20 05    : jr   nz,$4086
            4081 | 3E F2    : ld   a,$F2     // stop sound
            4083 | CD 93 38 : call $3893     // send sound code
            4086 | 18 BB    : jr   $4043
            -->
        </script>
        <script state="run">
            <output format="----- funky bee 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="P1 start : 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@8200</argument>
            </output>
        </script>
        <script state="off">
            <action>maincpu.mw@0049 = 0141            </action>
            <action>maincpu.mb@38A0 = 15              </action>
            <action>maincpu.md@03AC = EB09100E        </action>
            <action>maincpu.mq@4040 = 0000000000000000</action>
            <action>maincpu.mq@4048 = 0000000000000000</action>
            <action>maincpu.mq@4050 = 0000000000000000</action>
            <action>maincpu.mq@4058 = 0000000000000000</action>
            <action>maincpu.mq@4060 = 0000000000000000</action>
            <action>maincpu.mq@4068 = 0000000000000000</action>
            <action>maincpu.mq@4070 = 0000000000000000</action>
            <action>maincpu.mq@4078 = 0000000000000000</action>
            <action>maincpu.mq@4080 = 0000000000000000</action>
        </script>
    </cheat>

</mamecheat>