This game uses a custom Sonic engine for some reason, so many cheats aren't compatible with other games.
Code: Select all
<cheat desc="Enable Level Select">
<script state="run">
<action>maincpu.pw@FFFF08=0101</action>
</script>
</cheat>
<cheat desc="Enable Debug Mode">
<script state="run">
<action>maincpu.pb@FFFFDA=01</action>
</script>
</cheat>
<cheat desc="Have All Emeralds">
<script state="run">
<action>maincpu.pw@FFFFB0=0707</action>
</script>
</cheat>
<cheat desc="Infinite Time">
<script state="run">
<action>maincpu.pw@FFFE24=0000</action>
</script>
</cheat>
<cheat desc="-- Knuckles --"/>
<cheat desc="Infinite Lives">
<script state="run">
<action>maincpu.pb@FFFE12=63</action>
</script>
</cheat>
<cheat desc="Infinite Rings">
<script state="run">
<action>maincpu.pw@FFFE20=03E7</action>
</script>
</cheat>
<cheat desc="Speed Select">
<parameter>
<item value="0x06">Default</item>
<item value="0x08">Super Knuckles</item>
<item value="0x0A">Super Sonic</item>
<item value="0x0C">Shoes</item>
<item value="0x0F">Blazing Fast</item>
</parameter>
<script state="run">
<action>maincpu.pb@FFF760=param</action>
</script>
</cheat>
<cheat desc="Acceleration Select">
<parameter>
<item value="0x0C">Default</item>
<item value="0x18">Shoes / Super Knuckles</item>
<item value="0x30">Super Sonic</item>
<item value="0x50">Blazing Fast</item>
<item value="0xFF">Instant</item>
</parameter>
<script state="run">
<action>maincpu.pb@FFF763=param</action>
</script>
</cheat>
<cheat desc="Cannot be Hit">
<script state="run">
<action>maincpu.pb@FFB031=3F</action>
</script>
</cheat>
<cheat desc="Never Drown">
<script state="run">
<action>maincpu.pb@FFB028=1E</action>
</script>
</cheat>
<cheat desc="Super Glow">
<parameter>
<item value="00">Disabled</item>
<item value="01">Enabled</item>
</parameter>
<script state="run">
<action condition="param==01">maincpu.pb@FFF65F=FF</action>
<action condition="param==00">maincpu.pb@FFF65F=00</action>
</script>
</cheat>
<cheat desc="Become Super Mode NOW!"><comment>Sprite and stats only.</comment>
<parameter>
<item value="0x99">Disable</item>
<item value="0x12">Enable</item>
</parameter>
<script state="change">
<action>maincpu.pb@FFFFFC=param</action>
<action condition="param==99">maincpu.pb@FFFE19=00</action>
<action condition="param==99 and maincpu.pd@FFB000==00010A94 and maincpu.pw@FFB020 GT 0000">maincpu.pw@FFB00E=6629</action>
<action condition="param==99 and maincpu.pd@FFB000==00011BB8 and maincpu.pw@FFB020 GT 0000">maincpu.pw@FFB00E=0FE0</action>
<action condition="param==12">maincpu.pb@FFFE19=FF</action>
</script>
</cheat>
<cheat desc="... Make Cheat Permanent"><comment>Enable First. Must redo prior cheat on reset.</comment>
<script state="run">
<action condition="maincpu.pb@FFFFFC==99">maincpu.pb@FFFE19=00</action>
<action condition="maincpu.pb@FFFFFC==99 and maincpu.pd@FFB000==00010A94 and maincpu.pw@FFB020 GT 0000">maincpu.pw@FFB00E=6629</action>
<action condition="maincpu.pb@FFFFFC==99 and maincpu.pd@FFB000==00011BB8 and maincpu.pw@FFB020 GT 0000">maincpu.pw@FFB00E=0FE0</action>
<action condition="maincpu.pb@FFFFFC==12">maincpu.pb@FFFE19=FF</action>
</script>
</cheat>
<cheat desc="Shield Dips - Can Combine Effects!"/>
<cheat desc="Generic Shield">
<parameter>
<item value="00">Disabled</item>
<item value="01">Enabled</item>
</parameter>
<script state="run">
<action condition="param==01">maincpu.pb@FFB02B=01|(maincpu.pb@FFB02B BAND ~01)</action>
<action condition="param==00">maincpu.pb@FFB02B=00|(maincpu.pb@FFB02B BAND ~01)</action>
</script>
</cheat>
<cheat desc="Invincibility">
<parameter>
<item value="00">Disabled</item>
<item value="01">Enabled</item>
</parameter>
<script state="run">
<action condition="param==01">maincpu.pb@FFB02B=02|(maincpu.pb@FFB02B BAND ~02)</action>
<action condition="param==00">maincpu.pb@FFB02B=00|(maincpu.pb@FFB02B BAND ~02)</action>
</script>
</cheat>