Encrypted CPS2 ROM Hacks (and How to!) - Dimahoo All Chars, Progear Second Loop, etc.

    This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

    • Encrypted CPS2 ROM Hacks (and How to!) - Dimahoo All Chars, Progear Second Loop, etc.

      So I was browsing around the other day and found that the author of Fightcade had posted some information on how to re-encrypt CPS2 ROMs, which is quite useful for ROM hacks.

      He has a Youtube video from a conference here, as well as a PDF posted as "r2con_PauOliva_Hacking_StreetFighter_CPS2_Encryption_FINAL.pdf".

      Page 38 has the details on how to encrypt CPS2 roms. While r2hash didn't work for me (for some reason it makes the ROMs larger?), I was able to build a modified MAME binary for properly re-encrypting CPS2 roms using his info.

      Here's how it works:
      1) Adjust MAME source code to encrypt instead of decrypt.
      2) Apply modified instructions (decrypted) to a given encrypted CPS2 rom.
      3) Load up in modified MAME build (pass -window -debug), go to "Debug" -> "New Memory Window" -> select decrypted_opcodes in dropdown, navigate to your modified region and there's your encrypted code.
      4) Apply the encrypted instructions over your decrypted ones in the ROM, load up with normal MAME and test.

      Here's a couple of my ROM hacks (one is brand new and by request!) that work with the encrypted ROMs on the CPS2 multi.

      Note that ONLY xdeltas are provided, no ROMS! You must have the original ROMs and use "xdelta UI" to apply the changes against your existing files.

      For completeness, the zips have xdeltas for both encrypted and decrypted ROM sets on both CPS2 multi and ROM board formats.
      Hope you guys enjoy! I may slowly work on converting my other CPS2 hacks (e.g. Marvel VS character unlocks) for encrypted sets and will keep this thread updated if/when I do.

      The decrypted Avalaunch sets are great and work just fine IMO, but with the CPS2 multi now supporting encrypted sets and it being easy to apply hacks against the original ROMs - why not? In the case of Dimahoo there is only one modified instruction, so it's the best of both worlds in terms of playing the game how the developers intended and also being able to select the hidden characters easily.
    • jepjepjep wrote:

      That's really cool. Thanks for sharing these. For the Progear romhack, can you start in the first or second loop, or does it always go directly to the 2nd loop?
      Np! The Progear hack always goes to second loop.

      nem wrote:

      Is there a 2P VS random stage hack for SSF2X that has a working 1P mode? I would love to put that on my original 2X board that's running on battery.

      The hacks I've tried mess up 1P mode.
      Not sure, @mountainmanjed would be the guy to ask about that.
    • Hi @kuze. Since you know your way around the ROM(s) structure etc to produce your hacks, I was wondering if you've ever stumbled upon any documentation / sdk / tools that would help developing games for the CPS2 (maybe even CPS1). There a lot of stuff for the Neo Geo, but pretty much zero for the CPS 1/2/3.. Or maybe I didn't look hard enough?

      Also pinging @l_oliveira if he knows anything :) Only other thread I could find was the one Smokemonster opened back in 2016: arcade-projects.com/forums/ind…-cps2-state-of-the-scene/

      The post was edited 1 time, last by CoinFeeder ().

    • CoinFeeder wrote:

      Hi @kuze. Since you know your way around the ROM(s) structure etc to produce your hacks, I was wondering if you've ever stumbled upon any documentation / sdk / tools that would help developing games for the CPS2 (maybe even CPS1). There a lot of stuff for the Neo Geo, but pretty much zero for the CPS 1/2/3.. Or maybe I didn't look hard enough?

      Also pinging @l_oliveira if he knows anything :) Only other thread I could find was the one Smokemonster opened back in 2016: arcade-projects.com/forums/ind…-cps2-state-of-the-scene/
      The biggest tool for making ROM hacks is the MAME debugger. There are some guides on creating MAME cheats online like the "Holy Cheat" guide at cheat.retrogames.com/guides.htm that can help you familiarize yourself with its use.

      Aside from the MAME debugger, I use a hex editor (HxD) and EASy68K for assembly.

      CPS1, CPS2 and Neo Geo all run off of the 68000 architecture which is well documented:

      wpage.unina.it/rcanonic/didattica/ce1/docs/68000.pdf

      As for CPS1/CPS2/CPS3 SDKs/tools, there would have been in-house stuff at Capcom but I'm not aware of any open source tools or libraries specifically made to target those platforms.

      If you want to make a new CPS2 game from scratch the MAME source code will likely be the best resource as it has a wealth of technical documentation:

      github.com/mamedev/mame/blob/m…src/mame/drivers/cps2.cpp

      The post was edited 1 time, last by kuze ().