Age | Commit message (Collapse) | Author |
|
laying the groundwork for async gpu, although this does not fully implement async nvdec operations
|
|
|
|
|
|
fixes a data race as this is an unprotected variable manipulated by multiple threads
|
|
During the transition to make the error dialog translatable, I
accidentally got rid of the conversion to ResultStatus, which prevented
operator<< from being invoked during formatting.
This adds a function to directly retrieve the result status string
instead so that it displays again.
|
|
dynarmic: Add Unsafe_InaccurateNaN optimization
|
|
- This behavior is a mistake, fixes Katana Zero.
|
|
|
|
|
|
|
|
core/memory: Read and write page table atomically
|
|
Service threads
|
|
|
|
Squash attributes into the pointer's integer, making them an uintptr_t
pair containing 2 bits at the bottom and then the pointer. These bits
are currently unused thanks to alignment requirements.
Configure Dynarmic to mask out these bits on pointer reads.
While we are at it, remove some unused attributes carried over from
Citra.
Read/Write and other hot functions use a two step unpacking process that
is less readable to stop MSVC from emitting an extra AND instruction in
the hot path:
mov rdi,rcx
shr rdx,0Ch
mov r8,qword ptr [rax+8]
mov rax,qword ptr [r8+rdx*8]
mov rdx,rax
-and al,3
and rdx,0FFFFFFFFFFFFFFFCh
je Core::Memory::Memory::Impl::Read<unsigned char>
mov rax,qword ptr [vaddr]
movzx eax,byte ptr [rdx+rax]
|
|
k_priority_queue: Fix concepts use
|
|
|
|
- This is to allow service threads to defer destruction of themselves.
|
|
Add missing include of "core/hle/kernel/kernel.h"
|
|
- Avoids the need to have a large map of host to guest thread IDs.
|
|
- For `std::same_as`, add missing include of `<concepts>`.
- For `std::convertible_to`, create a replacement in `common/concepts.h`
and use that instead.
This would also be found in `<concepts>`, but unlike `std::same_as`,
`std::convertible_to` is not yet implemented in libc++, LLVM's STL
implementation - not even in master. (In fact, `std::same_as` is the
*only* concept currently implemented. For some reason.)
|
|
This is needed as the header invokes methods on KernelCore.
|
|
This log is called often, and introduces a lot of noise when debug logging is enabled, making it difficult to see other debug logs.
|
|
- Fixes a circular dependency which prevented threads from being released on shutdown.
|
|
|
|
- This makes it such that we can safely access service members from CoreTiming thread.
|
|
- This will be reset on initialization.
|
|
|
|
|
|
- Use proper mechanisms for blocking on DequeueBuffer.
- Ensure service thread terminates on emulation Shutdown.
|
|
|
|
|
|
- Now that GPU is always threaded, we can support multicore with synchronous GPU.
|
|
- This was kind of hacky, and no longer is necessary with service threads.
|
|
SleepClientThread.
|
|
- Note, this always processes the ioctl right away, which fixes BotW 1.0.0 issues.
|
|
|
|
|
|
|
|
|
|
* core: memory: Ensure thread safe access when pages are rasterizer cached.
|
|
Project Aether: Reimplementation of the Web Browser Applet
|
|
Rewrite Kernel scheduler based on Atmosphere
|
|
vi/buffer_queue: Buffer queue management refactor
|
|
The gdbstub itself was removed with https://github.com/yuzu-emu/yuzu/pull/5028.
This PR just removes the remaining gdb configuration code from the emulator and the UI.
|
|
|
|
|
|
|
|
This is used to force system updates on launching the web browser. We do not care about system updates so this can be set to false.
|
|
The InputInterpreter class interfaces with HID to retrieve button press states. Input is intended to be polled every 50ms so that a button is considered to be held down after 400ms has elapsed since the initial button press and subsequent repeated presses occur every 50ms.
Co-authored-by: Chloe <25727384+ogniK5377@users.noreply.github.com>
|
|
|