Commit Graph

625 Commits

Author SHA1 Message Date
Henrik Rydgård 623545bd24 Delete the "Hardware tessellation" feature.
Very hard to maintain and debug, not worth it.
2026-06-16 16:17:14 +02:00
Henrik Rydgård 8c1a1c0410 Fix the rotation problem in Vulkan on libretro.
Replaces #21840
2026-06-16 11:57:40 +02:00
Henrik Rydgård 36bdde68f9 Delete the "Lazy texture cache" option 2026-06-09 23:49:54 +02:00
Henrik Rydgård a317890c08 Remove the GPUDebugInterface class
Just a pointless extra layer in the class hiearchy, making it
unnecessarily hard to modify the interface.

Might as well hit GPUCommon directly.
2026-06-02 11:15:08 +02:00
Henrik Rydgård 33ae88af6d Delete option "Disable range culling". No games are known to require it anymore. 2026-05-31 23:31:06 +02:00
Henrik Rydgård 0b47955c64 Delete geometry shader culling support. Is mostly replaced, and will be fully replaced with software transform. 2026-05-30 19:07:59 +02:00
Mark Pearce 77045b89ad libretro: call SetGLCoreContext(true) in LibretroGLCoreContext
LibretroGLCoreContext is the backend for RETRO_HW_CONTEXT_OPENGL_CORE,
so the frontend hands us a desktop GL Core profile context. But
CreateDrawContext() never told GLFeatures about it — useCoreContext
stayed at its default false and gl_extensions.IsCoreContext stayed
false, so the macOS Core-profile workaround at GLFeatures.cpp:532
(which force-enables ARB_framebuffer_object because Apple's Core
driver doesn't list it as an extension) never fired.

Every glBindFramebuffer(GL_FRAMEBUFFER, g_defaultFBO) in
GLQueueRunner::fbo_unbind then fell through both branches and silently
no-op'd, so the BackBuffer present pass rendered into nothing and
GL_INVALID_OPERATION accumulated. End result: black screen on macOS,
audio and game logic still working.

One-line fix: call SetGLCoreContext(true) before CheckGLExtensions().
2026-05-22 01:43:27 +08:00
Henrik Rydgård 733f886e98 libretro: Apply swapchain timing fix suggested in #21627
See #21627
2026-05-03 23:58:30 +02:00
sonninnos b7d4a54a45 Libretro: Fix serialization hang with opengl emuthread 2026-05-01 03:38:57 +03:00
celerizer 12cfe70df1 only opengl reset if something actually changed 2026-04-07 13:59:22 -05:00
celerizer 72bd0fa4d3 add null-checks on software render path 2026-04-07 11:05:50 -05:00
Chris Healy ba59170b0b OpenGL: Add GLProfiler for GPU timestamp profiling
Adds a new GLProfiler class for GPU-side timestamp profiling, similar to
VulkanProfiler. Uses GL_EXT_disjoint_timer_query (GLES) or GL_ARB_timer_query
(desktop GL).

Features:
- Scoped Begin()/End() profiling with printf-style naming
- Automatic GPU disjoint detection (frequency changes invalidate results)
- Millisecond timing output via INFO_LOG
- Pre-allocated query pool (1024 queries max per frame)
- Nested scope support with indented output

Signed-off-by: Chris Healy <cphealy@gmail.com>
2026-03-18 09:52:43 -07:00
Eric Warmenhoven be85deba21 libretro: Detach glslang from process on shutdown
On Apple platforms without this, glslang doesn't get properly
deinitialized, and will cause a crash on the second play
2026-03-06 11:04:37 -05:00
Henrik Rydgård 8b0144dbfc Get libretro integration working again.
- Fixes #21275

- Fixes #21274
2026-02-18 10:14:37 +01:00
Henrik Rydgård f046857d2b Delete remains of support for the MIPS architecture as host 2026-02-17 10:20:51 +01:00
Henrik Rydgård 9936fcfee3 Libretro: Freeze fix
Broke in #21221, forgot to apply the refactoring with libretro
2026-02-10 08:25:52 +01:00
Katharine Chui f3e11110ed bump aemu_postoffice
extend max pdp block size, due to user report of the following in
dissidia:

07:53:752 MatchingEven I[SCENET]: HLE\sceNetAdhocMatching.cpp:1188 EventLoop[1]: Matching Event [1=HELLO][00:02:02:02:02:02] OptSize=4696
2026-02-06 11:43:32 +01:00
刘皓 924b30b607 Revert "Disable the libretro VFS on non-Android platforms" 2026-02-06 00:04:19 -05:00
Henrik Rydgård 7d987cd78b Make fast_matrix_mul_4x4 inlineable 2026-01-30 14:10:32 +01:00
Henrik Rydgård ed5a052258 Remove unused initial work for adding NEON support to ARM JITs.
Our SIMD strategy for ARM is the JitUsingIR.
2026-01-29 17:41:57 +01:00
Eric Warmenhoven 58eaf56c5e libretro: build fix
gcc9 and the version of msvc19 that the libretro builders use don't
have _mm_storeu_si32. Using _m_cvtsi128_si32 followed by memcpy is
picked up by compilers that support _mm_storeu_si32 as being the same
and they generate the same assembly, so this is no harm to them.
2026-01-28 00:15:35 -05:00
Henrik Rydgård 34938e3de6 Move Notice to Common/UI 2026-01-25 15:10:26 +01:00
刘皓 84b2744fd7 Disable the libretro VFS on non-Android platforms 2026-01-22 12:07:58 -05:00
Katharine Chui 5aa266934b import aemu_postoffice as a submodule instead 2026-01-19 22:14:51 +01:00
Henrik Rydgård f4dbff0f14 Merge branch 'master' into aemu_postoffice_integrate_v2 2026-01-19 11:40:38 +01:00
MMaZaHaKa 9bb01cc127 upd libretro 2026-01-18 23:51:08 +02:00
刘皓 aea42e2cc5 Change RETRO_HW_CONTEXT_DIRECT3D to RETRO_HW_CONTEXT_D3D11 2026-01-12 11:50:40 -05:00
刘皓 75681e46ee Fix libretro builds for iOS and Windows 2026-01-12 11:31:42 -05:00
Katharine Chui bf30de1527 initial github.com/kethen/aemu_postoffice integration ported from github.com/kethen/aemu 2026-01-11 18:53:54 +01:00
Henrik Rydgård 3f3b353350 Merge pull request #21092 from white-axe/libretro-vfs
Use the libretro VFS interface in libretro builds
2026-01-10 16:36:01 +01:00
Henrik Rydgård e33ff46ffd Extract the rewind code from SaveState.cpp, to make it more managable. 2026-01-08 22:22:46 +01:00
刘皓 18ac1ec937 Use the libretro VFS when reading/writing cheats 2026-01-02 17:07:22 -05:00
刘皓 cb3a89542c Enable the libretro VFS in libretro builds that use Make 2026-01-02 12:44:50 -05:00
刘皓 6fef11a47d Fix libretro builds that use Make 2026-01-02 12:17:09 -05:00
刘皓 5716cbd41d Use the libretro VFS interface in libretro builds 2026-01-01 00:24:01 -05:00
刘皓 a018cfc017 Update libretro-common and remove redundant libretro header files 2025-12-30 23:06:58 -05:00
Eric Warmenhoven 23bd33748e Fix libretro windows builds 2025-11-25 12:03:47 -05:00
Henrik Rydgård b8fced5b41 Path code cleanup, move some UI code (#21037)
* Move a bunch of path logic into Core/Util/PathUtil.cpp/h

.

* Move GameImageView out from SaveDataScreen

* More cleanup, add a translation string
2025-11-25 00:44:24 +01:00
Eric Warmenhoven a4a1752f61 libretro: fix mac build 2025-11-11 09:39:39 -05:00
Henrik Rydgård 67010ff2af Split the display layout config between landscape and portrait orientations 2025-11-05 12:49:51 +01:00
Henrik Rydgård 042cf87248 Rework the present mode settings, refactor. 2025-10-20 21:28:38 +02:00
Henrik Rydgård 80bd32325c Move the present mode from the CreateInfo to InitSwapchain 2025-10-20 16:33:34 +02:00
Henrik Rydgård 5aeab28e9b Remove the "Percentage of framerate" frameskip type 2025-10-20 11:49:41 +02:00
Henrik Rydgård 176c55da25 Remove unused "interval" concept from presentation mode 2025-10-19 18:18:06 +02:00
Henrik Rydgård b304fbe0c9 Build armips in libretro builds (requirement for some lua functionality) 2025-10-08 09:45:44 -06:00
Henrik Rydgård b472eb8b8b Remove a lot of unnecessary string constructors 2025-08-31 15:49:29 +02:00
Henrik Rydgård 380fa19d3c Another std::string_view change, buildfix 2025-08-31 15:24:33 +02:00
Henrik Rydgård 9218fe9b59 Rework the shutdown logic in the OpenGL backend. Eliminated race conditions. 2025-08-31 10:57:06 +02:00
Bobby Smith 46a07943cc [Libretro] Fix Windows build + D3D11 glitches 2025-08-29 02:29:54 +02:00
Henrik Rydgård 92ab532813 No need to build hash.c after all? 2025-08-24 15:25:52 +02:00