| Age | Commit message (Collapse) | Author |
|
Now that we have the address arbiter extracted to its own class, we can
fix an innaccuracy with the kernel. Said inaccuracy being that there
isn't only one address arbiter. Each process instance contains its own
AddressArbiter instance in the actual kernel.
This fixes that and gets rid of another long-standing issue that could
arise when attempting to create more than one process.
|
|
Similar to how WaitForAddress was isolated to its own function, we can
also move the necessary conditional checking into the address arbiter
class itself, allowing us to hide the implementation details of it from
public use.
|
|
Rather than let the service call itself work out which function is the
proper one to call, we can make that a behavior of the arbiter itself,
so we don't need to directly expose those implementation details.
|
|
kernel/shared_memory: Get rid of the use of global accessor functions within Create()
|
|
This makes the class much more flexible and doesn't make performing
copies with classes that contain a bitfield member a pain.
Given BitField instances are only intended to be used within unions, the
fact the full storage value would be copied isn't a big concern (only
sizeof(union_type) would be copied anyways).
While we're at it, provide defaulted move constructors for consistency.
|
|
This function didn't have a definition, so we can remove it to prevent
accidentally attempting to use it.
|
|
Moves the data members to satisfy the order they're declared as in the
constructor initializer list.
Silences a -Wreorder warning.
|
|
Because of the recent separation of GPU functionality into sync/async
variants, we need to mark the destructor virtual to provide proper
destruction behavior, given we use the base class within the System
class.
Prior to this, it was undefined behavior whether or not the destructor
in the derived classes would ever execute.
|
|
web_browser: Add shortcut to Enter key to exit applet
|
|
kernel/client_session, kernel/server_session: Make data members private
|
|
yuzu: add a hotkey to switch between undocked and docked mode
|
|
|
|
service/audio/audout_u: Only actually stop the audio stream in StopAudioOut if the stream is playing
|
|
Asynchronous GPU command processing
|
|
Moves the non-multistream specific state to its own class. This will be
necessary to support the multistream variants of opus decoding.
|
|
This indicates the entropy coder's final range.
|
|
IHardwareOpusDecoderManager
This will be utilized by more than just that class in the future. This
also renames it from OpusHeader to OpusPacketHeader to be more specific
about what kind of header it is.
|
|
Makes it impossible to violate the ODR, as well as providing a place for
future changes.
|
|
if the stream is playing
The service itself only does further actions if the stream is playing.
If the stream is already stopped, then it just exits successfully.
|
|
gl_rasterizer_cache: Move format conversion functions to their own file
|
|
core/hle/ipc: Remove unnecessary includes
|
|
|
|
|
|
|
|
|
|
|
|
|
|
core: Remove the global telemetry accessor function
|
|
|
|
|
|
|
|
|
|
kernel/address_arbiter: Convert the address arbiter into a class
|
|
hle/service/audio/audout_u: Correct lack of return in failure case of AppendAudioOutBufferImpl()
|
|
yuzu/debugger/wait_tree: Remove use of global CurrentProcess accessor
|
|
|
|
AppendAudioOutBufferImpl()
Previously we were overwriting the error case with a success code
further down (which is definitely not what we should be doing here).
|
|
svc: Move memory range checking functions to the VMManager class
|
|
hle/service/audio: Extract audio error codes to a header
|
|
video_core/engines: Remove unnecessary includes
|
|
{kernel/thread, video_core/surface}: Remove obsolete TODOs
|
|
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.
|
|
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.
|
|
Makes it much nicer to locally reason about server session behavior, as
part of its functionality isn't placed around other classes.
|
|
These can be made private, as they aren't accessed in contexts that
require them to be public.
|
|
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).
|
|
Allows getting rid of reliance on the global accessor functions and
instead operating on the provided system instance.
|
|
- Invert conditions into guard clases where applicable.
- Mark std::vector parameter of WakeThreads as const
|
|
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.
|
|
This isn't needed anymore, according to Hexagon
|