Radio Shack's TRS-80 Microcomputer [Troubleshooting Microprocessors & Digital Logic (1980)]

Home | Audio Magazine | Stereo Review magazine | Good Sound | Troubleshooting



In this section we will take a look at Radio Shack's very popular TRS-80 microcomputer system. Some brief system operation in formation will be given to familiarize you with this system. Troubleshooting information and tips will be given for the RAM, ROM, CPU, video divider chain, system clock, power supply, address lines, keyboard and video processing systems. Also included in this section are the complete schematic diagrams for the TRS-80 and some section isolation troubleshooting flow charts.

In this first section we will take a brief look at the basic operation of the Radio Shack model TRS-80 microcomputer. Some basic theory of operation along with block diagrams will be covered.

Some troubleshooting tips and system flowcharts will also be given.

Also, unit disassembly and power supply checks will be discussed.

The Radio Shack TRS-80 microcomputer system is shown in Fig. 9-1.

TRS-80 SYSTEM BLOCK DIAGRAM

You will find the integrated circuits contained in the TRS-80 can be broken down into 10 major sections. The system block diagram in Fig. 9-2 shows these units as they are related to other sections. The heart of the system is the CPU (central processing unit). Most of the leads on the CPU are data lines and address lines.

The CPU tells the address bus where the data it wants is located, and the data bus is a good place for the information to come back to the CPU. The address lines are outputs from the CPU. They never receive data or addresses from other sections. The data lines, on the other hand, can give or receive data.

Fig. 9-1. The Radio Shack TRS-80 microcomputer.

Fig. 9-2. Block diagram of the TRS-80 microcomputer.

ROM Operation

If the CPU has to be the heart of the system, the ROM (read-only memory) could very well be considered the brain. The ROM tells the CPU what to do, how to do it and where to put the data after each operation. Without the ROM, the CPU would just function or run as a pulse generator. When power is first applied to the system, the CPU outputs an address to the ROM that locates the first instruction of the CPU. The ROM fires back the first instruction and then the two start communicating. In less than a second, the CPU, under ROM control, performs all the housekeeping required to start up the system. It then flashes a READY on the screen.

If the CPU misses that first piece of ROM data, it may become unglued. It may tell the ROM that it is ready to load a tape so the ROM tells it how to do that. The tape recorder turns on. But since the CPU is now playing games in the video memory, the tape is not needed. Because the CPU operates at about 2 MHz, these digital foul-ups seem instantaneous.

You can just think of the CPU as the work horse and the ROM as the boss. The ROM tells the CPU how to do it, when to do it and where it was placed.

RAM Operation The next major section in Fig. 9-3 is the RAM (Random Access Memory). This memory is where the CPU can file data it may not need until later. The RAM is also the place where the programs are kept. If you tell the computer to count to 7500, the CPU stores your instructions in the RAM. The CPU tells the ROM someone wants in. The ROM tells the CPU to go to the keyboard and find out who. The CPU finds out, tells the ROM it's the number one chief. The ROM tells the CPU to find out what the chief wants. The CPU tells the ROM that the chief wants us to RUN. The ROM tells the CPU to go to RAM and find out what the chief wants done. The CPU says the chief wants to count to 7500. The ROM tells the CPU how to do it. After it's done, the ROM tells the CPU to find out what to do with it. The CPU informs the ROM that the 7500 count must go on the video display and be saved. The ROM tells the CPU how to put it on the display and then tells it to store the 7500 somewhere in RAM and then remember where it is. The CPU tells the ROM that the job is completed. The ROM tells the CPU to monitor the keyboard in case the chief wants a program run.

The CPU looks to the ROM for instructions. The CPU then follows the instructions from ROM and looks to the keyboard, then the RAM. In all cases, the CPU applies address locations to the ROM, RAM and keyboard. The data lines are then checked for input data that correspond to these address locations. In case of an output from the CPU to RAM, the CPU selects the address, puts data on the data lines and then instructs the RAM to store the data that is on the data lines.

Make a note that the CPU only communicates with all other sections of the computer. If it is told by ROM to store an item from ROM into RAM, the CPU can't make the RAM receive ROM data directly. Instead, the CPU takes the data from ROM and then sends it to RAM. The CPU must act as an intermediary. The reason for this is that the CPU is the only section that can address locations and pass data to all other sections.

Keyboard and Video Processing

The keyboard section is not necessary as far as the CPU is concerned, but it is very necessary for data to be fed in by the operator. The keyboard is used for making known your instructions to the CPU. The opposite is true for the video RAM. In this case, the CPU wants to tell us it needs data or it may want to show us the result of a complex calculation. So the request for more information or the result is stuffed into the video RAM. Anything in video RAM is automatically displayed on the terminal. The video processing section handles this. Data in the video RAM is in ASCII. Converting ASCII into the alphanumeric symbols we recognize is the job of the video processor. A ROM contains all of the dot patterns. The ASCII locates the character pattern, and the video processor sends it out to the terminal.

Fig. 9-3. TRS-80 schematic (first part).

Video Divider Chain

Composite video going on to a video terminal is extremely complex. Aside from the video signal, there is the horizontal and vertical sync. These signals must be very stable and be outputted in the correct sequence. The CPU is very busy, so the video divider chain handles the TV signal to the monitor. It generates the sync signals and addresses the video RAM in a logical order so that the video processor can handle video data efficiently.

Note the block under the video RAM labeled MUX. This is short for multiplexer. It acts somewhat like a multipole, multi-position switch. When the video divider chain is in control, the MUX is switched so that only addresses from the divider chain are directed to the video RAM. The CPU may need to read or write data into the video RAM. If so, the MUX is switched so that the CPU has control over the address of the video RAM. After the CPU is finished, the addressing task is reassigned to the divider chain.

System Clock The system clock circuit is shown in Fig. 9-4. Y1 is a fundamental-cut 10.6445-MHz crystal. It is a series resonant circuit consisting of two inverters. Z42, pins 1 and 2, and 3 and 4, form two inverting amplifiers. Feedback between the inverters is supplied by C43, a 47-pF capacitor. R46 and R52 force the inverters used in the oscillator to operate in their linear region.

The waveform at pin 5 of Z42 will resemble a sine wave at 10.6445 MHz. The oscillator should not be measured at this point, however, because of the loading effects that test equipment would have at this node. Z42, pin 6, is the output of the oscillator buffer.

Clock measurements may be made at this point. The output of the buffer is applied to three main sections: the CPU timing circuit, the video chain and the video processing circuit.

Power Supply System The TRS-80 requires three voltage-supply levels: A +12 volts at 350 milliamps, +5 volts at about 1.2 amps and a - 5 volts at 1 milliamp.

The +12 and - 5 volts are needed by the RAM. All other devices require +5 volts. The +12 and +5 volt supplies are regulated and current-protected against shorts. The -5 volts supply is not as critical as the other two supplies, and it uses a single zener diode for regulation. The stepped-down AC voltage is supplied by an AC adaptor. The adaptor has a transformer with one primary and two secondary windings.

The secondary windings are both center-tapped. One is rated at 14 volts AC at 1 amp. This winding is used for the +5 and - 5 volt supplies. The other winding has diodes connected, and it outputs 19.8 VDC at about 350 milliamps. This circuit is used for the 12-volt supply. All voltage outputs and center taps are brought into the power input jack.

The +12 Volt Power Supply. Unregulated DV voltage for the +12 volt supply is inputted at pin 2 of the power jack. When the POWER switch is closed, the output voltage is about 21/ohs because of action of the filter capacitor. This voltage is then - rid to a transistor and regulator Z2. Figure 9-5 shows a simplified diagram of the internal circuitry for the 723 regulator chip.

Power Supply Checks for the TRS-80. Most problems that result in loss of power-supply voltage will be associated with solder shorts, component shorts or defective power supply adaptors. Usually, the power supply will not be damaged by a short because the regulators use current-limiting with foldback. A solder short or shorted component does not have to be in the power section to cause a supply problem. The short can be anywhere.

Should you be missing +12 volts and +5 volts, measure the voltage across R18. This resistor monitors the current flow from the +12 volt supply. If the voltage reads about 0.6 volts, the +12 volt bus is in foldback and has shut itself off. Since the +12 volt bus is shutoff, you will not have +5 volts because the +5 volt regulator is referenced to the +12 volt output. You must now locate and remove the short on the +12 volt bus before anything will work.

If the - 5 volt supply is not present, first confirm that there is ample negative voltage on the adaptor side of R19. See if R19 is dropping all of the voltage. If so, you have a - 5 volt bus short.

The +12 volt and the - 5 volt supplies are used by the system RAM. If you have problems with either of these two, suspect a RAM short. See if you can find a RAM that generates more heat than the others. Use a temperature probe for this check.

Pull all RAMS and retest. If all of the power supplies are now good, turn off the power and re-install one RAM. Turn on the power and retest. Install each RAM until you find one that loads down the power supply. Remove the faulty RAM and continue to check out the other ICs. There may be more than one shorted device.

A short on the +5 volt bus can be a really tough one to find.

Unless you can see the short, you will have to cut PC runs to isolate a section. Once a section is isolated, you will probably have to make other cuts to find the short. And remember to repair the cuts.

These runs carry considerable current, so use solid 22 gauge wire to repair the cuts. If you find a dead +12 volt bus, check the heat sink of transistor Ql. The hardware holding the heat sink may become loose and shorted the leads of Ql.

Table 9-1 lists the voltages found around Z1 and Z2 for a normal operating unit. These measurements were taken when the +12 volt supply was adjusted for 12 volts and the - 5 volt supply was adjusted to 5 volts.

ISOLATION OF A DEFECTIVE COMPUTER SECTION

One of the toughest problems to section-isolate is a screen full of junk at power on. This is a display with all character positions filled with either alpha-numeric or graphics. Also, a garbage condition does not always indicate that the power-up logic is defective. A problem could exist in RAM, ROM, the video divider chain and of course the CPU itself. Thus, a fault could exist in 75 percent of the computer system.

Fig. 9-4. TRS-80 schematic (second part).

Fig. 9-5. Block diagram of the 723 regulator Z2.

You could start by replacing all of the RAMs, ROMs and the CPU but this would be a waste of time. If the problem was a cold solder connection or a short, replacing all plug-in devices would not solve the problem. The section-isolation technique will probably yield much more positive results. This is based on a removal technique that eliminates sections from the suspect list.

Section Isolation Flowchart

Referring to Fig. 9-6, you will find a flow chart of section isolation by part removal. Start this process in the parallelogram, block 1, which gives the basic problem. Block 2 instructs you to disassemble the unit and reconnect the video and power inputs.

Block 3 is a decision block. Do you have garbage on the screen now? If so, you continue to block 5. If not block 4 tells you to suspect a shorting interconnect cable between the keyboard and the CPU board. You could also have loosened a solder ball during disassembly, and the short is now gone. Examine the interconnect cable carefully for shorting conductors. Also, note any loose solder or wire bits on the board. You may have solved the computer problem just by taking it apart, so run another test.

At block 5, you will turn off power to the unit, wait about ten seconds and then switch the power back on. The delay gives the initialization logic time to reset. If there is now a READY on the screen at block 6, you may have a problem around S2 or C42, as block 7 instructs.

In block 8, you are instructed to remove the DIP shunt (X71) at Z71. Refer to the diagrams in Figs. 9-3 and 9-4. With X71 removed, the RAMs are not electronically in the system. When power is applied, the ROM and the CPU are in communication, but there is no data flow to or from RAM. The screen should show a pattern of 16 character lines of 32 colons. If the CPU shows large colons, you could have RAM or keyboard-type problems. Blocks 11 through 15 will help in isolating that type of problem. As blocks 12 and 14 imply, there are two colon displays. One display is stable. The other is blinking and flickering as the CPU constantly interrupts video addressing. Depending on the status of the keyboard, you could have data line or keyboard problems.

The next step at block 16 is to remove the ROMs. The CPU is now locked up without instruction from ROM. The pattern to look for is a screen full of@ 9s. The display should be in 64-character format at this time. The display will continually flicker.

If you get 9s on the screen, you probably have a ROM error.

If no e 9s or partical @ 9s are visible, you could have video chain or video RAM problems. If you still get garbage, maybe the PUC is dead or something is making the CPU not function.

Table 9-1. Power Supply Voltages for Z1 and Z2. All voltages are measured with a digital voltmeter. Voltages are referenced to ground at the right side of capacitor C9.

As we see, the part removal isolation technique uses a lot of maybe's, question marks and could be's. The what ifs are trying to tell us what section could be at fault. You could have ROM problems and yet get large colons. You could get @ 9s and still have CPU error. But this technique is better than nothing, and the process does give you a starting point.

SIGNAL CONDITION

Normal troubleshooting techniques call for an output-to-input sweep of the bad signal line. Hence, once a bad signal is found, the circuit is traced backward until the signal is correct. The failed device will be located between the good input and bad output.

Activity is defined as any logic transition from high to low or vice versa. For example, the output of oscillator buffer Z42, pin 6, always has activity. There is a constant output pulse train at this pin.

The signal swings from almost ground to over 3 volts continually.

Steady State is defined as a logic 1 or logic 0. For example, Z40 pin 16, has a steady state logic 1. It is held high by resistor R50. Another example is the logic 0 at pins 6 and 7 of Z56, the CPU clock divider. Z42, pin 8, is always low unless resistor R67 is grounded.

Floating is defined as a signal level between the steady state of a logic 0 and a logic 1. The CPU, the ROMs, the RAMS and the data and address buffers are .all tri-stable devices. When tri-state devices are disabled or unselected, the output may show a floating condition. In a floating condition, the output will show system noise flickering through it. The average level of the noise will attain a voltage of 1.5 volts or so. TTL devices define a logic 0 to be equal to, or less than, 0.8 volts. A logic 1 has a voltage equal to, or more than 2.4 volts. Any voltage between these two levels will be considered floating.

Fig. 9-6. Section isolation flowchart.

CPU PROBLEMS

A problem with the CPU does not mean that Z40 is inoperative.

It could indicate you have trouble with the address and data buffers, the control groups, CAS/RAS timing, or with one of the support devices of the CPU. If you suspect a problem with these devices, try substituting a known good CPU for Z40 as a quick check. The flowchart, shown in Fig. 9-7 will help you for CPU troubleshooting.

The primary objective of this chart is to help you quickly find a signal that should be active but is not. The main flow of the chart is on the left side of the blocks. Here, you are checking for activity on address and data lines. With no activity on the address lines, you are immediately branched off to the support group of the CPU to find out why. Pay particular attention to the appearance of address line outputs. Any tri-state looking signal could mean a potential short between address lines. The opposite is true of data lines. These signals may be active and have floating components between active states. Hence, data line shorts are extremely difficult to find, by using an oscilloscope.

ADDRESSING PROBLEMS

Addressing problems are usually associated with open or shorted address lines going to the ROM sockets. Early versions of the boards may have jumper modifications on the solder side that may have broken loose. There is also the chance that vibration has jarred a ROM partially out of its socket. The address lines should be checked at the chip. Normally, there will be activity on all lines.

There are two types of data problems. The first one is the non-repairable bit error internal to the ROM. The checks contained in the SCQATS program can readily verify this. SCQATS is a special machine language test and debugging tape available from Radio Shack for the TRS-80. If the ROM problem is too severe for SCQATS loading, a replacement test may be required. The second type of data problem is the short or open on the data output. If you remove DIP shunt Z3, the ROMs will tri-state and you can check for a floating state on the data pins.

RAM PROBLEMS

RAM problems are slightly more difficult to troubleshoot be cause of multiplexing of the address inputs. Aside from an ad dressing difference, the RAMs are checked like the ROMS. If you have a RAM problem and the system will not load SCQATS, you can replace the eight RAMs with a known good set. If this clears the faults, start replacing your standard RAMs with the ones you took out, one by one. Power up after each exchange to see if you still have a READY. Continue this process until you have isolated the defective RAMs.

ADDRESS DECODER TIPS

A problem in the address decoder section will probably point you in the memory direction. For example, if the ROM is never addressed with ROM, you would think you have ROM problems.

Thus, if you suspect one of the memory locations, keep in mind that the address decoder sources the memory selects. The select inputs to the different memories should be the very first thing to check out.

Since the address decoder is made up of gates, it should be easy to repair once you locate the fault. The hard part is knowing when to suspect a fault with the decoder section. Section isolation demands that the address decoder be functional, or at least partially. Unfortunately, there is no cut and dry way to determine if this section is operating correctly. Of course, you can monitor each output to see if it's responding, but you really cannot be sure the signal is supposed to be there when it is.

Fig. 9-7. CPU flowchart.

KEYBOARD INFORMATION

Difficulty with the keyboard is usually mechanical. Sticking keycaps, bouncy keys and broken interconnect cables are common.

Shorts in the keyboard matrix are usually easy to detect. If you find an alphanumeric character displayed right after the >, that particular key or PCB run may be shorted. A completely dead keyboard could be caused by lack of power, a broken interconnect cable. Also, the address decoder is not feeding a signal to the keyboard.

THE VIDEO DIVIDER CHAIN

Problems in the video divider chain will usually be associated with the stability of the display. Loss of vertical or horizontal reference frequencies can sometimes be traced back to defective counters on bad reset gates. Because the master clock/oscillator of the system is included in this section, inactive (dead) system troubleshooting can end up here.

Since most of the reference and timing signals for the video processor are generated in the divider chain, most-but not all- display difficulties can be isolated to this section. This is especially true of vertical roll or horizontal tear of the display. If the horizontal or vertical reference frequency is not getting to the sync processors, the problem definitely is a divider chain foul-up.

THE VIDEO RAM

If you suspect video RAM problems, you should try a SCQATS tape test loading. SCQATS will be most helpful in rooting out bit error in the RAMs. If the test generates large amounts of bit errors, you should suspect either the divider chain or the video RAM addressing multiplexer.

Normally, addressing errors occur when there is a short or open between the multiplexer and the RAMs. Signal activity on the address inputs of the RAMs can be easily checked with an oscilloscope. All address lines (V0 through V9) should be active in 64 character format. There will not normally be any floating conditions on these inputs. The logic input to the video RAM will only be active during a CPU data transfer. Normally, it should be high.

VIDEO PROCESSING PROBLEMS

Problems in the video processing section can range anywhere from a blank screen to missing dots. Usually, the fault is easily found because this section is a serial type. For example, if you have graphics problems, you know there are only two chips that are used as graphics handling devices. You should then look around shift register Z11 and graphics generator Z8. The parts that are strictly alphanumeric are character generator Z29 and its shift register Z10.

Defective devices that can affect both alphanumeric and graphics are Z26, Z27, Z30 and the video mixing circuits, consisting of Q1 and Q2.

SYNC GENERATOR SERVICE POINTS

The sync generator section is one of the easiest circuits to troubleshoot. If the timing reference is getting to Z6 and Z57, it is a simple process to find the point where you have lost the signal. A problem can occur with the adjust pots, R20 or R21. Severe heat buildups may cause these parts to fail. Capacitors C20 and C26 are usually dependable unless they are physically damaged. You may find C21 or C27 shorted. These capacitors are mylar and are very susceptible to shorting out under impact stress.

An important point about this circuit is that Z6 and Z57 are CMOS devices. Unlike TTL, they are high-impedance devices that consume little current. A floating condition on a CMOS input will not necessarily give a floating display on an oscilloscope. A floating condition may look high or low depending on the charge of the broken line tied to the input point. Even the resistance of your finger across a broken run can complete the circuit and cause a CMOS device to operate. When you remove your finger from the run or pin, circuit operation may fade away very slowly as the PC board run discharges.

-------------------



Prev. | Next | Index | Home
This page was last updated: Friday, 2007-07-20 17:18,Wednesday, 2023-12-20 11:37 PST