tty.c 1.08 KB
Newer Older
1
/* tty.c */
2
/* Copyright 1999 - Joseph Pranevich */
3 4 5 6 7 8 9 10 11 12 13 14 15

/* This is the console driver for TTY-based consoles, i.e. consoles
   without cursor placement, etc. It's also a pretty decent starting
   point for other driers.
*/

/* When creating new drivers, you need to assign all the functions that
   that driver supports into the driver struct. If it is a supplementary
   driver, it should make sure to perserve the old values. */

#include <stdio.h>
#include "console.h"
#include "config.h"
16
#include "windef.h"
17 18 19 20 21 22 23 24 25 26 27 28 29 30
void TTY_Start()
{
   /* This should be the root driver so we can ignore anything
      already in the struct. */

   driver.norefresh = FALSE;

   driver.write = TTY_Write;
   driver.getKeystroke = TTY_GetKeystroke;
}

void TTY_Write(char output, int fg, int bg, int attribute)
{
   /* We can discard all extended information. */
31
   fprintf(driver.console_out, "%c", output);
32 33
}

Ove Kaaven's avatar
Ove Kaaven committed
34
void TTY_GetKeystroke(char *scan, char *ch)
35 36 37
{
   /* All we have are character input things, nothing for extended */
   /* This is just the TTY driver, after all. We'll cope. */
38
   *ch = fgetc(driver.console_in);
39 40 41
}