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
b7cc25535f
DolphinWX: Add USB passthrough settings
...
Allows adding/removing devices from USB passthrough.
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
2fceb016b4
cmake: Move ALSA detection to AudioCommon
2017-02-05 02:55:05 +01:00
Florent Castelli
d615c0f868
cmake: Add imported target to FindALSA
2017-02-05 02:55:05 +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
Florent Castelli
31dfaafe0b
AudioCommon: Remove checks against NullSound::isValid()
...
The NullAudio backend is guaranteed to be compiled in, so no reason
to check it.
In addition to that, if it wasn't valid, it wouldn't work as a fallback
in InitSoundStream as there are uses to g_sound_stream later.
2017-02-05 02:55:04 +01:00
Florent Castelli
ee8a21f1d0
cmake: In AudioCommon, append sources and dependencies to a real target
2017-02-05 02:55:04 +01:00
Florent Castelli
f1ba7832a5
cmake: Reindent AudioCommon
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
JosJuice
bc2b9f4c3c
Translate Swedish in example strings to English
2017-02-04 22:51:01 +01:00
Helios747
4c22e6387d
[Video] Warn when booting a bounding box game on an unsupported GPU
2017-02-04 10:08:52 -08: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
Markus Wick
72d887cb20
Merge pull request #4816 from lioncash/pair
...
FramebufferManagerBase: Return a std::pair from GetTargetSize
2017-02-04 08:21:52 +01:00
Michael Maltese
38816bf51d
CMake: use BundleUtilities to fix up Dolphin.app
2017-02-03 22:27:19 -08:00
Florent Castelli
fb02a321b6
cmake: Move OpenSLES detection to AudioCommon through find_package()
2017-02-04 03:38:11 +01:00
Sepalani
e280f5615a
Handle another case with HLE_GeneralDebugPrint
2017-02-03 23:30:37 +00:00
Matthew Parlane
529dc6aa53
Merge pull request #4811 from lioncash/memcardmanager
...
MemcardManager: Minor changes
2017-02-04 10:09:01 +13: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
Matthew Parlane
87c73cbeb3
Merge pull request #4812 from lioncash/define
...
PowerPC: Move page #define constants to MMU.cpp
2017-02-04 09:49:48 +13:00
Lioncash
c85e0a2586
FramebufferManagerBase: Return a std::pair from GetTargetSize
...
Keeps associated data together. It also eliminates the possibility of out
parameters not being initialized properly. For example, consider the
following example:
-- some FramebufferManager implementation --
void FBMgrImpl::GetTargetSize(u32* width, u32* height) override
{
// Do nothing
}
-- somewhere else where the function is used --
u32 width, height;
framebuffer_manager_instance->GetTargetSize(&width, &height);
if (texture_width != width) <-- Uninitialized variable usage
{
...
}
It makes it much more obvious to spot any initialization issues, because
it requires something to be returned, as opposed to allowing an
implementation to just not do anything.
2017-02-03 15:27:53 -05: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
Michael Maltese
fa9881f0d2
CMake: actually call deploy-mac.py, don't just echo it
2017-02-03 09:22:30 -08:00
Lioncash
a30c653f3d
D3D: Add CommonTypes include to D3DTexture.h
...
Resolves a compile error on the Windows CMake build.
2017-02-03 12:07:53 -05: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
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
Matthew Parlane
7f2753362f
Merge pull request #4802 from lioncash/header
...
ShaderGenCommon: Remove unnecessary includes
2017-02-03 14:52:41 +13:00
Matthew Parlane
8b1fc5b753
Merge pull request #4806 from lioncash/memcard-dlg
...
MemcardManager: Use unique_ptr over raw pointers
2017-02-03 14:50:55 +13: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
Lioncash
d72cf81dea
MemcardManager: Use unique_ptr over raw pointers
2017-02-02 14:33:01 -05:00
degasus
384efb0cb2
JitArm64: Initial implementation of the BLR optimization.
2017-02-02 09:06:34 +01: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
Florent Castelli
62c439814f
cmake: Move Qt5 search to DolphinQt build script
2017-02-01 21:49:26 +01:00
Lioncash
468f623d27
ShaderGenCommon: Remove unnecessary includes
2017-02-01 12:19:55 -05:00
Mat M
c5d4ae6163
Merge pull request #4801 from JosJuice/wii-remote-rumble
...
"Wii Remote Motor" -> "Wii Remote Rumble"
2017-02-01 10:41:33 -05: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
Markus Wick
543120c88e
Merge pull request #4799 from lioncash/light-headered
...
LightingShaderGen: Remove unnecessary includes
2017-02-01 15:23:18 +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
Lioncash
273ace7bb7
LightingShaderGen: Remove unnecessary includes
2017-02-01 01:06:00 -05:00
Matthew Parlane
a9627ac881
Merge pull request #4797 from lioncash/cast
...
RenderBase: Get rid of unnecessary casts
2017-02-01 17:18:12 +13: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
Lioncash
1f24cf2a2d
RenderBase: Get rid of unnecessary casts
2017-01-31 20:25:50 -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
Markus Wick
4f6dd2631d
Merge pull request #4787 from booto/dcbz_arm64
...
Add LowDCBZHack and DCBZOFF to JitArm64
2017-01-30 08:54:27 +01:00
Lioncash
b7e59f4e55
AVIDump: Rename CloseFile to CloseVideoFile
...
Retains symmetry with CreateVideoFile.
2017-01-29 22:05:12 -05: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
Stenzek
3b218c64b1
Vulkan: Refactor initialization to only use a single instance
...
Hopefully will fix the crash in vkDestroyInstance on the NV Shield TV,
and likely reduce boot times slightly for drivers that take a while
to create instances.
2017-01-29 22:18:53 +10: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
Markus Wick
3405f0ba01
Merge pull request #4739 from AdmiralCurtiss/auto-adjust-window-size-16-9
...
Make the "Auto Adjust Window Size" option respect the current game's aspect ratio.
2017-01-28 13:02:54 +01:00
Markus Wick
b96b592c76
Merge pull request #4775 from lioncash/unused
...
DSPEmitter: Remove unused class member variable
2017-01-28 12:44:07 +01:00
Mat M
ede9c6255a
Merge pull request #4770 from degasus/fifo
...
CommandProcessor: Limit scope of ugly SCPFifoStruct.
2017-01-28 06:43:23 -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
Lioncash
be3f9f7431
DSPEmitter: Fix -Wreorder warnings
2017-01-28 06:07:25 -05:00
Admiral H. Curtiss
b2c40bf4c4
RenderBase: Let the Auto Adjust Window Size option request the final image size rather than the raw framebuffer size.
2017-01-28 11:40:53 +01:00
Admiral H. Curtiss
e1fa6c374f
RenderBase: Extract the framebuffer size to display size code into function.
2017-01-28 11:40:53 +01:00
Lioncash
f5fe387a20
DSPEmitter: Make emitter dispatcher pointers private
2017-01-28 03:55:56 -05:00
Lioncash
0d42cbc923
DSPCore: Move JIT cycle code to DSPEmitter
...
Moves x86-specific emitter code out of DSPCore.
2017-01-28 03:55:40 -05:00
degasus
ca10cf5afe
PPCAnalyst: Update comments
2017-01-28 03:03:04 +01:00
degasus
4855764345
JitArm64: Implement leaf inlining.
...
There is no BLR stack, so this is quite trivial.
2017-01-28 02:48:56 +01:00
degasus
f31b25fe39
Jit64: Enable branch following.
2017-01-28 02:48:56 +01:00
degasus
3787af9ee9
CommandProcessor: Limit scope of ugly SCPFifoStruct.
...
It's only used as an interface between two classes. So no need to declare
it in the backend export header.
2017-01-27 19:04:56 +01:00
Lioncash
c748158182
SettingsHandler: Make GenerateSerialNumber static
...
This doesn't depend on class internals.
2017-01-27 10:29:57 -05:00
Lioncash
98291cd843
SettingsHandler: Add Open and Save member functions
2017-01-27 10:29:49 -05:00
Lioncash
d680d1f81e
MMIO: Get rid of a TODO regarding tuples
2017-01-27 02:54:07 -05:00
Markus Wick
f37c5f1f1c
Merge pull request #4766 from lioncash/dspemitter
...
DSPCore: Move CompileCurrent to the DSPEmitter
2017-01-27 08:09:52 +01:00
degasus
ba1decf7bc
PixelEngine: Use a DirectRead for the token.
...
No need to call a std::function, and a few games poll this value very often.
2017-01-27 07:49:47 +01:00
Lioncash
4003360bcb
DSPCore: Move CompileCurrent to the DSPEmitter
...
This is only ever used here.
2017-01-27 01:36:29 -05: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
Matthew Parlane
017e8050b6
Merge pull request #4746 from JosJuice/volumedirectory-sort-case-insensitive
...
VolumeDirectory: Use case-insensitive comparison when sorting
2017-01-27 18:23:14 +13:00
Matthew Parlane
3d5821a9a7
Merge pull request #4745 from JosJuice/always-valid-region
...
ConfigManager: Always set a valid m_region
2017-01-27 18:18:37 +13:00
Matthew Parlane
06728ad687
Merge pull request #4757 from lioncash/dsptables
...
DSPTables: Hide remaining opcode tables
2017-01-27 18:17:36 +13:00
Matthew Parlane
a0e598be10
Merge pull request #4763 from lioncash/dspemitter
...
DSPEmitter: Make most public variables private
2017-01-27 18:10:02 +13:00
Matthew Parlane
64b0773fc0
Merge pull request #4651 from leoetlino/bt-pass-savestates
...
Fix savestates in Bluetooth passthrough mode
2017-01-27 18:07:33 +13:00
Lioncash
be52fcf651
DSPEmitter: Make most public variables private
...
Dispatchers and m_unresolved_jumps is utilized in code outside of the
emitter, so these are left as is for the time being.
2017-01-26 20:32:57 -05:00
Lioncash
970d969f63
DSPEmitter: Make conditional JIT functions in DSPJitBranch part of the emitter
...
These quite clearly have a dependency on the emitter itself, so these
should be a part of the emitter itself.
The template function can be modified to just simply take functions as a
parameter.
2017-01-26 20:32:34 -05:00
Lioncash
16aac00b8a
DSPEmitter: Move private variables below function declarations
2017-01-26 19:25:49 -05:00
Lioncash
ef52451954
DSPJitRegCache: Convert DSPJitSignExtend into an enum class
...
Prevents general names like SIGN, ZERO, and NONE from polluting the
surrounding namespace.
2017-01-26 18:33:50 -05:00
Lioncash
bdd7034fcb
DSPJitRegCache: Move allocation order array to the cpp file
...
As it's a private static implementation detail that doesn't rely on any
other internals of DSPJitRegCache, it can be hidden.
2017-01-26 17:12:55 -05:00
Lioncash
8f5ce50a25
DSPAssembler: Migrate VerifyParams over to an OpcodeType param instead of bool
2017-01-26 05:17:05 -05:00
Lioncash
6cb6707a4e
DSPTables: Hide remaining exposed opcode tables
...
All opcode tables are now internal.
2017-01-26 05:17:01 -05:00
Markus Wick
0a07df13d2
Merge pull request #4753 from lioncash/dspjit
...
DSPEmitter: Amend member variable naming
2017-01-26 10:33:03 +01:00
Lioncash
ac973e61bb
ES: Separate behavior of IOCtlV into separate functions
...
This function is exceptionally large. Everything within a switch like this
also makes it quite error prone. Separating the functions out makes it
easier to change a certain request implementation as well as improving
code locality.
2017-01-25 19:39:22 -05:00
Lioncash
3c88c248dd
ES: Convert typedef into a using alias
2017-01-25 19:31:13 -05:00
Lioncash
3cf3b50ab0
ES: Minor header reorganization
...
Places elements in the order:
- Structs/Enums definitions
- Functions
- Member variables
2017-01-25 19:31:13 -05:00
Lioncash
f4415dd99c
DSPEmitter: Amend member variable naming
...
Amends the variable names to follow our coding style.
2017-01-25 19:26:57 -05:00
Lioncash
c2e3bd8d2f
DSPAssembler: Amend printf specifiers in ShowError
...
code_line is a u32.
2017-01-25 17:20:25 -05:00
Lioncash
992b7f7ac0
DSPAssembler: Replace char buffer + sprintf with StringFromFormat
2017-01-25 17:20:21 -05:00
booto
c889c81d8f
58 is 0x3a in hex, not 0x31
2017-01-26 01:52:10 +08:00
Léo Lam
0df2ca702b
IOS: Get rid of static state in BT passthrough
2017-01-25 15:31:28 +01:00
Léo Lam
18957bdb0a
IOS: Fix savestates for Bluetooth passthrough
...
This fixes savestates when using Bluetooth passthrough by keeping track
of pending transfer commands and discarding them on state load, so that
the emulated software receives a reply to IOS requests as expected.
With this change, savestates in BT passthrough should work as long as
no Wiimote is connected when creating the savestate and when
restoring it. Yes, I know this is an important limitation -- but
that is probably the best we can do, and it's still better than
completely broken savestates.
2017-01-25 15:31:28 +01:00
Florent Castelli
103361c846
cmake: Change endforeach(.*) to endforeach()
2017-01-25 15:07:32 +01:00
Florent Castelli
87380c1c2c
cmake: Change endif(.*) to endif()
2017-01-25 15:07:32 +01:00
JosJuice
104faa9fb3
VolumeDirectory: Use case-insensitive comparison when sorting
...
This fixes a regression from 5.0-1556, but I don't know why
the regression occurred or why this fixes it. (Many games
failed to fully boot - I tried Metroid Prime and Twilight
Princess (both GC), and they never got to the title screen.)
2017-01-25 15:07:07 +01:00
Markus Wick
3c184dcf8d
Merge pull request #4742 from lioncash/dspasm
...
DSPAssembler: Replace malloced output buffer with std::vector
2017-01-25 14:49:36 +01:00
JosJuice
188d36ff26
ConfigManager: Refactor setting the region into a new function
2017-01-25 14:42:11 +01:00
Pierre Bourdon
18968abbd7
Merge pull request #4723 from booto/ios-init
...
Set up IOS RAM information area with real values.
2017-01-25 11:41:26 +01:00
Matthew Parlane
54e7d4a3dd
Merge pull request #4748 from lioncash/dspregcache
...
DSPJitRegCache: Make GetReg return by value
2017-01-25 22:49:16 +13:00
booto
d16ca2e5c8
Load IOS from TMD when launching non-IOS title.
2017-01-25 01:11:48 -05:00
Lioncash
3734d6f16c
DSPJitRegCache: Make GetReg return by value
...
Using out-references for this sort of thing is a C++03-ism.
2017-01-24 23:10:34 -05:00
degasus
d3aee2de08
JitCache: Split off JIT call from dispatcher.
...
This avoid flushing the BLR optimization stack on fast_block_cache misses.
2017-01-25 01:51:19 +01:00
JosJuice
8475b03bd8
ConfigManager: Always set a valid m_region
...
Fixes a regression from f85266d
that made WADs
with no detectable region not boot correctly.
The non-WAD code was already handling this correctly.
2017-01-24 16:34:08 +01:00
booto
3ba388138d
Set up IOS RAM information area with real values.
2017-01-24 09:48:21 -05: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
Matthew Parlane
221be63cb4
Merge pull request #4734 from leoetlino/info-ios-version
...
DolphinWX: Show the required IOS version in info panel
2017-01-24 18:47:14 +13: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
Lioncash
ed627a8cff
DSPAssembler: Replace malloced output buffer with std::vector
...
Same thing, less manual memory management.
2017-01-23 22:03:40 -05:00
Florent Castelli
0baf1c78c0
vs: Move defines out of Common.h to the build system
2017-01-24 03:55:46 +01:00
Florent Castelli
a7bf9271b5
Fix missing includes
2017-01-24 03:31:51 +01:00
Florent Castelli
c649bf104b
cmake: Prevent HAVE_OPENAL and HAVE_PORTAUDIO to be redefined
2017-01-24 03:22:03 +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
Matthew Parlane
f70a1a27fa
Merge pull request #4726 from ligfx/addingwindowsheaders
...
Fix building without PCH on Windows
2017-01-24 13:47:36 +13:00
Michael Maltese
0bc40cacda
No longer need to //clang-format off for Windows headers
2017-01-23 16:23:37 -08:00
Matthew Parlane
00c993143f
Merge pull request #4738 from EmptyChaos/pe-stackcheck-fix
...
PatchEngine: Fix potential crashing during stack probe
2017-01-24 11:27:44 +13:00
Matthew Parlane
98c4ceb3d1
Merge pull request #4737 from lioncash/bpmem
...
BPMemory: Minor changes
2017-01-24 11:00:25 +13:00
Lioncash
7a58a82a37
BPMemory: Add const specifier to member functions where applicable
2017-01-23 16:07:03 -05:00
Lioncash
1f596a23af
BPMemory: Eliminate union type punning
...
This is undefined behavior in C++.
2017-01-23 16:05:32 -05:00
EmptyChaos
49873b1287
MMU/PatchEngine: Fix potential crash during stack probe
...
TryReadInstruction doesn't validate the address it resolves, that
can result in Memory::GetPointer failing and returning nullptr
which then leads to a nullptr dereference and a crash.
Created PowerPC::HostIsInstructionRAMAddress which works the same
way as PowerPC::HostIsRAMAddress for the IBAT.
2017-01-24 08:05:11 +11:00
Léo Lam
3d21280ab4
DiscIO: Fix out-of-bounds access in NANDContentDataBuffer
...
Accessing buffer[start + size] triggers an error (and a crash) in debug
builds. Using std::copy_n fixes this.
2017-01-23 21:49:26 +01:00
Matthew Parlane
86b758d7ca
Merge pull request #4733 from leoetlino/expose-wad-tmd
...
VolumeWad: Implement GetTMD()
2017-01-24 09:20:14 +13:00
Léo Lam
b892d78872
VolumeWad: Implement GetTMD()
...
This allows getting useful info like the required IOS version for WADs
(for showing it in the UI, for example).
2017-01-23 20:59:02 +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
degasus
7f6b8e3555
JitCache: Extract ErasePhysicalRange as function.
2017-01-23 20:33:44 +01:00
degasus
70caf447b9
JitCache: Get physical addresses from PPCAnalyst.
...
So we support all kind of degenerated blocks now, not just range+length based ones.
2017-01-23 20:33:44 +01:00
degasus
3529af61c4
JitAnalyzer: Remove jit block cache workaround.
2017-01-23 20:33:44 +01:00
degasus
f3ed993747
JitCache: Use a map with macro blocks for the occupied memory regions.
...
This also allow fast invalidation, without any restritions on the blocks itself.
So we can now implement inlining.
2017-01-23 20:33:44 +01:00
degasus
dc0fbc15f0
JitCache: Drop block_map.
...
It is only used for invalidation, and in a bad way. Just scan over all elements,
as it is still in O(n), this shouldn't matter much.
2017-01-23 20:33:44 +01:00
Matthew Parlane
98311cd9f4
Merge pull request #4728 from lioncash/virtual-dtor
...
ControllerEmu: Add missing virtual destructor to BooleanSetting
2017-01-24 08:19:23 +13:00
Matthew Parlane
ee065181d7
Merge pull request #4730 from leoetlino/tmdreader
...
TMDReader: Add a way to get the required IOS version
2017-01-24 08:19:07 +13:00
Matthew Parlane
d97a2aba8d
Merge pull request #4731 from leoetlino/volumewad
...
Minor cleanup to VolumeWad
2017-01-24 08:18:02 +13:00
Lioncash
70cf774a5c
RenderBase: Forward declare EFBAccessType
2017-01-23 12:41:26 -05:00
Léo Lam
f89aaee91a
VolumeWad: Remove useless else after return
2017-01-23 18:17:34 +01:00
Léo Lam
2cd287baf7
VolumeWad: Add missing forward declaration
2017-01-23 18:17:34 +01:00
Léo Lam
6128679396
VolumeWad: Clean up variable naming
2017-01-23 18:07:23 +01:00
Léo Lam
6d909b3e30
VolumeWad: In-class initialise member variables
2017-01-23 18:07:21 +01:00
Léo Lam
0d8ddfb7d9
TMDReader: Add a way to get the required IOS version
2017-01-23 17:44:24 +01:00
Markus Wick
1c854f2daa
Merge pull request #4727 from lioncash/enum-class
...
VideoBackendBase: Convert EFBAccessType and FieldType into enum classes
2017-01-23 17:14:06 +01:00
JosJuice
6d879f7f3a
Merge pull request #4729 from lioncash/table
...
ES: Move the key table into the cpp file
2017-01-23 15:51:42 +01:00
Mat M
93faf26217
Merge pull request #4721 from RisingFog/remove_dead_audiodump_code
...
Remove dead audio dumping code
2017-01-23 09:17:11 -05:00
Chris Burgener
dd9709509c
Remove dead audio dumping code
2017-01-23 09:11:48 -05:00
Lioncash
fd772f6726
ES: Move the key table into the cpp file
...
This is a static implementation detail, so there's no need to bind it to the class directly.
This also makes the tables read-only.
2017-01-23 08:16:28 -05:00
Markus Wick
c0e8280240
Merge pull request #4706 from lioncash/dspasm
...
DSPAssembler: Minor cleanup
2017-01-23 12:12:01 +01:00
Lioncash
a9da2d9e20
ControllerEmu: Add missing virtual destructor to BooleanSetting
2017-01-23 05:08:19 -05:00
Markus Wick
4436011c50
Merge pull request #4725 from lioncash/attachments
...
Attachments: Minor cleanup
2017-01-23 10:55:04 +01:00
Lioncash
34768617d2
Attachment: Make constructors explicit where applicable
2017-01-23 04:42:27 -05:00
Lioncash
34262ee3d8
Attachment: Move implementation details into the cpp file
2017-01-23 04:42:26 -05:00
Lioncash
c87ee2a00e
Attachment: Use std::array over C arrays
2017-01-23 04:42:21 -05:00