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
Matthew Parlane
4b7dd1f638
Merge pull request #4846 from aldelaro5/fix-symbols-newline
...
Fix symbols name from maps taking 2 lines instead of one
2017-02-08 18:18:56 +13: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
dac6a66252
Merge pull request #4769 from lioncash/settingshandler
...
SettingsHandler: Minor cleanup
2017-02-08 18:15:37 +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
Matthew Parlane
5b7c0d86cd
Merge pull request #4850 from lioncash/redundant
...
Core: Remove redundant returns in FifoPlayerThread() and CpuThread()
2017-02-08 18:11:30 +13:00
Matthew Parlane
f91290d702
Merge pull request #4857 from lioncash/global
...
DSPCore: Make g_cycles_left a regular member variable of DSPEmitter
2017-02-08 18:10:59 +13:00
Matthew Parlane
b41921935c
Merge pull request #4854 from lioncash/constant
...
PowerPC: Convert #defines into typed constants
2017-02-08 18:10:11 +13:00
Matthew Parlane
a027aadb24
Merge pull request #4851 from leoetlino/fix-wifi-scanning
...
IOS: Fix Wi-Fi scanning in system menu
2017-02-08 18:09:12 +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
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
Lioncash
4260afc848
DSPCore: Make g_cycles_left a regular member variable of DSPEmitter
...
Gets rid of a global within the DSP core.
2017-02-07 21:56:57 -05:00
Lioncash
13f70d4597
PowerPC: Convert #defines into typed constants
2017-02-07 20:17:15 -05:00
Florent Castelli
428d1624fa
cmake: Move BlueZ detection to Core
2017-02-08 01:08:33 +01:00
Léo Lam
e7b6b87ffe
IOS: Fix Wi-Fi scanning in system menu
...
The second output vector should not be written to for
IOCTLV_NCD_READCONFIG. If it is, the system menu will never attempt
to open /dev/net/wd/command and request a Wi-Fi scan.
2017-02-08 00:43:38 +01:00
Lioncash
06f6ca8d81
Core: Remove redundant returns in FifoPlayerThread() and CpuThread()
...
There's no need to explicitly return at the end of a void function.
2017-02-07 17:59:03 -05:00
Matthew Parlane
22fbcc67fc
Merge pull request #4773 from lioncash/ucode
...
UCodes: Eliminate unnecessary includes in header
2017-02-08 10:54:12 +13:00
Matthew Parlane
47ccf52c5e
Merge pull request #4845 from ligfx/addbraces
...
JitIL/IR.cpp: add braces around std::array initalizers
2017-02-08 09:42:48 +13:00
Matthew Parlane
2112acf500
Merge pull request #4847 from lioncash/exi
...
EXI_DeviceAD16: Minor changes
2017-02-08 09:40:59 +13:00
Lioncash
31dc2b9cc1
GCPadEmu: Make constructor explicit
2017-02-07 15:12:15 -05:00
Lioncash
a2a188533a
GCKeyboardEmu: Make constructor explicit
2017-02-07 15:11:49 -05:00
Lioncash
9f8177c9ac
UCodes: Eliminate unnecessary includes in header
2017-02-07 15:08:57 -05:00
Michael Maltese
64405f26a8
lint JitILCommon/IR.cpp
2017-02-07 12:08:25 -08:00
Lioncash
1f14b7f907
EXI_DeviceAD16: Amend variable naming
...
Drops Hungarian Notation type prefixing and prefixed underscores.
2017-02-07 14:58:23 -05:00
Lioncash
2f74a6f552
EXI_DeviceAD16: In-class initialize member variables
...
Same thing, less code.
2017-02-07 14:54:54 -05:00
aldelaro5
9dc9033b76
Fix symbols name from maps taking 2 lines instead of one
...
Symbols map may not only end with a \n, but they may also end with \r\n and only the \n would get removed. This is the case with the Super Mario Sunshine map file which resulted in a weird looking symbols list and thus made it harder to scroll through it. This removes the \r after the \n has been removed if it's present.
2017-02-07 09:56:19 -05:00
Michael Maltese
8048716efb
JitIL/IR.cpp: add braces around std::array initalizers
...
Fixes the following warnings on macOS Clang:
```
Building CXX object Source/Core/Core/CMakeFiles/core.dir/PowerPC/JitILCommon/IR.cpp.o
Source/Core/Core/PowerPC/JitILCommon/IR.cpp:1374:9: warning: suggest braces around initialization of subobject [-Wmissing-braces]
LoadCR, LoadLink, LoadMSR, LoadGReg, LoadCTR, InterpreterBranch,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Source/Core/Core/PowerPC/JitILCommon/IR.cpp:1378:9: warning: suggest braces around initialization of subobject [-Wmissing-braces]
StoreLink,
^~~~~~~~~~
Source/Core/Core/PowerPC/JitILCommon/IR.cpp:1419:9: warning: suggest braces around initialization of subobject [-Wmissing-braces]
BranchCond,
^~~~~~~~~~~
3 warnings generated.
```
2017-02-07 01:10:43 -08:00
Michael Maltese
58f01e60d6
ES: use PRIx64 to print m_addtitle_tmd.GetTitleId()
...
Fixes a warning on macOS with Clang.
2017-02-06 20:31:28 -08:00
Léo Lam
b6d526ba2e
IOS: Do not init libusb unless passthrough is enabled
2017-02-07 00:47:21 +01:00
Léo Lam
f5a3aac8e1
IOS: Check if libusb can be used instead of asserting
...
This prevents panic alerts from showing up three times when starting
Wii emulation whenever libusb could not be initialized. The user has
already seen a warning at startup -- no need to warn them 3 more times.
2017-02-06 22:09:43 +01: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
Lioncash
063e4df5a1
DSPCore: Convert the DSPCoreState enum into an enum class
2017-02-06 11:47:19 -05:00
Lioncash
259f827e34
Core: Actually make the State enum an enum class
...
It helps if I actually make it a strongly typed enum.
2017-02-06 01:13:07 -05:00
Matthew Parlane
b9fc79020d
Merge pull request #4817 from sepalani/debug_print_case
...
Handle another case with HLE_GeneralDebugPrint
2017-02-06 17:40:44 +13:00
Matthew Parlane
d022913fb3
Merge pull request #4828 from lioncash/state
...
Core: Convert State enum into an enum class
2017-02-06 17:38:46 +13:00
Chris Burgener
5224771dac
Copy Wii save for current game for Netplay and TAS
2017-02-05 13:17:05 -05:00
Mat M
1f1a232546
Merge pull request #4629 from JosJuice/es-movie-title-id
...
Don't call Movie::SetTitleId from ES
2017-02-05 09:26:08 -05:00
Mat M
af33c9714e
Merge pull request #4825 from Orphis/cmake_alsa
...
CMake: Updates to AudioCommon & ALSA discovery
2017-02-05 08:50:34 -05:00
Lioncash
e07383a783
Core: Convert State enum into an enum class
2017-02-05 08:32:23 -05:00
Matthew Parlane
c4d470cbf2
Merge pull request #4827 from Kurausukun/master
...
Support Setting CPU Overclock via GameINIs
2017-02-06 01:36:05 +13:00
Matthew Parlane
4df22e03ca
Merge pull request #4823 from lioncash/tlb
...
PowerPC: Rename tlb_entry struct to TLBEntry
2017-02-06 00:59:39 +13:00
Kurausukun
2479fe6e53
Support Setting CPU Overclock via GameINIs
2017-02-05 06:16:32 -05:00
Léo Lam
b63b6111b3
IOS: Implement USB_VEN (/dev/usb/ven)
2017-02-05 11:36:49 +01:00
Léo Lam
c9f4889437
IOS: Re-implement USB_HIDv4 (/dev/usb/hid)
...
This reimplements the USB HID v4 IOS device using the new common
USB code (to reuse more code and allow emulated HIDs to be added
more easily in the future).
The main difference is that HIDs now have to be whitelisted, like
every other USB device for OH0 and VEN.
2017-02-05 11:36:49 +01:00
Léo Lam
ee188a1d5a
IOS: Implement OH0 (/dev/usb/oh0)
2017-02-05 11:36:48 +01:00
Léo Lam
c8a6dc6c23
Use a single libusb context
...
libusb on Windows is limited to only a single context. Trying to open
more than one can cause device enumerations to fail randomly.
libusb is thread-safe and we don't use the manual polling support (with
`poll()`) so this should be safe.
2017-02-05 11:36:48 +01:00
Léo Lam
73e55ccf44
IOS: Add base Host and USB::Device classes
...
The Host class will be used by the OH0, VEN and HID implementations
as the base class for the IOS HLE device. It handles scanning devices,
detecting device changes and everything that will be needed for OH0,
VEN and HID to be implemented, while mostly abstracting libusb away.
The Device class is for actual USB devices. This commit adds a
LibusbDevice which interacts with a real USB device and enables
USB passthrough.
2017-02-05 11:36:47 +01:00
Léo Lam
b8c651eac4
IOS: Store the active IOS title ID
...
This allows us to get back the current active IOS version and expose
only devices which exist/can be used in that version.
2017-02-05 11:36:47 +01:00
Léo Lam
e246afb049
IOS: Add UpdateWantDeterminism to devices
...
This will be useful for the USB devices to disconnect and hide any real
devices when Core::g_want_determinism is true.
2017-02-05 11:36:47 +01:00
Léo Lam
69a13a12e2
Add USB passthrough setting and USBUtils
...
This adds a USB passthrough setting to ConfigManager and everything
needed for the UI to show and manage the whitelist properly.
2017-02-05 11:36:46 +01:00
JosJuice
e4d20647d4
Merge pull request #4824 from lioncash/coremode
...
PowerPC: Convert CoreMode enum into an enum class
2017-02-05 08:25:12 +01:00
Florent Castelli
9ebfaa9324
AudioCommon: Move logic for default sound backend there from ConfigManager
...
This way, we don't have to leak the HAVE_ALSA define there.
2017-02-05 02:55:04 +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
Lioncash
4b091f5872
MMU: Use references to TLBEntry instances instead of pointers
...
Same behavior, less verbosity.
2017-02-04 19:03:22 -05:00
Lioncash
52b45a3933
PowerPC: Rename tlb_entry struct to TLBEntry
...
Makes it consistent with our naming style.
2017-02-04 18:58:45 -05:00
Markus Wick
3be364073d
Merge pull request #4713 from JosJuice/core-init-gameini
...
Don't load game INIs in Core::Init
2017-02-04 08:32:03 +01:00
Markus Wick
2ad62bf5df
Merge pull request #4777 from lioncash/dspstack
...
DSPCore: Convert DSP stack register enum into an enum class
2017-02-04 08:27:11 +01:00
Sepalani
e280f5615a
Handle another case with HLE_GeneralDebugPrint
2017-02-03 23:30:37 +00:00
Matthew Parlane
e2b0197ff6
Merge pull request #4807 from leoetlino/ios-version-for-wads
...
Remove unneeded write to 0x3140/0x3188 for WADs
2017-02-04 10:08:29 +13:00
JosJuice
edcf6819e2
Don't load game INIs in Core::Init
...
The game INIs are already loaded in BootManager::BootCore,
which is executed right before. Let's put the g_aspect_wide
code there instead.
2017-02-03 21:56:45 +01:00
JosJuice
c847a5258f
BootManager: Use local SConfig reference when possible
2017-02-03 21:55:02 +01:00
JosJuice
e572fb102f
Move ES_DIVerify's Movie-related code to a more logical place
2017-02-03 19:53:35 +01:00
JosJuice
6aa41ebc55
Movie: Put Wii s_bClearSave handling in a more logical place
2017-02-03 19:53:23 +01:00
JosJuice
88e0a5e418
Don't call Movie::SetTitleId from ES
...
Movie basically just wants to get the title ID of
the initally booted game, so let's set the title ID in
ConfigManager at boot like we do with the regular game ID.
Aside from being cleaner, this should make the approach to
title IDs compatible with booting non-disc software (WADs).
2017-02-03 19:52:25 +01:00
Lioncash
c67d095787
PowerPC: Move page #define constants to MMU.cpp
...
These are only ever used here.
This also converts them into typed constants.
2017-02-03 11:48:42 -05:00
Léo Lam
767cbcafb1
Remove unneeded write to 0x3140/0x3188 for WADs
...
This is unnecessary now that IOS::HLE is responsible for writing the
values to memory; removing the writes also prevents the IOS minor
version from being mangled (by the write to 0x3142).
2017-02-02 22:05:36 +01:00
degasus
384efb0cb2
JitArm64: Initial implementation of the BLR optimization.
2017-02-02 09:06:34 +01:00
Markus Wick
f558ae4dd1
Merge pull request #4790 from lioncash/sram
...
Sram: Make SRAM dumps const
2017-02-01 13:27:03 +01:00
Markus Wick
094a75f3cb
Merge pull request #4791 from degasus/temp
...
DSPLLE: Only enable the DSP JIT on x64.
2017-02-01 13:04:18 +01:00
Mat M
6fd0e96ea3
Merge pull request #4785 from lioncash/ios-fs
...
IOS FS: Move behavior to separate functions
2017-01-31 22:28:42 -05:00
Mat M
84d81a4b7a
Merge pull request #4792 from sepalani/fix_isctype_assert
...
Fixes std::isprint undefined behavior
2017-01-31 21:53:12 -05:00
Sepalani
44196f6a55
Fixes std::isprint undefined behavior
2017-02-01 02:30:29 +00:00
Mat M
5b782b9f2d
Merge pull request #4795 from sepalani/fix_sock
...
Fixes a crash when closing a socket
2017-01-31 20:30:26 -05:00
Sepalani
3fd08b6cee
Fixes a crash when closing a socket
2017-02-01 00:11:19 +00:00
Markus Wick
24951fde2b
Merge pull request #4793 from lioncash/asm-disasm
...
DSPAssembler/DSPDisassembler: Make constructors explicit
2017-01-31 00:25:27 +01:00
Lioncash
a9db9fd217
DSPDisassembler: Make constructor explicit
2017-01-30 18:17:48 -05:00
Lioncash
546cd5d4be
DSPAssembler: Make constructor explicit
2017-01-30 18:16:59 -05:00
degasus
2c69e976d0
DSPLLE: Only enable the DSP JIT on x64.
...
The x64 JIT is hardcoded right now, and it seems unlikely that we'll support another arch here soon.
So let's just disable the DSP JIT.
2017-01-30 23:53:58 +01:00
Lioncash
093b61139b
Sram: Make SRAM dumps const
...
This is only used internally, and isn't written to.
2017-01-30 17:44:03 -05:00
Matthew Parlane
1603191145
Merge pull request #4786 from lioncash/fwd
...
IOS STM: Get rid of forward declarations in the cpp file
2017-01-30 22:20:58 +13:00
Markus Wick
2020928fd8
Merge pull request #4783 from degasus/temp
...
JitArm64: Fix immediate versions of cmpl.
2017-01-30 09:22:56 +01:00
booto
9c4621d2b5
Forgot to add to JitArm64.
...
Also adds DCBZOFF to JitArm64.
2017-01-29 22:05:07 -05:00
Mat M
548e2d6353
Merge pull request #4709 from lioncash/exi-device
...
EXI_Device: Minor cleanup
2017-01-29 19:50:42 -05:00
Lioncash
1801180a30
IOS STM: Get rid of forward declarations in the cpp file
...
Forward declaring functions from a completely different header inside a cpp
file can lead to linker errors. Forward declaring also doesn't really
provide any benefit within cpp files unless it's to bring an internally
linked function within the same file into scope.
2017-01-29 19:30:56 -05:00
Lioncash
d2da1897e7
IOS FS: Move behavior to separate functions
2017-01-29 18:32:59 -05:00
degasus
89cefe3103
JitArm64: Fix immediate versions of cmpl.
2017-01-29 18:38:43 +01:00
Matthew Parlane
e823a9d80c
Merge pull request #4779 from lioncash/fileio
...
IOS FileIO: Move GetFileStats code to its own function
2017-01-29 21:53:11 +13:00
Matthew Parlane
a8c51d99f1
Merge pull request #4780 from booto/dcbz_hack
...
Hack to stop dcbz/dcbi over low MEM1 trashing memory.
2017-01-29 21:51:15 +13:00
Lioncash
5fd41716ae
ec_wii: Make default data constexpr
...
None of these are modified anywhere.
2017-01-28 18:46:15 -05:00
Lioncash
926c9f995a
ec_wii: Amend function casing
2017-01-28 18:46:14 -05:00
Lioncash
650071c3e4
ec_wii: Make getter functions const member functions
2017-01-28 18:45:56 -05:00
Lioncash
5b998ee9b0
ec_wii: Move implementation details into cpp file
...
Gets rid of the need for an include in the header file.
2017-01-28 18:45:04 -05:00
booto
2fbdf2a3ce
Hack to stop dcbz/dcbi over low MEM1 trashing memory.
2017-01-28 18:04:44 -05:00
Lioncash
4c31bfef76
FileIO: Correct printf specifier in GetFileStats
2017-01-28 17:43:19 -05:00
Lioncash
6f0cabb1c5
FileIO: Move GetFileStats code to its own function
2017-01-28 17:41:40 -05:00
Mat M
66160c2781
Merge pull request #4743 from lioncash/es
...
ES: Separate IOCtlV code out into constituent functions
2017-01-28 15:33:34 -05:00
Markus Wick
69c4e6de41
Merge pull request #4767 from lioncash/mmio
...
MMIO: Get rid of a TODO regarding tuples
2017-01-28 15:38:49 +01:00
Lioncash
10d73988e7
DSPCore: Convert DSP stack register enum into an enum class
...
Makes it more self-documenting which stack is being loaded or stored to,
as C, D, and magic numbers are extremely vague. It also enforces a
strongly-typed API instead of accepting arbitrary integral values.
It also adds the two other missing stack register names -- loop address
and loop counter.
2017-01-28 09:17:27 -05:00
Lioncash
7959f900ed
DSPEmitter: Remove unused class member variable
2017-01-28 06:36:54 -05:00
Markus Wick
04c3db8bfa
Merge pull request #4771 from lioncash/dspemitter
...
DSPCore: Move emitter cycle code into DSPEmitter itself
2017-01-28 12:25:34 +01:00