Generating PAL Video With A Heavily Overclocked Pi Pico

Hardly a week goes by devoid of a further hack blessing the RP2040 with a further interfacing superpower. This time it’s the convert of the humble PAL normal composite video clip interface. As a lot of of us of at least a sure vintage will be familiar with, the Stage Alternate Line (PAL to friends) normal was utilized largely in Europe (not France, they utilised SECAM like Russia, China, and co) and Australasia, and is a minor various from the a lot earlier NTSC common individuals in the US may fondly recollect. Anyway, [Fred] stresses that this hack isn’t for the faint-hearted, as the RP2040 requires one heck of an overclock (up to 312 MHz, some 241% about inventory) to be ready to pull off the necessary volume of processing grunt. This is much a lot more than nevertheless an additional PIO hack.
The twin cores of the RP2040 are really remaining pushed here. The program is break up into superior and minimal-stage functions, with the very first main operating rendering the various still photographs and online video demos into a framebuffer. The next core runs in parallel and bargains with all the nitty-gritty of formatting the frame buffer into a PAL-encoded signal, which is then sucked out by the DMA and pushed to the outside the house world through the PIO. There may well be a handful of chances for speeding the code up even far more, but [Fred] has plainly already accomplished a substantial amount of work there, just to get it doing the job at all. The PIO code itself is very easy but is instructive as a fantastic illustration of how to use various chained DMA channels to force info as a result of the PIO at the swiftest feasible price.
Beyond the Pico PCB, the only added hardware wanted was a resistor-ladder DAC implemented on a solderless breadboard. [Fred] needed a pair of goes to get the proper DAC resistor values, the very first version was crafted on a little prototyping PCB, but regrettably, the peak voltage was only 1 V, so it was vital to build a next version (consequently the breadboard) to get it to the appropriate 1.25 V.
We’ve coated video clip hacks on diminutive components numerous a time, even likely into some details of the many standards, like this piece on just why is NTSC so odd? But as time marches on, movie requirements have gone by means of wide modifications to get to wherever we are now.
“Higher-resolution” 164×125 color composite PAL online video working with just a passive resistor DAC on an @Raspberry_Pi #pico. Only a smidge of an overclock at 241%.
Code at https://t.co/pORMOgmkcq pic.twitter.com/Him694i2hP
— Fred (@theguruofthree) January 22, 2023
by way of Adafruit.