summaryrefslogtreecommitdiff
path: root/Source/Core/DolphinQt/MenuBar.cpp
AgeCommit message (Collapse)Author
2024-10-19DolphinQt: JIT Widget Refreshmitaclaw
Fulfilling a certain six-year-old todo.
2024-10-18JitCache: Add WipeBlockProfilingData Functionmitaclaw
Accessible from DolphinQt and Android.
2024-10-04Partially revert "Revert "Audit uses of IsRunning and GetState""JosJuice
This reverts the revert commit bc67fc97c39628c76a4dbca411b0e8a9bfaf726a, except for the changes in BaseConfigLoader.cpp, which caused the bug that made us revert 72cf2bdb87f09deff22e1085de3290126aa4ad05. PR 12917 contains an improved change to BaseConfigLoader.cpp, which can be merged (or rejected) independently. A few changes have also been made based on review comments.
2024-08-13MenuBar: Update checkmarked Select State Slot when hotkey pressedDentomologist
Update the checkmarked slot in the Select State Slot menu when the Increase Selected State Slot or Decrease Selected State Slot hotkeys are pressed. The actual selected save slot was being changed correctly before this commit; this just fixes the menu checkmark.
2024-07-28i18n: Add comments and improve source stringsJosJuice
Most of these changes are to improve consistency in capitalization.
2024-07-14Merge pull request #12749 from LillyJadeKatrin/retroachievements-menubarOatmealDome
Show Achievements in Menu Bar always
2024-06-26Revert "Audit uses of IsRunning and GetState"JosJuice
This reverts commit 72cf2bdb87f09deff22e1085de3290126aa4ad05. SYSCONF settings are getting cleared when they shouldn't be. Let's revert the change until I get proper time to figure out why it's broken.
2024-06-21Audit uses of IsRunning and GetStateJosJuice
Some pieces of code are calling IsRunning because there's some particular action that only makes sense when emulation is running, for instance showing the state of the emulated CPU. IsRunning is appropriate to use for this. Then there are pieces of code that are calling IsRunning because there's some particular thing they must avoid doing e.g. when the CPU thread is running or IOS is running. IsRunning isn't quite appropriate for this. Such code should also be checking for the states Starting and Stopping. Keep in mind that: * When the state is Starting, the state can asynchronously change to Running at any time. * When we try to stop the core, the state gets set to Stopping before we take any action to actually stop things. This commit adds a new method Core::IsUninitialized, and changes all callers of IsRunning and GetState that look to me like they should be changed.
2024-06-06Use a stub AchivementManager when USE_RETRO_ACHIEVEMENTS isn't definedJosJuice
This lets us reduce the number of USE_RETRO_ACHIEVEMENTS ifdefs in the code base, reducing visual clutter. In particular, needing an ifdef for each call to IsHardcodeModeActive was annoying to me. This also reduces the risk that someone writes code that accidentally fails to compile with USE_RETRO_ACHIEVEMENTS disabled. We could cut down on ifdefs even further by making HardcodeWarningWidget always exist, but that would result in non-trivial code ending up in the binary even with USE_RETRO_ACHIEVEMENTS disabled, so I'm leaving it out of this PR. It's not a lot of code though, so I might end up revisiting it at some point.
2024-05-02Show Achievements in Menu Bar alwaysLillyJadeKatrin
Previously the Achievements option would only show up if achievements were already enabled, requiring users to manually create a config file in the file system; this now makes it visible no matter what.
2024-05-01Core::IsRunning: Avoid Global System Accessormitaclaw
2024-04-13Merge pull request #12691 from mitaclaw/jit-profiling-restorationAdmiral H. Curtiss
JitCache: Software Profiling Restoration
2024-04-10MenuBar: Optimize SearchInstructionmitaclaw
2024-04-09DolphinQt: Access Software JIT Profilingmitaclaw
2024-04-08Core::GetState: Avoid Global System Accessormitaclaw
2024-03-28DolphinQt: A Ubiquitous Signal For When Symbols Changemitaclaw
There were three distinct mechanisms for signaling symbol changes in DolphinQt: `Host::NotifyMapLoaded`, `MenuBar::NotifySymbolsUpdated`, and `CodeViewWidget::SymbolsChanged`. The behavior of these signals has been consolidated into the new `Host::PPCSymbolsUpdated` signal, which can be emitted from anywhere in DolphinQt to properly update symbols everywhere in DolphinQt.
2024-03-22Merge pull request #12620 from mitaclaw/jit-interface-cpu-thread-guardAdmiral H. Curtiss
JitInterface::ClearCache: Modernize With CPUThreadGuard
2024-03-13PPCSymbolDB: Move instance to PowerPCManagermitaclaw
2024-03-04JitInterface::ClearCache: Modernize With CPUThreadGuardmitaclaw
It is recommended to view this diff with whitespace changes hidden.
2024-01-31Core/ConfigManager: Remove dead bAutomaticStart flag.Admiral H. Curtiss
2024-01-23DolphinQt/MenuBar: Hide assembler option if debug UI is disabledLioncash
Fixes a little visual inconsistency in the UI, where the assembler would always be shown, but all other debug-related utilities would be hidden.
2024-01-15Core/Movie: Refactor to class, move to System.Admiral H. Curtiss
A bit of global state remains (the `header` in `BeginRecordingInput()`) due to unclear lifetime requirements.
2023-12-16Merge pull request #11497 from vyuuui/debugger_assembler_uiTilka
Built-in assembler for debugger interface
2023-12-15Disable importing/exporting Wii saves while emulation is runningNaim2000
2023-12-15Disable "Install WAD" while emulation is runningNaim2000
The "(Un)install to/from the NAND" options in the context menu for WAD files has always been disabled, don't know what happened to this one
2023-12-13Parser and Assembler implementationsvyuuui
2023-12-11AchievementManager: Make GetInstance() return a referenceLioncash
The internal static member will always have a valid lifetime. Makes this consistent with other instance based objects in our code.
2023-12-10Add "large entry points map" settingJosJuice
To aid in debugging, this makes it possible to disable the recently added 32/64 GiB region which hasn't had a proper name so far.
2023-12-02Disable TAS recording playback in hardcore modeLillyJadeKatrin
Play Input Recording would potentially unlock achievements without any player input and needs to be disabled. If a recording is already playing, hardcore mode cannot be enabled.
2023-12-02Disable frame advance in hardcore modeLillyJadeKatrin
Frame advancing is easily exploitable for slowing down a game and artificially improving reaction times and is not allowed in RetroAchievements hardcore mode.
2023-12-02Disable loading state in hardcore modeLillyJadeKatrin
While saving states is allowed (especially for the purpose of debugging), RetroAchievements does not allow loading saved states when hardcore mode is on.
2023-10-31Add fastmem arena settingJosJuice
Just for debugging.
2023-08-26DolphinQt: Allow toggling most JIT debug settings at any timeJosJuice
There's no reason not to allow this now that these settings are cleanly integrated into the new config system. (Actually, maybe we could even have done this before the previous commit...)
2023-08-26Jit: Automatically clear cache when JIT settings are updatedJosJuice
This fixes a problem where changing the JIT debug settings on Android while a game was running wouldn't cause the changed settings to apply to code blocks that already had been compiled.
2023-08-12DolphinQt: Set window decorations for all top-level QWidgets.Admiral H. Curtiss
2023-07-14Qt: Add file size stats to NAND Check.Admiral H. Curtiss
2023-06-01Added AchievementsWindow QDialogLillyJadeKatrin
AchievementsWindow is the dialog box that will eventually contain the settings and progress data for RetroAchievements on Dolphin. This adds the barebones dialog, and connects it to MainWindow's MenuBar.
2023-05-15IOS/ES: Split ESDevice into ESCore and ESDevice.Admiral H. Curtiss
ESCore implements the core functionality that can also be used outside of emulation. ESDevice implements the IOS device and is only available during emulation.
2023-04-28Feature: Emulate Disney Infinity BaseJoshua de Reeper
Create, Load and Clear Infinity figures on an emulated base in the UI
2023-04-25DolphinQt: use new style of addAction APIShawn Hoffman
2023-04-09PowerPC: Refactor to class, move to System.Admiral H. Curtiss
2023-04-05PowerPC/PPCTables: Pass instruction address to GetOpInfo().Admiral H. Curtiss
2023-03-28PowerPC/MMU: Refactor to class, move to System.Admiral H. Curtiss
2023-03-26JitInterface: Refactor to class, move to System.Admiral H. Curtiss
2023-03-08Core: Add System parameter to CPUThreadGuard.Admiral H. Curtiss
2023-02-12DolphinQt: Properly lock CPU before accessing emulated memoryJosJuice
This fixes a problem I was having where using frame advance with the debugger open would frequently cause panic alerts about invalid addresses due to the CPU thread changing MSR.DR while the host thread was trying to access memory. To aid in tracking down all the places where we weren't properly locking the CPU, I've created a new type (in Core.h) that you have to pass as a reference or pointer to functions that require running as the CPU thread.
2023-01-28Cleanup: Remove CDUtilsMayImilae
This is a cleaning followup for #11456.
2023-01-27HLE function hooking: Avoid ppcState global.Admiral H. Curtiss
2023-01-22Use Core timing instead of threadJoshua de Reeper
Skylander code tidy ups Convert c array to std::array and fix comments Formatting fixes/review changes Variable comment Migrate portal to System Impl and code tidy ups Use struct Restore review changes Minor fix to schedule transfer method Change descriptors to hex and fix comments
2023-01-22Emulate Skylanders within DolphinJoshua de Reeper
Ported the code from RPCS3, with improvements made to the handling of control messages and audio transfers, Co-Authored with @mandar1jn Missing new line chars Co-Authored-By: mandar1jn <49076509+mandar1jn@users.noreply.github.com>