summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2018-01-10nvdisp_disp0: Call SwapBuffers to render framebuffer.bunnei
2018-01-10renderer_opengl: Support rendering Switch framebuffer.bunnei
2018-01-10render_base: Add a struct describing framebuffer metadata.bunnei
2018-01-10renderer_opengl: Add MortonCopyPixels function for Switch framebuffer.bunnei
2018-01-10renderer_opengl: Update DrawScreens for Switch.bunnei
2018-01-10CMakeLists: Add framebuffer_layout.cpp.bunnei
2018-01-10frontend: Update for undocked Switch screen layout.bunnei
2018-01-10NV: Move the nv device nodes to their own directory and namespace.Subv
2018-01-10VI: Use a Pulse event instead of OneShot for the vblank events.Subv
This prevents missing frames if the vblank fires between the DequeueBuffer and Wait(vsync) calls
2018-01-10vi: Use new CoreTiming::EventTypebunnei
2018-01-10NV: Expose the nvdisp_disp0 device and a weak reference to the nvdrv:a service.Subv
NVFlinger will call into the nvdisp_disp0 device to perform screen flips, bypassing the ioctl interface. We now have the address of the framebuffer to draw, we just need to actually put it on the screen.
2018-01-10NV: Determine what buffer to draw for each layer of each display.Subv
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.
2018-01-10NV: Signal all display's vsync event 60 times per second.Subv
2018-01-10NV: Give each display its own vsync event.Subv
2018-01-10NV: Keep track of Displays, Layers and BufferQueues in nvflinger.Subv
2018-01-10IPC: Allow passing arguments to the Interfaces when using PushIpcInterfaceSubv
2018-01-10NV: Implemented (with stubs) the vi:m service and some of its subservices.Subv
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.
2018-01-10NV: Implemented the nvdrv:a service and the /dev/nvmap device.Subv
2018-01-10IPC: Corrected some definitions for the buffer C descriptor flags.Subv
2018-01-10svc: Stub ResetSignal and CreateTransferMemorySubv
2018-01-10svc: Stub SetMemoryAttributeSubv
2018-01-10Threads: Added enum values for the Switch's 4 cpu cores and implemented ↵Subv
svcGetInfo(AllowedCpuIdBitmask)
2018-01-10Services: Allow lm to log single-character messages.Subv
2018-01-09SVC: Fixed WaitSynchronization with multiple handles when none is ↵Subv
immediately ready.
2018-01-09SVC: Implemented CancelSynchronization.Subv
2018-01-09ErrorCodes: Updated the InvalidHandle and Timeout kernel error codes.Subv
2018-01-09SVC: Fixed WaitSynchronization with multiple handles when at least one of ↵Subv
them is ready.
2018-01-08kernel: Rename Semaphore to ConditionVariable.bunnei
2018-01-08mutex: Remove unused call to VerifyGuestState.bunnei
2018-01-08Kernel: Actually wake up the requested number of threads in Semaphore::Release.Subv
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.
2018-01-08Kernel: Properly keep track of mutex lock data in the guest memory. This ↵Subv
fixes userland locking/unlocking.
2018-01-08Kernel: Allow chaining WaitSynchronization calls inside a wakeup callback.Subv
2018-01-08cmake: Use LIBUNICORN_* on Windows.bunnei
2018-01-08fix macos buildMerryMage
2018-01-08core_timing: Use 1.020GHz for core clock rate.bunnei
2018-01-08CoreTiming: Reworked CoreTiming (cherry-picked from Citra #3119)B3n30
* CoreTiming: New CoreTiming; Add Test for CoreTiming
2018-01-07IPC: Make DuplicateSession return the Domain instead of the Session if the ↵Subv
request was made on a Domain interface.
2018-01-07AppletOE: Fixed command buffer structure for ReceiveMessage.Subv
2018-01-07IPC: Corrected some command headers in the IPC Controller interface.Subv
2018-01-07IPC: Corrected some command header sizes in appletOE.Subv
2018-01-07IPC: Take the number of domain objects as a parameter in MakeBuilder.Subv
2018-01-07SM: Fixed connecting to services with an 8-byte name, like appletOE.Subv
2018-01-07IPC: Fixed pushing ResultCodes into the command buffer.Subv
They should have 32 bits of padding after the error code now.
2018-01-07IPC: Add functions to read the input move/copy objects from an IPC request.Subv
2018-01-07IPC: Don't attempt to read the command buffer if it holds a Close request.Subv
2018-01-07IPC Cleanup: Remove 3DS-specific code and translate copy, move and domain ↵Subv
objects in IPC requests. Popping objects from the buffer is still not implemented.
2018-01-07IPC: Skip the entire u64 of the command id when receiving an IPC request.Subv
Service code now doesn't have to deal with this.
2018-01-07IPC: Use the correct size when pushing raw data to the command buffer and ↵Subv
fixed pushing domain objects. Domain object ids are always stored immediately after the raw data.
2018-01-07svc: Implement svcSignalProcessWideKey.bunnei
2018-01-07audio: Log dropping frames as trace to reduce spam.bunnei