After seeing [Dimitry] build the most minimal Linux computer ever, [Kyle] decided he needed one for himself. In true hacker fashion, he decided to take this build for the worst Linux PC one step further: he would add I2C to his version, making it somewhat useful, considering the number of I2C peripherals out there.
This build is based on [Dmitry]’s ARM Linux computer emulated on an 8-bit AVR. It’s a full-blown Linux computer with 16 MB of RAM courtesy of a 30-pin SIMM, a lot of storage provided by an SD card, all running on an emulated ARM processor inside a lowly ATMega1284p. [Kyle] built this clone over the course of a few months, but from the outset decided he wanted to implement an I2C protocol on this terribly under specced computer.
After booting his computer, [Kyle] eventually got an I2C module loaded by the kernel. With an I2C module and a few spare GPIO pins, he set out to create something to attach to this terribly slow computer – an ancient LED dot matrix display. With a real-time clock, this display became a clock with the help of a homebrew program written in C. Considering the speed of the emulated processor, the program takes nearly three seconds to read the RTC and display the current time to the display. We’re thinking it was a wise choice to only implement hours and minutes in this clock.
If having a useful computer running at about 10 kilohertz isn’t enough, [Kyle] also compiled the classic text-based adventure Zork. It actually runs, proving you don’t need Megahertz of power to do something useful and fun.
16 thoughts on “Making The Worst Linux PC Useful”
ooohhh the blistering power!
How many minutes between command and response in Zork?
“Worst” implies that there’s something “bad” about a Linux ‘pute. Maybe “Least” would be more appropriate.
“Making The Least Linux PC Useful”? What?
Seriously though, that title is fine, this is the worst Linux computer, it implies the computer is bad, not Linux
My ego hates losing a debate in one argument, but my inner pedant agrees, now that it’s been explained.
Would you grant me something like “worst Linux-based PC?” I dual-boot, but I’d use Linux full-time if I didn’t need Win-DOH!s for Solitaire, Minesweeper, MAME, and videos. ;-)
I’d write my own version of Minesweeper if I could find a decent GUI that’s as easy as, say, Visual Basic, but I guess Linux is more utilitarian than recreational.
Solitaire, minesweeper and MAME all work better on linux than Windows. The same can be said for videos.
Aisleriot, GNOME mines, MAME itself, and VLC all suit this purpose nicely. If you need fancy video playback, maybe XBMC.
Well, I’ll be.
OK, I’ll quit sniveling now. :-)
In this case “worst” is used facetiously, an ironic nod to the fact that this thing isn’t useful for anything at all ever (because that wasn’t the point).
I think if MicroSoft were to build a Linux computer, it would inherently be the “Worst Linux PC” ever…
I’ve got to make one now. On a glass PCB…
Someone get me 18,000 valves; I’m gonna run linux!
Valves? Real Men use EM relays!
You all do realize this has more computational power than the apollo guidance computers right? lol
I’m fairly certain the Apollo guidance computer has quite a lot of more computing power than this emulated arm.
I don’t really know how many cycles per instruction is needed in AGC, at 2MHz it must easily beat this contraption.
clearly it needs to be a quad core. :P Something like this -> http://spritesmods.com/?art=avrcpm&page=2 might run your clock faster if you can bear to deal with 70s/80s programming. Linux seems like a lot of overhead, and why on earth would the thing onlt run at 10Khz?
http://www.wengenroth.co/projects/adding-i2c-to-the-avr-arm-emulator/ is not reachable
Please be kind and respectful to help make the comments section excellent. (Comment Policy)