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.
jman
Posts: 843 Joined: Tue Dec 01, 2020 1:24 pm
Post
by jman » Thu Jun 03, 2021 12:36 pm
Code: Select all
<cheat desc="no hit">
<script state="on">
<!-- bullet -->
<action>maincpu.mb@3faa = 00</action>
<!-- enemy -->
<action>maincpu.md@4319 = fe6ea0c3</action>
<action>maincpu.mq@6ea0 = 431cda04fe087edd</action>
<action>maincpu.mq@6ea8 = 000000000000c9a7</action>
<!--
4319 | c3 a0 6e : jp $6ea0
6ea0 | dd 7e 08 : ld a,(ix+$08)
6ea3 | fe 04 : cp $04
6ea5 | da 1c 43 : jp c,$431c
6ea8 | a7 : and a
6ea9 | c9 : ret
-->
</script>
<script state="off">
<action>maincpu.mb@3faa = 09</action>
<action>maincpu.md@4319 = fe087edd</action>
<action>maincpu.mq@6ea0 = 0000000000000000</action>
<action>maincpu.mq@6ea8 = 0000000000000000</action>
</script>
</cheat>
<cheat desc="auto fire - arrow">
<script state="on">
<action>maincpu.mb@0485 = 00</action>
</script>
<script state="off">
<action>maincpu.mb@0485 = c0</action>
</script>
</cheat>
<cheat desc="player speed">
<parameter>
<item value="0x10">01 (slow)</item>
<item value="0x20">02 </item>
<item value="0x40">03 </item>
<item value="0x60">04 </item>
<item value="0x80">05 (fast)</item>
</parameter>
<script state="change">
<action>maincpu.mb@896d = param</action>
<action>maincpu.mb@8974 = param</action>
<action>maincpu.mb@8976 = param</action>
<action>maincpu.mb@8978 = param</action>
<action>maincpu.mb@897a = param</action>
</script>
<script state="off">
<action>maincpu.mb@896d = 50</action>
<action>maincpu.mb@8974 = 20</action>
<action>maincpu.mb@8976 = 45</action>
<action>maincpu.mb@8978 = 55</action>
<action>maincpu.mb@897a = 60</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@57ac = 0022800021fb56ed</action>
<action>maincpu.mq@57b4 = f6286fbda0183aa0</action>
<action>maincpu.mq@57bc = 0e2808fe0e2804fe</action>
<action>maincpu.mq@57c4 = 0c2810fe0c2801fe</action>
<action>maincpu.mq@57cc = 242402182525e418</action>
<action>maincpu.mq@57d4 = 1827d37c01189c3e</action>
<action>maincpu.mq@57dc = 3e2006d04021edd5</action>
<!--
57ac | ed 56 : im 1
57ae | fb : ei
57af | 21 00 80 : ld hl,$8000 // initialize sound and input values
57b2 | 22 00 a0 : ld ($a000),hl
57b5 | 3a 18 a0 : ld a,($a018) // read input
57b8 | bd : cp l
57b9 | 6f : ld l,a
57ba | 28 f6 : jr z,$57b2
57bc | fe 04 : cp $04 // pressed left?
57be | 28 0e : jr z,$57ce
57c0 | fe 08 : cp $08 // pressed right?
57c2 | 28 0e : jr z,$57d2
57c4 | fe 01 : cp $01 // pressed up?
57c6 | 28 0c : jr z,$57d4
57c8 | fe 10 : cp $10 // pressed button1?
57ca | 28 0c : jr z,$57d8
57cc | 18 e4 : jr $57b2
57ce | 25 : dec h // decrease code
57cf | 25 : dec h
57d0 | 18 02 : jr $57d4
57d2 | 24 : inc h // increase code
57d3 | 24 : inc h
57d4 | 3e 9c : ld a,$9c // stop sound
57d6 | 18 01 : jr $57d9
57d8 | 7c : ld a,h // play sound
57d9 | d3 27 : out ($27),a // send sound code
57db | 18 d5 : jr $57b2
-->
</script>
<script state="run">
<output format="----- itazura tenshi 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 : stop sound" line="13" align="center" />
<output format="button 1 : play sound" line="14" align="center" />
<output format="----------------------------" line="15" align="center" />
<output format="<< sound code %2.2X >>" line="17" align="center">
<argument>maincpu.pb@a001</argument>
</output>
</script>
<script state="off">
<action>maincpu.mq@57ac = 65da01fea00f3ac9</action>
<action>maincpu.mq@57b4 = 36040001c0002158</action>
<action>maincpu.mq@57bc = ddf820b0790b2388</action>
<action>maincpu.mq@57c4 = dd8a0e0e06c06221</action>
<action>maincpu.mq@57cc = 2071dd0171dd0071</action>
<action>maincpu.mq@57d4 = 23dd23dd0c2171dd</action>
<action>maincpu.mq@57dc = 3e2006d04021ed10</action>
</script>
</cheat>
<cheat desc="skip ram/rom check">
<script state="on">
<action>maincpu.mw@0027 = 0918</action>
</script>
<script state="off">
<action>maincpu.mw@0027 = eacd</action>
</script>
</cheat>
"player speed" changes moving speed after you press arrow button in case of no arrow. However, speed changes soon without pressing button if you have an arrow.
"sound test mode" stops responding to "play/stop sound" function after you set sound code between 0x44 and 0x56.
jman
Posts: 843 Joined: Tue Dec 01, 2020 1:24 pm
Post
by jman » Fri Jul 01, 2022 1:47 pm
Code: Select all
<cheat desc="sound test mode">
<comment>reset the game (F3) to enter sound test mode</comment>
<script state="on">
<action>maincpu.mq@57ac = 02dba00021fb56ed</action>
<action>maincpu.mq@57b4 = 2f00db470f01e62f</action>
<action>maincpu.mq@57bc = 2004fef1284fb9b0</action>
<action>maincpu.mq@57c4 = 34022008fe353502</action>
<action>maincpu.mq@57cc = 18f03e042002fe34</action>
<action>maincpu.mq@57d4 = 86103e052001fe06</action>
<action>maincpu.mq@57dc = 187e032010fe7877</action>
<action>maincpu.mq@57e4 = d39c3e042080fe06</action>
<action>maincpu.mq@57ec = 0000000000c31827</action>
<!--
57ac | ed 56 : im 1
57ae | fb : ei // enable interrupt
57af | 21 00 a0 : ld hl,$A000 // sound code address
57b2 | db 02 : in a,($02) // read start button input
57b4 | 2f : cpl
57b5 | e6 01 : and $01
57b7 | 0f : rrca
57b8 | 47 : ld b,a
57b9 | db 00 : in a,($00) // read other inputs
57bb | 2f : cpl
57bc | b0 : or b
57bd | b9 : cp c
57be | 4f : ld c,a
57bf | 28 f1 : jr z,$57B2
57c1 | fe 04 : cp $04
57c3 | 20 02 : jr nz,$57C7
57c5 | 35 : dec (hl) // decrease code -01
57c6 | 35 : dec (hl)
57c7 | fe 08 : cp $08
57c9 | 20 02 : jr nz,$57CD
57cb | 34 : inc (hl) // increase code +01
57cc | 34 : inc (hl)
57cd | fe 02 : cp $02
57cf | 20 04 : jr nz,$57D5
57d1 | 3e f0 : ld a,$F0 // decrease code -10
57d3 | 18 06 : jr $57DB
57d5 | fe 01 : cp $01
57d7 | 20 05 : jr nz,$57DE
57d9 | 3e 10 : ld a,$10 // increase code +10
57db | 86 : add a,(hl)
57dc | 77 : ld (hl),a
57dd | 78 : ld a,b
57de | fe 10 : cp $10
57e0 | 20 03 : jr nz,$57E5
57e2 | 7e : ld a,(hl) // play sound
57e3 | 18 06 : jr $57EB
57e5 | fe 80 : cp $80
57e7 | 20 04 : jr nz,$57ED
57e9 | 3e 9c : ld a,$9C // stop sound
57eb | d3 27 : out ($27),a // send sound code
57ed | 18 c3 : jr $57B2
-->
<action>audiocpu.mw@02e8 = 0b09</action> <!-- stop sfx and music at the same time -->
</script>
<script state="run">
<output format="----- itazura tenshi 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="<< sound code %2.2X >>" line="19" align="center" >
<argument>maincpu.pb@a000</argument>
</output>
</script>
<script state="off">
<action> maincpu.mq@57ac = 65da01fea00f3ac9</action>
<action> maincpu.mq@57b4 = 36040001c0002158</action>
<action> maincpu.mq@57bc = ddf820b0790b2388</action>
<action> maincpu.mq@57c4 = dd8a0e0e06c06221</action>
<action> maincpu.mq@57cc = 2071dd0171dd0071</action>
<action> maincpu.mq@57d4 = 23dd23dd0c2171dd</action>
<action> maincpu.mq@57dc = 3e2006d04021ed10</action>
<action> maincpu.mq@57e4 = d06021fc102377d0</action>
<action> maincpu.mq@57ec = 77001f11d03e1c06</action>
<action> maincpu.mq@57f4 = 1021ddfa10237719</action>
<action>audiocpu.mw@02e8 = 0147</action>
</script>
</cheat>
"sound test mode" : clean up. add up/down key (code±10). change sound stop button from "up" to "start". fix sfx stop when you press sound stop button.
jman
Posts: 843 Joined: Tue Dec 01, 2020 1:24 pm
Post
by jman » Sun Dec 24, 2023 10:10 am
Code: Select all
<!-- Itazura Tenshi (Japan) -->
<mamecheat version="1">
<cheat desc="no hit">
<script state="on">
<!-- bullet -->
<action>maincpu.mb@3FAA = 00</action>
<!-- enemy -->
<action>maincpu.md@4319 = FE6EA0C3 </action>
<action>maincpu.mq@6EA0 = 431CDA04FE087EDD</action>
<action>maincpu.mq@6EA8 = 000000000000C9A7</action>
<!--
6EA0 | DD 7E 08 : ld a,(ix+$08)
6EA3 | FE 04 : cp $04
6EA5 | DA 1C 43 : jp c,$431C
6EA8 | A7 : and a
6EA9 | C9 : ret
-->
</script>
<script state="off">
<action>maincpu.mb@3FAA = 09 </action>
<action>maincpu.md@4319 = FE087EDD </action>
<action>maincpu.mq@6EA0 = 0000000000000000</action>
<action>maincpu.mq@6EA8 = 0000000000000000</action>
</script>
</cheat>
<cheat desc="auto fire - arrow">
<script state="on">
<action>maincpu.mb@0485 = 00</action>
</script>
<script state="off">
<action>maincpu.mb@0485 = C0</action>
</script>
</cheat>
<cheat desc="player speed">
<parameter>
<item value="0x10">01 (slow)</item>
<item value="0x20">02 </item>
<item value="0x40">03 </item>
<item value="0x60">04 </item>
<item value="0x80">05 (fast)</item>
</parameter>
<script state="change">
<action>maincpu.mb@896D = param</action>
<action>maincpu.mb@8974 = param</action>
<action>maincpu.mb@8976 = param</action>
<action>maincpu.mb@8978 = param</action>
<action>maincpu.mb@897A = param</action>
</script>
<script state="off">
<action>maincpu.mb@896D = 50</action>
<action>maincpu.mb@8974 = 20</action>
<action>maincpu.mb@8976 = 45</action>
<action>maincpu.mb@8978 = 55</action>
<action>maincpu.mb@897A = 60</action>
</script>
</cheat>
<cheat desc="arrow">
<script state="on">
<action>maincpu.mb@03B3 = CD</action>
</script>
<script state="off">
<action>maincpu.mb@03B3 = C2</action>
</script>
</cheat>
<cheat desc="1 star to complete constellation">
<script state="on">
<action>maincpu.mb@23AB = 18</action>
<action>maincpu.mb@3E05 = 9A</action>
</script>
<script state="off">
<action>maincpu.mb@23AB = 38</action>
<action>maincpu.mb@3E05 = 7B</action>
</script>
</cheat>
<cheat desc="1 constellation to finish cosmos">
<script state="on">
<action>maincpu.mb@2753 = 41</action>
<action>maincpu.mb@2756 = 18</action>
</script>
<script state="off">
<action>maincpu.mb@2753 = 22</action>
<action>maincpu.mb@2756 = 28</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@57AC = 02DBA00021FB56ED</action>
<action>maincpu.mq@57B4 = 2F00DB470F01E62F</action>
<action>maincpu.mq@57BC = 2004FEF1284FB9B0</action>
<action>maincpu.mq@57C4 = 34022008FE353502</action>
<action>maincpu.mq@57CC = 18F03E042002FE34</action>
<action>maincpu.mq@57D4 = 86103E052001FE06</action>
<action>maincpu.mq@57DC = 187E032010FE7877</action>
<action>maincpu.mq@57E4 = D39C3E042080FE06</action>
<action>maincpu.mq@57EC = 0000000000C31827</action>
<!--
57AC | ED 56 : im 1
57AE | FB : ei // enable interrupt
57AF | 21 00 A0 : ld hl,$A000 // sound code address
57B2 | DB 02 : in a,($02) // read start button
57B4 | 2F : cpl
57B5 | E6 01 : and $01
57B7 | 0F : rrca
57B8 | 47 : ld b,a
57B9 | DB 00 : in a,($00) // read other inputs
57BB | 2F : cpl
57BC | B0 : or b
57BD | B9 : cp c
57BE | 4F : ld c,a
57BF | 28 F1 : jr z,$57B2
57C1 | FE 04 : cp $04
57C3 | 20 02 : jr nz,$57C7
57C5 | 35 : dec (hl) // decrease code -02
57C6 | 35 : dec (hl)
57C7 | FE 08 : cp $08
57C9 | 20 02 : jr nz,$57CD
57CB | 34 : inc (hl) // increase code +02
57CC | 34 : inc (hl)
57CD | FE 02 : cp $02
57CF | 20 04 : jr nz,$57D5
57D1 | 3E F0 : ld a,$F0 // decrease code -10
57D3 | 18 06 : jr $57DB
57D5 | FE 01 : cp $01
57D7 | 20 05 : jr nz,$57DE
57D9 | 3E 10 : ld a,$10 // increase code +10
57DB | 86 : add a,(hl)
57DC | 77 : ld (hl),a
57DD | 78 : ld a,b
57DE | FE 10 : cp $10
57E0 | 20 03 : jr nz,$57E5
57E2 | 7E : ld a,(hl) // play sound
57E3 | 18 06 : jr $57EB
57E5 | FE 80 : cp $80
57E7 | 20 04 : jr nz,$57ED
57E9 | 3E 9C : ld a,$9C // stop sound
57EB | D3 27 : out ($27),a // send sound code
57ED | 18 C3 : jr $57B2
-->
<action>audiocpu.mw@02E8 = 0B09</action> <!-- stop sfx and music at the same time -->
</script>
<script state="run">
<output format="----- itazura tenshi 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="<< sound code %02X >>" line="19" align="center" >
<argument>maincpu.pb@A000</argument>
</output>
</script>
<script state="off">
<action> maincpu.mq@57AC = 65DA01FEA00F3AC9</action>
<action> maincpu.mq@57B4 = 36040001C0002158</action>
<action> maincpu.mq@57BC = DDF820B0790B2388</action>
<action> maincpu.mq@57C4 = DD8A0E0E06C06221</action>
<action> maincpu.mq@57CC = 2071DD0171DD0071</action>
<action> maincpu.mq@57D4 = 23DD23DD0C2171DD</action>
<action> maincpu.mq@57DC = 3E2006D04021ED10</action>
<action> maincpu.mq@57E4 = D06021FC102377D0</action>
<action> maincpu.mq@57EC = 77001F11D03E1C06</action>
<action>audiocpu.mw@02E8 = 0147 </action>
</script>
</cheat>
<cheat desc="skip ram/rom check">
<script state="on">
<action>maincpu.mw@0027 = 0918</action>
</script>
<script state="off">
<action>maincpu.mw@0027 = EACD</action>
</script>
</cheat>
</mamecheat>
"1 star to complete constellation", "1 constellation to finish cosmos" : Added new.