Friday, February 12, 2021

Bad video in a TI 99/4A

 

I recently got a cheap TI 99/4A that was described as broken with bad video. 

TI 99/4A needing some TLC.


TI 99/4As are frustrating to fix because most problems have the same symptoms, a loud beep and a black screen, making faults very hard to diagnose. Garbled screens are an exception, and are most often caused by bad video RAM. If this is the problem it might be an easy repair.

When first turning on the computer, I saw the following screen (see video too). 

TI-99/4A showing garbled screen.




The initial vertical dot pattern seemed to indicate that only one RAM chip is broken, however, after a while more generalized video corruption occurs, so the problem looks more complex than a single broken RAM chip. I suspect power problems. The 4116 chips used in the video RAM require +5v, +12v, and -5v. If one of the voltages fails a few seconds after the computer is turned on, maybe it can cause the changing patterns.

Ok, I disassembled the computer, and it was quite dirty as expected, and showed significant rust in the motherboard shield.

Rusty Motherboard Shield.


Dusty Motherboard. RAM chips are the 8 left most chips under the video processor (still covered in thermal paste). The board showed no signs of previous repairs.

I measured the input voltages to the board, and they were within spec, and stable after a couple minutes. I also measured the input voltages of each 4116 RAM chip, and they were fine too. So, the problem did not seem to be voltage related.

I then tested the TMS9918A video processor by replacing it in a working TI motherboard, and it was fine. I did not expect the video processor to be bad, but since it was socketed, it was easy to test before starting desoldering chips. Anyway, it was not the problem, so I really needed to test the video RAM.

To determine which of the 8 RAM chips might be broken, I measured the voltage at the output pin of each 4116 chip in the working motherboard. My assumption was that during the static initial screen, while the computer waits for a key to be pressed, the bit pattern produced by each chip will average out to some identifiable voltage. Then I repeated the measurements with the broken motherboard, making sure the use the same multimeter, power supply, and power board. The readings were as follow for the good board: 0.85, 0.52, 0.85, 0.97, 0.93, 0.52, 0.89, 0.37 (chips in left to right order), and like this for the bad one: 0.9, 0.2, 2.7, 0.82, 2.7, 1.8, 2.28, 0.37.  The 4 chips with voltage above 1-Volt looked suspicious, so I decided to desolder them and install sockets.

To avoid damaging the board, I first applied fresh solder and straightened each pin, then I used a desoldering gun to suck all visible solder. Finally, I applied hot air while pulling out each chip to melt any remaining solder that might still be sticking it to the board pads and traces.

When pulling out the 4 chips I noticed that they seemed easier to extract than in other TI 99/4A. Then I saw that many pads were brown, as if they had been ripped out. Though the microscope I saw that the pads had not been removed, instead they were clean of solder and oxidized. This was strange, usually desoldered pads and holes are left with excess solder that needs to be removed. I tried to add fresh solder to the pads, but it had trouble sticking.

I used an abrasive fiber glass pen to scratch the pads surface until the copper shinned again, then I added some flux and tinned the pads with fresh solder. Finally I soldered sockets and inserted back the original chips.

Desoldered RAM Chips and oxidized pads.
You may notice that I accidentally desoldered some pins from a white power distribution bar. I soldered then back later.

Microscope view of oxidized pads. I always inspect desoldered jobs on the microscope to look for damage to pads or traces. Even when taking extreme care, it is easy to damage old boards.


Socketed RAM Chips, and removed suspected bad 4116 RAM. Fifth chip from left to right.


I am thinking that some of the video problems could be caused by unreliable soldering. Maybe the board had been left to oxidize before production and some solder pads did not adhere properly. 

Once back at the bench, I turned on the board, and I saw the garbled pattern on the screen, but this time it was static. Maybe the pattern fluctuations were caused by bad soldering. To detect which chips were still bad, I again measured the chip voltages during the initial screen. Only one of the chips was significantly different from the reference voltages. I replaced it with a 4116 from the good board, and the problem was fixed!

Replacing the suspected 4116 fixes the video!

To verify that the chip was really bad, I inserted it in the good board, and, yeah, the problem appeared.

Inserting the suspected RAM chip in a different board shows it really is bad. The pattern is different because the chip is replacing a different bit than in the original board.

Ok, time to order some old 4116 chips because I am running out...




Sunday, February 7, 2021

Sinclair QL

Good looking Sinclair QL.

For a while, the Sinclair QL was a mythical machine, the next big thing bringing 16-bits to the masses! In the early to mid 1980's, young readers like me, were salivating at its specs in computer magazines such as Your Sinclair or Crash. I played with Mega Basic in my ZX Spectrum because it was supposed to be similar to the QL. Anyway, while the QL launched years before the Atari-ST and the Amiga, and 2-weeks before the Apple Macintosh, it ended up being mostly a flop. Still, it gathered a community of users that maintained and expanded it throughout the following decades.

For a while I had been trying to get one. They are rare in the US, where I am, and they are usually quite expensive in online auction sites. I was always outbid. Until one day I saw a listing from Canada. Shipping a QL from Canada to Europe, where most of its fans are located. is probably expensive, so I had reduced competition for the auction and I won it.

Powering Up

My QL did not include a power adapter. I had to find a way to power it. The QL requires ground, 9V DC, and 16V AC. The 9V DC is used as input to various 7805 5V voltage regulators that power most of the chips and the Microdrive (each Microdrive has its own 7805). The 16V AC is used by a 7812 and a 7912 linear voltage regulators to generate +12V and -12V respectively. AC voltage adapters are heavy, and hard to get these days. I always try to avoid using them.

In a first attempt to check for signs of life in the computer, I plugged only 9V DC and ground, ignoring the AC input. I saw some signal in the Monitor but is was quite fuzzy (sorry, I forgot to take pictures). Then I realized that the Motorola MC1377P, that converts the RGB signals from the ULA into composite PAL video, requires +12V to operate, so I really need the other voltages.

I then decided to bypass the AC part of the power circuit, and feed DC voltages directly to the input pin of the 7812 and 7912 regulators (after the diodes that bridge them from the AC signal).
To get all the required DC voltages (9V for the 7805s, +14V for the 7812, and -14V for the 7912), I used a LM2596S 3A DC-DC converter to get 9V from a laptop power supply (16-20v) ~$1 dollar, and  a separate positive/negative  DC-DC converter that I had lying around to generate 14 and -14V. If I did not have this converter, I would have used another LM2596S  for the +14V, and yet another, wired in "reverse" and connected with diodes, to generate -14V. (Or I would have finally bought a pico-psu). 


DC-DC voltage converters that I used to convert a laptop 19V DC power input into the 9V and +/-14V for the QL linear voltage regulators. (The background schematic is unrelated).


View of the wires connecting to the voltage regulators.

Video


To get a video signal I could either use the RF output, or the monitor port. I am nervous about using the monitor port, because the signals connect directly to ULA 8301 without any kind of buffering. Thus it is very easy to accidentally fry the ULA 8301 (this is a common failure). I also don't like to fiddle with the TV trying to sync on an RF channel, so I decided to tap the composite signal directly from the input to the RF modulator using alligator clips. This is often a signal good enough to debug the machine. Later I'll worry about getting a better signal.

First Test

After powering the QL I got the following image:


This is good. The fact that I am getting a video signal means that the ULA 8301 is probably fine.
The mostly white screen means that the CPU is good enough to run the memory test routine (and that the boot ROM is fine too). The bad news is that the memory test does not finish. The vertical stripe suggests a RAM problem. The QL contains 128k of RAM implemented as 2 banks, each containing 8 4164 (64k x 1 bit) DRAMs. The vertical line is consistent with either a broken RAM chip, or, much less likely, a problem with the bus transceiver (74LS245). I checked the voltage of the output pin of each RAM chip, and I got 5V on all chips excepts the chips corresponding to bit-2 in each bank (IC3 and IC11), those measured around 2V. I desoldered the 3 chips and installed sockets. I could have tested one chip at a time, but since I had to warm up the desoldering station anyway, I decided to remove all three in one go.

Board after installing sockets for the bus transceiver (IC21, 74LS245, on top near a ROM), and the 2 RAM chips, IC3 and IC11, (under the bus transceiver).

As expected, the problem was one of the RAM chips. After replacing it, I got to the boot screen.



Keyboard

I tried the keyboard but many keys were not responding, this means that the keyboard membrane was damaged. I inspected it, and I looked for failure patterns that might hint at a broken trace in the pigtails that connect to the mainboard, but I did not see any. Ordinarily I would spend some more time trying to repair the membrane, but since I was about to order a ZX Spectrum plus membrane, I also ordered a new QL membrane to save on shipping costs. I got both membranes from RWAP software.

Next Steps

My QL included a Microdrive cartridge with the Quill Wordprocessor, and it runs. But, I need to find a way to load other software.  I do have some cartridges, a Microdrive, and an Interface one for the ZX Spectrum. But my Interface one seems to have a bad ULA. I'll need a different solution to load software.




Sinclair Spectrum 48k Plus

The Sinclair ZX Spectrum was, by far, the most popular micro in the 80's in Portugal. I got mine early 1984, is was a rubber keys 48k Spectrum, with an issue-2 motherboard. This was the first mass produced board (issue-1 models are very rare), and it has many reliability problems. My Spectrum was repaired many times throughout the 80's, and some circuits no longer follow the issue-2 schematics.   

My 80's issue-2 ZX Spectrum. Some of the repairs were recorded on the heatsink. The power and video circuits might have been rewired to be closer to later board revisions. 

Because of the unknown nature of its repairs, I am very nervous every time I use it. It it fails, it will be very difficult to recreate those circuits.

Given this, I recently acquired a ZX Spectrum Plus with a motherboard issue-3. This is a more reliable release, and I plan it to be the day to day usage machine.

ZX Spectrum plus in good cosmetic condition.


Motherboard issue-3. Relative to issue-2 boards, the voltage regulator and heatsink were moved to the back of the board, the power circuit is different, as is the video circuit that no longer has trimmers.
 
Inspecting the motherboard, I see that most ICs have date codes from 1984, yet the ULA is more recent, from mid 1986. I suspect that the board is from late 1984 and that the ULA was replaced at some point. This revision of the ULA usually shipped with issue 4 or later motherboards. The bottom case still contains an old sticker with the date 10/86. I think that was left by the technician that repaired it and replaced the ULA back in 1986. 

After verifying that there are no short circuits with the multimeter in continuity mode. I turned it on. And this is what I see (watch the video too...).


This does not look like a healthy ZX Spectrum!

It is obviously broken. The seller mentioned that the screen was a "little fuzzy"...What an understatement!

I touched all the ICs looking for overheating, a sign of an internal short circuit, and found none. Then I measured voltages at various points in the board. The 5v rail measured at the output pin of the 7805 regulator and at several ICs (ROM, 74 logic, etc) seems fine. However, there are no -5v or +12v voltages at the lower 16k RAM.

The symptoms visible in the video are consistent with lack of -5v and +12v. +12v is used by the composite video encoder (LM1889), leading to bad video signal. Both -5v and 12v are used by the lower 16k 4116 ram that contains the video buffer. They should not run for long like this: lack of these voltages is likely to damage the 4116 RAM chips.

Schematic of the circuit that generates +-12V and -5V from the regulated 5V rail.


I suspect transistors TR5 (ZTX213or TR4 (ZTX650). They are used in the circuit that generates +- 12v, and -5v from the regulated 5v, and they are known to fail. So I ordered modern equivalent replacements, ZTX651 for TR4, and ZTX751 for TR5. Check this list for equivalents


View of original TR4 and TR5 near the keyboard connector.

After removing TR4 and TR5.

View of replaced TR4 and TR5.

After replacing both transistors the computer boots. Yet, as you can see in the video below, the boot sequence seems too quick. This suggests upper ram issues, it is probably working as a 16k Spectrum.



For more complete diagnostics, I plugged in my home assembled ZX Dandanator with the Alford's diagnostics rom. (Press SW1 on the Dandanator while booting to run the diagnostics rom). 

ZX Spectrum ready to power up, with a ZX Dandanator in the expansion connector. You can see that, for now, I am getting composite video from the modulator input using alligator clips.

The diagnostics confirm ram errors in the upper 32k, identifying IC21 as possibly faulty. This is a 32k x 1bit TMS4532 ram chip and it is responsible for bit 6.

Diagnostics screen showing failed upper ram tests.

So, I warmed up the desoldering station and removed IC21, then I replaced it with a socketed 64k x 1bit  4164 ram chip. This is a suitable replacement since the original TMS4532 chips are actually 4164  that failed validation in only one of the upper or lower 32k halves. Reusing slightly damaged components was one of the cost saving techniques used by Sinclair.


Clean desoldering job. No traces or pads damaged.
Nice, clean desoldering job, no traces or pads damaged. If you don't have a desoldering gun, the safest approach is to cut all legs of the IC and remove them one by one.

View of boad with replaced C21 ram chip.
View of board with newly installed socket, populated with a replacement 4164 chip.

After replacing the bad ram, diagnostic run fine. 

Diagnostic tests pass now.

Now that the Spectrum is running, it is time to install a permanent composite video mod. I always start by trying the capacitor mod. It is very simple and usually works quite well with most modern TVs and old computers (not with the Timex Sinclair 1500, that is a story for another day).

 

View of the modulator before the composite mod. The two connections to the modulator, video and +5v, must be desoldered (or cut). 

Composite mod.  The resistor that connects to the video out connector is disconnected. A 100uF capacitor is added, and its negative lead connects to the center of the video out connector in place of the resistor. The positive lead of the capacitor connects to the composite video signal pad on the board.

And voila. The jailbars interference pattern is much reduced compared to the alligator clip hack.

Once the computer was running, I reassembled and tested the keyboard. As described by the seller, the keyboard membrane was damaged. In the past, I had some success fixing ZX-81 and rubber keys ZX Spectrums membranes using copper tape with conducting adhesive. Not this time, I was able to fix some keys, but not all, the membrane is too complex, with at least 5 plastic layers strongly glued together. New membranes for the ZX Spectrum+ and ZX Spectrum 128 are hard to make because of the complex many-layer construction that can cause capacitive noise. I ordered mine from RWAP software that makes excellent membranes and sells old stock retro parts at sellmyretro.com.


Old membrane after some failed fixing attempts.


While waiting for the new membrane to arrive from Europe, I decided to add reverse polarity protection to the Spectrum power input. Sinclair used inconsistent polarity in their computers, it is center positive for the ZX-81, but negative for the ZX Spectrum, Timex was just as inconsistent in the TS-1000 and TS-2068. Because of this, I had accidents that one time resulted in the destruction of the ULA in my old TS-1000 (Timex rebranded ZX-81) and another time completely fried a TS-2068.

Cut power track from the power plug. Remember that socket polarity is center negative. I double checked it was the correct track by measuring continuity to the 7805 voltage regulator input pin. After cutting I verified lack of continuity between the regulator and power plug. 

Diode protecting against reverse polarity.

My modification is very simple: I just cut the positive trace to the power plug, and bridge it with a power diode. This simple modification has saved my old precious rubber keys ZX Spectrum at least once.