SNK P.O.W. daughter board missing + rom size

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

    • SNK P.O.W. daughter board missing + rom size

      So I got this 5$ board that I tried and the daughter rom board is missing...

      thanks to LukeMorse () I see he gets the exact same results as me when his daughter board is installed "backwards".

      I see other boards without that daughter boards working and I see that ROM1 to ROM4 are filled with 4 x "nec 8831xd" instead of 16x 8k1 (?) on the daughter board (ym2149.com/arcadepcb/pcb/snk/pow_a7008-sub_pcb_partside.jpg)

      I figure I can join 4x4 and get this board working but I can't quite understand which rom I need ...

      Help?

      a working board without the daughter board:


      the NEC chips on the left



      my board with these 4 sockets unpopulated.



      Thanks!
      +++
    • Interesting... looking at the MAME driver: github.com/mamedev/mame/blob/m…rc/mame/drivers/snk68.cpp

      it seems that the version without the daughterboard is not dumped!

      we could probably make it though.

      it looks like that section are the "880" "gfx2" ROMs given the rom sizes on the daughterboard and the fact that those 4 16-bit ROM locations are 40 pin I'd guess that those are either 27c4096 or 27c400, there are two different pinouts there and you'll want to use a multimeter to determine which pinout that location matches.

      For ccombining the ROMs there are 16 8bit/1Mbit ROMs. but they're pairs of 8-bit ROMs being used as 16-Bit ROMs so you'll need to interleave those pairs to make 8 16bit/2Mbit images, and then concatenate every 2 to make the 4 16bit/4Mbit images to burn.

      assuming that the logic/PLDs aren't different between the two versions of the game I see no reason it shouldn't work. Definitely socket those locations though. the most time consuming part will be pulling all the solder out of those IC locations.
      Buy 3D Printed Parts: bit-district.com
      Projects: instagram | blog
      Games: VAPS | VOOT | UMK3 | RFM | Vewlix | FiF Jr. | KI2 | E29 | Net City | DDR | Flash Beats
      Wanted | For Sale/Trade
    • twistedsymphony wrote:


      For combining the ROMs there are 16 8bit/1Mbit ROMs. but they're pairs of 8-bit ROMs being used as 16-Bit ROMs so you'll need to interleave those pairs to make 8 16bit/2Mbit images, and then concatenate every 2 to make the 4 16bit/4Mbit images to burn.
      27c4096 I've got so I will try these.

      16 x 8/1
      pairs of 8 used as 16
      Interleave those pairs to make 8 16/2
      concatenate every 2 to make 4 16/4

      :huh: X/ :S <X

      err... could you please say that in english ? :P
      I am understanding that I need to join each 2 roms to create 8 then every 2 to create 4 but the "interleave" part I don't understand how to do?

      Thanks!
      +++
    • Mrhide wrote:

      27c4096 I've got so I will try these.
      don't just "try" them. verify the pinout first given how these two line up you'd probably be safe attempting to use the wrong one, but on some other scenarios that could lead to burning up chips and/or traces.

      just take a multimeter and check if the Vcc and GND pins go to Vcc and GND. altnatively the Address and Data pins should all be routed together between the EPROMs with the OE and CE not routed together.




      Mrhide wrote:

      err... could you please say that in english ?

      so when you have an 8-bit EPROM it has 8 output pins (8 bits of data for a given address).
      when you have a 16-bit EPROM it has 16 output pins (16 bits of data for a given address).

      so when you're using 2 8-bit EPROMs to act like a single 16-bit EPROM you basically enable both chips at the same time, give them the same address, and simply have the 8 output pins of one chip be the lower 8-bits and the 8 output pins of the other chip be the upper 8-bits.

      when trying to "join" that data for use on a single 16-bit chip you have to "interleave" it. meaning you take 1 byte from the lower chip, then one byte from the upper chip, then one byte from the lower chip, then one byte from the upper chip and so on... imagine joining two stacks of paper except you need to alternate pages from each stack when making the new stack.

      There are some hex editors and other ROM tools that will perform this for you. Alternatively MAME interleaves the data when it's loaded into memory so you could also load the game in MAME debugger and dump out that memory region.
      Buy 3D Printed Parts: bit-district.com
      Projects: instagram | blog
      Games: VAPS | VOOT | UMK3 | RFM | Vewlix | FiF Jr. | KI2 | E29 | Net City | DDR | Flash Beats
      Wanted | For Sale/Trade

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

    • Not sure if you've made any progress on this but earlier tonight I had a Konami Super Contra with graphics issues and discovered that, like POW, the ROM expansion board could be completely eliminated. Since my problem was likely on the expansion board I took the opportunity to try it out and I documented the process: solid-orange.com/1738
      Buy 3D Printed Parts: bit-district.com
      Projects: instagram | blog
      Games: VAPS | VOOT | UMK3 | RFM | Vewlix | FiF Jr. | KI2 | E29 | Net City | DDR | Flash Beats
      Wanted | For Sale/Trade
    • twistedsymphony wrote:

      Not sure if you've made any progress on this but earlier tonight I had a Konami Super Contra with graphics issues and discovered that, like POW, the ROM expansion board could be completely eliminated. Since my problem was likely on the expansion board I took the opportunity to try it out and I documented the process: solid-orange.com/1738
      Ah !! nice work !!
      I was still looking for the interleave tool ! thanks for that ! I shall try it ASAP!!
      +++
    • so based on the mame code

      Source Code

      1. ROM_REGION( 0x200000, "gfx2", 0 ) /* sprites */
      2. ROM_LOAD16_BYTE( "snk880.11a", 0x000000, 0x20000, CRC(e70fd906) SHA1(b9e734c074ee1c8ae73e6041d739ab30d2df7d62) )
      3. ROM_LOAD16_BYTE( "snk880.15a", 0x000001, 0x20000, CRC(7a90e957) SHA1(9650d7cdbcbbbcdd7f75a1c3c08a195aa456e169) )
      4. ROM_LOAD16_BYTE( "snk880.12a", 0x040000, 0x20000, CRC(628b1aed) SHA1(1065ef835da03f7d9776e81c225c3ecdd2affae2) )
      5. ROM_LOAD16_BYTE( "snk880.16a", 0x040001, 0x20000, CRC(e40a6c13) SHA1(7ad9dfc65f8c8b316933f0fdd3bc7a243d6eff65) )
      6. ROM_LOAD16_BYTE( "snk880.13a", 0x080000, 0x20000, CRC(19dc8868) SHA1(82aaf93fc8f4b3bf947d373d0f41cc0044207c34) )
      7. ROM_LOAD16_BYTE( "snk880.17a", 0x080001, 0x20000, CRC(c7931cc2) SHA1(908313d9b7fa4395b5fb79925d068e4f5d354b21) )
      8. ROM_LOAD16_BYTE( "snk880.14a", 0x0c0000, 0x20000, CRC(47cd498b) SHA1(7fbc007f2d817c26af02fef233f5e0681a17052a) )
      9. ROM_LOAD16_BYTE( "snk880.18a", 0x0c0001, 0x20000, CRC(eed72232) SHA1(ad614e752cf1d3eac9a04cbc90435f988e90ace7) )
      10. ROM_LOAD16_BYTE( "snk880.19a", 0x100000, 0x20000, CRC(1775b8dd) SHA1(c01154749379be6e18baa99f4d94d97942f3dd85) )
      11. ROM_LOAD16_BYTE( "snk880.23a", 0x100001, 0x20000, CRC(adb6ad68) SHA1(ed4323d2dfa3efaa496b17f4719f9566d56725e5) )
      12. ROM_LOAD16_BYTE( "snk880.20a", 0x140000, 0x20000, CRC(f8e752ec) SHA1(1e1e178303f9af84cbb15249c49a870193ef805f) )
      13. ROM_LOAD16_BYTE( "snk880.24a", 0x140001, 0x20000, CRC(dd41865a) SHA1(c86f14342beca896784b88920d9e0879af4179ab) )
      14. ROM_LOAD16_BYTE( "snk880.21a", 0x180000, 0x20000, CRC(27e9fffe) SHA1(e8058db40832b986c5addd22dd69b0308d10ec71) )
      15. ROM_LOAD16_BYTE( "snk880.25a", 0x180001, 0x20000, CRC(055759ad) SHA1(f9b12320f142075d49d447fb107af99272567d58) )
      16. ROM_LOAD16_BYTE( "snk880.22a", 0x1c0000, 0x20000, CRC(aa9c00d8) SHA1(1017ed1cc036c6084b71204a998fd05557a6e59f) )
      17. ROM_LOAD16_BYTE( "snk880.26a", 0x1c0001, 0x20000, CRC(9bc261c5) SHA1(f07fef465191d48ccc149d1a62e6382d3fc0ef9f) )
      Display All

      I thought : 11 +15, 12+16, etc and the resulting 8 to 4:

      md out
      REM POW tiles
      python ts_rom_tool.py -interleave snk880.11a snk880.15a 01a.bin
      python ts_rom_tool.py -interleave snk880.12a snk880.16a 02b.bin
      python ts_rom_tool.py -interleave snk880.13a snk880.17a 03d.bin
      python ts_rom_tool.py -interleave snk880.14a snk880.18a 04e.bin
      python ts_rom_tool.py -interleave snk880.19a snk880.23a 05f.bin
      python ts_rom_tool.py -interleave snk880.20a snk880.24a 06g.bin
      python ts_rom_tool.py -interleave snk880.21a snk880.25a 07h.bin
      python ts_rom_tool.py -interleave snk880.22a snk880.26a 08i.bin
      type 01a.bin 02b.bin > out/01.bin
      type 03d.bin 04e.bin > out/02.bin
      type 05f.bin 06g.bin > out/03.bin
      type 07h.bin 08i.bin > out/04.bin


      and placed them in position 3,4,5 and 6.

      and nope. no go.

      tried different position (The board list each ROM spot twice: "4" as "ROM 1", "3" as "ROM3", "5" as "ROM 4" and "6" as "ROM 2") no go.

      erased ( insert Hammy comment here) roms

      tried something different:

      python ts_rom_tool.py -interleave snk880.11a snk880.12a 01a.bin
      python ts_rom_tool.py -interleave snk880.13a snk880.14a 02b.bin
      python ts_rom_tool.py -interleave snk880.15a snk880.16a 03d.bin
      python ts_rom_tool.py -interleave snk880.17a snk880.18a 04e.bin
      python ts_rom_tool.py -interleave snk880.19a snk880.20a 05f.bin
      python ts_rom_tool.py -interleave snk880.21a snk880.22a 06g.bin
      python ts_rom_tool.py -interleave snk880.23a snk880.24a 07h.bin
      python ts_rom_tool.py -interleave snk880.25a snk880.26a 08i.bin
      type 01a.bin 02b.bin > out/01.bin
      type 03d.bin 04e.bin > out/02.bin
      type 05f.bin 06g.bin > out/03.bin
      type 07h.bin 08i.bin > out/04.bin


      tried the same permutation, still get big (insert another Hammy comments here) blocks :



      Time for bed ...
      +++
    • Mrhide wrote:

      I thought : 11 +15, 12+16, etc and the resulting 8 to 4:

      md out
      REM POW tiles
      python ts_rom_tool.py -interleave snk880.11a snk880.15a 01a.bin
      python ts_rom_tool.py -interleave snk880.12a snk880.16a 02b.bin
      python ts_rom_tool.py -interleave snk880.13a snk880.17a 03d.bin
      python ts_rom_tool.py -interleave snk880.14a snk880.18a 04e.bin
      python ts_rom_tool.py -interleave snk880.19a snk880.23a 05f.bin
      python ts_rom_tool.py -interleave snk880.20a snk880.24a 06g.bin
      python ts_rom_tool.py -interleave snk880.21a snk880.25a 07h.bin
      python ts_rom_tool.py -interleave snk880.22a snk880.26a 08i.bin
      type 01a.bin 02b.bin > out/01.bin
      type 03d.bin 04e.bin > out/02.bin
      type 05f.bin 06g.bin > out/03.bin
      type 07h.bin 08i.bin > out/04.bin
      your initial thought here was the correct one, I think maybe you just need to work out which of the new roms belong in which socket.
      Buy 3D Printed Parts: bit-district.com
      Projects: instagram | blog
      Games: VAPS | VOOT | UMK3 | RFM | Vewlix | FiF Jr. | KI2 | E29 | Net City | DDR | Flash Beats
      Wanted | For Sale/Trade
    • twistedsymphony wrote:

      Mrhide wrote:

      I thought : 11 +15, 12+16, etc and the resulting 8 to 4:

      md out
      REM POW tiles
      python ts_rom_tool.py -interleave snk880.11a snk880.15a 01a.bin
      python ts_rom_tool.py -interleave snk880.12a snk880.16a 02b.bin
      python ts_rom_tool.py -interleave snk880.13a snk880.17a 03d.bin
      python ts_rom_tool.py -interleave snk880.14a snk880.18a 04e.bin
      python ts_rom_tool.py -interleave snk880.19a snk880.23a 05f.bin
      python ts_rom_tool.py -interleave snk880.20a snk880.24a 06g.bin
      python ts_rom_tool.py -interleave snk880.21a snk880.25a 07h.bin
      python ts_rom_tool.py -interleave snk880.22a snk880.26a 08i.bin
      type 01a.bin 02b.bin > out/01.bin
      type 03d.bin 04e.bin > out/02.bin
      type 05f.bin 06g.bin > out/03.bin
      type 07h.bin 08i.bin > out/04.bin
      your initial thought here was the correct one, I think maybe you just need to work out which of the new roms belong in which socket.

      I have burned these again and tried all 24 permutations.



      Still no go X/
      +++
    • You don't need to try every combination, I would have just installed the first chip and see if any graphics look right, and if not tried it in each of the other positions.

      There could be a couple of things here
      1. the chips are being used in 8-bit mode instead of 16-bit mode, would be kind of a dumb design IMO but not out of the question.
      2. the chips are meant to be byte swapped (meaning when interleaving you reverse the files), again would be kind of silly design since the data doesn't appear to be byte swapped once loaded into MAME, but again not out of the question.
      3. some other piece of hardware might need to enable these sockets in lieu of the sub-board, would be another silly design choice but not out of the question.

      some of these can be answered with the following:
      1. is pin 31 tied to 5V or Ground?
      2. are the address and data pins of all 4 chips tied together, if not, which ones are separate? (these are the "A#" and "Q#" pins in the pinout a few posts up.
      3. the Enable pins (Pin10 and Pin12) are there any tied together between any of the chips? (note that usually one of them will be tied to ground)
      4. if the Enable pins aren't tied to ground, can you trace where they go?

      you might also consider confirming that your chips are programmed correctly.
      -read one, then split it and de-interleave it and then compare against mame to make sure it still matches.
      Buy 3D Printed Parts: bit-district.com
      Projects: instagram | blog
      Games: VAPS | VOOT | UMK3 | RFM | Vewlix | FiF Jr. | KI2 | E29 | Net City | DDR | Flash Beats
      Wanted | For Sale/Trade

      The post was edited 2 times, last by twistedsymphony ().

    • Mrhide wrote:

      So I got this 5$ board that I tried and the daughter rom board is missing...
      Maybe the game developped a problem, it was identified motherboard was at fault and romboard was pulled and kept aside.

      I would be curious what result you get by mixing ROMs in MAME but I wouldn't be surprised it's far from the garbage picture you sent.
      Looking for:
      - faulty Hang-On, Space Harrier or Enduro Racer (2203 sound board)
      - Sega Mega-CD 1 power board
      - Super Nintendo CPU (3 needed)



      "I'd 1cc games but I have a real life."
      01010011 01000101 01000011 01010010 01000101 01010100 00100000 01001101 01000101 01001110 01010101 00100000 01000111 01010101 01011001
    • Apocalypse wrote:

      Maybe the game developped a problem, it was identified motherboard was at fault and romboard was pulled and kept aside.
      that's a very good point.

      @Mrhide does your game play and have correct sounds without the graphics ROMs installed? it should.
      Buy 3D Printed Parts: bit-district.com
      Projects: instagram | blog
      Games: VAPS | VOOT | UMK3 | RFM | Vewlix | FiF Jr. | KI2 | E29 | Net City | DDR | Flash Beats
      Wanted | For Sale/Trade
    • bytestorm wrote:

      Layer33 wrote:

      I think you can get your 4 roms from MAME, after launching your game and selecting each rom in RAM with an hex editor such as Winhex.
      this sounds useful, please explain a little more :)
      I launch the game with MAME, I let the game playing a bit then I pause (letter p).
      I open Winhex, then I go to Tools/File Tools/Unify Bytewise (8 bit) then I select snk880.11a and snk880.15a (first ones read in snk68 MAME driver), and I save the file as part1.bin (256 kB).
      I open part1.bin with Winhex and I check in Tools/Open RAM : MAME (I use MAMEUI) if I find the beginning of the same block of 256 kB in Search/Find Hex Values.
      I redo the same process with the other blocks.

      The post was edited 2 times, last by Layer33 ().

    • The game plays *exactly* like the video in the first post (~ 1:50 ). the text is fine, the sound is fine, the controls are working but graphics are big blocks.

      When I put the 4x27C400 burned with the interlaced MAME roms, the blocks simply have more colors (see above) but they are still not ok.

      @Layer33: send me the 4 files @ mrhide at yahoo dot com and I'll compare them with what I have burned?

      I'll try and answer TwistedSymphony pin questions today.

      Thanks everyone for the efforts to help!
      +++