PatchworkOS
Loading...
Searching...
No Matches
terminal.h File Reference
#include "ansi.h"
#include <libpatchwork/patchwork.h>
#include <stdint.h>
#include <sys/io.h>
#include <sys/kbd.h>
#include <threads.h>

Go to the source code of this file.

Data Structures

struct  uevent_terminal_data_t
 Terminal data event structure. struct uevent_terminal_data_t. More...
 
struct  terminal_char_t
 Terminal character. More...
 
struct  terminal_t
 Terminal structure. More...
 
struct  terminal_init_ctx_t
 Terminal initialization context. More...
 

Macros

#define TERMINAL_BLINK_INTERVAL   (CLOCKS_PER_SEC / 2)
 Terminal blink rate.
 
#define TERMINAL_COLUMNS   80
 Terminal columns.
 
#define TERMINAL_ROWS   30
 Terminal rows.
 
#define UEVENT_TERMINAL_DATA   (UEVENT_START + 0)
 Event sent from the terminals io thread to the main thread when there is data available.
 
#define TERMINAL_MAX_INPUT   64
 Maximum terminal input length.
 

Enumerations

enum  terminal_flags_t {
  TERMINAL_NONE = 0 ,
  TERMINAL_BOLD = (1 << 0) ,
  TERMINAL_DIM = (1 << 1) ,
  TERMINAL_ITALIC = (1 << 2) ,
  TERMINAL_UNDERLINE = (1 << 3) ,
  TERMINAL_BLINK = (1 << 4) ,
  TERMINAL_INVERSE = (1 << 5) ,
  TERMINAL_HIDDEN = (1 << 6) ,
  TERMINAL_STRIKETHROUGH = (1 << 7)
}
 Terminal flags. More...
 

Functions

window_tterminal_new (display_t *disp)
 Create a new terminal window.
 
void terminal_loop (window_t *win)
 Terminal main loop.