Restored old code
This commit is contained in:
@@ -35,8 +35,6 @@ extern "C" {
|
|||||||
DWORD WindowWidth = 256;
|
DWORD WindowWidth = 256;
|
||||||
DWORD WindowHeight = 224;
|
DWORD WindowHeight = 224;
|
||||||
DWORD FullScreen = 0;
|
DWORD FullScreen = 0;
|
||||||
int DrawOkay = 0;
|
|
||||||
int TryAgain = 0;
|
|
||||||
|
|
||||||
DWORD Moving= 0;
|
DWORD Moving= 0;
|
||||||
DWORD SoundBufferSize=1024*18;
|
DWORD SoundBufferSize=1024*18;
|
||||||
@@ -44,7 +42,6 @@ DWORD FirstSound=1;
|
|||||||
|
|
||||||
int AllowDefault=0;
|
int AllowDefault=0;
|
||||||
int SoundEnabled=1;
|
int SoundEnabled=1;
|
||||||
int fullscreendisplay=0;
|
|
||||||
|
|
||||||
#define BYTE unsigned char
|
#define BYTE unsigned char
|
||||||
#define WORD unsigned short
|
#define WORD unsigned short
|
||||||
@@ -72,7 +69,6 @@ LPDIRECTDRAW BasiclpDD = NULL;
|
|||||||
LPDIRECTDRAW2 lpDD = NULL;
|
LPDIRECTDRAW2 lpDD = NULL;
|
||||||
LPDIRECTDRAWSURFACE DD_Primary = NULL;
|
LPDIRECTDRAWSURFACE DD_Primary = NULL;
|
||||||
LPDIRECTDRAWSURFACE DD_CFB = NULL;
|
LPDIRECTDRAWSURFACE DD_CFB = NULL;
|
||||||
LPDIRECTDRAWSURFACE DD_BackBuffer = NULL;
|
|
||||||
LPDIRECTDRAWCLIPPER lpDDClipper =NULL;
|
LPDIRECTDRAWCLIPPER lpDDClipper =NULL;
|
||||||
RECT rcWindow;
|
RECT rcWindow;
|
||||||
|
|
||||||
@@ -151,24 +147,11 @@ void DDrawError(){
|
|||||||
|
|
||||||
void DrawScreen()
|
void DrawScreen()
|
||||||
{
|
{
|
||||||
if (DD_Primary->IsLost() == DDERR_SURFACELOST) DD_Primary->Restore();
|
|
||||||
|
|
||||||
if(DD_CFB==NULL) return;
|
if(DD_CFB==NULL) return;
|
||||||
|
if(DD_Primary->Blt(&rcWindow,DD_CFB,NULL,DDBLT_WAIT,NULL)!=DD_OK)
|
||||||
if (fullscreendisplay){
|
{
|
||||||
if(DD_BackBuffer->Blt(&rcWindow,DD_CFB,NULL,DDBLT_WAIT,NULL)!=DD_OK)
|
DDrawError();
|
||||||
{
|
}
|
||||||
DDrawError();
|
|
||||||
}
|
|
||||||
|
|
||||||
DD_Primary->Flip(NULL, DDFLIP_WAIT);
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
if(DD_Primary->Blt(&rcWindow,DD_CFB,NULL,DDBLT_WAIT,NULL)!=DD_OK)
|
|
||||||
{
|
|
||||||
DDrawError();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
DWORD InputEn=0;
|
DWORD InputEn=0;
|
||||||
@@ -463,7 +446,6 @@ LRESULT CALLBACK Main_Proc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
|
|||||||
return DefWindowProc(hWnd,uMsg,wParam,lParam);
|
return DefWindowProc(hWnd,uMsg,wParam,lParam);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
return DefWindowProc(hWnd,uMsg,wParam,lParam);
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
return TRUE;
|
return TRUE;
|
||||||
@@ -852,42 +834,50 @@ BOOL FAR PASCAL InitJoystickInput(LPCDIDEVICEINSTANCE pdinst, LPVOID pvRef)
|
|||||||
|
|
||||||
void endgame()
|
void endgame()
|
||||||
{
|
{
|
||||||
int released;
|
|
||||||
|
|
||||||
released=(int)DD_BackBuffer;
|
MessageBox(NULL, "blah", "blah", MB_OK);
|
||||||
while(released)
|
if(lpDirectSound)
|
||||||
{
|
{
|
||||||
released=DD_BackBuffer->Release();
|
lpDirectSound->Release();
|
||||||
|
lpDirectSound=NULL;
|
||||||
}
|
}
|
||||||
DD_BackBuffer=NULL;
|
|
||||||
|
|
||||||
released=(int)DD_Primary;
|
if(lpSoundBuffer)
|
||||||
while(released)
|
|
||||||
{
|
{
|
||||||
released=DD_Primary->Release();
|
lpSoundBuffer->Release();
|
||||||
|
lpSoundBuffer=NULL;
|
||||||
}
|
}
|
||||||
DD_Primary=NULL;
|
|
||||||
|
|
||||||
released=(int)DD_CFB;
|
if(lpPrimaryBuffer)
|
||||||
while(released)
|
|
||||||
{
|
{
|
||||||
released=DD_CFB->Release();
|
lpPrimaryBuffer->Release();
|
||||||
|
lpPrimaryBuffer=NULL;
|
||||||
}
|
}
|
||||||
DD_CFB=NULL;
|
|
||||||
|
|
||||||
released=(int)lpDDClipper;
|
if(DD_CFB)
|
||||||
while(released)
|
|
||||||
{
|
{
|
||||||
released=lpDDClipper->Release();
|
DD_CFB->Release();
|
||||||
|
DD_CFB=NULL;
|
||||||
}
|
}
|
||||||
lpDDClipper=NULL;
|
|
||||||
|
|
||||||
released=(int)lpDD;
|
if(lpDD)
|
||||||
while(released)
|
|
||||||
{
|
{
|
||||||
released=lpDD->Release();
|
lpDD->Release();
|
||||||
|
lpDD=NULL;
|
||||||
}
|
}
|
||||||
lpDD=NULL;
|
|
||||||
|
if(lpDDClipper)
|
||||||
|
{
|
||||||
|
lpDDClipper->Release();
|
||||||
|
lpDDClipper=NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(DD_Primary)
|
||||||
|
{
|
||||||
|
DD_Primary->Release();
|
||||||
|
DD_Primary=NULL;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void DInputError(){
|
void DInputError(){
|
||||||
@@ -1061,16 +1051,12 @@ startgame()
|
|||||||
unsigned int color32,ScreenPtr2;
|
unsigned int color32,ScreenPtr2;
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
DrawOkay=1;
|
|
||||||
|
|
||||||
fullscreendisplay = 0;
|
|
||||||
|
|
||||||
ScreenPtr2=BitConv32Ptr;
|
ScreenPtr2=BitConv32Ptr;
|
||||||
for(i=0;i<65536;i++)
|
for(i=0;i<65536;i++)
|
||||||
{
|
{
|
||||||
color32=((i&0xF800)<<8)+
|
color32=((i&0xF800)<<8)+
|
||||||
((i&0x07E0)<<5)+
|
((i&0x07E0)<<5)+
|
||||||
((i&0x001F)<<3)+0x7F000000;
|
((i&0x001F)<<3)+0xFF000000;
|
||||||
(*(unsigned int *)(ScreenPtr2))=color32;
|
(*(unsigned int *)(ScreenPtr2))=color32;
|
||||||
ScreenPtr2+=4;
|
ScreenPtr2+=4;
|
||||||
}
|
}
|
||||||
@@ -1081,61 +1067,53 @@ startgame()
|
|||||||
|
|
||||||
if(FAILED(DirectDrawCreate(NULL,&BasiclpDD,NULL)))
|
if(FAILED(DirectDrawCreate(NULL,&BasiclpDD,NULL)))
|
||||||
{
|
{
|
||||||
MessageBox(NULL,"Cannot Create DirectDraw","Error1",MB_OK);
|
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if(FAILED(BasiclpDD->SetCooperativeLevel(hMainWindow, DDSCL_NORMAL )))
|
if(FAILED(BasiclpDD->SetCooperativeLevel(hMainWindow, DDSCL_NORMAL )))
|
||||||
{
|
{
|
||||||
MessageBox(NULL,"Cannot Set Cooperative Level","Error2",MB_OK);
|
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(FAILED(BasiclpDD->QueryInterface(IID_IDirectDraw2,(LPVOID *)&lpDD)))
|
if(FAILED(BasiclpDD->QueryInterface(IID_IDirectDraw2,(LPVOID *)&lpDD)))
|
||||||
{
|
{
|
||||||
MessageBox(NULL,"Cannot Query Interface","Error3",MB_OK);
|
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
BasiclpDD->Release();
|
BasiclpDD->Release();
|
||||||
|
|
||||||
ZeroMemory(&ddsd,sizeof(ddsd));
|
|
||||||
ddsd.dwSize = sizeof( ddsd );
|
ddsd.dwSize = sizeof( ddsd );
|
||||||
ddsd.dwFlags = DDSD_CAPS;
|
ddsd.dwFlags = DDSD_CAPS;
|
||||||
ddsd.ddsCaps.dwCaps = DDSCAPS_PRIMARYSURFACE;
|
ddsd.ddsCaps.dwCaps = DDSCAPS_PRIMARYSURFACE;
|
||||||
|
|
||||||
if (FAILED(lpDD->CreateSurface( &ddsd, &DD_Primary, NULL )))
|
if (FAILED(lpDD->CreateSurface( &ddsd, &DD_Primary, NULL )))
|
||||||
{
|
{
|
||||||
DrawOkay=0;
|
|
||||||
TryAgain=1;
|
|
||||||
return TRUE;
|
|
||||||
MessageBox(NULL,"Cannot Create Surface","Error4",MB_OK);
|
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (FAILED(lpDD->CreateClipper(0,&lpDDClipper,NULL)))
|
if (FAILED(lpDD->CreateClipper(0,&lpDDClipper,NULL)))
|
||||||
{
|
{
|
||||||
MessageBox(NULL,"Cannot Create Clipper","Error5",MB_OK);
|
lpDD->Release();
|
||||||
|
lpDD=NULL;
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (FAILED(lpDDClipper->SetHWnd(0,hMainWindow)))
|
if (FAILED(lpDDClipper->SetHWnd(0,hMainWindow)))
|
||||||
{
|
{
|
||||||
MessageBox(NULL,"Cannot Set HWnd on Clipper","Error6",MB_OK);
|
lpDD->Release();
|
||||||
|
lpDD=NULL;
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (FAILED( DD_Primary->SetClipper(lpDDClipper)))
|
if (FAILED( DD_Primary->SetClipper(lpDDClipper)))
|
||||||
{
|
{
|
||||||
MessageBox(NULL,"Cannot Set Clipper","Error7",MB_OK);
|
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
format.dwSize = sizeof(DDPIXELFORMAT);
|
format.dwSize = sizeof(DDPIXELFORMAT);
|
||||||
if (DD_Primary->GetPixelFormat(&format) != DD_OK)
|
if (DD_Primary->GetPixelFormat(&format) != DD_OK)
|
||||||
{
|
{
|
||||||
MessageBox(NULL,"Cannot Get Pixel Format","Error8",MB_OK);
|
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1145,13 +1123,12 @@ startgame()
|
|||||||
if (BitDepth==24)
|
if (BitDepth==24)
|
||||||
{
|
{
|
||||||
MessageBox(NULL,"ZSNESw does not support 24bit color.\nPlease change your resolution to either 16bit or 32bit color","Error",MB_OK);
|
MessageBox(NULL,"ZSNESw does not support 24bit color.\nPlease change your resolution to either 16bit or 32bit color","Error",MB_OK);
|
||||||
return FALSE;
|
exit(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
if(BitDepth==16&& GBitMask!=0x07E0)
|
if(BitDepth==16 && GBitMask!=0x07E0)
|
||||||
{
|
{
|
||||||
converta=1;
|
converta=1;
|
||||||
//Init_2xSaI(555);
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@@ -1171,206 +1148,14 @@ startgame()
|
|||||||
|
|
||||||
if ( lpDD->CreateSurface( &ddsd, &DD_CFB, NULL ) != DD_OK )
|
if ( lpDD->CreateSurface( &ddsd, &DD_CFB, NULL ) != DD_OK )
|
||||||
{
|
{
|
||||||
MessageBox(NULL,"Cannot Create Surface Buffer","Error",MB_OK);
|
DD_CFB->Release();
|
||||||
DD_CFB = NULL;
|
DD_CFB = NULL;
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
TryAgain=0;
|
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
startgamefull()
|
|
||||||
{
|
|
||||||
DDSURFACEDESC ddsd;
|
|
||||||
DDPIXELFORMAT format;
|
|
||||||
HRESULT hr;
|
|
||||||
char message1[256];
|
|
||||||
unsigned int color32,ScreenPtr2;
|
|
||||||
int i;
|
|
||||||
|
|
||||||
DrawOkay=0;
|
|
||||||
|
|
||||||
|
|
||||||
fullscreendisplay = 1;
|
|
||||||
|
|
||||||
ScreenPtr2=BitConv32Ptr;
|
|
||||||
for(i=0;i<65536;i++)
|
|
||||||
{
|
|
||||||
color32=((i&0xF800)<<8)+
|
|
||||||
((i&0x07E0)<<5)+
|
|
||||||
((i&0x001F)<<3)+0x7F000000;
|
|
||||||
(*(unsigned int *)(ScreenPtr2))=color32;
|
|
||||||
ScreenPtr2+=4;
|
|
||||||
}
|
|
||||||
|
|
||||||
GetClientRect(hMainWindow, &rcWindow );
|
|
||||||
ClientToScreen(hMainWindow, ( LPPOINT )&rcWindow );
|
|
||||||
ClientToScreen(hMainWindow, ( LPPOINT )&rcWindow + 1 );
|
|
||||||
|
|
||||||
if(FAILED(DirectDrawCreate(NULL,&BasiclpDD,NULL)))
|
|
||||||
{
|
|
||||||
MessageBox(NULL,"Cannot Create DirectDraw","Error",MB_OK);
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
|
|
||||||
hr = BasiclpDD->SetCooperativeLevel(hMainWindow,DDSCL_NORMAL);
|
|
||||||
|
|
||||||
hr = BasiclpDD->SetCooperativeLevel(hMainWindow,DDSCL_EXCLUSIVE | DDSCL_FULLSCREEN);
|
|
||||||
|
|
||||||
if(FAILED(hr))
|
|
||||||
{
|
|
||||||
sprintf(message1,"Unknown Error");
|
|
||||||
if (hr == DDERR_EXCLUSIVEMODEALREADYSET) sprintf(message1,"Exclusive Mode already set");
|
|
||||||
if (hr == DDERR_HWNDALREADYSET) sprintf(message1,"HWND already set");
|
|
||||||
if (hr == DDERR_HWNDSUBCLASSED) sprintf(message1,"HWND Sub Classed");
|
|
||||||
if (hr == DDERR_INVALIDOBJECT) sprintf(message1,"Invalid Object");
|
|
||||||
if (hr == DDERR_INVALIDPARAMS) sprintf(message1,"Invalid Params");
|
|
||||||
if (hr == DDERR_OUTOFMEMORY) sprintf(message1,"Out of Memory");
|
|
||||||
|
|
||||||
// MessageBox(NULL,message1,"Cannot Set Cooperative Level",MB_OK);
|
|
||||||
if ((hr == DDERR_EXCLUSIVEMODEALREADYSET) ||
|
|
||||||
(hr == DDERR_HWNDALREADYSET) ||
|
|
||||||
(hr == DDERR_HWNDSUBCLASSED)){
|
|
||||||
ddsd.dwSize = sizeof( ddsd );
|
|
||||||
ddsd.dwFlags = DDSD_CAPS | DDSD_HEIGHT |DDSD_WIDTH;
|
|
||||||
ddsd.ddsCaps.dwCaps = DDSCAPS_OFFSCREENPLAIN ;
|
|
||||||
|
|
||||||
ddsd.dwWidth = SurfaceX;
|
|
||||||
ddsd.dwHeight = SurfaceY;
|
|
||||||
|
|
||||||
if ( lpDD->CreateSurface( &ddsd, &DD_CFB, NULL ) != DD_OK )
|
|
||||||
{
|
|
||||||
MessageBox(NULL,"Cannot Create Surface Buffer","Error",MB_OK);
|
|
||||||
DD_CFB = NULL;
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
|
|
||||||
DrawOkay=1;
|
|
||||||
|
|
||||||
}
|
|
||||||
return TRUE;
|
|
||||||
}
|
|
||||||
|
|
||||||
if(FAILED(BasiclpDD->QueryInterface(IID_IDirectDraw2,(LPVOID *)&lpDD)))
|
|
||||||
{
|
|
||||||
MessageBox(NULL,"Cannot Query Interface","Error",MB_OK);
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
|
|
||||||
BasiclpDD->Release();
|
|
||||||
|
|
||||||
if (FAILED(lpDD->SetDisplayMode(WindowWidth, WindowHeight, 16,0,0)))
|
|
||||||
{
|
|
||||||
MessageBox(NULL,"Cannot Set Display Mode","Error",MB_OK);
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
|
|
||||||
ZeroMemory(&ddsd,sizeof(ddsd));
|
|
||||||
ddsd.dwSize = sizeof( ddsd );
|
|
||||||
ddsd.dwFlags = DDSD_CAPS | DDSD_BACKBUFFERCOUNT;
|
|
||||||
ddsd.dwBackBufferCount = 2;
|
|
||||||
ddsd.ddsCaps.dwCaps = DDSCAPS_PRIMARYSURFACE |
|
|
||||||
DDSCAPS_FLIP |
|
|
||||||
DDSCAPS_COMPLEX |
|
|
||||||
DDSCAPS_VIDEOMEMORY;
|
|
||||||
|
|
||||||
if (FAILED(hr=lpDD->CreateSurface( &ddsd, &DD_Primary, NULL )))
|
|
||||||
{
|
|
||||||
if (hr==DDERR_INCOMPATIBLEPRIMARY) sprintf(message1,"1");
|
|
||||||
if (hr==DDERR_INVALIDCAPS) sprintf(message1,"2");
|
|
||||||
if (hr==DDERR_INVALIDOBJECT) sprintf(message1,"3");
|
|
||||||
if (hr==DDERR_INVALIDPARAMS) sprintf(message1,"4");
|
|
||||||
if (hr==DDERR_INVALIDPIXELFORMAT) sprintf(message1,"5");
|
|
||||||
if (hr==DDERR_NOALPHAHW) sprintf(message1,"6");
|
|
||||||
if (hr==DDERR_NOCOOPERATIVELEVELSET) sprintf(message1,"7");
|
|
||||||
if (hr==DDERR_PRIMARYSURFACEALREADYEXISTS) sprintf(message1,"8");
|
|
||||||
if (hr==DDERR_UNSUPPORTEDMODE) sprintf(message1,"9");
|
|
||||||
|
|
||||||
|
|
||||||
// MessageBox(NULL,message1,"Error",MB_OK);
|
|
||||||
|
|
||||||
ddsd.dwBackBufferCount = 1;
|
|
||||||
if (FAILED(lpDD->CreateSurface( &ddsd, &DD_Primary, NULL ))){
|
|
||||||
ddsd.ddsCaps.dwCaps &= ~DDSCAPS_VIDEOMEMORY;
|
|
||||||
if (FAILED(lpDD->CreateSurface( &ddsd, &DD_Primary, NULL ))){
|
|
||||||
DrawOkay=0;
|
|
||||||
return TRUE;
|
|
||||||
|
|
||||||
MessageBox(NULL,"Cannot Create Primary Surface","Error",MB_OK);
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
DDSCAPS caps;
|
|
||||||
caps.dwCaps = DDSCAPS_BACKBUFFER;
|
|
||||||
if (FAILED(DD_Primary->GetAttachedSurface(&caps, &DD_BackBuffer)))
|
|
||||||
{
|
|
||||||
MessageBox(NULL,"Cannot Obtain Back Buffer","Error",MB_OK);
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (FAILED(lpDD->CreateClipper(0,&lpDDClipper,NULL)))
|
|
||||||
{
|
|
||||||
MessageBox(NULL,"Cannot Create Clipper","Error",MB_OK);
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (FAILED(lpDDClipper->SetHWnd(0,hMainWindow)))
|
|
||||||
{
|
|
||||||
MessageBox(NULL,"Cannot Set HWnd on Clipper","Error",MB_OK);
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (FAILED( DD_Primary->SetClipper(lpDDClipper)))
|
|
||||||
{
|
|
||||||
MessageBox(NULL,"Cannot Set Clipper","Error",MB_OK);
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
|
|
||||||
format.dwSize = sizeof(DDPIXELFORMAT);
|
|
||||||
if (DD_Primary->GetPixelFormat(&format) != DD_OK)
|
|
||||||
{
|
|
||||||
MessageBox(NULL,"Cannot Get Pixel Format","Error",MB_OK);
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
|
|
||||||
BitDepth=format.dwRGBBitCount;
|
|
||||||
GBitMask=format.dwGBitMask; // 0x07E0 or not
|
|
||||||
|
|
||||||
if(BitDepth==16&& GBitMask!=0x07E0)
|
|
||||||
{
|
|
||||||
converta=1;
|
|
||||||
//Init_2xSaI(555);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
converta=0;
|
|
||||||
}
|
|
||||||
|
|
||||||
if(DD_CFB!=NULL) DD_CFB->Release();
|
|
||||||
|
|
||||||
DD_CFB=NULL;
|
|
||||||
|
|
||||||
ddsd.dwSize = sizeof( ddsd );
|
|
||||||
ddsd.dwFlags = DDSD_CAPS | DDSD_HEIGHT |DDSD_WIDTH;
|
|
||||||
ddsd.ddsCaps.dwCaps = DDSCAPS_OFFSCREENPLAIN ;
|
|
||||||
|
|
||||||
ddsd.dwWidth = SurfaceX;
|
|
||||||
ddsd.dwHeight = SurfaceY;
|
|
||||||
|
|
||||||
if ( lpDD->CreateSurface( &ddsd, &DD_CFB, NULL ) != DD_OK )
|
|
||||||
{
|
|
||||||
MessageBox(NULL,"Cannot Create Surface Buffer","Error",MB_OK);
|
|
||||||
DD_CFB = NULL;
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
|
|
||||||
DrawOkay=1;
|
|
||||||
return TRUE;
|
|
||||||
}
|
|
||||||
|
|
||||||
BYTE* SurfBuf;
|
BYTE* SurfBuf;
|
||||||
DDSURFACEDESC ddsd;
|
DDSURFACEDESC ddsd;
|
||||||
|
|
||||||
@@ -1494,7 +1279,6 @@ extern BYTE BlackAndWhite;
|
|||||||
extern BYTE V8Mode;
|
extern BYTE V8Mode;
|
||||||
DWORD FirstVid=1;
|
DWORD FirstVid=1;
|
||||||
DWORD FirstFull=1;
|
DWORD FirstFull=1;
|
||||||
BYTE PrevFull=0;
|
|
||||||
extern BYTE GUIWFVID[];
|
extern BYTE GUIWFVID[];
|
||||||
void clearwin();
|
void clearwin();
|
||||||
|
|
||||||
@@ -1700,18 +1484,16 @@ void initwinvideo(void)
|
|||||||
CheckPriority();
|
CheckPriority();
|
||||||
CheckAlwaysOnTop();
|
CheckAlwaysOnTop();
|
||||||
|
|
||||||
// if(!hMainWindow) { return; }
|
if(!hMainWindow) { return; }
|
||||||
|
|
||||||
ShowWindow(hMainWindow, SW_SHOWNORMAL);
|
ShowWindow(hMainWindow, SW_SHOWNORMAL);
|
||||||
SetWindowText(hMainWindow,"ZSNESWIN");
|
SetWindowText(hMainWindow,"ZSNESWIN");
|
||||||
|
|
||||||
// MessageBox (NULL, "Done", "Init", MB_ICONERROR );
|
|
||||||
|
|
||||||
InitInput();
|
InitInput();
|
||||||
InitSound();
|
InitSound();
|
||||||
TestJoy();
|
TestJoy();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if(Moving==1) return;
|
if(Moving==1) return;
|
||||||
if(FullScreen==1)
|
if(FullScreen==1)
|
||||||
{
|
{
|
||||||
@@ -1719,7 +1501,6 @@ void initwinvideo(void)
|
|||||||
{
|
{
|
||||||
atexit(ExitFunction);
|
atexit(ExitFunction);
|
||||||
}
|
}
|
||||||
PrevFull = 1;
|
|
||||||
mode.dmSize=sizeof(DEVMODE);
|
mode.dmSize=sizeof(DEVMODE);
|
||||||
mode.dmBitsPerPel=16;
|
mode.dmBitsPerPel=16;
|
||||||
mode.dmPelsWidth=WindowWidth;
|
mode.dmPelsWidth=WindowWidth;
|
||||||
@@ -1727,29 +1508,15 @@ void initwinvideo(void)
|
|||||||
mode.dmDisplayFlags=0;
|
mode.dmDisplayFlags=0;
|
||||||
mode.dmDisplayFrequency=0;
|
mode.dmDisplayFrequency=0;
|
||||||
mode.dmFields=DM_BITSPERPEL|DM_PELSWIDTH|DM_PELSHEIGHT;
|
mode.dmFields=DM_BITSPERPEL|DM_PELSWIDTH|DM_PELSHEIGHT;
|
||||||
// ChangeDisplaySettings(&mode,0);
|
ChangeDisplaySettings(&mode,0);
|
||||||
endgame();
|
|
||||||
if(startgamefull()!=TRUE) {
|
|
||||||
exit(0);
|
|
||||||
return; }
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
ChangeDisplaySettings(NULL,0);
|
ChangeDisplaySettings(NULL,0);
|
||||||
|
|
||||||
if (PrevFull == 1) { PrevFull = 0; initwinvideo(); initwinvideo(); }
|
|
||||||
|
|
||||||
endgame();
|
|
||||||
|
|
||||||
if(startgame() != TRUE)
|
|
||||||
{
|
|
||||||
exit(0);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
// endgame();
|
//endgame();
|
||||||
|
|
||||||
|
if(startgame()!=TRUE) {return; }
|
||||||
if(newmode==1) clearwin();
|
if(newmode==1) clearwin();
|
||||||
// MessageBox (NULL, "Done", "Init", MB_ICONERROR );
|
// MessageBox (NULL, "Done", "Init", MB_ICONERROR );
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user