Atari 800XL Controller Port Repair

The Atari 800XL has two 9-pin controller ports, J5 and J6.[1] Each joystick direction goes to a pin of the PIA (U23), each fire button to a trigger input of the GTIA (U17), and each pair of paddle controls to two of POKEY's pot inputs (U22). Every line reaches the chip through a small series resistor and a 10 µH inductor, with a capacitor to ground, and the ports' +5 V comes through a filter as well.[1] Sams' service data gives BASIC test programs and a chart of the chip pin for every function, and Atari's checklist names the filter parts to check for each kind of failure.[2][1]
Symptoms
[edit | edit source]- A joystick direction, or all directions, do nothing in one port. Sams points at the PIA (U23).[2]
- The fire button does nothing. Sams points at the GTIA (U17).[2]
- A paddle control or a paddle button does nothing. Sams points at POKEY (U22) for the control and the PIA for the button.[2]
- No +5 V at a port, so powered controllers do not work.[1]
Try a second, known-good controller in both ports first: a worn controller gives the same symptoms.
Safety
[edit | edit source]The ports carry the computer's +5 V on pin 7.[1] Do not short pin 7 to pin 8 while probing.
Tools and parts
[edit | edit source]- A known-good joystick and a pair of paddles.
- A meter, a logic probe and an oscilloscope.[2]
- Replacement parts as found: 220 Ω resistors, 10 µH inductors, 0.001 µF capacitors, the PIA (6520, Atari C014795), the GTIA (C014805) or POKEY (C012294), and the 9-pin ports (C010448 in Atari's parts list).[1]
| Pin | Signal | Pin | Signal |
|---|---|---|---|
| 1 | Joystick forward | 6 | Trigger (fire button) |
| 2 | Joystick back | 7 | +5 V |
| 3 | Joystick left | 8 | Ground |
| 4 | Joystick right | 9 | A potentiometer |
| 5 | B potentiometer |
Procedure
[edit | edit source]Test the joysticks from BASIC
[edit | edit source]Plug a joystick into the port under test and run Sams' program:[2]
10 PRINT ,"JOYSTICK","BUTTON" 20 FOR P=0 TO 1 30 PRINT "PORT";P+1,STICK(P),STRIG(P) 40 NEXT P 50 FOR T=1 TO 200:NEXT T 60 GOTO 10

- With the stick centred, STICK shows 15 and STRIG 1.[2]
- Push the stick up, down, left and right. Atari's BASIC manual gives 14, 13, 11 and 7, and 10, 6, 9 and 5 for the diagonals.[3] Sams prints the value for right as 17; Atari's manual gives 7.[2][3]
- Press the button: STRIG should change from 1 to 0.[2]
- Note which port and which function fail.
Check the supply at the port
[edit | edit source]- With the computer on, measure from pin 7 to pin 8 of each port: +5 V.[1]
- If it is missing, check the filter L25 and the ports themselves; Atari's instruction is to inspect J5 and J6 for damaged pins and replace them as necessary.[1] On the schematic the ports' +5 V comes from +5A through L12, with C98 (10 µF) across it.[1]
Trace a failed direction or button
[edit | edit source]| Function | Port 1 | Port 2 |
|---|---|---|
| Up | U23 pin 2 | U23 pin 6 |
| Down | U23 pin 3 | U23 pin 7 |
| Left | U23 pin 4 | U23 pin 8 |
| Right | U23 pin 5 | U23 pin 9 |
| Button | U17 pin 8 | U17 pin 9 |
- Put the logic probe on the chip pin for the failed function and work the joystick. The reading should go from high to low each time.[2]
- If the reading changes correctly, the chip is not seeing it: suspect U17 for a button and U23 for a direction.[2]
- If the reading does not change, check the parts connected to that pin and the connections at J5 or J6.[2] On Atari's schematic each direction line has a 220 Ω resistor (R120-R127) and a 10 µH inductor, with a 0.001 µF capacitor to ground, and each trigger line a 220 Ω resistor (R132, R133) and a 10 µH inductor (L23, L30) with C96 and C97.[1] For a failed PIA line Atari's checklist lists U23, C26-C29, C82-C92 and L19-L22; for a failed trigger line U17, L23, L30, C96 and C97.[1]
- With the power off, measure each part in the failed line: the series resistor and inductor for continuity and the capacitor for a short to ground.
Trace a failed paddle
[edit | edit source]Run Sams' paddle program with the paddles in the port under test:[2]
10 PRINT ,"PADDLE","BUTTON" 20 FOR P=0 TO 3 30 PRINT "PADDLE";P,PADDLE(P),PTRIG(P) 40 NEXT P 50 FOR T=1 TO 200:NEXT T 60 PRINT :GOTO 10
- The PADDLE value should vary from 228 to 1 as the paddle is turned from minimum to maximum, and PTRIG should change from 1 to 0 when the button is pressed.[2]
- For a failed paddle control, look at its POKEY pin from the table below with the oscilloscope. The waveform should change from a sawtooth to a pulse as the paddle is turned. If it is missing, check the port connector, the paddle itself and then U22 by substitution.[2]
- For a failed paddle button, put the logic probe on its PIA pin: it should go from high to low when the button is pressed. If it does not, check the button and the port connector; if it does, check U23 by substitution.[2]
- For pot-line faults Atari's checklist lists U22, L15-L18, C71-C74 and C63-C66. On the schematic the pot lines run through 1.8 kΩ resistors R76-R79, with 0.047 µF capacitors C63-C66 at POKEY.[1]
| Port | Paddle | Control: U22 pin | Button: U23 pin |
|---|---|---|---|
| 1 | 0 | 14 | 4 |
| 1 | 1 | 15 | 5 |
| 2 | 2 | 12 | 8 |
| 2 | 3 | 13 | 9 |
Opening the machine
[edit | edit source]- Remove the six screws from the bottom cover, tip the top cover up from the left and disconnect the keyboard ground strap and the keyboard cable.[1]
- Remove the four board screws and lift the front of the board while pushing out the right side of the bottom housing until the controller ports clear it.[1] The shield is held together by ten screws.[2]
Testing
[edit | edit source]Run both BASIC programs again with known-good controllers in each port and check every direction, button and paddle.[2]
Related pages
[edit | edit source]- Atari 800XL
- Atari 800XL Troubleshooting Guide
- Atari 800XL Keyboard Repair
- Sams Computerfacts Atari 800XL
- Atari 800XL Computer Field Service Manual
References
[edit | edit source]- ↑ 1.00 1.01 1.02 1.03 1.04 1.05 1.06 1.07 1.08 1.09 1.10 1.11 1.12 1.13 1.14 Atari, Inc., 800XL Computer Field Service Manual, FD100740 Rev. 01, February 1984: controller jack interfaces and figure 1-10 p. 1-13, symptom checklist p. 3-3 (I/O port test failures: voltages at P1 and P2, PIA ports, trigger lines, pot lines), disassembly p. 4-1, schematic (PIA, GTIA and POKEY port lines, R76-R79, R120-R127, R132, R133, L12, L23, L25, L30, C63-C66, C96-C98, J5, J6), parts list pp. 5-3 to 5-6. Hosted here as File:Atari 800XL Computer Field Service Manual FD100740 Rev 01.pdf.
- ↑ 2.00 2.01 2.02 2.03 2.04 2.05 2.06 2.07 2.08 2.09 2.10 2.11 2.12 2.13 2.14 2.15 2.16 2.17 2.18 2.19 Howard W. Sams & Co., Sams Computerfacts CC11, Atari Model 800XL (July 1985): troubleshooting pp. 7-8 ("Paddles" and "Joystick Port", with the BASIC programs, the pin charts and figures 2 and 3), preliminary service checks ("Joysticks", "Paddles"), disassembly p. 26. Hosted here as Sams Computerfacts Atari 800XL.
- ↑ 3.0 3.1 Atari, Inc., Atari BASIC Reference Manual, section 10, "Sounds and Game Controllers", p. 60, figure 10-3 "Joystick Controller Movement". Internet Archive.