EBD_IPKVM - An all digital approach to Classic Mac Video Capture and Control


Hello all, I've come here with quite a project.

This is a Raspberri Pi Pico based framebuffer in firmware and PIO program approach to capturing digital video signals like those used on the Lisa through to the SE/30.

photo_2026-01-27_08-52-16.jpg photo_2026-01-27_08-52-16 (2).jpg

I have managed to get legible video data in about 4 week's worth of efforts that I've slowly worked on for most of December and January.

output.gif

This could have broader implications as it's a tighter and simpler and lower resource version of RGB2HDMI's approach, sure we don't output to a display, but this does open the possibility for better direct capture of video in a 1:1 exact format that essentially looks like you booted up Basilisk 2 or mini vMac, it doesn't use oversampling or dedicated CPLD custom hardware, it's just a Raspberri Pi Pico, some standard jellybean DIP parts (I made this through-hole on a breadboard, freehand) and some voltage regulation.

my test bench setup is a bare macintosh classic motherboard that I was given about 2 months ago, I had to re-cap it with what I had on hand but I did pretty well considering I had no SMD parts, I managed to find some small electrolytics that fit if I cut the leads down and turned them into improv SMD pads, works great.

and yes, the name does mean what you think, I fully intend to fold as much into this as I can. next target after we get video in a good state (we need to do Run Length Encoding to compress the video data and then I can do full 60fps acquisition over USB to test for a start, this would also be great for youtubers who cover old tech and want a more direct, possibly OBS friendly way of getting the video they need)

video comes first, then ADB (trivial and extremely well documented third party implementations compared to what I've just done with video)

this is significant because until now, RGB2HDMI with their custom CPLD and such was the only good way to get video out of these things, I looks like I just broke that trend.

the repo technically contains everything required to reproduce this as well, this is essentially a crude Software Based TTL driven CRT emulator.

I'll have to assign the UART to different pins because I used GPIO0 and 1 for Pixel Clock and /VSYNC signals. those who are more eagle eyed might have spotted the FT3232 on the left on the SOIC adapter board, that is indeed for serial comms, I want to do PPP/SLIP as an outside possibility, so I made sure I could experiment with that as well. when I called it EBD_IPKVM, i wasn't kidding.

current project status can pull down 100 frames of video data and power the mac on and off via ATX soft power control which gives me everything I need to automate testing so I dont have to leave my seat to work on it, we're just in alignment/geometry territory now, it's very early days yet, we're just focussing on getting from on-wire video protocol to usable/accurate image data right now.

I am also in general, a huge nerd when it comes to old macs, there's some neat work in my other repos related to old macs in general which I will not list here and will let you all discover as they may have value, or not, lol.

I tend to go to ground and work so I might not see or remember to check for replies for a while, don't take it the wrong way, I'm on disability and I'm fixated on making this work, I am going to get my win, as far as I could tell, this has not been done successfully before, most give up and revert to dedicated capture hardware or custom cap hardware, turns out that may not be necessary.

I could not done this without the work of trail blazers like BMOW or the Bomarc Macintosh Classic Schematics that circulate in various places online.

I could really use a breakthrough that sees me not scraping by on disability but serves me if I'd even be able to monetise this so I'm sharing it so it at least doesn't languish away on my bench or get lost entirely if something bad happens to me.

the end ideal state of this project would be a custom board design, schematics, board routing files and code/UF2 firmware available for anybody who has, say, an old compact mac logic board but nothing else floating around, and wants to revive the machine with minimal outlay and maximum integration.

I used to work as a systems integrator for winthrop australia doing stuff for apple in education, so this is kind of my natural approach, build a product, make it fill a need, there's probably tens of thousands of these boards sitting in closets and in junk piles because the analog board or the CRT died, pipe dreams of various nerds like myself wanting to revive them and put them in a neat wireless connected box that behaves like an appliance.
 
Last edited:
Nicely done! I've been flirting with a similar concept myself as I've been playing with a headless classic as of late. Small, cheap, and common logic boards for projects. You might have a look at guruthree's mac-se-video-converter, I am not sure how much overlap there is with yours but it also handles the video capture with PIO, albeit less flexibly compared to what you're doing.

What're you handling in the discrete logic?
 
Nicely done! I've been flirting with a similar concept myself as I've been playing with a headless classic as of late. Small, cheap, and common logic boards for projects. You might have a look at guruthree's mac-se-video-converter, I am not sure how much overlap there is with yours but it also handles the video capture with PIO, albeit less flexibly compared to what you're doing.

What're you handling in the discrete logic?
We have one 74LVC245 as a level shifter, and one ULN2803 for pulling lines low, since the reset, NMI, PS_On and even the ADB Bus, all operate on such principles. the SOIC part is a FT3232 that I put there in case we have enough CPU left over to do SLIP or PPP for the mac as well and since we have dedicated UART in there, I think we can.

I'm even considering abusing the Pico to get sound capped as well.

in theory, if this gets as good as it could, the dream stretch goal would be integrating with bluescsi and bmow's floppy emulator on a standard serial based protocol that allows for a full appliance like experience, then this essentially becomes a virtual mac in a web browser with full access to the hardware.

In essence, this project is a keystone towards "classic mac in a server rack" being a reality.

as for mac -se-video-converter, their approach is different from mine to some degree, for one thing, I decided to tap the pixel clock directly and not craft an algorithm around NOP instructions, which, while valid, is a waste of resources, they're also a lot more vulnerable to drift, sync issues, etc... because the SE video converter project uses its own clock reference and my project uses the mac's pixel clock.

they essentially took the "hacked logic analyser" approach and I built mine from no existing implementation or idea, just raw timing data, documentation from apple, BMOW's stuff and a few other assorted projects/documents about the video timings of the device.

I didnt want to use other peoples source of truth on this when it comes to how to get video data out because I suspected there was a better way to do it for my purposes.
 
Last edited:
Back
Top