Commit Graph

1056 Commits

Author SHA1 Message Date
Luke Usher 78ebfcccd8 Merge pull request #23 from StrikerX3/master
Fix for EnumAdapterMode issues
2016-12-14 06:14:51 +00:00
StrikerX3 fa398052bf Merge branch 'master' of github.com:LukeUsher/Cxbx-Reloaded 2016-12-13 20:55:39 -02:00
StrikerX3 71f13d3b9a Adapter mode functions now enumerate the Xbox resolutions instead of native resolutions 2016-12-13 20:53:45 -02:00
StrikerX3 7b8e062825 Minor logging fixes 2016-12-13 20:52:25 -02:00
PatrickvL a29ff82b30 Log more types
Let's see where this leads us..
2016-12-13 18:15:41 +01:00
PatrickvL 345c0a999d Centralized logging of values of xboxkrnl types
This might give some unwanted side-effects, let's fix these as they
come.
2016-12-13 17:25:31 +01:00
PatrickvL 78856b08a2 Let FscGetCacheSize return what FscSetCacheSize set
No actual file system cache page allocation though...
2016-12-13 16:44:04 +01:00
PatrickvL ea98d81f9c Gave each kernel member a consistent comment header 2016-12-13 16:18:40 +01:00
PatrickvL 9f5ce65a6f Merge remote-tracking branch 'refs/remotes/LukeUsher/master' 2016-12-13 10:46:41 +01:00
Luke Usher 1f5f4f3ad0 Fix a nullptr dereference in EmuDirectSoundBuffer8_Stop
Eggo Mania no longer crashes, but instad shows a 'disc is dirty or damaged' screen
2016-12-12 20:42:03 +00:00
PatrickvL 90d2a34090 Implemented RtlZeroMemory 2016-12-12 18:11:36 +01:00
PatrickvL 553db2dc2d Implemented KeQueryInterruptTime 2016-12-12 17:56:29 +01:00
PatrickvL e6bae132b7 Implemented PsSetCreateThreadNotifyRoutine
Used EmuXRegisterThreadNotifyRoutine as a reference
2016-12-12 17:34:08 +01:00
PatrickvL 7e42995d91 Make PsCreateSystemThread use a placeholder instead of NULL
Also removed no-op EmuCleanupFS()
2016-12-12 17:11:04 +01:00
PatrickvL a6591ae07c Added PsCreateSystemThread as forward to PsCreateSystemThreadEx (which had to be corrected)
Also moved NtStatusToString to EmuFile.cpp.
Forwarded KeBugCheck to KeBugCheckEx, NtWaitForSingleObject,
NtWaitForSingleObjectEx and NtWaitForMultipleObjectsEx to
KeWaitForMultipleObjects (in which all implementation we have thus far,
is now concentrated).
2016-12-12 16:15:04 +01:00
PatrickvL eb46169604 Init the FPCW to avoid initial graphical glitches 2016-12-12 01:52:03 +01:00
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