krnl386: Remove support for VGA emulation.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Alexandre Julliard 2018-02-02 12:43:25 +01:00
parent 5ec5449596
commit 33b2d8521c
8 changed files with 3 additions and 3668 deletions

View File

@ -1,7 +1,7 @@
MODULE = krnl386.exe16
IMPORTLIB = kernel
IMPORTS = winecrt0 kernel32 ntdll
DELAYIMPORTS = ddraw dsound user32
DELAYIMPORTS = dsound user32
EXTRADLLFLAGS = -m16 -nodefaultlibs -Wb,--dll-name,kernel
C_SRCS = \
@ -15,7 +15,6 @@ C_SRCS = \
fpu.c \
global.c \
instr.c \
int10.c \
int13.c \
int15.c \
int21.c \
@ -40,7 +39,6 @@ C_SRCS = \
task.c \
thunk.c \
utthunk.c \
vga.c \
vxd.c \
wowthunk.c

View File

@ -259,10 +259,6 @@ extern void WINAPI DOSVM_Int3cHandler(CONTEXT*) DECLSPEC_HIDDEN;
extern void WINAPI DOSVM_Int3dHandler(CONTEXT*) DECLSPEC_HIDDEN;
extern void WINAPI DOSVM_Int3eHandler(CONTEXT*) DECLSPEC_HIDDEN;
/* int10.c */
extern void WINAPI DOSVM_Int10Handler(CONTEXT*) DECLSPEC_HIDDEN;
extern void DOSVM_PutChar(BYTE ascii) DECLSPEC_HIDDEN;
/* int13.c */
extern void WINAPI DOSVM_Int13Handler(CONTEXT*) DECLSPEC_HIDDEN;

File diff suppressed because it is too large Load Diff

View File

@ -4083,7 +4083,6 @@ void WINAPI DOSVM_Int21Handler( CONTEXT *context )
case 0x02: /* WRITE CHARACTER TO STANDARD OUTPUT */
TRACE("Write Character to Standard Output\n");
DOSVM_PutChar(DL_reg(context));
break;
case 0x03: /* READ CHARACTER FROM STDAUX */
@ -4104,7 +4103,6 @@ void WINAPI DOSVM_Int21Handler( CONTEXT *context )
else
{
TRACE("Direct Console Output\n");
DOSVM_PutChar(DL_reg(context));
/*
* At least DOS versions 2.1-7.0 return character
* that was written in AL register.

View File

@ -40,7 +40,6 @@ static void WINAPI DOSVM_Int17Handler(CONTEXT*);
static void WINAPI DOSVM_Int19Handler(CONTEXT*);
static void WINAPI DOSVM_Int1aHandler(CONTEXT*);
static void WINAPI DOSVM_Int20Handler(CONTEXT*);
static void WINAPI DOSVM_Int29Handler(CONTEXT*);
static void WINAPI DOSVM_Int2aHandler(CONTEXT*);
static void WINAPI DOSVM_Int41Handler(CONTEXT*);
static void WINAPI DOSVM_Int4bHandler(CONTEXT*);
@ -55,13 +54,13 @@ static const INTPROC DOSVM_VectorsBuiltin[] =
/* 04 */ 0, 0, 0, 0,
/* 08 */ 0, 0, 0, 0,
/* 0C */ 0, 0, 0, 0,
/* 10 */ DOSVM_Int10Handler, DOSVM_Int11Handler, DOSVM_Int12Handler, DOSVM_Int13Handler,
/* 10 */ 0, DOSVM_Int11Handler, DOSVM_Int12Handler, DOSVM_Int13Handler,
/* 14 */ 0, DOSVM_Int15Handler, 0, DOSVM_Int17Handler,
/* 18 */ 0, DOSVM_Int19Handler, DOSVM_Int1aHandler, 0,
/* 1C */ 0, 0, 0, 0,
/* 20 */ DOSVM_Int20Handler, DOSVM_Int21Handler, 0, 0,
/* 24 */ 0, DOSVM_Int25Handler, DOSVM_Int26Handler, 0,
/* 28 */ 0, DOSVM_Int29Handler, DOSVM_Int2aHandler, 0,
/* 28 */ 0, 0, DOSVM_Int2aHandler, 0,
/* 2C */ 0, 0, 0, DOSVM_Int2fHandler,
/* 30 */ 0, DOSVM_Int31Handler, 0, 0,
/* 34 */ DOSVM_Int34Handler, DOSVM_Int35Handler, DOSVM_Int36Handler, DOSVM_Int37Handler,
@ -797,18 +796,6 @@ static void WINAPI DOSVM_Int20Handler( CONTEXT *context )
}
/**********************************************************************
* DOSVM_Int29Handler
*
* Handler for int 29h (fast console output)
*/
static void WINAPI DOSVM_Int29Handler( CONTEXT *context )
{
/* Yes, it seems that this is really all this interrupt does. */
DOSVM_PutChar(AL_reg(context));
}
/**********************************************************************
* DOSVM_Int2aHandler
*

View File

@ -54,7 +54,6 @@
#include "winternl.h"
#include "kernel16_private.h"
#include "dosexe.h"
#include "vga.h"
#include "wine/unicode.h"
#include "wine/debug.h"
@ -843,46 +842,6 @@ DWORD DOSVM_inport( int port, int size )
case 0x22e:
res = (DWORD)SB_ioport_in( port );
break;
/* VGA read registers */
case 0x3b4: /* CRT Controller Register - Index (MDA) */
case 0x3b5: /* CRT Controller Register - Other (MDA) */
case 0x3ba: /* General Register - Input status 1 (MDA) */
case 0x3c0: /* Attribute Controller - Address */
case 0x3c1: /* Attribute Controller - Other */
case 0x3c2: /* General Register - Input status 0 */
case 0x3c3: /* General Register - Video subsystem enable */
case 0x3c4: /* Sequencer Register - Address */
case 0x3c5: /* Sequencer Register - Other */
case 0x3c6:
case 0x3c7: /* General Register - DAC State */
case 0x3c8:
case 0x3c9:
case 0x3ca: /* General Register - Feature control */
case 0x3cb:
case 0x3cc: /* General Register - Misc output */
case 0x3cd:
case 0x3ce: /* Graphics Controller Register - Address */
case 0x3cf: /* Graphics Controller Register - Other */
case 0x3d0:
case 0x3d1:
case 0x3d2:
case 0x3d3:
case 0x3d4: /* CRT Controller Register - Index (CGA) */
case 0x3d5: /* CRT Controller Register - Other (CGA) */
case 0x3d6:
case 0x3d7:
case 0x3d8:
case 0x3d9:
case 0x3da:
case 0x3db:
case 0x3dc:
case 0x3dd:
case 0x3de:
case 0x3df:
if (size > 1)
FIXME("Trying to read more than one byte from VGA!\n");
res = (DWORD)VGA_ioport_in( port );
break;
case 0x00:
case 0x01:
case 0x02:
@ -1080,51 +1039,6 @@ void DOSVM_outport( int port, int size, DWORD value )
case 0x22c:
SB_ioport_out( port, (BYTE)value );
break;
/* VGA Write registers */
case 0x3b4: /* CRT Controller Register - Index (MDA) */
case 0x3b5: /* CRT Controller Register - Other (MDA) */
case 0x3ba: /* General Register - Feature Control */
case 0x3c0: /* Attribute Controller - Address/Other */
case 0x3c1:
case 0x3c2: /* General Register - Misc output */
case 0x3c3: /* General Register - Video subsystem enable */
case 0x3c4: /* Sequencer Register - Address */
case 0x3c5: /* Sequencer Register - Other */
case 0x3c6:
case 0x3c7:
case 0x3c8:
case 0x3c9:
case 0x3ca:
case 0x3cb:
case 0x3cc:
case 0x3cd:
case 0x3ce: /* Graphics Controller Register - Address */
case 0x3cf: /* Graphics Controller Register - Other */
case 0x3d0:
case 0x3d1:
case 0x3d2:
case 0x3d3:
case 0x3d4: /* CRT Controller Register - Index (CGA) */
case 0x3d5: /* CRT Controller Register - Other (CGA) */
case 0x3d6:
case 0x3d7:
case 0x3d8:
case 0x3d9:
case 0x3da:
case 0x3db:
case 0x3dc:
case 0x3dd:
case 0x3de:
case 0x3df:
VGA_ioport_out( port, LOBYTE(value) );
if(size > 1) {
VGA_ioport_out( port+1, HIBYTE(value) );
if(size > 2) {
VGA_ioport_out( port+2, LOBYTE(HIWORD(value)) );
VGA_ioport_out( port+3, HIBYTE(HIWORD(value)) );
}
}
break;
case 0x00:
case 0x01:
case 0x02:

File diff suppressed because it is too large Load Diff

View File

@ -1,97 +0,0 @@
/*
* VGA emulation
*
* Copyright 1998 Ove Kåven
*
* 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., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
#ifndef __WINE_VGA_H
#define __WINE_VGA_H
#include <stdarg.h>
#include "windef.h"
#include "winbase.h"
#include "wingdi.h"
/*
* VGA VESA definitions
*/
/* mode descriptor */
enum modetype {TEXT=0, GRAPHIC=1};
/* Wine internal information about video modes */
typedef struct {
WORD Mode;
BOOL ModeType;
WORD TextCols; /* columns of text in display */
WORD TextRows; /* rows of text in display */
WORD CharWidth;
WORD CharHeight;
WORD Width; /* width of display in pixels */
WORD Height; /* height of display in pixels */
WORD Depth; /* bits per pixel */
WORD Colors; /* total available colors */
WORD ScreenPages;
BOOL Supported;
} VGA_MODE;
extern const VGA_MODE VGA_modelist[] DECLSPEC_HIDDEN;
/* all vga modes */
const VGA_MODE *VGA_GetModeInfo(WORD mode) DECLSPEC_HIDDEN;
BOOL VGA_SetMode(WORD mode) DECLSPEC_HIDDEN;
/* graphics mode */
BOOL VGA_GetMode(unsigned *Height, unsigned *Width, unsigned *Depth) DECLSPEC_HIDDEN;
void VGA_SetPalette(PALETTEENTRY*pal,int start,int len) DECLSPEC_HIDDEN;
void VGA_SetColor16(int reg,int color) DECLSPEC_HIDDEN;
char VGA_GetColor16(int reg) DECLSPEC_HIDDEN;
void VGA_Set16Palette(char *Table) DECLSPEC_HIDDEN;
void VGA_Get16Palette(char *Table) DECLSPEC_HIDDEN;
void VGA_SetWindowStart(int start) DECLSPEC_HIDDEN;
int VGA_GetWindowStart(void) DECLSPEC_HIDDEN;
void VGA_ShowMouse(BOOL show) DECLSPEC_HIDDEN;
void VGA_UpdatePalette(void) DECLSPEC_HIDDEN;
void VGA_SetPaletteIndex(unsigned index) DECLSPEC_HIDDEN;
void VGA_SetBright(BOOL bright) DECLSPEC_HIDDEN;
void VGA_WritePixel(unsigned color, unsigned page, unsigned col, unsigned row) DECLSPEC_HIDDEN;
/* text mode */
void VGA_InitAlphaMode(unsigned*Xres,unsigned*Yres) DECLSPEC_HIDDEN;
void VGA_SetAlphaMode(unsigned Xres,unsigned Yres) DECLSPEC_HIDDEN;
BOOL VGA_GetAlphaMode(unsigned*Xres,unsigned*Yres) DECLSPEC_HIDDEN;
void VGA_SetCursorShape(unsigned char start_options,unsigned char end) DECLSPEC_HIDDEN;
void VGA_SetCursorPos(unsigned X,unsigned Y) DECLSPEC_HIDDEN;
void VGA_GetCursorPos(unsigned*X,unsigned*Y) DECLSPEC_HIDDEN;
void VGA_WriteChars(unsigned X,unsigned Y,unsigned ch,int attr,int count) DECLSPEC_HIDDEN;
void VGA_PutChar(BYTE ascii) DECLSPEC_HIDDEN;
void VGA_ClearText(unsigned row1, unsigned col1,
unsigned row2, unsigned col2,
BYTE attr) DECLSPEC_HIDDEN;
void VGA_ScrollUpText(unsigned row1, unsigned col1,
unsigned row2, unsigned col2,
unsigned lines, BYTE attr) DECLSPEC_HIDDEN;
void VGA_ScrollDownText(unsigned row1, unsigned col1,
unsigned row2, unsigned col2,
unsigned lines, BYTE attr) DECLSPEC_HIDDEN;
void VGA_GetCharacterAtCursor(BYTE *ascii, BYTE *attr) DECLSPEC_HIDDEN;
/* control */
void VGA_ioport_out(WORD port, BYTE val) DECLSPEC_HIDDEN;
BYTE VGA_ioport_in(WORD port) DECLSPEC_HIDDEN;
void VGA_Clean(void) DECLSPEC_HIDDEN;
#endif /* __WINE_VGA_H */