Commit Graph

5533 Commits (30cb98f874d0df9e818976f2140135ac8fe1501b)
 

Author SHA1 Message Date
Subv e21fbd9ae5 NV: Determine what buffer to draw for each layer of each display.
Don't try to draw buffers that the guest application is using, only queued buffers are eligible for drawing.

Drawing actual pixels is still not implemented.
7 years ago
Subv 404149e475 NV: Signal all display's vsync event 60 times per second. 7 years ago
Subv d205dee0a6 NV: Give each display its own vsync event. 7 years ago
Subv 927569bed8 NV: Keep track of Displays, Layers and BufferQueues in nvflinger. 7 years ago
Subv fb73e8b723 IPC: Allow passing arguments to the Interfaces when using PushIpcInterface 7 years ago
Subv 25f29c2f4f NV: Implemented (with stubs) the vi:m service and some of its subservices.
The homebrew display test application now properly writes graphics data to the graphics buffer but we still don't have a way to compose the display layers.
7 years ago
Subv 94a5e97eb3 NV: Implemented the nvdrv:a service and the /dev/nvmap device. 7 years ago
Subv ab86b80cac IPC: Corrected some definitions for the buffer C descriptor flags. 7 years ago
Subv ba02f0deef svc: Stub ResetSignal and CreateTransferMemory 7 years ago
Subv 0a1278081e svc: Stub SetMemoryAttribute 7 years ago
Subv 7ad20154fc Threads: Added enum values for the Switch's 4 cpu cores and implemented svcGetInfo(AllowedCpuIdBitmask) 7 years ago
Subv 188feba457 Services: Allow lm to log single-character messages. 7 years ago
Subv c2ee513d35 SVC: Fixed WaitSynchronization with multiple handles when none is immediately ready. 7 years ago
Subv bc91ebacc1 SVC: Implemented CancelSynchronization. 7 years ago
Subv a418f6e77b ErrorCodes: Updated the InvalidHandle and Timeout kernel error codes. 7 years ago
Subv 8d9250fa70 SVC: Fixed WaitSynchronization with multiple handles when at least one of them is ready. 7 years ago
bunnei 4236799832 kernel: Rename Semaphore to ConditionVariable. 7 years ago
bunnei 9fcd2bf672 mutex: Remove unused call to VerifyGuestState. 7 years ago
Subv db3a525166 Kernel: Actually wake up the requested number of threads in Semaphore::Release.
Also properly keep track of data in guest memory, this fixes managing the semaphore from userland.

It was found that Semaphores are actually Condition Variables, with Release(1) and Release(-1) being equivalent to notify_one and notify_all. We should change the name of the class to reflect this.
7 years ago
Subv 1bbe9309da Kernel: Properly keep track of mutex lock data in the guest memory. This fixes userland locking/unlocking. 7 years ago
Subv 2a3f8e8484 Kernel: Allow chaining WaitSynchronization calls inside a wakeup callback. 7 years ago
bunnei 1b9ed033fc cmake: Use LIBUNICORN_* on Windows. 7 years ago
MerryMage f10a304ecd fix macos build 7 years ago
bunnei d6e4e6ea32 core_timing: Use 1.020GHz for core clock rate. 7 years ago
B3n30 82151d407d CoreTiming: Reworked CoreTiming (cherry-picked from Citra #3119)
* CoreTiming: New CoreTiming; Add Test for CoreTiming
7 years ago
Subv c12c756539 IPC: Make DuplicateSession return the Domain instead of the Session if the request was made on a Domain interface. 7 years ago
Subv e3b4c8e043 AppletOE: Fixed command buffer structure for ReceiveMessage. 7 years ago
Subv ad965501d0 IPC: Corrected some command headers in the IPC Controller interface. 7 years ago
Subv 166286e976 IPC: Corrected some command header sizes in appletOE. 7 years ago
Subv ba2ffd7b81 IPC: Take the number of domain objects as a parameter in MakeBuilder. 7 years ago
Subv 5f41477f9c SM: Fixed connecting to services with an 8-byte name, like appletOE. 7 years ago
Subv 80f6df5414 IPC: Fixed pushing ResultCodes into the command buffer.
They should have 32 bits of padding after the error code now.
7 years ago
Subv 32847d8b86 IPC: Add functions to read the input move/copy objects from an IPC request. 7 years ago
Subv 7e3561b1cd IPC: Don't attempt to read the command buffer if it holds a Close request. 7 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.
7 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.
7 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.
7 years ago
bunnei bc8ef64804 svc: Implement svcSignalProcessWideKey. 7 years ago
bunnei bd377908d7 audio: Log dropping frames as trace to reduce spam. 7 years ago
bunnei 4e33b4b42f semaphore: More changes for Switch. 7 years ago
bunnei 0f6fbdb963 wait_object: Refactor to allow waking up a single thread. 7 years ago
bunnei bc77a7580e nso: Always load the filepath specified by the user. 7 years ago
bunnei 79e0dd249e core_timing: Increase clock speed for Switch docked. 7 years ago
bunnei 5017038ca7 svc: Implement svcWaitProcessWideKeyAtomic. 7 years ago
bunnei 91f10a1460 semaphore: Updates for Switch. 7 years ago
bunnei 6f6d9af408 lm: Assert on unsupported multi-message. 7 years ago
bunnei 0e978bdd50 svc: Implement WaitSynchronization for a single handle. 7 years ago
bunnei 57f42e5887 svc: Refactor LockMutex code to use WaitSynchronization1. 7 years ago
bunnei d083c07c46 lm: Improve Log() to format a useful string. 7 years ago
bunnei da7053b169 cmake: Add script to find Unicorn. 7 years ago