Hooking an iPod to a C64
There are certain things that are somewhat hidden in your trusty C64, that sometimes only after many years surface and lead to great new things to do with your breadbox.
One of these is the strange “EXT IN” pin on the Commodore’s 6581 SID chip.
If you remember from my article on “30 years of Commodore 64”, the engineer that was responsible for the design of the SID chip was a musician as well, who wanted to see his creation not just being used in the Commodore, but see it in use in music studios as well.
It would take 20 years or so for companies to pick up on this idea, like Elektron with their SID station (which got used by world famous artists like Depeche Mode and Robyn) and use the SID chip outside of the breadbox’ case.
But you don’t need to go out and buy some exotic equipment to experience this first hand as this article will show… there’s a little magic in your C64 that can open up many fun and new ways to play around with your home computer.
The key to this, is the “EXT IN” pin of the SID chip.
It seems this pin allows you to hook up say a musical instrument to the SID chip and have this analog signal processed by the SID. This would serve then as the 4th voice, with possibilities of being mixed with the other voices… cool!
You could then, in theory, have the C64’s filters process the analog input signal and modify it as you’d see fit, blending it in with the regular chip tunes the SID would produce.
This idea got me thinking… if the 6581 accepts an analog signal, it should be possible to hook-up say a tape deck, or even an iPod and have the analog audio output of these devices, which would normally go to the speakers or the ear-plugs, go into this “Ext” pin.
Hmmm… this sounds like a lot of tinkering and soldering and doing crazy stuff on the chip itself, but as it turned out, I didn’t even have to open my C64 to accomplish this!
The secret (yet another one!) lies in the A/V-output of your home computer. A look at the diagrams of the C64 learned that pin 5 of the A/V-cable port (the cable that connects your C64 with a monitor) is the “Audio In” connector and to make things even weirder, it seems to be connected via a capacitor to the “Ext” pin of the 6581 (see the diagram below, marked in red).
So, you’re A/V port has an active input for an analog signal… sweet!
In your regular A/V-cable, this pin is of course not used but what if I was to make a cable myself, that does connect this pin 5 to the audio wires of say my iPod’s ear plugs…
Since I only needed pin 5 and the mass, I ordered a regular 5-pin DIN 41524 connector (the actual A/V port has 8 slots, but this doesn’t matter, as we’re not going to use it as an A/V-output, we’re going to use it as an input port).
The only tricky bit was hooking up your iPod. I used an old set of headphones, cut the earplugs of just below where the cable splits (to go to each of the ear plugs) and burned of the insulation of the 4 copper wires that become exposed (a green, a red and a red/green striped one and a plain copper wire).
I twisted the copper and the red/green striped wires and did the same with the red and green wires.
I now had two wires that I soldered to pin 2 (the mass – soldered to the red and green twisted wire) and pin 5 (the Audio In soldered to the copper and red/green striped wire) and pressed “play” on my iPod… nothing happened. Did I get the wires wrong… was the SID chip faulty. Luckily, none of the above. Basically the sound input volume of your C64 is “0”. You have to “POKE” the volume up. Simply entering POKE 54296,15 turns up the volume and my iPod’s tunes were blasting out of the computer’s speakers! (putting in a “0” turns it off again)
Since this input signal is processed by the SID chip, you can run things like the low-pass, high-pass and band-pass filters over this signal, as this little program below illustrates, and which I’m demonstrating in the video on the right.
10 FOR M=54272 TO 54296:POKE M,0:NEXT
20 POKE 54295,249
30 POKE 54296,31
40 POKE 54293,0
50 POKE 54294,091
60 POKE 54296,31
70 PRINT “LOWPASS”
80 FOR A=1 TO 2000:NEXT A
90 POKE 54296,47
100 PRINT “BANDPASS”
110 A=1 TO 2000:NEXT A
120 POKE 54296,79
130 PRINT “HIGHPASS”
140 A=1 TO 2000:NEXT A
150 10 FOR M=54272 TO 54296:POKE M,0:NEXT
160 POKE 54296,15
So there you have it, a piece of 21st century audio technology, hooked up to an 80s classic. The old and the new together… nice!