Remove unused 16bpp code
This commit is contained in:
parent
0474199b5c
commit
42f01c8d45
291
src/svga.cc
291
src/svga.cc
|
@ -26,59 +26,18 @@ namespace fallout {
|
||||||
static bool createRenderer(int width, int height);
|
static bool createRenderer(int width, int height);
|
||||||
static void destroyRenderer();
|
static void destroyRenderer();
|
||||||
|
|
||||||
// NOTE: This value is never set, so it's impossible to understand it's
|
|
||||||
// meaning.
|
|
||||||
//
|
|
||||||
// 0x51E2C4
|
|
||||||
void (*_update_palette_func)() = NULL;
|
|
||||||
|
|
||||||
// 0x51E2C8
|
// 0x51E2C8
|
||||||
bool gMmxEnabled = true;
|
bool gMmxEnabled = true;
|
||||||
|
|
||||||
// 0x51E2CC
|
|
||||||
bool gMmxProbed = false;
|
|
||||||
|
|
||||||
// 0x6AC7F0
|
|
||||||
unsigned short gSixteenBppPalette[256];
|
|
||||||
|
|
||||||
// screen rect
|
// screen rect
|
||||||
Rect _scr_size;
|
Rect _scr_size;
|
||||||
|
|
||||||
// 0x6ACA00
|
|
||||||
int gGreenMask;
|
|
||||||
|
|
||||||
// 0x6ACA04
|
|
||||||
int gRedMask;
|
|
||||||
|
|
||||||
// 0x6ACA08
|
|
||||||
int gBlueMask;
|
|
||||||
|
|
||||||
// 0x6ACA0C
|
|
||||||
int gBlueShift;
|
|
||||||
|
|
||||||
// 0x6ACA10
|
|
||||||
int gRedShift;
|
|
||||||
|
|
||||||
// 0x6ACA14
|
|
||||||
int gGreenShift;
|
|
||||||
|
|
||||||
// 0x6ACA18
|
// 0x6ACA18
|
||||||
void (*_scr_blit)(unsigned char* src, int src_pitch, int a3, int src_x, int src_y, int src_width, int src_height, int dest_x, int dest_y) = _GNW95_ShowRect;
|
void (*_scr_blit)(unsigned char* src, int src_pitch, int a3, int src_x, int src_y, int src_width, int src_height, int dest_x, int dest_y) = _GNW95_ShowRect;
|
||||||
|
|
||||||
// 0x6ACA1C
|
// 0x6ACA1C
|
||||||
void (*_zero_mem)() = NULL;
|
void (*_zero_mem)() = NULL;
|
||||||
|
|
||||||
// 0x6ACA20
|
|
||||||
bool gMmxSupported;
|
|
||||||
|
|
||||||
// FIXME: This buffer was supposed to be used as temporary place to store
|
|
||||||
// current palette while switching video modes (changing resolution). However
|
|
||||||
// the original game does not have UI to change video mode. Even if it did this
|
|
||||||
// buffer it too small to hold the entire palette, which require 256 * 3 bytes.
|
|
||||||
//
|
|
||||||
// 0x6ACA24
|
|
||||||
unsigned char gLastVideoModePalette[268];
|
|
||||||
|
|
||||||
SDL_Window* gSdlWindow = NULL;
|
SDL_Window* gSdlWindow = NULL;
|
||||||
SDL_Surface* gSdlSurface = NULL;
|
SDL_Surface* gSdlSurface = NULL;
|
||||||
SDL_Renderer* gSdlRenderer = NULL;
|
SDL_Renderer* gSdlRenderer = NULL;
|
||||||
|
@ -91,12 +50,18 @@ FpsLimiter sharedFpsLimiter;
|
||||||
// 0x4CACD0
|
// 0x4CACD0
|
||||||
void mmxSetEnabled(bool a1)
|
void mmxSetEnabled(bool a1)
|
||||||
{
|
{
|
||||||
if (!gMmxProbed) {
|
// 0x51E2CC
|
||||||
gMmxSupported = mmxIsSupported();
|
static bool probed = false;
|
||||||
gMmxProbed = true;
|
|
||||||
|
// 0x6ACA20
|
||||||
|
static bool supported;
|
||||||
|
|
||||||
|
if (!probed) {
|
||||||
|
supported = mmxIsSupported();
|
||||||
|
probed = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (gMmxSupported) {
|
if (supported) {
|
||||||
gMmxEnabled = a1;
|
gMmxEnabled = a1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -208,17 +173,10 @@ int _GNW95_init_mode_ex(int width, int height, int bpp)
|
||||||
|
|
||||||
mmxSetEnabled(true);
|
mmxSetEnabled(true);
|
||||||
|
|
||||||
if (bpp == 8) {
|
_mouse_blit_trans = NULL;
|
||||||
_mouse_blit_trans = NULL;
|
_scr_blit = _GNW95_ShowRect;
|
||||||
_scr_blit = _GNW95_ShowRect;
|
_zero_mem = _GNW95_zero_vid_mem;
|
||||||
_zero_mem = _GNW95_zero_vid_mem;
|
_mouse_blit = _GNW95_ShowRect;
|
||||||
_mouse_blit = _GNW95_ShowRect;
|
|
||||||
} else {
|
|
||||||
_zero_mem = NULL;
|
|
||||||
_mouse_blit = _GNW95_MouseShowRect16;
|
|
||||||
_mouse_blit_trans = _GNW95_MouseShowTransRect16;
|
|
||||||
_scr_blit = _GNW95_ShowRect16;
|
|
||||||
}
|
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
@ -263,39 +221,6 @@ int _GNW95_init_window(int width, int height, bool fullscreen)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
// calculate shift for mask
|
|
||||||
// 0x4CAF50
|
|
||||||
int getShiftForBitMask(int mask)
|
|
||||||
{
|
|
||||||
int shift = 0;
|
|
||||||
|
|
||||||
if ((mask & 0xFFFF0000) != 0) {
|
|
||||||
shift |= 16;
|
|
||||||
mask &= 0xFFFF0000;
|
|
||||||
}
|
|
||||||
|
|
||||||
if ((mask & 0xFF00FF00) != 0) {
|
|
||||||
shift |= 8;
|
|
||||||
mask &= 0xFF00FF00;
|
|
||||||
}
|
|
||||||
|
|
||||||
if ((mask & 0xF0F0F0F0) != 0) {
|
|
||||||
shift |= 4;
|
|
||||||
mask &= 0xF0F0F0F0;
|
|
||||||
}
|
|
||||||
|
|
||||||
if ((mask & 0xCCCCCCCC) != 0) {
|
|
||||||
shift |= 2;
|
|
||||||
mask &= 0xCCCCCCCC;
|
|
||||||
}
|
|
||||||
|
|
||||||
if ((mask & 0xAAAAAAAA) != 0) {
|
|
||||||
shift |= 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
return shift;
|
|
||||||
}
|
|
||||||
|
|
||||||
// 0x4CAF9C
|
// 0x4CAF9C
|
||||||
int directDrawInit(int width, int height, int bpp)
|
int directDrawInit(int width, int height, int bpp)
|
||||||
{
|
{
|
||||||
|
@ -314,26 +239,16 @@ int directDrawInit(int width, int height, int bpp)
|
||||||
|
|
||||||
gSdlSurface = SDL_CreateRGBSurface(0, width, height, bpp, 0, 0, 0, 0);
|
gSdlSurface = SDL_CreateRGBSurface(0, width, height, bpp, 0, 0, 0, 0);
|
||||||
|
|
||||||
if (bpp == 8) {
|
SDL_Color colors[256];
|
||||||
SDL_Color colors[256];
|
for (int index = 0; index < 256; index++) {
|
||||||
for (int index = 0; index < 256; index++) {
|
colors[index].r = index;
|
||||||
colors[index].r = index;
|
colors[index].g = index;
|
||||||
colors[index].g = index;
|
colors[index].b = index;
|
||||||
colors[index].b = index;
|
colors[index].a = 255;
|
||||||
colors[index].a = 255;
|
|
||||||
}
|
|
||||||
|
|
||||||
SDL_SetPaletteColors(gSdlSurface->format->palette, colors, 0, 256);
|
|
||||||
} else {
|
|
||||||
gRedMask = gSdlSurface->format->Rmask;
|
|
||||||
gGreenMask = gSdlSurface->format->Gmask;
|
|
||||||
gBlueMask = gSdlSurface->format->Bmask;
|
|
||||||
|
|
||||||
gRedShift = gSdlSurface->format->Rshift;
|
|
||||||
gGreenShift = gSdlSurface->format->Gshift;
|
|
||||||
gBlueShift = gSdlSurface->format->Bshift;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
SDL_SetPaletteColors(gSdlSurface->format->palette, colors, 0, 256);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -363,31 +278,6 @@ void directDrawSetPaletteInRange(unsigned char* palette, int start, int count)
|
||||||
|
|
||||||
SDL_SetPaletteColors(gSdlSurface->format->palette, colors, start, count);
|
SDL_SetPaletteColors(gSdlSurface->format->palette, colors, start, count);
|
||||||
SDL_BlitSurface(gSdlSurface, NULL, gSdlTextureSurface, NULL);
|
SDL_BlitSurface(gSdlSurface, NULL, gSdlTextureSurface, NULL);
|
||||||
} else {
|
|
||||||
for (int index = start; index < start + count; index++) {
|
|
||||||
unsigned short r = palette[0] << 2;
|
|
||||||
unsigned short g = palette[1] << 2;
|
|
||||||
unsigned short b = palette[2] << 2;
|
|
||||||
palette += 3;
|
|
||||||
|
|
||||||
r = gRedShift > 0 ? (r << gRedShift) : (r >> -gRedShift);
|
|
||||||
r &= gRedMask;
|
|
||||||
|
|
||||||
g = gGreenShift > 0 ? (g << gGreenShift) : (g >> -gGreenShift);
|
|
||||||
g &= gGreenMask;
|
|
||||||
|
|
||||||
b = gBlueShift > 0 ? (b << gBlueShift) : (b >> -gBlueShift);
|
|
||||||
b &= gBlueMask;
|
|
||||||
|
|
||||||
unsigned short rgb = r | g | b;
|
|
||||||
gSixteenBppPalette[index] = rgb;
|
|
||||||
}
|
|
||||||
|
|
||||||
windowRefreshAll(&_scr_size);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (_update_palette_func != NULL) {
|
|
||||||
_update_palette_func();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -406,66 +296,27 @@ void directDrawSetPalette(unsigned char* palette)
|
||||||
|
|
||||||
SDL_SetPaletteColors(gSdlSurface->format->palette, colors, 0, 256);
|
SDL_SetPaletteColors(gSdlSurface->format->palette, colors, 0, 256);
|
||||||
SDL_BlitSurface(gSdlSurface, NULL, gSdlTextureSurface, NULL);
|
SDL_BlitSurface(gSdlSurface, NULL, gSdlTextureSurface, NULL);
|
||||||
} else {
|
|
||||||
for (int index = 0; index < 256; index++) {
|
|
||||||
unsigned short r = palette[index * 3] << 2;
|
|
||||||
unsigned short g = palette[index * 3 + 1] << 2;
|
|
||||||
unsigned short b = palette[index * 3 + 2] << 2;
|
|
||||||
|
|
||||||
r = gRedShift > 0 ? (r << gRedShift) : (r >> -gRedShift);
|
|
||||||
r &= gRedMask;
|
|
||||||
|
|
||||||
g = gGreenShift > 0 ? (g << gGreenShift) : (g >> -gGreenShift);
|
|
||||||
g &= gGreenMask;
|
|
||||||
|
|
||||||
b = gBlueShift > 0 ? (b << gBlueShift) : (b >> -gBlueShift);
|
|
||||||
b &= gBlueMask;
|
|
||||||
|
|
||||||
unsigned short rgb = r | g | b;
|
|
||||||
gSixteenBppPalette[index] = rgb;
|
|
||||||
}
|
|
||||||
|
|
||||||
windowRefreshAll(&_scr_size);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (_update_palette_func != NULL) {
|
|
||||||
_update_palette_func();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// 0x4CB68C
|
// 0x4CB68C
|
||||||
unsigned char* directDrawGetPalette()
|
unsigned char* directDrawGetPalette()
|
||||||
{
|
{
|
||||||
|
// 0x6ACA24
|
||||||
|
static unsigned char palette[768];
|
||||||
|
|
||||||
if (gSdlSurface != NULL && gSdlSurface->format->palette != NULL) {
|
if (gSdlSurface != NULL && gSdlSurface->format->palette != NULL) {
|
||||||
SDL_Color* colors = gSdlSurface->format->palette->colors;
|
SDL_Color* colors = gSdlSurface->format->palette->colors;
|
||||||
|
|
||||||
for (int index = 0; index < 256; index++) {
|
for (int index = 0; index < 256; index++) {
|
||||||
SDL_Color* color = &(colors[index]);
|
SDL_Color* color = &(colors[index]);
|
||||||
gLastVideoModePalette[index * 3] = color->r >> 2;
|
palette[index * 3] = color->r >> 2;
|
||||||
gLastVideoModePalette[index * 3 + 1] = color->g >> 2;
|
palette[index * 3 + 1] = color->g >> 2;
|
||||||
gLastVideoModePalette[index * 3 + 2] = color->b >> 2;
|
palette[index * 3 + 2] = color->b >> 2;
|
||||||
}
|
}
|
||||||
|
|
||||||
return gLastVideoModePalette;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
int redShift = gRedShift + 2;
|
return palette;
|
||||||
int greenShift = gGreenShift + 2;
|
|
||||||
int blueShift = gBlueShift + 2;
|
|
||||||
|
|
||||||
for (int index = 0; index < 256; index++) {
|
|
||||||
unsigned short rgb = gSixteenBppPalette[index];
|
|
||||||
|
|
||||||
unsigned short r = redShift > 0 ? ((rgb & gRedMask) >> redShift) : ((rgb & gRedMask) << -redShift);
|
|
||||||
unsigned short g = greenShift > 0 ? ((rgb & gGreenMask) >> greenShift) : ((rgb & gGreenMask) << -greenShift);
|
|
||||||
unsigned short b = blueShift > 0 ? ((rgb & gBlueMask) >> blueShift) : ((rgb & gBlueMask) << -blueShift);
|
|
||||||
|
|
||||||
gLastVideoModePalette[index * 3] = (r >> 2) & 0xFF;
|
|
||||||
gLastVideoModePalette[index * 3 + 1] = (g >> 2) & 0xFF;
|
|
||||||
gLastVideoModePalette[index * 3 + 2] = (b >> 2) & 0xFF;
|
|
||||||
}
|
|
||||||
|
|
||||||
return gLastVideoModePalette;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// 0x4CB850
|
// 0x4CB850
|
||||||
|
@ -485,86 +336,6 @@ void _GNW95_ShowRect(unsigned char* src, int srcPitch, int a3, int srcX, int src
|
||||||
SDL_BlitSurface(gSdlSurface, &srcRect, gSdlTextureSurface, &destRect);
|
SDL_BlitSurface(gSdlSurface, &srcRect, gSdlTextureSurface, &destRect);
|
||||||
}
|
}
|
||||||
|
|
||||||
// 0x4CB93C
|
|
||||||
void _GNW95_MouseShowRect16(unsigned char* src, int srcPitch, int a3, int srcX, int srcY, int srcWidth, int srcHeight, int destX, int destY)
|
|
||||||
{
|
|
||||||
if (!gProgramIsActive) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
unsigned char* dest = (unsigned char*)gSdlSurface->pixels + gSdlSurface->pitch * destY + 2 * destX;
|
|
||||||
|
|
||||||
src += srcPitch * srcY + srcX;
|
|
||||||
|
|
||||||
for (int y = 0; y < srcHeight; y++) {
|
|
||||||
unsigned short* destPtr = (unsigned short*)dest;
|
|
||||||
unsigned char* srcPtr = src;
|
|
||||||
for (int x = 0; x < srcWidth; x++) {
|
|
||||||
*destPtr = gSixteenBppPalette[*srcPtr];
|
|
||||||
destPtr++;
|
|
||||||
srcPtr++;
|
|
||||||
}
|
|
||||||
|
|
||||||
dest += gSdlSurface->pitch;
|
|
||||||
src += srcPitch;
|
|
||||||
}
|
|
||||||
|
|
||||||
SDL_Rect srcRect;
|
|
||||||
srcRect.x = destX;
|
|
||||||
srcRect.y = destY;
|
|
||||||
srcRect.w = srcWidth;
|
|
||||||
srcRect.h = srcHeight;
|
|
||||||
|
|
||||||
SDL_Rect destRect;
|
|
||||||
destRect.x = destX;
|
|
||||||
destRect.y = destY;
|
|
||||||
SDL_BlitSurface(gSdlSurface, &srcRect, gSdlTextureSurface, &destRect);
|
|
||||||
}
|
|
||||||
|
|
||||||
// 0x4CBA44
|
|
||||||
void _GNW95_ShowRect16(unsigned char* src, int srcPitch, int a3, int srcX, int srcY, int srcWidth, int srcHeight, int destX, int destY)
|
|
||||||
{
|
|
||||||
_GNW95_MouseShowRect16(src, srcPitch, a3, srcX, srcY, srcWidth, srcHeight, destX, destY);
|
|
||||||
}
|
|
||||||
|
|
||||||
// 0x4CBAB0
|
|
||||||
void _GNW95_MouseShowTransRect16(unsigned char* src, int srcPitch, int a3, int srcX, int srcY, int srcWidth, int srcHeight, int destX, int destY, unsigned char keyColor)
|
|
||||||
{
|
|
||||||
if (!gProgramIsActive) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
unsigned char* dest = (unsigned char*)gSdlSurface->pixels + gSdlSurface->pitch * destY + 2 * destX;
|
|
||||||
|
|
||||||
src += srcPitch * srcY + srcX;
|
|
||||||
|
|
||||||
for (int y = 0; y < srcHeight; y++) {
|
|
||||||
unsigned short* destPtr = (unsigned short*)dest;
|
|
||||||
unsigned char* srcPtr = src;
|
|
||||||
for (int x = 0; x < srcWidth; x++) {
|
|
||||||
if (*srcPtr != keyColor) {
|
|
||||||
*destPtr = gSixteenBppPalette[*srcPtr];
|
|
||||||
}
|
|
||||||
destPtr++;
|
|
||||||
srcPtr++;
|
|
||||||
}
|
|
||||||
|
|
||||||
dest += gSdlSurface->pitch;
|
|
||||||
src += srcPitch;
|
|
||||||
}
|
|
||||||
|
|
||||||
SDL_Rect srcRect;
|
|
||||||
srcRect.x = destX;
|
|
||||||
srcRect.y = destY;
|
|
||||||
srcRect.w = srcWidth;
|
|
||||||
srcRect.h = srcHeight;
|
|
||||||
|
|
||||||
SDL_Rect destRect;
|
|
||||||
destRect.x = destX;
|
|
||||||
destRect.y = destY;
|
|
||||||
SDL_BlitSurface(gSdlSurface, &srcRect, gSdlTextureSurface, &destRect);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Clears drawing surface.
|
// Clears drawing surface.
|
||||||
//
|
//
|
||||||
// 0x4CBBC8
|
// 0x4CBBC8
|
||||||
|
@ -574,16 +345,12 @@ void _GNW95_zero_vid_mem()
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
SDL_LockSurface(gSdlSurface);
|
|
||||||
|
|
||||||
unsigned char* surface = (unsigned char*)gSdlSurface->pixels;
|
unsigned char* surface = (unsigned char*)gSdlSurface->pixels;
|
||||||
for (int y = 0; y < gSdlSurface->h; y++) {
|
for (int y = 0; y < gSdlSurface->h; y++) {
|
||||||
memset(surface, 0, gSdlSurface->w);
|
memset(surface, 0, gSdlSurface->w);
|
||||||
surface += gSdlSurface->pitch;
|
surface += gSdlSurface->pitch;
|
||||||
}
|
}
|
||||||
|
|
||||||
SDL_UnlockSurface(gSdlSurface);
|
|
||||||
|
|
||||||
SDL_BlitSurface(gSdlSurface, NULL, gSdlTextureSurface, NULL);
|
SDL_BlitSurface(gSdlSurface, NULL, gSdlTextureSurface, NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
15
src/svga.h
15
src/svga.h
|
@ -10,22 +10,11 @@
|
||||||
|
|
||||||
namespace fallout {
|
namespace fallout {
|
||||||
|
|
||||||
extern void (*_update_palette_func)();
|
|
||||||
extern bool gMmxEnabled;
|
extern bool gMmxEnabled;
|
||||||
extern bool gMmxProbed;
|
|
||||||
|
|
||||||
extern unsigned short gSixteenBppPalette[256];
|
|
||||||
extern Rect _scr_size;
|
extern Rect _scr_size;
|
||||||
extern int gRedMask;
|
|
||||||
extern int gGreenMask;
|
|
||||||
extern int gBlueMask;
|
|
||||||
extern int gBlueShift;
|
|
||||||
extern int gRedShift;
|
|
||||||
extern int gGreenShift;
|
|
||||||
extern void (*_scr_blit)(unsigned char* src, int src_pitch, int a3, int src_x, int src_y, int src_width, int src_height, int dest_x, int dest_y);
|
extern void (*_scr_blit)(unsigned char* src, int src_pitch, int a3, int src_x, int src_y, int src_width, int src_height, int dest_x, int dest_y);
|
||||||
extern void (*_zero_mem)();
|
extern void (*_zero_mem)();
|
||||||
extern bool gMmxSupported;
|
|
||||||
extern unsigned char gLastVideoModePalette[268];
|
|
||||||
|
|
||||||
extern SDL_Window* gSdlWindow;
|
extern SDL_Window* gSdlWindow;
|
||||||
extern SDL_Surface* gSdlSurface;
|
extern SDL_Surface* gSdlSurface;
|
||||||
|
@ -48,16 +37,12 @@ void _zero_vid_mem();
|
||||||
int _GNW95_init_mode_ex(int width, int height, int bpp);
|
int _GNW95_init_mode_ex(int width, int height, int bpp);
|
||||||
int _init_vesa_mode(int width, int height);
|
int _init_vesa_mode(int width, int height);
|
||||||
int _GNW95_init_window(int width, int height, bool fullscreen);
|
int _GNW95_init_window(int width, int height, bool fullscreen);
|
||||||
int getShiftForBitMask(int mask);
|
|
||||||
int directDrawInit(int width, int height, int bpp);
|
int directDrawInit(int width, int height, int bpp);
|
||||||
void directDrawFree();
|
void directDrawFree();
|
||||||
void directDrawSetPaletteInRange(unsigned char* a1, int a2, int a3);
|
void directDrawSetPaletteInRange(unsigned char* a1, int a2, int a3);
|
||||||
void directDrawSetPalette(unsigned char* palette);
|
void directDrawSetPalette(unsigned char* palette);
|
||||||
unsigned char* directDrawGetPalette();
|
unsigned char* directDrawGetPalette();
|
||||||
void _GNW95_ShowRect(unsigned char* src, int src_pitch, int a3, int src_x, int src_y, int src_width, int src_height, int dest_x, int dest_y);
|
void _GNW95_ShowRect(unsigned char* src, int src_pitch, int a3, int src_x, int src_y, int src_width, int src_height, int dest_x, int dest_y);
|
||||||
void _GNW95_MouseShowRect16(unsigned char* src, int srcPitch, int a3, int srcX, int srcY, int srcWidth, int srcHeight, int destX, int destY);
|
|
||||||
void _GNW95_ShowRect16(unsigned char* src, int srcPitch, int a3, int srcX, int srcY, int srcWidth, int srcHeight, int destX, int destY);
|
|
||||||
void _GNW95_MouseShowTransRect16(unsigned char* src, int srcPitch, int a3, int srcX, int srcY, int srcWidth, int srcHeight, int destX, int destY, unsigned char keyColor);
|
|
||||||
void _GNW95_zero_vid_mem();
|
void _GNW95_zero_vid_mem();
|
||||||
|
|
||||||
int screenGetWidth();
|
int screenGetWidth();
|
||||||
|
|
Loading…
Reference in New Issue