dolphin/Source/Core/DolphinWX
EmptyChaos c1922783f8 Core: Threadsafety Synchronization Fixes (Frame Advance / FifoPlayer)
Fix Frame Advance and FifoPlayer pause/unpause/stop.

CPU::EnableStepping is not atomic but is called from multiple threads
which races and leaves the system in a random state; also instruction
stepping was unstable, m_StepEvent had an almost random value because
of the dual purpose it served which could cause races where CPU::Run
would SingleStep when it was supposed to be sleeping.

FifoPlayer never FinishStateMove()d which was causing it to deadlock.
Rather than partially reimplementing CPU::Run, just use CPUCoreBase
and then call CPU::Run(). More DRY and less likely to have weird bugs
specific to the player (i.e the previous freezing on pause/stop).

Refactor PowerPC::state into CPU since it manages the state of the
CPU Thread which is controlled by CPU, not PowerPC. This simplifies
the architecture somewhat and eliminates races that can be caused by
calling PowerPC state functions directly instead of using CPU's
(because they bypassed the EnableStepping lock).
2016-05-13 09:23:44 +10:00
..
Cheats Added the ability to search on previous value in the Cheat Search. 2015-12-30 11:51:36 +11:00
Config [Config UI] add "normal speed" to speed limit 100% 2016-03-02 19:51:05 -06:00
Debugger Core: Threadsafety Synchronization Fixes (Frame Advance / FifoPlayer) 2016-05-13 09:23:44 +10:00
NetPlay Fix regression for .elf files in Netplay Game Selector 2016-05-06 19:41:40 -07:00
resources DolphinWX: Stop using XPM images 2016-01-05 19:11:58 +01:00
AboutDolphin.cpp SCM: Use std::string. 2016-05-05 00:22:49 +02:00
AboutDolphin.h Set copyright year to when a file was created 2015-05-25 13:22:31 +02:00
ARCodeAddEdit.cpp Common: Remove other Common prefixed headers from Common.h 2015-09-26 18:51:58 -04:00
ARCodeAddEdit.h Set copyright year to when a file was created 2015-05-25 13:22:31 +02:00
CMakeLists.txt Support a headless EGL option. 2016-01-27 15:04:14 -06:00
ControllerConfigDiag.cpp Use the English name for DK Bongos in the English version of Dolphin 2016-01-07 00:12:25 +01:00
ControllerConfigDiag.h Make the Wii U Gamecube adapter work with less magic. 2016-01-05 13:44:37 -06:00
DolphinWX.rc Define the icon for "dolphin". The IDI_ICON1 seems to be preempted by the wx resource. This one does not. 2012-12-17 08:33:42 -06:00
DolphinWX.vcxproj Fix Windows build not copying certain files 2016-04-12 19:05:17 -04:00
DolphinWX.vcxproj.filters Make the Wii U Gamecube adapter work with less magic. 2016-01-05 13:44:37 -06:00
DolphinWX.vcxproj.user Rename menu items, stop using PanicAlertT, remove -d when running from visual studio. 2014-12-17 01:12:33 +10:30
FifoPlayerDlg.cpp DolphinWX: Remove FifoPlayerDlg::CreateIntegerLabel 2015-11-05 11:35:13 +01:00
FifoPlayerDlg.h DolphinWX: Remove FifoPlayerDlg::CreateIntegerLabel 2015-11-05 11:35:13 +01:00
Frame.cpp Merge pull request #3801 from Helios747/the_30_minute_blocker_fix 2016-05-08 17:24:40 -04:00
Frame.h [UI] Remove browse toolbar button and tweak empty gamelist message 2016-04-30 10:25:46 -05:00
FrameAui.cpp Fix warnings 2016-01-28 23:54:11 +00:00
FrameTools.cpp [UI] Remove browse toolbar button and tweak empty gamelist message 2016-04-30 10:25:46 -05:00
GameListCtrl.cpp Merge pull request #3801 from Helios747/the_30_minute_blocker_fix 2016-05-08 17:24:40 -04:00
GameListCtrl.h DolphinWX: Disable 'maker' column hiding 2016-04-17 10:19:25 +10:00
Globals.h [UI] Remove browse toolbar button and tweak empty gamelist message 2016-04-30 10:25:46 -05:00
Info.plist.in Pull in translations from Transifex. 2013-09-21 11:24:33 -05:00
InputConfigDiag.cpp InputConfig: Clean up controller management 2015-11-19 02:41:33 -05:00
InputConfigDiag.h InputConfig: Clean up controller management 2015-11-19 02:41:33 -05:00
InputConfigDiagBitmaps.cpp Set copyright year to when a file was created 2015-05-25 13:22:31 +02:00
ISOFile.cpp DolphinWX: Stop using XPM images 2016-01-05 19:11:58 +01:00
ISOFile.h Don't read from volume when reloading Wii banners 2015-12-03 17:29:59 +01:00
ISOProperties.cpp DriveReader: Fix View > Show Drives 2016-04-26 21:24:08 +10:00
ISOProperties.h ISOProperties: Replace the ConvergenceMinimum option by the Convergence option. 2015-12-22 23:16:27 +01:00
LogConfigWindow.cpp Fix warnings 2016-01-28 23:54:11 +00:00
LogConfigWindow.h Fix warnings 2016-01-28 23:54:11 +00:00
LogWindow.cpp Merge pull request #3126 from phire/remove-logging-lock 2015-12-03 13:32:07 +13:00
LogWindow.h Set copyright year to when a file was created 2015-05-25 13:22:31 +02:00
Main.cpp Rename Direct3D to Direct3D 11 2016-02-16 22:43:21 -05:00
Main.h DolphinWX: Remove the dolphin-emulator.com check. 2015-10-30 22:14:19 +01:00
MainNoGUI.cpp Core: Threadsafety Synchronization Fixes (Frame Advance / FifoPlayer) 2016-05-13 09:23:44 +10:00
MemcardManager.cpp Common: Remove other Common prefixed headers from Common.h 2015-09-26 18:51:58 -04:00
MemcardManager.h MemcardManager: Minor cleanup of header code 2015-08-29 05:19:51 -04:00
PatchAddEdit.cpp Set copyright year to when a file was created 2015-05-25 13:22:31 +02:00
PatchAddEdit.h Set copyright year to when a file was created 2015-05-25 13:22:31 +02:00
PostProcessingConfigDiag.cpp PostProcessingConfigDialog: Remove an unnecessary format call 2015-07-23 14:39:05 -04:00
PostProcessingConfigDiag.h Set copyright year to when a file was created 2015-05-25 13:22:31 +02:00
resource.h Add missing license headers 2015-05-25 13:11:47 +02:00
SoftwareVideoConfigDialog.cpp VideoBackendBase: Store video backends as unique_ptr 2016-02-20 19:07:40 -05:00
SoftwareVideoConfigDialog.h VideoBackendBase: Store video backends as unique_ptr 2016-02-20 19:07:40 -05:00
TASInputDlg.cpp HW: Remove unnecessary header inclusions 2016-01-13 02:47:32 -05:00
TASInputDlg.h DolphinWX: TAS fixes, take three 2015-09-11 19:51:31 -07:00
VideoConfigDiag.cpp VideoBackends: Do not use Anisotropy on Point filtered textures. 2016-03-24 13:43:29 +11:00
VideoConfigDiag.h VideoBackendBase: Store video backends as unique_ptr 2016-02-20 19:07:40 -05:00
WXInputBase.cpp Set copyright year to when a file was created 2015-05-25 13:22:31 +02:00
WXInputBase.h Set copyright year to when a file was created 2015-05-25 13:22:31 +02:00
WxUtils.cpp DolphinWX: Support 2x images for all resources 2016-01-20 00:46:10 +01:00
WxUtils.h DolphinWX: Support 2x images for all resources 2016-01-20 00:46:10 +01:00
X11Utils.cpp Options: merge SCoreStartupParameter into SConfig 2015-06-12 19:07:45 +02:00
X11Utils.h Set copyright year to when a file was created 2015-05-25 13:22:31 +02:00