Basic RAM codes.
Code: Select all
<cheat desc="infinite credit">
<script state="run">
<action>maincpu.pb@000b = 99</action>
</script>
</cheat>
<cheat desc="infinite life">
<script state="run">
<action>maincpu.pb@0029 = 0a</action>
</script>
</cheat>
Code: Select all
<cheat desc="no hit (wip)">
<script state="run">
<action>maincpu.pw@153f = 6058</action> <!-- enemy -->
<action>maincpu.pw@172d = 6058</action> <!-- meteor -->
<action>maincpu.pw@1b21 = 6058</action> <!-- bullet -->
</script>
<script state="off">
<action>maincpu.pw@153f = 45c5</action>
<action>maincpu.pw@172d = 45c5</action>
<action>maincpu.pw@1b21 = 45c5</action>
</script>
</cheat>
<cheat desc="auto fire (wip)">
<script state="run">
<action>maincpu.pw@190c = fafa</action>
</script>
<script state="off">
<action>maincpu.pw@190c = 4e25</action>
</script>
</cheat>
<cheat desc="player speed (wip)">
<parameter>
<item value="0x01">01 (slow)</item>
<item value="0x04">02 </item>
<item value="0x08">03 </item>
<item value="0x0c">04 </item>
<item value="0x10">05 (fast)</item>
</parameter>
<script state="run">
<action>maincpu.pb@18d1 = -param</action> <!-- up -->
<action>maincpu.pb@18d3 = param</action> <!-- down -->
<action>maincpu.pb@25f2 = param</action> <!-- right -->
<action>maincpu.pb@25f3 = -param</action> <!-- left -->
</script>
<script state="off">
<action>maincpu.pb@18d1 = fc</action>
<action>maincpu.pb@18d3 = 04</action>
<action>maincpu.pb@25f2 = 04</action>
<action>maincpu.pb@25f3 = fc</action>
</script>
</cheat>
<cheat desc="bullet speed (wip)">
<parameter>
<item value="0x01">01 (slow)</item>
<item value="0x06">02 </item>
<item value="0x09">03 </item>
<item value="0x0c">04 </item>
<item value="0x0f">05 (fast)</item>
</parameter>
<script state="run">
<action>maincpu.pb@1b8b = param</action>
</script>
<script state="off">
<action>maincpu.pb@1b8b = 06</action>
</script>
</cheat>
<cheat desc="sound test mode (wip)">
<!-- don't play code 0x40 due to no sound response -->
<comment>reset the game (F3) then wait data load to enter sound test mode</comment>
<script state="run">
<!-- routine -->
<action>maincpu.pw@0523 = 46c0</action>
<action>maincpu.pq@46c0 = f011a5e600cd1185</action>
<action>maincpu.pq@46c8 = 01b002a910c6c8f7</action>
<action>maincpu.pq@46d0 = 08a9e801b001a9aa</action>
<action>maincpu.pq@46d8 = 98ca10e9588a06b0</action>
<action>maincpu.pq@46e0 = 1069188a06b004a9</action>
<action>maincpu.pq@46e8 = 06f010a9108698ca</action>
<action>maincpu.pq@46f0 = 148e00c205b020a9</action>
<action>maincpu.pq@46f8 = 0000000046c02ce4</action>
<!--
46c0 | 85 11 : sta $11
46c2 | ad 00 e6 : lda $e600 // read input
46c5 | c5 11 : cmp $11
46c7 | f0 f7 : beq $46c0
46c9 | a8 : tay
46ca | a6 10 : ldx $10
46cc | c9 02 : cmp #$02
46ce | d0 01 : bne $46d1
46d0 | ca : dex // decrease code -01
46d1 | c9 01 : cmp #$01
46d3 | d0 01 : bne $46d6
46d5 | e8 : inx // increase code +01
46d6 | c9 08 : cmp #$08
46d8 | d0 06 : bne $46e0
46da | 8a : txa // decrease code -10
46db | 38 : sec
46dc | e9 10 : sbc #$10
46de | aa : tax
46df | 98 : tya
46e0 | c9 04 : cmp #$04
46e2 | d0 06 : bne $46ea
46e4 | 8a : txa // increase code +10
46e5 | 18 : clc
46e6 | 69 10 : adc #$10
46e8 | aa : tax
46e9 | 98 : tya
46ea | 86 10 : stx $10
46ec | c9 10 : cmp #$10
46ee | f0 06 : beq $46f6
46f0 | c9 40 : cmp #$20
46f2 | d0 05 : bne $46f9
46f4 | a2 00 : ldx #$00 // stop sound
46f6 | 8e 14 e4 : stx $e414 // send sound code
46f9 | 4c a0 26 : jmp $46c0
-->
<action>audiocpu.pb@0c75 = 58</action> <!-- enable interrupt in playing music to stop sound -->
<!-- display -->
<output format="----- nebula 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="<< sound code %2.2X >>" line="19" align="center" >
<argument>maincpu.pb@0010</argument>
</output>
</script>
<script state="off">
<action> maincpu.pw@0523 = 240b</action>
<action> maincpu.pq@46c0 = 0000000000000000</action>
<action> maincpu.pq@46c8 = 0000000000000000</action>
<action> maincpu.pq@46d0 = 0000000000000000</action>
<action> maincpu.pq@46d8 = 0000000000000000</action>
<action> maincpu.pq@46e0 = 0000000000000000</action>
<action> maincpu.pq@46e8 = 0000000000000000</action>
<action> maincpu.pq@46f0 = 0000000000000000</action>
<action> maincpu.pq@46f8 = 0000000000000000</action>
<action>audiocpu.pb@0c75 = 78</action>
</script>
</cheat>