chrisps
9463f18a65
Merge pull request #150 from chrisps/timestamp_bundle_changes
...
KeTimestampBundle changes
2023-04-16 10:40:15 -04:00
chss95cs@gmail.com
ab21e1e0f0
Several changes for timestamp bundle:
...
Fully defined the structure.
Single copy of it + single timer across all modules, managing it is now the responsibility of KernelState.
add global_critical_region::PrepareToAcquire, which uses Prefetchw on the global crit. We now know we can use Prefetchw on all cpus that have AVX.
add KeQueryInterruptTime, which is used by some dashboards.
add threading::NanoSleep
2023-04-16 10:08:01 -04:00
chrisps
12c9135843
Merge branch 'xenia-project:master' into canary_experimental
2023-04-16 09:11:39 -04:00
chrisps
26dc48f695
Merge pull request #149 from chrisps/canary_experimental
...
reimplement reserved load/store
2023-04-15 17:23:22 -04:00
chss95cs@gmail.com
e75e0425e0
forward branch for double-clear condition in reserved store
2023-04-15 16:22:37 -04:00
chss95cs@gmail.com
7fb4b4cd41
Attempt to emulate reserved load/store more closely. can't do anything for stores of the same value that are done via a non-reserved store to a reserved location
...
uses a bitmap that splits up the memory space into 65k blocks per bit. Currently is using the guest virtual address but should be using physical addresses instead.
Currently if a guest does a reserve on a location and then a reserved store to a totally different location we trigger a breakpoint. This should never happen
Also removed the NEGATED_MUL_blah operations. They weren't necessary, nothing special is needed for the negated result variants.
Added a log message for when watched physical memory has a race, it just would be nice to know when it happens and in what games.
2023-04-15 16:06:07 -04:00
Triang3l
887fda55c2
[SPIR-V] Remove temp reserve for 4 or less elements
2023-04-13 22:43:44 +03:00
Triang3l
75d805245d
[DXBC] `discard` pixels from `kill` with ROV instead of returning
...
Keep the current lane active as it may be needed for derivatives.
2023-04-09 20:13:22 +03:00
Gliniak
5e0c67438c
Merge branch 'master' of https://github.com/xenia-project/xenia into canary_experimental
2023-04-09 17:28:04 +02:00
Gliniak
7fce8fce9d
Revert "[D3D12] Added workaround for broken Geometry Shader in AMD 7900 Series GPU"
...
This reverts commit 2afd2cc4d6
.
2023-04-09 17:27:55 +02:00
Triang3l
88c645d818
[D3D12] Don't use emit_then_cut due to RDNA 3 crash
2023-04-09 18:07:44 +03:00
chrisps
190cef9872
Merge pull request #148 from chrisps/canary_experimental
...
Do not check if we should show the prefetchw error message if we alre…
2023-04-02 17:37:05 -04:00
chss95cs@gmail.com
22dd2e52e6
Temporarily disable prefetchw check, odd report from user who definitely has prefetchw, but it is not being reported as present
2023-04-02 17:11:08 -04:00
chss95cs@gmail.com
356300d14c
Do not check if we should show the prefetchw error message if we already have an avx error message.
...
mtmsrd writes the EE bit only now.
2023-04-02 14:26:01 -04:00
chrisps
e9d1e51c32
Merge pull request #147 from chrisps/canary_experimental
...
setup initial value of MSR on ppc context
2023-04-02 08:36:48 -04:00
chss95cs@gmail.com
6ccdc4d0df
setup initial value of MSR on ppc context
...
Fixed PrefetchW feature check
Added prefetchw check to startup AVX check, there should be no CPUs that support AVX but not PrefetchW.
Init VRSAVE to all ones.
Removed unused disable_global_lock flag.
2023-04-01 14:48:56 -04:00
Triang3l
baa2ff78d8
[Vulkan] Add missing stencil reference unpack in RT transfer + formatting fix
2023-03-30 22:40:40 +03:00
Triang3l
c238d8af55
[Vulkan] Fix FragStencilRef store type
2023-03-30 22:28:56 +03:00
Adrian
8678becda6
[XAM] StartupEx
2023-03-13 11:00:52 +01:00
Gliniak
23bd18cfca
[GPU] Check if memory page is available while copying data
2023-03-11 16:20:01 +01:00
Gliniak
eb5da8e557
[UI] Changed default UI font to Tahoma. If it's not available use embedded font
...
- Additionally allow user to provide own font size
- Forced font scaling in notification window to be reasonable size
2023-03-11 13:07:07 +01:00
Gliniak
9fa6e94772
[Achievements] Present notification in language selected by user
2023-03-08 13:24:55 +01:00
Gliniak
202ab76300
[Kernel] Changed default notification position
2023-03-08 10:59:08 +01:00
Gliniak
0ec65be5ff
[UI] Notification & Custom Font Support
2023-03-08 09:36:49 +01:00
Adrian
069d33c03f
[XAM] Implemented Functions
...
Implemented:
- RtlSleep
- SleepEx
- Sleep
- GetTickCount
- GetModuleHandleA
- XamGetCurrentTitleId
2023-03-06 08:31:40 +01:00
Gloria
d62fe21d47
RADV bug fix ( #139 )
...
* Use correct typing for stencil, dispatch launch on UI thread
* Clean up some LaunchPath code
2023-03-06 08:31:05 +01:00
Adrian
84571f8fe6
Allow patched arrays to start with 0x
2023-02-17 17:05:16 +01:00
Gliniak
c74a047655
[Win] Revert XE_USE_KUSER_SHARED back to 0
...
Also limit queued audio frames
2023-02-11 18:20:21 +01:00
Adrian
321dd75e05
[VFS] Fixed allow_game_relative_writes to write invalid cached entries
...
This PR fixes https://github.com/xenia-canary/xenia-canary/issues/123 a bug where files would not write to the host if they were deleted from the host filesystem during runtime.
2023-02-08 22:38:16 +01:00
Wunkolo
f357f26eae
[Build] Add parallel PPC test generation
...
Utilizes `multiprocessing` to allow for multiple power-pc assembly tests
to be generated in parallel.
Some results on my i9-11900k(8c/16t):
Before:
```
Measure-Command {.\xb gentests}
Days : 0
Hours : 0
Minutes : 0
Seconds : 11
Milliseconds : 200
Ticks : 112007585
TotalDays : 0.000129638408564815
TotalHours : 0.00311132180555556
TotalMinutes : 0.186679308333333
TotalSeconds : 11.2007585
TotalMilliseconds : 11200.7585
```
After:
```
Measure-Command {.\xb gentests}
Days : 0
Hours : 0
Minutes : 0
Seconds : 5
Milliseconds : 426
Ticks : 54265895
TotalDays : 6.28077488425926E-05
TotalHours : 0.00150738597222222
TotalMinutes : 0.0904431583333333
TotalSeconds : 5.4265895
TotalMilliseconds : 5426.5895
```
This is an over **x2** speedup!
2023-02-05 20:56:37 -06:00
Adrian
333d7c2767
[UI] Added build to exception message
2023-02-05 18:31:12 +01:00
Adrian
3d3810fa98
[App] Minor Fixes
...
Added F9
[Controller Hotkeys] Call RunTitle from the UI thread
2023-02-03 21:23:35 +01:00
Gliniak
036f19c66e
[UI] Uplift of TR - 2092
...
Plus fixed invalid path, they're not stored anymore
2023-02-02 19:02:23 +01:00
Adrian
4c220770ec
Dynamic TU patch
...
Load the correct TU patch for the loaded launch module
2023-01-31 21:11:38 +01:00
Adrian
b10c84b340
Added controller hotkeys cvar ( #119 )
...
* Added controller hotkeys setting
Added option to disable controller hotkeys
Minor Changes
* Fixed locked input system
The input system lock should be released even if a controller is not connected.
2023-01-29 19:26:25 +01:00
Shoegzer
4a2f4d9cfe
Add include to fix compiling
2023-01-29 21:10:20 +03:00
Gliniak
89f3598426
Merge branch 'master' of https://github.com/xenia-project/xenia into canary_experimental
2023-01-29 11:25:56 +01:00
Gliniak
4e87d1f9d1
[Kernel/Thread] Set TLS slot to 0 while freeing
2023-01-28 17:49:12 -06:00
Emma
4ecd1bffda
Add configurable toggle to mark code segments as writable ( #100 )
2023-01-23 23:44:59 +01:00
Margen67
aea9714bd0
Make present_safe_area 100
...
So people stop asking why their games are cropped off.
2023-01-23 01:22:43 -08:00
Adrian
504fb9f205
Title selection & bug fixes
...
Added title selection
Fixed controller hotkeys for multiple connected controllers
Fixed ImGUI dialog box stacking
Added a new font for ImGUI
2023-01-22 22:49:51 +01:00
Adrian
459497f0b6
Implemented Controller Hotkeys ( #111 )
...
Implemented Controller Hotkeys
Added controller hotkeys
Added guide button support for XInput and winkey
The hotkey configurations can be found in HID -> Display controller hotkeys
If the Xbox Gamebar overlay is enabled then use the Back button instead of the Guide button.
- Fixed hotkey thread destruction
- Fixed XINPUT_STATE by padding 4 bytes
- Added hotkey vibration for user feedback
- Replaced MessageBoxA with ImGuiDialog::ShowMessageBox
Co-authored-by: Margen67 <Margen67@users.noreply.github.com>
2023-01-13 09:17:43 +01:00
Gliniak
ea1003c6bf
[CPU] Check if flags pointer exists
...
There is specific situation in FM4 on terminating thread that runs dll
where flags pointer doesn't exist
2023-01-09 16:13:09 +01:00
Gliniak
d24d3295c6
[XMA] Clear host data on context clear + swap buffer if decoding fails
2023-01-06 19:27:41 +01:00
Gliniak
668244adb7
[XAM] Fixed importing savefiles from different games (at least partially)
2023-01-06 16:35:40 +01:00
Gliniak
40f6b5b3ac
[Kernel] Improvements to host and guest objects handling
2023-01-06 09:13:21 +01:00
Gliniak
5b0fe5aada
[XBDM] Added Stub For: DmGetConsoleDebugMemoryStatus
2023-01-05 22:34:26 +01:00
Gliniak
81412c59c1
[Net] NetDll___WSAFDIsSet: Fixed incorrect endianness of fd_count
...
Plus: limit it to 64 entries
2023-01-05 20:33:12 +01:00
Gliniak
81aaf98e04
[Memory] Added option to ignore offset for ranged physical allocations
...
Certain titles check if input address matches output and if it doesn't then just crash
2023-01-05 08:56:22 +01:00
Gliniak
39c509b57f
[APU] Resolved context stuck with is_stream_done_ flag and no space left
2023-01-03 19:49:21 +01:00