Ported to DirectX 8.0

This commit is contained in:
pagefault
2001-05-09 21:34:08 +00:00
parent 372ec0e753
commit e7bc5f99c0
2 changed files with 15 additions and 16 deletions

View File

@@ -1 +1 @@
/Fezsnesw.exe chips\dsp1proc.obj dos\sw.obj dos\gppro.obj dos\vesa12.obj dos\zsipx.obj dos\modemrtn.obj dos\joy.obj dos\debug.obj dos\vesa2.obj dos\initvid.obj cfgload.obj endmem.obj fixsin.obj init.obj ui.obj vcache.obj water.obj video\procvid.obj win\copyvwin.obj win\winintrf.obj win\winlink.obj win\zloaderw.obj win\ztcp.obj win\zfilew.obj win\zipxw.obj video\makev16b.obj video\makev16t.obj video\makevid.obj video\mode716.obj video\mode716b.obj video\mode716d.obj video\mode716e.obj video\mode716t.obj video\mode7.obj video\mode7ext.obj video\mv16tms.obj video\newg162.obj video\newgfx16.obj video\newgfx2.obj video\newgfx.obj video\m716text.obj video\2xsaiw.obj gui\gui.obj gui\menu.obj cpu\addrni.obj cpu\dma.obj cpu\dsp.obj cpu\dspproc.obj cpu\execute.obj cpu\irq.obj cpu\memory.obj cpu\spc700.obj cpu\stable.obj cpu\table.obj cpu\tableb.obj cpu\tablec.obj chips\dsp1emu.obj chips\fxemu2.obj chips\fxemu2b.obj chips\fxemu2c.obj chips\fxtable.obj chips\sa1proc.obj chips\sa1regs.obj chips\sfxproc.obj zip\unzip.obj zip\zzip.obj zip\zpng.obj obj\libpng.lib zlib.lib wsock32.lib user32.lib gdi32.lib shell32.lib ddraw.lib dsound.lib dinput.lib d3dx.lib /link /section:.text,erw /Fezsnesw.exe chips\dsp1proc.obj dos\sw.obj dos\gppro.obj dos\vesa12.obj dos\zsipx.obj dos\modemrtn.obj dos\joy.obj dos\debug.obj dos\vesa2.obj dos\initvid.obj cfgload.obj endmem.obj fixsin.obj init.obj ui.obj vcache.obj water.obj video\procvid.obj win\copyvwin.obj win\winintrf.obj win\winlink.obj win\zloaderw.obj win\ztcp.obj win\zfilew.obj win\zipxw.obj video\makev16b.obj video\makev16t.obj video\makevid.obj video\mode716.obj video\mode716b.obj video\mode716d.obj video\mode716e.obj video\mode716t.obj video\mode7.obj video\mode7ext.obj video\mv16tms.obj video\newg162.obj video\newgfx16.obj video\newgfx2.obj video\newgfx.obj video\m716text.obj video\2xsaiw.obj gui\gui.obj gui\menu.obj cpu\addrni.obj cpu\dma.obj cpu\dsp.obj cpu\dspproc.obj cpu\execute.obj cpu\irq.obj cpu\memory.obj cpu\spc700.obj cpu\stable.obj cpu\table.obj cpu\tableb.obj cpu\tablec.obj chips\dsp1emu.obj chips\fxemu2.obj chips\fxemu2b.obj chips\fxemu2c.obj chips\fxtable.obj chips\sa1proc.obj chips\sa1regs.obj chips\sfxproc.obj zip\unzip.obj zip\zzip.obj zip\zpng.obj obj\libpng.lib zlib.lib wsock32.lib user32.lib gdi32.lib shell32.lib ddraw.lib dsound.lib dinput8.lib d3dx.lib /link /section:.text,erw

View File

@@ -15,8 +15,8 @@
//along with this program; if not, write to the Free Software //along with this program; if not, write to the Free Software
//Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. //Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
#define DIRECTINPUT_VERSION 0x700 #define DIRECTINPUT_VERSION 0x800
#define DIRECTSOUND_VERSION 0x700 #define DIRECTSOUND_VERSION 0x800
extern "C" { extern "C" {
#include <windows.h> #include <windows.h>
@@ -53,7 +53,7 @@ extern "C"
HINSTANCE hInst; HINSTANCE hInst;
} }
LPDIRECTSOUND lpDirectSound; LPDIRECTSOUND8 lpDirectSound;
LPDIRECTSOUNDBUFFER SoundBuffer; LPDIRECTSOUNDBUFFER SoundBuffer;
LPDIRECTSOUNDBUFFER lpPrimaryBuffer; LPDIRECTSOUNDBUFFER lpPrimaryBuffer;
DSBUFFERDESC dsbd; DSBUFFERDESC dsbd;
@@ -71,10 +71,10 @@ LPDIRECTDRAWSURFACE DD_CFB = NULL;
LPDIRECTDRAWCLIPPER lpDDClipper =NULL; LPDIRECTDRAWCLIPPER lpDDClipper =NULL;
RECT rcWindow; RECT rcWindow;
LPDIRECTINPUT DInput; LPDIRECTINPUT8 DInput;
LPDIRECTINPUTDEVICE MouseInput; LPDIRECTINPUTDEVICE8 MouseInput;
LPDIRECTINPUTDEVICE KeyboardInput; LPDIRECTINPUTDEVICE8 KeyboardInput;
LPDIRECTINPUTDEVICE7 JoystickInput[4]; LPDIRECTINPUTDEVICE8 JoystickInput[4];
DIJOYSTATE js[4]; DIJOYSTATE js[4];
@@ -495,7 +495,7 @@ InitSound()
PrevSoundQuality=SoundQuality; PrevSoundQuality=SoundQuality;
PrevStereoSound=StereoSound; PrevStereoSound=StereoSound;
if(DS_OK == DirectSoundCreate(NULL, &lpDirectSound,NULL)) if(DS_OK == DirectSoundCreate8(NULL, &lpDirectSound,NULL))
{ {
if (DS_OK != lpDirectSound->SetCooperativeLevel(hMainWindow, DSSCL_NORMAL)) if (DS_OK != lpDirectSound->SetCooperativeLevel(hMainWindow, DSSCL_NORMAL))
{ {
@@ -680,7 +680,7 @@ ReInitSound()
BOOL FAR PASCAL InitJoystickInput(LPCDIDEVICEINSTANCE pdinst, LPVOID pvRef) BOOL FAR PASCAL InitJoystickInput(LPCDIDEVICEINSTANCE pdinst, LPVOID pvRef)
{ {
LPDIRECTINPUT7 pdi = (LPDIRECTINPUT7)pvRef; LPDIRECTINPUT8 pdi = (LPDIRECTINPUT8)pvRef;
// fprintf(tempf,"Cur :%d %X\n",CurrentJoy,pdinst->guidInstance); // fprintf(tempf,"Cur :%d %X\n",CurrentJoy,pdinst->guidInstance);
GUID DeviceGuid = pdinst->guidInstance; GUID DeviceGuid = pdinst->guidInstance;
@@ -688,8 +688,7 @@ BOOL FAR PASCAL InitJoystickInput(LPCDIDEVICEINSTANCE pdinst, LPVOID pvRef)
return DIENUM_CONTINUE; return DIENUM_CONTINUE;
// Create the DirectInput joystick device. // Create the DirectInput joystick device.
if (pdi->CreateDeviceEx(DeviceGuid,IID_IDirectInputDevice7, if (pdi->CreateDevice(DeviceGuid,&JoystickInput[CurrentJoy], NULL) != DI_OK)
(void**)&JoystickInput[CurrentJoy], NULL) != DI_OK)
{ {
// fprintf(tempf,"IDirectInput7::CreateDeviceEx FAILED\n"); // fprintf(tempf,"IDirectInput7::CreateDeviceEx FAILED\n");
return DIENUM_CONTINUE; return DIENUM_CONTINUE;
@@ -889,7 +888,7 @@ bool InitInput()
char message1[256]; char message1[256];
HRESULT hr; HRESULT hr;
if(FAILED(hr=DirectInputCreate(hInst,DIRECTINPUT_VERSION,&DInput,NULL))) if(DI_OK != (hr=DirectInput8Create(hInst,DIRECTINPUT_VERSION,IID_IDirectInput8A,(void **) &DInput,NULL)))
{ {
sprintf(message1,"Error initializing DirectInput\nYou may need to install DirectX 7.0a or higher located at www.microsoft.com/directx \0"); sprintf(message1,"Error initializing DirectInput\nYou may need to install DirectX 7.0a or higher located at www.microsoft.com/directx \0");
MessageBox (NULL, message1, "DirectInput Error" , MB_ICONERROR ); MessageBox (NULL, message1, "DirectInput Error" , MB_ICONERROR );
@@ -942,7 +941,7 @@ bool InitInput()
JoystickInput[0]=NULL;JoystickInput[1]=NULL;JoystickInput[2]=NULL;JoystickInput[3]=NULL; JoystickInput[0]=NULL;JoystickInput[1]=NULL;JoystickInput[2]=NULL;JoystickInput[3]=NULL;
hr=DInput->EnumDevices(DIDEVTYPE_JOYSTICK, InitJoystickInput, hr=DInput->EnumDevices(DI8DEVCLASS_GAMECTRL, InitJoystickInput,
DInput, DIEDFL_ATTACHEDONLY); DInput, DIEDFL_ATTACHEDONLY);
if(FAILED(hr)) {DInputError();return FALSE;} if(FAILED(hr)) {DInputError();return FALSE;}
@@ -964,10 +963,10 @@ void TestJoy()
JoystickInput[i]->Poll(); JoystickInput[i]->Poll();
// memset(&js[i], 0, sizeof(DIJOYSTATE)); // memset(&js[i], 0, sizeof(DIJOYSTATE));
if(IDirectInputDevice7_GetDeviceState(JoystickInput[i],sizeof(DIJOYSTATE), &js[i])==DIERR_INPUTLOST) if(IDirectInputDevice8_GetDeviceState(JoystickInput[i],sizeof(DIJOYSTATE), &js[i])==DIERR_INPUTLOST)
{ {
if(JoystickInput[i]) JoystickInput[i]->Acquire(); if(JoystickInput[i]) JoystickInput[i]->Acquire();
if(FAILED(IDirectInputDevice7_GetDeviceState(JoystickInput[i],sizeof(DIJOYSTATE), &js[i]))) return; if(FAILED(IDirectInputDevice8_GetDeviceState(JoystickInput[i],sizeof(DIJOYSTATE), &js[i]))) return;
} }