What's new

xodaraP

Legendary
Joined
Sep 21, 2016
Messages
4,750
Reaction score
3,793
Location
Gold Coast, Australia
A lot of people have been asking me recently how to make CPS2 conversions. This information is out there, but it does need to be put together. I have asked the mod team and they have given me the go ahead, so here it is

DISCLAIMER: IF YOU BREAK YOUR BOARD ATTEMPTING TO MAKE A CONVERSION I ACCEPT NO RESPONSIBILITY. THIS INFORMATION IS SUPPLIED AS INFORMATION ONLY AND ALL WORK IS AT YOUR OWN RISK.

Things you will need:
- A donor B board, any B board is fine
- EPROMs of the correct size for the game you want to convert (or 32mbit can be used for any game)
- GAL16V8 to burn the appropriate PAL for the game you want to convert to (or G can be used as a universal donor)
- A programmer that supports up to 32mbit EPROMs
- Soldering iron, braid and a sharp knife for setting jumpers

This guide assumes:
- You know how to burn an EPROM
- You know how to burn a PAL
- You have access to the ROM files for the conversion you want to create
- You know how to use a command prompt (or Terminal on macOS)
- You know how to use a soldering iron
- You know how to set CPS2 jumpers
- Your donor B board is working correctly

ROM types:

ROM 1 and 2 - QSound Program
ROM 3-10 - Main Program
ROM 11 and 12 - Sound Samples
ROM 13 to 20 - Mask ROMs

EPROM types required:

27C010/1001 - 1mbit for Q Sound program
27C4096 - 4mbit for main program
27C400 - 4mb mask ROM pinout EPROMs for graphics
27C800 - 8mb mask ROM pinout EPROMs for graphics
27C160 - 16mb EPROMs for sound samples and graphics
27C322 - 32mb for sound samples and graphics

ALL CPS2 GAMES USE 27C4096 FOR MAIN PROGRAM CODE

Step 1 - Prepare donor board

Strip your B board of all EPROMs, mask ROMs and PAL3 (unless this is already the correct PAL for the game you want to convert)

Step 2 - Burn your EPROMs

As I explained, there are multiple ways to go about this. If you want to use 32mbit EPROMs and a PAL G then you will need to combine the MAME ROM files into a 32mbit EPROM.

This will depend on the game. I have used Dungeons and Dragons: Tower of Doom as my example.

Step 2a - PAL G - Configuring ROM files to burn

128kb - 1mbit
256kb - 2mbit
512kb - 4mbit
1mb - 8mbit
2mb - 16mbit
4mb - 32mbit

Looking at the available filesizes for the game, you can determine what will need to be combined in order to create 32mbit EPROMs. The CPS2 bank switches between 2 ROMs normally so we are simply combining these into 1, which then goes into the first socket for that pair.

For example, Dungeons and Dragons: Tower of Doom:
ROM 11 - 2mb (16mbit)
ROM 12 - 2mb (16mbit)

When these are combined, we get a 32mbit EPROM. Socket 12 can be left empty and the 32Mbit EPROM installed in socket 11

With this method, we can also create the mask ROMs. This is where we use another method because in this case
ROM 13 - 2mb (16mbit)
ROM 14 - 1mb (8mbit)

"So we can combine in ROM 15?" - no. ROM 13 and 14 are bank switched, so these need to be combined and 15 and 16 need to be combined. The exclusion to this rule are the games with daughterboards. I haven't actually tried to convert to any of the games that use daughterboards, but I believe on these games you can combine 4 mask ROMs into each 1 graphics ROM.

The solution for D&D:ToD?

Combine ROM 14 with ROM 14 creating a double size ROM 14
Combine ROM 13 with the now double size ROM 14

We now have a 32mbit mask ROM for socket 13

Main program and Q Sound ROMs CANNOT be combined. Why? Because the maximum size for main program is 4mbit and the maximum size for QSound is 1mbit. The only jumpers you can set for sockets 1-10 are to set JEDEC or non JEDEC ROM pinout

Step 3 - Setting the jumpers

If you want to use the original PAL for the game, then you will need to use the correct EPROM sizes to match the size for that game. You will also need to set the jumpers appropriately for the game you are trying to convert to. Here is a list of all games and their jumper settings:

http://petes-emulation.com/ftp/acm/docs/jumper_data_settings.xls

Here is the information page on how the jumpers work. You will need to make sure if you are using EPROMs, that you have the jumpers set for EPROMs not mask ROMs.

For PAL G this is not an issue (32mbit mask ROMs are the same pinout as EPROMs) - 4mbit and 8mbit ROMs are available in a mask ROM pinout (27C400/27C800) or EPROM pinout (27C040/27C080/801) - do NOT mix these up.

I'm not going into detail on how to set these for every single game, using the spreadsheet above if you are converting to games that use 4mbit or 8mbit mask ROMs and you want to use the original PAL/not combine into larger EPROMs, make sure you use the mask ROM pinout

http://wiki.pcbotaku.com/wiki/CPS2_Eprom_and_Jumper_details

The spreadsheet jumper settings also assume you are using 27C1001/010 type 1mbit EPROMs. You will need to reverse the jumpers for sockets 1 and 2 if you are using 27C1000 type.

Step 4 - Double check your work

- Have you installed your EPROMs the correct way around and in the correct positions
- Do you have the correct PAL installed at PAL3
- Do you have a jumper wire installed if you are using a PAL G on rev 3/4 boards
- Have you configured your jumpers correctly and confirmed continuity/open as required
- Have you installed an InfiniKey configured correctly or flashed keys to the board for the new game you want to play?
- Have you prayed to the arcade gods today?

If you have done everything correctly - fire it up and you should have your newly converted game!

If not:
- Solid colour screen - Suicide screen. Install an InfiniKey/flash keys to board. Short EXC5 if board was previously running another game on battery/InfiniKey
- White screen - Main program not being read. Check your main program ROMs or reseat board
- Solid grey/dark blue - Encryption keys not valid. See above.
- Jailbars/missing sprites - Reseat boards/check graphics ROMs
- Sound is messed up - You are running a PAL G and you haven't installed the jumper wire on rev 3/4 board

Enjoy!
 
Thanks heaps for this. Looks like some valuable information here.

A question with purchasing EPROMs Are all "27C322" IC's the same spec?

For example, I see this on ebay "M27C322-100F1 M27C322 ST IC EPROM UV 32MBIT 100NS 42CDIP" is the 100NS anything to be worried about?

I'm just starting to get into this so I'm pretty sure I'll have hundreds of questions.

Also, being a total n00b I am with anything about writing roms, if I burn the roms from my multi pack, will updating the inifikey to the jumpers work the same as non-phoniexed games? If this question is goes against the rules, then I'm happy to remove.
 
That’s the speed of the EPROM, 100ns is fine

The ROMs from the multi pack are modified to work with the multi and the way the memory is mapped. You need the original MAME ROMs
 
Did Capcom do 'official' conversions? I have a Marvel Vs Capcom with a Vampire Hunter sticker under the MvC sticker, plus the ROM chips inside look genuine.
 
Did Capcom do 'official' conversions? I have a Marvel Vs Capcom with a Vampire Hunter sticker under the MvC sticker, plus the ROM chips inside look genuine.
Alot of times. I have a Marvel Super Heroes with MSH stick, below was Vampire Hunter and below again was SF2 X LOL
 
Did Capcom do 'official' conversions? I have a Marvel Vs Capcom with a Vampire Hunter sticker under the MvC sticker, plus the ROM chips inside look genuine.
Alot of times. I have a Marvel Super Heroes with MSH stick, below was Vampire Hunter and below again was SF2 X LOL
Now i'm searching ebay for an Ultra-rare quadruple stickered pcb.
 
Did Capcom do 'official' conversions? I have a Marvel Vs Capcom with a Vampire Hunter sticker under the MvC sticker, plus the ROM chips inside look genuine.
Absolutely they did. If a new game is coming out and they have stock of an older title, they’d convert it to sell it
 
Once again thanks for the write up!! You pretty much followed me through the journey on messenger :D :D :D

I didn't do it exactly the way it was written up as I didn't have to combine roms - the files I had were already combined!

First attempt is Progear. Burnt and installed the required roms

baf000fae960e60840d79467a673c3fa.jpg


b6688b91d11b7371311100f5fe3b61e5.jpg


Booted and I was happy it booted, but the image was all over the place.

6b9d6079c8dbef8df4bd37fb5695f961.jpg


Correct the jumper settings on the board and voila! Image and game play is perfect!!

24f7f6f95a4d260ee5a626874638f9aa.jpg


Next attempt was SSF2X - this took pretty much most of the Saturday afternoon

First burnt and installed all the roms.

63daa6cbb62c02685a5bdaae44627d5a.jpg


Upon first boot, I noticed a lot of the sprites were all over the place..

7551195f1204d04094c37a82bc780269.jpg


ab823ef8c1da8f55cc5221444d9988c9.jpg


After some time troubleshooting, I eventually found the issue to be a faulty rom - of course it to be the very last rom on the board that was faulty!

Once changed, image became perfect

fa7c5bd4987f2a92d8d226bf25fa58b9.jpg


58d03fc7f082c1312e78363b574096c3.jpg


So I present the biggest hack job ever...

A US CPS2 case and label but inside it is the Japanese rom without the daughter board like the original.

be7f9e6e98ab06fe52196d458a411edd.jpg


Now to try and find another cps2 board so I can have ssf2x and Progear inside their own case :)

I'll probably buy some more eproms and test out the Hyper Fighting collection - which uses up every single eprom socket on the board!

I will eventually look into combing the MAME ROM files into a 32mbit EPROM as I'll only use 27C322 eproms.

Thanks heaps for this write up!
 
This Guide is awesome! All the info in one place! Would be great to mention that 27c240/27c4002/27c4096 are equivalent. Also that you can use 27c160 or 27c322 instead of 27c400 or 27c800 by multiplying the ROM file (I don't know why but 27c160 are really cheap and you can found packs of new brand of this for a fraction of the price of 27c800). Thanks for the info! Every time I found a cheap dead CPS2 that I already own, I bought it and do a conversion of some game impossible to find here haha

I was thinking about doing a conversion of Mega Man 1, but it has a daughter board with a lot of ROMs, I have to check how to combine them in order to be able to make a conversion.

rcm.01 131072 d60cf8a3 z80
rcmu.03b 524288 c39f037f Code
rcmu.04b 524288 cd6f5e99 Code
rcmu.05a 524288 4376ea95 Code
rcm.51 524288 b6d07080 Samples
rcm.52 524288 dfddc493 Samples
rcm.53 524288 6062ae3a Samples
rcm.54 524288 08c6f3bf Samples
rcm.55 524288 f97dfccc Samples
rcm.56 524288 ade475bc Samples
rcm.57 524288 075effb3 Samples
rcm.58 524288 f6c1f87b Samples
rcm.63 524288 acad7c62 Gfx
rcm.64 524288 65c0464e Gfx
rcm.65 524288 ecedad3d Gfx
rcm.66 524288 1300eb7b Gfx
rcm.73 524288 774c6e04 Gfx
rcm.74 524288 004ec725 Gfx
rcm.75 524288 70a73f99 Gfx
rcm.76 524288 89a889ad Gfx
rcm.83 524288 6af30499 Gfx
rcm.84 524288 fb3097cc Gfx
rcm.85 524288 3d6186d8 Gfx
rcm.86 524288 6d974ebd Gfx
rcm.93 524288 7a5a5166 Gfx
rcm.94 524288 2e16557a Gfx
rcm.95 524288 8c7700f1 Gfx
rcm.96 524288 7da4cd24 Gfx

Will update here when I have a solution :)
 
This Guide is awesome! All the info in one place! Would be great to mention that 27c240/27c4002/27c4096 are equivalent. Also that you can use 27c160 or 27c322 instead of 27c400 or 27c800 by multiplying the ROM file (I don't know why but 27c160 are really cheap and you can found packs of new brand of this for a fraction of the price of 27c800). Thanks for the info! Every time I found a cheap dead CPS2 that I already own, I bought it and do a conversion of some game impossible to find here haha

I was thinking about doing a conversion of Mega Man 1, but it has a daughter board with a lot of ROMs, I have to check how to combine them in order to be able to make a conversion.

rcm.01 131072 d60cf8a3 z80
rcmu.03b 524288 c39f037f Code
rcmu.04b 524288 cd6f5e99 Code
rcmu.05a 524288 4376ea95 Code
rcm.51 524288 b6d07080 Samples
rcm.52 524288 dfddc493 Samples
rcm.53 524288 6062ae3a Samples
rcm.54 524288 08c6f3bf Samples
rcm.55 524288 f97dfccc Samples
rcm.56 524288 ade475bc Samples
rcm.57 524288 075effb3 Samples
rcm.58 524288 f6c1f87b Samples
rcm.63 524288 acad7c62 Gfx
rcm.64 524288 65c0464e Gfx
rcm.65 524288 ecedad3d Gfx
rcm.66 524288 1300eb7b Gfx
rcm.73 524288 774c6e04 Gfx
rcm.74 524288 004ec725 Gfx
rcm.75 524288 70a73f99 Gfx
rcm.76 524288 89a889ad Gfx
rcm.83 524288 6af30499 Gfx
rcm.84 524288 fb3097cc Gfx
rcm.85 524288 3d6186d8 Gfx
rcm.86 524288 6d974ebd Gfx
rcm.93 524288 7a5a5166 Gfx
rcm.94 524288 2e16557a Gfx
rcm.95 524288 8c7700f1 Gfx
rcm.96 524288 7da4cd24 Gfx

Will update here when I have a solution :)
I just saw this post!

I did mention combining ROMs above but yes you can do that with larger less expensive EPROMs

The Mega Man conversion is a bit more complicated because you need to know which ROMs on the daughterboard are bank switched with which ones on the main board.

Given the numbers are sequential I would combine all samples into 1x 32mbit ROM and install into socket 11

Combine first 8 GFX ROMs into 1x 32mbit ROM and install into socket 13

Combine second 8 GFX ROMs into 1x 32mbit ROM and install into socket 15
 
After some time troubleshooting, I eventually found the issue to be a faulty rom - of course it to be the very last rom on the board that was faulty!
Murphy's law is real!
Was digging for some official papers yesterday and they had to hide in the last box under all the others, at the back... :D
 
This Guide is awesome! All the info in one place! Would be great to mention that 27c240/27c4002/27c4096 are equivalent. Also that you can use 27c160 or 27c322 instead of 27c400 or 27c800 by multiplying the ROM file (I don't know why but 27c160 are really cheap and you can found packs of new brand of this for a fraction of the price of 27c800). Thanks for the info! Every time I found a cheap dead CPS2 that I already own, I bought it and do a conversion of some game impossible to find here haha

I was thinking about doing a conversion of Mega Man 1, but it has a daughter board with a lot of ROMs, I have to check how to combine them in order to be able to make a conversion.

rcm.01 131072 d60cf8a3 z80
rcmu.03b 524288 c39f037f Code
rcmu.04b 524288 cd6f5e99 Code
rcmu.05a 524288 4376ea95 Code
rcm.51 524288 b6d07080 Samples
rcm.52 524288 dfddc493 Samples
rcm.53 524288 6062ae3a Samples
rcm.54 524288 08c6f3bf Samples
rcm.55 524288 f97dfccc Samples
rcm.56 524288 ade475bc Samples
rcm.57 524288 075effb3 Samples
rcm.58 524288 f6c1f87b Samples
rcm.63 524288 acad7c62 Gfx
rcm.64 524288 65c0464e Gfx
rcm.65 524288 ecedad3d Gfx
rcm.66 524288 1300eb7b Gfx
rcm.73 524288 774c6e04 Gfx
rcm.74 524288 004ec725 Gfx
rcm.75 524288 70a73f99 Gfx
rcm.76 524288 89a889ad Gfx
rcm.83 524288 6af30499 Gfx
rcm.84 524288 fb3097cc Gfx
rcm.85 524288 3d6186d8 Gfx
rcm.86 524288 6d974ebd Gfx
rcm.93 524288 7a5a5166 Gfx
rcm.94 524288 2e16557a Gfx
rcm.95 524288 8c7700f1 Gfx
rcm.96 524288 7da4cd24 Gfx

Will update here when I have a solution :)
I just saw this post!

I did mention combining ROMs above but yes you can do that with larger less expensive EPROMs

The Mega Man conversion is a bit more complicated because you need to know which ROMs on the daughterboard are bank switched with which ones on the main board.

Given the numbers are sequential I would combine all samples into 1x 32mbit ROM and install into socket 11

Combine first 8 GFX ROMs into 1x 32mbit ROM and install into socket 13

Combine second 8 GFX ROMs into 1x 32mbit ROM and install into socket 15
Amazing! Thanks you for the info! I will give it a try when I get another dead donor board.
 
Hi @xodaraP, I got a few unpopulated B-boards that I would like to put back into operation. Want to start with HSF2 and have been struggling with this for a while now. The ROM's are as follows in MAME:
Code:
hs2.01 - 128 KB
hs2.02 - 128 KB
hs2u.03 - 512 KB
hs2u.04 - 512 KB
hs2.05 - 512 KB
hs2.06 - 512 KB
hs2.07 - 512 KB
hs2.08 - 512 KB
hs2.09 - 512 KB
hs2.10 - 512 KB
hs2.11m - 8,192 KB
hs2.13m - 8,192 KB
hs2.15m - 8,192 KB
hs2.17m - 8,192 KB
hs2.19m - 8,192 KB
Given what you've stated, HSF2 doesn't fall into a nice little bubble because the mask roms are 8,192 KB. Am I correct with the following?
  1. Each one of HSF2's roms from hs2.11m-thru-hs2-19m should be halved into 4096 KB chunks and burned to a 27C322 EPROM's, correct?
    • The first chunk should be seated into the odd numbered bank, correct?
    • The second chunk should be seated into the following even numbered bank, correct?
  2. From here, a G-Pal can be used
  3. The jumper settings should be set as default for HSF2: SOOS_SO_OSOSOS_SOSOSOSO_SOSOSOSO
If this is correct, then the question for me is what method do I use to split the rom files from the 8,192 KB whole into 4,096 KB chunks? Similarly, what method is used for doubling up a rom from let's say 2,048 KB -> 4,096 KB?


EDIT: @twistedsymphony provided me an answer for splitting ROM files over here.
 
Last edited:
You are correct. Note the above where the mask ROMs sit at 11/13/15/17/19 so if you split you get the even numbers.

Doubling is done using a binary copy command:

copy /b rom1.ext + rom1.ext <outputfilename>.ext

For splitting, I found this. I haven't used it and can't verify it's accuracy but it looks like it would do the job:

https://www.romhacking.net/utilities/812/

HxD also has the functionality inbuilt.

Your other guesses are correct. G PAL and G PAL jumper settings.

The maximum CPS2 mask ROM address space is 320mbit regardless of whether this is 10x32mbit or 5x64mbit
 
I will go with 10x32mbit using 27C322's since I have those EPROM's handy for HSF2.

Out of curiosity, what 64mbit EPROM would be suitable for HSF2?
 
No such EPROM exists sadly :(

Macronix makes 64mbit EEPROMs in a TSOP48 package (MX26L6420) you may be able to fit using an adapter board (these are used on PGM conversions)

If you're using UV EPROMs you need to split down to 32mbit/4mb

You need to do the same thing for Fluffy's PGM repro boards
 
Back
Top