30 points by janosch9001 9 hours ago | 7 comments
quruquru 2 hours ago
Neat! I also did something very similar when I discovered PeanutGB( https://github.com/deltabeard/Peanut-GB ) for an university project.

I used an STM32F401 (the "blackpill" board). Shoved it into a gameboy case I got from aliexpress and connected an ILI9341 display, a PCB for the buttons I found online from some hobbist selling them and 4 AA batteries in series. The screen wasn't really the same as the gameboy's one in dimensions so it all looked very janky, but it was cool enough to impress people.

I had no audio, I was able to play simple GB games quite well but I had some significant slowdowns with stuff like Super Mario Land 2 or the later pokemon. I had 3 big problems: - First, I didn't use DMA at all. That's because I picked a display controller with 8 data GPIOs because at the time I thought "8 lines vs 1? its gonna be faster right?". Dumb me, I didn't consider that DMA existed... - Second, I wanted to scale the image to fit the entire screen. I couldn't fit the scaled framebuffer in memory though, so I had to keep the original size but send each pixel to the screen 4 times - Last, I read games from an SD-card. I had a tiny in-memory cache for recently read data blocks, but you could see when I got a cache miss. It wasn't often though so it wasn't bad at all.

I agree, it was an incredibly fun project

janosch9001 59 minutes ago
Nice, and yeah, Peanut-GB does the heavy lifting. Would be also interesting to connect directly to original cartridges.
Tepix 2 hours ago
Does it only run on the STM32F4 or also some other STM32 CPUs? Looking at https://www.st.com/en/microcontrollers-microprocessors/stm32... how many coremarcs do you think are required for emulation?
not_a_dane 3 hours ago
Does anyone have insights on how to license ARM chips after a hobby project reaches maturity?
jamesmunns 3 hours ago
You don't generally need to license Arm chips unless you are designing your own chips for sale, like STM32 or Raspberry Pi do. This is something very few companies do, relative to those who just build things from existing chips.

If you're just building something with an existing Arm microcontrollers. The vendor (Like STMicro) has already licensed the Arm design and sold it to you.

scottapotamas 3 hours ago
You just buy the microcontrollers and put them on your custom PCB.

The devkits aren’t suitable for resale but there’s no additional licence when you buy an ARM micro from pretty much any manufacturer.

dvh 5 hours ago
How does F429 speed compares to F103 on real world loads?
anthk 3 hours ago
Beretta_Vexee 6 hours ago
A DMCA take down from Nintendo should reach you before your morning coffee. /s https://news.ycombinator.com/item?id=41762397
2 hours ago
2 hours ago