[cdiscon1] Disco No.1

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: 865
Joined: Tue Dec 01, 2020 1:24 pm

[cdiscon1] Disco No.1

Post by jman »

Code: Select all

<cheat desc="no hit">
    <script state="run">
        <action>maincpu.pw@09b5 = 1190</action> <!-- dancer -->
        <action>maincpu.pw@1e7e = 1090</action> <!-- blue enemy / lady -->
        <action>maincpu.pw@26de = 0690</action> <!-- red enemy -->
    </script>
    <script state="off">
        <action>maincpu.pw@09b5 = 09a9</action>
        <action>maincpu.pw@1e7e = 02f0</action>
        <action>maincpu.pw@26de = 03c9</action>
    </script>
</cheat>

<cheat desc="red enemy speed down">
    <script state="run">
        <action>maincpu.pd@2598 = a5fa01c9</action>
    </script>
    <script state="off">
        <action>maincpu.pd@2598 = a525bbd9</action>
    </script>
</cheat>

<cheat desc="lady speed down">
    <script state="on">
        <action>maincpu.pb@1d59 = 0f</action>
    </script>
    <script state="off">
        <action>maincpu.pb@1d59 = 03</action>
    </script>
</cheat>

<cheat desc="timer speed">
    <parameter>
        <item value="0xff">01 (slow)</item>
        <item value="0x80">02       </item>
        <item value="0x40">03       </item>
        <item value="0x20">04       </item>
        <item value="0x00">05 (fast)</item>
    </parameter>
    <script state="run">
        <action>maincpu.pb@120c = param</action>
        <action>maincpu.pb@1253 = param</action>
    </script>
    <script state="off">
        <action>maincpu.pb@120c = 3f</action>
        <action>maincpu.pb@1253 = 3f</action>
    </script>
</cheat>

<cheat desc="sound test mode">
    <comment>reset the game (F3) then wait data load to enter sound test mode</comment>
    <script state="run">
        <!-- routine -->
        <action>maincpu.pw@0639 =             55e0</action>
        <action>maincpu.pq@55e0 = f011a5e600cd1185</action>
        <action>maincpu.pq@55e8 = 01b002a910c6c8f7</action>
        <action>maincpu.pq@55f0 = 08a9e801b001a9aa</action>
        <action>maincpu.pq@55f8 = 98ca10e9588a06b0</action>
        <action>maincpu.pq@5600 = 1069188a06b004a9</action>
        <action>maincpu.pq@5608 = 06f010a9108698ca</action>
        <action>maincpu.pq@5610 = 148e00c205b020a9</action>
        <action>maincpu.pq@5618 = 0000000055e02ce4</action>
        <!--
        55e0 | 85 11    : sta $11
        55e2 | ad 00 e6 : lda $e600 // read input
        55e5 | c5 11    : cmp $11
        55e7 | f0 f7    : beq $55e0
        55e9 | a8       : tay
        55ea | a6 10    : ldx $10
        55ec | c9 02    : cmp #$02
        55ee | d0 01    : bne $55f1
        55f0 | ca       : dex       // decrease code -01
        55f1 | c9 01    : cmp #$01
        55f3 | d0 01    : bne $55f6
        55f5 | e8       : inx       // increase code +01
        55f6 | c9 08    : cmp #$08
        55f8 | d0 06    : bne $5600
        55fa | 8a       : txa       // decrease code -10
        55fb | 38       : sec
        55fc | e9 10    : sbc #$10
        55fe | aa       : tax
        55ff | 98       : tya
        5600 | c9 04    : cmp #$04
        5602 | d0 06    : bne $560a
        5604 | 8a       : txa       // increase code +10
        5605 | 18       : clc
        5606 | 69 10    : adc #$10
        5608 | aa       : tax
        5609 | 98       : tya
        560a | 86 10    : stx $10
        560c | c9 10    : cmp #$10
        560e | f0 06    : beq $5616
        5610 | c9 40    : cmp #$20
        5612 | d0 05    : bne $5619
        5614 | a2 00    : ldx #$00  // stop sound
        5616 | 8e 14 e4 : stx $e414 // send sound code
        5619 | 4c e0 55 : jmp $55e0
        -->
        <!-- display -->
        <output format="----- disco no.1 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@0010</argument>
        </output>
    </script>
    <script state="off">
        <action> maincpu.pw@0639 =             38e1</action>
        <action> maincpu.pq@55e0 = 0000000000000000</action>
        <action> maincpu.pq@55e8 = 0000000000000000</action>
        <action> maincpu.pq@55f0 = 0000000000000000</action>
        <action> maincpu.pq@55f8 = 0000000000000000</action>
        <action> maincpu.pq@5600 = 0000000000000000</action>
        <action> maincpu.pq@5608 = 0000000000000000</action>
        <action> maincpu.pq@5610 = 0000000000000000</action>
        <action> maincpu.pq@5618 = 0000000000000000</action>
    </script>
</cheat>
Post Reply