Perfboard Videobrain Fail

I need something to poke on my logic analyzer of doom, so I thought I’d make up a Videobrain.  For those that don’t know, this is an ill-fated home computer that was released in 1978, and by 1979 it was already being sold at liquidation prices.   There’s a bit more information about it at the wikipedia article:

http://en.wikipedia.org/wiki/VideoBrain_Family_Computer

Basically it is a computer that uses a Fairchild F8 CPU and two custom ASICs along with a mess of TTL chips.  There’s a diminutive 36 key keyboard which apparently is tough to touch type on, a weird “top loading” style cartridge slot, and no less than 4 joystick ports.  Each joystick unfortunately is analog, with pots on the X and Y direction and a single fire button.  That’s the overview.  Awhile back I ran across 10 sets of the ASICs so I decided to make a perfboard version of the ‘brain because buying one is pretty much out of the question.  When they show up on ebay, which is rare, they fetch prices in the several hundred dollar range.  I figured with a bit of time I could build my own for much less.  So far, I think I have spent about $25-30 on the project.

After buying a few things on ebay (perf board and pin headers mainly), and collecting chips (I actually had almost all of the chips, I only had to buy the 2101 SRAMs and the 3850 CPU and 3853 SRAM interface chips), I put it all together.  Total assembly time was 4 days.  I followed the schematic directly and simply reproduced it on the perf board.

perfbrain1

The first order of business was to make the “keyboard”.  I had a whole bunch of these little rubber dome push buttons which were perfect for the job.  I laid them out approximately like they are on the real unit.  The white connector at the top plugs into another similar board with most of the logic on it.

perfbrain2

After that, I added the 3850 CPU, the 74LS05’s for the joystick reading and the keyboard matrix wiring.  I added a 4050 buffer for the keyboard since the buttons have a fairly high resistance- around 500-1000 ohms when pressed.  The buffer then drives the port on the 3850.  The pin header lets me poke the various joystick inputs and the DB-9 connector.  The empty space in the lower left corner is for eventual DIN-5 and the DB-9 connectors if I feel like adding them.

perfbrain3

At this point, the 3853 SRAM interface and one of the EPROMs is on, and I finished wiring everything.  The 555 timer in the upper left corner reads the joysticks and the 74LS74 for audio is present too.

perfbrain5

Unfortunately, I thought I took more pics of the progress of the top board but apparently not.  In any event here is the top board done,which contains the two ASICs (UV201, UV202) and all the miscellaneous TTL stuff and the 8 SRAM chips.  Two of the sockets are individual pins, which are seen below each ASIC.  These hold one of the EPROMs and a larger 27C010 EPROM which can store all the games at once for testing.  These helped with wiring because I can simply run wires between the pins to save space.  The three 6 pin black connectors and that conspicuous empty space are for a plug-in video board.  The empty space will be for the chips that control the 27C010 to make it into a menued multicart if I get that far.

perfbrain4

The video board is plugged in now and installed.  It’s mainly all those resistors and two transistors that convert the digital outputs of the ASICs into the component video that the modulator chip likes.  The 2 caps and TO220 above that is a switching 5V regulator.  I feed 12V into the board which supplies 12V to the 4 40 pinners and the buck regulator drops it down to 5V for everything else.  At this point, I break out the multimeter and verify every connection on the two boards- every pin of every chip is verified to make sure it is going to the correct place.  This takes about 2 hours and I did find a few wiring flubs.  These were fixed, and I reverified connections.

perfbrain6

And here’s everything all plugged together.  At this point I powered it up, and started probing chips with my calibrated finger to make sure nothing was getting too hot.  After that passed, I broke out the oscilloscope and started poking the oscillators.  The 14.3181MHz crystal pins were dead on the UV202.  I tried a few things, including a resistor across the pins but it just wouldn’t wiggle.  I could see inverter action on the pins though, so I knew there was indeed an inverter in there.  I tried another UV202 and now the crystal wiggles.   At this point I get kind of a sinking feeling, thinking that these ASICs might ALL be bad, and were pulls from a repair depot or similar.  I sure hope not.

At this point, I poke the 4MHz crystal to see if it’s working, and it is indeed oscillating.  The clock line to the CPU is dead, however.  I press the reset button, and the clock bursts into life for a few milliseconds then dies again.  Repeated pressings of reset result in a similar thing happening.  At this point I am not quite sure what is going on, and some more prodding and poking later I check out the 4MHz crystal oscillator again.  Well, turns out it isn’t exactly 4MHz.  It’s more like 2.6MHz !!  Turns out the 4001 I chose to replace their 74C02 isn’t up to the task at 5V.  I drop in a 74HC02 and swap pins 1/3 and 11/13 since two of the four gates are “Backwards” from each other.  Now, I am getting a decent solid 4MHz on the crystal.  I check the CPU’s clock and it is indeed 2MHz, while it is running.

But again, it only runs for a short time before dying.  I am pretty much out of ideas at this point and I need to really hook the logic analyzer up to do any more debugging, since this appears like it is going to be a difficult job.  I tried a few more of the UV201’s and 202’s and get the same result with each so it’s possible that chip that didn’t oscillate was a fluke, but I don’t know.