Commit Graph

5700 Commits (3258db29da499f88c0d85983272f30871c75a59f)
 

Author SHA1 Message Date
bunnei 056f987bcd core: Include <algorithm> where used. 7 years ago
bunnei 11adef4843 renderer_opengl: Fix LOG_TRACE in LoadFBToScreenInfo. 7 years ago
bunnei 94ad97def0 nv: Fix more broken asserts. 7 years ago
bunnei ac2feaf5fb nvdisp_disp0: Fix broken assert. 7 years ago
bunnei 039fc7f985 core: Fix recent GCC build breaks. 7 years ago
bunnei 97ef21e166 svc: Implement GetSystemTick. 7 years ago
bunnei 305035b503 nvdisp_disp0: Call SwapBuffers to render framebuffer. 7 years ago
bunnei ee4691297f renderer_opengl: Support rendering Switch framebuffer. 7 years ago
bunnei 236d463c52 render_base: Add a struct describing framebuffer metadata. 7 years ago
bunnei 866e66dc31 renderer_opengl: Add MortonCopyPixels function for Switch framebuffer. 7 years ago
bunnei 9e2ad45c98 renderer_opengl: Update DrawScreens for Switch. 7 years ago
bunnei 292135a3b7 CMakeLists: Add framebuffer_layout.cpp. 7 years ago
bunnei 482cf8a005 frontend: Update for undocked Switch screen layout. 7 years ago
Subv 1ca800ccee NV: Move the nv device nodes to their own directory and namespace. 7 years ago
Subv 977ce4abbc VI: Use a Pulse event instead of OneShot for the vblank events.
This prevents missing frames if the vblank fires between the DequeueBuffer and Wait(vsync) calls
7 years ago
bunnei 7e0ff43da0 vi: Use new CoreTiming::EventType 7 years ago
Subv 34ae2ec644 NV: Expose the nvdisp_disp0 device and a weak reference to the nvdrv:a service.
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.
7 years ago
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