merged sop skrutt's code
This commit is contained in:
parent
8d69272359
commit
f90a6ca9a4
|
@ -121,6 +121,9 @@ inline D3DFORMAT EmuXB2PC_D3DFormat(X_D3DFORMAT Format)
|
|||
case 0x30: // Linear (X_D3DFMT_LIN_D16)
|
||||
case 0x2C: // Swizzled (X_D3DFMT_D16)
|
||||
return D3DFMT_D16;
|
||||
|
||||
case 0x28: // Swizzled (X_D3DFMT_V8U8)
|
||||
return D3DFMT_V8U8;
|
||||
}
|
||||
|
||||
EmuCleanup("EmuXB2PC_D3DFormat: Unknown Format (0x%.08X)", Format);
|
||||
|
|
|
@ -703,4 +703,125 @@ HRESULT WINAPI EmuIDirectSoundStream_Unknown1
|
|||
DWORD dwUnknown1
|
||||
);
|
||||
|
||||
// s+
|
||||
// ******************************************************************
|
||||
// * func: EmuIDirectSoundBuffer8_SetMaxDistance
|
||||
// ******************************************************************
|
||||
HRESULT WINAPI EmuIDirectSoundBuffer8_SetMaxDistance
|
||||
(
|
||||
LPDIRECTSOUNDBUFFER8 pThis,
|
||||
FLOAT flMaxDistance,
|
||||
DWORD dwApply
|
||||
);
|
||||
|
||||
// ******************************************************************
|
||||
// * func: EmuIDirectSoundBuffer8_SetMinDistance
|
||||
// ******************************************************************
|
||||
HRESULT WINAPI EmuIDirectSoundBuffer8_SetMinDistance
|
||||
(
|
||||
LPDIRECTSOUNDBUFFER8 pThis,
|
||||
FLOAT flMaxDistance,
|
||||
DWORD dwApply
|
||||
);
|
||||
|
||||
// ******************************************************************
|
||||
// * func: EmuIDirectSoundBuffer8_SetRolloffFactor
|
||||
// ******************************************************************
|
||||
HRESULT WINAPI EmuIDirectSoundBuffer8_SetRolloffFactor
|
||||
(
|
||||
LPDIRECTSOUNDBUFFER8 pThis,
|
||||
FLOAT flRolloffFactor,
|
||||
DWORD dwApply
|
||||
);
|
||||
|
||||
// ******************************************************************
|
||||
// * func: EmuIDirectSoundBuffer8_SetDistanceFactor
|
||||
// ******************************************************************
|
||||
HRESULT WINAPI EmuIDirectSoundBuffer8_SetDistanceFactor
|
||||
(
|
||||
LPDIRECTSOUNDBUFFER8 pThis,
|
||||
FLOAT flDistanceFactor,
|
||||
DWORD dwApply
|
||||
);
|
||||
|
||||
// ******************************************************************
|
||||
// * func: EmuIDirectSoundBuffer8_SetConeAngles
|
||||
// ******************************************************************
|
||||
HRESULT WINAPI EmuIDirectSoundBuffer8_SetConeAngles
|
||||
(
|
||||
LPDIRECTSOUNDBUFFER8 pThis,
|
||||
DWORD dwInsideConeAngle,
|
||||
DWORD dwOutsideConeAngle,
|
||||
DWORD dwApply
|
||||
);
|
||||
|
||||
// ******************************************************************
|
||||
// * func: EmuIDirectSoundBuffer8_SetConeOrientation
|
||||
// ******************************************************************
|
||||
HRESULT WINAPI EmuIDirectSoundBuffer8_SetConeOrientation
|
||||
(
|
||||
LPDIRECTSOUNDBUFFER8 pThis,
|
||||
FLOAT x,
|
||||
FLOAT y,
|
||||
FLOAT z,
|
||||
DWORD dwApply
|
||||
);
|
||||
|
||||
// ******************************************************************
|
||||
// * func: EmuIDirectSoundBuffer8_SetConeOutsideVolume
|
||||
// ******************************************************************
|
||||
HRESULT WINAPI EmuIDirectSoundBuffer8_SetConeOutsideVolume
|
||||
(
|
||||
LPDIRECTSOUNDBUFFER8 pThis,
|
||||
LONG lConeOutsideVolume,
|
||||
DWORD dwApply
|
||||
);
|
||||
|
||||
// ******************************************************************
|
||||
// * func: EmuIDirectSoundBuffer8_SetPosition
|
||||
// ******************************************************************
|
||||
HRESULT WINAPI EmuIDirectSoundBuffer8_SetPosition
|
||||
(
|
||||
LPDIRECTSOUNDBUFFER8 pThis,
|
||||
FLOAT x,
|
||||
FLOAT y,
|
||||
FLOAT z,
|
||||
DWORD dwApply
|
||||
);
|
||||
|
||||
// ******************************************************************
|
||||
// * func: EmuIDirectSoundBuffer8_SetVelocity
|
||||
// ******************************************************************
|
||||
HRESULT WINAPI EmuIDirectSoundBuffer8_SetVelocity
|
||||
(
|
||||
LPDIRECTSOUNDBUFFER8 pThis,
|
||||
FLOAT x,
|
||||
FLOAT y,
|
||||
FLOAT z,
|
||||
DWORD dwApply
|
||||
);
|
||||
|
||||
// ******************************************************************
|
||||
// * func: EmuIDirectSoundBuffer8_SetDopplerFactor
|
||||
// ******************************************************************
|
||||
HRESULT WINAPI EmuIDirectSoundBuffer8_SetDopplerFactor
|
||||
(
|
||||
LPDIRECTSOUNDBUFFER8 pThis,
|
||||
FLOAT flDopplerFactor,
|
||||
DWORD dwApply
|
||||
);
|
||||
|
||||
typedef void* LPCDSI3DL2BUFFER;
|
||||
|
||||
// ******************************************************************
|
||||
// * func: EmuIDirectSoundBuffer8_SetI3DL2Source
|
||||
// ******************************************************************
|
||||
HRESULT WINAPI EmuIDirectSoundBuffer8_SetI3DL2Source
|
||||
(
|
||||
LPDIRECTSOUNDBUFFER8 pThis,
|
||||
LPCDSI3DL2BUFFER pds3db,
|
||||
DWORD dwApply
|
||||
);
|
||||
// +s
|
||||
|
||||
#endif
|
||||
|
|
|
@ -267,6 +267,19 @@ typedef struct _XTHREAD_NOTIFICATION
|
|||
}
|
||||
XTHREAD_NOTIFICATION, *PXTHREAD_NOTIFICATION;
|
||||
|
||||
// ******************************************************************
|
||||
// * XCALCSIG_SIGNATURE
|
||||
// ******************************************************************
|
||||
#define XCALCSIG_SIGNATURE_SIZE 20
|
||||
|
||||
typedef struct _XCALCSIG_SIGNATURE
|
||||
{
|
||||
BYTE Signature[XCALCSIG_SIGNATURE_SIZE];
|
||||
}
|
||||
XCALCSIG_SIGNATURE, *PXCALCSIG_SIGNATURE;
|
||||
|
||||
#define XCALCSIG_FLAG_NON_ROAMABLE (0x00000001)
|
||||
|
||||
// ******************************************************************
|
||||
// * func: EmuRtlCreateHeap
|
||||
// ******************************************************************
|
||||
|
@ -501,9 +514,42 @@ VOID WINAPI EmuXRegisterThreadNotifyRoutine
|
|||
BOOL fRegister
|
||||
);
|
||||
|
||||
// s+
|
||||
// ******************************************************************
|
||||
// * func: EmuXCalculateSignatureBegin
|
||||
// ******************************************************************
|
||||
HANDLE WINAPI EmuXCalculateSignatureBegin(DWORD dwFlags);
|
||||
HANDLE WINAPI EmuXCalculateSignatureBegin
|
||||
(
|
||||
DWORD dwFlags
|
||||
);
|
||||
|
||||
// ******************************************************************
|
||||
// * func: EmuXCalculateSignatureBegin
|
||||
// ******************************************************************
|
||||
HANDLE WINAPI EmuXCalculateSignatureBeginEx
|
||||
(
|
||||
DWORD dwFlags,
|
||||
DWORD dwAltTitleId
|
||||
);
|
||||
|
||||
// ******************************************************************
|
||||
// * func: EmuXCalculateSignatureUpdate
|
||||
// ******************************************************************
|
||||
DWORD WINAPI EmuXCalculateSignatureUpdate
|
||||
(
|
||||
HANDLE hCalcSig,
|
||||
const BYTE *pbData,
|
||||
ULONG cbData
|
||||
);
|
||||
|
||||
// ******************************************************************
|
||||
// * func: EmuXCalculateSignatureEnd
|
||||
// ******************************************************************
|
||||
DWORD WINAPI EmuXCalculateSignatureEnd
|
||||
(
|
||||
HANDLE hCalcSig,
|
||||
PXCALCSIG_SIGNATURE pSignature
|
||||
);
|
||||
// +s
|
||||
|
||||
#endif
|
||||
|
|
|
@ -179,7 +179,34 @@ enum XRefDataBaseOffset
|
|||
XREF_GET2DSURFACEDESCB,
|
||||
XREF_COMMONSETRENDERTARGET,
|
||||
XREF_COMMITDEFERREDSETTINGSA,
|
||||
XREF_COMMITDEFERREDSETTINGSB
|
||||
XREF_COMMITDEFERREDSETTINGSB,
|
||||
// s+
|
||||
// DSOUND
|
||||
XREF_DSVOICESETMAXDISTANCE,
|
||||
XREF_DSVOICESETMINDISTANCE,
|
||||
XREF_DSVOICESETROLLOFFFACTOR,
|
||||
XREF_DSVOICESETDISTANCEFACTOR,
|
||||
XREF_DSVOICESETCONEANGLES,
|
||||
XREF_DSVOICESETCONEORIENTATION,
|
||||
XREF_DSVOICESETCONEOUTSIDEVOLUME,
|
||||
XREF_DSVOICESETPOSITION,
|
||||
XREF_DSVOICESETVELOCITY,
|
||||
XREF_DSVOICESETDOPPLERFACTOR,
|
||||
XREF_DSVOICESETI3DL2SOURCE,
|
||||
XREF_DSBUFFERSETMAXDISTANCE,
|
||||
XREF_DSBUFFERSETMINDISTANCE,
|
||||
XREF_DSBUFFERSETROLLOFFFACTOR,
|
||||
XREF_DSBUFFERSETDISTANCEFACTOR,
|
||||
XREF_DSBUFFERSETCONEANGLES,
|
||||
XREF_DSBUFFERSETCONEORIENTATION,
|
||||
XREF_DSBUFFERSETCONEOUTSIDEVOLUME,
|
||||
XREF_DSBUFFERSETPOSITION,
|
||||
XREF_DSBUFFERSETVELOCITY,
|
||||
XREF_DSBUFFERSETDOPPLERFACTOR,
|
||||
XREF_DSBUFFERSETI3DL2SOURCE,
|
||||
// XAPI
|
||||
XREF_XAPIXCALCULATESIGNATUREBEGINEX
|
||||
// +s
|
||||
};
|
||||
|
||||
#endif
|
||||
|
|
|
@ -239,7 +239,10 @@ extern "C" CXBXKRNL_API void NTAPI EmuInit
|
|||
|
||||
g_EmuShared->GetXbePath(szBuffer);
|
||||
|
||||
SetCurrentDirectory(szBuffer);
|
||||
if(szBuffer && *szBuffer)
|
||||
SetCurrentDirectory(szBuffer);
|
||||
else
|
||||
GetCurrentDirectory(260, szBuffer);
|
||||
|
||||
g_hCurDir = CreateFile(szBuffer, GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING, FILE_FLAG_BACKUP_SEMANTICS, NULL);
|
||||
|
||||
|
|
|
@ -2249,3 +2249,350 @@ HRESULT WINAPI XTL::EmuIDirectSoundStream_Unknown1
|
|||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
// s+
|
||||
// ******************************************************************
|
||||
// * func: EmuIDirectSoundBuffer8_SetMaxDistance
|
||||
// ******************************************************************
|
||||
HRESULT WINAPI XTL::EmuIDirectSoundBuffer8_SetMaxDistance
|
||||
(
|
||||
LPDIRECTSOUNDBUFFER8 pThis,
|
||||
FLOAT flMaxDistance,
|
||||
DWORD dwApply
|
||||
)
|
||||
{
|
||||
// debug trace
|
||||
#ifdef _DEBUG_TRACE
|
||||
{
|
||||
EmuSwapFS(); // Win2k/XP FS
|
||||
printf("EmuDSound (0x%X): EmuIDirectSoundBuffer8_SetMaxDistance\n"
|
||||
"(\n"
|
||||
" pThis : 0x%.08X\n"
|
||||
" flMaxDistance : %f\n"
|
||||
" dwApply : 0x%.08X\n"
|
||||
");\n",
|
||||
GetCurrentThreadId(), pThis, flMaxDistance, dwApply);
|
||||
EmuSwapFS(); // XBox FS
|
||||
}
|
||||
#endif
|
||||
|
||||
// TODO: Actually do something
|
||||
|
||||
return DS_OK;
|
||||
}
|
||||
|
||||
// ******************************************************************
|
||||
// * func: EmuIDirectSoundBuffer8_SetMinDistance
|
||||
// ******************************************************************
|
||||
HRESULT WINAPI XTL::EmuIDirectSoundBuffer8_SetMinDistance
|
||||
(
|
||||
LPDIRECTSOUNDBUFFER8 pThis,
|
||||
FLOAT flMinDistance,
|
||||
DWORD dwApply
|
||||
)
|
||||
{
|
||||
// debug trace
|
||||
#ifdef _DEBUG_TRACE
|
||||
{
|
||||
EmuSwapFS(); // Win2k/XP FS
|
||||
printf("EmuDSound (0x%X): EmuIDirectSoundBuffer8_SetMinDistance\n"
|
||||
"(\n"
|
||||
" pThis : 0x%.08X\n"
|
||||
" flMinDistance : %f\n"
|
||||
" dwApply : 0x%.08X\n"
|
||||
");\n",
|
||||
GetCurrentThreadId(), pThis, flMinDistance, dwApply);
|
||||
EmuSwapFS(); // XBox FS
|
||||
}
|
||||
#endif
|
||||
|
||||
// TODO: Actually do something
|
||||
|
||||
return DS_OK;
|
||||
}
|
||||
|
||||
// ******************************************************************
|
||||
// * func: EmuIDirectSoundBuffer8_SetRolloffFactor
|
||||
// ******************************************************************
|
||||
HRESULT WINAPI XTL::EmuIDirectSoundBuffer8_SetRolloffFactor
|
||||
(
|
||||
LPDIRECTSOUNDBUFFER8 pThis,
|
||||
FLOAT flRolloffFactor,
|
||||
DWORD dwApply
|
||||
)
|
||||
{
|
||||
// debug trace
|
||||
#ifdef _DEBUG_TRACE
|
||||
{
|
||||
EmuSwapFS(); // Win2k/XP FS
|
||||
printf("EmuDSound (0x%X): EmuIDirectSoundBuffer8_SetRolloffFactor\n"
|
||||
"(\n"
|
||||
" pThis : 0x%.08X\n"
|
||||
" flRolloffFactor : %f\n"
|
||||
" dwApply : 0x%.08X\n"
|
||||
");\n",
|
||||
GetCurrentThreadId(), pThis, flRolloffFactor, dwApply);
|
||||
EmuSwapFS(); // XBox FS
|
||||
}
|
||||
#endif
|
||||
|
||||
// TODO: Actually do something
|
||||
|
||||
return DS_OK;
|
||||
}
|
||||
|
||||
// ******************************************************************
|
||||
// * func: EmuIDirectSoundBuffer8_SetDistanceFactor
|
||||
// ******************************************************************
|
||||
HRESULT WINAPI XTL::EmuIDirectSoundBuffer8_SetDistanceFactor
|
||||
(
|
||||
LPDIRECTSOUNDBUFFER8 pThis,
|
||||
FLOAT flDistanceFactor,
|
||||
DWORD dwApply
|
||||
)
|
||||
{
|
||||
// debug trace
|
||||
#ifdef _DEBUG_TRACE
|
||||
{
|
||||
EmuSwapFS(); // Win2k/XP FS
|
||||
printf("EmuDSound (0x%X): EmuIDirectSoundBuffer8_SetDistanceFactor\n"
|
||||
"(\n"
|
||||
" pThis : 0x%.08X\n"
|
||||
" flDistanceFactor : %f\n"
|
||||
" dwApply : 0x%.08X\n"
|
||||
");\n",
|
||||
GetCurrentThreadId(), pThis, flDistanceFactor, dwApply);
|
||||
EmuSwapFS(); // XBox FS
|
||||
}
|
||||
#endif
|
||||
|
||||
// TODO: Actually do something
|
||||
|
||||
return DS_OK;
|
||||
}
|
||||
|
||||
// ******************************************************************
|
||||
// * func: EmuIDirectSoundBuffer8_SetConeAngles
|
||||
// ******************************************************************
|
||||
HRESULT WINAPI XTL::EmuIDirectSoundBuffer8_SetConeAngles
|
||||
(
|
||||
LPDIRECTSOUNDBUFFER8 pThis,
|
||||
DWORD dwInsideConeAngle,
|
||||
DWORD dwOutsideConeAngle,
|
||||
DWORD dwApply
|
||||
)
|
||||
{
|
||||
// debug trace
|
||||
#ifdef _DEBUG_TRACE
|
||||
{
|
||||
EmuSwapFS(); // Win2k/XP FS
|
||||
printf("EmuDSound (0x%X): EmuIDirectSoundBuffer8_SetConeAngles\n"
|
||||
"(\n"
|
||||
" pThis : 0x%.08X\n"
|
||||
" dwInsideConeAngle : 0x%.08X\n"
|
||||
" dwOutsideConeAngle : 0x%.08X\n"
|
||||
" dwApply : 0x%.08X\n"
|
||||
");\n",
|
||||
GetCurrentThreadId(), pThis, dwInsideConeAngle,
|
||||
dwOutsideConeAngle, dwApply);
|
||||
EmuSwapFS(); // XBox FS
|
||||
}
|
||||
#endif
|
||||
|
||||
// TODO: Actually do something
|
||||
|
||||
return DS_OK;
|
||||
}
|
||||
|
||||
// ******************************************************************
|
||||
// * func: EmuIDirectSoundBuffer8_SetConeOrientation
|
||||
// ******************************************************************
|
||||
HRESULT WINAPI XTL::EmuIDirectSoundBuffer8_SetConeOrientation
|
||||
(
|
||||
LPDIRECTSOUNDBUFFER8 pThis,
|
||||
FLOAT x,
|
||||
FLOAT y,
|
||||
FLOAT z,
|
||||
DWORD dwApply
|
||||
)
|
||||
{
|
||||
// debug trace
|
||||
#ifdef _DEBUG_TRACE
|
||||
{
|
||||
EmuSwapFS(); // Win2k/XP FS
|
||||
printf("EmuDSound (0x%X): EmuIDirectSoundBuffer8_SetConeOrientation\n"
|
||||
"(\n"
|
||||
" pThis : 0x%.08X\n"
|
||||
" x : %f\n"
|
||||
" y : %f\n"
|
||||
" z : %f\n"
|
||||
" dwApply : 0x%.08X\n"
|
||||
");\n",
|
||||
GetCurrentThreadId(), pThis, x, y, z, dwApply);
|
||||
EmuSwapFS(); // XBox FS
|
||||
}
|
||||
#endif
|
||||
|
||||
// TODO: Actually do something
|
||||
|
||||
return DS_OK;
|
||||
}
|
||||
|
||||
// ******************************************************************
|
||||
// * func: EmuIDirectSoundBuffer8_SetConeOutsideVolume
|
||||
// ******************************************************************
|
||||
HRESULT WINAPI XTL::EmuIDirectSoundBuffer8_SetConeOutsideVolume
|
||||
(
|
||||
LPDIRECTSOUNDBUFFER8 pThis,
|
||||
LONG lConeOutsideVolume,
|
||||
DWORD dwApply
|
||||
)
|
||||
{
|
||||
// debug trace
|
||||
#ifdef _DEBUG_TRACE
|
||||
{
|
||||
EmuSwapFS(); // Win2k/XP FS
|
||||
printf("EmuDSound (0x%X): EmuIDirectSoundBuffer8_SetConeOutsideVolume\n"
|
||||
"(\n"
|
||||
" pThis : 0x%.08X\n"
|
||||
" lConeOutsideVolume : 0x%.08X\n"
|
||||
" dwApply : 0x%.08X\n"
|
||||
");\n",
|
||||
GetCurrentThreadId(), pThis, lConeOutsideVolume, dwApply);
|
||||
EmuSwapFS(); // XBox FS
|
||||
}
|
||||
#endif
|
||||
|
||||
// TODO: Actually do something
|
||||
|
||||
return DS_OK;
|
||||
}
|
||||
|
||||
// ******************************************************************
|
||||
// * func: EmuIDirectSoundBuffer8_SetPosition
|
||||
// ******************************************************************
|
||||
HRESULT WINAPI XTL::EmuIDirectSoundBuffer8_SetPosition
|
||||
(
|
||||
LPDIRECTSOUNDBUFFER8 pThis,
|
||||
FLOAT x,
|
||||
FLOAT y,
|
||||
FLOAT z,
|
||||
DWORD dwApply
|
||||
)
|
||||
{
|
||||
// debug trace
|
||||
#ifdef _DEBUG_TRACE
|
||||
{
|
||||
EmuSwapFS(); // Win2k/XP FS
|
||||
printf("EmuDSound (0x%X): EmuIDirectSoundBuffer8_SetPosition\n"
|
||||
"(\n"
|
||||
" pThis : 0x%.08X\n"
|
||||
" x : %f\n"
|
||||
" y : %f\n"
|
||||
" z : %f\n"
|
||||
" dwApply : 0x%.08X\n"
|
||||
");\n",
|
||||
GetCurrentThreadId(), pThis, x, y, z, dwApply);
|
||||
EmuSwapFS(); // XBox FS
|
||||
}
|
||||
#endif
|
||||
|
||||
// TODO: Actually do something
|
||||
|
||||
return DS_OK;
|
||||
}
|
||||
|
||||
// ******************************************************************
|
||||
// * func: EmuIDirectSoundBuffer8_SetVelocity
|
||||
// ******************************************************************
|
||||
HRESULT WINAPI XTL::EmuIDirectSoundBuffer8_SetVelocity
|
||||
(
|
||||
LPDIRECTSOUNDBUFFER8 pThis,
|
||||
FLOAT x,
|
||||
FLOAT y,
|
||||
FLOAT z,
|
||||
DWORD dwApply
|
||||
)
|
||||
{
|
||||
// debug trace
|
||||
#ifdef _DEBUG_TRACE
|
||||
{
|
||||
EmuSwapFS(); // Win2k/XP FS
|
||||
printf("EmuDSound (0x%X): EmuIDirectSoundBuffer8_SetVelocity\n"
|
||||
"(\n"
|
||||
" pThis : 0x%.08X\n"
|
||||
" x : %f\n"
|
||||
" y : %f\n"
|
||||
" z : %f\n"
|
||||
" dwApply : 0x%.08X\n"
|
||||
");\n",
|
||||
GetCurrentThreadId(), pThis, x, y, z, dwApply);
|
||||
EmuSwapFS(); // XBox FS
|
||||
}
|
||||
#endif
|
||||
|
||||
// TODO: Actually do something
|
||||
|
||||
return DS_OK;
|
||||
}
|
||||
|
||||
// ******************************************************************
|
||||
// * func: EmuIDirectSoundBuffer8_SetDopplerFactor
|
||||
// ******************************************************************
|
||||
HRESULT WINAPI XTL::EmuIDirectSoundBuffer8_SetDopplerFactor
|
||||
(
|
||||
LPDIRECTSOUNDBUFFER8 pThis,
|
||||
FLOAT flDopplerFactor,
|
||||
DWORD dwApply
|
||||
)
|
||||
{
|
||||
// debug trace
|
||||
#ifdef _DEBUG_TRACE
|
||||
{
|
||||
EmuSwapFS(); // Win2k/XP FS
|
||||
printf("EmuDSound (0x%X): EmuIDirectSoundBuffer8_SetConeOutsideVolume\n"
|
||||
"(\n"
|
||||
" pThis : 0x%.08X\n"
|
||||
" flDopplerFactor : %f\n"
|
||||
" dwApply : 0x%.08X\n"
|
||||
");\n",
|
||||
GetCurrentThreadId(), pThis, flDopplerFactor, dwApply);
|
||||
EmuSwapFS(); // XBox FS
|
||||
}
|
||||
#endif
|
||||
|
||||
// TODO: Actually do something
|
||||
|
||||
return DS_OK;
|
||||
}
|
||||
|
||||
// ******************************************************************
|
||||
// * func: EmuIDirectSoundBuffer8_SetI3DL2Source
|
||||
// ******************************************************************
|
||||
HRESULT WINAPI XTL::EmuIDirectSoundBuffer8_SetI3DL2Source
|
||||
(
|
||||
LPDIRECTSOUNDBUFFER8 pThis,
|
||||
LPCDSI3DL2BUFFER pds3db,
|
||||
DWORD dwApply
|
||||
)
|
||||
{
|
||||
// debug trace
|
||||
#ifdef _DEBUG_TRACE
|
||||
{
|
||||
EmuSwapFS(); // Win2k/XP FS
|
||||
printf("EmuDSound (0x%X): EmuIDirectSoundBuffer8_SetI3DL2Source\n"
|
||||
"(\n"
|
||||
" pThis : 0x%.08X\n"
|
||||
" pds3db : 0x%.08X\n"
|
||||
" dwApply : 0x%.08X\n"
|
||||
");\n",
|
||||
GetCurrentThreadId(), pThis, pds3db, dwApply);
|
||||
EmuSwapFS(); // XBox FS
|
||||
}
|
||||
#endif
|
||||
|
||||
// TODO: Actually do something
|
||||
|
||||
return DS_OK;
|
||||
}
|
||||
// +s
|
||||
|
|
|
@ -963,7 +963,10 @@ VOID WINAPI XTL::EmuXRegisterThreadNotifyRoutine
|
|||
// ******************************************************************
|
||||
// * func: EmuXCalculateSignatureBegin
|
||||
// ******************************************************************
|
||||
HANDLE WINAPI XTL::EmuXCalculateSignatureBegin(DWORD dwFlags)
|
||||
HANDLE WINAPI XTL::EmuXCalculateSignatureBegin
|
||||
(
|
||||
DWORD dwFlags
|
||||
)
|
||||
{
|
||||
EmuSwapFS(); // Win2k/XP FS
|
||||
|
||||
|
@ -985,3 +988,96 @@ HANDLE WINAPI XTL::EmuXCalculateSignatureBegin(DWORD dwFlags)
|
|||
// return a fake handle value for now
|
||||
return (PVOID)0xAAAAAAAA;
|
||||
}
|
||||
|
||||
// ******************************************************************
|
||||
// * func: EmuXCalculateSignatureBeginEx
|
||||
// ******************************************************************
|
||||
HANDLE WINAPI XTL::EmuXCalculateSignatureBeginEx
|
||||
(
|
||||
DWORD dwFlags,
|
||||
DWORD dwAltTitleId
|
||||
)
|
||||
{
|
||||
EmuSwapFS(); // Win2k/XP FS
|
||||
|
||||
// ******************************************************************
|
||||
// * debug trace
|
||||
// ******************************************************************
|
||||
#ifdef _DEBUG_TRACE
|
||||
{
|
||||
printf("EmuXapi (0x%X): XCalculateSignatureBeginEx\n"
|
||||
"(\n"
|
||||
" dwFlags : 0x%.08X\n",
|
||||
" dwAltTitleId : 0x%.08X\n",
|
||||
");\n",
|
||||
GetCurrentThreadId(), dwFlags, dwAltTitleId);
|
||||
}
|
||||
#endif
|
||||
|
||||
EmuSwapFS(); // XBox FS
|
||||
|
||||
// return a fake handle value for now
|
||||
return (PVOID)0xAAAAAAAA;
|
||||
}
|
||||
|
||||
// ******************************************************************
|
||||
// * func: EmuXCalculateSignatureUpdate
|
||||
// ******************************************************************
|
||||
DWORD WINAPI XTL::EmuXCalculateSignatureUpdate
|
||||
(
|
||||
HANDLE hCalcSig,
|
||||
const BYTE *pbData,
|
||||
ULONG cbData
|
||||
)
|
||||
{
|
||||
EmuSwapFS(); // Win2k/XP FS
|
||||
|
||||
// ******************************************************************
|
||||
// * debug trace
|
||||
// ******************************************************************
|
||||
#ifdef _DEBUG_TRACE
|
||||
{
|
||||
printf("EmuXapi (0x%X): XCalculateSignatureUpdate\n"
|
||||
"(\n"
|
||||
" hCalcSig : 0x%.08X\n",
|
||||
" pbData : 0x%.08X\n",
|
||||
" cbData : 0x%.08X\n",
|
||||
");\n",
|
||||
GetCurrentThreadId(), hCalcSig, pbData, cbData);
|
||||
}
|
||||
#endif
|
||||
|
||||
EmuSwapFS(); // XBox FS
|
||||
|
||||
return ERROR_SUCCESS;
|
||||
}
|
||||
|
||||
// ******************************************************************
|
||||
// * func: EmuXCalculateSignatureEnd
|
||||
// ******************************************************************
|
||||
DWORD WINAPI XTL::EmuXCalculateSignatureEnd
|
||||
(
|
||||
HANDLE hCalcSig,
|
||||
PXCALCSIG_SIGNATURE pSignature
|
||||
)
|
||||
{
|
||||
EmuSwapFS(); // Win2k/XP FS
|
||||
|
||||
// ******************************************************************
|
||||
// * debug trace
|
||||
// ******************************************************************
|
||||
#ifdef _DEBUG_TRACE
|
||||
{
|
||||
printf("EmuXapi (0x%X): XCalculateSignatureEnd\n"
|
||||
"(\n"
|
||||
" hCalcSig : 0x%.08X\n",
|
||||
" pSignature : 0x%.08X\n",
|
||||
");\n",
|
||||
GetCurrentThreadId(), hCalcSig, pSignature);
|
||||
}
|
||||
#endif
|
||||
|
||||
EmuSwapFS(); // XBox FS
|
||||
|
||||
return ERROR_SUCCESS;
|
||||
}
|
||||
|
|
|
@ -291,6 +291,31 @@ extern uint32 XRefDataBase[] =
|
|||
-1, // XREF_COMMONSETRENDERTARGET
|
||||
-1, // XREF_COMMITDEFERREDSETTINGSA
|
||||
-1, // XREF_COMMITDEFERREDSETTINGSB
|
||||
// s+
|
||||
-1, // XREF_DSVOICESETMAXDISTANCE
|
||||
-1, // XREF_DSVOICESETMINDISTANCE
|
||||
-1, // XREF_DSVOICESETROLLOFFFACTOR
|
||||
-1, // XREF_DSVOICESETDISTANCEFACTOR
|
||||
-1, // XREF_DSVOICESETCONEANGLES
|
||||
-1, // XREF_DSVOICESETCONEORIENTATION
|
||||
-1, // XREF_DSVOICESETCONEOUTSIDEVOLUME
|
||||
-1, // XREF_DSVOICESETPOSITION
|
||||
-1, // XREF_DSVOICESETVELOCITY
|
||||
-1, // XREF_DSVOICESETDOPPLERFACTOR
|
||||
-1, // XREF_DSVOICESETI3DL2SOURCE
|
||||
-1, // XREF_DSBUFFERSETMAXDISTANCE
|
||||
-1, // XREF_DSBUFFERSETMINDISTANCE
|
||||
-1, // XREF_DSBUFFERSETROLLOFFFACTOR
|
||||
-1, // XREF_DSBUFFERSETDISTANCEFACTOR
|
||||
-1, // XREF_DSBUFFERSETCONEANGLES
|
||||
-1, // XREF_DSBUFFERSETCONEORIENTATION
|
||||
-1, // XREF_DSBUFFERSETCONEOUTSIDEVOLUME
|
||||
-1, // XREF_DSBUFFERSETPOSITION
|
||||
-1, // XREF_DSBUFFERSETVELOCITY
|
||||
-1, // XREF_DSBUFFERSETDOPPLERFACTOR
|
||||
-1, // XREF_DSBUFFERSETI3DL2SOURCE
|
||||
-1, //XREF_XAPIXCALCULATESIGNATUREBEGINEX
|
||||
// +s
|
||||
};
|
||||
|
||||
// ******************************************************************
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -126,6 +126,127 @@ SOOVPA<8> XMountUtilityDrive_1_0_4627 =
|
|||
}
|
||||
};
|
||||
|
||||
// s+
|
||||
// ******************************************************************
|
||||
// * XCalculateSignatureBeginEx
|
||||
// ******************************************************************
|
||||
SOOVPA<8> XCalculateSignatureBeginEx_1_0_4627 =
|
||||
{
|
||||
0, // Large == 0
|
||||
8, // Count == 8
|
||||
|
||||
XREF_XAPIXCALCULATESIGNATUREBEGINEX, // XRef Is Saved
|
||||
0, // XRef Not Used
|
||||
|
||||
{
|
||||
// XCalculateSignatureBeginEx+0x09 : push 7Ch
|
||||
{ 0x09, 0x6A },
|
||||
{ 0x0A, 0x7C },
|
||||
|
||||
// XCalculateSignatureBeginEx+0x2D : lea eax, [esi+5Ch]
|
||||
{ 0x2D, 0x8D },
|
||||
{ 0x2E, 0x46 },
|
||||
{ 0x2F, 0x5C },
|
||||
|
||||
// XCalculateSignatureBeginEx+0xE8 : cmp edx, 40h ; '@'
|
||||
{ 0x43, 0x83 },
|
||||
{ 0x44, 0xFA },
|
||||
{ 0x45, 0x40 },
|
||||
}
|
||||
};
|
||||
|
||||
// ******************************************************************
|
||||
// * XCalculateSignatureBegin
|
||||
// ******************************************************************
|
||||
SOOVPA<12> XCalculateSignatureBegin_1_0_4627 =
|
||||
{
|
||||
0, // Large == 0
|
||||
12, // Count == 12
|
||||
|
||||
-1, // XRef Not Saved
|
||||
1, // XRef Is Used
|
||||
|
||||
{
|
||||
// XCalculateSignatureBegin+0x0C : call [XCalculateSignatureBeginEx]
|
||||
{ 0x0D, XREF_XAPIXCALCULATESIGNATUREBEGINEX },
|
||||
|
||||
// XCalculateSignatureBegin+0x00 : mov eax, ds:10118h
|
||||
{ 0x00, 0xA1 },
|
||||
{ 0x01, 0x18 },
|
||||
{ 0x02, 0x01 },
|
||||
{ 0x03, 0x01 },
|
||||
{ 0x04, 0x00 },
|
||||
|
||||
// XCalculateSignatureBegin+0x08 : push [esp+4+arg_0]
|
||||
{ 0x08, 0xFF },
|
||||
{ 0x09, 0x74 },
|
||||
{ 0x0A, 0x24 },
|
||||
{ 0x0B, 0x08 },
|
||||
|
||||
// XCalculateSignatureBegin+0x11 : retn 4
|
||||
{ 0x12, 0x04 },
|
||||
{ 0x13, 0x00 },
|
||||
}
|
||||
};
|
||||
|
||||
// ******************************************************************
|
||||
// * XCalculateSignatureUpdate
|
||||
// ******************************************************************
|
||||
SOOVPA<9> XCalculateSignatureUpdate_1_0_4627 =
|
||||
{
|
||||
0, // Large == 0
|
||||
9, // Count == 9
|
||||
|
||||
-1, // XRef Not Saved
|
||||
0, // XRef Not Used
|
||||
|
||||
{
|
||||
// XCalculateSignatureUpdate+0x04 : mov eax, [esp+4+arg_0]
|
||||
{ 0x04, 0x8B },
|
||||
{ 0x05, 0x44 },
|
||||
{ 0x06, 0x24 },
|
||||
{ 0x07, 0x08 },
|
||||
|
||||
// XCalculateSignatureUpdate+0x0C : add eax, 8
|
||||
{ 0x0C, 0x83 },
|
||||
{ 0x0D, 0xC0 },
|
||||
{ 0x0E, 0x08 },
|
||||
|
||||
// XCalculateSignatureUpdate+0x11 : xor eax, eax
|
||||
{ 0x15, 0x33 },
|
||||
{ 0x16, 0xC0 },
|
||||
}
|
||||
};
|
||||
|
||||
// ******************************************************************
|
||||
// * XCalculateSignatureEnd
|
||||
// ******************************************************************
|
||||
SOOVPA<8> XCalculateSignatureEnd_1_0_4627 =
|
||||
{
|
||||
0, // Large == 0
|
||||
8, // Count == 8
|
||||
|
||||
-1, // XRef Not Saved
|
||||
0, // XRef Not Used
|
||||
|
||||
{
|
||||
// XCalculateSignatureEnd+0x03 : sub esp, 14h
|
||||
{ 0x03, 0x83 },
|
||||
{ 0x04, 0xEC },
|
||||
{ 0x05, 0x14 },
|
||||
|
||||
// XCalculateSignatureEnd+0x22 : push 10h
|
||||
{ 0x22, 0x6A },
|
||||
{ 0x23, 0x10 },
|
||||
|
||||
// XCalculateSignatureEnd+0x37 : lea eax, [ebp+var_14]
|
||||
{ 0x37, 0x8D },
|
||||
{ 0x38, 0x45 },
|
||||
{ 0x39, 0xEC },
|
||||
}
|
||||
};
|
||||
// +s
|
||||
|
||||
// ******************************************************************
|
||||
// * XAPI_1_0_4627
|
||||
// ******************************************************************
|
||||
|
@ -273,6 +394,48 @@ OOVPATable XAPI_1_0_4627[] =
|
|||
"EmuXapiBootDash"
|
||||
#endif
|
||||
},
|
||||
// +s
|
||||
// XCalculateSignatureBeginEx
|
||||
{
|
||||
(OOVPA*)&XCalculateSignatureBeginEx_1_0_4627,
|
||||
|
||||
XTL::EmuXCalculateSignatureBeginEx,
|
||||
|
||||
#ifdef _DEBUG_TRACE
|
||||
"EmuXCalculateSignatureBeginEx (XREF&FUNC)"
|
||||
#endif
|
||||
},
|
||||
// XCalculateSignatureBegin
|
||||
{
|
||||
(OOVPA*)&XCalculateSignatureBegin_1_0_4627,
|
||||
|
||||
XTL::EmuXCalculateSignatureBegin,
|
||||
|
||||
#ifdef _DEBUG_TRACE
|
||||
"EmuXCalculateSignatureBegin"
|
||||
#endif
|
||||
},
|
||||
// XCalculateSignatureUpdate
|
||||
{
|
||||
(OOVPA*)&XCalculateSignatureUpdate_1_0_4627,
|
||||
|
||||
XTL::EmuXCalculateSignatureUpdate,
|
||||
|
||||
#ifdef _DEBUG_TRACE
|
||||
"EmuXCalculateSignatureUpdate"
|
||||
#endif
|
||||
},
|
||||
// XCalculateSignatureEnd
|
||||
{
|
||||
(OOVPA*)&XCalculateSignatureEnd_1_0_4627,
|
||||
|
||||
XTL::EmuXCalculateSignatureEnd,
|
||||
|
||||
#ifdef _DEBUG_TRACE
|
||||
"EmuXCalculateSignatureEnd"
|
||||
#endif
|
||||
},
|
||||
// s+
|
||||
};
|
||||
|
||||
// ******************************************************************
|
||||
|
|
Loading…
Reference in New Issue