stepleton
Veteran Member
Hi folks! I have five days (full of regular job) to repair a just-failed Tektronix 4006-1 vector graphics terminal before next weekend's Retro Computer Festival at the Centre for Computing History in Cambridge. Far enough off that we can try to fix it but soon enough for it to be stressful!
I haven't taken time to come up with theories yet --- I thought I'd write all the symptoms here first so that anyone who wants to help would have the maximum amount of time to join me in hypothesising. As soon as I finish writing this I'll... go to bed to be honest. But I will probably fall asleep reading the maintenance manual.
First, before I begin, voltages seem fine. With and without a load, all regulated voltages are within a few millivolts of their values. Display clearing (via the PAGE key and also by remote command) work fine. Incoming characters appear to be received and interpreted correctly: the terminal will enter and leave graphics mode on command, and even though only "squished" versions of text characters are shown on the display, these are the right height for the character the terminal is receiving (so _ yields . instead of | if you see what I mean).
I believe the problem may be a logic problem, but I'm not certain yet why the following symptoms emerge:
SYMPTOMS
The table below attempts to show what the remote computer receives when different keys are pressed. Each character sequence associated with a key repeats at a rapid rate whenever the key is pressed: there is no classic "typematic" delay before repeating begins and repetition is frequent. So, pressing the G key yields a sequence of "WS/WS/WS/WS/W" etc. while T yields "DDDDDDDD" and so on.
Using SHIFT with any key does not affect the behaviour. With CTRL:
The key behaviour shown was observed at 4800 BPS. For other rates:
Tektronix 4006-1 service manual from 1977 --- with full schematics and short descriptions of system operation
Thanks for anyone's bright ideas! This terminal is meant to show dozens of cool vector images at the show; it would be a shame if it weren't working!
I haven't taken time to come up with theories yet --- I thought I'd write all the symptoms here first so that anyone who wants to help would have the maximum amount of time to join me in hypothesising. As soon as I finish writing this I'll... go to bed to be honest. But I will probably fall asleep reading the maintenance manual.
First, before I begin, voltages seem fine. With and without a load, all regulated voltages are within a few millivolts of their values. Display clearing (via the PAGE key and also by remote command) work fine. Incoming characters appear to be received and interpreted correctly: the terminal will enter and leave graphics mode on command, and even though only "squished" versions of text characters are shown on the display, these are the right height for the character the terminal is receiving (so _ yields . instead of | if you see what I mean).
I believe the problem may be a logic problem, but I'm not certain yet why the following symptoms emerge:
SYMPTOMS
- Display is shifted far to the right, well outside of the usual display area. Text glyphs and the cursor are compressed into single "columns"; adjacent glyphs are smooshed next to each other. See this photo of what should ordinarily be a screen full of text. Graphics are similarly shunted over to the far right side of the screen.
- Strange keyboard (although it could be downstream of keyboard) behaviour: whenever a key is depressed, the terminal emits a stream of characters that are only sometimes related to the key. See mapping below. This effect varies depending on baud rate.
The table below attempts to show what the remote computer receives when different keys are pressed. Each character sequence associated with a key repeats at a rapid rate whenever the key is pressed: there is no classic "typematic" delay before repeating begins and repetition is frequent. So, pressing the G key yields a sequence of "WS/WS/WS/WS/W" etc. while T yields "DDDDDDDD" and so on.
Code:
Abbreviations for keys with long names:
AM = ALT MODE PP = PAGE LF = LINE FEED SP = space bar
RR = RETURN RO = RUB OUT CC = COPY BB = BREAK
Mapping:
1: ?! 2: " 3: #? 4: $ 5: %# 6: & 7: '#? 8: ( 9: )' 0: space :: * -: =; PP: (works)
AM: mk Q: A_ W: GC_ E: US R: B T: D Y: IG U: CE I: YW O: _[W P: @ LF: (note) RR: nothing?
A: Q/ S: C_ D: T F: V G: WS/ H: X J: Z K: YW[ L: \ ;: '+) RO: omkgO/ CC,BB: nothing?
Z: J X: H C: /S V: F B: R N: ^ M: [] ,: < .: > /: 7?=;
SP: 0
(note): LINE FEED sends an unprintable character
Using SHIFT with any key does not affect the behaviour. With CTRL:
- These keys do the same as above: number keys, LF , . /
- Y makes tabs
- J makes a nonprintable character
- RUB OUT produces a stream of omkg/ (note that O is missing from before)
- Z gives line feeds
- X is a backspace
The key behaviour shown was observed at 4800 BPS. For other rates:
- 2400, 300, 150, 110: no characters reach the host
- 1200: like 4800 BPS
- 600: slightly different characters received, usually just one repeated instead of short repeated sequences
- 75: like 600 BPS, though some incoming characters may be dropped
Tektronix 4006-1 service manual from 1977 --- with full schematics and short descriptions of system operation
Thanks for anyone's bright ideas! This terminal is meant to show dozens of cool vector images at the show; it would be a shame if it weren't working!