Commit Graph

693 Commits

Author SHA1 Message Date
blueshogun96 9409a6b851 Didn't realize these changed... 2009-11-13 21:08:20 +00:00
blueshogun96 a550b71bd7 Didn't realize these changed... 2009-11-13 21:08:09 +00:00
blueshogun96 dab24dbfec 2009-11-13 21:07:08 +00:00
blueshogun96 f0bad56ee7 Added new version 2009-11-13 21:05:44 +00:00
blueshogun96 22e64d6eaa 2009-11-13 21:05:11 +00:00
blueshogun96 9d10c637af Forgot to update OpenXDK includes. Sorry about that! 2009-11-13 20:17:54 +00:00
blueshogun96 bcc8260f17 Forgot to update 2009-11-13 20:15:34 +00:00
blueshogun96 5618473d90 Just another [major] update... 2009-11-12 01:35:57 +00:00
blueshogun96 271a1cad1d Just another [major] update... 2009-11-12 01:35:50 +00:00
Daniel Stien 6838efd341 Fixed a bug in Xapi EmuRtlReAllocateHeap. Returned value was not updated with alignment offset. Caused crashes with the allocation tracker.
Temporarily fallback to simple dummy vertex shader if recompilation failed.

Added XDK 3911 OOVPAs for Xapi.
- RtlReAllocateHeap, moved back from 4432
- RtlSizeHeap, moved back from 4432

Added XDK 3936 OOVPAs for DSound.
- CMcpxBuffer_GetStatus
- CDirectSoundBuffer_GetStatus
- IDirectSoundBuffer8_GetStatus
- CMcpxVoiceClient_SetMixBins
- CDirectSoundVoice_SetMixBins
- IDirectSoundStream_SetMixBins
- IDirectSoundBuffer8_SetMixBins
- CMcpxVoiceClient_Set3dMode
- CDirectSoundVoice_SetMode
- IDirectSoundBuffer8_SetMode
- CDirectSoundBuffer_SetVelocity
- IDirectSoundBuffer8_SetVelocity, moved back from 4627
- CDirectSoundBuffer_SetPosition
- IDirectSoundBuffer8_SetPosition, moved back from 4627
2008-09-28 03:58:16 +00:00
Daniel Stien 18bcc2160c Added XDK 3911 OOVPAs for Xapi.
- XGetDevices, moved back from 4034
- XID_fCloseDevice
- XInputClose, moved back from 4361
- XInputGetCapabilities

Added XDK 3925 OOVPAs for D3D8.
- IDirect3DDevice8_CreatePixelShader
- IDirect3DDevice8_SetPixelShader (disabled existing)
- IDirect3DDevice8_GetRenderTarget
- IDirect3DSurface8_LockRect, moved back from 4361

Added XDK 5233 OOVPAs for D3D8.
- IDirect3DResource8_IsBusy, reused from 4361
- IDirect3DTexture8_LockRect, moved back from 5558
- Lock2DSurface, reused from 3925

Removed XG 5233/5558 XGUnswizzleRect OOVPAs. Not intended for HLE, caused stack corruption.

Convert PC D3DFMT_L8 to 0x13 (linear).
2008-09-22 01:08:25 +00:00
Daniel Stien 26861248d2 NtCreateFile will now fallback to parent directory if a regular file is being opened as a directory. This fixes Xapi FindFirstFile, although wildcard handling may need more work. Removed HLE for FindFirstFileA/FindNextFileA.
Temporary HLE for Xapi GetTimeZoneInformation to satisfy _stat(...) while support for EEPROM queries is missing. OOVPAs for XDK 3911 and re-used for 5233.

Fixed weak XDK 5558 D3D IDirect3DDevice8::BlockOnFence OOVPA by adding Xref to D3D::BlockOnTime. Backported to 5233.

Sanitized EmuD3D8 function parameter debug trace formatting.
2008-09-21 00:54:09 +00:00
Daniel Stien 5bed305918 Additional deferred render state updates used by Futurama.
- D3DRS_FOGDENSITY (4)
- D3DRS_RANGEFOGENABLE (5)
- D3DRS_WRAP1 (7)
- D3DRS_DIFFUSEMATERIALSOURCE (19)
- D3DRS_EMISSIVEMATERIALSOURCE (21)
2008-09-13 01:14:56 +00:00
Daniel Stien da6a1816e8 Use cached Z stencil if new stencil don't contain a surface in IDirect3DDevice8_SetRenderTarget. Used by Futurama when rendering character shadow.
Renamed SetTextureState_BackFillMode to SetRenderState_BackFillMode.

XDK 5233 D3D8 OOVPAs.
- IDirect3DDevice8::SetRenderState_Dxt1NoiseEnable
- IDirect3DDevice8::SetRenderState_BackFillMode, reused from 4432
- IDirect3DDevice8::SetRenderState_StencilCullEnable, reused from 4432
- IDirect3DDevice8::SetRenderState_RopZCmpAlwaysRead, reused from 4432
- IDirect3DDevice8::SetRenderState_RopZRead, reused from 4432
- IDirect3DDevice8::SetRenderState_DoNotCullUncompressed, reused from 4432
2008-09-12 23:33:32 +00:00
Daniel Stien 46410680e8 Activate render window before entering message dispatch loop to avoid deadlock when the message queue is empty.
Set reference count in X_D3DResource::Common field. Titles may check this value to see if a resource is registered. "Special" resources are ignored for now due to the use of the Common field to identify them.

Register D3DFMT_A8 textures. Not supported by all devices, we should check and expand to another format if necessary.

Added XDK 5849 D3D8 OOVPAs.
- IDirect3DDevice8::BeginVisibilityTest, reused from 4627
- IDirect3DDevice8::EndVisibilityTest
- IDirect3DDevice8::GetVisibilityTestResult
- IDirect3DDevice8::GetViewport
- IDirect3DDevice8::CopyRects, reused from 5233

Minor texture coordinate normalization condition fix.
2008-09-09 18:44:52 +00:00
Daniel Stien 86dfc8027c If a vertex shader doesn't contain the generic transformation instructions, assume it writes direct screen coordinates and apply naive hack to normalize oPos. 2008-09-07 03:08:25 +00:00
Daniel Stien df0153d9d5 Convert D3DSHADEMODE from Xbox to PC.
Improved inline vertex buffer handling.

Support all Xbox primitives in VertexBuffer. Quads and convex polygons are rendered by using triangles, wireframe renderering and flat shading colors will thus not be emulated correctly. Indexed meshes will still fail on patched primitives (quad list and line loop) due to lack of index buffer patching.

New D3D8 5849 OOVPAs.
- IDirect3DDevice8::DrawIndexedVerticesUP
- Reuse IDirect3DResource8::IsBusy from 4361
2008-09-06 23:33:44 +00:00
Daniel Stien 2dcf87aed2 Xapi Input fixes.
- Properly copy XINPUT_POLLING_PARAMETERS in EmuXInputOpen. Would crash in EmuXInputGetState when accessing said structure.
- Send gamepad insertion in first EmuXGetDeviceChanges call only. Would cause permanent "controller connected" message in some games.
2008-08-31 04:16:02 +00:00
Daniel Stien 2c0d3ca73a Normalize texture coordinates in FVF buffers used with linear textures. Linear textures can have non-power-of-two sizes, thus using direct image coordinates for mapping. Inline vertex buffers are patched in-place.
Added IDirect3DDevice8_SetVertexData2f OOVPA for XDK 5849.
2008-08-31 00:16:31 +00:00
Daniel Stien cbe26fd9d6 Allow viewports smaller than 640*480.
Added push buffer OOVPAs for D3D XDK 5849.
2008-08-25 21:14:11 +00:00
Daniel Stien 97e52aa668 Use C++ libc headers.
Fixed Xapi interception regression.
2008-08-24 04:54:44 +00:00
Daniel Stien cb1dbe458c Added XDK 5233 OOVPAs for D3D8.
- Locate XREF_D3DRS_MULTISAMPLEMODE and XREF_D3DRS_MULTISAMPLERENDERTARGETMODE.
- IDirect3DDevice8_SetRenderState_MultiSampleMode and
  IDirect3DDevice8_SetRenderState_MultiSampleRenderTargetMode OOVPAs.
- D3D_CommonSetRenderTarget XRef OOVPA, reuse
  EmuIDirect3DDevice8_SetRenderTarget from 4627.
- EmuIDirect3DDevice8_IsFencePending stub
- Moved back IDirect3DDevice8_InsertFence from XDK 5558
- D3D::SetFence and IDirect3DDevice8_IsFencePending 5233 OOVPAs
- Don't register stencil surface in Futurama for now

Move IDirectSoundBuffer8_SetRolloffCurve back to XDK 5233 from 5558 with minor
adjustments and renamed XRefs.
2008-08-23 03:32:59 +00:00
Daniel Stien 52db07e9a6 Added XDK 5233 OOVPAs for Xapi.
- XInputGetCapabilities
- SetThreadPriority/SetThreadPriorityBoost

Added XDK 5233 OOVPAs for D3D8.
- IDirect3DDevice8_GetViewport
- IDirect3DDevice8_SetScissors
- IDirect3DDevice8_CreateTexture

Added XDK 5233 OOVPAs for DSound.
- EmuCDirectSoundStream_SetMixBins stub
- CDirectSoundStream::SetFrequency and CDirectSoundStream::SetMixBins

Implemented SetRenderState_YuvEnable hack drawing YUV surface to overlay. Will
cause massive flickering during playback due to repeatedly overlay
initialization.

Properly AddRef(...) fake YUY2 textures.
2008-08-23 03:11:11 +00:00
Daniel Stien 8de73a718e Print stack trace on exceptions in debug mode.
Workaround for time_t* cast failure in XBE dump.

Custom version string suffix.
2008-08-23 02:48:38 +00:00
Daniel Stien 1872177ff1 Added several 5233 DSound OOVPAs and stubs for new functions.
- Stubs for new functions EmuIDirectSound8_EnableHeadphones,
  EmuIDirectSound8_SynchPlayback and EmuIDirectSoundBuffer8_SetMode
- Ignore unknown formats in EmuCDirectSoundStream_AddRef for now

Accept rewind flag (X_DSBPLAY_FROMSTART 0x02) in EmuIDirectSoundBuffer8_Play(...).

Convert Xbox D3DFMT 0x10 (linear) to D3DFMT_A1R5G5B5.
2008-08-23 02:35:58 +00:00
Daniel Stien 561c3b7d4f Implemented several kernel functions.
- NtQueryVirtualMemory to support Xapi VirtualQuery
- NtCreateSemaphore/NtReleaseSemaphore to support Xapi semaphores
- MmCreateKernelStack/MmDeleteKernelStack to support Xapi fibers

Added D3DFormat and D3DTRANSFORMSTATETYPE conversions.
- Convert PC D3DFMT_A4R4G4B4 to 0x1D (linear)
- Convert Xbox D3DFMT 0x19 (swizzled) to D3DFMT_A8
- Convert Xbox D3DFMT 0x27 (swizzled) to D3DFMT_L6V5U5
- Convert Xbox D3DTRANSFORMSTATETYPE 10 (max) to D3DTS_TEXTURE7 + 1 (experimental)

Print properly terminated XTL name in debug output.
2008-08-23 02:14:20 +00:00
Daniel Stien ced145e4be Added several 5233 D3D8 OOVPAs and stub for new function
EmuIDirect3DDevice8_SetScreenSpaceOffset(...).
2008-08-23 01:55:53 +00:00
Daniel Stien 7bc22a857f Added XDK 5233 HLE for Xapi, XG, D3D8 and DSound. Initial OOVPAs are reused
from earlier compatible versions or backported from 5558.
2008-08-23 01:50:33 +00:00
Daniel Stien 199136e926 Expanded tabs and trimmed EOL whitespace. 2008-08-23 01:29:07 +00:00
Daniel Stien df389d51f4 MS VC++ 9.0 solution and project files.
Fixed compile errors and warnings in VC++ 9.0.
- Use /FR option instead of the deprecated /Fr
- Ignore CRT deprectaion warnings
- ISO conformant names for POSIX functions
- VertexPatcher::DumpCache() visibility
- Don't include winsock2.h in EmuXOnline.h
- NTSTATUS ambiguities in EmuKrnl.cpp
- Redundant namespaces in EmuWSAStartup(...) and EmuAllocateLDT(...)
- Removed afxres.h (MFC) dependency in resource files

Bumped blob versions.
- VC++ 9.0 libjpeg.lib (imported from OgreDependencies VC9 Eihort 20080203)
- UPX version 3.03
2008-08-23 00:49:24 +00:00
martin_sw ec1781fd5b Small bugfix 2007-08-11 11:11:18 +00:00
martin_sw 6ea335a188 Forgot to add some files 2007-08-11 11:04:05 +00:00
martin_sw 9ea9791e02 Battlestar Galactica *PAL* now runs somewat ok. Added many random things. 2007-08-09 19:29:07 +00:00
martin_sw de318911ef 2007-08-09 15:08:53 +00:00
Aaron Robinson 3a5b3f3718 nothing 2006-08-21 00:50:38 +00:00
Aaron Robinson ef62e92af2 - updated to latest UPX (2.01)
- added doc section for UPX
2006-07-17 23:34:09 +00:00
Aaron Robinson 66a548584b obsolete 2006-07-17 23:29:31 +00:00
Aaron Robinson 2b7cc8f2d8 comment cleanup 2006-07-17 02:20:05 +00:00
Aaron Robinson de13bc16ef sorta fixed gnu Makefile 2006-07-15 03:08:24 +00:00
Aaron Robinson 8debdb094f - source moved to src
- project files and workspace moved to build\win32
2006-07-15 02:50:46 +00:00
Aaron Robinson a21e652da5 - fixed export script (added debug with pdb and all) 2006-07-15 02:19:18 +00:00
Aaron Robinson b774816f03 Renamed remotely 2006-07-15 02:04:43 +00:00
Aaron Robinson 62f3d8cca1 Renamed remotely 2006-07-15 02:04:31 +00:00
Aaron Robinson 93d0cf1e8c Removed file/folder 2006-07-15 02:03:42 +00:00
Aaron Robinson 10835748c3 Renamed remotely 2006-07-15 02:03:02 +00:00
Aaron Robinson 84badde5a6 Removed file/folder 2006-07-15 02:02:10 +00:00
Aaron Robinson c1a67d2eb2 Renamed remotely 2006-07-15 02:01:53 +00:00
Aaron Robinson 70a4de42a4 Renamed remotely 2006-07-15 02:01:40 +00:00
Aaron Robinson 969d9083c5 Renamed remotely 2006-07-15 02:01:16 +00:00
Aaron Robinson 3b5c243a3d Renamed remotely 2006-07-15 02:01:01 +00:00