New MAME Cheat engine....some example conversions
Posted: Sun Aug 17, 2008 4:28 pm
As some of you maybe aware, I am currently in the process of coding a convertor util (>90% complete) to convert cheat.dat into 7183 xml files. I thought I'd take this opportunity to show some examples simply to scare most of the cheat finders...... It scares me and I've had longer to get used to it.....be afraid
bankp.xml
invaders.xml
cham24.xml
bankp.xml
Code: Select all
<mamecheat version="1">
<cheat desc="Infinite Time">
<script state="run">
<action>main.pb@E0A5=38</action>
</script>
</cheat>
<cheat desc="Infinite Bomb Time"> <comment>You will still need to shoot the bomb on the door to let someone through to deposit money but the bomb will never go off.</comment>
<script state="run">
<action>main.pb@E078=39</action>
</script>
</cheat>
<cheat desc="Infinite Lives">
<script state="run">
<action>main.pb@E0A0=06</action>
</script>
</cheat>
<cheat desc="One Money Bag needed Now!">
<script state="on">
<action>main.pb@E0CC=0B</action>
</script>
</cheat>
<cheat desc="Auto Shooting a Robber" tempvariables="16">
<script state="on">
<action>temp0=main.md@99CD</action>
<action>temp1=main.md@DFBA</action>
<action>temp2=main.md@DFBD</action>
<action>temp3=main.md@DFC1</action>
<action>temp4=main.mw@DFC4</action>
<action>temp5=main.md@DFC6</action>
<action>temp6=main.mw@DFCA</action>
<action>temp7=main.md@DFCC</action>
<action>temp8=main.md@DFCF</action>
<action>temp9=main.md@DFD3</action>
<action>temp10=main.md@DFD6</action>
<action>temp11=main.md@DFD8</action>
<action>temp12=main.mw@DFDC</action>
<action>temp13=main.md@DFDE</action>
<action>temp14=main.md@DFE2</action>
<action>temp15=main.md@DFE5</action>
</script>
<script state="run">
<action>main.md@99CD=00DFBACD|(main.md@99CD BAND ~00FFFFFF)</action>
<action>main.md@DFBA=00D5E5DD|(main.md@DFBA BAND ~00FFFFFF)</action> <!-- 1st = call $DFBA, 2nd = push ix / push de -->
<action>main.md@DFBD=E46021DD</action> <!-- ld ix,$E460 -->
<action>main.md@DFC1=00002011|(main.md@DFC1 BAND ~00FFFFFF)</action> <!-- ld de,$0020 -->
<action>main.mw@DFC4=013E</action> <!-- ld a,$01 -->
<action>main.md@DFC6=7602CBDD</action> <!-- bit 6,(ix+$02) -->
<action>main.mw@DFCA=0C20</action> <!-- jr nz,$DFD8 -->
<action>main.md@DFCC=003C19DD|(main.md@DFCC BAND ~00FFFFFF)</action> <!-- add ix,de / inc a -->
<action>main.md@DFCF=F32004FE</action> <!-- cp $04 / jr nz,$DFC6 -->
<action>main.md@DFD3=00E0063A|(main.md@DFD3 BAND ~00FFFFFF)</action> <!-- ld a,($E006) -->
<action>main.md@DFD6=00000D18|(main.md@DFD6 BAND ~00FFFFFF)</action> <!-- jr $DFE5 -->
<action>main.md@DFD8=022003FE</action> <!-- cp $03 / jr nz,$DFDE -->
<action>main.mw@DFDC=043E</action> <!-- ld a,$04 -->
<action>main.md@DFDE=07070707</action> <!-- rlca / rlca / rlca / rlca -->
<action>main.md@DFE2=00E00632|(main.md@DFE2 BAND ~00FFFFFF)</action> <!-- ld ($E006),a -->
<action>main.md@DFE5=C9E1DDD1</action> <!-- pop de / pop ix / ret -->
</script>
<script state="off">
<action>main.md@99CD=temp0</action>
<action>main.md@DFBA=temp1</action>
<action>main.md@DFBD=temp2</action>
<action>main.md@DFC1=temp3</action>
<action>main.mw@DFC4=temp4</action>
<action>main.md@DFC6=temp5</action>
<action>main.mw@DFCA=temp6</action>
<action>main.md@DFCC=temp7</action>
<action>main.md@DFCF=temp8</action>
<action>main.md@DFD3=temp9</action>
<action>main.md@DFD6=temp10</action>
<action>main.md@DFD8=temp11</action>
<action>main.mw@DFDC=temp12</action>
<action>main.md@DFDE=temp13</action>
<action>main.md@DFE2=temp14</action>
<action>main.md@DFE5=temp15</action>
</script>
</cheat>
<cheat desc="Rapid Fire">
<script state="run">
<action>main.pb@E071=00|(main.pb@E071 BAND ~70)</action>
</script>
</cheat>
<cheat desc="[ Sound Test is enabled after ]"/>
<cheat desc="[ 1st inserted a credit. ]"/>
<cheat desc="[ Left/Right = Select a code, ]"/>
<cheat desc="[ B1 = Play, B2 = Play Fast ]"/>
<cheat desc="Sound Test" tempvariables="17">
<script state="on">
<action>temp0=main.md@0334</action>
<action>temp1=main.md@0337</action>
<action>temp2=main.mw@033B</action>
<action>temp3=main.md@033D</action>
<action>temp4=main.md@0341</action>
<action>temp5=main.md@0345</action>
<action>temp6=main.md@0349</action>
<action>temp7=main.md@034D</action>
<action>temp8=main.md@0351</action>
<action>temp9=main.md@0354</action>
<action>temp10=main.md@0357</action>
<action>temp11=main.md@035B</action>
<action>temp12=main.md@035F</action>
<action>temp13=main.mw@0362</action>
<action>temp14=main.md@0364</action>
<action>temp15=main.md@0368</action>
<action>temp16=main.mw@036B</action>
</script>
<script state="run">
<output format="Sound Code : %02X">
<argument>main.pb@(E010)</argument>
</output>
<action>main.md@0334=004700DB|(main.md@0334 BAND ~00FFFFFF)</action> <!-- in a,($00) / ld b,a -->
<action>main.md@0337=B8E0113A</action> <!-- ld a,($E011) / cp b -->
<action>main.mw@033B=2E28</action> <!-- jr z,$036B -->
<action>main.md@033D=78E01021</action> <!-- ld hl,$E010 / ld a,b -->
<action>main.md@0341=0E2802FE</action> <!-- cp $02 / jr z,$0353 -->
<action>main.md@0345=0D2808FE</action> <!-- cp $08 / jr z,$0356 -->
<action>main.md@0349=102810FE</action> <!-- cp $10 / jr z,$035D -->
<action>main.md@034D=082880FE</action> <!-- cp $80 / jr z,$0359 -->
<action>main.md@0351=00341418|(main.md@0351 BAND ~00FFFFFF)</action> <!-- jr $0367 / inc (hl) -->
<action>main.md@0354=00351118|(main.md@0354 BAND ~00FFFFFF)</action> <!-- jr $0367 / dec (hl) -->
<action>main.md@0357=FF160E18</action> <!-- jr $0367 / ld d,$FF -->
<action>main.md@035B=00160218</action> <!-- jr $035E / ld d,$00 -->
<action>main.md@035F=00001E7E|(main.md@035F BAND ~00FFFFFF)</action> <!-- ld a,(hl) / ld e,$00 -->
<action>main.mw@0362=000E</action> <!-- ld c,$00 -->
<action>main.md@0364=78DA04CD</action> <!-- call $DA04 / ld a,b -->
<action>main.md@0368=00E01132|(main.md@0368 BAND ~00FFFFFF)</action> <!-- ld ($E011),a -->
<action>main.mw@036B=C718</action> <!-- jr $0334 -->
</script>
<script state="off">
<action>main.md@0334=temp0</action>
<action>main.md@0337=temp1</action>
<action>main.mw@033B=temp2</action>
<action>main.md@033D=temp3</action>
<action>main.md@0341=temp4</action>
<action>main.md@0345=temp5</action>
<action>main.md@0349=temp6</action>
<action>main.md@034D=temp7</action>
<action>main.md@0351=temp8</action>
<action>main.md@0354=temp9</action>
<action>main.md@0357=temp10</action>
<action>main.md@035B=temp11</action>
<action>main.md@035F=temp12</action>
<action>main.mw@0362=temp13</action>
<action>main.md@0364=temp14</action>
<action>main.md@0368=temp15</action>
<action>main.mw@036B=temp16</action>
</script>
</cheat>
</mamecheat>
<!-- Cheat file created from cheat.dat by http://cheat.retrogames.com, see cheat.txt for list of contributors. -->
Code: Select all
<mamecheat version="1">
<cheat desc="Invaders never drop">
<script state="run">
<action>main.pb@2009=78</action>
</script>
</cheat>
<cheat desc="Invaders don't fire">
<script state="run">
<action>main.pw@2069=3000</action>
</script>
</cheat>
<cheat desc="Bullet Invincibility">
<script state="on">
<action>temp0=main.mb@0293</action>
</script>
<script state="run">
<action>main.mb@0293=C3</action>
<action>main.pb@2094=00|(main.pb@2094 BAND ~04)</action>
<action>main.pb@2015=FF</action>
</script>
<script state="off">
<action>main.mb@0293=temp0</action>
</script>
</cheat>
<cheat desc="Bullet Speed always =">
<parameter variable="param">
<item value="00">Off</item>
<item value="01">Slow</item>
<item value="02">Normal</item>
<item value="03">Fast</item>
<item value="04">V Fast</item>
<item value="05">Turbo</item>
</parameter>
<script state="run">
<action condition="(param==01)">main.pb@202C=02</action>
<action condition="(param==02)">main.pb@202C=04</action>
<action condition="(param==03)">main.pb@202C=06</action>
<action condition="(param==04)">main.pb@202C=08</action>
<action condition="(param==05)">main.pb@202C=0A</action>
</script>
</cheat>
<cheat desc="Autofire Mode">
<script state="on">
<action>temp0=main.mb@163E</action>
</script>
<script state="run">
<action>main.mb@163E=00</action>
</script>
<script state="off">
<action>main.mb@163E=temp0</action>
</script>
</cheat>
<cheat desc=" "/>
<cheat desc="Infinite Lives PL1">
<script state="run">
<action>main.pb@21FF=07</action>
</script>
</cheat>
<cheat desc="Kill All Invaders Now! PL1">
<script state="on">
<action>main.pd@2100=00000000</action>
<action>main.pd@2104=00000000</action> <!-- 1st Line 2100 to 210A -->
<action>main.pd@2108=00000000</action> <!-- 2nd Line 210B to 2115 -->
<action>main.pd@210C=00000000</action> <!-- 3rd Line 2116 to 2120 -->
<action>main.pd@2110=00000000</action> <!-- 4th Line 2121 to 212B -->
<action>main.pd@2114=00000000</action> <!-- Top Line 212C to 2136 -->
<action>main.pd@2118=00000000</action>
<action>main.pd@211C=00000000</action>
<action>main.pd@2120=00000000</action>
<action>main.pd@2124=00000000</action>
<action>main.pd@2128=00000000</action>
<action>main.pd@212C=00000000</action>
<action>main.pd@2130=00000000</action>
<action>main.pd@2134=00000000|(main.pd@2134 BAND ~00FFFFFF)</action>
</script>
</cheat>
<cheat desc="Infinite Lives PL2">
<script state="run">
<action>main.pb@22FF=07</action>
</script>
</cheat>
<cheat desc="Kill All Invaders Now! PL2">
<script state="on">
<action>main.pd@2200=00000000</action>
<action>main.pd@2204=00000000</action> <!-- 1st Line 2200 to 220A -->
<action>main.pd@2208=00000000</action> <!-- 2nd Line 220B to 2215 -->
<action>main.pd@220C=00000000</action> <!-- 3rd Line 2216 to 2220 -->
<action>main.pd@2210=00000000</action> <!-- 4th Line 2221 to 222B -->
<action>main.pd@2214=00000000</action> <!-- Top Line 222C to 2236 -->
<action>main.pd@2218=00000000</action>
<action>main.pd@221C=00000000</action>
<action>main.pd@2220=00000000</action>
<action>main.pd@2224=00000000</action>
<action>main.pd@2228=00000000</action>
<action>main.pd@222C=00000000</action>
<action>main.pd@2230=00000000</action>
<action>main.pd@2234=00000000|(main.pd@2234 BAND ~00FFFFFF)</action>
</script>
</cheat>
</mamecheat>
<!-- Cheat file created from cheat.dat by http://cheat.retrogames.com, see cheat.txt for list of contributors. -->
cham24.xml
Code: Select all
<mamecheat version="1">
<cheat desc="Select Game"> <comment>Faster and easier than the ingame selection</comment>
<parameter variable="param">
<item value="00">Off</item>
<item value="01">01. Star Soldier</item>
<item value="02">02. Goonies</item>
<item value="03">03. Mario Bros 2</item>
<item value="04">04. Grading (Gradius)</item>
<item value="05">05. Legedry (The Legend of Kage)</item>
<item value="06">06. B-Wings</item>
<item value="07">07. Exerion</item>
<item value="08">08. Front Line</item>
<item value="09">09. Macross</item>
<item value="10">10. Arkanoid</item>
<item value="11">11. Islander (Wonder Boy)</item>
<item value="12">12. Nuts + Milk</item>
<item value="13">13. Pac-man</item>
<item value="14">14. Battle City</item>
<item value="15">15. Dig Dug</item>
<item value="16">16. Pooyan</item>
<item value="17">17. Twin Bee</item>
<item value="18">18. Donkey Kong</item>
<item value="19">19. Spartan-X</item>
<item value="20">20. Galaxian</item>
<item value="21">21. Star Force</item>
<item value="22">22. Xevious</item>
<item value="23">23. Galaga</item>
<item value="24">24. Super Pinball</item>
</parameter>
<script state="run">
<action condition="(param==01)">main.pw@000B=0000</action>
<action condition="(param==02)">main.pw@000B=0100</action>
<action condition="(param==03)">main.pw@000B=0200</action>
<action condition="(param==04)">main.pw@000B=0300</action>
<action condition="(param==05)">main.pw@000B=0400</action>
<action condition="(param==06)">main.pw@000B=0500</action>
<action condition="(param==07)">main.pw@000B=0600</action>
<action condition="(param==08)">main.pw@000B=0700</action>
<action condition="(param==09)">main.pw@000B=0800</action>
<action condition="(param==10)">main.pw@000B=0900</action>
<action condition="(param==11)">main.pw@000B=0A00</action>
<action condition="(param==12)">main.pw@000B=0B00</action>
<action condition="(param==13)">main.pw@000B=0001</action>
<action condition="(param==14)">main.pw@000B=0101</action>
<action condition="(param==15)">main.pw@000B=0201</action>
<action condition="(param==16)">main.pw@000B=0301</action>
<action condition="(param==17)">main.pw@000B=0401</action>
<action condition="(param==18)">main.pw@000B=0501</action>
<action condition="(param==19)">main.pw@000B=0601</action>
<action condition="(param==20)">main.pw@000B=0701</action>
<action condition="(param==21)">main.pw@000B=0801</action>
<action condition="(param==22)">main.pw@000B=0901</action>
<action condition="(param==23)">main.pw@000B=0A01</action>
<action condition="(param==24)">main.pw@000B=0B01</action>
</script>
</cheat>
<cheat desc="------------------"/>
<cheat desc="01. Star Soldier"/>
<cheat desc="------------------"/>
<cheat desc="Select Starting Stage">
<parameter variable="param" min="1" max="7" step="1"/>
<script state="run">
<action condition="(main.pb@0036==01)">main.pb@0036=(param)</action>
</script>
</cheat>
<cheat desc="Infinite Lives">
<script state="run">
<action>main.pb@0037=09</action>
</script>
</cheat>
<cheat desc="Invincibility"> <comment>Doesn't work against crashing into the end of stage 'Mother Brain'</comment>
<script state="run">
<action>main.pb@0040=37</action>
</script>
</cheat>
<cheat desc="Auto 5-Way Shot">
<script state="run">
<action>main.pw@003C=0504</action>
</script>
</cheat>
<cheat desc="1 Hit Kills">
<script state="run">
<action>main.pb@0027=FF</action>
</script>
</cheat>
<cheat desc="-------------"/>
<cheat desc="02. Goonies"/>
<cheat desc="-------------"/>
<cheat desc="Infinite Time">
<script state="run">
<action>main.pb@0090=99</action>
</script>
</cheat>
<cheat desc="Infinite Lives">
<script state="run">
<action>main.pb@0046=99</action>
</script>
</cheat>
<cheat desc="Infinite Energy">
<script state="run">
<action>main.pb@00A0=17</action>
</script>
</cheat>
<cheat desc="Invincibility">
<script state="run">
<action>main.pb@00D0=02</action>
<action>main.pb@05DD=02</action>
<action>main.pb@004B=9F</action>
</script>
</cheat>
<cheat desc="Infinite Bombs">
<script state="run">
<action>main.pb@05F3=FA</action>
</script>
</cheat>
<cheat desc="Infinite Keys">
<script state="run">
<action>main.pb@05DF=04</action>
</script>
</cheat>
<cheat desc="Infinite Catapult Ammo">
<script state="run">
<action>main.pb@05F2=64</action>
</script>
</cheat>
<cheat desc="Maximum Rescues">
<script state="run">
<action>main.pb@05D6=07</action>
</script>
</cheat>
<cheat desc="Always have Earplugs"> <comment>No damage against gang's note attack</comment>
<script state="run">
<action>main.pb@0049=01|(main.pb@0049 BAND ~01)</action>
</script>
</cheat>
<cheat desc="Always have Waterproof Wear"> <comment>No damage against steam, drop of water and waterfall</comment>
<script state="run">
<action>main.pb@0049=02|(main.pb@0049 BAND ~02)</action>
</script>
</cheat>
<cheat desc="Always have Helmet"> <comment>No damage against a falling rock</comment>
<script state="run">
<action>main.pb@0049=04|(main.pb@0049 BAND ~04)</action>
</script>
</cheat>
<cheat desc="Always have Fireproof Wear"> <comment>No damage against fire</comment>
<script state="run">
<action>main.pb@0049=08|(main.pb@0049 BAND ~08)</action>
</script>
</cheat>
<cheat desc="Always have Rucksack"> <comment>Enables you to have 2 bombs at the same time</comment>
<script state="run">
<action>main.pb@0049=10|(main.pb@0049 BAND ~10)</action>
</script>
</cheat>
<cheat desc="Always have Armor"> <comment>No damage against gang's gun, skeleton's bone attack and bat</comment>
<script state="run">
<action>main.pb@0049=20|(main.pb@0049 BAND ~20)</action>
</script>
</cheat>
<cheat desc="Always have Hyper Shoes"> <comment>Enable long jump at the particular place</comment>
<script state="run">
<action>main.pb@0049=40|(main.pb@0049 BAND ~40)</action>
</script>
</cheat>
<cheat desc="Rapid Fire">
<script state="run">
<action>main.pb@0007=00|(main.pb@0007 BAND ~40)</action>
</script>
</cheat>
<cheat desc="Always have 7 Diamonds"> <comment>Energy recovery when you get a diamond</comment>
<script state="run">
<action>main.pb@05D8=07</action>
</script>
</cheat>
<cheat desc="Always Red Pod Changes Yellow"> <comment>Yellow Pod gives a extra life</comment>
<script state="run">
<action>main.pb@0093=01</action>
</script>
</cheat>
<cheat desc="------------------"/>
<cheat desc="03. Mario Bros 2"/>
<cheat desc="------------------"/>
<cheat desc="Infinite Time">
<script state="run">
<action condition="(frame % 120 == 0)">main.pb@07FA=0A</action>
</script>
</cheat>
<cheat desc="Infinite Lives">
<script state="run">
<action>main.pb@075A=08</action>
</script>
</cheat>
<cheat desc="Invincibility"> <comment>You can still die when you fall down holes though</comment>
<script state="on">
<action>temp0=main.md@EEE9</action>
</script>
<script state="run">
<action>main.pb@079E=02</action>
<action>main.md@EEE9=00EA00A9|(main.md@EEE9 BAND ~00FFFFFF)</action> <!-- ROM cheat to fix the flicker -->
</script>
<script state="off">
<action>main.md@EEE9=temp0</action>
</script>
</cheat>
<cheat desc="Select Character Sprite Now!"> <!-- Note Changing this to a perm cheat has the effect of giving you Invincibility with all the non-normal characters -->
<parameter variable="param">
<item value="00">Off</item>
<item value="01">Normal Mario</item>
<item value="02">Big Mario</item>
<item value="03">Fire Mario</item>
</parameter>
<script state="change">
<action condition="(param==01)">main.pb@0754=01</action>
<action condition="(param==01)">main.pb@0756=00</action>
<action condition="(param==02)">main.pb@0754=00</action>
<action condition="(param==02)">main.pb@0756=01</action>
<action condition="(param==03)">main.pb@0754=00</action>
<action condition="(param==03)">main.pb@0756=02</action>
</script>
</cheat>
<cheat desc="-----------------------"/>
<cheat desc="04. Grading (Gradius)"/>
<cheat desc="-----------------------"/>
<!-- note ROM cheats from pc_gradius should work but they aren't quick enough it seems -->
<cheat desc="Infinite Shields">
<script state="run">
<action>main.pb@0046=0A</action>
</script>
</cheat>
<cheat desc="Select Speed Up Speed"> <comment>Don't go too high!</comment>
<parameter variable="param" min="0" max="255" step="1"/>
<script state="change">
<action>main.pb@0040=(param)</action>
</script>
</cheat>
<cheat desc="Rapid Fire">
<script state="run">
<action>main.pd@03A6=00000000|(main.pd@03A6 BAND ~00FFFFFF)</action>
</script>
</cheat>
<cheat desc="Always have a Good Speed Up">
<script state="run">
<action>main.pb@0040=0A</action>
</script>
</cheat>
<cheat desc="Always have Full Options">
<script state="run">
<action>main.pb@0045=02</action>
</script>
</cheat>
<cheat desc="Always have Missile">
<script state="run">
<action>main.pb@0041=01</action>
</script>
</cheat>
<cheat desc="Always have Laser"> <comment>You can't have Double then</comment>
<script state="run">
<action>main.pb@0044=01</action>
</script>
</cheat>
<cheat desc="Always have Double"> <comment>You can't have Laser then</comment>
<script state="run">
<action>main.pb@0044=02</action>
</script>
</cheat>
<cheat desc="Get a Good Speed Up Now!">
<script state="on">
<action>main.pb@0040=0A</action>
</script>
</cheat>
<cheat desc="Get Full Options Now!">
<script state="on">
<action>main.pb@0045=02</action>
</script>
</cheat>
<cheat desc="Get Missile Now!">
<script state="on">
<action>main.pb@0041=01</action>
</script>
</cheat>
<cheat desc="Get Laser Now!"> <comment>You can't have Double then</comment>
<script state="on">
<action>main.pb@0044=01</action>
</script>
</cheat>
<cheat desc="Get Double Now!"> <comment>You can't have Laser then</comment>
<script state="on">
<action>main.pb@0044=02</action>
</script>
</cheat>
<cheat desc="Lose missiles Now!">
<script state="on">
<action>main.pb@0041=00</action>
</script>
</cheat>
<cheat desc="Lose double/laser Now!">
<script state="on">
<action>main.pb@0044=00</action>
</script>
</cheat>
<cheat desc="Light Up Speed Button Now!">
<script state="on">
<action>main.pb@0042=01</action>
</script>
</cheat>
<cheat desc="Light Up Missile Button Now!">
<script state="on">
<action>main.pb@0042=02</action>
</script>
</cheat>
<cheat desc="Light Up Double Button Now!">
<script state="on">
<action>main.pb@0042=03</action>
</script>
</cheat>
<cheat desc="Light Up Laser Button Now!">
<script state="on">
<action>main.pb@0042=04</action>
</script>
</cheat>
<cheat desc="Light Up Option Button Now!">
<script state="on">
<action>main.pb@0042=05</action>
</script>
</cheat>
<cheat desc="Light Up ? Button Now!">
<script state="on">
<action>main.pb@0042=06</action>
</script>
</cheat>
<cheat desc="No button lit Now!">
<script state="on">
<action>main.pb@0042=00</action>
</script>
</cheat>
<cheat desc=" "/>
<cheat desc="Infinite Lives PL1">
<script state="run">
<action>main.pb@0020=63</action>
</script>
</cheat>
<cheat desc="Infinite Lives PL2">
<script state="run">
<action>main.pb@0021=63</action>
</script>
</cheat>
<cheat desc="----------------------------------"/>
<cheat desc="05. Legedry (The Legend of Kage)"/>
<cheat desc="----------------------------------"/>
<!-- :cham24:20800000:9B22:00000060:FFFFFFFF:Invincibility:NOT WORKING LOOKS LIKE THE POKING ISN'T FAST ENOUGH, watch it - only overwrites when the game is paused. bp 9b22 and then pc=9b21 proves it works -->
<cheat desc="Infinite Lives">
<script state="run">
<action>main.pb@002B=63</action>
</script>
</cheat>
<cheat desc="-------------"/>
<cheat desc="06. B-Wings"/>
<cheat desc="-------------"/>
<cheat desc="This game doesn't work"/>
<cheat desc="-------------"/>
<cheat desc="07. Exerion"/>
<cheat desc="-------------"/>
<cheat desc="Infinite Lives">
<script state="run">
<action>main.pb@003C=09</action>
</script>
</cheat>
<cheat desc="Invincibility">
<script state="on">
<action>temp0=main.mw@8FA4</action>
<action>temp1=main.mw@A5FE</action>
<action>temp2=main.mw@A9B3</action>
<action>temp3=main.mw@AB2B</action>
</script>
<script state="run">
<action>main.mw@8FA4=1390</action>
<action>main.mw@A5FE=2C90</action> <!-- Pt 1 Bullets, Pt 2 Enemies -->
<action>main.mw@A9B3=38EA</action> <!-- Mines -->
<action>main.mw@AB2B=1090</action> <!-- Missiles -->
</script>
<script state="off">
<action>main.mw@8FA4=temp0</action>
<action>main.mw@A5FE=temp1</action>
<action>main.mw@A9B3=temp2</action>
<action>main.mw@AB2B=temp3</action>
</script>
</cheat>
<cheat desc="----------------"/>
<cheat desc="08. Front Line"/>
<cheat desc="----------------"/>
<cheat desc="Infinite Lives">
<script state="run">
<action>main.pb@0021=0A</action>
</script>
</cheat>
<cheat desc="Invincibility">
<script state="on">
<action>temp0=main.md@D091</action>
<action>temp1=main.md@FFE8</action>
<action>temp2=main.md@FFEC</action>
</script>
<script state="run">
<action>main.md@D091=00FFE820|(main.md@D091 BAND ~00FFFFFF)</action> <!-- D091 (20 E8 FF) jsr $FFE8 -->
<action>main.md@FFE8=031083C0</action> <!-- FFE8 (C0 83) cpy #$83, FFEA (10 03) bpl $FFEF -->
<action>main.md@FFEC=60002599</action> <!-- FFEC (99 25 00) sta $0025,y , FFEF (60) rts -->
</script>
<script state="off">
<action>main.md@D091=temp0</action>
<action>main.md@FFE8=temp1</action>
<action>main.md@FFEC=temp2</action>
</script>
</cheat>
<cheat desc="-------------"/>
<cheat desc="09. Macross"/>
<cheat desc="-------------"/>
<cheat desc="Infinite Lives">
<script state="run">
<action>main.pb@00F4=99</action>
</script>
</cheat>
<cheat desc="Infinite Energy">
<script state="run">
<action>main.pb@00EB=30</action>
</script>
</cheat>
<cheat desc="Infinite Ammo">
<script state="run">
<action>main.pb@00ED=06</action>
</script>
</cheat>
<cheat desc="--------------"/>
<cheat desc="10. Arkanoid"/>
<cheat desc="--------------"/>
<cheat desc="Infinite Lives">
<script state="run">
<action>main.pb@000D=07</action>
</script>
</cheat>
<cheat desc="Finish this Level Now!">
<script state="on">
<action>main.pb@000F=00</action>
</script>
</cheat>
<cheat desc="Always Keep One Ball in Play">
<script state="run">
<action condition="(main.pb@0037 LT 00) OR (main.pb@0037 GT E8)">main.pb@0037=C0</action>
</script>
</cheat>
<cheat desc="---------------------------"/>
<cheat desc="11. Islander (Wonder Boy)"/>
<cheat desc="---------------------------"/>
<cheat desc="Infinite Time">
<script state="run">
<action condition="(frame % 420 == 0)">main.pb@0076=21</action>
</script>
</cheat>
<cheat desc="Infinite Lives">
<script state="run">
<action>main.pb@003F=09</action>
</script>
</cheat>
<cheat desc="Invincibility"> <comment>Note - you will still die if you fall in any holes/water</comment>
<script state="on">
<action>temp0=main.mb@BFF4</action>
</script>
<script state="run">
<action>main.mb@BFF4=60</action>
</script>
<script state="off">
<action>main.mb@BFF4=temp0</action>
</script>
</cheat>
<cheat desc="-----------------"/>
<cheat desc="12. Nuts + Milk"/>
<cheat desc="-----------------"/>
<cheat desc="Infinite Lives">
<script state="run">
<action>main.pb@00BE=09</action>
</script>
</cheat>
<cheat desc="Invincibility"> <comment>You can still die by dropping into the water though</comment>
<script state="on">
<action>temp0=main.mb@D669</action>
</script>
<script state="run">
<action>main.mb@D669=60</action>
</script>
<script state="off">
<action>main.mb@D669=temp0</action>
</script>
</cheat>
<cheat desc="Always have Maximum Bonus">
<script state="run">
<action>main.pb@0021=63</action>
</script>
</cheat>
<cheat desc="-------------"/>
<cheat desc="13. Pac-man"/>
<cheat desc="-------------"/>
<cheat desc="Infinite Lives">
<script state="run">
<action>main.pb@0067=06</action>
</script>
</cheat>
<cheat desc="Invincibility">
<script state="on">
<action>temp0=main.mb@D2A3</action>
</script>
<script state="run">
<action>main.mb@D2A3=04</action>
</script>
<script state="off">
<action>main.mb@D2A3=temp0</action>
</script>
</cheat>
<cheat desc="-----------------"/>
<cheat desc="14. Battle City"/>
<cheat desc="-----------------"/>
<cheat desc="Infinite Lives">
<script state="run">
<action>main.pb@0051=0A</action>
</script>
</cheat>
<cheat desc="Always have Shield">
<script state="run">
<action>main.pb@0089=02</action>
</script>
</cheat>
<cheat desc="Finish this Stage Now!">
<script state="on">
<action>main.pb@0080=00</action>
</script>
</cheat>
<cheat desc="-------------"/>
<cheat desc="15. Dig Dug"/>
<cheat desc="-------------"/>
<cheat desc="Infinite Lives">
<script state="run">
<action>main.pb@0060=0A</action>
</script>
</cheat>
<cheat desc="Invincibility">
<script state="on">
<action>temp0=main.mb@E406</action>
<action>temp1=main.mw@E440</action>
</script>
<script state="run">
<action condition="(main.pb@00B0==06)">main.pb@00B0=00</action>
<action>main.mb@E406=00</action> <!-- Pt 1 RAM Rocks, Pt 2 collisions -->
<action>main.mw@E440=38EA</action> <!-- Dragon Fire -->
</script>
<script state="off">
<action>main.mb@E406=temp0</action>
<action>main.mw@E440=temp1</action>
</script>
</cheat>
<cheat desc="------------"/>
<cheat desc="16. Pooyan"/>
<cheat desc="------------"/>
<cheat desc="Infinite Lives">
<script state="run">
<action>main.pb@0052=04</action>
</script>
</cheat>
<cheat desc="Invincibility">
<script state="on">
<action>temp0=main.mb@D972</action>
<action>temp1=main.mb@DB21</action>
<action>temp2=main.mb@DC36</action>
</script>
<script state="run">
<action>main.mb@D972=A9</action> <!-- Stop Large Rock dropping -->
<action>main.mb@DB21=00</action> <!-- Small Rocks -->
<action>main.mb@DC36=60</action> <!-- Bites -->
</script>
<script state="off">
<action>main.mb@D972=temp0</action>
<action>main.mb@DB21=temp1</action>
<action>main.mb@DC36=temp2</action>
</script>
</cheat>
<cheat desc="--------------"/>
<cheat desc="17. Twin Bee"/>
<cheat desc="--------------"/>
<cheat desc="Infinite Lives">
<script state="on">
<action>temp0=main.mb@B7BC</action>
</script>
<script state="run">
<action>main.mb@B7BC=A5</action>
</script>
<script state="off">
<action>main.mb@B7BC=temp0</action>
</script>
</cheat>
<cheat desc="Invincibility">
<script state="on">
<action>temp0=main.mb@EAA2</action>
</script>
<script state="run">
<action>main.mb@EAA2=B5</action>
</script>
<script state="off">
<action>main.mb@EAA2=temp0</action>
</script>
</cheat>
<cheat desc="Always have Bombs">
<script state="on">
<action>temp0=main.mb@EA6B</action>
</script>
<script state="run">
<action>main.mb@EA6B=B5</action>
</script>
<script state="off">
<action>main.mb@EA6B=temp0</action>
</script>
</cheat>
<cheat desc="Always have 3-Way Weapon">
<script state="run">
<action>main.pb@07C7=01</action>
</script>
</cheat>
<cheat desc="-----------------"/>
<cheat desc="18. Donkey Kong"/>
<cheat desc="-----------------"/>
<cheat desc="Infinite Lives">
<script state="run">
<action>main.pb@0055=09</action>
</script>
</cheat>
<cheat desc="Maximum Bonus">
<script state="run">
<action>main.pb@002E=9A</action>
</script>
</cheat>
<cheat desc="Invincibility">
<script state="on">
<action>temp0=main.mb@D22A</action>
<action>temp1=main.mb@D61A</action>
<action>temp2=main.mb@D6C2</action>
<action>temp3=main.mb@EC62</action>
<action>temp4=main.mb@ED9D</action>
<action>temp5=main.mb@EDEF</action>
</script>
<script state="run">
<action>main.mb@D22A=A9</action> <!-- Walk on Air (works in conjunction with Walk off Platform) -->
<action>main.mb@D61A=00</action> <!-- Jump off Platform -->
<action>main.mb@D6C2=01</action> <!-- Walk off Platform -->
<action>main.mb@EC62=00</action> <!-- Normal Barrels -->
<action>main.mb@ED9D=00</action> <!-- Fire Barrels -->
<action>main.mb@EDEF=00</action> <!-- Oil Barrel on Fire -->
</script>
<script state="off">
<action>main.mb@D22A=temp0</action>
<action>main.mb@D61A=temp1</action>
<action>main.mb@D6C2=temp2</action>
<action>main.mb@EC62=temp3</action>
<action>main.mb@ED9D=temp4</action>
<action>main.mb@EDEF=temp5</action>
</script>
</cheat>
<cheat desc="---------------"/>
<cheat desc="19. Spartan-X"/>
<cheat desc="---------------"/>
<cheat desc="Infinite Time">
<script state="run">
<action condition="(frame % 60 == 0)">main.pw@0392=0909</action>
</script>
</cheat>
<cheat desc="Infinite Lives">
<script state="run">
<action>main.pb@005C=0A</action>
</script>
</cheat>
<cheat desc="Infinite Energy"> <comment>Turn OFF at the end of the level to progress</comment>
<script state="run">
<action>main.pb@04A6=30</action>
</script>
</cheat>
<cheat desc="--------------"/>
<cheat desc="20. Galaxian"/>
<cheat desc="--------------"/>
<cheat desc="Infinite Lives">
<script state="run">
<action>main.pb@0042=03</action>
</script>
</cheat>
<cheat desc="Invincibility">
<script state="on">
<action>temp0=main.mw@E60D</action>
<action>temp1=main.mb@EC8A</action>
</script>
<script state="run">
<action>main.mw@E60D=38EA</action>
<action>main.mb@EC8A=60</action> <!-- Pt 1 bullets, Pt 2 collisions -->
</script>
<script state="off">
<action>main.mw@E60D=temp0</action>
<action>main.mb@EC8A=temp1</action>
</script>
</cheat>
<cheat desc="----------------"/>
<cheat desc="21. Star Force"/>
<cheat desc="----------------"/>
<cheat desc="Infinite Lives">
<script state="run">
<action>main.pb@0050=09</action>
</script>
</cheat>
<cheat desc="Invincibility">
<script state="on">
<action>temp0=main.mb@DE97</action>
</script>
<script state="run">
<action>main.mb@DE97=A5</action>
</script>
<script state="off">
<action>main.mb@DE97=temp0</action>
</script>
</cheat>
<cheat desc="-------------"/>
<cheat desc="22. Xevious"/>
<cheat desc="-------------"/>
<cheat desc="Infinite Lives">
<script state="run">
<action>main.pb@008D=0A</action>
</script>
</cheat>
<cheat desc="Invincibility">
<script state="on">
<action>temp0=main.mb@CEFC</action>
<action>temp1=main.mw@EC20</action>
<action>temp2=main.mw@EA5D</action>
</script>
<script state="run">
<action>main.mb@CEFC=60</action>
<action>main.mw@EC20=38EA</action> <!-- Pt 1 bullets, Pt 2 most collisions -->
<action>main.mw@EA5D=38EA</action> <!-- remaining collisions -->
</script>
<script state="off">
<action>main.mb@CEFC=temp0</action>
<action>main.mw@EC20=temp1</action>
<action>main.mw@EA5D=temp2</action>
</script>
</cheat>
<cheat desc="------------"/>
<cheat desc="23. Galaga"/>
<cheat desc="------------"/>
<cheat desc="Infinite Lives">
<script state="run">
<action>main.pb@0487=05</action>
</script>
</cheat>
<cheat desc="Invincibility">
<script state="on">
<action>temp0=main.mw@E84C</action>
<action>temp1=main.mw@E890</action>
</script>
<script state="run">
<action>main.mw@E84C=EA18</action>
<action>main.mw@E890=EA18</action> <!-- Pt 1 Bullets, Pt 2 Enemies -->
</script>
<script state="off">
<action>main.mw@E84C=temp0</action>
<action>main.mw@E890=temp1</action>
</script>
</cheat>
<cheat desc="-------------------"/>
<cheat desc="24. Super Pinball"/>
<cheat desc="-------------------"/>
<cheat desc="Infinite Lives">
<script state="run">
<action>main.pb@0151=09</action>
</script>
</cheat>
</mamecheat>
<!-- Cheat file created from cheat.dat by http://cheat.retrogames.com, see cheat.txt for list of contributors. -->