#ifndef TERMINAL_H #define TERMINAL_H // TODO: add class. :P struct console_details { int posx, posy; int savedx, savedy; char ansi[20]; // current ANSI command being processed. int in_ansi; int fgcolor; // 0-7 // not 0-15 int bgcolor; // 0-7 int status; // 0, 1 or 5 (Blink) }; void console_init(struct console_details *cdp); void ansi_color(struct console_details *cdp, int color); const char *color_restore(struct console_details *cdp); void console_ansi(struct console_details *cdp, const char *ansi); int console_char(struct console_details *cdp, char ch); void console_string(struct console_details *cdp, const char *chars); void console_receive(struct console_details *cdp, const char *chars, int len); #endif