Well, I think I should finally document how to actually build the MbedConsole. It's very simple...
A full overview schematic(which I think I did a horrible job on) is below:
I think this design is simple enough that it doesn't need much further explanation. One note though is that you can possible increase or decrease the resistance for the 470ohm resistor connected across RGB. Having more resistance decreases the brightness, having less increases it.
Now then, a picture's worth a thousand words... so: (in chronological order)
Taya typing at the basic serial-vga repeater thing
Shell is mostly working, though still gets input from serial and not PS/2
Finally received the PS/2 breakout board and wired it up
My final "impressive" feat. Drawing pretty pictures!
Anyway, the code is accessible at mbed and my portion of the code is BSD licensed. The projects current status:
- PS/2 keyboard completely works except for the caplock and such LEDs
- The PLEarlz language thing can function as a simple stack calculator. Other than that, it's still a deep work in progress.
- VGA signal is extremely stable and consistent. 640x480 monochrome graphics updated at 60hz.
- Interrupts are re-prioritized at startup so that the VGA signal never stutters.
- Tons of RAM and Flash left over. Just have to find something to do with it!
- No ethernet/USB support. The VGA framebuffer uses the memory that is reserved for those components
Anyway, if anyone would like to contribute, I'd love it. Right now my top priority is a simple interactive programming shell using some usable language. I've evaluated Scheme, Forth, and Basic, but haven't found anything I can directly port to the mbed. If anyone would like to try their hand porting a language or even writing something from scratch, I'd most appreciate it! (Also, extra points for using a BSD-style license :) ) I'm really bad at implementing a language in C.
Other than that there is a ton of resources left in this tiny microcontroller to tap. Next on my list:
- SD card support
- file management commands in the shell
- possibly bitmap support for reading from the filesystem
- a simple game
- Maybe even add a speaker for some basic sound support
And tons of other ideas. What do you think would be cool to implement?
Also, if you want to read more about my latest MbedConsole stuff, or look at the history of it, just look at the MbedConsole tag