[cosmica23] Cosmic Alien

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

[cosmica23] Cosmic Alien

Post by jman »

cosmica23 was added in 0.237.

Code: Select all

<cheat desc="no hit">
    <script state="on">
        <action>maincpu.mb@0ed2 = 18</action> <!-- bullet -->
        <action>maincpu.mb@1b6f = c9</action> <!-- enemy -->
        <action>maincpu.mb@180f = 18</action> <!-- middle enemy -->
    </script>
    <script state="off">
        <action>maincpu.mb@0ed2 = 38</action>
        <action>maincpu.mb@1b6f = d0</action>
        <action>maincpu.mb@180f = 30</action>
    </script>
</cheat>

<cheat desc="auto fire">
    <script state="on">
        <action>maincpu.mb@0d3f = 00</action>
    </script>
    <script state="off">
        <action>maincpu.mb@0d3f = 24</action>
    </script>
</cheat>

<cheat desc="player speed">
    <parameter>
        <item value="0x00">01 (slow)</item>
        <item value="0x03">02       </item>
        <item value="0x07">03       </item>
        <item value="0x0b">04       </item>
        <item value="0x0f">05 (fast)</item>
    </parameter>
    <script state="on">
        <action>maincpu.mq@27e6 = 0277fd0286fd003e</action>
        <action>maincpu.mq@27ee = fd003ec90235fdc9</action>
        <action>maincpu.mq@27f6 = 34fdc90277fd0286</action>
        <!--
        27e6 | 3e xx    : ld  a,$xx      // left
        27e8 | fd 86 02 : add a,(iy+$02)
        27eb | fd 77 02 : ld  (iy+$02),a
        27ee | c9       : ret
        27f3 | 3e xx    : ld  a,$xx      // right
        27f5 | fd 86 02 : add a,(iy+$02)
        27f8 | fd 77 02 : ld  (iy+$02),a
        27fb | c9       : ret
        -->
    </script>
    <script state="change">
        <action>maincpu.mb@27e7 = -param</action>
        <action>maincpu.mb@27f4 =  param</action>
    </script>
    <script state="off">
        <action>maincpu.mq@27e6 = 35fd0235fd0235fd</action>
        <action>maincpu.mq@27ee = 0234fdc90235fd02</action>
        <action>maincpu.mq@27f6 = 34fd0234fd0234fd</action>
    </script>
</cheat>

<cheat desc="bullet speed">
    <parameter>
        <item value="0x01">01 (slow)</item>
        <item value="0x06">02       </item>
        <item value="0x0c">03       </item>
        <item value="0x12">04       </item>
        <item value="0x18">05 (fast)</item>
    </parameter>
    <script state="change">
        <action>maincpu.mb@10ca = param</action>
    </script>
    <script state="off">
        <action>maincpu.mb@10ca = 0c</action>
    </script>
</cheat>
jman
Posts: 843
Joined: Tue Dec 01, 2020 1:24 pm

[cosmica]+ Cosmic Alien

Post by jman »

cosmica.xml

Code: Select all

<!-- Cosmic Alien (version II, set 1) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mb@0ED2 = 18</action> <!-- bullet -->
            <action>maincpu.mb@1811 = 18</action> <!-- monster -->
            <action>maincpu.mb@1B6D = C9</action> <!-- enemy -->
        </script>
        <script state="off">
            <action>maincpu.mb@0ED2 = 38</action>
            <action>maincpu.mb@1811 = 30</action>
            <action>maincpu.mb@1B6D = D0</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.mb@0D3F = 00</action>
        </script>
        <script state="off">
            <action>maincpu.mb@0D3F = 24</action>
        </script>
    </cheat>

    <cheat desc="player speed">
        <parameter>
            <item value="0x01">01 (slow)</item>
            <item value="0x02">02       </item>
            <item value="0x06">03       </item>
            <item value="0x0a">04       </item>
            <item value="0x0e">05 (fast)</item>
        </parameter>
        <script state="on">
            <action>maincpu.mq@0D6D = C92800CD003E00D0</action>
            <action>maincpu.mq@0D7D = C92800CD003E00D8</action>
            <action>maincpu.mq@2800 = 00C90277FD0286FD</action>
            <!--
            0D6E | 00       : nop             // left
            0D6F | 3E xx    : ld   a,$xx
            0D71 | CD 00 28 : call $2800
            =================================
            0D7E | 00       : nop             // right
            0D7F | 3E xx    : ld   a,$xx
            0D81 | CD 00 28 : call $2800
            =================================
            2800 | FD 86 02 : add  a,(iy+$02) // calculation routine
            2803 | FD 77 02 : ld   (iy+$02),a
            2806 | C9       : ret
            -->
        </script>
        <script state="change">
            <action>maincpu.mb@0D70 = -param</action>
            <action>maincpu.mb@0D80 =  param</action>
        </script>
        <script state="off">
            <action>maincpu.mq@0D6D = C90235FD0235FDD0</action>
            <action>maincpu.mq@0D7D = C90234FD0234FDD8</action>
            <action>maincpu.mq@2800 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="bullet speed">
        <parameter>
            <item value="0x01">01 (slow)</item>
            <item value="0x06">02       </item>
            <item value="0x0c">03       </item>
            <item value="0x12">04       </item>
            <item value="0x18">05 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.mb@10CA = param</action>
        </script>
        <script state="off">
            <action>maincpu.mb@10CA = 08</action>
        </script>
    </cheat>

</mamecheat>
cosmica22.xml

Code: Select all

<!-- Cosmic Alien (version II, set 2) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mb@0ED2 = 18</action> <!-- bullet -->
            <action>maincpu.mb@180F = 18</action> <!-- monster -->
            <action>maincpu.mb@1B6F = C9</action> <!-- enemy -->
        </script>
        <script state="off">
            <action>maincpu.mb@0ED2 = 38</action>
            <action>maincpu.mb@180F = 30</action>
            <action>maincpu.mb@1B6F = D0</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.mb@0D3F = 00</action>
        </script>
        <script state="off">
            <action>maincpu.mb@0D3F = 24</action>
        </script>
    </cheat>

    <cheat desc="player speed">
        <parameter>
            <item value="0x01">01 (slow)</item>
            <item value="0x02">02       </item>
            <item value="0x06">03       </item>
            <item value="0x0a">04       </item>
            <item value="0x0e">05 (fast)</item>
        </parameter>
        <script state="on">
            <action>maincpu.mq@0D6D = C92800CD003E00D0</action>
            <action>maincpu.mq@0D7D = C92800CD003E00D8</action>
            <action>maincpu.mq@2800 = 00C90277FD0286FD</action>
            <!--
            0D6E | 00       : nop             // left
            0D6F | 3E xx    : ld   a,$xx
            0D71 | CD 00 28 : call $2800
            =================================
            0D7E | 00       : nop             // right
            0D7F | 3E xx    : ld   a,$xx
            0D81 | CD 00 28 : call $2800
            =================================
            2800 | FD 86 02 : add  a,(iy+$02) // calculation routine
            2803 | FD 77 02 : ld   (iy+$02),a
            2806 | C9       : ret
            -->
        </script>
        <script state="change">
            <action>maincpu.mb@0D70 = -param</action>
            <action>maincpu.mb@0D80 =  param</action>
        </script>
        <script state="off">
            <action>maincpu.mq@0D6D = C90235FD0235FDD0</action>
            <action>maincpu.mq@0D7D = C90234FD0234FDD8</action>
            <action>maincpu.mq@2800 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="bullet speed">
        <parameter>
            <item value="0x01">01 (slow)</item>
            <item value="0x08">02       </item>
            <item value="0x0c">03       </item>
            <item value="0x10">04       </item>
            <item value="0x14">05 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.mb@10CA = param</action>
        </script>
        <script state="off">
            <action>maincpu.mb@10CA = 08</action>
        </script>
    </cheat>

</mamecheat>
cosmica23.xml

Code: Select all

<!-- Cosmic Alien (version II, set 3) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mb@0ED2 = 18</action> <!-- bullet -->
            <action>maincpu.mb@180F = 18</action> <!-- monster -->
            <action>maincpu.mb@1B6F = C9</action> <!-- enemy -->
        </script>
        <script state="off">
            <action>maincpu.mb@0ED2 = 38</action>
            <action>maincpu.mb@180F = 30</action>
            <action>maincpu.mb@1B6F = D0</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.mb@0D3F = 00</action>
        </script>
        <script state="off">
            <action>maincpu.mb@0D3F = 24</action>
        </script>
    </cheat>

    <cheat desc="player speed">
        <parameter>
            <item value="0x01">01 (slow)</item>
            <item value="0x02">02       </item>
            <item value="0x06">03       </item>
            <item value="0x0a">04       </item>
            <item value="0x0e">05 (fast)</item>
        </parameter>
        <script state="on">
            <action>maincpu.mq@0D6D = C92800CD003E00D0</action>
            <action>maincpu.mq@0D7D = C92800CD003E00D8</action>
            <action>maincpu.mq@2800 = 00C90277FD0286FD</action>
            <!--
            0D6E | 00       : nop             // left
            0D6F | 3E xx    : ld   a,$xx
            0D71 | CD 00 28 : call $2800
            =================================
            0D7E | 00       : nop             // right
            0D7F | 3E xx    : ld   a,$xx
            0D81 | CD 00 28 : call $2800
            =================================
            2800 | FD 86 02 : add  a,(iy+$02) // calculation routine
            2803 | FD 77 02 : ld   (iy+$02),a
            2806 | C9       : ret
            -->
        </script>
        <script state="change">
            <action>maincpu.mb@0D70 = -param</action>
            <action>maincpu.mb@0D80 =  param</action>
        </script>
        <script state="off">
            <action>maincpu.mq@0D6D = C90235FD0235FDD0</action>
            <action>maincpu.mq@0D7D = C90234FD0234FDD8</action>
            <action>maincpu.mq@2800 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="bullet speed">
        <parameter>
            <item value="0x01">01 (slow)</item>
            <item value="0x08">02       </item>
            <item value="0x0c">03       </item>
            <item value="0x10">04       </item>
            <item value="0x14">05 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.mb@10CA = param</action>
        </script>
        <script state="off">
            <action>maincpu.mb@10CA = 0C</action>
        </script>
    </cheat>

</mamecheat>
cosmica2a.xml

Code: Select all

<!-- Cosmic Alien (early version II?) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mb@0ED2 = 18</action> <!-- bullet -->
            <action>maincpu.mb@1811 = 18</action> <!-- monster -->
            <action>maincpu.mb@1B6D = C9</action> <!-- enemy -->
        </script>
        <script state="off">
            <action>maincpu.mb@0ED2 = 38</action>
            <action>maincpu.mb@1811 = 30</action>
            <action>maincpu.mb@1B6D = D0</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.mb@0D3F = 00</action>
        </script>
        <script state="off">
            <action>maincpu.mb@0D3F = 24</action>
        </script>
    </cheat>

    <cheat desc="player speed">
        <parameter>
            <item value="0x01">01 (slow)</item>
            <item value="0x02">02       </item>
            <item value="0x06">03       </item>
            <item value="0x0a">04       </item>
            <item value="0x0e">05 (fast)</item>
        </parameter>
        <script state="on">
            <action>maincpu.mq@0D6D = C92800CD003E00D0</action>
            <action>maincpu.mq@0D7D = C92800CD003E00D8</action>
            <action>maincpu.mq@2800 = 00C90277FD0286FD</action>
            <!--
            0D6E | 00       : nop             // left
            0D6F | 3E xx    : ld   a,$xx
            0D71 | CD 00 28 : call $2800
            =================================
            0D7E | 00       : nop             // right
            0D7F | 3E xx    : ld   a,$xx
            0D81 | CD 00 28 : call $2800
            =================================
            2800 | FD 86 02 : add  a,(iy+$02) // calculation routine
            2803 | FD 77 02 : ld   (iy+$02),a
            2806 | C9       : ret
            -->
        </script>
        <script state="change">
            <action>maincpu.mb@0D70 = -param</action>
            <action>maincpu.mb@0D80 =  param</action>
        </script>
        <script state="off">
            <action>maincpu.mq@0D6D = C90235FD0235FDD0</action>
            <action>maincpu.mq@0D7D = C90234FD0234FDD8</action>
            <action>maincpu.mq@2800 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="bullet speed">
        <parameter>
            <item value="0x01">01 (slow)</item>
            <item value="0x06">02       </item>
            <item value="0x0c">03       </item>
            <item value="0x12">04       </item>
            <item value="0x18">05 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.mb@10CA = param</action>
        </script>
        <script state="off">
            <action>maincpu.mb@10CA = 08</action>
        </script>
    </cheat>

</mamecheat>
cosmica1.xml

Code: Select all

<!-- Cosmic Alien (first version) -->
<mamecheat version="1">

    <cheat desc="no hit">
        <script state="on">
            <action>maincpu.mb@0E4B = 18</action> <!-- bullet -->
            <action>maincpu.mb@18BB = C9</action> <!-- enemy -->
        </script>
        <script state="off">
            <action>maincpu.mb@0E4B = 38</action>
            <action>maincpu.mb@18BB = D0</action>
        </script>
    </cheat>

    <cheat desc="auto fire">
        <script state="on">
            <action>maincpu.mb@0CB9 = 00</action>
        </script>
        <script state="off">
            <action>maincpu.mb@0CB9 = 24</action>
        </script>
    </cheat>

    <cheat desc="player speed">
        <parameter>
            <item value="0x01">01 (slow)</item>
            <item value="0x02">02       </item>
            <item value="0x06">03       </item>
            <item value="0x0a">04       </item>
            <item value="0x0e">05 (fast)</item>
        </parameter>
        <script state="on">
            <action>maincpu.mq@0CE7 = C92800CD003E00D0</action>
            <action>maincpu.mq@0CF7 = C92800CD003E00D8</action>
            <action>maincpu.mq@2800 = 00C90277FD0286FD</action>
            <!--
            0CE8 | 00       : nop             // left
            0CE9 | 3E xx    : ld   a,$xx
            0CEB | CD 00 28 : call $2800
            =================================
            0CF8 | 00       : nop             // right
            0CF9 | 3E xx    : ld   a,$xx
            0CFB | CD 00 28 : call $2800
            =================================
            2800 | FD 86 02 : add  a,(iy+$02) // calculation routine
            2803 | FD 77 02 : ld   (iy+$02),a
            2806 | C9       : ret
            -->
        </script>
        <script state="change">
            <action>maincpu.mb@0CEA = -param</action>
            <action>maincpu.mb@0CFA =  param</action>
        </script>
        <script state="off">
            <action>maincpu.mq@0CE7 = C90235FD0235FDD0</action>
            <action>maincpu.mq@0CE7 = C90234FD0234FDD8</action>
            <action>maincpu.mq@2800 = 0000000000000000</action>
        </script>
    </cheat>

    <cheat desc="bullet speed">
        <parameter>
            <item value="0x01">01 (slow)</item>
            <item value="0x06">02       </item>
            <item value="0x0c">03       </item>
            <item value="0x12">04       </item>
            <item value="0x18">05 (fast)</item>
        </parameter>
        <script state="change">
            <action>maincpu.mb@102D = param</action>
        </script>
        <script state="off">
            <action>maincpu.mb@102D = 08</action>
        </script>
    </cheat>

</mamecheat>
Monster doesn't appear in cosmica1 (commander transforms into monster when you leave him in the end).
Image
So no code for monster in "no hit" for cosmica1.
Post Reply