RED-Project icon indicating copy to clipboard operation
RED-Project copied to clipboard

The Simpsons Arcade (XBLA)

Open MrVexar opened this issue 10 months ago • 0 comments

Thanks to the the work of arpruss, scrap_a and the authors of Xenia Canary, I've been able to get a working version of the Simpsons Arcade (World) on XBLA. It works on lib-retro cores on RetroPie (e.g. lr-mame2010), and also using the fbalpha2012 core on RetroPie. However it still contains some CRC errors. I'm pretty new at this, so any advice or suggested changes are very welcome.

Tools needed:

xsr.py: https://github.com/arpruss/xsr bcut.exe: http://blog.livedoor.jp/scrap_a/archives/37910430.html xenia_canary: https://github.com/xenia-canary/xenia-canary-releases/releases (I believe the xenia_canary_windows.zip download is what I used) A USB drive compatible with an Xbox 360 MAME 139b (other versions may work): https://github.com/mamedev/mame/releases/download/mame0139/mame0139b_64bit.exe

Extracting the Simpsons.SR file

  1. On the Xbox 360, copy The Simpsons XBLA arcade game onto the USB drive.
  2. Install Xenia onto a PC, and install / run the Simpsons arcade on Xenia. There is a guide here:

https://github.com/xenia-canary/xenia-canary/wiki/Quickstart

  1. In the Xenia directory on the PC, go to the "content" folder, then search the directories for the Simpsons installation. On my PC the folder structures was:

xenia_canary\content\0000000000000000\584111FA\000D0000\5BA2C88EDCCD952114B3809DA53200C5C3B2236358

but this may vary. You'll know you've found it when you see PNG files featuring Simpsons characters. In this folder, there should be a folder called "0B", containing a file called SIMPSONS.SR.

  1. Create a new folder somewhere on your PC, and copy SIMPSONS.SR in that folder. Also extract xsr.py and bcut.exe into that folder.

Extracting the Creating the ROM files for World Version

  1. Open a Windows command line, and navigate to the folder in Step 4.

  2. Run the following command:

py xsr.py simpsons.sr

This will extract the following files:

Simpsons_4J.KON Simpsons_4WA.KON Simpsons_SOUND.ROM Simpsons_SAMPLES.ROM Simpsons_SPRITES.ROM Simpsons_TILES.ROM

The Simpsons_4J.KON file contain the files need for a Japanese version of the game, and Simpsons_4WA.KON contains the files needed for the World Version. The required MAME Rom files just seem to be concatenated together, with no deinterleaving required.

  1. Create a new batch file (e.g. create a new Txt document, and rename it to something like Simpsons.bat. Right click on it and click edit.

  2. Paste the following code, then save

#Graphics - Region gfx1
bcut.exe Simpsons_TILES.ROM 072-b06.16h 0x00000 0x80000
bcut.exe Simpsons_TILES.ROM 072-b07.18h 0x80000 0x80000

#Graphics - Region gfx2
bcut.exe Simpsons_SPRITES.ROM 072-b08.3n 0x00000 0x100000
bcut.exe Simpsons_SPRITES.ROM 072-b09.8n 0x100000 0x100000
bcut.exe Simpsons_SPRITES.ROM 072-b10.12n 0x200000 0x100000
bcut.exe Simpsons_SPRITES.ROM 072-b11.16l 0x300000 0x100000

#Audio - Region audiocpu
copy Simpsons_SOUND.ROM 072-e03.6g

#Audio - Region k053260
bcut.exe Simpsons_SAMPLES.ROM 072-d05.1f 0x000000 0x100000
bcut.exe Simpsons_SAMPLES.ROM 072-d04.1d 0x100000 0x40000

#CPU - Region maincpu
bcut.exe Simpsons_4WA.KON 072-g01.17c 0x00000 0x20000
bcut.exe Simpsons_4WA.KON 072-g02.16c 0x20000 0x20000
bcut.exe Simpsons_4WA.KON 072-j13.13c 0x40000 0x20000
bcut.exe Simpsons_4WA.KON 072-j12.15c 0x60000 0x20000
  1. Double click Simpsons.bat to run it. It'll quickly flash a Command prompt on and disappear. Alternatively, you can copy and paste the above code line by line into the Command Line and run it one at a time. This will create the following 13 files:

072-b06.16h 072-b07.18h 072-b08.3n 072-b09.8n 072-b10.12n 072-b11.16l 072-e03.6g 072-d05.1f 072-d04.1d 072-g01.17c 072-g02.16c 072-j13.13c (CRC doesn't match MAME 0139b) 072-j12.15c (CRC doesn't match MAME 0139b)

  1. Create a new file called simpsons.nv. Leave this empty for now - MAME will createa correct version of this at runtime. This will fail the CRC check for now. Zip simpsons.nv and the 13 above into simpsons.zip.

  2. Install MAME onto your PC, and copy simpsons.zip into the roms folder

  3. On a Command Line, navigate to the MAME folder that contains mame64.exe. Then run the following command:

mame64 simpsons

  1. This will cause MAME to go into a loop as the emulated RAM ROM check will complain about bad chips. This can be bypassed by holding down F2 on the keyboard, tapping F3 once whilst keeping F2 pressed down, then waiting until "Recommand set complete" appears on screen. Let go of F2 at this point and the game should boot up. This has the added advantage of creating the correct simpsons.nv file.

  2. In the MAME directory, go to the nvram folder and look for simpsons.nv. Copy this into the folder in step 9 and replace the old version. Delete the existing simpsons.zip file, and repeat Step 10. This should now pass the CRC check.

Differences for the Asia Version

The process largely the same. However it requires a later version of MAME to pass the RAM ROM checks. I was able to get it working in MAME 0264b. Make these changes to the above:

a) Replace the contents of the bat file in Step 8 to this:

#Graphics - Region gfx1
bcut.exe Simpsons_TILES.ROM 072-b06.16h 0x00000 0x80000
bcut.exe Simpsons_TILES.ROM 072-b07.18h 0x80000 0x80000

#Graphics - Region gfx2
bcut.exe Simpsons_SPRITES.ROM 072-b08.3n 0x00000 0x100000
bcut.exe Simpsons_SPRITES.ROM 072-b09.8n 0x100000 0x100000
bcut.exe Simpsons_SPRITES.ROM 072-b10.12n 0x200000 0x100000
bcut.exe Simpsons_SPRITES.ROM 072-b11.16l 0x300000 0x100000

#Audio - Region audiocpu
copy Simpsons_SOUND.ROM 072-g03.6g

#Audio - Region k053260
bcut.exe Simpsons_SAMPLES.ROM 072-d05.1f 0x000000 0x100000
bcut.exe Simpsons_SAMPLES.ROM 072-d04.1d 0x100000 0x40000

#CPU - Region maincpu (Asia)
bcut.exe Simpsons_4J.KON 072-v02.16c 0x00000 0x20000
bcut.exe Simpsons_4J.KON 072-v01.17c 0x20000 0x20000
bcut.exe Simpsons_4J.KON 072-x13.13c 0x40000 0x20000
bcut.exe Simpsons_4J.KON 072-x12.15c 0x60000 0x20000

b) Change any references to simpsons.nv to simpsons4pa.nv c) Change the name of the zip file to simpsons4pa.zip d) The MAME command will be mame64 simpsons4pa (in 0139b) or mame simpsons4pa in 0264b

Issues

Any help would be appreciated with these please:

i) The Japanese version won't run in earlier versions of MAME e.g. it doesn't run in 0139b as it will fail the RAM ROM check even if the files are named correctly ii) Two CRC checks don't match in the World Version, and five don't match in the Japanese version, so this will prevent it from working on some emulators iii) For some reason (could be a me problem), the Japanese version shows the correct differences between versions when running from the command line on PC, but plays the same as the World version when running it on RetroPie (e.g. using the fbalpha2012 core). However using the lr-mame core seems to work. You can spot the differences using the following link, but an easy example is that the Japanese version will give 100 points for defeating an enemy, but the World version gives a single point:

https://tcrf.net/The_Simpsons_(Arcade)#Regional_Differences

Hope this helps someone!

MrVexar avatar Feb 08 '25 03:02 MrVexar