The Arduboy is a Kickstarter backed, 8 bit video game console that mimics the look of a very tiny Nintendo Gameboy. The Arduboy Classic is actually using the case, button and LCD screen from a classic Game Boy.
[uXe] is using the same brains, an ATMEGA32U4, along with a 328 as a co-processor to handle the classic “creme-n-spinich” gameboy screen. 2K of dual port ram acts as a buffer between the two micro-controllers meaning they can not only run while not being in lock step with eachother, but that each micro can read or write to the ram at the same time.
Currently the whole setup is spread out on a breadboard while all the interfacing is worked out, but it is working quite well. Future plans are to make a drop in motherboard replacement for the classic game system, and there is ample room for all the new electronics on the original footprint.
If you’re unfamiliar with the Arduboy project, check out our interview with it’s creator, [Kevin Bates]. That and the demo of [uXe’s] hack based on the project are both found after the break.
the dual-port ram got my attention. I’d like to learn more about this. there have been times that I’ve wanted one arduino (or cpu) to write to some off-chip scratchpad and have some other chip be able to read it. possibly even some mutex functionality, as well; to get some concurrency going. what are some chips I should look at, that would be small in physical size, still DIY friendly and not complicated to interface to? nvram is not what I need; volatile and higher speed is better for this. ideas?
I used in the past the 23LC1024 from microchip, it is a 1 mbit SPI RAM, you have plenty space to store stuff, it comes in my favorite package PDIP, so very DIY friendly. Two or more microcontrollers theorically could access it, but you need to design a way to share the same CS pin, in a way that when one microcontroller enable its the others disable it. I am just a hobbyst so i think there are better ICs to solve your need.
That doesn’t sound like dual-port at all.
indeed
Dual-Port RAM’s usually have some mutex functionality built-in (certain ram addresses/accesses cause interrupt pins to trigger).
You might want to check this out:
http://www.batslyadams.com/2014/05/nes-dual-port-ram-interface.html
He’s using a dual-port RAM to read out some game variables to control external lighting and a giant scoreboard, among other things.
He’s using the Cypress CY7C136 chip. I’ve been looking at doing something similar with my NES, and there don’t seem to be too many other dual port RAMs on the market.
HaD actually covered that last year as well:
http://hackaday.com/2014/05/06/dual-port-ram-teaches-an-old-nes-new-tricks/
Indeed, that’s where I first heard about it :)
one of the shittiest screens in history of handhelds combined with not one, but two arduinos? whats not to like ….
As well as being a gaming console, Arduboy can be used to learn computer programming, as an old school 8-bit synthesiser or as a controller for your drone. Schalke insist Arsenal target Julian Draxler hasn t agreed Wolfsburg move?