Commit Graph

15 Commits

Author SHA1 Message Date
871a167d8b also fix crashes when inserting/ejecting a NDS cart while nothing is loaded 2024-11-17 15:43:22 +01:00
9c8f229fed misc shit 2024-10-31 22:37:46 +01:00
1b8daa0465 fix up cheat toggle 2024-10-31 20:33:57 +01:00
e576538268 synchronize pause/unpause across all instances 2024-10-27 11:21:30 +01:00
881a740cab start actually implementing multi-window feature, still rough around the edges
fix crash when closing main window if sub windows are involved

fix OpenGL context handling, still need to fix when changing display type
2024-10-27 01:14:29 +02:00
f375099613 Update EmuThread.h (#2171)
* Update EmuThread.h

Add missing include QVariant. This fixes and error when building on Arch.

* Update AboutDialog.cpp
2024-10-26 23:03:36 +02:00
979f1ed615 same shit with Import Savefile 2024-10-25 10:52:47 +02:00
75e6856af4 route savestate stuff through EmuThread 2024-10-24 19:27:45 +02:00
079341f102 take this a bit further 2024-10-24 11:44:21 +02:00
82f38f0b7a start moving ROM/firmware loading to the emuthread to avoid cursed bugs 2024-10-24 00:27:05 +02:00
1428bfb2cf fix one of the cursed bugs 2024-10-23 20:33:31 +02:00
8fc403cdad update copyright headers 2024-06-15 17:01:19 +02:00
25a7b1ca1d merge doublemelon (#2067)
non-exhaustive (but exhausting) list of changes:

* base laid for multiple window support, but will likely require more work to work correctly
* encapsulation of frontend state for proper multi-instance support
* (JIT still needs a fix for the NDS::Current workaround but we can get there later)
* new, more flexible configuration system
2024-06-15 13:52:47 +02:00
043244a56d Compute shader renderer (#2041)
* nothing works yet

* don't double buffer 3D framebuffers for the GL Renderer
looks like leftovers from when 3D+2D composition was done in the frontend

* oops

* it works!

* implement display capture for compute renderer
it's actually just all stolen from the regular OpenGL renderer

* fix bad indirect call

* handle cleanup properly

* add hires rendering to the compute shader renderer

* fix UB
also misc changes to use more unsigned multiplication
also fix framebuffer resize

* correct edge filling behaviour when AA is disabled

* fix full color textures

* fix edge marking (polygon id is 6-bit not 5)
also make the code a bit nicer

* take all edge cases into account for XMin/XMax calculation

* use hires coordinate again

* stop using fixed size buffers based on scale factor in shaders
this makes shader compile times tolerable on Wintel
- beginning of the shader cache
- increase size of tile idx in workdesc to 20 bits

* apparently & is not defined on bvec4
why does this even compile on Intel and Nvidia?

* put the texture cache into it's own file

* add compute shader renderer properly to the GUI
also add option to toggle using high resolution vertex coordinates

* unbind sampler object in compute shader renderer

* fix GetRangedBitMask for 64 bit aligned 64 bits
pretty embarassing

* convert NonStupidBitfield.h back to LF only new lines

* actually adapt to latest changes

* fix stupid merge

* actually make compute shader renderer work with newest changes

* show progress on shader compilation

* remove merge leftover
2024-05-13 17:17:39 +02:00
f905b6fb93 separate EmuThread to its own file 2023-12-26 19:24:14 +01:00