Subv
7e3561b1cd
IPC: Don't attempt to read the command buffer if it holds a Close request.
8 years ago
Subv
0368324f79
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
b0ceb4df70
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
226786f0b0
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
bc8ef64804
svc: Implement svcSignalProcessWideKey.
8 years ago
bunnei
4e33b4b42f
semaphore: More changes for Switch.
8 years ago
bunnei
0f6fbdb963
wait_object: Refactor to allow waking up a single thread.
8 years ago
bunnei
5017038ca7
svc: Implement svcWaitProcessWideKeyAtomic.
8 years ago
bunnei
91f10a1460
semaphore: Updates for Switch.
8 years ago
bunnei
0e978bdd50
svc: Implement WaitSynchronization for a single handle.
8 years ago
bunnei
57f42e5887
svc: Refactor LockMutex code to use WaitSynchronization1.
8 years ago
bunnei
0dbc8f3577
svc: Add missing string_util include.
8 years ago
bunnei
b172f0d770
arm: Remove SkyEye/Dyncom code that is ARMv6-only.
8 years ago
bunnei
f0eab802e8
vm_manager: Use a more reasonable MAX_ADDRESS size.
8 years ago
bunnei
81a8a57ce2
svc: Remove unnecessary "svc" prefix to naming scheme.
8 years ago
bunnei
480906fe1b
hle: Move SVC code to kernel namespace.
8 years ago
bunnei
e9710a2cf7
vm_manager: Stub out a bunch of interfaces used by svcGetInfo.
8 years ago
bunnei
93480b10ef
core/video_core: Fix a bunch of u64 -> u32 warnings.
8 years ago
bunnei
aa7c824ea4
svc: Implement svcExitProcess.
8 years ago
bunnei
b9950cd4b0
svc: Implement svcLockMutex.
8 years ago
bunnei
d0046b120a
kernel: Add ObjectAddressTable class.
8 years ago
bunnei
1cb978eb82
thread: Keep track of the initially created handle.
This is kinda crufty, but we need it for now to update guest state variables.
8 years ago
bunnei
c7983e970c
errors: Define missing kernel error codes.
8 years ago
bunnei
3a91a62b8f
svc: Implement svcUnmapMemory.
8 years ago
bunnei
b6087e35b5
thread: Main thread should set thread handle to reg 1.
8 years ago
bunnei
7ccd8de863
thread: Remove THUMB mode flag.
8 years ago
bunnei
eed4f2e229
thread: Main thread should be ready by default, all others dormant.
8 years ago
bunnei
ebd4b1422d
kernel: Various 64-bit fixes in memory/process/thread
8 years ago
bunnei
dcdaac8a0b
kernel: Fix implementation of ConvertSessionToDomain.
8 years ago
bunnei
e17c0019c5
kernel: Add basic support for Domain object.
8 years ago
bunnei
834fa5db65
kernel: Add SyncObject primitive, use it for ClientSession.
8 years ago
bunnei
3421e1617e
process: Add method to mirror a memory region.
8 years ago
bunnei
3597650f22
service: Return proper result code for IPC::CommandType::Close.
8 years ago
bunnei
34571f4d2e
hle: Use Switch formatted result codes.
8 years ago
bunnei
dcd6bb82f7
hle: Fix QueryMemory response for MemoryInfo.
8 years ago
bunnei
654fae29c1
hle_ipc: Only copy necessary fields for outgoing command buffer.
8 years ago
bunnei
b283cf7348
hle_ipc: Parse out buffer X/A/B/B descriptors from incoming command buffer.
8 years ago
bunnei
4fb1b24d68
hle: Implement ConvertSessionToDomain, various cleanups.
8 years ago
bunnei
960a1416de
hle: Initial implementation of NX service framework and IPC.
8 years ago
bunnei
23ce4f5afc
loader: Various improvements for NSO/NRO loaders.
8 years ago
Subv
b18589ecf7
Kernel/SharedMemory: Don't take over and unmap the source memory block when creating a shared memory, just reference it.
Also reference the right offset into the backing block for the requested address.
8 years ago
Subv
8217ed7acb
Kernel/Thread: Added a helper function to get a thread's command buffer VAddr.
8 years ago
bunnei
8c92435ded
nso: Refactor and allocate .bss section.
8 years ago
bunnei
fa1c7c7ee1
process: Support loading multiple codesets.
8 years ago
bunnei
c5ce5c06e4
kernel: Various threading fixes to support 64-bit addressing.
8 years ago
bunnei
f01472a5ff
core: Various changes to support 64-bit addressing.
9 years ago
Huw Pascoe
a13ab958cb
Fixed type conversion ambiguity
8 years ago
Subv
8432749db7
Kernel/Threads: When putting a thread to wait, specify a function to execute when it is awoken.
This change makes for a clearer (less confusing) path of execution in the scheduler, now the code to execute when a thread awakes is closer to the code that puts the thread to sleep (WaitSynch1, WaitSynchN). It also allows us to implement the special wake up behavior of ReplyAndReceive without hacking up WaitObject::WakeupAllWaitingThreads.
If savestates are desired in the future, we can change this implementation to one similar to the CoreTiming event system, where we first register the callback functions at startup and assign their identifiers to the Thread callback variable instead of directly assigning a lambda to the wake up callback variable.
8 years ago
Subv
3165466b66
Kernel/Thread: Allow specifying which process a thread belongs to when creating it.
Don't automatically assume that Thread::Create will only be called when the parent process is currently scheduled. This assumption will be broken when applets or system modules are loaded.
8 years ago
MerryMage
c02bbb7030
memory: Add GetCurrentPageTable/SetCurrentPageTable
Don't expose Memory::current_page_table as a global.
8 years ago