Pull YPbPr from Commodore 64

Original author: c0pperdragon
  • Transfer


Commodore 64 is a computer with a huge library of programs, but with not very high-quality video output. A chip called VIC-II immediately generates S-Video, and the color signal is not quite standard, and the luminance signal is somewhat noisy. But, having removed the signals from 22 pins of this chip, you can use the FPGA to find out what it displays on the screen at the moment, and generate exactly the same video signal, but YPbPr.

As a basis, the author took his previous development - the A-Video board. Installing it in the C64 case was inconvenient, since it required drilling additional holes for the three “tulips”. The new board is designed to be installed instead of a modulator. New holes are not required, in place of the antenna jack after alteration is a four-pin (TRRS) jack.

The device consists of two parts:

  • adapter board that converts all 22 signals from 5-volt levels to 3.3-volt
  • boards with FPGA, connected to the adapter card with a loop and installed instead of the modulator; it also contains stages for amplifying S-Video and composite signals, repeating similar modulator stages, so that the corresponding video outputs continue to work.

The device is designed so that over time you can add support for all existing C64 variants: PAL and NTSC versions, short and long, with VIC-II power supply only from 5 V and from 5 and 12 V. The hardware is probably compatible with all the options now (a test was performed with two boards - long with a chip powered by two voltages and short with a chip powered by one voltage), but some varieties of the VIC-II chip (in particular, 6567R56A, which was found in early releases of the computer) are not yet supported by firmware. And these ones are already precisely supported and working:

- 6569R5 (PAL)

- 8565R2 (PAL)

- 8562R4 (NTSC) Using the

switch on the board, you can select the following output signal parameters:

- 240p / 288p, progressive scan, 50/60 Hz

- 480p / 576p, progressive scan, 50/60 Hz, line doubling

- 480p / 576p, 50/60 Hz, imitation of lines as on a CRT.

Assignment of “jack” pins, starting from the contact of the plug opposite the cord: Y, Pb, Pr, common. Therefore, any cable with a four-pin “jack” and three “tulips” is suitable, provided that the common wire corresponds to the “jack” contact, which is closest to the cord.

Not all TVs support the 240p / 288p mode, but it is convenient to feed it to external scalers. Both 480p / 576p modes work well on all TVs, if only there was support for YPbPr.



Alteration Order:

  • download all the necessary files (circuits, board drawings, firmware) from here , collect the boards, flash the FPGA
  • remove the VIC-II chip from the computer board, sometimes this requires moving a small amount of “loose” and installing the panel
  • place the VIC-II chip in the adapter board, making sure that it is deployed in the same way
  • install the adapter board with the chip in the computer board, if it is poorly held in the socket, replace it with a better one
  • check the card with the FPGA in weight by connecting it to the adapter card with a loop, then connecting one of the GND3, GND4, GND5 pads to the common computer wire, and the right RFCON2 set pad with the +5 V bus, in this form the device is already capable of outputting YPbPr Signals
  • remove the modulator, clear all holes in the board where it was soldered from solder
  • install two four-pin combs in place of the modulator, but do not solder yet
  • see which contact pads of the FPGA board connect the combs: for computers with long boards, there is one set of pads on the board with FPGA, for computers with short boards
  • put the board from the FPGA onto the combs, align it, then solder them from the side of the computer board
  • set the board with the FPGA vertically, solder the combs on its side
  • if the VIC-II microcircuit is powered by two voltages (its designation starts not with 8, but with 6), close the JPLUM1 jumper on the FPGA board
  • if after checking the weight removed the loop, return it back

You can connect the board with the FPGA to the TV through the adapter “TRRS - three tulips”, through the same cord, or through the cord TRRS - TRRS, if the TV has such a YPbPr input with the same pinout (see above).

Address for contacting the developer: reinhard.grafl barks aon put at the end of the sentence at

Also popular now: