About me

My photo
Vanløse, Copenhagen, Denmark
Mathematician. Working programmer/system developer. Nerd. Married. Father of 3.

27.3.13

Capcom 1942 Repair Log

I found this cheap 'untested' original 1942 on evilBay a looooong time ago. Untested usually means tested but defective, but with the 'alternative description', sellers think that they can get more for their defective boards. This was actually one of first 5 boards I ever bought, and I was still young and innocent. So I was full of hope, when I connected the board for the first time. However, all that showed on the screen, was this static screen full of sprites


This was long before I even started doing reps, so the game was just put on shelf with the optimistic thought, that I might be able to fix it some time in the future.

At some point I snapped up another cheap original 1942; this one was working. So I tried swapping the secondary boards on the two and saw, that the working one with the secondary board from the defective, booted to this screen and was working fine.


...the other combo resulted in the same screen as before. So the static screen had to be caused by the primary board. So far so good.

Now about a year ago, I felt I had the courage to take a real look at this board. During the initial visual inspection, I quickly found this


This, the brown patches at each side of the edge connector, looked very much like the result of a major short circuit or some other type of overload. Also a cap was missing in the sound section, so a new one was fitted (easy, as the schematics can be found at porchys site jammacade.net)


Other than that, both PCB's looked quite sober and well. Next step was to dump the ROMs on the primary PCB, thereby also reseating them. However, when I got to the 5 ROMs SR03-SR07 I got either this


or this


Both cases meant that the ROMs were knacked...ALL 5 of them?!...you don't see that very often. So found the MAME ROM-set and programmed and fitted 5 new ones. Well actually I couldn't find any 27C128 in the scrap pile, so I used 5 27C256 instead. This is done quite easily: You make a ROM-image twice as big, by putting 2 copies of the original image after each other (in a Windows environment this can be done with the copy-command (with the /b option and '+' between the 2 source files) from cmd.exe; on nix-systems you can use the cat-command and pipe the result into a new file). That way it doesn't matter if the most significant address bit is high or low (or floats for that matter), because the same data resides in both the upper and lower part of the ROM; effectively making a 27C256 act as a 27C128.


I still had the static screen though. So next I checked the control signals on the main CPU: Clock, reset, halt etc. They all looked fine, but there was no activity on the main address bus neither the main data bus. This can often be caused by bad work RAM


so I desoldered them both to test them in the Top. They were both fried, so fitted sockets and found 2 replacements from the scrap pile


However it didn't change a thing on the screen, neither on silent buses. This was as far I got at that time, so back on the shelf it went.

A couple of weeks ago, I decided to pick this board up again. I had recently acquired my Fluke9010A, and this would be a perfect chance to use it };-P So started by desoldering the main CPU


and fitted a socket; notice that I don't use machined pin header strips, as the Fluke works better with standard sockets.


Next, let's power up that beast };-P


Now the first thing to do, is always the BUS TEST to see if any lines are stuck, floating, or tied together


I turned off the power and checked for direct connection between GND and data pin 3, but found none. So this was likely either a broken TTL, or the short migth be on the other side of a mux, latch etc. Did a read-up on the schematics and found, that the first component on the databus after the CPU itself, was the 374 closest to the CPU. So desoldered it to test it in the Top, and was not surprised to see that the verdict was BAD!!!


So a socket was fitted and a replacement sourced from a scrap board.


Connected the Fluke again and ran the BUS TEST again. This time I got


Again consulting the schematics, I found that the next component on the databus was this 245 just beside the program-ROMs.


I had a tube of NOS 245's, so tried piggybagging one on top of the suspect


and now got the following result from the BUS TEST


...a clear indication, that something was rotten (in the State of Denmark };-P). So desoldered and tested it...once again a BAD!!! So a socket was fitted and the 245 from the tube installed.


(Yes I do know, that the 367 just beside it is now also socketed; I was a bit tired at the time and accidentally desoldered the wrong IC };-D When off-board anyway, I tested it in the Top, and it tested OK.) Now I finally got


With shaky hands I prepared the "RUN UUT"-function,


pressed the 'YES'-button, aaaand


It's aliiiive };-P Even though the start screen was olive green and not black, the attractmode played fine with no colour issues. Coined up the game and hit the start-button. Right upon start-up, the plane flew all the way to the right, but beside that, the controls worked fine. Turned the board off again, removed the Fluke-pod and reinstalled the original Z80.


Hmmm, could seem like the main CPU was toasted as well. Found an original Zilog from a scrap-board, installed it, and the board now worked just like when the Fluke was running it.
I decided to address the control issue first. By using the continuity tester, I traced the 'RIGHT'-pad on the edge connector back to this 367 at A4


As all these 3 367's are already socketed, it was an easy task to test it in the Top. It tested BAD!!! and a working one from scrap was installed.


Now the controls were perfect, so I had to address the olive green start screen. So far, I had only been concentrating my attention on the main PCB; now I turned to the secondary one, as this handles the graphics. As usual I did visual inspection, but found it in good shape. Next I started dumping the ROMs. But when I got to SR13, the Top reported unconnected pins...


So I sourced (scrap), erased, and programmed a new one with the image from the MAME ROM-set, and presto:


black background on the startscreen restored };-P

Last but not least, I borrowed some of my wife's coloured crea-tape and made some lovely looking new stickers for the newly programmed ROMs (note to self: buy heart shaped stickers for future reps };-P)


As I have mentioned before, I can't stand the sorry excuse for music in this game, and I don't think much of the gameplay...so I will try to trade this board for some more defective ones };-P

5 comments:

  1. enjoyed reading this. especially the part about using the Fluke9010A. I have seen them for sale but never saw one being used.

    i tried to email you about acquiring that board, but it seems that its not possible to email blogspot users (unless i missed something)

    ReplyDelete
  2. Hi Alenor
    Yes, you're right...it's not easy getting an email through to bloggers...I'll have to look into this.

    The PCB is already traded for 4 defectives (including an original Galaxian };-P) with a member fra http://www.dragonslairfans.com/ living in the Netherlands.

    Thnx for looking and for the kind words };-P

    ReplyDelete
  3. I've a added a 'Contact'-link in the bottom of the page now...yes I know the contact-form is ugly, but it's the best I can do for now. };-P

    ReplyDelete
    Replies
    1. sorry to hear about the 1942 :(

      galaxian is fun :)

      have you seen the test-rom someone made for the galaxian hardware?
      it seems to work ok. i used it to test an fpga implementation of galaxian
      that someone wrote..

      Delete
  4. Only heard about it...I think I'll try it, if I run into trouble fixing the board };-P

    ReplyDelete