My CPS1 conversions info

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

    • Muchi Muchi Spork wrote:

      No I'm saying use 27C4096G for the 3 program roms 21, 22 and 23. That's all you have to do. It's the easiest conversion ever.
      So I was looking at the board.. and was like.. OH sweet capcom used UV chips.. I'll just back those up -- uv them and write rainbow to them.. after 30 minutes the chip didnt erase.. so back to placing my order for them.
    • Generally speaking it is best to keep the originals with original stickers and use other chips for rainbow (for starters, when you sell the board the buyer is going to prefer to have those chips and stickers intact). However since you already removed the stickers...30 minutes isn't a guarantee that the chips can't be reprogrammed, not at all. In fact there's very little chance that is the case. You have to have patience with those things. Most likely you need to use rubbing alcohol and qtips on the crystal covers on the chips until they are the cleanest thing you have ever looked at in your life. If there is any tiny little piece or dirt/grime/sticker glue it can stop the UV from completing its job and on top of that sometimes chips just take longer than others to clear.
    • Cheers.. I havent had any experience from erasing chips except a handful I ordered in to do cruisin upgrade with.. and that one erased really fast.. (about 20 min in UV)

      I only removed the one sticker from the u23 - I have no intentions on selling the board - its one of my top 5 all time favorite games.. but again.. thanks for the tip!
    • I used your GnG set and converted it to US version. Rather than paste roms here's how it's done.. first you need a script to interleave files. I used a perl script I found on the internet which worked great:

      Perl Source Code

      1. #!/usr/bin/perl -w
      2. open LO, $ARGV[0] || die $!;
      3. binmode LO;
      4. open HI, $ARGV[1] || die $!;
      5. binmode HI;
      6. my $hidata;
      7. my $lowdata;
      8. while (read(HI, $hidata, 1)) {
      9. read(LO, $lowdata, 1) || last;
      10. printf "%c%c", ord($hidata),ord($lowdata);
      11. }
      12. close HI;
      13. close LO;
      Display All



      What this script does is takes two input files and combines them byte-by-byte so if LO was 1234 and HI was ABCD the resulting file is 1A2B3C4D. Now if you look at MAME for CPS1 you will see the following for ghoulsu in the cpu section:

      Source Code

      1. ROM_REGION( CODE_SIZE, "maincpu", 0 )
      2. ROM_LOAD16_BYTE( "dmu_29.10h", 0x00000, 0x20000, CRC(334d85b2) SHA1(89bacc28b7c799c7568420e3de5a99060baa7b0f) )
      3. ROM_LOAD16_BYTE( "dmu_30.10j", 0x00001, 0x20000, CRC(cee8ceb5) SHA1(fc8db1ce0c143dfda0b5989d02d5e5a872e27cd2) )
      4. ROM_LOAD16_BYTE( "dmu_27.9h", 0x40000, 0x20000, CRC(4a524140) SHA1(cebd651293c3570912d5506c1c223c39bcccc802) )
      5. ROM_LOAD16_BYTE( "dmu_28.9j", 0x40001, 0x20000, CRC(94aae205) SHA1(514b3c1b9b0b22300a94229825c3be66332ea5ed) )
      6. ROM_LOAD16_WORD( "dm-17.7j", 0x80000, 0x80000, CRC(3ea1b0f2) SHA1(c51f1c38cdaed77ad715cedd845617a291ab2441) )
      These are the roms used to load the game. dm-17.7j if you did a comparison with daimakair after doing a word swap on dm-17.7j will find that it's the same exact file as damj_22.7f. This means the only rom we need to craft is damj_23.8f which are the dmu_* files.

      Going back to the perl script we need to combine these chips into one big chip. You will see that the two roms are pairs - dmu_29 & dmu_30 as well as dmu_27 and dmu_28. Looking at the starting address you can see one is odd (ending in 0) and one is even (ending in 1). To combine the files is simple enough, running the script you do the following:

      Source Code

      1. ./ans.pl dmu_29.10h dmu_30.10j > first.bin
      2. ./ans.pl dmu_27.9h dmu_28.9j > second.bin
      3. cat first.bin second.bin > damj_23.8f
      This will result in a 512KB file that can be written to replace the chip in socket 23 which will convert the game to US. For some reason it seems that the daimakair roms still have the English graphics so you don't really have to replace anything there. Same can be done for export/world just have to use the proper rom files.


      You can also use the sound rom from the US which is what I swapped in, not sure if it's necessary. Just take 26.10a from ghoulsu and double it:

      Source Code

      1. cat 26.10a 26.10a > dam_09.12a
      Write to a chip and place in the board and you're good to go.

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

    • Final Fight USA 900112 to SF2CE

      You need the script above and two rom sets from mame - ffightjh and ffightua

      From ffightjh grab s224b.1a and use jedutil from mame to convert it to jed format. This will be your PAL chip

      From ffightua you need to combine some files to make chip 23:

      Source Code

      1. ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */
      2. ROM_LOAD16_BYTE( "ffu_36.11f", 0x00000, 0x20000, CRC(e2a48af9) SHA1(11e06f95bdf575af396dded2b84d858f6c7388f1) ) // in "30" socket
      3. ROM_LOAD16_BYTE( "ffu_42.11h", 0x00001, 0x20000, CRC(f4bb480e) SHA1(32114df1d2f4f98a4a2280a330c7b6af8ab4d862) ) // in "35" socket
      4. ROM_LOAD16_BYTE( "ffu_37.12f", 0x40000, 0x20000, CRC(c371c667) SHA1(633977c91a8ff09b7fe83128eced7c4dee9aee1d) ) // in "31" socket
      5. ROM_LOAD16_BYTE( "ffu_43.12h", 0x40001, 0x20000, CRC(2f5771f9) SHA1(fb532402bc00b5619a23dfa7e4525f1717020303) ) // in "36" socket /* different CRC from ffightu, ffightu1, pcb verified */
      6. ROM_LOAD16_WORD_SWAP( "ff-32m.8h", 0x80000, 0x80000, CRC(c747696e) SHA1(d3362dadded31ccb7eaf71ef282d698d18edd722) )

      Source Code

      1. ./ans.pl ffu_36.11f ffu_42.11h > first.bin
      2. ./ans.pl ffu_37.12f ffu_43.12h > second.bin
      3. cat first.bin second.bin > ffu_23.bin
      4. CRC(bd41c4e1) SHA1(16482fbac2b5396b2ff2f4645ec999a8f650a1d3)
      ff-32m.8h becomes chip 22

      graphics chips 1-4 (note might need to swap the location of 7m and 1m depending on if you have a MASK board):
      ff-5m.7a
      ff-7m.9a
      ff-1m.3a
      ff-3m.5a

      ff_09.12b is chip 9

      chips 18 and 19:
      ff_18.11c
      ff_19.12c
    • SF2CE to Area 88 Resale version:

      Really easy conversion, it uses the same B board. You need area88r from Mame for this

      GAL chip is "ara63b.1a" run it through jedutil in mame to convert to .jed and write

      GFX chips for slots 01 through 04 are:
      ara_01.3a
      ara_02.4a
      ara_03.5a
      ara_04.6a

      Note 2 & 3 might have to be swapped depending on if you have a MASK board

      Audio cpu in chip 09 is ara_09.12a

      Samples in chip 18 is ara_18.11c

      Program 22 and 23 are:
      araj_22.7f
      araj_23.8f


      Yeah that's boring and known information that could've been figured out with 3 seconds of effort. ¡BUT! UN Squadron US is actually hiding inside of area88r and converting Area 88 Resale to UN Squadron is extremely simple:
      araj_23.8f
      0x1327: 00->01
      0x4564: 00->6A

      These are two addresses that need patched within araj_23.8f which switches the game over to UN Squadron :) Just do those two hex changes, burn the chip and enjoy