Commit Graph

6687 Commits

Author SHA1 Message Date
RadWolfie 50d21d8127 dsound: don't process flush if there's no packets 2020-12-03 21:13:20 -06:00
RadWolfie 3a506df754 dsound: Add stream's flushex flag type to extend verbose output 2020-12-03 21:13:20 -06:00
RadWolfie 5031f1aa65 dsound: remove unused cxbxr flag from log 2020-12-03 21:13:19 -06:00
RadWolfie 3209bf7be5 dsound: fix pause flags as enums instead 2020-12-03 21:13:19 -06:00
RadWolfie ee9612e263 dsound: fix stream class to match hardware with latest sampling log 2020-12-03 21:13:18 -06:00
PatrickvL 471f3894cc
Merge pull request #2058 from RadWolfie/input-list-fix
Change listing to target specific type than default order
2020-12-03 08:30:07 +01:00
RadWolfie 93a3a3b35c input: change listing to target specific type than default order 2020-12-03 00:06:14 -06:00
PatrickvL 3a7b233199
Merge pull request #2052 from LukeUsher/remove-3925-hacks
remove 3925 fog/alpha hacks
2020-11-29 17:59:35 +01:00
Luke Usher 764304c0ca
Merge pull request #2055 from CookiePLMonster/fix-completion-callback
Preserve original IO status block and context for ApcRoutine
2020-11-29 14:07:22 +00:00
Silent 0411f27c65
Preserve original IO status block and context for ApcRoutine
Fixes cases where guest's APC routine/completion callback
does not receive the original IO status block variable,
but it assumed it did (it's allowed as per WinAPI docs).

Fixes Project Gotham Racing deadlocking after intro movies
2020-11-29 11:51:18 +01:00
PatrickvL 8415397067
Merge pull request #2053 from LukeUsher/improve-texturestate-mappings
rework texturestate mapping to be more sane + fix unmapped get
2020-11-28 20:12:48 +01:00
Luke Usher a99d3f923a
Update TextureStates.cpp 2020-11-28 18:13:41 +00:00
Luke Usher 6c0bb86336 rework texturestate mapping to be more sane + fix unmapped get 2020-11-28 17:39:22 +00:00
Luke Usher 6915ccb027 remove 3925 fog/alpha hacks 2020-11-28 14:29:05 +00:00
Luke Usher 8c986c2480
Merge pull request #2040 from NZJenkins/z_fixes
Z fixes
2020-11-28 13:40:07 +00:00
PatrickvL 47795babfd
Merge pull request #2050 from CookiePLMonster/current-ps-fix
Modernize DxbxUpdateActivePixelShader
2020-11-28 09:14:46 +01:00
Silent 64672ddb4b
Modernize DxbxUpdateActivePixelShader
Fixes redundant constant setting, leaking pixel shader handle
and generally tidies up the code
2020-11-28 00:39:01 +01:00
Luke Usher 362c93801f
Merge pull request #2048 from CookiePLMonster/vertex-stream-cache-optimization
Optimize vertex stream cache for partial buffer access
2020-11-27 07:56:15 +00:00
PatrickvL 246d1fa3fe
Merge pull request #2049 from LukeUsher/renderstate-table-4034
update renderstate table with 4034 findings
2020-11-26 22:09:23 +01:00
Silent 2480582b0c
Optimize vertex stream cache for partial buffer access
Drastically reduces the amount of copied and converted data in cases
where any of the following apply:
* BaseVertexIndex is not 0
* LowIndex is not 0
* dwStartVertex is not 0

Also potentially fixes an issue where data past an indexed
vertex buffer was hashed and converted, leading to
potential false positives on dirty checks, maybe more.
2020-11-26 21:20:15 +01:00
Luke Usher 2324b798ab
Update XbConvert.cpp 2020-11-26 19:48:14 +00:00
Luke Usher 1aac347af9 update renderstate table with 4034 findings 2020-11-26 19:02:44 +00:00
PatrickvL d748d3d4f2 Removed needless externs 2020-11-26 00:44:08 +01:00
PatrickvL 698719d5ad Moved g_RenderUpscaleFactor declaration to Direct3D9.cpp (the only file where it's used).
Introduced g_RenderTargetUpscaleFactor and update it in CxbxImpl_SetRenderTarget.
Where possible, incorporate g_RenderTargetUpscaleFactor once in X and Y scaling factors.
2020-11-25 22:08:04 +01:00
Anthony d1596da695 Resolve the rendertarget upscale factor once 2020-11-25 22:08:04 +01:00
Anthony 7268219f5e Fix rendering to a non-upscaled rendertarget when upscaling is enabled
Test case: JSRF character select with upscaling
Rename RenderScaleFactor to RenderUpscaleFactor
2020-11-25 22:08:04 +01:00
Anthony 95b97b0502 - Calculate Z matching D3D9 docs (combined with Xbox depth scaling)
- Normalize Z from either (0, 1) or (0, zbuffer depth)
2020-11-25 22:07:03 +01:00
PatrickvL b2ca28198e
Merge pull request #2044 from LukeUsher/create-surface-as-texture
d3d: wrap surfaces in textures
2020-11-25 22:05:09 +01:00
PatrickvL eca9c330c5
Merge pull request #2045 from CookiePLMonster/palette-fixes
Palette fixes
2020-11-25 21:35:04 +01:00
PatrickvL beac314243 Processed review remarks 2020-11-25 21:33:46 +01:00
Silent 7af503b90c
Do not try to resolve the palettized texture if there is no palette bound
Fixes a crash in DRIV3R
2020-11-25 20:39:03 +01:00
Luke Usher ec6987d17f
Merge pull request #2041 from Blackbird88/master
Added "Silent (CookiePLMonster)"
2020-11-25 07:49:37 +00:00
Silent 4d8c4fbb68
Fix D3DDevice_SetPalette and D3DDevice_SetPalette_4 not calling to guest code
Fixes memory leaks in SetPalette functions, as they are now able
to reference count and destroy palette resources.
Also fixes a very poor SetPalette_4 LTCG function
2020-11-24 20:04:53 +01:00
Luke Usher e0b62dde9d d3d: experimental creation of surfaces as textures 2020-11-24 17:06:53 +00:00
Silent 36e6349de5
Fix a wrong NestedCallCounter in D3DDevice_SetRenderTarget_0 2020-11-24 18:04:49 +01:00
Blackbird88 8c3d1bcdfa
Added "Silent (CookiePLMonster)" 2020-11-24 13:07:40 +01:00
RadWolfie 55da0a278b
Merge pull request #2038 from RadWolfie/loader-fix
Fix free up address range's system allocated
2020-11-22 02:26:09 -06:00
RadWolfie e424d05252 fix couple variable types usage 2020-11-22 01:50:57 -06:00
RadWolfie a08145b0c2 loader: fix input for what system need to be free up reserve address ranges 2020-11-22 01:40:42 -06:00
Luke Usher 21c27b416f
Merge pull request #2032 from RadWolfie/dsound-fixes
Fix CDirectSoundStream_GetStatus for difference output over time
2020-11-21 12:37:45 +00:00
Luke Usher 9d714c4488
Merge pull request #2033 from NZJenkins/viewport_fixes2
Improve viewport calculations
2020-11-21 12:37:19 +00:00
Luke Usher 9ebdef8502
Merge pull request #2037 from ergo720/fix_loader_wine
Allow cxbxr to work again with wine under Linux
2020-11-21 12:36:47 +00:00
Anthony 46ec7516fa Improve viewport calculations and 2D rendering
- SetViewport tracks the Xbox viewport values instead of setting the viewport,
so we can calculate what we need from them
- Rework GetViewportOffsetAndScale and scaling methods
- Vertex shader programs do not depend on D3D9 viewport to transform verts
- Account for backbuffer scale
- Add some D3DSWAP flags and LOG_TEST_CASE for unhandled usage
2020-11-21 23:41:16 +13:00
ergo720 c566836f42 Allow the cxbxr to work again with wine under Linux 2020-11-20 18:59:48 +01:00
Luke Usher 6350abaaf7
Merge pull request #2036 from CookiePLMonster/release-skip-removal
Remove hacks skipping guest resource removal if they are bound
2020-11-18 10:12:29 +00:00
Silent 43eefa8041
Improve the D3D_DestroyResource__LTCG patch
EDI register is unlikely to be trashed, but use a naked function anyway
Added logging, same as the non-LTCG DestroyResource
2020-11-17 20:44:26 +01:00
Silent 74333af9c0
Remove hacks skipping guest resource removal if they are bound
Fixes games running out of guest memory:
- Outrun 2
- Monster Garage
- probably many more

Removes "Skipping Release of..." test cases
2020-11-17 20:33:34 +01:00
Luke Usher dc5f56222e
Merge pull request #2034 from CookiePLMonster/vertex-stream-offsets
Take vertex stream offset into the account when caching VBs
2020-11-16 23:07:32 +00:00
Silent 6892591084
Take vertex stream offset into the account when caching VBs
Fixes exploding vertices in TOCA Race Driver.
2020-11-16 23:52:18 +01:00
RadWolfie 1c2c02f47b dsound: fix CDirectSoundStream_GetStatus for difference output over time 2020-11-15 16:38:03 -06:00