gibbed
e795337071
[xboxkrnl] ExReleaseReadWriteLock fixes.
...
[xboxkrnl] ExReleaseReadWriteLock fixes:
- Don't unncessarily double-load lock members.
- Reset readers entry count when lock count becomes negative.
- Properly decrease writers waiting count when writer event fired.
2022-01-07 10:22:48 -06:00
gibbed
b4f35635c5
[xboxkrnl] ExAcquireReadWriteLockExclusive fixes.
...
[xboxkrnl] ExAcquireReadWriteLockExclusive fixes:
- Don't unnecessarily double-load lock count.
- Don't release spin lock before we're done with the lock.
2022-01-07 10:22:48 -06:00
gibbed
fa774f1d86
[xboxkrnl] Fix up XexGetProcedureAddress logging.
...
[xboxkrnl] Fix up XexGetProcedureAddress failure logging.
2022-01-07 09:35:43 -06:00
Gliniak
f2c0ae46c1
[Kernel] Added missing month to RtlTimeFieldsToTime
...
Additionally added check for highest possible month day
2021-12-22 15:02:25 +03:00
Gliniak
d6660ac391
[Kernel] Added %L to formatter
2021-10-14 15:05:12 -05:00
Triang3l
6241b4f907
[Kernel] stringstream<< > string.push_back as LLVM libc++ doesn't support char16_t stream
2021-09-12 13:04:03 +03:00
Triang3l
e720e0a540
[Code] Remove game names from code comments (most of at least)
2021-09-05 21:27:40 +03:00
Gliniak
f6f524b814
Implemented ExLoadedImageName
2021-08-18 17:37:44 -05:00
emoose
e5725b5877
[Kernel] Support XFileAlignmentInformation, stub NtDeviceIoControlFile & IoCreateDevice
...
XMountUtilityDrive-related code checks some values returned from NtDeviceIoControlFile, stub just returns values that it seems to accept
IoCreateDevice is also used by utility-drive code, writing some values into a pointer returned by it, so stub allocs space so it can write to the pointer without errors.
2021-08-18 17:34:59 -05:00
emoose
e23a9b7608
[Kernel] Add APC support to NtWriteFile
2021-06-29 03:13:43 -05:00
gibbed
fb0c354b2f
[xboxkrnl] Trim DbgPrint messages.
2021-06-28 20:32:52 -05:00
gibbed
a0ed4ec711
[xboxkrnl] Fix xeRtlNtStatusToDosError logging.
2021-06-28 20:32:52 -05:00
gibbed
997d0555db
Lint/format .inc files.
2021-06-28 20:32:52 -05:00
gibbed
ead4818e25
[xboxkrnl] Optional string formatter logging.
2021-06-28 20:32:52 -05:00
gibbed
e84ef132ae
[xboxkrnl] Log strings for string formatters.
2021-06-28 20:32:52 -05:00
gibbed
8caf8d1c1d
[xboxkrnl] Upgrade DbgPrint logs to info.
2021-06-28 20:32:52 -05:00
Gliniak
14eeb94326
[Kernel/IO] IoCompletion: Removed !wait_ticks check
...
- Marked IoCompletion as frequently used functions
- Added correct behaviour to wait_ticks 0
2021-06-28 08:45:41 -05:00
emoose
052ce3d389
[Kernel] Make KeEnter/LeaveCriticalRegion only affect the caller thread
...
Adds a new X_KTHREAD::apc_disable_count field at 0xB0 into X_KTHREAD based on where 360 kernel seems to store it, and made CriticalRegion funcs act on that, instead of locking things between all threads, and changes DeliverAPCs to check that field before running the APCs.
XThread::LockApc/UnlockApc were also updated too as those previously called into EnterCrit/LeaveCrit to work, but AFAIK the code that uses LockApc/UnlockApc does have an actual need for locking between threads, so changed them to work on XThread::global_critical_region_ directly instead.
2021-06-25 23:11:14 -05:00
Joel Linn
a86d7173e1
Refactor FourCC magic uses
...
- Use new fourcc_t type
- Improves compiler compatibility by removing multi chars
2021-06-02 22:28:43 -05:00
Triang3l
ea9625fca8
[Kernel] VdSwap virtual/physical address clarification
2021-05-25 21:31:02 +03:00
Triang3l
40ca4abc0b
[GPU] Small ring buffer setup function cleanup
2021-05-04 23:13:55 +03:00
Gliniak
e5948bb810
[Kernel] Implemented: XeKeysHmacShaUsingKey
2021-05-01 12:31:14 -05:00
Gliniak
30ea6e3ea3
[Kernel/Memory] Return error when region_size is 0
2021-04-10 07:19:59 -05:00
Gliniak
9ccdbb2153
[Kernel/Memory] Do not clear range if it was previously commited
2021-04-07 03:42:13 -05:00
emoose
2d9326e02d
[Kernel] Implement XeCryptBnQwNeRsaPubCrypt via BCrypt (win32 only)
2021-01-03 14:38:01 -06:00
emoose
8c11f2a39a
[Kernel] Implement XeCryptBnQw_SwapDwQwLeBe
2021-01-03 14:38:01 -06:00
emoose
4b13ecb752
[Kernel] Implement NtReadFileScatter via adding XFile::ReadScatter
2021-01-03 13:50:34 -06:00
Triang3l
ea9ee0d4ba
[Kernel] Make HDTV gamma the default
2020-12-31 16:14:26 +03:00
Gliniak
ea6969f378
[Kernel] Implemented NtSetIoCompletion
2020-12-26 04:57:21 -06:00
Gliniak
06ab8589b4
[Kernel/IO] Return error creating dir as non-dir.
...
[Kernel/IO] Return error when creating directory with non-directory
flag in NtCreateFile.
2020-12-06 17:07:34 -06:00
Gliniak
ff5c5f01e0
[Kernel] Zeroing out pages without write protect flag
2020-12-05 14:18:03 -06:00
gibbed
1513dd235b
[Kernel] Code reentrance for guest fibers.
...
[Kernel] Code reentrance using exceptions for guest fibers.
2020-12-05 14:17:33 -06:00
gibbed
d420215de1
[Kernel] Allow 0 return for MmQueryAddressProtect.
2020-12-05 14:17:19 -06:00
gibbed
164aa8e8ca
[Kernel] Scope object type enum.
2020-11-22 20:34:07 -06:00
gibbed
bdeae25353
[Kernel] Add comment about Shadowrun bug.
...
[Kernel] Add comment about Shadowrun thread name bug and a bonus lint fix.
2020-11-22 15:49:25 -06:00
Gliniak
26b0aa0cc4
[Kernel/Memory] Restrict NtVirtualMemory only to virtual memory range
2020-11-22 15:43:53 -06:00
Gliniak
aae292aab5
[Kernel/Memory] MmQueryAddressProtect - Check for protect_bits equals 0
2020-11-22 15:40:03 -06:00
gibbed
8749ca2260
[Kernel] Filter thread names from guest.
2020-11-22 14:54:08 -06:00
gibbed
4f25a96928
[Kernel] Overhaul Rtl time functions.
...
- Add date third party submodule.
- [Kernel] Add xclock.
- [Kernel] Reimplement RtlTimeToTimeFields using std::chrono/date/xclock.
- [Kernel] Reimplement RtlTimeFieldsToTime using std::chrono/date/xclock.
- Supersedes #1612 .
2020-11-22 14:48:36 -06:00
Sandy
36466231d0
threading test: zero initialize counter
...
The high performance test atomic counters need to be set to zero to have reliable results.
2020-11-16 00:13:14 -06:00
Cancerous
ce1a31faad
[Kernel] Set flag 5 in XboxHardwareInfo.
...
[Kernel] Set flag 5 (indicates storage is initialized) in XboxHardwareInfo.
2020-11-15 15:04:40 -06:00
gibbed
e848a20c23
[Kernel] Allow wildcard filter to end in *.
2020-11-15 13:29:34 -06:00
gibbed
32e8b47a33
[Kernel] Enforce *. in wildcard matching. Supersedes #1675 .
2020-11-15 13:24:06 -06:00
Triang3l
a319617185
[Kernel] Thread affinity cleanup
2020-11-14 18:09:47 +03:00
Gliniak
2dc6b0b2ad
[Kernel/Thread] Added missing paramteter to KeSetAffinityThread
2020-11-14 17:48:30 +03:00
Gliniak
ba565c3403
[Kernel/Usbcam] XUsbcamCreate
...
- Provided description to some parameters
- Provided description what function more/less should do
- Changed return code based on game behaviour
2020-09-17 23:14:33 +03:00
Triang3l
fd14a68420
[Kernel] NtQueryVirtualMemory state test case info
2020-08-27 16:59:42 +03:00
Triang3l
c2c263f34a
[Kernel] Return only one state from NtQueryVirtualMemory
2020-08-27 15:47:51 +03:00
Gliniak
eac7e2cd1f
[Kernel/Memory] NtQueryVirtualMemory - Added support for returning X_MEM_FREE state
2020-08-27 14:55:02 +03:00
gibbed
c99c430665
[Kernel] Reject IO for invalid characters.
...
[Kernel] Reject IO for paths with invalid characters.
2020-07-12 12:22:24 -05:00