DriverTCB
const char* (*td_name)(struct DriverTCB*);
bool (*td_CanHandle)(struct DriverTCB*, const char*, int*);
void (*td_init)(struct DriverTCB*);
void (*td_release)(struct DriverTCB*);
int (*td_size)(struct DriverTCB*, int* Line, int *Cols);
int (*td_sgmode)(struct DriverTCB*, int setFlag, TTY*);
chtype (*td_conattr)(struct DriverTCB*);
int (*td_hwcur)(struct DriverTCB*, int yold, int xold, int y, int x);
int (*td_mode)(struct DriverTCB*, int progFlag, int defFlag);
bool (*td_rescol)(struct DriverTCB*);
bool (*td_rescolors)(struct DriverTCB*);
void (*td_color)(struct DriverTCB*, int fore, int color, int(*)(SCREEN*, int));
int (*td_doBeepOrFlash)(struct DriverTCB*, int);
void (*td_initpair)(struct DriverTCB*, int, int, int);
void (*td_initcolor)(struct DriverTCB*, int, int, int, int);
void (*td_docolor)(struct DriverTCB*, int, int, int, int(*)(SCREEN*, int));
void (*td_initmouse)(struct DriverTCB*);
int (*td_testmouse)(struct DriverTCB*, int EVENTLIST_2nd(_nc_eventlist*));
void (*td_setfilter)(struct DriverTCB*);
void (*td_hwlabel)(struct DriverTCB*, int, char*);
void (*td_hwlabelOnOff)(struct DriverTCB*, int);
int (*td_update)(struct DriverTCB*);
int (*td_defaultcolors)(struct DriverTCB*, int, int);
int (*td_print)(struct DriverTCB*, char*, int);
int (*td_getsize)(struct DriverTCB*, int*, int*);
int (*td_setsize)(struct DriverTCB*, int, int);
void (*td_initacs)(struct DriverTCB*, chtype*, chtype*);
int (*td_twait)(struct DriverTCB*, int, int, int* EVENTLIST_2nd(_nc_eventlist*));
int (*td_read)(struct DriverTCB*, int*);
int (*td_nap)(struct DriverTCB*, int);
int (*td_kpad)(struct DriverTCB*, int);
int (*td_kyOk)(struct DriverTCB*, int, int);
bool (*td_kyExist)(struct DriverTCB*, int);
int (*td_cursorSet)(struct DriverTCB*, int);
struct DriverTCB; /* Terminal Control Block forward declaration */
struct DriverTCB; /* Terminal Control Block forward declaration */
int (*term_driver)(struct DriverTCB*, const char*, int*);