Luke Usher
61649f73bd
add dummy implementation of HalRegisterShutdownNotification
...
This is the furthest we can get without HLE, all XDK titles now crash during XGetSectionHandle while attempting to read the XBE symbol table.
We can either HLE this, or rework Cxbx to load the entire XBE into memory the way Xenoborg does, this would allow Xbox code to correctly access portions of the XBE header without HLE.
2016-08-19 20:45:59 +01:00
Luke Usher
d3961e6fd6
Forgot to include this in the last commit. Oops.
2016-08-19 20:34:47 +01:00
Luke Usher
afa9d02e2e
Implement fake kernel header to allow XapiRestrictCodeSelectorLimit to succeed
...
Cxbx now requires support for large address space on 32-bit applications, this may break some 32-bit operating systems.
2016-08-19 19:55:18 +01:00
Luke Usher
3f70ed9f7c
Implement XboxKernelVersion export
...
This allows XApiApplyKernelPatches(); to run without having to intercept it
2016-08-19 19:53:37 +01:00
Luke Usher
9568b129a4
fix NtQueryFullAttributesFile to use CxbxObjectAttributesToNt() rather than hard coding directories
2016-08-19 06:51:13 +01:00
Luke Usher
a6cfc2d7a3
Fix an issue where the wrong Xbe path was being set
2016-08-19 06:07:21 +01:00
Luke Usher
1578146bfe
Implemented Symbolic Link kernel API using code from Dxbx
...
Dxbx contains a LOT of improvements that did not make it back into Cxbx
2016-08-18 20:40:36 +01:00
Luke Usher
875c64148c
Remove 'stupid hack' which allowed for execution to continue after HalReturnToFirmware was called.
2016-08-16 17:04:04 +01:00
Luke Usher
3848ff66ad
Thrown away HLE Database
...
It is planned that the OOVPA HLE Database will be replaced with a better method. Dxbx style StoredPatternTrie is being considered, but a decision has not yet been made
2016-08-15 20:49:54 +01:00
Luke Usher
57681ab670
Removed lock to single core, had too much of an effect on performance
2016-08-13 22:58:56 +01:00
Luke Usher
5485699f06
Remove some high level XAPI functions, including some which were not used
2016-08-13 22:41:30 +01:00
Luke Usher
bd3ee280e1
Fix a crash due to a missing ret statement in EmuFS.cpp
2016-08-13 19:11:41 +01:00
Luke Usher
b589c6da82
Force Cxbx to use only one core as the Xbox cpu is single threaded
2016-08-12 19:50:12 +01:00
Luke Usher
10ad17161d
Remove unused high level thread functions
2016-08-12 19:47:18 +01:00
Luke Usher
508d421e81
Fi x an issue with EmuPush/PopDwordPtrFs00
2016-08-12 16:26:55 +01:00
Luke Usher
bea4f63f20
Remove HLE emulation of Rtl Heap functions
...
Titles can now manage their own heap, so this is no longer required
2016-08-12 09:30:12 +01:00
Luke Usher
67c37feebd
fix compilation with Visual Studio 2015
2016-08-12 09:25:45 +01:00
Luke Usher
d5a7180c61
Fix null pointer deference which was happening in Crazy Taxi 3.
...
TODO: Find out why
2016-04-05 21:08:18 +01:00
Luke Usher
6f3e14b768
NtQueryVolumeInformationFile implementation modified to be more like Dxbx, allows some titles to progress further.
2016-04-04 20:59:03 +01:00
Luke Usher
35cfdce7d5
Forgot a linebreak
2016-04-02 20:20:32 +01:00
Luke Usher
729123e57a
Re-enabled all FS patches, it does not seem to have any effect on compatibilty, but it's better to be safe, we don't want Xbox code playing around with Windows TLS if we can help it.
2016-04-02 19:41:20 +01:00
Luke Usher
f7569a4ce9
Disabled Debug_Alloc as it is causing crashes in debug builds.
2016-04-01 22:59:34 +01:00
Luke Usher
1174ac350b
Add HLE Database fixes from old Cxbx-Reloaded branch
2016-04-01 22:12:48 +01:00
Luke Usher
b0ef995e08
Add 64-bit support
2016-04-01 21:46:04 +01:00
Luke Usher
38a6eed65e
Convert project to open with MSVC 2015. However, still using the v120 toolset.
...
Removed spare project files, I only test compilation with the latest MSVC version.
2016-04-01 21:39:17 +01:00
Echelon9
231e924bd1
Fix typo in pixel shader logging. No expected effect on performance or compatibility.
2015-03-30 22:50:38 +11:00
Echelon9
0f36366310
Add support for RtlFreeAnsiString (Kernel API 0x11E / 286)
2015-03-29 21:28:50 +11:00
Echelon9
96676564ca
Add support for RtlInitUnicodeString (Kernel API 0x122 / 290)
2015-03-29 20:58:57 +11:00
Echelon9
05c61d8f5f
This typo may have lead to limited pixel shader issues
2015-03-29 19:11:05 +11:00
Echelon9
756a12afcb
Address Issue #12 - Improve emulated Direct3DDevice::Clear() calls when render target does not have an attached depth buffer
2014-07-14 18:39:20 +10:00
Wayo
505fd12f1e
Added support for GetCreationParameters() in the HLEDatabase on titles built with the 4361 version of the D3D library.
2014-06-24 15:38:20 +02:00
Echelon9
3031eaa807
Fix Issue #9 : Support SetThreadPriority() via Ntdll call pass-through
2014-06-23 22:30:11 +10:00
Echelon9
134eaafd22
Fix Issue #6 : Support GetOverlayUpdateStatus() on 5659
2014-06-15 12:34:15 +10:00
Echelon9
ff23034693
Fix Issue #5 : Support EnableOverlay() on 5659 and 5558
2014-06-15 12:07:10 +10:00
Echelon9
0af90817e8
Fix Issue #4 : Support DrawIndexedVerticesUP() on 5659
2014-06-15 11:26:00 +10:00
Echelon9
107b6bec6b
Correct logging of ExSaveNonVolatileSetting()
2014-06-12 22:03:34 +10:00
Echelon9
bb641a693b
Ensure no switch case fallthrough for EEPROM_AUDIO in ExQueryNonVolatileSetting()
2014-06-12 21:51:58 +10:00
Echelon9
72ba307f8f
Modest typo corrections
2014-06-11 21:35:23 +10:00
Echelon9
1fd52aebd0
Clarify and cleanup LDT initialisation and MAGIC_NUMBERS. Courtesy of haxar
2014-06-11 21:26:52 +10:00
Echelon9
43c266dc58
Avoid heap double free is PsCreateThread() proxy
2014-05-27 22:56:59 +10:00
Echelon9
595e35ce71
Ensure sufficient stack space for EmuWarning(). The previous amount could be routinely overrun with long pixel shader error messages.
2014-05-25 16:51:08 +10:00
Echelon9
6d47a8ad0e
Correct documentation within PixelShader.cpp
2014-05-25 16:26:28 +10:00
Echelon9
c0cfa030d6
Improve documentation of D3DPOOL_DEFAULT
2014-05-25 16:13:47 +10:00
Echelon9
41bbfdd0af
During CreateDevice only clear depth buffer if present, to avoid a DirectX Debug Runtime error report
2014-04-06 20:17:56 +10:00
Echelon9
aee7e41ff1
Permit the DirectX Debug Runtime on strict error reporting to pass an early issue releasing D3DDevice surfaces
2014-04-05 23:19:36 +11:00
Echelon9
ce0e2e00ed
D3D8::IsBusy support for XDK 4432 (based on XDK 4361)
2014-03-30 23:46:07 +11:00
Echelon9
9967b72d83
Fix MSVC warning: Invalid data: accessing 'm_DeviceName', the readable size is '6240' bytes, but '-240' bytes might be read
2013-09-15 12:49:36 +10:00
Echelon9
21aeffd6c6
Do not needlessly clear Z Buffer in D3DDevice::Clear()
2013-08-21 00:36:47 +10:00
Echelon9
4ccf839d87
Clarify flags to Direct3D::CreateDevice() and close out a debug DirectX runtime warning on Debug builds (it will be slower, so don't use on Retail builds)
2013-08-20 22:41:47 +10:00
Echelon9
5008fd3857
Add more general support for D3DDevice::DeleteVertexShader() back to XDK 3925. This is a function Xeon supported in Halo1 but which Cxbx was yet to support
2013-08-18 16:40:17 +10:00