Lioncash
b9ec5ec5b4
hle_ipc: Make WriteToOutgoingCommandBuffer()'s reference parameter const
This function doesn't modify anything within the reference Thread
instance.
7 years ago
Lioncash
38c2af9330
kernel: Move object class to its own source files
General moving to keep kernel object types separate from the direct
kernel code. Also essentially a preliminary cleanup before eliminating
global kernel state in the kernel code.
8 years ago
Lioncash
3d2d454c36
kernel: Remove unnecessary includes
Removes unnecessary direct dependencies in some headers and also gets
rid of indirect dependencies that were being relied on to be included.
8 years ago
Lioncash
059d0017f1
thread: Convert ThreadStatus into an enum class
Makes the thread status strongly typed, so implicit conversions can't
happen. It also makes it easier to catch mistakes at compile time.
8 years ago
Lioncash
2b158ebd25
hle_ipc: Introduce generic WriteBuffer overload for multiple container types
This introduces a slightly more generic variant of WriteBuffer().
Notably, this variant doesn't constrain the arguments to only accepting
std::vector instances. It accepts whatever adheres to the
ContiguousContainer concept in the C++ standard library.
This essentially means, std::array, std::string, and std::vector can be
used directly with this interface. The interface no longer forces you to
solely use containers that dynamically allocate.
To ensure our overloads play nice with one another, we only enable the
container-based WriteBuffer if the argument is not a pointer, otherwise
we fall back to the pointer-based one.
8 years ago
Lioncash
a52cb33af2
hle_ipc: Amend usage of buffer_index within one of HLERequestContext's WriteBuffer() overloads
Previously, the buffer_index parameter was unused, causing all writes to
use the buffer index of zero, which is not necessarily what is wanted
all the time.
Thankfully, all current usages don't use a buffer index other than zero,
so this just prevents a bug before it has a chance to spring.
8 years ago
Lioncash
b1b1c60009
core/memory, core/hle/kernel: Use std::move where applicable
Avoids pointless copies
8 years ago
bunnei
df66fadc12
nvflinger: Fix for BufferQueue event handling.
8 years ago
David Marcec
66bd4de380
No need to use ASSERT_MSG with an empty message
8 years ago
James Rowe
d74d2a77cb
Update clang format
8 years ago
James Rowe
e159c550d8
Rename logging macro back to LOG_*
8 years ago
mailwl
29f156eb60
IPC: skip empty buffer write
prevent yuzu crash, if games, like Axiom Verge, trying to read 0 bytes from file
8 years ago
David Marcec
75bd5bf8be
Added RequestWithContext & ControlWithContext
8 years ago
David
3a3b58df8b
GetSharedFontInOrderOfPriority ( #381 )
* GetSharedFontInOrderOfPriority
* Update pl_u.cpp
* Ability to use ReadBuffer and WriteBuffer with different buffer indexes, fixed up GetSharedFontInOrderOfPriority
* switched to NGLOG
* Update pl_u.cpp
* Update pl_u.cpp
* language_code is actually language code and not index
* u32->u64
* final cleanups
8 years ago
Lioncash
bd9414dd31
kernel: Migrate logging macros to fmt-compatible ones
8 years ago
bunnei
52c5bc4642
hle_ipc, fsp_srv: Cleanup logging.
8 years ago
bunnei
6d21b8cdea
hle_ipc: Do not ensure write buffer size.
8 years ago
N00byKing
1212e9e231
Clean Warnings (?)
8 years ago
bunnei
7750edae39
hle_ipc: Add SleepClientThread to block current thread within HLE routines.
8 years ago
bunnei
01d72e813e
hle_ipc: Use shared_ptr instead of unique_ptr to allow copies.
8 years ago
bunnei
479400acc8
hle_ipc: Remove GetPointer(..) usage with WriteToOutgoingCommandBuffer.
8 years ago
mailwl
dadb6c6e50
Add warning if Domain request has no domain message header
8 years ago
mailwl
2ba8b89864
Fix: change check for domain order and existance of domain message header
8 years ago
mailwl
e05f10cae8
IPC: add domain header to response if only it exists in request
8 years ago
mailwl
e86ec16ee7
Service/hid: stub some functions
8 years ago
bunnei
9bd160723a
hle_ipc: Remove const from WriteBuffer size.
8 years ago
bunnei
289e29163b
hle_ipc: Add GetReadBufferSize and check write buffer size.
8 years ago
bunnei
f0e350f3bb
hle_ipc: Add helper functions for reading and writing buffers.
8 years ago
bunnei
ac83b7c57f
hle_ipc: Add helper functions for reading and writing buffers.
8 years ago
bunnei
a3aadaea60
hle: Integrate Domain handling into ServerSession.
8 years ago
bunnei
4fabdf77d7
hle: Remove Domain and SyncObject kernel objects.
8 years ago
James Rowe
ea88c44eb8
Format: Run the new clang format on everything
8 years ago
River City Ransomware
39827d573a
Fixes some cast warnings, partial port of citra #3064 ( #106 )
* Fixes some cast warnings, partially fixes citra #3064
* Converted casts to uint32_t to u32
* Ran clang-format
8 years ago
gdkchan
90b697db30
Stub PopLaunchParameter and implement Buffer C Descriptors reading on hle_ipc ( #96 )
* Stub PopLaunchParameter and implement Buffer C Descriptors reading
* Address PR feedback
* Ensure we push a u64 not a size_t
* Fix formatting
8 years ago
bunnei
0d1c6f492e
hle_ipc: Clang format.
8 years ago
bunnei
ce1626b80e
ipc: Implement domain command CloseVirtualHandle.
8 years ago
bunnei
182548ec86
yuzu: Update license text to be consistent across project.
8 years ago
Subv
8923c80127
IPC: Corrected some definitions for the buffer C descriptor flags.
8 years ago
Subv
347ab620b5
IPC: Add functions to read the input move/copy objects from an IPC request.
8 years ago
Subv
eda468e4fb
IPC: Don't attempt to read the command buffer if it holds a Close request.
8 years ago
Subv
fd93b1e0ef
IPC Cleanup: Remove 3DS-specific code and translate copy, move and domain objects in IPC requests.
Popping objects from the buffer is still not implemented.
8 years ago
Subv
6a6013d4c3
IPC: Skip the entire u64 of the command id when receiving an IPC request.
Service code now doesn't have to deal with this.
8 years ago
Subv
d6a5e0b61b
IPC: Use the correct size when pushing raw data to the command buffer and fixed pushing domain objects.
Domain object ids are always stored immediately after the raw data.
8 years ago
bunnei
9d04a45a90
kernel: Fix implementation of ConvertSessionToDomain.
8 years ago
bunnei
a636b779e7
hle_ipc: Only copy necessary fields for outgoing command buffer.
8 years ago
bunnei
f599769c3c
hle_ipc: Parse out buffer X/A/B/B descriptors from incoming command buffer.
8 years ago
bunnei
be299c7636
hle: Implement ConvertSessionToDomain, various cleanups.
8 years ago
bunnei
2ea8867549
hle: Initial implementation of NX service framework and IPC.
8 years ago
Huw Pascoe
da1c8d1522
Fixed type conversion ambiguity
8 years ago
Yuri Kunde Schlesner
b3e13d653f
Kernel/IPC: Support translation of null handles
Missed this in my first implementation. Thanks to @wwylele for pointing
out that this was missing.
9 years ago