Background removal codes

This forum is the archive of arcade cheats that have already been added to the current or the next release of the cheat file.
Post Reply
d9x
Posts: 39
Joined: Thu Jun 03, 2010 8:54 pm

Background removal codes

Post by d9x »

Got some codes to remove the backgrounds for some CPS1/CPS2/NeoGeo games. These are for sprite ripping and related things.

[sf2], [sf2ce], [sf2hf], [ssf2], [ssf2t], [hsf2], [sfa], [sfa2], [sfz2al], [sfa3], [dstlk], [nwarr], [vsav], [vhunt2], [vsav2], [ringdest], [cybots], [sgemf], [xmcota], [msh], [xmvsf], [mshvsf], [mvsc]

[fatfury1], [fatfury2], [fatfursp], [fatfury3], [rbff1], [rbffspec], [rbff2], [garou], [kof94], [kof95], [kof96], [kof97], [kof98], [kof99], [kof2000], [kof2001], [kof2002], [kof2003], [svc]

http://pastey.net/149338

Most of these except the boldface use ROM writes. With the NeoGeo ones you have to turn them on before the start of the fight, and the user can control the BG color by changing one value.

Image Image
User avatar
Pugsy
Posts: 3638
Joined: Fri Aug 17, 2001 12:59 am
Location: North Wales, UK.
Has thanked: 1 time
Been thanked: 12 times
Contact:

Re: Background removal codes

Post by Pugsy »

Nice work, I'll look at adding them another time though as my cheat utils depend on each <action> being opened and closed on the same line, which I guess is a throwback to using my own code rather than standard XML libraries.

Changing the utils is probably a smaller job than changing the XMLs but I'm midst adding some features to the utils to help with MESS cheat files and don't want to risk breaking other stuff.
Pugsy

Servicing your cheating needs since 1985 8)

Grab the latest cheat collection:
MAME 0.259 XML cheat collection (6 OCTOBER 2023) from http://www.mamecheat.co.uk or direct from:-
https://mega.nz/file/q4dHGZ6K#i-EUiqIjH ... KMz7hnbTfw (ZIP Archive 3.76MB)
d9x
Posts: 39
Joined: Thu Jun 03, 2010 8:54 pm

Re: Background removal codes

Post by d9x »

Update: http://pastey.net/149504 (diff)

These now remove the HUD for the sf2 games, sfa, dstlk, nwarr and cybots.

Also, the codes for those plus sfa2 & sfz2al were dropping some desirable sprites, so I took out the minimal amount and left comments telling what stage to pick to avoid the rest. That's why some backdrop select codes are included that were missing or had errors.
User avatar
Pugsy
Posts: 3638
Joined: Fri Aug 17, 2001 12:59 am
Location: North Wales, UK.
Has thanked: 1 time
Been thanked: 12 times
Contact:

Re: Background removal codes

Post by Pugsy »

Updated my cheat utils, all added now thanks. Given ROM credits for sets defined as "(parent only)"...any chance of doing the same for the clones for completeness (major PITA I know).

sf2 (parent only) <--added Select Background only for all clones
sf2ce (parent only) <--added Select Background only for all clones
sf2hf (parent only) <--added Select Background only for all clones
ssf2 (parent only) <-- Select Background cheats already in cheat file
ssf2t (parent only) <--added Select Background only for all clones (including ssf2xj +clones)
hsf2 (parent only) <-- Select Background cheats already in cheat file
sfa (parent only) <--added Select Background only for all clones
sfa2 (parent only)
sfz2al (parent only)
sfa3 (parent only)
dstlk (parent only) <--added Select Background only for all clones
nwarr (parent only) <--added Select Background only for all clones
vsav (parent only)
vsav2 (parent only)
vhunt2 (parent only)
ringdest (parent only)
cybots (parent only) <--added Select Background only for all clones
sgemf (parent only)
xmcota <- RAM + clones done
msh <- RAM + clones done
xmvsf <- RAM + clones done
mshvsf <- RAM + clones done
mvsc <- RAM + clones done
fatfury1 (parent only)
fatfury2 <-- No clones
fatfursp <- RAM + clones done
fatfury3 (parent only)
rbff1 (parent only)
rbffspec (parent only)
rbff2 (parent only)
garou (parent only)
kof94 (parent only)
kof95 (parent only)
kof96 (parent only)
kof97 (parent only)
kof98 (parent only)
kof99 (parent only)
kof2000 (parent only)
kof2001 (parent only)
kof2002 (parent only)
kof2003 (parent only)
svc (parent only)
Pugsy

Servicing your cheating needs since 1985 8)

Grab the latest cheat collection:
MAME 0.259 XML cheat collection (6 OCTOBER 2023) from http://www.mamecheat.co.uk or direct from:-
https://mega.nz/file/q4dHGZ6K#i-EUiqIjH ... KMz7hnbTfw (ZIP Archive 3.76MB)
d9x
Posts: 39
Joined: Thu Jun 03, 2010 8:54 pm

Re: Background removal codes

Post by d9x »

Pugsy wrote:Given ROM credits for sets defined as "(parent only)"...any chance of doing the same for the clones for completeness (major PITA I know).
If someone out there wants to get into making ROM codes, this would be a nice starter project. ;)
User avatar
Pugsy
Posts: 3638
Joined: Fri Aug 17, 2001 12:59 am
Location: North Wales, UK.
Has thanked: 1 time
Been thanked: 12 times
Contact:

Re: Background removal codes

Post by Pugsy »

d9x wrote:
Pugsy wrote:Given ROM credits for sets defined as "(parent only)"...any chance of doing the same for the clones for completeness (major PITA I know).
If someone out there wants to get into making ROM codes, this would be a nice starter project. ;)
But they would not get any credit for the cheats, as per cheat.txt:-
As new clones are added I will add the cheats and give credit to the
original author for the clones as long as the conversions are relatively
straightforward.
I've never taken a credit for a clone ROM cheat when I didn't find the original cheat and I've added 100s of clones. As it's not actually a cheat just adding the parent is probably more acceptable then if it was an actual Invincibility cheat or whatnot. Don't worry about it if you don't want to, it would be a big job and people who really want the effect for sprite ripping can always use the parent set.
Pugsy

Servicing your cheating needs since 1985 8)

Grab the latest cheat collection:
MAME 0.259 XML cheat collection (6 OCTOBER 2023) from http://www.mamecheat.co.uk or direct from:-
https://mega.nz/file/q4dHGZ6K#i-EUiqIjH ... KMz7hnbTfw (ZIP Archive 3.76MB)
d9x
Posts: 39
Joined: Thu Jun 03, 2010 8:54 pm

Re: Background removal codes

Post by d9x »

Some more parent-only codes:

[samsh5sp]

Code: Select all

  <cheat desc="Hide background"> <comment>Activate before match start</comment> 
    <script state="on"> 
      <action>
        temp0=maincpu.ow@004896, maincpu.ow@004896=4E71, 
        temp1=maincpu.ow@0048A2, maincpu.ow@0048A2=4E71, 
        temp2=maincpu.od@0048A8, maincpu.od@0048A8=4E714E71, <!--solid shadows-->
        temp3=maincpu.od@028A3A, maincpu.od@028A3A=60464E71 <!--HUD-->
      </action> 
    </script> 
    <script state="run">
      <action condition="maincpu.pw@1080C4 == B"> <!--activate only during match-->
        maincpu.pw@108314=0000, <!--flashing text-->
        maincpu.pb@10921B=02, <!--BG layers-->
        maincpu.pd@109222=8F8F8F8F <!--BG color (pink)-->
      </action>
    </script>
    <script state="off">
      <action>
        maincpu.ow@004896=temp0, maincpu.ow@0048A2=temp1, 
        maincpu.od@0048A8=temp2, maincpu.od@028A3A=temp3 
      </action>
    </script>
  </cheat>
[samsho5]

Code: Select all

  <cheat desc="Hide background"> <comment>Activate before match start</comment> 
    <script state="on"> 
      <action>
        temp0=maincpu.ow@0048E2, maincpu.ow@0048E2=4E71, 
        temp1=maincpu.ow@0048EE, maincpu.ow@0048EE=4E71, 
        temp2=maincpu.od@0048F4, maincpu.od@0048F4=4E714E71, <!--solid shadows-->
        temp3=maincpu.od@03C2D2, maincpu.od@03C2D2=60464E71 <!--HUD-->
      </action> 
    </script> 
    <script state="run">
      <action condition="maincpu.pw@1080C4 == B"> <!--activate only during match-->
        maincpu.pw@108314=0000, <!--flashing text-->
        maincpu.pb@10921B=02, <!--BG layers-->
        maincpu.pd@109222=8F8F8F8F <!--BG color (pink)-->
      </action>
    </script>
    <script state="off">
      <action>
        maincpu.ow@0048E2=temp0, maincpu.ow@0048EE=temp1, 
        maincpu.od@0048F4=temp2, maincpu.od@03C2D2=temp3 
      </action>
    </script>
  </cheat>
[samsho4]

Code: Select all

  <cheat desc="Hide background"> <comment>Activate before match start</comment> 
    <script state="on"> 
      <action>
        temp0=maincpu.ow@003140, maincpu.ow@003140=4E71, 
        temp1=maincpu.ow@00314C, maincpu.ow@00314C=4E71, 
        temp2=maincpu.od@003152, maincpu.od@003152=4E714E71, <!--solid shadows-->
        temp3=maincpu.od@028CFE, maincpu.od@028CFE=60464E71 <!--HUD-->
      </action> 
    </script> 
    <script state="run">
      <action condition="maincpu.pw@1080C4 == B"> <!--activate only during match-->
        maincpu.pw@108314=0000, <!--flashing text-->
        maincpu.pb@109179=02, <!--BG layers-->
        maincpu.pd@109180=8F8F8F8F, <!--BG color (pink)-->
        maincpu.pb@10C72E=00 <!--flickering lifebars-->
      </action>
    </script>
    <script state="off">
      <action>
        maincpu.ow@003140=temp0, maincpu.ow@00314C=temp1, 
        maincpu.od@003152=temp2, maincpu.od@028CFE=temp3 
      </action>
    </script>
  </cheat>
[samsho3]

Code: Select all

  <cheat desc="Hide background"> <comment>Activate before match start</comment> 
    <script state="on"> 
      <action>
        temp0=maincpu.ow@013E8A, maincpu.ow@013E8A=4E71, 
        temp1=maincpu.ow@013E96, maincpu.ow@013E96=4E71, 
        temp2=maincpu.od@013E9C, maincpu.od@013E9C=4E714E71, <!--solid shadows-->
        temp3=maincpu.od@01A0E6, maincpu.od@01A0E6=4E754E71 <!--timer-->
      </action> 
    </script> 
    <script state="run">
      <action condition="maincpu.pb@10A3A0 == 0B"> <!--activate only during match-->
        maincpu.pb@10B581=00, <!--HUD-->
        maincpu.pb@10A0DB=02, <!--BG layers-->
        maincpu.pd@10A0DE=8F8F8F8F <!--BG color (pink)-->
      </action>
    </script>
    <script state="off">
      <action>
        maincpu.ow@013E8A=temp0, maincpu.ow@013E96=temp1, 
        maincpu.od@013E9C=temp2, maincpu.od@01A0E6=temp3 
      </action>
    </script>
  </cheat>
[lastbld2]

Code: Select all

  <cheat desc="Hide background"> <comment>Activate before match start</comment> 
    <script state="on"> 
      <action>
        temp0=maincpu.ow@05A0EA, maincpu.ow@05A0EA=0001, 
        temp1=maincpu.od@05A178, maincpu.od@05A178=4E714E71, <!--HUD-->
        temp2=maincpu.ow@05BC06, maincpu.ow@05BC06=6032 <!--flashing text-->
      </action> 
    </script> 
    <script state="run">
      <action>temp9=maincpu.rw@10E57C</action> <!--stage-->
      <action condition="maincpu.pb@10F2D4 != FF">temp9=FF</action> <!--match inactive-->
      <action condition="temp9 != FF">maincpu.pw@10829E=8F8F</action> <!--BG color (pink)-->
      <action condition="temp9 == 0"> <!--Shimiji Pass stage BG layers and solid shadows-->
        maincpu.pw@108560=0700, maincpu.pq@109064=005B00600065006A
      </action>
      <action condition="temp9 == 1"> <!--Battle of Cloudy Sky-->
        maincpu.pw@108560=0070, maincpu.pq@109054=005B00600065006A
      </action>
      <action condition="temp9 == 2"> <!--13 Porttown-->
        maincpu.pw@108560=0038, maincpu.pq@109050=00420047004C0051
      </action>
      <action condition="temp9 == 3"> <!--Village of Twilight-->
        maincpu.pw@108560=1C00, maincpu.pq@10906C=004E00530058005D
      </action>
      <action condition="temp9 == 4"> <!--The Graveyard-->
        maincpu.pw@108560=004C, maincpu.pq@10904C=00340039003E0043
      </action>
      <action condition="temp9 == 5"> <!--Forest of Forgetfulness-->
        maincpu.pw@108560=0038, maincpu.pq@109050=003A003F00440049
      </action>
      <action condition="temp9 == 6"> <!--The Night Before 'Yuki-Machi'-->
        maincpu.pw@108560=01C0, maincpu.pq@10905C=004D00520057005C
      </action>
      <action condition="temp9 == 7"> <!--Shrine of the Vanquished-->
        maincpu.pw@108560=0700, maincpu.pq@109064=00430048004D0052
      </action>
      <action condition="temp9 == 8"> <!--Boss Stage-->
        maincpu.pw@108560=2018, maincpu.pq@109050=0046004B00500055
      </action>
      <action condition="temp9 == 9"> <!--Fire at the Wadamoya-->
        maincpu.pw@108560=0038, maincpu.pq@109050=00540059005E0063
      </action>
    </script>
    <script state="off">
      <action>maincpu.ow@05A0EA=temp0, maincpu.od@05A178=temp1, maincpu.ow@05BC06=temp2</action>
    </script>
  </cheat>
[lastblad]

Code: Select all

  <cheat desc="Hide background"> <comment>Activate before match start</comment> 
    <script state="on"> 
      <action>
        temp0=maincpu.ow@05F8D6, maincpu.ow@05F8D6=0001, 
        temp1=maincpu.od@05F9C0, maincpu.od@05F9C0=4E714E71, <!--HUD-->
        temp2=maincpu.ow@060790, maincpu.ow@060790=6028 <!--flashing text-->
      </action> 
    </script> 
    <script state="run">
      <action>temp9=maincpu.rw@10AC40</action> <!--stage-->
      <action condition="maincpu.pb@10A922 == 0">temp9=FF</action> <!--match inactive-->
      <action condition="temp9 != FF">maincpu.pw@10829E=8F8F</action> <!--BG color (pink)-->
      <action condition="temp9 == 0"> <!--Kaede stage BG layers and solid shadows-->
        maincpu.pw@109D9C=0700, maincpu.pq@10A8A0=007B007F00850089
      </action>
      <action condition="temp9 == 1"> <!--Moriya-->
        maincpu.pw@109D9C=0130, maincpu.pq@10A890=00640068006E0072
      </action>
      <action condition="temp9 == 2"> <!--Yuki-->
        maincpu.pw@109D9C=0E00, maincpu.pq@10A8A4=005A005E00640068
      </action>
      <action condition="temp9 == 3"> <!--Okina-->
        maincpu.pw@109D9C=008C, maincpu.pq@10A888=00350039003F0043
      </action>
      <action condition="temp9 == 4"> <!--Akari-->
        maincpu.pw@109D9C=800C, maincpu.pq@10A888=00350039003F0043
      </action>
      <action condition="temp9 == 5"> <!--Juzoh-->
        maincpu.pw@109D9C=080C, maincpu.pq@10A888=00350039003F0043
      </action>
      <action condition="temp9 == 6"> <!--Washizuka-->
        maincpu.pw@109D9C=0098, maincpu.pq@10A88C=00530057005D0061
      </action>
      <action condition="temp9 == 7"> <!--Shikyoh-->
        maincpu.pw@109D9C=008C, maincpu.pq@10A888=00350039003F0043
      </action>
      <action condition="temp9 == 8"> <!--Amano-->
        maincpu.pw@109D9C=040C, maincpu.pq@10A888=00350039003F0043
      </action>
      <action condition="temp9 == 9"> <!--Lee-->
        maincpu.pw@109D9C=020C, maincpu.pq@10A888=00350039003F0043
      </action>
      <action condition="temp9 == A"> <!--Zantetsu-->
        maincpu.pw@109D9C=0070, maincpu.pq@10A890=00550059005F0063
      </action>
      <action condition="temp9 == B"> <!--Shigen-->
        maincpu.pw@109D9C=00E0, maincpu.pq@10A898=00E600ED00F000F7
      </action>
      <action condition="temp9 == C"> <!--Musashi-->
        maincpu.pw@109D9C=0038, maincpu.pq@10A88C=0049004D00530058
      </action>
      <action condition="temp9 == D"> <!--Kagami-->
        maincpu.pw@109D9C=0260, maincpu.pq@10A894=00550059005F0063
      </action>
    </script>
    <script state="off">
      <action>maincpu.ow@05F8D6=temp0, maincpu.od@05F9C0=temp1, maincpu.ow@060790=temp2</action>
    </script>
  </cheat>
d9x
Posts: 39
Joined: Thu Jun 03, 2010 8:54 pm

Re: Background removal codes

Post by d9x »

Added some more NeoGeo games to the above post.
User avatar
ReyVGM
Posts: 147
Joined: Thu May 11, 2006 3:55 pm
Contact:

Re: Background removal codes

Post by ReyVGM »

Can these type of codes be done for other games/boards? Because there are already other emulators that disable backgrounds for CPS1,2,3 and Neogeo games, but I would love these kinds of cheats made for those Konami and Taito boards.
d9x
Posts: 39
Joined: Thu Jun 03, 2010 8:54 pm

Re: Background removal codes

Post by d9x »

Wait, what emulator can do it for CPS3?

All of these cheats work by hijacking code intended for something else, like screen-flashing effects. It's kind of lucky that they are even possible. This may or may not work for other drivers.

The general solution is to figure out how the backgrounds are laid at a low level and then modify the emulator itself to ignore them, which I guess is what those other emus do.
User avatar
ReyVGM
Posts: 147
Joined: Thu May 11, 2006 3:55 pm
Contact:

Re: Background removal codes

Post by ReyVGM »

Final Burn Alpha can disable CPS3 layers now. It doesn't work quite like the CPS2 and Neogeo games though. But I don't know if it's because of the way CPS3 works or because FBA doesn't do it correctly.
User avatar
Pugsy
Posts: 3638
Joined: Fri Aug 17, 2001 12:59 am
Location: North Wales, UK.
Has thanked: 1 time
Been thanked: 12 times
Contact:

Re: Background removal codes

Post by Pugsy »

Thanks, added the last ones
Pugsy

Servicing your cheating needs since 1985 8)

Grab the latest cheat collection:
MAME 0.259 XML cheat collection (6 OCTOBER 2023) from http://www.mamecheat.co.uk or direct from:-
https://mega.nz/file/q4dHGZ6K#i-EUiqIjH ... KMz7hnbTfw (ZIP Archive 3.76MB)
User avatar
Pugsy
Posts: 3638
Joined: Fri Aug 17, 2001 12:59 am
Location: North Wales, UK.
Has thanked: 1 time
Been thanked: 12 times
Contact:

Re: Background removal codes

Post by Pugsy »

UPDATE:

I'm commenting a lot of the background cheats from the 0.153 cheat file out, the use of commas in the action statements is causing MAME to crash intermittently on startup on 64 bit builds with those games. I'll edit them and re-add them as time permits to get rid of the commas. It's proving a major PITA at the moment, I've edited a lot of them but I'm going comma blind so I'm knocking them on the head for the time being.
Pugsy

Servicing your cheating needs since 1985 8)

Grab the latest cheat collection:
MAME 0.259 XML cheat collection (6 OCTOBER 2023) from http://www.mamecheat.co.uk or direct from:-
https://mega.nz/file/q4dHGZ6K#i-EUiqIjH ... KMz7hnbTfw (ZIP Archive 3.76MB)
Post Reply