Flutterby™! : Microcontroller madness

Next unread comment / Catchup all unread comments User Account Info | Logout | XML/Pilot/etc versions | Long version (with comments) | Weblog archives | Site Map | | Browse Topics

Microcontroller madness

2008-04-02 16:21:32.631593+02 by Dan Lyke 3 comments

Since I'll be spending my day tweaking code on this particular platform: Over at Brainwagon, Mark had an entry embedding this video of a "how much can you squeeze into 8k of ROM and 1k of RAM" demo on a microcontroller, with all video signals and timing done in software.

Complete schematics and source code for doing this with your own ATMega88.

[ related topics: Hardware Hackery Open Source Software Engineering Embedded Devices Video ]

comments in ascending chronological order (reverse):

#Comment Re: made: 2008-04-02 17:55:19.730513+02 by: ebwolf

Cool. Makes you wonder what you could do with four 2.4Ghz 64-bit CPUs and 4GB of RAM... Oh... Maybe barely run Vista?

I always found the limitations of hardware to increase creativity.

#Comment Re: made: 2008-04-02 20:22:51.703113+02 by: mvandewettering

I didn't have time yesterday to look up the schematics and source code yesterday. Thanks Dan, for bringing it to my attention. As it happens, I have a couple of ATMEGA 88's sitting in a bag next to my desk, so this project would be pretty easy to do.

Overall, the project reminds me a lot of my excursion into programming the Atari 2600, except that instead of a 1.something megahertz 6507 and only 128 bytes of ram which takes 2-5 cycles (or more) to execute a single instruction, you have a 20Mhz processor with 32 8 bit registers, nearly all of which execute in a single cycle. Of course, you don't have the TIA timing chip or any of the sound or player missile hardware, but obviously, you can get away with a lot given the extra cpu capabilities.

I particularly liked the "oscilloscope" display toward the end, which also displays a low resolution version of the Julia set. It's really all quite clever.

#Comment Re: made: 2008-04-04 22:19:57.351689+02 by: ebwolf

I got the feeling that the demo was basically encoded audio and video burned into the ROM at low-res (probably with the audio encoded as a series of frequency deltas). But still impressive.

32 8-bit registers is pretty darn sweet. Is there as separate ADDR register or can any of those be used as data/code pointers?

The 2600 only had 128 bytes of RAM? That feels downright claustrophobic!

Comment policy

We will not edit your comments. However, we may delete your comments, or cause them to be hidden behind another link, if we feel they detract from the conversation. Commercial plugs are fine, if they are relevant to the conversation, and if you don't try to pretend to be a consumer. Annoying endorsements will be deleted if you're lucky, if you're not a whole bunch of people smarter and more articulate than you will ridicule you, and we will leave such ridicule in place.


Flutterby™ is a trademark claimed by

Dan Lyke
for the web publications at www.flutterby.com and www.flutterby.net.