Commit Graph

2607 Commits

Author SHA1 Message Date
Jules Blok 3b5625c76b VideoConfig: Ignore Borderless Fullscreen setting when the backend does not support exclusive fullscreen.
This was expected to be handled by VerifyValidity(), but that only verifies the validity of the INI files.
2014-07-30 12:15:58 +02:00
Jules Blok 5bbd34637b CFrame: Don't check the video config fullscreen setting.
Checking this flag could sometimes incorrectly have the UI assume fullscreen is already off when we're still exiting.
2014-07-30 12:15:32 +02:00
Jules Blok 4501aeefbe CFrame: Check borderless fullscreen setting before enabling exclusive fullscreen in the video config.
Fixes a bug where "Use Fullscreen" would initialize into exclusive fullscreen regardless of the borderless fullscreen setting.

Also relieves the need for the video renderer to check the borderless fullscreen setting each time.
2014-07-30 12:15:26 +02:00
Lioncash abc7845e0c Android: Remove an unused variable from MainAndroid.cpp 2014-07-29 21:05:57 -04:00
Oussama Danba 313a743cee Update framelimit tooltip text because the Audio option has been removed. 2014-07-28 19:08:43 +02:00
Tony Wasserka 9c7d4b6408 Merge pull request #667 from RachelBryk/remove-audio-limit
Remove audio frame limit.
2014-07-28 14:38:35 +02:00
Lioncash 4fa71dd59e Remove fakepoll.h.
It was only used for Windows XP and lower.

This also bumps the _WIN32_WINNT define in the stdafx precompiled headers to set the minimum version as Windows Vista.
2014-07-26 22:53:40 -04:00
Jules Blok 1f24122d35 Frame: Only prevent exclusive fullscreen switches when the emulator is paused.
This fixes the "Use Fullscreen" setting in which case the switch is done while the emulator is uninitialized.
2014-07-27 00:08:27 +02:00
Pierre Bourdon 8e865f3848 Merge pull request #506 from Armada651/d3dfullscreen
D3D: Add exclusive fullscreen support.
2014-07-26 13:22:11 +02:00
Jules Blok 6724ce6275 Cosmetic changes based on feedback on PR #506. 2014-07-26 13:04:39 +02:00
Jules Blok eea7086b23 CFrame: Prevent fullscreen switches if the renderer is halted. 2014-07-26 12:45:19 +02:00
Jules Blok bd9953d97e Remove the 3D Vision hack.
The hack was needed because the Nvidia 3D Vision heuristics are documented to only support surfaces that are the same size as the backbuffer. This would be the case if you enabled the hack and selected the "Auto (Window Size)" internal resolution.

However, on recent drivers the same effect is achieved by selecting the "Auto (Multiple)" internal resolution. Therefore the hack is no longer required.
2014-07-26 12:45:10 +02:00
Rachel Bryk acaac51077 Remove audio frame limit.
It serves no purpose and causes bugs and confusion for users.
2014-07-25 12:17:10 -04:00
Tony Wasserka 5c4e5e9f8a Merge pull request #660 from lioncash/warning
DolphinWX: Fix a double truncation warning in InputConfigDiagBitmaps
2014-07-25 18:11:40 +02:00
Moshe Kaplan cd8b65bd8a Prevent potential buffer overflow in sscanf 2014-07-23 10:03:49 -04:00
Matthew Parlane 008b907bf0 Merge pull request #655 from lioncash/crashes
Fix two possible crashes related to the debugger.
2014-07-23 21:24:03 +12:00
Lioncash 8a7640f8b4 DolphinWX: Fix a double truncation warning in InputConfigDiagBitmaps 2014-07-22 06:58:32 -04:00
Jules Blok 0c81494c89 Frame: Make the fullscreen transitions more reliable. 2014-07-21 20:50:49 +02:00
Jules Blok 009b4dd376 Exit exclusive fullscreen when the stop confirmation is shown.
Also have the renderer remember its own fullscreen state. This is done to prevent a case where we exit exclusive fullscreen through the configuration and a focus shift at the same time. In this case the renderer would fail to detect that the fullscreen state was changed.
2014-07-21 20:50:48 +02:00
Jules Blok 36ea1890c8 Let the Renderer decide when to exit fullscreen.
This ensures the transition from/to exclusive mode happens while the RenderFrame is fullscreen.

This prevents fullscreen loops and relieves us of having to restore the window size after we exit fullscreen.
2014-07-21 17:11:13 +02:00
booto 0d2bef2743 GCPadStatus: coalescing magic numbers into consts 2014-07-21 19:56:05 +08:00
Jules Blok cd94ff1966 VideoConfig: Add "Borderless Fullscreen" option.
This option will disable exclusive fullscreen for users who prefer the old behaviour.
2014-07-20 22:02:57 +02:00
Lioncash 298425920a DolphinWX: Fix a possible crash when setting debugger memory values. 2014-07-19 19:59:44 -04:00
Lioncash fa2944898f DolphinWX: Move some public variables to be private in CodeView
It's not used outside of the class, and it also shouldn't be modified
outside of it either (considering it holds all the blr instructions inserted by the user).
2014-07-19 17:23:43 -04:00
Jules Blok 77bc879384 D3D: Add exclusive fullscreen support. 2014-07-19 21:14:44 +02:00
Jules Blok 8d76dca30d Frame: Make RendererHasFocus() compatible with the new window structure. 2014-07-19 21:14:38 +02:00
Jules Blok 66fec6d0bd Remove CPanel.
Let the RenderFrame handle those messages.
2014-07-19 21:13:15 +02:00
Dolphin Bot 5df45dfbba Merge pull request #650 from lioncash/scrolling
DolphinWX: Implement scrolling in the memory views
2014-07-19 19:31:41 +02:00
Jules Blok 1b70bebb5a Don't create a Panel for a seperate render window.
Instead of setting RenderParent to null and raising complexity RenderFrame can be its own parent.
2014-07-19 15:56:49 +02:00
Lioncash a00c7bdb9e DolphinWX: Implement scrolling in the memory views 2014-07-18 22:42:03 -04:00
Lioncash bc172f4883 DolphinWX: Enable certain Code View context options only when the core is running.
Prior to this, attempting to execute these contextual menu options would
crash the application.
2014-07-17 04:50:53 -04:00
Pierre Bourdon 8cf21cdcdb Merge pull request #633 from magcius/wip/input-focus-fix
Fix input focus issues
2014-07-17 01:21:31 +02:00
Jasper St. Pierre 44307c9508 Host: Add a new "UIHasFocus" hook to determine if the UI has focus
We can't use RendererHasFocus for this purpose because of some issues
with exclusive fullscreen, and the new RendererHasFocus implementation
didn't work for non-Render to Main Window cases, since the renderer
window wasn't managed by wx.
2014-07-16 10:27:21 -04:00
Jasper St. Pierre ee087f5953 Revert "Frame: Fix RendererHasFocus"
This reverts commit ff918df889.

This changed it from "RendererHasFocus" to "UIHasFocus", which is
wrong. Specifically, it broke for non-Render to Main Window cases where
the renderer window isn't managed by wx. It also broke the pending
exclusive fullscreen support, which checks this function to determine if
the renderer is on top so it can full-screen it.

We'll add a new hook, "UIHasFocus", in the next commit.
2014-07-16 10:26:06 -04:00
Lioncash 48ca800b13 DolphinWX: Mild readability clean up of CodeView.
- Gets rid of the underscore in some function names
- Appends the 'm_' prefix to class member variables.

Now it isn't a pain to see what is being modified in terms of state. Especially in the OnPaint call.
2014-07-15 23:01:17 -04:00
Lioncash 9c1b427687 DolphinWX: Implement scrolling in the code view and DSP disassembly view. 2014-07-15 21:35:11 -04:00
Lioncash ebd029973a Merge pull request #604 from magcius/wip/emu-cleanup-2
Start cleaning up the input interface
2014-07-15 12:11:17 -04:00
Scott Mansell d4cfddcf8d Revert "DolphinWX: Use non-deprecated flags for the monospace debugger font" 2014-07-14 21:37:27 +12:00
shuffle2 3ac4e9f171 Merge pull request #608 from lioncash/compat
DolphinWX: Remove the use of some wx 1.0 compatibility function calls.
2014-07-14 01:56:09 -07:00
Lioncash d931637d63 DolphinWX: Remove two c_str calls in ISOProperties.cpp. 2014-07-13 23:43:41 -04:00
Lioncash 5c57a1ef4b DolphinWX: Remove the use of some wx 1.0 compatibility functions.
Uses the recommended replacements.
2014-07-13 23:42:37 -04:00
Pierre Bourdon 5c701f6e82 Merge pull request #610 from lioncash/delete
DolphinWX: Remove the need for an explicit new/delete in ISOProperties
2014-07-14 01:55:11 +02:00
Jules Blok aa2495205e Shutdown the Core before other components.
Other components depend on the EmuThread being stopped.
2014-07-13 23:47:59 +02:00
Lioncash 5b649902dc DolphinWX: Remove the need for an explicit new/delete in ISOProperties
Just use a normal constructor call and call Destroy to close the window.
2014-07-13 15:06:03 -04:00
Pierre Bourdon 0563960dbc Merge pull request #603 from lioncash/debugger-font
DolphinWX: Use non-deprecated flags for the monospace debugger font
2014-07-13 06:21:02 +02:00
Pierre Bourdon 12fa5ba8b4 Merge pull request #607 from Tilka/fix_warnings
Fix warnings unearthed by #579
2014-07-13 06:20:45 +02:00
Tillmann Karras 0ccee6c87b Fix warnings unearthed by #579 2014-07-13 02:16:51 +02:00
Jules Blok 64801008a0 NoGUI: Add missing call to Core::Shutdown().
Fixes a crash when exiting the application.
2014-07-13 01:05:09 +02:00
Jasper St. Pierre ff918df889 Frame: Fix RendererHasFocus
The logic of RendererHasFocus was extremely convoluted beforehand and
was too brittle and broke in certain circumstances, like when the
GCPad window was active. Simplify it and leave a comment explaining the
new logic. This fixes the GCPad window not working when Background Input
is unchecked.
2014-07-12 07:29:49 -04:00
Lioncash 26f3867e20 DolphinWX: Allow short-hand searching in the code window
Lessens the restrictions on the searching in the code view.
Now typing out the full 8 digit hex number isn't needed. For example, you don't need to type 000000FF to go to FF, you just literally type FF.

Also makes JumpToAddress a boolean function to remain consistent with the DSP code view.

This will also change the address search box to have a red background if
either an invalid hex number is given, or if it's longer than 8 characters
2014-07-11 18:32:32 -04:00
Jasper St. Pierre 0d49bf65a7 ControllerEmu: Virtualize settings
This will allow us to move Background Input to a global setting rather
than a local setting.
2014-07-11 13:32:58 -04:00
Jasper St. Pierre a6dc3c47a9 ControllerEmu: Change the GetState interface to remove range/base
Do the scaling in the code that interprets the results.

This also removes the templatization of things and changes the interface
to always take a double.

This does add a bit more code to the users of GetState, especially when
having to deal with focus management, but this will be cleaned up very
soon, as focus and focus-related options will be centralized inside the
input platforms themselves, rather than spread out across all the input
plugins.
2014-07-11 13:32:57 -04:00
Jasper St. Pierre 07c4925059 InputConfigDiagBitmaps: Clean up the FORCE drawing code as well 2014-07-11 13:32:57 -04:00
Jasper St. Pierre 4d2a39090b InputConfigDiagBitmaps: Rewrite the stick visualization code
Change our DrawCoordinate helper method to take raw coordinate
positions, and draw the rectangle using that. This is a lot better
and more friendly than applying various crazy constants in the GetState
for the base/range.
2014-07-11 13:32:57 -04:00
Jasper St. Pierre 8abff435e6 InputConfigDiagBitmaps: Clean up code a bit more
Split out some math into a utility.
2014-07-11 13:32:57 -04:00
Jasper St. Pierre 3c411c33e8 InputConfigDiagBitmaps: Start a cleanup by splitting code out
This doesn't have any functional changes, it just removes part of the
mess by killing indentation.
2014-07-11 13:32:57 -04:00
Jasper St. Pierre e20a0265de Remove UDPWiimote feature
It substantially complicates the code and doesn't really provide any
functionality. According to the forums, the Android app is out of date
and has been broken for quite a while.

If we want to add this back, I'd write an app that speaks a more native
Wiimote protocol, and we can hook that up to the backend quite easily.
It could even be over our NetPlay protocol!
2014-07-11 13:32:56 -04:00
Lioncash 6885bac05f DolphinWX: Use non-deprecated flags for the monospace debugger font 2014-07-11 13:11:11 -04:00
degasus 7e79806efc remove unused globals
Also change globals into statics which are only used in one file
2014-07-11 16:10:20 +02:00
degasus 81ed17be53 avoid the extern keyword in .cpp files 2014-07-11 16:10:20 +02:00
degasus 6d3f249dcc mark all local variables as static 2014-07-11 16:10:20 +02:00
degasus 22e1aa5bb4 mark all local functions as static 2014-07-11 16:07:23 +02:00
Tony Wasserka 326af097d9 Merge pull request #593 from neobrain/master
Use uniform capitalization in VideoConfigDiag
2014-07-11 13:26:23 +02:00
Dolphin Bot 75c6575f37 Merge pull request #601 from lioncash/pad-struct
Change SPADStatus struct name to GCPadStatus
2014-07-11 06:20:33 +02:00
Lioncash 896d7e5685 Change SPADStatus struct name to GCPadStatus
Also get rid of the typedef, since this is unnecessary in C++
2014-07-10 22:02:38 -04:00
Pierre Bourdon ef510a4f73 Merge pull request #594 from lioncash/another-clamp-removal
DolphinWX: Remove yet another clamp method
2014-07-11 02:48:27 +02:00
Lioncash 6f9483d161 DolphinWX: Remove unnecessary true within event Skip calls 2014-07-10 20:39:26 -04:00
Lioncash 32d53c7d1d DolphinWX: Get rid of an unneccessary cast in CodeWindow
CFrame inherits from CRenderFrame which inherits from wxFrame which
eventually inherits from wxWindow, so this cast is not required.
2014-07-10 20:29:55 -04:00
Dolphin Bot bc655d1a82 Merge pull request #515 from Armada651/threading
Make the emulation stop asynchronous to prevent deadlocks.
2014-07-10 21:02:47 +02:00
Lioncash dbdefd074b DolphinWX: Remove yet another clamp method 2014-07-09 16:17:13 -04:00
Tony Wasserka ff0f90efa1 VideoConfigDiag: Use uniform capitalization.
Nouns should be written capitalized for consistency.
2014-07-09 21:52:04 +02:00
Jules Blok 95b579746f Replace "Log FPS to file" by the "Log render time to file" feature. 2014-07-09 17:56:11 +02:00
Jules Blok efeadb7fe9 FPSCounter: Add "Log render time to file" feature.
Allows for a more accurate performance measurement.
2014-07-09 17:53:31 +02:00
Pierre Bourdon 29873a7c55 Merge pull request #585 from lioncash/sprintfs
DolphinWX: Kill off sprintf calls in CheatsWindow.cpp
2014-07-09 02:36:22 +02:00
Pierre Bourdon beeed520a5 Merge pull request #582 from lioncash/casts
DolphinWX: Remove redundant casts in ISOProperties
2014-07-09 02:35:05 +02:00
Jules Blok db7e746cb4 Check whether the core is running instead of checking if it is unitialized.
This properly handles the stopping state and more accurately represents the intended check.
2014-07-08 22:30:44 +02:00
Lioncash 54105a8bba DolphinWX: Kill off sprintf calls in CheatsWindow.cpp 2014-07-08 16:19:34 -04:00
Lioncash 1f25f3c1c9 Merge pull request #584 from lioncash/bind
DolphinWX: Bind the drop handling function to the frame with Bind, not Connect
2014-07-08 16:11:08 -04:00
Lioncash d2ddf40ccb DolphinWX: Bind the drop handling function to the frame with Bind, not Connect. 2014-07-08 15:41:21 -04:00
Jules Blok ad1b61af2e FrameTools: Update GUI and disable Play button when in stopping state. 2014-07-08 21:21:25 +02:00
Jules Blok b30d5dccbe Frame: OnClose now handles asynchronous behaviour of DoStop(). 2014-07-08 21:21:24 +02:00
Jules Blok 3266394dfb Make the emulation stop asynchronous to prevent deadlocks.
This may expose bugs which relied on the Main Thread to be suspended in the stopping state.
2014-07-08 21:21:23 +02:00
Lioncash 2eb12dee55 DolphinWX: Remove a wx 2.9.0 and 2.8.0 version check in GameListCtrl 2014-07-08 14:42:10 -04:00
Lioncash 5fe293af9d DolphinWX: Remove redundant casts in ISOProperties
These are both int, so the cast isn't necessary
2014-07-08 14:31:12 -04:00
Pierre Bourdon b0b70381f7 Revert "Don't add segfault handler in interpreter mode" 2014-07-07 05:30:06 +02:00
Dolphin Bot 4ec8c3714d Merge pull request #328 from Tilka/enum_cpubackend
Don't add segfault handler in interpreter mode
2014-07-06 19:28:10 +02:00
Rachel Bryk 5558aa08c2 Fix hiding size column in game list. 2014-07-06 01:59:38 -04:00
Tillmann Karras 311e9e655a CoreParameter: add enum CPUBackend 2014-07-05 11:02:41 +02:00
Tillmann Karras 20a16beabd enum CPUState: rename CPU_* to STATE_* 2014-07-05 11:01:49 +02:00
Zhuowei Zhang 25bd5e237b Add Change Disc option to the right-click menu in the game list. For issue 7411. 2014-06-30 12:06:45 -07:00
Lioncash ada3e97715 Merge pull request #538 from lioncash/savestate-dragdrop
Fix dragging and dropping savestates in the render window
2014-06-29 21:47:51 -04:00
Jordan Woyak 3805c4967f Fix ISO Directory extraction. 2014-06-29 14:22:06 -05:00
Lioncash 3df00cd3f5 Fix dragging and dropping savestates in the render window 2014-06-28 16:55:15 -04:00
Lioncash 91da031220 Merge pull request #522 from lioncash/fix-dragdrop-crash
Fix crashes when dragging and dropping files outside of the gamelist
2014-06-28 16:53:10 -04:00
Ryan Houdek aae1630949 Merge pull request #533 from Anti-Ultimate/master
Fix OpenGL VSync
2014-06-28 11:06:57 -05:00
Jules Blok 8571d7aceb RenderFrame: Set the background to black. 2014-06-28 16:02:51 +02:00
Anti-Ultimate aacf885b48 Fix OpenGL VSync 2014-06-28 00:10:34 +02:00
Lioncash ca5340ebde Centralize the logging code into its own folder in Common. 2014-06-25 22:11:42 -04:00
Lioncash 8b13afbb8e Remove the 32-bit config platform from the VS solution and projects 2014-06-24 22:07:26 -04:00
Lioncash 10dc1ef135 Fix crashes when dragging and dropping files outside of the gamelist 2014-06-24 16:43:02 -04:00