Commit Graph
94 Commits
Author SHA1 Message Date
TryTwo 3ea93641b2 CheatSearch: Add ability to breakpoint the selected lines.
Adds three options, on read, on write, and both. Always Breaks and Logs.
2026-02-20 20:57:19 -07:00
TryTwo f9c7731f4d Debugger/ BreakpointsWidget: Add option to disable/enable all breaking without affecting individual breakpoint enabled states.
Allows you to quickly stop breaking, play the game, then re-enable breaking. useful if you have many active breakpoints, but need to run the game.
2026-02-19 16:23:42 -07:00
TryTwo 954219f781 Cheat Search: Add ability to delete items and fix duplicate commands when multiple row items are selected.
Changes it to select rows then extracts one item from each row to operate on. The behavior and data across each item in a row was already identical, so using rows doesn't change anything.
2026-02-13 16:45:00 -07:00
TryTwo 2bc944e1a3 Settings BalloonTip: Wrapped tips were not using the maximum width, resulting in a much smaller width than they should have. 2025-10-16 15:58:32 -07:00
TryTwo c135af22dd Imgui: Add a new default font (VeraMono - 49kb) that scales better than the old default.
Allow loading a custom font by naming it OSD_Font.ttf and placing the file in the User/Load folder, to load that font instead. Useful for future testing.
2025-10-16 15:36:50 -07:00
TryTwo fcb3d2fb05 Qt Setting Panes: Remove original location of options transferred to the OSD pane. 2025-10-10 17:02:00 -07:00
TryTwo 3b11280c20 Movie Window: Move customization options from Menu Bar to OSD pane, but add options to toggle the window and to open the OSD pane.
Add new setting to show/hide the Movie Window.
2025-10-10 16:59:16 -07:00
TryTwo 13ac387197 Qt: Add OnScreenDisplayPane to settings window. Transfer OSD options to pane. 2025-10-10 02:47:27 -07:00
TryTwo f8a8ddeddf OSD / Imgui: Add font size spinbox to Interface Pane.
Adjust some imgui windows to work better with different font sizes.
2025-09-25 16:34:04 -07:00
TryTwo 31ba2af9cb Crash fix: Add check to see if debugging is enabled in Jit's IsProfilingEnabled().
Enable JIT Block Profiling = On, with Enable Debugging UI = Off, will crash dolphin when starting a game.
2025-09-18 17:46:02 -07:00
TryTwo 38cef5a3fc Fix broken imgui text in Metal backend. 2025-09-08 12:49:31 -07:00
TryTwo ca056611ac Cheats: Refresh active code after editing it. 2025-08-24 04:55:12 -07:00
TryTwo d69056aab4 Qt: Prevent Sliders from resizing due to text changing in their label. 2025-08-22 14:46:33 -07:00
TryTwo affc22f17d Update code to work with new version of ImGui.
UpdateImGuiTexture now handles creating font textures and modifying them.
2025-08-18 05:38:14 -07:00
TryTwo 7315acb981 Update ImGui to 1.92.2b 2025-08-17 17:21:05 -07:00
TryTwo 8a8d15799c Update submodule implot 2025-08-17 17:21:05 -07:00
TryTwo 6b683517dc Fix bugs related to AbstractStagingTextures that perform an Upload (write to existing texture). This code path had probably never been used before. 2025-08-12 23:43:55 -07:00
TryTwo f7e7b0f6b0 MemoryWidget: Add symbols and Notes.
Add option to hide them.
Add box to search.
Add ability to edit data symbols and notes in MemoryViewWidget.
2025-07-30 17:40:24 -07:00
TryTwo 3bd110a210 Darkmode qtoolbuttons and checked state.
Generic qtoolbuttons can be much smaller than qpushbuttons.
2025-07-18 22:46:15 -07:00
TryTwo d53e766d65 CodeWidget: Add button that prevents automatic updates to the address, such as navigating to the PC on pause. 2025-07-15 12:23:47 -07:00
TryTwo 9395238159 PPCSymbolDB: Add a mutex to prevent m_functions from being accessed by two different threads on boot.
On boot should be the only time this happens.
2025-06-25 12:11:46 -07:00
TryTwo fe121e4c6e PPCSymbolDB: Move loading map on boot logic from boot.cpp into PPCSymbolDB, as it will be needing a mutex.
Cleanup loading code and reduce amount of signals.

On boot. allow previously loaded map to be kept, if its filename matches. Useful for restarting a game with a large symbol map.
2025-06-25 12:01:16 -07:00
TryTwo 5836ca133c PPCSymbolDB: Move function for finding file path to PPCSymbolDB, so MenuBar doesn't have to randomly access boot.cpp to get the file path. 2025-06-22 11:03:03 -07:00
TryTwo 10c3b0b4e4 CodeWidget: Clear calls and callers box if there is no symbol, otherwise outdated data will persist. 2025-06-20 10:55:11 -07:00
TryTwo c9b815526c Debugger CodeViewWidget: Add context options for making and managing Notes. Add popup dialog for editing functions and notes. 2025-06-19 18:00:10 -07:00
TryTwo 78065359bb Debugger CodeWidget : Add search box for notes. 2025-06-19 17:55:45 -07:00
TryTwo 040d9a4336 Debugger symbols: Add new symbol type: Notes.. Notes are for naming single instructions, or small groups of instructions.
Notes are separate from function symbols, and can be searched separately.
Unlike functions, notes of different length can overlap each other.
In the instruction window, a note will always display over the function symbol.
2025-06-19 17:55:35 -07:00
TryTwo a6a5e201b6 Qt Advanced Panel: Convert QSliders into ConfigSliders.
Part of the refactor into the config system.
2025-05-26 19:52:30 -07:00
TryTwo c1d0a49f35 Settings: Bugfix. Fix some combo boxes setting a value without user input. Prevents initial Load from calling the connection to save value. 2025-05-02 18:21:45 -07:00
TryTwo 1aabae49ed Settings: Bugfix. Remove Aspect Ratio combobox signal so it doesn't trigger a settings changed save. 2025-05-02 18:21:18 -07:00
TryTwo 91380258a1 GameConfig Settings: If no game setting exists for a certain option, then show the global setting value. Previously showed the default value if the game setting didn't exist. 2025-04-07 20:41:46 -07:00
TryTwo 69bdb0535c Gamesetting fix: Monster Hunter Tri. set EFBAccessEnable = True to fix over-bloom issues.
Was broken due to the default for this setting being switched.
2025-04-05 17:40:32 -07:00
TryTwo efd993f382 AudioPanel bugfix: Forgot to wrap an optional slider in a conditional. 2025-03-28 15:50:24 -07:00
TryTwo e5608c6ca5 ConfigControl fix: Add invalid index check to ConfigComplexChoice. Resolve with a default index that can be set.
If more control is needed,  it could be changed to allow multiple states to point to the same index.
2025-03-26 13:15:57 -07:00
TryTwo 896b4bb1fa AudioPanel: Refactor to use Config system. Some options were changed to a different format, for easier compatibility.
Removed VolumeChanged signal, as ConfigChanged will trigger what is needed.

Only applies UpdateSoundStream to things that can change during emulation.

Settings::SetVolume might no longer be used, but left it in.
2025-03-26 12:26:01 -07:00
TryTwo b0867c1602 CodeWidget: Layout tweak. Give left-side widgets more vertical space by moving the address bar out of the way. Align things better. 2025-03-21 09:55:52 -07:00
TryTwo bbf72e79f9 Breakpoints: Fix lag when adding or removing multiple memory breakpoints by only calling DBATUpdated() once. 2025-02-04 00:21:13 -07:00
TryTwo 0b8301ff97 MemoryViewWidget: Add auto update toggle. 2025-01-19 23:24:59 -07:00
TryTwo 7b19192134 MemoryViewWidget: Color recently changed memory when auto updating. 2025-01-19 23:24:08 -07:00
TryTwo 6d8f40c245 MemoryViewWidget: Reduce amount of unnecessary update calls. 2025-01-19 23:19:40 -07:00
TryTwo 32e135e6a9 MemoryViewWidget: Add OnFrameEnd callback to auto-update memory while a game is running. 2025-01-19 23:18:38 -07:00
TryTwo 3edb5accca MemoryViewWidget: Refactor updates using a dispatch function. Isolate memory reads from table updates.
Preparations for auto update while a game is running.
2025-01-08 13:40:46 -07:00
TryTwo 2e006d9787 MemoryViewWidget: Refactor. Remove OnItemChanged signal and QSignalBlocker - replace with a signal that is only sent at the correct time. 2025-01-07 15:57:53 -07:00
TryTwo 5395f21ae5 Qt, Config controls system: Remove signal block so signals can refresh the enabled status of certain options when a new config is loaded (such as on starting a game). Blocks previously unwanted behavior with a new safety check.
QCheckBox::toggled and other similar signals are used to save changes and to update widget status (such as enabled).. OnConfigChanged needs to load new values and trigger widget updates, but the new value shouldn't trigger a save. A save is unnecessary (the config has the correct values and the UI is being updated to those values) and it'd trigger another ConfigChanged signal.   This commit blocks the save without blocking the signal entirely.
2025-01-07 03:02:39 -07:00
TryTwo 3d248d000f Frame Dumping: Change lossless codec from FFV1 to Ut Video.
Ut Video is faster and more compatible with editing programs, but produces larger files.
2024-12-30 14:07:43 -07:00
TryTwo 27ac5fa777 Qt crash fix. Don't store Config::Info variable as a reference. 2024-12-23 15:40:07 -07:00
TryTwo 9541bb6cf7 Add method to bold slider/spin labels when a user game ini setting is being used 2024-12-10 13:42:30 -07:00
TryTwo ac129d318b EnhancementsWidget:: Move to using ConfigControls and add new control for ComboBoxes that set two settings at once. 2024-12-10 13:42:17 -07:00
TryTwo 84a937ae65 Add GFX property tabs to game properties window, allowing them to be set to the user game ini. Additionally, refactor ConfigWidgets to reduce duplication. Refactor GameConfigWidget to use config system.
Creates a layer outside the game config layer system and passes it to the created gfx widows, so as to not interfere with the global config system.

Supports multiple game properties being open at once.
Supports editing while a game is playing, but the options only save and update the active game when the window is closed.
Right-clicking will remove a property from the game ini.
2024-12-10 13:40:30 -07:00
TryTwo 08df9a66e0 DolphinQt: Refactor, add ConfigControl class
This reduces code duplication in the different ConfigControls. This is
helpful for the next commit, which will modify the now deduplicated
code.
2024-12-07 16:31:34 +01:00
TryTwo a56a27a219 Audio: Add option to AudioPane to temporarily mute audio when emulation speed limit is disabled. 2024-10-15 03:05:19 -07:00
TryTwo f29fe15d77 FrameAdvance: Fix continuous frame advancing while the debug UI is open. Blocks signals from being spammed to update the UI. 2024-06-26 16:19:03 -07:00
TryTwo 81fc60f888 MainWindow: Remove Show() and redistribute its logic to other places.
bugfix:  SetQWidgetWindowDecorations(this); not called before show() for Windows darkmode titlebars.

The actual call to (QWidget) show() needed to come sooner. Show() was originally left alone, but with other checks needing to move with (QWidget) show(), this function became less useful.  Show()  was originally created to fix the render widget appearing behind the main window, but that appears to work fine in this iteration.
2024-06-23 10:49:14 -07:00
TryTwo 28c28623a8 MainWindow: Don't save UI geometry in batch mode. Batch mode was erasing the UI geometry for the sessions where batch mode is off. Render widget is still saved. 2024-06-08 23:27:56 -07:00
TryTwo fa00728d3e MainWindow: Check for batch mode before show(). 2024-06-04 00:26:58 -07:00
TryTwo 3526f3cd9f Color unused cells and disabled rows.
(bug?) Does not update on dark/light style change, as no signals are sent.
2024-06-01 03:42:25 +02:00
TryTwo 1396e927c7 BreakpointWidget: Give conditionals a popup text entry on click. 2024-06-01 03:42:25 +02:00
TryTwo e52b814eb2 BreakpointWidget: Direct editing of address cells. Prevent symbol cells from being affected. 2024-06-01 03:42:24 +02:00
TryTwo b740671792 BreakpointWidget: Make buttons, removing selecting row on clicking, and fix OnContextMenu which relied on select rows.
Add functions to edit breakpoints.
2024-06-01 03:42:18 +02:00
TryTwo b7b0842d2f BreakpointWidget: Fix Qt centering issues with a Custom Delegate 2024-05-25 17:09:21 -07:00
TryTwo d96840f808 BreakpointWidget: Move delete to the context menu. Selecting rows will be removed, so select -> delete is hard to maintain. 2024-05-25 17:09:21 -07:00
TryTwo 564d4c3c25 MainWindow: Initialize geometries before calling GetWindowSystemInfo.
On Windows:
wsi.render_window being set will set/save the initial geometry, which will cause sizing bugs until it's set again by the user resizing/repositioning.
2024-05-22 21:27:50 -07:00
TryTwo 6bd9488e0a WiimoteDevice. bugfix. Remove signal spam while starting a game.
Emulation state changed signals also update the wiimote connection. The signal here is only needed for wiimote connects/disconnects.

Can fix erroneous debugger behavior during booting, as dolphin will sometimes incorrectly report the state as paused, which leads the debugger widgets to run when they shouldn't.
2023-12-07 12:15:57 -07:00
TryTwo 92532c8d3a PPCSymbolDB. Bugfix. Fix .data symbols not loading, unless they were aligned to 4 bytes.
.data symbols point to memory values and can be any byte or length of bytes (such as a string).
2023-12-03 00:03:28 -07:00
TryTwo e5f5722497 Callstack: Bugfix. Remove double counting in loop to allow for more callstack items to be reported. 2023-11-27 14:18:25 -07:00
TryTwo 0826586f96 CodeDiffDialog: Add saving/loading function finder results. 2023-11-26 21:26:58 -07:00
TryTwo b57ba42a55 Core::SetState() allow state to change without sending a callback.
Some state changes are meant to be near instantanoues, before switching to something else. By reporting ithe instant switch, the UI will flicker between states (pause/play button) and the debugger will unnecessarily update. Skipping the callback avoids these issues.
2023-11-16 11:07:37 -07:00
TryTwo df8c0d2b39 Core::GetState() bugfix: remove forced incorrect state on frame advance.
This was implemented to prevent UI flickering due to  the state rapidly switching between pause/play.  Recently, it has been causing issues with debugger windows, which update during frame advance.
2023-11-16 10:41:53 -07:00
TryTwo 2a5147a19b Dark style: add QTableCornerButton. Fix padding for tables.
CodeDiffDialog: Fix QTableWidget UI issues
2023-11-04 15:00:07 -07:00
TryTwo 490e4b78a7 Bugfixes for PPCDebugInterface::GetMemoryAddressFromInstruction
FromChars cannot return a value prefixed with 0x.
Possible regex failures on rX, rY, rZ
2023-10-29 22:54:45 -07:00
TryTwo a17fbe7c65 Expand conditional breakpoints to memory breakpoints 2022-12-04 11:25:33 -07:00
TryTwo 76bf1b5f7d Add callstack to conditional breakpoints. Checks entire stack for value.
Use: callstack(0x80000000).
  !callstack(value) works as a 'does not contain'.
Add strings to expr.h conditionals.
  Use quotations: callstack("anim") to check symbols/name.
2022-12-03 20:52:17 -07:00
TryTwo 700eca1baa MemoryViewWidget set target address as selected. Fix focus call. Always color selected item blue. 2022-11-30 16:38:56 -07:00
TryTwo 053320b7cf MemoryWidget: Make search address a combobox that holds address history.
Always update the combobox when a new target address is sent.
2022-10-29 22:41:30 -07:00
TryTwo e2df81b0c1 Add logging and error reporting to Breakpoint Conditionals. 2022-10-23 08:22:35 -07:00
TryTwo 6f4f4e057e MemoryViewWidget refactor memory table.
Don't re-create the table on every update.
2022-10-22 17:52:39 -07:00
TryTwo 1ed6028af4 NewBreakpointDialog: Add a help message for conditionals. 2022-10-08 13:23:24 -07:00
TryTwo fb79c04cf1 MemoryView auto updateDebugger. Implement base codetrace logic. Add register breakpoints. Add CodeViewWidget autostepping to track a value.Debugger 2022-10-06 22:17:22 -07:00
TryTwo 50db8f35b8 Debugger MemoryWidget: Create mini-menu at top of sidebar. Move dump buttons and "set value from file" to the menu. 2022-09-08 16:36:36 -07:00
TryTwo d0b33c7adf Debugger CodeWidget: Add filter boxes to callstack, function calls, and function callers. Move symbols search box to align with changes. 2022-07-05 12:57:41 -07:00
TryTwo bd59b0a490 Debugger MemoryViewWidget: Allow direct editing of memory cells. 2022-07-01 17:30:24 -07:00
TryTwo d9ea1e44be Add post-processing option that can do Integer Scaling. 2022-06-14 07:42:29 -07:00
TryTwo 177dae6a1a Add options for BreakpointWidget, WatchWidget, and CheatSearches to send address to Memory Widget 2022-06-01 01:53:15 -07:00
TryTwo 95175bbb96 Debugger RegisterWidget: Add context options to change entire column's display type. 2022-04-29 17:21:39 -07:00
TryTwo a7111e3910 Dual View any size. 2022-04-23 02:46:25 -07:00
TryTwo cc22f1a558 MemoryWidget add dual views for two separate column types. Force first column to be Hex32. 2022-04-17 00:15:44 -07:00
TryTwo a2aecc3794 Debugger MemoryWidget: More display types, use combo box for display options. Add alignment and riw length options. 2022-04-15 22:00:51 -07:00
TryTwo ed96b8e308 Debugger MemoryWidget: add float and integer inputs. Add input preview. Change input logic. Use combobox for options. 2022-04-06 16:20:55 -07:00
TryTwo 8f85e384c3 Debugger MemoryViewWidget: fixed, tighter spacing 2022-03-29 14:16:25 -07:00
TryTwo 53cf78d413 Gekko constistancy changes. Add context item to codeview to show or copy a load/store target memory address from instructions at or near PC when paused. 2022-03-17 12:53:38 -07:00
TryTwo 86d1e6cd7e Qt/Debugger: Improve Code View
* Use font based sizing for row height. Fits more rows on screen.
* Adds whitespace for better formatting and minimum column width.
  Helps prevent frequent resizing while scrolling.
2019-05-11 17:48:49 +02:00
TryTwo b557faa386 Debugger restore tabbed docking 2019-01-11 14:32:27 -07:00
TryTwo c18aa36eab Add nested docking to increase layout choices while debugging. 2018-11-27 11:14:46 -07:00
TryTwo 701b5c4b03 Fix Gecko codehandler lag. 2018-10-28 13:45:10 -07:00