Commit Graph

10775 Commits (4483089d704cd4913a748d2198359cc0cf7b32c5)
 

Author SHA1 Message Date
bunnei 4483089d70 gpu: Refactor to take RendererBase instead of RasterizerInterface. 6 years ago
bunnei d6015ee211 settings: Add new graphics setting for use_asynchronous_gpu_emulation. 6 years ago
bunnei 81e086b5ac core: Set is_powered_on before GPU is initialized. 6 years ago
bunnei 75b417489a
Merge pull request #2199 from lioncash/arbiter
kernel/address_arbiter: Convert the address arbiter into a class
6 years ago
bunnei e9b05e86b9
Merge pull request #2201 from lioncash/audio-retval
hle/service/audio/audout_u: Correct lack of return in failure case of AppendAudioOutBufferImpl()
6 years ago
bunnei 8ee78521fa
Merge pull request #2204 from lioncash/wait-tree
yuzu/debugger/wait_tree: Remove use of global CurrentProcess accessor
6 years ago
Lioncash 9ac176d5a3 hle/service/audio/audout_u: Correct lack of return in failure case of AppendAudioOutBufferImpl()
Previously we were overwriting the error case with a success code
further down (which is definitely not what we should be doing here).
6 years ago
bunnei 234f00bdd4
Merge pull request #2194 from lioncash/mem
svc: Move memory range checking functions to the VMManager class
6 years ago
bunnei 5a57b1a09b
Merge pull request #2200 from lioncash/audio
hle/service/audio: Extract audio error codes to a header
6 years ago
bunnei 22f105c06d
Merge pull request #2203 from lioncash/engines-include
video_core/engines: Remove unnecessary includes
6 years ago
bunnei 10f08ab9ec
Merge pull request #2198 from lioncash/todo
{kernel/thread, video_core/surface}: Remove obsolete TODOs
6 years ago
Lioncash 196cc82913 yuzu/debugger/wait_tree: Remove use of global CurrentProcess accessor
We already have the thread instance that was created under the current
process, so we can just pass the handle table of it along to retrieve
the owner of the mutex.
6 years ago
Lioncash f9ee0dc7ee video_core/engines: Remove unnecessary includes
Removes a few unnecessary dependencies on core-related machinery, such
as the core.h and memory.h, which reduces the amount of rebuilding
necessary if those files change.

This also uncovered some indirect dependencies within other source
files. This also fixes those.
6 years ago
Lioncash ad9dbeb44b hle/service/audio: Extract audio error codes to a header
Places all error codes in an easily includable header.

This also corrects the unsupported error code (I accidentally used the
hex value when I meant to use the decimal one).
6 years ago
Lioncash c161389a0f kernel/address_arbiter: Pass in system instance to constructor
Allows getting rid of reliance on the global accessor functions and
instead operating on the provided system instance.
6 years ago
Lioncash 9d9676f620 kernel/address_arbiter: Minor tidying up
- Invert conditions into guard clases where applicable.
- Mark std::vector parameter of WakeThreads as const
6 years ago
Lioncash ec6664f6d6 kernel/address_arbiter: Convert the address arbiter into a class
Places all of the functions for address arbiter operation into a class.
This will be necessary for future deglobalizing efforts related to both
the memory and system itself.
6 years ago
Lioncash 42085ff110 video_core/surface: Remove obsolete TODO in PixelFormatFromRenderTargetFormat()
This isn't needed anymore, according to Hexagon
6 years ago
Lioncash 79f970e6de kernel/thread: Remove obsolete TODO in Create()
This is a TODO carried over from Citra that doesn't apply here.
6 years ago
bunnei cc92c054ec
Merge pull request #2185 from FearlessTobi/port-4630
Port citra-emu/citra#4630: "Memory: don't lock hle mutex in memory read/write"
6 years ago
Lioncash 40de7f6fe8 vm_manager: Use range helpers in HeapAlloc() and HeapFree()
Significantly tidies up two guard conditionals.
6 years ago
Lioncash 6c42a23550 vm_manager: Provide address range checking functions for other memory regions
Makes the interface uniform when it comes to checking various memory
regions.
6 years ago
Lioncash 0be8fffc99 svc: Migrate address range checking functions to VMManager
Provides a bit of a more proper interface for these functions.
6 years ago
bunnei 07e13d6728
Merge pull request #2165 from ReinUsesLisp/unbind-tex
gl_rasterizer: Unbind textures but don't apply the gl_state
6 years ago
bunnei 6ad66acce2
Merge pull request #2188 from lioncash/log-static
logging/backend: Move CreateEntry into the Impl class. Relocate local static to a class variable
6 years ago
bunnei be6bf37224
Merge pull request #2189 from lioncash/web
web_service: Remove unnecessary inclusions
6 years ago
Lioncash aa30fd75cd web_service: Remove unnecessary inclusions
Reduces the potential amount of rebuilding necessary if any headers
change. In particular, we were including a header from the core library
when we don't even link the core library to the web_service library, so
this also gets rid of an indirect dependency.
6 years ago
Mat M 169d19f7b9
Merge pull request #2154 from FearlessTobi/port-4647
Port citra-emu/citra#4647: "citra_qt/main: make SPEED_LIMIT_STEP static constexpr"
6 years ago
Lioncash f8f1ff0b4f logging/backend: Make time_origin a class variable instead of a local static
Moves local global state into the Impl class itself and initializes it
at the creation of the instance instead of in the function.

This makes it nicer for weakly-ordered architectures, given the
CreateEntry() class won't need to have atomic loads executed for each
individual call to the CreateEntry class.
6 years ago
Lioncash 43c1092031 logging/backend: Move CreateEntry into the Impl class
This function is only ever used within this source file and makes it
easier to remove static state in the following change.
6 years ago
Mat M a461e266ea
Merge pull request #2183 from ReinUsesLisp/vk-buffer-cache-clang
vk_buffer_cache: Fix clang-format
6 years ago
James Rowe 2e2f6aa71a
Merge pull request #2186 from honzapatCZ/patch-1
Yuzu can render 3D.
6 years ago
fearlessTobi 71c30a0a89 citra_qt/main: make SPEED_LIMIT_STEP static constexpr
MSVC does not seem to like using constexpr values in a lambda that were declared outside of it.
Previously on MSVC build the hotkeys to inc-/decrease the speed limit were not working correctly because in the lambda the SPEED_LIMIT_STEP had garbage values.
After googling around a bit I found: https://github.com/codeplaysoftware/computecpp-sdk/issues/95 which seems to be a similar issue.
Trying the suggested fix to make the variable static constexpr also fixes the bug here.
6 years ago
Nejcraft 90fd257b47
Yuzu can render 3D.
Yuzu can now render 3D graphics to some degree.
6 years ago
Weiyi Wang 5159f4eee8 Memory: don't lock hle mutex in memory read/write
The comment already invalidates itself: neither MMIO nor rasterizer cache belongsHLE kernel state. This mutex has a too large scope if MMIO or cache is included, which is prone to dead lock when multiple thread acquires these resource at the same time. If necessary, each MMIO component or rasterizer should have their own lock.
6 years ago
bunnei 3c39b39bbc
Merge pull request #2182 from bunnei/my-wasted-friday
fuck git for ruining my day, I will learn but I will not forgive
6 years ago
ReinUsesLisp 8e84e81e74 vk_buffer_cache: Fix clang-format 6 years ago
bunnei e22670fbc3
Merge pull request #2178 from ReinUsesLisp/vk-buffer-cache
vk_buffer_cache: Implement a buffer cache
6 years ago
bunnei ab70c2583d fuck git for ruining my day, I will learn but I will not forgive 6 years ago
ReinUsesLisp 35c105a108 vk_buffer_cache: Implement a buffer cache
This buffer cache is just like OpenGL's buffer cache with some minor
style changes. It uses VKStreamBuffer.
6 years ago
bunnei 1da8a0c2a8
Merge pull request #2173 from lioncash/capture
yuzu/compatdb: Remove unused lambda capture
6 years ago
bunnei 12e74fe801
Merge pull request #2180 from lioncash/audren
service/audio: Provide an implementation of ExecuteAudioRendererRendering
6 years ago
bunnei 115fc6120c
Merge pull request #2181 from lioncash/audren2
service/audio/audren_u: Implement OpenAudioRendererAuto
6 years ago
Lioncash 84aff56644 service/audio/audren_u: Implement OpenAudioRendererAuto
This currently has the same behavior as the regular
OpenAudioRenderer API function, so we can just move the code within
OpenAudioRenderer to an internal function that both service functions
call.
6 years ago
Lioncash 42dc73157c service/audio: Provide an implementation of ExecuteAudioRendererRendering
This service function appears to do nothing noteworthy on the switch.
All it does at the moment is either return an error code or abort the
system. Given we obviously don't want to kill the system, we just opt
for always returning the error code.
6 years ago
ReinUsesLisp e85066dac7 gl_rasterizer: Remove texture unbinding after dispatching a draw call
Unbinding was required when OpenGL delete operations didn't unbind a
resource if it was bound. This is no longer needed and can be removed.
6 years ago
ReinUsesLisp bb3ab7d66c gl_state: Fixup multibind bug 6 years ago
bunnei 49c6d21b31
Merge pull request #2174 from lioncash/fwd
service/hid: Amend forward declaration of ServiceManager
6 years ago
bunnei 1b13859af8
Merge pull request #2152 from ReinUsesLisp/vk-stream-buffer
vk_stream_buffer: Implement a stream buffer
6 years ago
bunnei 1f5d6a8fed
Merge pull request #2121 from FernandoS27/texception2
Improve the Accuracy of the Rasterizer Cache through a Texception Pass
6 years ago