diff --git a/console/.cvsignore b/console/.cvsignore
deleted file mode 100644
index f3c7a7c5da68804a1bdf391127ba34aed33c3cca..0000000000000000000000000000000000000000
--- a/console/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/console/Makefile.in b/console/Makefile.in
deleted file mode 100644
index 77399288e4d2c8e9ba8537cebed3115343da747b..0000000000000000000000000000000000000000
--- a/console/Makefile.in
+++ /dev/null
@@ -1,22 +0,0 @@
-DEFS      = @DLLFLAGS@ -D__WINE__
-TOPSRCDIR = @top_srcdir@
-TOPOBJDIR = ..
-SRCDIR    = @srcdir@
-VPATH     = @srcdir@
-MODULE    = console
-
-C_SRCS = \
-	generic.c \
-	interface.c \
-	ncurses.c \
-	tty.c \
-	xterm.c
-
-all: $(MODULE).o
-
-@MAKE_RULES@
-
-$(MODULE).o: $(OBJS) Makefile.in $(TOPSRCDIR)/Make.rules.in
-	$(LDCOMBINE) $(OBJS) -o $@
-
-### Dependencies:
diff --git a/console/generic.c b/console/generic.c
deleted file mode 100644
index effa6eaae335a830b75ebbc702f88cd758748823..0000000000000000000000000000000000000000
--- a/console/generic.c
+++ /dev/null
@@ -1,201 +0,0 @@
-/*
- * Copyright 1999 - Joseph Pranevich
- *
- * This is a driver to implement, when possible, "high-level"
- * routines using only low level calls. This is to make it possible
- * to have accelerated functions for the individual drivers...
- * or to simply not bother with them.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
- */
-
-/* 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 preserve the old values. */
-
-#include "config.h"
-
-#include <stdio.h>
-
-#include "console.h"
-#include "wine/debug.h"
-
-WINE_DEFAULT_DEBUG_CHANNEL(console);
-
-static void GENERIC_MoveLine(char row1, char row2, char col1, char col2);
-static void GENERIC_ClearLine(char row, char col1, char col2, int bgcolor,
-   int attribute);
-void GENERIC_Start(void)
-{
-   /* Here, we only want to add a driver if there is not one already
-      defined. */
-
-   TRACE("GENERIC_Start\n");
-
-   if (!driver.clearWindow)
-      driver.clearWindow = GENERIC_ClearWindow;
-
-   if (!driver.scrollUpWindow)
-      driver.scrollUpWindow = GENERIC_ScrollUpWindow;
-
-   if (!driver.scrollDownWindow)
-      driver.scrollDownWindow = GENERIC_ScrollDownWindow;
-
-   if (!driver.getCharacter)
-      driver.getCharacter = GENERIC_GetCharacter;
-}
-
-void GENERIC_ClearWindow(char row1, char col1, char row2, char col2, 
-   int bg_color, int attribute)
-{
-   char trow, tcol, x;
-   int old_refresh;
-
-   /* Abort if we have only partial functionality */
-   if (!(driver.getCursorPosition && driver.moveCursor && driver.write))
-      return;
-
-   old_refresh = CONSOLE_GetRefresh();
-   CONSOLE_SetRefresh(FALSE);
-
-   CONSOLE_GetCursorPosition(&trow, &tcol);
-   
-   for (x = row1; x <= row2; x++)
-      GENERIC_ClearLine(x, col1, col2, bg_color, attribute);
-
-   CONSOLE_MoveCursor(trow, tcol);
-
-   CONSOLE_SetRefresh(old_refresh);
-}      
-
-void GENERIC_ScrollUpWindow(char row1, char col1, char row2, char col2, 
-   char lines, int bg_color, int attribute)
-{
-   /* Scroll Up Window: Characters go down */
-
-   char trow, tcol, x;
-   int old_refresh;
-
-   TRACE("Scroll Up %d lines from %d to %d.\n", lines, row1,
-      row2);
-
-   /* Abort if we have only partial functionality */
-   if (!(driver.getCursorPosition && driver.moveCursor && driver.write
-      && driver.getCharacterAtCursor && driver.clearWindow))
-      return;
-   
-   /* Save initial state... */
-   old_refresh = CONSOLE_GetRefresh();
-   CONSOLE_SetRefresh(FALSE);
-   CONSOLE_GetCursorPosition(&trow, &tcol);
-
-   for (x = row1 + lines; x <= row2; x++)
-   {
-      GENERIC_MoveLine(x, x - lines, col1, col2);
-      GENERIC_ClearLine(x, col1, col2, bg_color, attribute);
-   }
-
-   /* Restore State */
-   CONSOLE_MoveCursor(trow, tcol); 
-   CONSOLE_SetRefresh(old_refresh);
-}
-
-void GENERIC_ScrollDownWindow(char row1, char col1, char row2, char col2, 
-   char lines, int bg_color, int attribute)
-{
-   /* Scroll Down Window: Characters go up */
-
-   char trow, tcol, x;
-   int old_refresh;
-
-   /* Abort if we have only partial functionality */
-   if (!(driver.getCursorPosition && driver.moveCursor && driver.write
-      && driver.getCharacterAtCursor && driver.clearWindow))
-      return;
-   
-   /* Save initial state... */
-   old_refresh = CONSOLE_GetRefresh();
-   CONSOLE_SetRefresh(FALSE);
-   CONSOLE_GetCursorPosition(&trow, &tcol);
-
-   for (x = row2; x >= row1 + lines; x--)
-   {
-      GENERIC_MoveLine(x, x + lines, col1, col2);
-      GENERIC_ClearLine(x, col1, col1, bg_color, attribute);
-   }
-
-   /* Restore State */
-   CONSOLE_MoveCursor(trow, tcol); 
-   CONSOLE_SetRefresh(old_refresh);
-}
-
-char GENERIC_GetCharacter()
-{
-   /* Keep getting keys until we get one with a char value */
-   char ch = (char) 0, scan;
-   
-   while (!ch)
-   {
-      CONSOLE_GetKeystroke(&scan, &ch);
-   }
-   return ch;
-}
-
-static void GENERIC_ClearLine(char row, char col1, char col2, int bgcolor,
-   int attribute)
-{
-   /* This function is here to simplify the logic of the scroll and clear
-      functions but may be useful elsewhere. If it can be used from
-      outside here, it should be made non-static */
-
-   char x;
-
-   TRACE("Clear Line: %d from %d to %d (unused: bgcolor %d, attrib %d).\n", row, col1, col2, bgcolor, attribute);
-
-   for (x = col1; x <= col2; x++)
-   {
-      CONSOLE_MoveCursor(row, x);
-      CONSOLE_Write(' ', 0, 0, 0);
-   }
-
-   /* Assume that the calling function will make sure that the cursor is
-   repositioned properly. If this becomes non-static, that will need to be
-   changed. */
-}
-   
-static void GENERIC_MoveLine(char row1, char row2, char col1, char col2)
-{
-   /* This function is here to simplify the logic of the scroll and clear
-      functions but may be useful elsewhere. If it can be used from
-      outside here, it should be made non-static */
-
-   char x;
-   int bg_color, fg_color, attribute;
-   char ch;
-
-   TRACE("Move Line: Move %d to %d.\n", row1, row2);
-
-   for (x = col1; x <= col2; x++)
-   {
-      CONSOLE_MoveCursor(row1, x);
-      CONSOLE_GetCharacterAtCursor(&ch, &fg_color, &bg_color, &attribute);
-      CONSOLE_MoveCursor(row2, x);
-      CONSOLE_Write(ch, fg_color, bg_color, attribute);
-   }
-
-   /* Assume that the calling function will make sure that the cursor is
-   repositioned properly. If this becomes non-static, that will need to be
-   changed. */
-}   
diff --git a/console/interface.c b/console/interface.c
deleted file mode 100644
index 8d64e0cfcea30b33453b78f6163e828118574e06..0000000000000000000000000000000000000000
--- a/console/interface.c
+++ /dev/null
@@ -1,376 +0,0 @@
-/*
- * Copyright 1999 - Joseph Pranevich
- *
- * The primary purpose of this function is to provide CONSOLE_*
- * routines that immediately call the appropriate driver handler.
- * This cleans up code in the individual modules considerably.
- * This could be done using a macro, but additional functionality
- * may be provided here in the future.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
- */
-
-#include "config.h"
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "windef.h"
-#include "console.h"
-#include "options.h"
-
-CONSOLE_device driver;
-
-static int pop_driver(char **, char **, int *);
-
-static int console_initialized = FALSE;
-
-static int CONSOLE_Init(void)
-{
-      char buffer[256];
-      char *single, *drivers = buffer;
-      int length;
-      char initial_rows[5];
-      char initial_columns[5];
-
-      /* Suitable defaults... */
-      driver.console_out = stdout;
-      driver.console_in = stdin;
-
-      /* drivers should be a string that consists of driver names
-         followed by plus (+) signs to denote additions. 
-
-         For example:
-            drivers = tty                Load just the tty driver
-            drivers = ncurses+xterm      Load ncurses then xterm
-
-         The "default" value is just tty.
-      */
-      PROFILE_GetWineIniString( "console", "Drivers", CONSOLE_DEFAULT_DRIVER,
-                                buffer, sizeof(buffer) );
-
-      while (pop_driver(&drivers, &single, &length))
-      {
-         if (!strncmp(single, "tty", length))
-            TTY_Start();
-#ifdef WINE_NCURSES
-         else if (!strncmp(single, "ncurses", length))
-            NCURSES_Start();
-#endif /* WINE_NCURSES */
-         else if (!strncmp(single, "xterm", length))
-            XTERM_Start();
-      }
-
-   /* Read in generic configuration */
-   /* This is primarily to work around a limitation in nxterm where
-      this information is not correctly passed to the ncurses layer
-      through the terminal. At least, I'm not doing it correctly if there
-      is a way. But this serves as a generic way to do the same anyway. */
-
-   /* We are setting this to 80x25 here which is *not* the default for
-      most xterm variants... It is however the standard VGA resolution */
-
-   /* FIXME: We need to be able to be able to specify that the window's
-      dimensions should be used. This is required for correct emulation
-      of Win32's console and Win32's DOS emulation */
-
-   PROFILE_GetWineIniString("console", "InitialRows",
-      "24", initial_rows, 5);
-   PROFILE_GetWineIniString("console", "InitialColumns",
-      "80", initial_columns, 5);
-
-   sscanf(initial_rows, "%d", &driver.y_res);
-   sscanf(initial_columns, "%d", &driver.x_res);
-   
-   GENERIC_Start();
-
-   if (driver.init)
-      driver.init();
-
-   /* Not all terminals let our programs know the proper resolution
-      if the resolution is set on the command-line... */
-   CONSOLE_NotifyResizeScreen(driver.x_res, driver.y_res);
-
-   atexit(CONSOLE_Close);
-
-   /* For now, always return TRUE */
-   return TRUE;
-}
-
-void CONSOLE_Write(char out, int fg_color, int bg_color, int attribute)
-{
-   if (!console_initialized)
-      console_initialized = CONSOLE_Init();
-      
-   if (driver.write)
-   {
-      driver.write(out, fg_color, bg_color, attribute);
-      if (!driver.norefresh)
-         CONSOLE_Refresh();
-   }
-}
-
-void CONSOLE_Close(void)
-{
-   if (driver.close)
-      driver.close();
-}
-
-void CONSOLE_MoveCursor(char row, char col)
-{
-   if (!console_initialized)
-      console_initialized = CONSOLE_Init();
-      
-   if (driver.moveCursor)
-   {
-      driver.moveCursor(row, col);
-      if (!driver.norefresh)
-         CONSOLE_Refresh();
-   }
-}
-
-void CONSOLE_ClearWindow(char row1, char col1, char row2, char col2, 
-   int bg_color, int attribute)
-{
-   if (!console_initialized)
-      console_initialized = CONSOLE_Init();
-      
-   if (driver.clearWindow)
-   {
-      driver.clearWindow(row1, col1, row2, col2, bg_color, attribute);
-      if (!driver.norefresh)
-         CONSOLE_Refresh();
-   }
-}
-
-void CONSOLE_ScrollUpWindow(char row1, char col1, char row2, char col2, 
-   char lines, int bg_color, int attribute)
-{
-   if (!console_initialized)
-      console_initialized = CONSOLE_Init();
-      
-   if (driver.scrollUpWindow)
-   {
-      driver.scrollUpWindow(row1, col1, row2, col2, lines, bg_color, 
-         attribute);
-      if (!driver.norefresh)
-         CONSOLE_Refresh();
-   }
-}
-
-void CONSOLE_ScrollDownWindow(char row1, char col1, char row2, char col2, 
-   char lines, int bg_color, int attribute)
-{
-   if (!console_initialized)
-      console_initialized = CONSOLE_Init();
-      
-   if (driver.scrollDownWindow)
-   {
-      driver.scrollDownWindow(row1, col1, row2, col2, lines, bg_color, 
-         attribute);
-      if (!driver.norefresh)
-         CONSOLE_Refresh();
-   }
-}
-
-int CONSOLE_CheckForKeystroke(char *scan, char *ascii)
-/* These functions need to go through a conversion layer. Scancodes
-   should *not* be determined by the driver, rather they should have
-   a conv_* function in int16.c. Yuck. */
-{
-   if (!console_initialized)
-      console_initialized = CONSOLE_Init();
-      
-   if (driver.checkForKeystroke)
-      return driver.checkForKeystroke(scan, ascii);
-   else
-      return FALSE;
-}
-
-void CONSOLE_GetKeystroke(char *scan, char *ascii)
-{
-   if (!console_initialized)
-      console_initialized = CONSOLE_Init();
-      
-   if (driver.getKeystroke)
-      driver.getKeystroke(scan, ascii);
-}
-
-void CONSOLE_GetCursorPosition(char *row, char *col)
-{
-   if (!console_initialized)
-      console_initialized = CONSOLE_Init();
-      
-   if (driver.getCursorPosition)
-      driver.getCursorPosition(row, col);
-}
-
-void CONSOLE_GetCharacterAtCursor(char *ch, int *fg, int *bg, int *a)
-{
-   if (!console_initialized)
-      console_initialized = CONSOLE_Init();
-      
-   if (driver.getCharacterAtCursor)
-      driver.getCharacterAtCursor(ch, fg, bg, a);
-}
-
-void CONSOLE_Refresh()
-{
-   if (!console_initialized)
-      console_initialized = CONSOLE_Init();
-      
-   if (driver.refresh)
-      driver.refresh();
-}
-
-int CONSOLE_AllocColor(int color)
-{
-   if (!console_initialized)
-      console_initialized = CONSOLE_Init();
-      
-   if (driver.allocColor)
-      return driver.allocColor(color);
-   else 
-      return 0;
-}
-
-void CONSOLE_ClearScreen()
-{
-   if (!console_initialized)
-      console_initialized = CONSOLE_Init();
-      
-   if (driver.clearScreen)
-   {
-      driver.clearScreen();
-      if (!driver.norefresh)
-         CONSOLE_Refresh();
-   }
-}
-
-char CONSOLE_GetCharacter()
-{
-   if (!console_initialized)
-      console_initialized = CONSOLE_Init();
-      
-   /* I'm not sure if we need this really. This is a function that can be
-      accelerated that returns the next *non extended* keystroke */
-   if (driver.getCharacter)
-      return driver.getCharacter();
-   else
-      return (char) 0; /* Sure, this will probably break programs... */
-}
-
-void CONSOLE_ResizeScreen(int x, int y)
-{
-   if (!console_initialized)
-      console_initialized = CONSOLE_Init();
-      
-   if (driver.resizeScreen)
-      driver.resizeScreen(x, y);
-}
-
-void CONSOLE_NotifyResizeScreen(int x, int y)
-{
-   if (driver.notifyResizeScreen)
-      driver.notifyResizeScreen(x, y);
-}
-
-void CONSOLE_SetBackgroundColor(int fg, int bg)
-{
-   if (!console_initialized)
-      console_initialized = CONSOLE_Init();
-      
-   if (driver.setBackgroundColor)
-      driver.setBackgroundColor(fg, bg);
-}
-
-void CONSOLE_GetBackgroundColor(int *fg, int *bg)
-{
-   if (!console_initialized)
-      console_initialized = CONSOLE_Init();
-      
-   if (driver.getBackgroundColor)
-      driver.getBackgroundColor(fg, bg);
-}
-
-void CONSOLE_WriteRawString(char *str)
-{
-   if (!console_initialized)
-      console_initialized = CONSOLE_Init();
-      
-   /* This is a special function that is only for internal use and 
-      does not actually call any of the console drivers. It's 
-      primary purpose is to provide a way for higher-level drivers
-      to write directly to the underlying terminal without worry that
-      there will be any retranslation done by the assorted drivers. Care
-      should be taken to ensure that this only gets called when the thing
-      written does not actually produce any output or a CONSOLE_Redraw()
-      is called immediately afterwards.
-      CONSOLE_Redraw() is not yet implemented.
-   */
-   fprintf(driver.console_out, "%s", str);
-}
-
-/* This function is only at the CONSOLE level. */
-/* Admittably, calling the variable norefresh might be a bit dumb...*/
-void CONSOLE_SetRefresh(int setting)
-{
-   if (setting)
-      driver.norefresh = FALSE;
-   else
-      driver.norefresh = TRUE;
-}
-
-/* This function is only at the CONSOLE level. */
-int CONSOLE_GetRefresh()
-{
-   if (driver.norefresh)
-      return FALSE;
-   else 
-      return TRUE;
-}
-
-
-/* Utility functions... */
-
-int pop_driver(char **drivers, char **single, int *length)
-{
-   /* Take the string in drivers and extract the first "driver" entry */
-   /* Advance the pointer in drivers to the next entry, put the origional
-      pointer in single, and put the length in length. */
-   /* Return TRUE if we found one */
-
-   if (!*drivers)
-      return FALSE;
-
-   *single = *drivers;
-   *length = 0;
-
-   while ((*drivers[0] != '\0') && (*drivers[0] != '+'))
-   {
-      (*drivers)++;
-      (*length)++;
-   }
-   
-   while (*drivers[0] == '+')
-      (*drivers)++;
-
-   if (*length)
-      return TRUE;
-   else
-      return FALSE;
-      
-}
diff --git a/console/ncurses.c b/console/ncurses.c
deleted file mode 100644
index 72b073d738d0fda7c2465456983fecfe9fc4d69c..0000000000000000000000000000000000000000
--- a/console/ncurses.c
+++ /dev/null
@@ -1,300 +0,0 @@
-/*
- * Copyright 1999 - Joseph Pranevich
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
- */
-
-#include "config.h"
-
-#include <stdio.h>
-
-#include "console.h"	/* Must define WINE_NCURSES */
-
-#ifdef WINE_NCURSES
-
-/* This is the console driver for systems that support the ncurses
-   interface. 
-*/
-
-/* Actually, this should work for curses, as well. But there may be
-   individual functions that are unsupported in plain curses or other
-   variants. Those should be detected and special-cased by autoconf. 
-*/
-
-/* 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 "wine/debug.h"
-#include "options.h"
-
-WINE_DEFAULT_DEBUG_CHANNEL(console);
-
-#undef ERR /* Use ncurses's err() */
-#ifdef HAVE_NCURSES_H
-# include <ncurses.h>
-#else
-# ifdef HAVE_CURSES_H
-#  include <curses.h>
-# endif
-#endif
-
-SCREEN *ncurses_screen;
-
-static int get_color_pair(int fg_color, int bg_color);
-
-const char *color_names[] = {"null", "black", "blue", "green",
-   "cyan", "magenta", "brown", "red", "light gray", "dark gray",
-   "light blue", "light green", "light red", "light magenta",
-   "light cyan", "yellow", "white"};
-
-void NCURSES_Start()
-{
-   /* This should be the root driver so we can ignore anything
-      already in the struct. */
-
-   driver.norefresh = FALSE;
-
-   driver.init = NCURSES_Init;
-   driver.write = NCURSES_Write;
-   driver.close = NCURSES_Close;
-   driver.moveCursor = NCURSES_MoveCursor;
-   driver.getCursorPosition = NCURSES_GetCursorPosition;
-   driver.getCharacterAtCursor = NCURSES_GetCharacterAtCursor;
-   driver.clearScreen = NCURSES_ClearScreen;
-   driver.allocColor = NCURSES_AllocColor;
-#ifdef HAVE_GETBKGD
-   driver.setBackgroundColor = NCURSES_SetBackgroundColor;
-#endif   
-#ifdef HAVE_RESIZETERM
-   driver.notifyResizeScreen = NCURSES_NotifyResizeScreen;
-#endif /* HAVE_RESIZETERM */
-
-   driver.checkForKeystroke = NCURSES_CheckForKeystroke;
-   driver.getKeystroke = NCURSES_GetKeystroke;
-
-   driver.refresh = NCURSES_Refresh; 
-}
-
-void NCURSES_Init()
-{
-   char terminal_type[80];
-
-   PROFILE_GetWineIniString("console", "TerminalType",
-      "xterm", terminal_type, 79);
-
-   ncurses_screen = newterm(terminal_type, driver.console_out,
-      driver.console_in);
-   set_term(ncurses_screen);
-   start_color();
-   raw();
-   noecho();
-   nonl();
-   intrflush(stdscr, FALSE);
-   keypad(stdscr, TRUE);
-   nodelay(stdscr, TRUE);
-}
-
-void NCURSES_Write(char output, int fg, int bg, int attribute)
-{
-   char row, col;
-   int pair;
-   
-   if (!fg)
-      fg = COLOR_WHITE; /* Default */
-
-   if (!bg)
-      bg = COLOR_BLACK; /* Default */
-
-   pair = get_color_pair(fg, bg);
-
-   if (waddch(stdscr, output | COLOR_PAIR(pair)) == ERR)
-   {
-      NCURSES_GetCursorPosition(&row, &col);
-      FIXME("NCURSES: waddch() failed at %d, %d.\n", row, col);
-   }
-}
-
-void NCURSES_Close()
-{
-   endwin();
-}
-
-void NCURSES_GetKeystroke(char *scan, char *ascii)
-{
-   while (!NCURSES_CheckForKeystroke(scan, ascii))
-   {} /* Wait until keystroke is detected */
-   
-   /* When it is detected, we will already have the right value 
-      in scan and ascii, but we need to take this keystroke
-      out of the buffer. */
-   wgetch(stdscr);
-}
-
-int NCURSES_CheckForKeystroke(char *scan, char *ascii)
-{
-   /* We don't currently support scan codes here */
-   /* FIXME */
-   int temp;
-   temp = wgetch(stdscr);
-   if (temp == ERR)
-   {
-      return FALSE;
-   }
-   else
-   {
-      ungetch(temp);  /* Keystroke not removed from buffer */
-      *ascii = (char) temp;
-      return TRUE;
-   }
-}
-
-void NCURSES_MoveCursor(char row, char col)
-{
-   if (wmove(stdscr, row, col) == ERR)
-      FIXME("NCURSES: wmove() failed to %d, %d.\n", row, col);
-}
-
-void NCURSES_GetCursorPosition(char *row, char *col)
-{
-   int trow, tcol;
-
-   getyx(stdscr, trow, tcol); /* MACRO, no need to pass pointer */
-
-   *row = (char) trow;
-   *col = (char) tcol;
-}
-
-void NCURSES_GetCharacterAtCursor(char *ch, int *fg_color, int
-   *bg_color, int *attribute)
-{
-   /* If any of the pointers are NULL, ignore them */
-   /* We will eventually have to convert the color data */
-   if (ch)
-      *ch = (char) winch(stdscr);
-   if (fg_color)
-      *fg_color = WINE_WHITE;
-   if (bg_color)
-      *bg_color = WINE_BLACK;
-   if (attribute)
-      *attribute = 0;
-}
-
-void NCURSES_Refresh()
-{
-   wrefresh(stdscr);
-}
-
-void NCURSES_ClearScreen()
-{
-   werase(stdscr);
-}
-
-int NCURSES_AllocColor(int color)
-{
-   /* Currently support only internal colors */
-   switch (color)
-   {
-      case WINE_BLACK:		return COLOR_BLACK;
-      case WINE_WHITE:		return COLOR_WHITE;
-      case WINE_RED:		return COLOR_RED;
-      case WINE_GREEN:		return COLOR_GREEN;
-      case WINE_YELLOW:		return COLOR_YELLOW;
-      case WINE_BLUE:     	return COLOR_BLUE;
-      case WINE_MAGENTA:	return COLOR_MAGENTA;
-      case WINE_CYAN:		return COLOR_CYAN;
-   }
-
-   FIXME("Unable to allocate color %d (%s)\n", color,
-      color_names[color]);
-
-   /* Don't allocate a color... yet */
-   return 0;
-}
-
-void NCURSES_SetBackgroundColor(int fg, int bg)
-{
-   int pair;
-
-   pair = get_color_pair(fg, bg);
-
-   wbkgd(stdscr, COLOR_PAIR(pair));
-}
-
-#ifdef HAVE_GETBKGD
-void NCURSES_GetBackgroundColor(int *fg, int *bg)
-{
-   chtype background;
-   short pair, sfg, sbg;
-     
-   background = getbkgd(stdscr);
-
-   pair = (!A_CHARTEXT & background);
-   
-   pair_content(pair, &sfg, &sbg);
-
-   *fg = sfg;
-   *bg = sbg;
-}
-#endif /* HAVE_GETBKGD */
-
-#ifdef HAVE_RESIZETERM
-
-void NCURSES_NotifyResizeScreen(int x, int y)
-{
-   /* Note: This function gets called *after* another driver in the chain
-      calls ResizeScreen(). It is meant to resize the ncurses internal
-      data structures to know about the new window dimensions. */
- 
-   TRACE("Terminal resized to y: %d, x: %d\n", y, x);
-
-   resizeterm(y, x);
-}
-
-#endif /* HAVE_RESIZETERM */
-
-static int get_color_pair(int fg_color, int bg_color)
-{
-   /* ncurses internally uses "color pairs" in addition to the "pallet" */
-   /* This isn't the best way to do this. Or even close */
-
-   static int current = 0;
-   static int fg[255];     /* 16 x 16 is enough */
-   static int bg[255];
-   int x;
-
-   /* The first pair is hardwired into ncurses */
-   fg[0] = COLOR_WHITE;
-   bg[0] = COLOR_BLACK;
-
-   for (x = 0; x <= current; x++)
-   {
-      if ((fg_color == fg[x]) && (bg_color == bg[x]))
-      {
-         TRACE("Color pair: already allocated\n");
-         return x;  
-      }    
-   }
-
-   /* Need to allocate new color */
-   current++;
-   fg[current] = fg_color;
-   bg[current] = bg_color;
-   TRACE("Color pair: allocated.\n");
-   return init_pair(current, fg_color, bg_color);
-}
-
-#endif /* WINE_NCURSES */
diff --git a/console/tty.c b/console/tty.c
deleted file mode 100644
index 278d5f85fbf12cbbd9cdf5e8ce1409590bfa6ab8..0000000000000000000000000000000000000000
--- a/console/tty.c
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * Copyright 1999 - Joseph Pranevich
- *
- * 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 drivers.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
- */
-
-/* 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 "config.h"
-
-#include <stdio.h>
-
-#include "console.h"
-#include "windef.h"
-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. */
-   fprintf(driver.console_out, "%c", output);
-}
-
-void TTY_GetKeystroke(char *scan, char *ch)
-{
-   /* All we have are character input things, nothing for extended */
-   /* This is just the TTY driver, after all. We'll cope. */
-   *ch = fgetc(driver.console_in);
-}
-
-
diff --git a/console/xterm.c b/console/xterm.c
deleted file mode 100644
index d74d9caf20fd7494ba9131423462363860da9a4c..0000000000000000000000000000000000000000
--- a/console/xterm.c
+++ /dev/null
@@ -1,188 +0,0 @@
-/*
- * Copyright 1999 - Joseph Pranevich
- *
- * This "driver" is designed to go on top of an existing driver
- * to provide support for features only present if using an
- * xterm or compatible program for your console output. 
- * Currently, it supports resizing and separating debug messages from
- * program output.
- * It does not currently support changing the title bar.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
- */
-
-#include "config.h"
-#include "wine/port.h"
-
-#include <stdlib.h>
-#include <stdio.h>
-#include <signal.h>
-#include <sys/ioctl.h>
-#include <fcntl.h>
-#include <unistd.h>
-#include <termios.h>
-#ifdef HAVE_LIBUTIL_H
-# include <libutil.h>
-#endif
-#ifdef HAVE_PTY_H
-# include <pty.h>
-#endif
-
-#include "console.h"
-#include "options.h"
-#include "wine/debug.h"
-
-WINE_DEFAULT_DEBUG_CHANNEL(console);
-
-char console_xterm_prog[80];
-
-static BOOL wine_create_console(FILE **master, FILE **slave, pid_t *pid);
-
-/* The console -- I chose to keep the master and slave
- * (UNIX) file descriptors around in case they are needed for
- * ioctls later.  The pid is needed to destroy the xterm on close
- */
-typedef struct _XTERM_CONSOLE {
-        FILE    *master;                 /* xterm side of pty */
-        FILE    *slave;                  /* wine side of pty */
-        pid_t    pid;                    /* xterm's pid, -1 if no xterm */
-} XTERM_CONSOLE;
-
-static XTERM_CONSOLE xterm_console;
-
-CONSOLE_device chain;
-FILE *old_in, *old_out;
-
-void XTERM_Start(void)
-{
-   /* Here, this is a supplementary driver so we should remember to call
-      the chain. */
-   chain.init = driver.init;
-   driver.init = XTERM_Init;
-
-   chain.close = driver.close;
-   driver.close = XTERM_Close;
-
-   chain.resizeScreen = driver.resizeScreen;
-   driver.resizeScreen = XTERM_ResizeScreen;
-
-   /* Read in driver configuration */
-   PROFILE_GetWineIniString("console", "XtermProg",
-      "xterm", console_xterm_prog, 79); 
-
-}
-
-void XTERM_Init()
-{
-   wine_create_console(&xterm_console.master, &xterm_console.slave,
-      &xterm_console.pid);
-
-   old_in = driver.console_in;
-   driver.console_in = xterm_console.slave;
-
-   old_out = driver.console_out;
-   driver.console_out = xterm_console.slave;
-
-   /* Then call the chain... */
-   if (chain.init)
-      chain.init();
-}
-
-void XTERM_Close()
-{
-   /* Call the chain first... */
-   if (chain.close)
-      chain.close();
-
-   driver.console_in = old_in;
-   driver.console_out = old_out;
-
-   /* make sure a xterm exists to kill */
-   if (xterm_console.pid != -1) {
-      kill(xterm_console.pid, SIGTERM);
-   }
-}
-
-void XTERM_ResizeScreen(int x, int y)
-{
-   char temp[100];
-
-   /* Call the chain first, there shoudln't be any... */
-   if (chain.resizeScreen)
-      chain.resizeScreen(x, y);
-
-   sprintf(temp, "\x1b[8;%d;%dt", y, x);
-   CONSOLE_WriteRawString(temp);
-
-   CONSOLE_NotifyResizeScreen(x, y);
-}
-
-
-static BOOL wine_create_console(FILE **master, FILE **slave, pid_t *pid)
-{
-        /* There is definately a bug in this routine that causes a lot
-           of garbage to be written to the screen, but I can't find it...
-        */
-        struct termios term;
-        char buf[1024];
-        char c = '\0';
-        int status = 0;
-        int i;
-        int tmaster, tslave;
-        char xterm_resolution[10];
-
-        sprintf(xterm_resolution, "%dx%d", driver.x_res,
-           driver.y_res);
-
-        if (tcgetattr(0, &term) < 0) return FALSE;
-        term.c_lflag |= ICANON;
-        term.c_lflag &= ~ECHO;
-        if (openpty(&tmaster, &tslave, NULL, &term, NULL) < 0)
-           return FALSE;
-        *master = fdopen(tmaster, "r+");
-        *slave = fdopen(tslave, "r+");
-
-        if ((*pid=fork()) == 0) {
-                tcsetattr(fileno(*slave), TCSADRAIN, &term);
-                sprintf(buf, "-Sxx%d", fileno(*master));
-                execlp(console_xterm_prog, console_xterm_prog, buf, "-fg",
-                   "white", "-bg", "black", "-g",
-                   xterm_resolution, NULL);
-                ERR("error creating xterm (file not found?)\n");
-                exit(1);
-        }
-
-        /* most xterms like to print their window ID when used with -S;
-         * read it and continue before the user has a chance...
-         * NOTE: this is the reason we started xterm with ECHO off,
-         * we'll turn it back on below
-         */
-
-        for (i=0; c!='\n'; (status=fread(&c, 1, 1, *slave)), i++) {
-                if (status == -1 && c == '\0') {
-                                /* wait for xterm to be created */
-                        usleep(100);
-                }
-                if (i > 10000) {
-                        WARN("can't read xterm WID\n");
-                        kill(*pid, SIGKILL);
-                        return FALSE;
-                }
-        }
-        term.c_lflag |= ECHO;
-        tcsetattr(fileno(*master), TCSADRAIN, &term);
-
-        return TRUE;
-}
diff --git a/dlls/winedos/Makefile.in b/dlls/winedos/Makefile.in
index 963f707280d162836b60d4ad7bd4ebd6f606a0c7..168e76b13c54ee4c0f0d15c3db4a3c3c7804d161 100644
--- a/dlls/winedos/Makefile.in
+++ b/dlls/winedos/Makefile.in
@@ -4,7 +4,6 @@ SRCDIR    = @srcdir@
 VPATH     = @srcdir@
 MODULE    = winedos.dll
 IMPORTS   = user32.dll kernel32.dll ntdll.dll
-EXTRALIBS = @CURSESLIBS@ @UTILLIBS@
 
 C_SRCS = \
 	dosaspi.c \
@@ -26,15 +25,6 @@ C_SRCS = \
 	vga.c \
 	xms.c
 
-EXTRA_OBJS = \
-	$(TOPOBJDIR)/console/console.o
-
-SUBDIRS = \
-	$(TOPOBJDIR)/console
-
 @MAKE_DLL_RULES@
 
-$(EXTRA_OBJS): dummy
-	@cd `dirname $@` && $(MAKE) `basename $@`
-
 ### Dependencies:
diff --git a/dlls/winedos/int10.c b/dlls/winedos/int10.c
index 3526c38f2a40c49c796be77eb3f91aeda5be6505..5cc56cfc9632943479e5da6d618fa2053f33d7bd 100644
--- a/dlls/winedos/int10.c
+++ b/dlls/winedos/int10.c
@@ -26,7 +26,6 @@
 #include "miscemu.h"
 #include "vga.h"
 #include "wine/debug.h"
-#include "console.h"
 #include "dosexe.h"
 
 WINE_DEFAULT_DEBUG_CHANNEL(int);
diff --git a/dlls/winedos/int21.c b/dlls/winedos/int21.c
index d6ff053ef2c46ccd2f4222b1eb2878eed1bb7d60..b4ea1c0e8d4d1658bfdc3bacbc5065ab0a84f700 100644
--- a/dlls/winedos/int21.c
+++ b/dlls/winedos/int21.c
@@ -31,7 +31,6 @@
 #include "dosexe.h"
 #include "miscemu.h"
 #include "msdos.h"
-#include "console.h"
 #include "file.h"
 #include "wine/debug.h"
 
diff --git a/dlls/winedos/int29.c b/dlls/winedos/int29.c
index 97dfedac3f08a43c42a8ab476d1822e8485311d2..4b9f7777768d459cb0973871af4e9ae8f4b3d3d3 100644
--- a/dlls/winedos/int29.c
+++ b/dlls/winedos/int29.c
@@ -22,7 +22,6 @@
 
 #include "winnt.h"
 
-#include "console.h"
 #include "miscemu.h"
 #include "dosexe.h"
 
diff --git a/include/console.h b/include/console.h
deleted file mode 100644
index 9c8589798ed89bbaa0bcd52ebd2a8e87748b4c56..0000000000000000000000000000000000000000
--- a/include/console.h
+++ /dev/null
@@ -1,170 +0,0 @@
-/*
- * Include file for definitions pertaining to Wine's text-console
- * interface.
- *
- * Copyright 1998 - Joseph Pranevich
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
- */
-
-#ifndef __WINE_CONSOLE_H
-#define __WINE_CONSOLE_H
-
-#ifndef __WINE_CONFIG_H 
-# error You must include config.h to use this header 
-#endif 
-
-#include <stdio.h>
-
-/* Can we compile with curses/ncurses? */
-#if (	(defined(HAVE_LIBNCURSES) || defined(HAVE_LIBCURSES)) &&	\
-	(defined(HAVE_CURSES_H) || defined(HAVE_NCURSES_H))		\
-)
-# define WINE_NCURSES
-#else
-# undef WINE_NCURSES
-#endif
-
-#define CONSOLE_DEFAULT_DRIVER "tty"
-
-typedef struct CONSOLE_DRIVER
-{
-   void (*init)(void);
-   void (*close)(void);
-   void (*write)(char, int, int, int);
-   void (*moveCursor)(char, char);
-   void (*getCursorPosition)(char *, char *);
-   void (*getCharacterAtCursor)(char *, int *, int *, int *);
-   void (*clearScreen)(void);
-
-   /* Color-control functions */
-   int  (*allocColor)(int color);
-   void (*setBackgroundColor)(int fg, int bg);
-   void (*getBackgroundColor)(int *fg, int *bg);
-
-   /* Keyboard Functions */
-   int  (*checkForKeystroke)(char *, char *);
-   void (*getKeystroke)(char *, char *);
-
-   /* Windowing Functions */
-   void (*resizeScreen)(int, int);
-   void (*notifyResizeScreen)(int, int); /* May be rethought later... */
-
-   /* Accelerator Functions (Screen) */
-   void (*clearWindow)(char, char, char, char, int, int);
-   void (*scrollUpWindow)(char, char, char, char, char, int, int);
-   void (*scrollDownWindow)(char, char, char, char, char, int, int);
-
-   /* Accelerator Functions (Keyboard) */
-   char (*getCharacter)(void);
-
-   /* Other functions */
-   void (*refresh)(void);
-   
-   /* Other data */
-   int norefresh;
-   FILE *console_out;
-   FILE *console_in;
-   int x_res;
-   int y_res;
-
-} CONSOLE_device;
-
-extern CONSOLE_device driver; /* Global driver struct */
-
-/* Generic defines */
-void CONSOLE_Close(void);
-void CONSOLE_Write(char out, int fg_color, int bg_color, int attribute);
-void CONSOLE_MoveCursor(char row, char col);
-void CONSOLE_ClearWindow(char, char, char, char, int, int);
-void CONSOLE_ScrollUpWindow(char, char, char, char, char, int, int);
-void CONSOLE_ScrollDownWindow(char, char, char, char, char, int, int);
-int  CONSOLE_CheckForKeystroke(char *, char*);
-void CONSOLE_GetKeystroke(char *, char *);
-void CONSOLE_GetCursorPosition(char *, char *);
-void CONSOLE_GetCharacterAtCursor(char *, int *, int *, int *);
-void CONSOLE_Refresh(void);
-void CONSOLE_SetRefresh(int);
-int  CONSOLE_GetRefresh(void);
-void CONSOLE_ClearScreen(void);
-char CONSOLE_GetCharacter(void);
-void CONSOLE_ResizeScreen(int, int);
-void CONSOLE_NotifyResizeScreen(int, int); 
-void CONSOLE_WriteRawString(char *);
-int  CONSOLE_AllocColor(int);
-void CONSOLE_SetBackgroundColor(int fg, int bg);
-void CONSOLE_GetBackgroundColor(int *fg, int *bg);
-
-/* Generic Defines */
-void GENERIC_Start(void);
-void GENERIC_ClearWindow(char, char, char, char, int, int);
-void GENERIC_ScrollUpWindow(char, char, char, char, char, int, int);
-void GENERIC_ScrollDownWindow(char, char, char, char, char, int, int);
-char GENERIC_GetCharacter(void);
-
-/* TTY specific defines */
-void TTY_Write(char out, int fg_color, int bg_color, int attribute);
-void TTY_Start(void);
-void TTY_GetKeystroke(char *, char *);
-
-#ifdef WINE_NCURSES
-
-/* ncurses defines */
-void NCURSES_Write(char out, int fg_color, int bg_color, int attribute);
-void NCURSES_Start(void);
-void NCURSES_Init(void);
-void NCURSES_Close(void);
-int  NCURSES_CheckForKeystroke(char *, char *);
-void NCURSES_GetKeystroke(char *, char *);
-void NCURSES_MoveCursor(char ,char);
-void NCURSES_GetCursorPosition(char *, char *);
-void NCURSES_GetCharacterAtCursor(char *, int *, int *, int *);
-void NCURSES_Refresh(void);
-void NCURSES_ClearScreen(void);
-void NCURSES_NotifyResizeScreen(int x, int y);
-int  NCURSES_AllocColor(int);
-void NCURSES_SetBackgroundColor(int fg, int bg);
-void NCURSES_GetBackgroundColor(int *fg, int *bg);
-
-#endif /* WINE_NCURSES */
-
-/* Xterm specific defines */
-void XTERM_Start(void);
-void XTERM_Close(void);
-void XTERM_Init(void);
-void XTERM_ResizeScreen(int x, int y);
-
-/* Color defines */
-/* These will eventually be hex triples for dynamic allocation */
-/* Triplets added by A.C. and commented out until the support  */
-/* code can be written into the console routines.              */
-#define WINE_BLACK		1     /*    0x000000      */ 
-#define WINE_BLUE		2     /*    0x0000ff      */
-#define WINE_GREEN		3     /*    0x008000      */
-#define WINE_CYAN		4     /*    0x00eeee      */
-#define WINE_MAGENTA		5     /*    0xcd00cd      */
-#define WINE_BROWN		6     /*    0xcd3333      */
-#define WINE_RED		7     /*    0xff0000      */
-#define WINE_LIGHT_GRAY		8     /*    0xc0c0c0      */
-#define WINE_DARK_GRAY		9     /*    0x808080      */
-#define WINE_LIGHT_BLUE		10    /*    0x98f5ff      */
-#define WINE_LIGHT_GREEN	11    /*    0x00ff00      */
-#define WINE_LIGHT_RED		12    /*    0xee6363      */
-#define WINE_LIGHT_MAGENTA	13    /*    0xff00ff      */
-#define WINE_LIGHT_CYAN		14    /*    0x00ffff      */
-#define WINE_YELLOW		15    /*    0xffff00      */
-#define WINE_WHITE		16    /*    0xffffff      */
-
-#endif /* CONSOLE_H */