A project to implement a console using the Mbed using VGA for video output and a PS/2 keyboard for the input. The eventual goal is to also include tools for managing SD cards, and a semi-self-hosting programming environment.

Dependencies:   PS2_MbedConsole fastlib SDFileSystem vga640x480g_mbedconsole lightvm mbed

MbedConsole is a cool little project to have a self-contained computer all on an Mbed. So far it has VGA and PS/2 support and can stand alone without a computer powering it. Next planned features are SD card support and a lightweight programmable VM complete with a file editor and self-hosted assembler.

You can view additional details about it at http://earlz.net/tags/mbedconsole

Committer:
earlz
Date:
Wed Sep 19 04:44:07 2012 +0000
Revision:
3:2bc2b0dce10e
Child:
6:a4dff59ef214
Adding a small forth interpreter

Who changed what in which revision?

UserRevisionLine numberNew contents of line
earlz 3:2bc2b0dce10e 1 #ifndef PLEARLZ_H
earlz 3:2bc2b0dce10e 2 #define PLEARLZ_H
earlz 3:2bc2b0dce10e 3
earlz 3:2bc2b0dce10e 4
earlz 3:2bc2b0dce10e 5 int pl_shell();
earlz 3:2bc2b0dce10e 6
earlz 3:2bc2b0dce10e 7 static inline int is_whitespace(char c){
earlz 3:2bc2b0dce10e 8 return (c==' ') || (c=='\t') || (c=='\n') || (c=='\r');
earlz 3:2bc2b0dce10e 9 }
earlz 3:2bc2b0dce10e 10
earlz 3:2bc2b0dce10e 11 static inline int is_numeric(char c){
earlz 3:2bc2b0dce10e 12 return (c>='0') && (c<='9');
earlz 3:2bc2b0dce10e 13 }
earlz 3:2bc2b0dce10e 14
earlz 3:2bc2b0dce10e 15 static inline int is_alpha(char c){
earlz 3:2bc2b0dce10e 16 return ((c>='a') && (c<='z')) || ((c>='A') && (c<='Z'));
earlz 3:2bc2b0dce10e 17 }
earlz 3:2bc2b0dce10e 18
earlz 3:2bc2b0dce10e 19 static inline int is_identifier(char c){
earlz 3:2bc2b0dce10e 20 return is_alpha(c) || is_numeric(c) || (c=='_');
earlz 3:2bc2b0dce10e 21 }
earlz 3:2bc2b0dce10e 22
earlz 3:2bc2b0dce10e 23 static inline int is_quote(char c){
earlz 3:2bc2b0dce10e 24 return (c=='\"') || (c=='\'');
earlz 3:2bc2b0dce10e 25 }
earlz 3:2bc2b0dce10e 26
earlz 3:2bc2b0dce10e 27
earlz 3:2bc2b0dce10e 28 #endif