Game Boys have a link cable that lets two of them play together. You know, to battle with a friend’s Pokemon and stuff like that. But who says that it should be limited to transmitting only what Big N wants you to?
[Chromalock] wrote a custom GB program that takes in data over the link cable, and displays it on the screen as video, as fast as it can be sent. Add in a microcontroller, a level shifter, and software on the big computer side, and you can hook up your Game Boy Color as a normal video device and send it anything you want, from a webcam to any program that outputs video.
Well, almost. The biggest limitation is the data link cable, of course. On the older Game Boys, the link cable is apparently only good for 8 kHz, while the Color models can pull a not-quite-blistering 512 kHz. Still, that’s enough for 60 fps in a low-res black and white mode, or a slow, screen-tearing high-res color experience. You pick your poison.
There are gotchas that have to do with the way the GB displays palettes that get left as “to-do” on the software side. There is room for improvement in hardware too. (GB Link looks like SPI to us, and we’d bet you can push the speeds even higher with clever GB-side code.) In short, this is an awesome demo that just invites further hacking.
If you want to know more about the Game Boy to get started, and maybe even if you don’t, you absolutely must watch The Ultimate Game Boy Talk. Trust us on this one.
Who picked out “Shrek Piss” for pantone color??? (1:53 in the video)
Ayo is that a mf Touhou reference?
The link port is just an SPI bus without chip select. I haven’t tried how fast you can clock it, but I would not be surprised if you can clock it up to 1Mhz if the GB or GBC is a slave.
The best color picking for a full GBC image conversion is not a simple job indeed. I have code here that tries to do it’s best: https://github.com/daid/LADXR/blob/master/gfxconv.py but still requires tweaking of the input image to get the best results.
The game boy even dmg have what effectively is ttl uart, and even dmg can operate from an external clock up to 500khz
Its asynchronous
You can run it as slow as one bit per year if you have time to waste
The Gameboy either can run serial as master, providing the clock, or as slave, with clock provided by external device
The Gameboy is literally the first credit card size computer with a z80 and graphics from the late 1980s
Predates that raspberry pi by a longshot
Run a flash cartridge and you can even plug a ps2 keyboard on the serial port and literally have a computer, add esp32 on the cartridge and even use that internet and Bluetooth
Add a cpld or fpga and use a floppy drive, or CD drive
But that micro SD flash cartridge you can make a custom rom, what can a 512 gigabyte Gameboy Rom do? With another 512 gigabyte of storage (partition that sdxc)
Even emulate the sram, with 128k pages
My Gameboy is better than yours
https://youtu.be/9sDWHAvrVM4?si=zYOT56NQ-6Jm_b_N
Maybe he could do a cartridge version with a Pi Pico W. I’d imagine it would be faster than that 64kbps.