jbshelton / GBPicoHDMI

An HDMI output device/project for the Gameboy (Color, Advance, etc.) using the Raspberry Pi Pico/RP2040.
18 stars 0 forks source link

This is a very interesting project #1

Open Meekdai opened 2 years ago

Meekdai commented 2 years ago

When I saw the project https://github.com/Wren6991/PicoDVI , I thought about whether I could use the RP2040 to make a game player and output it to a DVI monitor. so I found your project. I usually use micropython to develop some small projects, I don't know much about assembly and C/C++. But designing the PCB is not difficult for me, so if you need, I can help design the PCB for GBPicoHDMI.

Hope your GBPicoHDMI are going well

birdybro commented 2 years ago

It is really interesting. I like the idea of using a pico for all sorts of retro gaming projects. I agree that defaulting to FPGA shouldn't be the case, everyone should explore all options. I can answer the question of why people suggest using FPGA for things like this in case anyone is curious:

  1. Parallelism - FPGA are excellent at efficiently handling highly parallel processes.
  2. Precedent - FPGA have been used with great success in a wide range of retro gaming scaler projects, and the only other projects that have been successful at providing low latency scaling have used either scaling ASICs or (powerful MCU with some lag added as a compromise) in order to get the job done.
  3. Latency - The latency of a MCU is generally not in dispute when compared with an FPGA for video processing. However, for Game Boy, does it really matter?

Overall, I think it's great to push the Pi Pico to the limits so not saying you should use an FPGA, but I instead think that it's great to find cheap hobbyist friendly solutions, especially with how overpriced FPGA are nowadays.

FPGA power consumption is not that much of an issue btw, it's usually the HDMI IC that is the big power consumer for this sort of thing.

mm12 commented 2 years ago

I agree. FPGAs are great, but the RP2040's PIO can be used to the smaller applications like this.