Terminal
A simple library for controlling the cursor position and colour on a serial terminal emulator.
A terminal program like Teraterm or Hyperterminal often supports escape sequences to control things like cursor location and colour. A common set of escape codes are those first used on the VT100 terminal, which are listed sequences, as found here:
Based on the conversation about the TextStar LCD, this is an experiment for a very simple library to wrap these up in to a class inherited from Serial to make it much easier to use, and more like the drivers we'll have for LCDs.
ANSI/VT100 Terminal Library and Example
Screenshots
#include "mbed.h"
#include "Terminal.h"
Terminal term(USBTX, USBRX); // tx, rx
int main() {
term.background(0x00FF00);
term.foreground(0xFF0000);
term.printf("Hello");
term.locate(3,3);
term.foreground(0x0000FF);
term.printf("World!");
} 
#include "mbed.h"
#include "Terminal.h"
Terminal term(USBTX, USBRX); // tx, rx
#define ASCII_BLOCK 219
#define ASCII_BORDER_H 205
#define ASCII_BORDER_V 186
#define ASCII_BORDER_TL 201
#define ASCII_BORDER_TR 187
#define ASCII_BORDER_BL 200
#define ASCII_BORDER_BR 188
#define WIDTH 30
void box(int x, int y, int w, int h) {
// corners
term.locate(x, y);
term.putc(ASCII_BORDER_TL);
term.locate(x + w - 1, y);
term.putc(ASCII_BORDER_TR);
term.locate(x, y + h - 1);
term.putc(ASCII_BORDER_BL);
term.locate(x + w - 1, y + h - 1);
term.putc(ASCII_BORDER_BR);
// top
term.locate(x + 1, y);
for(int i=0; i 
3 comments
You need to log in to post a comment

Hey..! Maybe someone can start porting dos games now haha. This is very nice..