A simple resistive DAC is all you need to drive a VGA display. Combining that with an on-chip DAC for audio, the STM32F405RGT6 looks like a good choice for a DIY game console. [Makapuf’s] Bitbox console is a single chip gaming machine based on the STM32 ARM processor.
We’ve seen some DIY consoles in the past. The Uzebox is a popular 8 bit open source game system, and [makapuf] was inspired by its design. His console’s use of a more powerful 32 bit processor will allow for more complex games. It will also provide more colors and higher quality audio.
One of the keys of the Uzebox’s success is the development tools around it. There’s a full emulator which allows for debugging with GDB. [Makapuf] has already built an SDL based emulator, and can debug the target remotely using GDB. This will certainly speed up game development.
After the break, check out a demo of the first game for the Bitbox: JUMP. Also be sure to read through [makapuf]’s blog for detailed information on the build.
23 thoughts on “The Bitbox Console: An Open Source Gaming Rig”
NetBSD runs on it, so it supports bsd-games repositories. That makes it have a catalog of hundreds and hundreds of well-loved games from the start.
Don’t just play a rogue-like, play Rogue itself!
Errm no, NetBSD does not run on an STM32.
You’re both right. Of course, six667 is right, even if this chip is quite powerful, it only has 1M flash and 192k of ram (non uniform), so an OS is out of question, besides realtime OS like ChibiOS. Games run on the bare metal (that’s what’s funny !) BUT [welcome to level 2] is right to suggest games ! I’m looking for good ideas of games to port (and snarky remarks about the console design !)
That’s very, very cool. I have played with the STM32F4 processor myself, it’s really a very powerful chip indeed.
uCLinux runs on STM32.
BSD 2.9 should run on it as well.
uCLinux seems indeed to run on STM32 – or CortexM3/4 with external RAM and external storage, but this board only has one chip for everything !
This article (http://electronicdesign.com/embedded/practical-advice-running-uclinux-cortex-m3m4) details running ucLinux on a M3 quite thoroughly and they say :
“A minimal uClinux configuration could be run from 4MB RAM, although the recommendation we are giving to our customers is that they should design in at least 16 MB’s worth of RAM”
Don’t know about BSD although.
Couldn’t access the schematics to know what IO is available, requires registration.
huh? what existing games are compatible with this funky video architecture? none no doubt
Interesting thing to me is that he’s managing this without a framebuffer. The microcontroller is rather beefy, giving 5K cycles for blitting a single line.. but there still isn’t enough RAM for a full framebuffer
(shameless plug) I’m currently beginning to redact a tutorial for developing a simple game for the bitbox (and publishing the source of the emulator), stay tuned !
No framebuffer is necessary if your code generates pixels on demand.
In fact it’s pointless to have a framebuffer in this context.
RAM is the most expensive item in a MCU so why waste it on this?
It’s all backwards from the old days. CPU is cheap and plentiful so leverage it.
There are a few nice STM32F4 video demos over at http://www.reddit.com/r/stm32f4/ For example, there is the classic game Boulder Dash and a demo of 450 simultaneous sprites!
What’s with the trend of uncomfortably silent, voiceless YouTube videos these days. Not to pick on this one particularly, its just the one I finally got frustrated with. A picture is worth a thousand words, but oddly, a video is often worth NONE. The first half of the video could have been much better served by one or two well shot photos. Shaky camera gave us not much to see other than ” heres a board, a game pad, and a connector.” If you are going to waste “airtime” then at least tell us about the hardware and why you made it. I’m totally cool with a demo game with no sound. It at least adds value being a video and not just a screen shot. After watching the video, I still know absolutely nothing about the hardware and am wholly uninterested. I WANT to be interested! I know I can go read a blog but that’s not the point. The point is that someone took the time to make a video that ultimately turned out to be a whole lot of nothing. PLEASE pitch the hardware. The only thing worse than miscommunication is NO communication (wasting time).
Maybe not everyone is as fluent in the spoken english language as you probably are. Would you be pleased if the voice would speak in French or German?
No, he probably wouldn’t be. There’s no pleasing some people.
Actually, I WOULD be.
Id rather here a language I cant understand, or English spoken badly, than watch a silent movie.
If there were some informative text added, maybe it would be better. Silent videos is a very irksome trend, not unlike vertical videos. both are just uncomfortably bad.
aghh.. HEAR. not here.
Otherwise your video gets deleted. They recognise copyrighted content in nearly every audio. I had a video where the only sound you could hear was ‘wooosh’ from a brushless motor, and it got deleted…
the fridge in my office could be mistaken for copyrighted dubstep music. wub wub wub wub wub wub.
Just kidding. I like dubstep. wub wub. skrittika skirttika.
Again not picking to be mean. I really want to hear people when they show off their projects. This could be can interesting project.
“bitbox” is a confusing name – I think it’s a bitcoin device of some sort.
Please be kind and respectful to help make the comments section excellent. (Comment Policy)