I don't own a Source but repaired one. The main issue was the Incremental Controller would only count up. Secondary issues were segments out in the Incremental Controller display, ground loop noise, and intermittent jacks.
The Source has fair access for repair. You have to remove the keyboard to access the PCBs but you cannot lift the top cover very far up. The keyboard can sit next to the Source and still plug in. This photo shows the digital PCB on the left and the analog PCB on the right. I was very careful with the three flex cables that connect the membrane keyboard and also the film work which is exposed on the encoder. Both are quite fragile.
There are a lot of tin sockets and tin connectors so I cleaned every one.
The ground loop hum was worse when the Source was turned off. I traced that to the volume control in the upper left. It connects to the analog PCB on the far right. The volume control is a variable 5K resistor which is the feedback resistor between pins 1 and 2 in the partial schematic below. The low impedance output pin 1 is connected to the shield of the cable but when the power is off this entire shield is just floating. I added a 2K resistor between pin 1 and ground to minimize the ground loop hum when turned off. The output sits at +5V but the power dissipation in the 2K resistor is low. Replacing the jacks and making sure they were well grounded to the panel helped the remainder of the intermittent and hum issues.
The Incremental Controller was reported to only count up when warm although I could not reproduce it. The output from the Incremental Controller had good levels but Φ1 caught my attention. The rising edge of Φ1 is too soon after the falling edge of Φ2. At increased speeds these transitions nearly overlap. I have some experience with optical encoders since I designed the optical thumbwheels for the Tektronix 4100 series of graphic terminals. The encoder should be counting a gray code with a 50% duty cycle and a 90° phase shift between outputs.
The output of one of the sensors was weak. The schematic for the incremental controller decodes the two sensor signals into a D0 direction and INT-0 pulse signal for the processor. Φ2 clocks the CD4013 flip-flop with Φ1 as the D input. Both Φ1 and Φ2 generate the INT-0 pulse so if Φ1 is stuck low or high then Φ2 still generates pulses but the direction signal never changes. I suspect this was the case with this encoder.
I searched for a MCT8 datasheet and found it in a 1980 General Instruments Optical data book. It is very close physically to a Vishay TCST2103 with the collector and emitter pins swapped. The base of the sensor is thinner but the position of the sensor is in nearly the same location. The thinner base requires 0.054" spacers for mounting and required other modifications to work correctly.
I cut the collector and emitter traces and jumpered them. When I first operated the sensor I got very narrow pulses with no overlap at all. The brightness of the LED was way too high, flooding the sensor resulting in a very narrow "off" time. I changed the 130R LED series resistors to 2K2, dropping the LED current to ~1.8 mA, which produced very nearly square wave outputs. However, the waveforms were almost 180° out of phase, not 90° as required. Changing the spacing between sensors is hit and miss as there is no easy way to do this so I simply centered the sensors to the silk screen. However, changing the spacing between the sensor and the encoder bracket changes the phase between the outputs nicely. I found that increasing the spacing to ~0.100" generated ~90° phase shift. Two 0.050" nylon washers did the trick and this scope image shows a very nice gray code output (magenta leads green).
Reversing the rotation reverses the gray code (magenta now lags green). Voila!
I also had to replace the Incremental Controller 7 segment displays as some of the segments were bad. A Liteon LTS-312AE is very close to the MAN3610A display with the exception of the decimal points which are not used.