Commit Graph
242 Commits
Author SHA1 Message Date
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
Henrik Rydgård a8744f5992 Disable the native debugger when RetroAchievements hardcore mode is enabled 2024-11-10 19:19:03 +01:00