Commit Graph
243 Commits
Author SHA1 Message Date
Henrik Rydgård f5255eefaf Move the Hardware Transform setting to developer tools, reset by renaming the key.
This setting should always be on, not having it ruins performance.
2026-10-16 13:27:23 +02:00
Henrik Rydgård e9cdb2b20f UI work for VSH (Windows and ImGui) 2026-08-24 11:13:00 +02:00
Henrik Rydgård a41654cf61 More menu changes 2026-08-09 19:03:08 +02:00
Henrik Rydgård 07e63c345c Add SAVE_STATE to BrowseFileType 2026-08-09 19:03:08 +02:00
Henrik RydgårdandClaude Sonnet 5 3500293402 SymbolMap: route remaining GUI-thread callers, remove internal locking
Windows/MainWindowMenu.cpp's Load/Save/Clear Symbol Map menu actions
mutated g_symbolMap directly from the WinMain thread; route them through
Core_RunOnCPUThread like the rest of the debugger. Windows/MainWindow.cpp's
WM_USER_GET_MODULE_INFO handler read it directly too; guard with
g_frameMutex. Windows/main.cpp's SortSymbols() calls turn out to already be
safe as-is - both notifications that trigger them (BOOT_DONE,
SYMBOL_MAP_UPDATED) are only ever fired from the CPU/NativeFrame thread -
so just fix the stale comment claiming reliance on the (now removed)
internal lock.

With those covered, every remaining caller is either on the CPU/NativeFrame
thread already or routes through Core_RunOnCPUThread/g_frameMutex, so
SymbolMap's internal recursive_mutex is redundant - remove it and all ~40
lock_guard call sites. Qt's mainwindow.cpp still pokes at g_symbolMap
directly and unguarded (a pre-existing issue, out of scope - Qt isn't a
maintained backend), but removing the lock doesn't change its public API,
so it still builds.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Hqm11k99viLfbJm2MkH4BH
2026-08-08 17:22:12 +02:00
Henrik Rydgård f022328521 Remove the "restart emuthread" facility that isn't really working (and won't be compatible with the next refactorings) 2026-07-20 12:02:07 +02:00
Henrik Rydgård dd125b2e4d Delete obsolete (and non-working) support for GPUs without non-pow-2 textures. 2026-05-24 14:15:34 +02:00
Henrik Rydgård 231aefe476 Code cleanup for save state notification, add metadata field 2026-05-19 11:07:07 +02:00
Henrik Rydgård cc0ece038c Clean up the string type in RequestCallback - somehow was both char* and std::string????
Might be related to #21695
2026-05-18 14:16:34 +02:00
Henrik Rydgård 7378951ae7 Fix bug that ate RAIntegration menu events 2026-03-26 17:17:36 -06:00
Henrik Rydgård 9a7241708c Win32 file dialog: Prefill the filename when saving 2026-03-07 09:49:57 +01:00
Henrik Rydgård 386fc442a6 Rework the internal screenshot API, fix bug causing screenshotting to get stuck 2026-02-13 12:34:26 +01:00
Henrik Rydgård e1b638aaab Minor UI tweaks 2026-02-11 23:33:39 +01:00
Henrik Rydgård 8270fca734 Remove the hardcoded F12 hotkey for screenshots on Windows.
Fixes #17559
2026-02-11 14:31:49 +01:00
Henrik Rydgård ad4da764df Rework the internal API for applying the fullscreen state. Fixes. 2026-02-02 11:45:46 +01:00
Henrik Rydgård 51c3058cf6 Replace "ForceFullScreen" with a way to prevent specific settings from being saved. 2026-02-02 09:25:49 +01:00
Henrik Rydgård 670eb7b3b6 Header cleanup 2026-02-01 15:20:05 +01:00
Henrik Rydgård 99a1ddb657 Assorted code cleanup 2026-02-01 15:03:23 +01:00
Henrik Rydgård 3a7911407b Assorted minor cleanups 2026-01-19 15:47:40 +01:00
Henrik Rydgård f1f931551a Add a "Savestate slot count" setting. 2026-01-09 12:20:39 +01:00
Henrik Rydgård 2959ad214c Fix the internal savestate API to better reflect how it actually works 2026-01-09 10:29:37 +01:00
Henrik Rydgård 4e5e34a0cc Move the new slot translation string to Dialog, fits better there. 2026-01-08 23:26:48 +01:00
Henrik Rydgård 77b9a6e2e8 Prepare for adjustable save state slot count by making the Win32 menu dynamic 2026-01-08 16:07:48 +01: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 5aeab28e9b Remove the "Percentage of framerate" frameskip type 2025-10-20 11:49:41 +02:00
Henrik Rydgård 16e9c57f96 Delay initializing the Backend submenu until the last possible moment. 2025-09-01 09:46:33 +02:00
Henrik Rydgård 94b47498ab Windows: Remove special code for the help menu 2025-09-01 09:34:27 +02:00
Henrik Rydgård 3895bab1dc Fix more translation issues 2025-08-29 22:52:17 +02:00
Henrik Rydgård 42b46e2098 If RetroAchievements' "Hardcore mode" is enabled, prevent debugger use
Fixes an easy way you could access the debugger windows.
2025-07-09 16:25:24 +02:00
Henrik Rydgård 6cfea96e58 Remove D3D9 support, to make future changes easier 2025-06-10 15:07:16 +02:00
Henrik Rydgård 832c6aa218 Clean up some more "#ifdef GOLD" checks 2025-05-18 10:37:16 +02:00
Henrik Rydgård a698486f9c Savestate: The callback is already an std::function, so no cbUserdata value is needed. 2025-05-16 01:55:15 +02:00
Henrik Rydgård 486370852f Restrict SDL audio buffer setting to 128, 256, 512, 1024, 2048. UI improvmeents 2025-04-15 19:26:26 +02:00
Henrik Rydgård a3d7344e1e Implement for Mac as well 2025-04-15 00:08:39 +02:00
Henrik Rydgård 96b4daf0ba Desktop (Windows) menu: Add "Save frame dump", remove the old "Dump frame to log" 2025-04-14 23:54:45 +02:00
Henrik Rydgård b27a022e7c Remove two states from the CoreState enum. 2025-04-05 09:18:56 +02:00
Henrik Rydgård 116f8cf3af Implement resetting from a popup menu on the pause menu. 2025-03-28 14:31:01 +01:00
Henrik Rydgård 0c299bc21d Windows graphics settings: Change critical settings on the main thread to avoid in-frame "value tearing" 2025-03-03 14:24:07 +01:00
Henrik Rydgård 65ade393c9 Win32 menu: Fix threading issues with stop/reset commands 2025-03-03 14:02:09 +01:00
Henrik Rydgård 4989ec61d9 BreakpointManager: Safer and simpler updates. 2025-03-03 13:59:42 +01:00
Henrik Rydgård d6d1b5bbdc Add mechanism to run any closure on the main thread 2025-03-03 13:59:39 +01:00
Henrik Rydgård 31cf5771f4 Turn the break reason into an enum, fix some minor issues 2025-02-19 16:01:11 -06:00
Henrik Rydgård 74ee868cdb More confirmexit fixes 2025-02-17 16:20:41 -06:00
Henrik Rydgård 6c55a37a7e Correct some window-closing code on Windows. 2025-02-17 13:26:15 -06:00
Henrik Rydgård a45dad94ef Windows: Delete obsolete hotkey for frameskipping 2025-01-23 10:35:50 +01:00
Henrik Rydgård f66ea2f63e Add a bunch of restrictions when online (no savestate, no speed control) 2025-01-13 19:33:48 +01:00
Henrik Rydgård 3ffff831c7 Refactor LogManager (remove GetInstance()). In headless, add option to log to OutputDebugString on Windows. 2024-12-03 21:39:42 +01:00
Henrik Rydgård 47d8e292eb ImDebugger: Add basic filesystem browser. Add partial support for "save file dialogs" to System. 2024-11-25 23:03:15 +01:00
Henrik Rydgård ddd9c43f94 Disable F11 fullscreen shortcut in imdebugger (collides with stepping) 2024-11-25 00:25:17 +01:00
Henrik Rydgård c5eb600044 Add search functionality to disassembler 2024-11-23 23:23:52 +01:00