Commit Graph

1090 Commits

Author SHA1 Message Date
PatrickvL 754931a514 Copied more D3D fixes over from Dxbx
Hopefully this will eventually lead to (much) better graphics
2016-12-12 01:28:33 +01:00
PatrickvL bad38eea58 Dashboard glitches a lot less with this 2016-12-12 00:42:23 +01:00
PatrickvL 1277ef9e50 Corrected a translation error in CxbxObjectAttributesToNT, native paths are now correct 2016-12-12 00:34:50 +01:00
PatrickvL 788a0c645d Added comments to all Logging-defines 2016-12-12 00:11:51 +01:00
PatrickvL a7d090aa54 Applied strrchr in more places, sorted NtStatusToString cases 2016-12-12 00:03:01 +01:00
PatrickvL 7a7af0db5e Renamed LOG_FUNC_FORWARD to LOG_FORWARD, added actual logging, populated all OBJECT_TYPE variables. 2016-12-11 23:39:47 +01:00
PatrickvL 0dea41a0d3 Typos 2016-12-11 22:56:22 +01:00
PatrickvL 68d60d0cb2 Applied all possible forwards, extended OBJECT_TYPE, added NtOpenDirectoryObject and ObOpenObjectByName stubs 2016-12-11 22:49:35 +01:00
PatrickvL d335b4b6b2 Forwarded NtOpenFile and NtCreateFile to IoCreateFile
IoCreateFile is implemented just like NtCreateFile before.
Moved a few declarations towards EmuFile to facilitate this.
Also introduced a LOG_FUNC_FORWARD define for these situations.
2016-12-11 19:06:55 +01:00
PatrickvL bb3087932d Applied MAX_PATH everywhere
Also used strrchr instead of hand-rolled search for the last backslash
2016-12-11 17:50:38 +01:00
PatrickvL d9040173ec Added comments to ConnectWindowsTimersToThunkTable
Specifically that reading KeSystemTime directly will mean
HostSystemTimeDelta is not added (as done in KeQuerySystemTime)
2016-12-10 20:01:45 +01:00
PatrickvL 2e6e78acc2 Added stubs for KeDisconnectInterrupt, KeGetCurrentThread, KeInsertQueueDpc
Might as well stub these, now that we've copied their declaration over
from xndk.
2016-12-10 19:47:01 +01:00
PatrickvL 66eefa90b9 Merge remote-tracking branch 'refs/remotes/LukeUsher/master' 2016-12-10 19:35:13 +01:00
PatrickvL b37b1bdeaa Copied over a few declarations from https://github.com/xqemu/nxdk 2016-12-10 19:26:28 +01:00
PatrickvL 65b00fa856 Added IoDismountVolume stub
Also added the types needed for it's arguments.
2016-12-10 18:10:49 +01:00
PatrickvL a5199b9d3a Reimplemented NtSetSystemTime and KeQuerySystemTime
This should allow setting the Xbox system time without interfering with
the host system time.
2016-12-10 17:51:26 +01:00
PatrickvL 4bae6b721d EmuX86 : Generalized retrieving and storing values, simplifying EmuX86_MOV and EmuX86_TEST greatly. 2016-12-03 16:27:12 +01:00
Luke Usher bbf0d729cb Add missing break statements to EmuX86_MOV 2016-12-02 22:20:14 +00:00
PatrickvL 1fea5aaf1b Refactored EmuX86_MOV 2016-12-02 18:48:03 +01:00
PatrickvL 6071e81ebf Copied over Dxbx comments and NtWriteFile signature 2016-12-02 18:07:03 +01:00
PatrickvL 8bfe7bc426 Prevent naming collisions on kernel symbols using a KRNL() macro 2016-12-02 17:31:34 +01:00
PatrickvL 14427e9996 Added MmClaimGpuInstanceMemory implementation 2016-12-02 15:43:23 +01:00
PatrickvL 3dd16ce418 Added remaining Mm* kernel functions
Introduced and used VOLATILE define
Removed using namespace xboxkrnl
Fixed ambiguous warnings
2016-12-02 10:38:46 +01:00
PatrickvL 3e1695e54d Merge branch 'master' of https://github.com/PatrickvL/Cxbx-Reloaded.git 2016-12-02 08:58:07 +01:00
Luke Usher 56185eed5f Fix compilation of Interlocked API
This was achieved by prefixing XboxKrnl functions with Xb to prevent a name conflict with WinNT.h
Additionally, rather than importing native Interlocked functions from NTDLL, we use the versions defined in WinNT.h
2016-12-01 22:03:48 +00:00
PatrickvL 7bb8c658c8 EmuX86 : Parity should only be calculated over least significant 8 result bits 2016-12-01 22:21:58 +01:00
PatrickvL 86053967fc EmuX86 : Implemented setting parity flag 2016-12-01 18:09:06 +01:00
PatrickvL f1c03d9909 Merge remote-tracking branch 'refs/remotes/LukeUsher/master' 2016-12-01 18:01:29 +01:00
PatrickvL 9c821d09c0 Added more kernel stubs
Also applied FASTCALL define. Failed attempt to add Interlocked API's
(VC++ complains about undefined intrinsics or something like that).
2016-12-01 18:01:16 +01:00
PatrickvL 6fd697663f WIP : Interlocked functions from Dxbx 2016-11-30 23:38:51 +01:00
Luke Usher 45b7a71638 Small EmuX86 improvements.
Dashboard now runs with DSOUND_LLE enabled, but takes a long time to boot up
2016-11-30 20:25:06 +00:00
Luke Usher f45e8dd8fc Add experimental flag to enable DSOUND LLE 2016-11-30 20:14:39 +00:00
Luke Usher 1f5d71f7c4 Add stub for KeCancelTimer 2016-11-30 20:13:15 +00:00
Luke Usher 6899be5a0b Implement KeStallExecutionProcessor 2016-11-30 20:04:11 +00:00
PatrickvL f9f3fa4b86 Merge branch 'LukeUsher/master' 2016-11-30 20:36:34 +01:00
Luke Usher fb28a1470e Remove CxbxKrnlCleanup from IOCreateFile
We do not need to abort execution & LOG_UNIMPLEMENTED takes care of warning us
2016-11-30 12:50:04 +00:00
Luke Usher c23e47d5dc Remove HalReturnToFirmware hack
No longer required now SHA/HMAC is implemented
2016-11-30 12:02:35 +00:00
Luke Usher b9f9101051 Revert "Remove a ton of XAPI functions"
It was a little too soon for this afterall

This reverts commit ebaea5e9f1.
2016-11-30 11:22:44 +00:00
Luke Usher 9f7b29ad62 Add implementation for NtWaitForSingleObject & stub for KeSetPriorityThread 2016-11-29 14:38:19 +00:00
Luke Usher 9fedcc64a6 Neaten up the GetRegisterPointer function a little 2016-11-29 14:18:36 +00:00
PatrickvL 8322532863 Merge remote-tracking branch 'refs/remotes/LukeUsher/master' 2016-11-29 09:33:03 +01:00
Luke Usher 5d469d9188 Add stubs for ObReferenceObjectByHandle, ObDereferenceObject and KeSetBasePriority
Crash Bandicoot now sits on the loading screen forever, but it doesn't crash, so that's progress, I guess
2016-11-29 06:58:30 +00:00
Luke Usher ebaea5e9f1 Remove a ton of XAPI functions
Our Kernel emulation should be good enough to take care of this, and if not, we should improve that rather than patching out XAPI.
The XInput/XDevice functions are still needed as we do not emulate USB yet
2016-11-28 22:18:57 +00:00
Luke Usher 4c684a807d Add a (dumb) implementation of MmGetPhysicalAddress 2016-11-28 21:16:47 +00:00
Luke Usher 0789ab2358 Initial support for Read8/16 and Write8/16 2016-11-28 21:08:14 +00:00
Luke Usher 574977bf2f Implement XcHMAC
Dashboard no longer crashes when going into the System Information menu option
2016-11-28 20:15:06 +00:00
Luke Usher 97773173c9 Implement XcSHAInit, XcSHAUpdate and XcSHAFinal by redirecting to the undocumented A_SHA functions in advapi32.dll 2016-11-28 19:50:48 +00:00
PatrickvL 3922e44386 Added RtlCharToInteger
Also sorted EXTERN's and IMPORT's, removed end-of-line-spaces and two
incorrect LOG_UNIMPLEMENTED occurances.
2016-11-28 18:22:25 +01:00
PatrickvL 79432acafc Merge remote-tracking branch 'refs/remotes/LukeUsher/master' 2016-11-28 09:29:40 +01:00
Luke Usher c7caf082e2 Add D3DFMT_X1R5G5B5 2016-11-26 23:01:10 +00:00