Commit Graph

6766 Commits

Author SHA1 Message Date
Anthony 63e1e0d339 Handle game title strings that aren't null terminated
Fixes instability in King Kong since its title name uses all 40 characters
* Rename wszTitleName to wsTitleName
* Pass length to std::string constructor
* Ensure null termination when copying to m_szAsciiTitle
2021-02-27 20:21:59 +13:00
PatrickvL 8f848f8dda
Merge pull request #2146 from NZJenkins/handle-handling
Implement IsEmuHandle by keeping a lookup of EmuHandle objects
2021-02-27 01:09:49 +01:00
Anthony de20deaa8a Detect when NtQuerySymbolicLinkObject is called without an EmuHandle 2021-02-26 20:59:06 +13:00
Anthony 16c449ddc7 Drop Handle <-> EmuHandle conversion step 2021-02-25 22:48:00 +13:00
Anthony f818e43fc7 - use read/write locking via shared_mutex
- lock in IsEmuHandle
2021-02-25 22:02:41 +13:00
Anthony 7c51e2e34b Use lock_guard instead of explicit lock/unlock 2021-02-25 21:38:24 +13:00
Anthony 3dd4ca7349 Implement IsEmuHandle by keeping a lookup of EmuHandle objects
Fixes a crash in Amped on loading a map after having exited one
Amped requests an invalid handle 0xFDFDFDFD
IsEmuHandle return a false positive and we'd crash trying to call NtClose()
2021-02-25 21:10:55 +13:00
RadWolfie c36da13798
Merge pull request #2140 from ergo720/mem_alloc_drop
Removed redundant allocation functions in VMManager
2021-02-20 10:22:02 -06:00
ergo720 1b2308f3e1 Removed redundant allocate functions 2021-02-20 00:46:56 +01:00
RadWolfie 86788a558e
Merge pull request #2135 from ergo720/mouse_wnd_pos
Add support for mouse input as cursor position relative to the rendering window
2021-02-19 17:38:09 -06:00
ergo720 559230a02a Add tooltip to buttons in input gui 2021-02-19 20:37:24 +01:00
ergo720 240dc03dd5 Add support for mouse input as cursor position relative to the rendering window 2021-02-11 17:31:22 +01:00
ergo720 bf6d8b804f
Merge pull request #2134 from ergo720/sb_ctrl
Add Steel Battalion controller support to input gui
2021-02-11 15:03:39 +01:00
ergo720 07b4738e97 Review remarks 2021-02-09 12:36:14 +01:00
ergo720 cd362b6383 Avoid a crash when changing the device type at runtime in the input gui 2021-02-09 12:33:00 +01:00
ergo720 f750b2e4f2 Fixed some tab/space issues and comments 2021-02-09 12:33:00 +01:00
ergo720 9c1c61f191 Deleted XapiCxbxr.h 2021-02-08 22:37:29 +01:00
ergo720 769444f91c Deleted old vsbc project 2021-02-08 22:37:29 +01:00
ergo720 6a54aa5573 Add Steel battalion controller support to input gui 2021-02-08 22:37:29 +01:00
LanHikariDS 689e3ca93c Very belated rebase, as well as progress on the UI and Git resolutions 2021-02-08 22:37:29 +01:00
Luke Usher 4f2404867e
Merge pull request #2133 from NZJenkins/msaa_fixes
Fix some AA scale issues
2021-02-08 20:50:35 +00:00
Anthony d9a2e7a715 CxbxUpdateHostTextureScaling accounts for multisampling
Fixes Max Payne 2 bullet time
which uses MSAA and the backbuffer as a texture
2021-02-08 03:51:13 +13:00
Anthony d7c9e78195 GetScreenScaleFactors ignores multisample scale when using Xbox the fixed function pipeline. 2021-02-08 03:51:13 +13:00
ergo720 d26e028125
Merge pull request #2129 from RadWolfie/update-readme
Update Prerequisites Section
2021-02-02 13:46:18 +01:00
RadWolfie 4056974209
review remark 2021-02-02 06:31:42 -06:00
RadWolfie 87196b8231
remove extra line 2021-02-02 05:16:01 -06:00
RadWolfie 463277c5d8
add notice + fix header 2021-02-02 05:14:48 -06:00
RadWolfie 6166a6ee85
update prerequisites section 2021-02-02 04:59:05 -06:00
Margen67 049a070a10
ci: Improvements (#2021)
Simplify ignored paths.
Opt out of PowerShell telemetry.
Delete Wine VS2017 removal comment.
Make checkout fetch-depth 0.
Capitalize CMake.
upload-artifact:
 Update to v2.
 Simplify path. (/** isn't needed)
 if-no-files-found: error.
release:
 Switch to ubuntu-20.04.
 Prettify if condition.
 Use download-artifact v2;
  This allows all artifacts to be downloaded.
 Iterate through artifacts instead of manually naming/hard coding them.
 Switch to create-release v1;
  This tag is the latest version.
 Use hub release instead of upload-release-asset.
2021-02-01 16:55:55 -06:00
Luke Usher f390c79bdf
Merge pull request #2014 from NZJenkins/experiment/fixedfunc3
HLSL fixed function implementation
2021-01-31 09:27:19 +00:00
PatrickvL ad7328d963
Merge pull request #2127 from LukeUsher/shader-model-tweaks
vs: use model 2.a primarily, with 3.0 fallback
2021-01-30 10:34:53 +01:00
Luke Usher 3abddb5983 vs: use model 2.a primarily, with 3.0 fallback 2021-01-29 20:31:46 +00:00
RadWolfie 2331816a99 review remarks 2021-01-28 10:30:31 +00:00
Anthony b6db19e353 Add hlsl files to install 2021-01-28 19:24:09 +13:00
Anthony 24b38ae3b3 Point sprite fixes
* Implement Min and Max
* Account for upscaling
2021-01-27 22:48:06 +13:00
Anthony 5441dbff1c Fix LocalViewer again, and move it to where it's used 2021-01-27 22:48:06 +13:00
Anthony 8a5c9a6445 Consolidate lighting calculations 2021-01-27 22:48:06 +13:00
Anthony c722d80503 Get view transform from transform state 2021-01-27 22:48:05 +13:00
Anthony 54e0c08ef1 Let MultiplyTransform call SetTransform
Detect if it didn't
2021-01-27 22:48:05 +13:00
Anthony c77582524d Fix incorrect toViewer vector when LocalViewer is enabled 2021-01-27 22:48:05 +13:00
PatrickvL 134dd70117 Optimize away SpecularEnable and PointScaleEnable, by resetting the related variables on CPU.
This shaves off almost 50 vertex shader instructions (down to 705 with this).
2021-01-27 22:48:05 +13:00
PatrickvL bd76d67c78 Indentation fixes & add a 'const' prefix to all single-assigned variables, and 'static' for all literal assignments. 2021-01-27 22:48:05 +13:00
PatrickvL 39e91ffec6 Fixed Function HLSL : Optimized ColorVertex handling in DoMaterial, by removing it's check froM HLSL, and replace that by CPU replacing all MaterialSource's with D3DMCS_MATERIAL when X_D3DRS_COLORVERTEX is disabled. This shaves off 13 vertex shader instructions. 2021-01-27 22:48:05 +13:00
PatrickvL 0245cc6ee8 Optimized vertex blending by only recalculating the required world/view matrices, and a simplified HLSL implementation 2021-01-27 22:48:05 +13:00
PatrickvL 8200cd8e43 Fixed Function : Extract method D3D8TransformState::RecalculateDependentMatrices, called via two getters using a dirty boolean, preventing needless recalculations. 2021-01-27 22:48:05 +13:00
PatrickvL 8b8d1e0d39 Fixed Function : Fixed CXBX_ALL_TEXCOORD_INPUTS build, avoid ambiguous symbol redeclaration 2021-01-27 22:48:05 +13:00
Anthony 43be445c37 Copy constants regardless of dirty state 2021-01-27 22:48:05 +13:00
Anthony Miles b4685c1dc2 Initialize all registers for fixed function mode 2021-01-27 22:48:05 +13:00
Anthony Miles f98d040a65 Enable fixed function vertex shader
- Various bits of glue code
- Toggle Shader/D3D9 with F2
- Replace vertex shader mode flags with enum
2021-01-27 22:48:05 +13:00
Anthony 5720444c6b Fix normal transformations
- Keep track of transforms set by the title
- Transform normals by the inverse transpose of the position transform
- X_D3DTRANSFORMSTATETYPE enum
2021-01-27 22:48:05 +13:00