Commit Graph

4517 Commits

Author SHA1 Message Date
Matthew Parlane 3eff869937 Merge pull request #5156 from sepalani/gen-sym
Generate Symbols From menu added
2017-03-28 15:36:33 +13:00
Sepalani 5b88782e30 Generate Symbols From menu added 2017-03-28 02:05:27 +01:00
Matthew Parlane 28916997a5 Merge pull request #5130 from ligfx/inputconfigdiagbitmapsswitchdefault
InputConfigDiagBitmaps: add switch empty cases (fixes warning)
2017-03-26 14:54:50 +13:00
Léo Lam c1cd7d9c0e WX: Redirect stdout to console output
Thank Windows for its default console handling.

This fixes std::cout not working on Windows.
2017-03-25 23:28:45 +01:00
Léo Lam 77b389bf99 WX: Move init mutex lock to after command line
Calling std::exit while having a mutex locked leads to an assertion.

Moving the lock is fine, since all it protects against is really just
UICommon.
2017-03-25 23:24:02 +01:00
Michael Maltese c4bb452f2b InputConfigDiagBitmaps: add switch empty cases (fixes warning)
Fixes warning:

```
dolphin/Source/Core/DolphinWX/Input/InputConfigDiagBitmaps.cpp:170:13: warning: 7 enumeration values not handled in switch: 'Other', 'MixedTriggers', 'Buttons'... [-Wswitch]
    switch (g->control_group->type)
            ^
```
2017-03-22 13:00:54 -07:00
Lioncash f91292eff2 GeckoCodeConfig: Return vector by value for LoadCodes()
Using an out-param is a leftover from C++03. Action Replay codes already
return the vector of codes by value as well.
2017-03-21 16:58:13 -04:00
Anthony 50faffc9c2 Merge pull request #5009 from aldelaro5/memcheck-fix
Fix memory breakpoint when checking the middle of the data
2017-03-20 12:41:02 -07:00
Anthony b35bbdfb58 Merge pull request #4856 from ligfx/backgroundinput
Move "Background Input" out of individual controller configurations
2017-03-19 22:31:30 -07:00
Matthew Parlane 8eb26d298e Merge pull request #5099 from JosJuice/wii-menu-strings
Display nicer version strings for the Wii Menu
2017-03-20 14:03:04 +13:00
Anthony 9604a06921 Merge pull request #5102 from leoetlino/channel-title-type
Check whether WAD is a channel before reading names
2017-03-18 23:30:27 -07:00
aldelaro5 8bf27cf42f Fix memory breakpoint when checking the middle of the data
If the delimiters of a memory aren't exactly the same as an address, but their size includes the memory breakpoint delimiter, the break will not go through.  This makes it so that you can specify a search for a memory breakpoint with a data size and will check if the data fits with that size on all memory breakpoints so the breaks go through.
2017-03-18 22:48:57 -04:00
Lioncash 44fb429e7e EXI: Namespace device classes 2017-03-18 21:13:12 -04:00
Léo Lam c987f58319 Check whether WAD is a channel before reading names
Dolphin assumes that content 0 is opening.bnr, without checking
whether content 0 exists or if it is even supposed to be there (it's
only there for channels). This results in sometimes reading garbage.

This adds a check to only try to read names from content 0's header
if the title is a channel (channel, system channel or game channel).
2017-03-18 19:07:11 +01:00
JosJuice 19d6092847 Display nicer version strings for the Wii Menu
The Tools > Load System Menu option displays the version of the
installed Wii Menu. This commit changes the way we display that
version, like so: "Load System Menu 514P" -> "Load System Menu 4.3E"

The numbers are from http://wiibrew.org/wiki/System_Menu
2017-03-18 10:08:13 +01:00
Markus Wick 08351aa334 Merge pull request #5005 from aldelaro5/remove-save-load-debug
Don't save watches and breakpoints on stop and load on boot
2017-03-18 08:45:01 +01:00
Lioncash f0eeb3c63a SI: Namespace device classes
Places all of the SI code under the SerialInterface namespace instead of
only the main source file. This keeps all SI code under a common name,
as well as out of the global namespace
2017-03-16 04:41:39 -04:00
Lioncash 09d4871067 GCMemcard: Move memcard source files to their own directory
GCMemcard.h has quite a bit of different classes implemented within it
that could likely be split up into other files to make it a little
easier to read. However, they should be moved into their own folder
first so that they don't clutter up the base HW directory.
2017-03-14 21:55:25 -04:00
Anthony a3557ed199 Merge pull request #4964 from DisorderIy/arcode-removal-fix
Fix remove and add buttons not disabling after removing Action Replay code
2017-03-14 11:21:39 -07:00
Markus Wick c30db8eddc Merge pull request #4932 from PEmu1/toggle-fullscreen
Change "Fullscreen" Menu Option to "Toggle Fullscreen"
2017-03-14 10:30:34 +01:00
Michael Maltese 24a5411af5 Move 'Background Input' to controller config dialog 2017-03-13 13:43:20 -07:00
Michael Maltese 8adad0729e Implement hotkey options group in HotkeyInputConfigDiag 2017-03-13 13:39:52 -07:00
Michael Maltese a6bc56b626 InputConfigDiag: make m_iterate protected, not private 2017-03-13 13:22:09 -07:00
Michael Maltese a1978c28f9 HotkeyInputConfigDiag: set DeviceRelatedSizer to wxEXPAND
Somehow it acts as though it has wxEXPAND, but that stops working if the
code is edited (as in the next commit).
2017-03-13 13:22:09 -07:00
Markus Wick ae0f9c200d Merge pull request #5038 from vladfi1/separate-nogui
Separate nogui
2017-03-10 10:50:08 +01:00
JosJuice ced1614cac Unify the way of setting game ID, title ID, revision
The existing code from ConfigManager, ES and MIOS is merged
into a new set of functions called SetRunningGameMetadata.
2017-03-09 15:34:14 +01:00
Anthony 883bec873f Merge pull request #4939 from sjnewbury/gamelist-text
Always use visible text in GameList
2017-03-08 22:38:23 +00:00
JosJuice a1f874a66b ConfigManager: Remove m_strName
m_strName has limited usefulness, because GetInternalName()
can be inaccurate or even completely wrong. It was almost
completely unused anyway.
2017-03-08 21:01:57 +01:00
Steven Newbury 28f4793785 Always use visible text in GameList
Depending upon the desktop colour scheme, the light/dark
GameList backgrounds can cause the always white text
to become unreadble.

Use the common luminance approximation algorithm to
determine whether black text should be used instead.
2017-03-08 18:03:51 +00:00
Vlad Firoiu bc9db6de56 Moved NoGUI out of DolphinWx. 2017-03-08 01:24:18 -08:00
Vlad Firoiu 6a89cf0201 Moved X11Utils into UICommon. 2017-03-08 01:24:10 -08:00
Markus Wick 7cc5604a2c Merge pull request #5033 from vladfi1/nogui-user
Parse user directory on nogui CLI.
2017-03-08 10:04:12 +01:00
Lioncash 26f7f55a66 GeneralConfigPane: Fix analytics sizer's right side being misaligned by 5 units 2017-03-06 22:19:54 -05:00
Vlad Firoiu ac3586f46c Parse user directory on nogui CLI. 2017-03-06 12:24:38 -08:00
Mat M 7fa14169e9 Merge pull request #5007 from lioncash/swap
Common: Move byte swapping utilities into their own header
2017-03-05 09:45:29 -05:00
Markus Wick 3c511f2a94 Merge pull request #5003 from lioncash/memory
UICommon: Make GetNewDisassembler() return a unique_ptr
2017-03-04 12:14:35 +01:00
Lioncash 552c0d8404 Common: Move byte swapping utilities into their own header
This moves all the byte swapping utilities into a header named Swap.h.

A dedicated header is much more preferable here due to the size of the
code itself. In general usage throughout the codebase, CommonFuncs.h was
generally only included for these functions anyway. These being in their
own header avoids dumping the lesser used utilities into scope. As well
as providing a localized area for more utilities related to byte
swapping in the future (should they be needed). This also makes it nicer
to identify which files depend on the byte swapping utilities in
particular.

Since this is a completely new header, moving the code uncovered a few
indirect includes, as well as making some other inclusions unnecessary.
2017-03-03 17:18:18 -05:00
aldelaro5 654f582446 Don't save watches and breakpoints on stop and load on boot
Not only this is pretty pointless because there is a load and save button on the appropriate panels, but for the breakpoints one, it caused an error while mapping the memory since adding memory breakpoint requires to update the DBAT and this is done too early (right after boot).  This also only worked if you had the right panel on making it even more useless because it would fail to laod if you didn't have the right panel on.  It's better to just let the user click load and save.
2017-03-03 05:18:33 -05:00
Lioncash 13757b7d35 UICommon: Make GetNewDisassembler() return a unique_ptr
Much better than just returning raw memory.
2017-03-02 21:26:17 -05:00
Matthew Parlane 51e932b4ec Merge pull request #4975 from ligfx/controlsetting
InputCommon: move Setting classes out of ControlGroup
2017-03-03 15:17:25 +13:00
Michael Maltese 1539ff6691 InputCommon: move Setting classes out of ControlGroup 2017-03-02 18:08:37 -08:00
Lioncash c6200a5b07 JitInterface: Convert includes into forward declarations where applicable 2017-03-02 13:20:29 -05:00
Markus Wick 7982ba120f Merge pull request #4995 from lioncash/normalize
CMakeLists: Normalize whitespace
2017-03-02 11:51:06 +01:00
Lioncash ee61bd6f2e CMakeLists: Normalize whitespace
Normalizes tabs to spaces to follow our codebase's indentation style.
2017-03-01 14:53:23 -05:00
Lioncash d104e5e916 ExpressionParser: Convert parse state enum into an enum class 2017-02-28 05:07:21 -05:00
Anthony 63c5230d9b Merge pull request #4959 from lioncash/ini
IniFile: Handle s64/u64 values
2017-02-27 10:02:53 -08:00
Anthony 0cac00a39c Merge pull request #4977 from ligfx/fixwxmainmenubar
DolphinWX: don't refresh MainMenuBar on construction
2017-02-27 09:42:01 -08:00
Matthew Parlane 48aeb5bf4b Merge pull request #4896 from leoetlino/esformats
Use ESFormats for tickets, TMDs and views
2017-02-27 16:15:05 +13:00
Michael Maltese 720f0ab93f DolphinWX: don't refresh MainMenuBar on construction
On startup, wxWidgets pops up an assertion error:

> ./src/osx/menu_osx.cpp(648): assert ""IsAttached()"" failed in
> Refresh(): can't refresh unatteched menubar
2017-02-26 17:50:36 -08:00
Michael Maltese a3e3986906 DolphinWX: provide empty OnCmdLineParsed
Starting in #4916, upon startup wxWidgets pops up an assertion error:

> ./src/common/cmdline.cpp(527): assert ""Assert failure"" failed in
> FindOptionByAnyName(): Unknown option verbose

Fix this by overriding wxApp::OnCmdLineParsed to disable the default
handling (since we also disable the default options in
DolphinApp::OnInitCmdLine).
2017-02-26 17:38:18 -08:00
Anthony 832e0501db Merge pull request #4960 from lioncash/type
ControlGroup: Convert group type enum into an enum class
2017-02-26 15:56:34 -08:00
Anthony 06428c3f14 Merge pull request #4916 from leoetlino/cpp-optparse
Use cpp-optparse for command line parsing
2017-02-26 15:51:35 -08:00
Léo Lam c1a139e8ac Use ESFormats for TMDs
We already have a TMDReader, so let's actually use it.

And move ESFormats to IOS::ES, since it's definitely part of IOS.
This adds a DiscIO dependency on Core which will be fixed in a
follow-up PR.
2017-02-26 19:46:29 +01:00
Léo Lam bf1f70db0a Move the ticket code to ESFormats
This moves some parsing code for tickets and ticket views to ESFormats
instead of duplicating it over DiscIO and Core.
2017-02-26 19:46:28 +01:00
Adam Diffin 54f931e651 Fixed the remove and add buttons not disabling after removing a code. 2017-02-25 22:59:24 +00:00
Lioncash 26f17a1723 ControlGroup: Convert group type enum into an enum class
Gets some constants out of the ControllerEmu namespace, and modifies
ControlGroup so that it uses the enum type itself to represent the
underlying type, rather than a u32 value.
2017-02-25 01:15:04 -05:00
Lioncash beec40f178 IniFile: Handle s64/u64 values 2017-02-25 00:03:20 -05:00
Léo Lam 6702e547cb Fix the build on Linux when not using WX from Externals
No idea why we were including a Windows specific header *without* a
ifdef.
2017-02-24 18:48:26 +01:00
Anthony 27a5e33b92 Merge pull request #4877 from ligfx/forward_declare_xlib
Remove include X11/Xlib.h from X11Utils.h
2017-02-23 13:17:37 -08:00
Anthony ecb7d01347 Merge pull request #4889 from ligfx/netwindow
NetWindow: explicitly tell wxWidgets to clean up Windows macros
2017-02-23 13:16:59 -08:00
Anthony e9850382e3 Merge pull request #4930 from JosJuice/sideways-wiimote-name
Change INI keys containing "Wii Remote" back to "Wiimote"
2017-02-23 13:13:43 -08:00
Anthony f7a09c41a1 Merge pull request #4941 from JosJuice/no-compressed-color
DolphinWX: Don't use a special color for compressed games
2017-02-23 07:17:48 -08:00
Lioncash 70d336d2a9 DolphinWX: Eliminate direct usage of the JIT global
Instead, the JitInterface namespace functions should be used instead. This
gets rid of all usages of the JIT global from the wxWidgets UI code.

The null check isn't needed as the JIT core would already need to be
initialized in order to be within a paused state. The null check is just a
remnant from 2011 that existed before the check for a paused state was
added.
2017-02-21 16:15:47 -05:00
JosJuice a7e11db4bf DolphinWX: Remove usage of IsCompressed() in compression code
What we actually care about is whether it's a GCZ file,
not whether it's compressed. (This commit doesn't change
the behavior, since the beginning of CompressSelection
discards items that aren't BlobType::GCZ or BlobType::PLAIN.)
2017-02-20 16:08:07 +01:00
JosJuice b1589a6337 DolphinWX: Don't use a special color for compressed games
- There's no clear definition of what it means for a GC/Wii game
  to be compressed. GC games in GCZ are obviously compressed,
  but what about formats like WBFS and CISO that just discard data?
- Hardcoded colors might have bad contrast with the used theme.
- It feels Windows XP to me.
2017-02-20 16:02:30 +01:00
PEmu1 8fde22bcc8 Change "Fullscreen" Menu Option to "Toggle Fullscreen" 2017-02-18 16:37:49 -08:00
JosJuice f5c82adc59 Change INI keys containing "Wii Remote" back to "Wiimote"
4bd5674 changed "Wiimote" to "Wii Remote" in the GUI
(intentionally) but also did the same change for two INI
keys (seemingly unintentional, breaks backwards compatibility,
and is inconsistent with the INI's filename). This commit
reverts the INI keys but not the GUI strings.

This commit uses the same approach as cbd539e used for GameCube
sticks (but I made sure to avoid the bug that 56531a0 fixed).
2017-02-18 12:59:36 +01:00
Chris Burgener 8bfe2671b2 Remove IsReadOnly check when stop recording 2017-02-17 23:23:42 -05:00
Ryan Houdek c2d5fe3ec9 Move DolphinWX over to command command line parsing. 2017-02-16 17:24:59 +01:00
Ryan Houdek 36a9479c17 Change NoGUI over to using common command line parsing 2017-02-16 17:24:58 +01:00
Ryan Houdek f61363a791 Add command line parsing to UICommon. 2017-02-16 17:24:58 +01:00
Ryan Houdek 77c7fa836f Add the cpp-optparse project to Externals.
From https://github.com/weisslj/cpp-argparse
2017-02-16 14:09:13 +01:00
Phil Christensen 34b0b1b9d6 wxWidgets expects non-const
revert my previous change to these files and instead create a named temporary.
2017-02-15 21:20:29 -08:00
Phil Christensen 2ed61b0ee1 C++ conformance fixes (MSVC /permissive-)
We (the Microsoft C++ team) use the dolphin project as part of our "Real world code" tests.
I noticed a few issues in windows specific code when building dolphin with the MSVC compiler
in its conformance mode (/permissive-).  For more information on /permissive- see our blog
https://blogs.msdn.microsoft.com/vcblog/2016/11/16/permissive-switch/.

These changes are to address 3 different types of issues:

1) Use of qualified names in member declarations

    struct A {
        void A::f() { } // error C4596: illegal qualified name in member declaration
                        // remove redundant 'A::' to fix
    };

2) Binding a non-const reference to a temporary

    struct S{};
  
    // If arg is in 'in' parameter, then it should be made const.
    void func(S& arg){}
  
    int main() {
      //error C2664: 'void func(S &)': cannot convert argument 1 from 'S' to 'S &'
      //note: A non-const reference may only be bound to an lvalue
      func( S() );
   
      //Work around this by creating a local, and using it to call the function
      S s;
      func( s );
    }

3) Add missing #include <intrin.h>

Because of the workaround you are using in the code you will need to include
this.  This is because of changes in the libraries and not /permissive-
2017-02-15 20:37:04 -08:00
Michael Maltese 88f7056a41 Remove include Xlib.h from X11Utils.h 2017-02-15 16:49:21 -08:00
Anthony f966354044 Merge pull request #4898 from RisingFog/stop_recording_dtm
Add Stop Play/Recording Input Menu
2017-02-13 14:10:23 -08:00
Mat M f68955502a Merge pull request #4905 from JosJuice/rename-copy-wii-save
Rename "Copy Wii Save" to "Load Wii Save"
2017-02-13 09:55:54 -05:00
JosJuice fc798ca410 Rename "Copy Wii Save" to "Load Wii Save"
That netplay uses a separate NAND isn't obvious,
so what "copy" means might not be clear.
2017-02-12 18:40:54 +01:00
Mat M da5683cf27 Merge pull request #4880 from ligfx/windowsmanifest
Use .manifest file for apps on Windows
2017-02-12 08:44:38 -05:00
Chris Burgener 28c9f2a44d Add Stop Play/Recording Input Menu 2017-02-11 19:59:19 -05:00
Michael Maltese 2b65e41d97 NetWindow: explicitly tell wxWidgets to clean up Windows macros
wxWidgets headers don't play well with some of the macros defined in
Windows headers and perform their own magic to fix things, as long as
they're included entirely either before or after any Windows headers.

This file can cause a conflict in other DolphinWX files because NetPlay
headers directly include ENet headers, which leak Windows header macros.
To fix this, explicitly tell wxWidgets here that it needs to re-clean
macros.
2017-02-10 16:14:25 -08:00
Michael Maltese 715170759c Use .manifest file for apps on Windows
Works with CMake, and also adds DPI awareness to DolphinQt2 (which
wasn't enabled before).
2017-02-10 14:18:45 -08:00
Mat M f6d364e37b Merge pull request #4873 from lioncash/controller-emu
ControllerEmu: Separate ControlGroup from ControllerEmu
2017-02-10 13:50:33 -05:00
Anthony 96e83b5d54 Merge pull request #4764 from aldelaro5/crash-fix-inputconfig
InputConfigDialog pass the device_cbox to the wiimote extension dialogs
2017-02-09 21:50:44 -08:00
Lioncash 6a75ea5653 ControllerEmu: Separate ControlGroup from ControllerEmu
ControllerEmu, the class, is essentially acting like a namespace for
ControlGroup. This makes it impossible to forward declare any of the
internals. It also globs a bunch of classes together which is kind of a
pain to manage.

This splits ControlGroup and the classes it contains into their own source
files and situates them all within a namespace, which gets them out of
global scope.

Since this allows forward declarations for the once-internal classes, it
now requires significantly less files to be rebuilt if anything is changed
in the ControllerEmu portion of code.

It does not split out the settings classes yet, however, as it
would be preferable to make a settings base class that all settings derive
from, but this would be a functional change -- this commit only intends to
move around existing code. Extracting the settings class will be done in
another commit.
2017-02-09 18:18:52 -05:00
Lioncash ea6e75d45f GameListCtrl: Separate some scanning code into functions
Several of the things done while performing a scan are logically their own
behavior (e.g. loading a titles file, checking if an entry should be added, etc).
2017-02-09 14:50:20 -05:00
Mat M 73382852b7 Merge pull request #4502 from ligfx/extractcontrolreference
InputCommon: Extract ControlReference from ControllerInterface
2017-02-08 20:01:18 -05:00
Léo Lam 4662e25cbb DolphinWX: Fix overclock slider clock display 2017-02-08 15:07:34 +01:00
Léo Lam fd49a1b2d5 Get rid of GetUsbPointer for emulated Bluetooth
It held a raw pointer to a IOS::HLE::Device::BluetoothEmu that is not
guaranteed to exist (and of course, nothing checked that it wasn't
nullptr), but what is more, it's totally unnecessary because we have
IOS::HLE::GetDeviceByName().

Since we cannot always inform the host that Wii remotes are
disconnected from ES, that is now done in BluetoothEmu's destructor.
2017-02-08 15:07:33 +01:00
Michael Maltese 492d5b6ac7 ControlReference: hide parse_error behind GetParseStatus() 2017-02-07 22:59:26 -08:00
Michael Maltese 9a632ea7b9 ControlReference: hide is_input behind function 2017-02-07 22:59:21 -08:00
Michael Maltese a509f56116 InputCommon: Extract ControlReference from ControllerInterface
Better separation of concerns. Relegates `ControllerInterface` to
enumerating input controls, and the new `ControlReference` deals with
combining inputs and configuration expression parsing.
2017-02-07 22:59:10 -08:00
Matthew Parlane e2706b4381 Merge pull request #4860 from lioncash/lock
FifoPlayerDlg: Use std::lock_guard instead of manual mutex locking/unlocking
2017-02-08 18:59:28 +13:00
Matthew Parlane f838d16b0c Merge pull request #4546 from RisingFog/tas_wii_nand
Copy Wii save for current game for Netplay and TAS
2017-02-08 18:58:28 +13:00
Lioncash 399757a771 FifoPlayerDlg: Use std::lock_guard instead of manual mutex locking/unlocking
Same thing, but less error prone.
2017-02-08 00:26:32 -05:00
Matthew Parlane 7b3b8f26a3 Merge pull request #4789 from lioncash/input
InputCommon: Move ControllerEmu to its own directory
2017-02-08 18:16:14 +13:00
Matthew Parlane f456fcec48 Merge pull request #4840 from lioncash/net
NetWindow: Eliminate usages of the main_window global
2017-02-08 18:12:56 +13:00
Matthew Parlane 691abc223b Merge pull request #4859 from lioncash/opcodedecoder
OpcodeDecoding: Convert #defines into enum constants
2017-02-08 18:12:11 +13:00
Lioncash d9d069e024 OpcodeDecoding: Convert #defines into enum constants
Gets several constants out of global scope.
2017-02-08 00:05:17 -05:00
Florent Castelli 2bc3ffe07d DolphinWX: Add missing include for no-PCH builds 2017-02-08 05:24:46 +01:00
Lioncash 3a66f2c008 ControllerEmu: Move into its own directory
ControllerEmu is a massive class with a lot of nested public classes.

The only reason these are nested is because the outer class acts as a
namespace. There's no reason to keep these classes nested just for that.

Keeping these classes nested makes it impossible to forward declare them, which leads to quite a few includes in other headers, making compilation take
longer.

This moves the source files to their own directory so classes can be
separated as necessary to their own source files, and be namespaced under the
ControllerEmu namespace.
2017-02-07 22:12:06 -05:00
Mat M 3cda4e1d9c Merge pull request #4822 from ligfx/copysys
CMake: add CMAKE_CONFIGURE_DEPENDS on Data/Sys
2017-02-07 10:41:25 -05:00
Lioncash c41f587c29 Frame: Hide functions that don't need to be exposed
Any functions left exposed are used elsewhere through the main_window
global. May as well prevent any more functions from being used in that
manner where possible.
2017-02-06 18:29:26 -05:00
Lioncash ead076d335 NetWindow: Get rid of direct use of the main_window global
Utilizes the event system (which is what should have been done here
initially), in order to prevent coupling between two different window frames.

This also makes booting games more versatile using the UI event system,
as the event can just act as a carrier for the filename, making directly
calling boot functions unnecessary. All that's needed is for the event to
propagate to the frame.
2017-02-06 18:29:20 -05:00
Michael Maltese 1fd1620e4e CMake: add CMAKE_CONFIGURE_DEPENDS on Data/Sys
Since files from Data/Sys are collected and added to a built macOS .app
bundle using GLOB, any new files won't get picked up until the next time
CMake is run. Tell CMake it should re-run itself every time the directory
is touched.
2017-02-06 13:55:35 -08:00
Matthew Parlane d244597b42 Merge pull request #4408 from leoetlino/usb
IOS: USB support (OH0, USB_VEN, USB_HID)
2017-02-07 09:17:05 +13:00
Matthew Parlane 2835cfde52 Merge pull request #4836 from lioncash/enum
DSPCore: Convert the DSPCoreState enum into an enum class
2017-02-07 09:14:22 +13:00
Lioncash 2597d2b69b NetWindow: Make chat messages queue private
This doesn't need to be publicly accessable.
2017-02-06 13:03:35 -05:00
Lioncash 063e4df5a1 DSPCore: Convert the DSPCoreState enum into an enum class 2017-02-06 11:47:19 -05:00
Matthew Parlane abe7081337 Merge pull request #4818 from ligfx/bundleutilities
CMake: use BundleUtilities to fix up Dolphin.app
2017-02-06 17:39:46 +13:00
Chris Burgener 5224771dac Copy Wii save for current game for Netplay and TAS 2017-02-05 13:17:05 -05:00
Lioncash e07383a783 Core: Convert State enum into an enum class 2017-02-05 08:32:23 -05:00
Léo Lam b7cc25535f DolphinWX: Add USB passthrough settings
Allows adding/removing devices from USB passthrough.
2017-02-05 11:36:47 +01:00
Lioncash f7b9db9846 PowerPC: Convert CoreMode enum into an enum class
Prevents constants from polluting the namespace.
2017-02-04 19:34:56 -05:00
Michael Maltese 38816bf51d CMake: use BundleUtilities to fix up Dolphin.app 2017-02-03 22:27:19 -08:00
Matthew Parlane 529dc6aa53 Merge pull request #4811 from lioncash/memcardmanager
MemcardManager: Minor changes
2017-02-04 10:09:01 +13:00
Michael Maltese fa9881f0d2 CMake: actually call deploy-mac.py, don't just echo it 2017-02-03 09:22:30 -08:00
Lioncash 5ce82583f8 MemcardManager: Get rid of prefixed double-underscores from an identifier
Identifiers with prefixed double-underscores are reserved by the C++
standard.
2017-02-03 11:30:39 -05:00
Lioncash 9d523f52f2 MemcardManager: Convert C arrays to std::array 2017-02-03 11:15:46 -05:00
Florent Castelli ca42f08e7d cmake: Copy resources next to the DolphinWX binary on Windows 2017-02-03 04:54:54 +01:00
Florent Castelli 1a4f044e9e cmake: Add RC file on Windows to DolphinWX 2017-02-03 04:54:54 +01:00
Florent Castelli 3842a9b71c OpenAL: Move Windows binaries to lib folder and fix CMake detection
The module FindOpenAL is looking for the dll in a folder called lib, not x64.
This is only used on Windows x64, it's fine to remove the platform name.
2017-02-03 04:54:54 +01:00
Mat M 1b9b1a356b Merge pull request #4805 from Orphis/cmake_macos
CMake macOS fixes
2017-02-02 20:53:22 -05:00
Lioncash d72cf81dea MemcardManager: Use unique_ptr over raw pointers 2017-02-02 14:33:01 -05:00
Florent Castelli e9aac53cec macOS: Update how resources are copied in the bundle
Instead of using install() commands, we use the MACOSX_PACKAGE_LOCATION
property, which will allow the files to be identified and updated individually
by the build system without having to remove the entire folder and copy it
each time.

deploy-mac.py is now idempotent and should be working properly, so we'll
call it all the time from now on.
2017-02-02 03:51:32 +01:00
Florent Castelli 0f9a6697fb DolphinWX: Update how localization files are installed
On macOS, we want them copied in the bundle directly, otherwise we will
install them later in the system folder.
Obviously not working for Windows, but that's not any different from before!
2017-02-02 03:51:32 +01:00
JosJuice 91fe332036 "Wii Remote Motor" -> "Wii Remote Rumble"
I've never heard any user call this motor. Let's use the word
that Nintendo uses and people actually recognize.
2017-02-01 16:19:03 +01:00
aldelaro5 334e33d4fa InputConfigDialog pass the device_cbox to the wiimote extension dialogs
This fixes a crash when trying to open the advanced input config dialog on the wiimote extensions.  The device_cbox wasn't initialised and it should have been with the wiimote one.
2017-01-27 01:06:38 -05:00
Florent Castelli 103361c846 cmake: Change endforeach(.*) to endforeach() 2017-01-25 15:07:32 +01:00
Markus Wick eed64bb0fe Merge pull request #4744 from ligfx/cleanup-osx-cmake
CMake: Cleanup macOS-related logic
2017-01-24 14:36:10 +01:00
Markus Wick 63f56ccd02 Merge pull request #4741 from Orphis/cmake_cleanup
CMake cleanup
2017-01-24 14:35:05 +01:00
Michael Maltese 0ab3b1a3ff CMake: use CMAKE_OSX_DEPLOYMENT_TARGET 2017-01-24 01:27:41 -08:00
Florent Castelli a917d247ed DolphinWX: Remove HAVE_WX preprocessor define
I think we don't have to double check it when building the WX target.
2017-01-24 05:48:08 +01:00
Florent Castelli cac53603c5 DolphinWX: Put wx related headers before including anything else
Including Windows.h before them creates compilation errors.
2017-01-24 03:22:03 +01:00
Léo Lam ceb1797977 DolphinWX: Show the required IOS version in info panel
This is useful to know which IOS version is required by a title without
having to look at the TMD manually.

The IOS version row will only appear if there is a TMD, of course.
2017-01-23 20:42:36 +01:00
Léo Lam 1cb87a9e43 DolphinWX: Simplify item creation in InfoPanel 2017-01-23 20:42:36 +01:00
Léo Lam 3eb81ad219 Netplay: Fix wrong mapping info being used in dialog
Obvious fix for a small mistake.
2017-01-21 20:42:30 +01:00
Lioncash 794d0a9d7c Core: Move SI source files to their own directory 2017-01-20 19:33:24 -05:00
Florent Castelli b6a7216b07 cmake: Mark DolphinWX target as a Windows application (instead of console) 2017-01-21 00:35:55 +01:00
Lioncash 8078c18a80 Core: Move EXI source files to their own directory
Keeps related source files together and cleans up the root directory of HW
a little bit.
2017-01-20 16:06:35 -05:00
Léo Lam 49b9c723e2 Put IOS devices in a namespace and drop WII_IPC_HLE prefix 2017-01-18 21:42:33 +01:00
Léo Lam 24199293d3 IOS: Reorganise the source files and IPC_HLE→IOS
IPC_HLE is actually IOS HLE. The actual IPC emulation is not in
IPC_HLE, but in HW/WII_IPC.cpp. So calling IPC_HLE IOS is more
accurate. (If IOS LLE gets ever implemented, it'll likely be at
a lower level -- Starlet LLE.)

This also totally gets rid of the IPC_HLE prefix in file names, and
moves some source files to their own subdirectories to make the file
hierarchy cleaner.

We're going to get ~14 additional source files with the USB PR,
and this is really needed to keep things from becoming a total pain.
2017-01-18 20:43:10 +01:00
Matthew Parlane 01b322d45f Merge pull request #4679 from lioncash/ipc
IPC_HLE: Namespace IPC HLE
2017-01-18 17:33:08 +13:00
Lioncash 722162b54a IPC_HLE: Namespace IOS HLE
Gets all of the IOS HLE code out of the global scope.
2017-01-17 20:46:58 -05:00
Florent Castelli 875563787f cmake: include(Find…)->find_package(…) 2017-01-17 21:50:44 +01:00
Lioncash 3848c2a018 MemoryView: Get rid of a type-punning cast from u32 to float
This is undefined behavior. The bits should be memcpyed.
2017-01-15 12:16:41 -05:00
Lioncash 2108bf1be6 MemoryView: Separate memory string composition from OnPaint
OnPaint should only care about drawing data, not directly creating
said data.
2017-01-15 12:13:08 -05:00
JosJuice 2052bb8bea Remove seemingly unused debug UI strings
wxChoice controls don't display any titles.

By the way, why is the file called DebuggerPanel.cpp
even though it implements the Video debug panel specifically?
2017-01-14 22:34:49 +01:00
Léo Lam 5fd486014b DolphinWX: Always keep panic alerts on top
This should prevent silly things like panic alerts opening *behind* the
render window and thus being impossible to see.
2017-01-12 23:40:58 +01:00
Matthew Parlane 22546aef37 Merge pull request #4499 from ligfx/msgalertmainthread
DolphinWX: pass wxMsgAlert to main thread on non-GTK too
2017-01-13 09:52:09 +13:00
Matthew Parlane d346d4ced1 Merge pull request #4544 from JosJuice/region-enum
DiscIO: Add GetRegion function and Region enum
2017-01-13 09:19:27 +13:00
Matthew Parlane 0b6e5765dd Merge pull request #4610 from ligfx/fixgamelist
DolphinWX: Fix position of GameListCtrl tooltips on macOS
2017-01-12 14:18:05 +13:00
Michael Maltese fdcf5aeb75 DolphinWX: Fix position of GameListCtrl tooltips on macOS 2017-01-11 16:59:15 -08:00
Matthew Parlane ed6e346664 Merge pull request #4617 from lioncash/hotkey
HotkeyInputConfigDialog: Move UI creation into named functions
2017-01-12 11:02:10 +13:00
Lioncash 0f8bcf412d BreakPoints: Rename variables
Drops Hungarian notation where applicable.Drops Hungarian notation where
applicable.
2017-01-11 10:08:11 -05:00
Lioncash ea8fc594a5 Common: Move BreakPoints into Core
BreakPoints utilizes the jit global variable, so this was making Core and
Common cyclical dependencies on one another.
2017-01-10 05:24:44 -05:00
PEmu1 b25ed121d1 Change "Refresh List" to "Refresh Game List" in Menu
Make refresh list option more clear as to what it does and more consistent with other usage in the UI.
2017-01-08 09:24:17 -08:00
Léo Lam 8bef7259e3 Add the g_ prefix to the jit global
Jan 04 22:55:01 <leoetlino>   fwiw, it looks like there are new warnings in the RegCache code
Jan 04 22:55:04 <leoetlino>   Source/Core/Core/PowerPC/Jit64/FPURegCache.cpp:13:33: warning: declaration shadows a variable in the global namespace [-Wshadow]
Jan 04 22:56:19 <@Lioncash>   yeah, the jit global should have a g_ prefix.

This fixes shadowing warnings and adds the g_ prefix to a global.
2017-01-07 23:19:49 +01:00
Markus Wick c633eeb383 Merge pull request #4619 from PEmu1/configuration
Change "Configure" to "Configuration" in Menu
2017-01-06 12:54:17 +01:00
PEmu1 398d544ebf Change "Configure" to "Configuration" in Menu
Other settings options are nouns rather than verbs so this change makes the configuration option consistent with others. Also makes the menu option label the same as the windows title.
2017-01-05 14:33:24 -08:00
Lioncash 89da37b1c6 HotkeyInputConfigDialog: Move UI creation into named functions
The constructor shouldn't be used as a dumping ground for all UI-related
initialization. Doing so makes it somewhat more difficult to reason about
how certain UI elements get created. It also puts unrelated identifiers in
the same scope.

This separates the UI creation out so code relevant to each component
is self-contained.
2017-01-05 16:26:42 -05:00
Mat M e7359f247b Merge pull request #4595 from aldelaro5/add-debugger-hotkeys
Add debugger hotkeys
2017-01-05 14:33:10 -05:00
Mat M 6fe621f203 Merge pull request #4589 from ligfx/cleaninputconfigdiag
InputConfigDiag: move function bodies out of header
2017-01-05 14:29:35 -05:00
Mat M 0de4ad334f Merge pull request #4605 from PEmu1/tas-gamecube-contro
Clarify GameCube Controller in TAS Input
2017-01-05 14:28:54 -05:00
Mat M 189e5f87fb Merge pull request #4612 from PEmu1/memcard-menu
Don't Use Abbreviation for "Memory Card"
2017-01-05 14:22:54 -05:00
PEmu1 6d195f3d65 Don't Use Abbreviation for "Memory Card" 2017-01-05 10:06:46 -08:00
Michael Maltese 443815df16 DolphinWX: pass wxMsgAlert to main thread on non-GTK too
Fixes an issue on macOS where wxMessageBox always returns wxCANCEL when
not called from main thread.
2017-01-04 14:06:31 -08:00
PEmu1 2dae72f817 Clarify GameCube Controller in TAS Input 2017-01-03 18:03:17 -08:00
aldelaro5 cc7c410cf1 Add debugging hotkeys
They are separated into 3 groups and will only be shown in the input config dialog if the emulator was in debug mode.
2017-01-02 18:16:52 -05:00
aldelaro5 00e03f1436 Update the breakpoint list after an add from the parent
Doing it from the add dialogs instead would prevent the call to these dialogs outside of a breakpointWindow which would be necessary for hotkeys binding.
2017-01-02 15:39:21 -05:00
JosJuice 66ea9f5cc1 DiscIO: Add GetRegion function and Region enum
Instead of needing different switch cases for
converting countries to regions in multiple places,
we now only need a single country-to-region switch case
(in DiscIO/Enums.cpp), and we get a nice Region type.
2017-01-02 20:57:11 +01:00
Markus Wick 6aef0630f7 Merge pull request #4588 from JosJuice/isoproperties-title-encoding
ISOProperties: Fix encoding errors in window title
2017-01-02 12:33:58 +01:00
Anthony b46dcc7768 Merge pull request #4495 from slashiee/dump-textures-hotkey
Add a hotkey for toggling texture dumps
2017-01-01 17:28:56 -08:00
Mat M 6c5063c76b Merge pull request #4585 from lioncash/dspnamespace
DSP: Namespace remaining un-namespaced DSP code
2017-01-01 17:54:39 -05:00
Michael Maltese 35fe8f762a InputConfigDiag: move function bodies out of header 2016-12-31 15:47:56 -08:00
JosJuice 65d88776db ISOProperties: Fix encoding errors in window title
It seems to be a regression, but I haven't bisected it.
2017-01-01 00:34:29 +01:00
aldelaro5 d6674223db Fix some margin discrepancies 2016-12-31 17:58:39 -05:00
Lioncash 3eb25cea6f DSP: Namespace remaining un-namespaced DSP code 2016-12-31 17:20:14 -05:00
aldelaro5 42e4dde960 Add an empty spacer in the Mic Input config dialog
This is done to not have the device combo box be too small in width when making the main sizer fit into the window.  Not fitting the sizer would alternatively break Hidpi so it was best to just add an empty sizer to workaround this problem.
2016-12-31 16:17:47 -05:00
aldelaro5 a447213420 Remove the menu hotkeys of the debug menu bar
I think it's best to remove these if we are going to be adding new hotkeys since these would work no matter what so I can simply make these the default one instead.
2016-12-30 14:18:10 -05:00
Techjar dd00f9ea34 Should fix being unable to change memory card slot A 2016-12-26 22:03:14 -05:00
JosJuice 0f1ce0e1f4 Remove incorrect usage of "ASCII" and "ANSI"
Windows-1252 was sometimes being referred to as ASCII or ANSI
in Dolphin, which is incorrect. ASCII is only a subset of
Windows-1252, and ANSI is (rather improperly) used in Windows
to refer to the current code page (which often is 1252 on
Western systems, but can also be something entirely different).

The commit also replaces "SJIS" with "Shift JIS". "SJIS"
isn't misleading, but "Shift JIS" is more commonly used.
2016-12-26 15:49:39 +01:00
Mat M 8ad6c3e911 Merge pull request #4555 from JosJuice/right-click-host-name
Fix player name not being loaded when using "Host with Netplay..."
2016-12-25 17:32:26 -05:00
JosJuice 70d9440d10 Fix player name not being loaded when using "Host with Netplay..." 2016-12-25 16:36:19 +01:00
JosJuice c0710d3593 Mark strings added by PR #4461 for translation
Also fix the HKGP_FRANE_ADVANCE typo.
2016-12-24 19:26:21 +01:00
Léo Lam ec729e2ee3 Stop Movie/Netplay before triggering STM shutdown
This fixes a bug which caused Movie (input recording or playback) or
netplay not to be stopped. DolphinWX previously triggered a STM power
event, and then the STM directly stopped the emulation; the code
which stops Movie/Netplay was completely skipped.

This is fixed by moving it /before/ sending the shutdown event.
2016-12-24 00:44:30 +01:00
Mat M 9160be50db Merge pull request #4224 from lioncash/tcache
TextureCacheBase: Eliminate static state
2016-12-23 04:33:42 -05:00
Dan Beste a309449a7f Silences an error during compilation due to an unused (but set) variable 2016-12-22 19:44:47 -06:00
Anthony ca91b6df52 Merge pull request #4521 from JosJuice/tgc
Add TGC disc image compatibility
2016-12-20 17:45:39 -06:00
Mat M cd4449f881 Merge pull request #4501 from flibitijibibo/disabletooltips
DolphinWX: Add 'DisableTooltips' config option (R2)
2016-12-20 17:20:24 -05:00
Mat M 2c8cc0f648 Merge pull request #4527 from leoetlino/fix-dvd-backup
DolphinWX: Fix booting from DVD
2016-12-19 16:22:29 -05:00
Léo Lam adcfefecde DolphinWX: Fix booting from DVD
OnBootDrive used the "drives" member std::vector for drive paths, but
since PR #4363, this vector is not populated anymore, so we were
accessing it out of bounds.

Actually, drives was not needed in the first place, since we can
get the wxMenu from the event, and from there, get the label directly.
2016-12-19 10:45:33 +01:00
JosJuice 9bd514ed1c Add TGC disc image compatibility 2016-12-18 18:57:36 +01:00
Sepalani a6114bad34 Import/Export signature files as CSV 2016-12-18 00:27:10 +00:00
Anthony f431b18675 Merge pull request #4491 from leoetlino/debugger-symbol-filter
DolphinWX: Add ability to filter symbols (by name)
2016-12-17 11:13:28 -06:00
Lioncash 58a5395173 TextureCacheBase: Eliminate static state 2016-12-09 16:50:37 -05:00
Anthony 7a5bb46016 Merge pull request #4030 from clinchergt/fix-setfocus-rendertowindow
Fix focus bug when using the "render to main window" feature
2016-12-09 15:39:31 -06:00
Anthony 1fa61af413 Merge pull request #4492 from aldelaro5/gc-mic-ui-reimplement
Move the GameCube mic button configuration to the GameCube config dialog
2016-12-09 14:53:47 -06:00
Ethan Lee 7cfead6429 DolphinWX: Add 'DisableTooltips' config option
(Revision 2: Remove checkbox from WX GUI)
2016-12-07 13:20:37 -05:00
aldelaro5 9ff95c58fa Add a special input configuration dialog for the GameCube Mic
This is more logical as the mic is plugged into an EXI slot so it should be configured via the GameCube config dialog.  This also allows to pass the right port number for the new dialog.
2016-12-05 18:09:31 -05:00