Léo Lam
9aaaa2b924
IOS/USB: Unref libusb devices manually
2017-03-26 15:58:30 +02:00
Léo Lam
32a1b5068a
Revert "Use a single libusb context"
...
This reverts commit c8a6dc6c23
.
libusb on Windows isn't really safe to use from different threads
with a single context.
2017-03-26 15:58:30 +02:00
BhaaL
a9afd5b243
fix incomplete end-tag
2017-03-26 14:44:42 +02:00
Léo Lam
6c62cfb1aa
IOS/BTReal: Properly check for libusb failures
2017-03-26 12:22:29 +02:00
Léo Lam
7b17163a7a
IOS/ES: Move shared content map, uid.sys code
...
These are all specific to ES and belong there.
The SharedContentMap and UIDSys classes were also modernised.
2017-03-26 12:16:28 +02:00
Léo Lam
3cfd9ea9b2
IOS/BTReal: Always use config descriptor 0
...
This may fix LIBUSB_ERROR_NOT_FOUND whenever devices end up being in
an unconfigured state. We don't need anything more than the first
config descriptor anyway.
2017-03-26 12:08:53 +02:00
Markus Wick
0b6170cc33
Merge pull request #5167 from stenzek/jit64-crash
...
Jit64: Fix crash at startup
2017-03-26 09:17:21 +02:00
Anthony
fbfb94ec79
Merge pull request #5157 from sepalani/sym-name
...
Fix wrong address in zz_ symbol name
2017-03-25 19:38:16 -07:00
Matthew Parlane
5d40daa507
Merge pull request #5123 from ligfx/fixwiimoteemu
...
WiimoteEmu: refer to settings by name, not index
2017-03-26 14:56:44 +13: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
Matthew Parlane
9dd9573ec0
Merge pull request #5148 from ligfx/iptopwarning
...
IP/Top: rename private methods à la HandleXRequest
2017-03-26 14:54:31 +13:00
Matthew Parlane
89de08d649
Merge pull request #5166 from ligfx/eglwarning
...
EGL: Fix missing-braces warning
2017-03-26 14:52:09 +13:00
Stenzek
724a8437eb
Jit64: Fix crash at startup
...
This was a regression introduced by 4d8d045
. stored_stack_pointer within
PPCSTATE was being accessed before the PPCSTATE (RBP) register was
initialized.
2017-03-26 11:37:55 +10:00
Matthew Parlane
4f160b2547
Merge pull request #5163 from lioncash/array
...
TextureCacheBase: Convert bound_textures from a C array to a std::array
2017-03-26 14:35:12 +13:00
Michael Maltese
3f8a471d64
EGL: Fix missing-braces warning
...
Fixes warning:
```
../Source/Core/Common/GL/GLInterface/EGL.cpp:57:7: warning: suggest braces around initialization of subobject [-Wmissing-braces]
EGL_OPENGL_BIT, (1 << 6), /* EGL_OPENGL_ES3_BIT_KHR */
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
2017-03-25 17:09:50 -07: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
Markus Wick
86e6b44271
Merge pull request #5146 from ligfx/mmuwarning
...
MMU: rewrite loop to avoid warning
2017-03-25 23:18:56 +01:00
Michael Maltese
4cd9a2ef1e
DiscIO: make sure to initialize out args to ReadSwapped
...
Fixes warnings:
```
../Source/Core/DiscIO/VolumeGC.cpp: In member function 'virtual u8 DiscIO::CVolumeGC::GetDiscNumber() const':
../Source/Core/DiscIO/VolumeGC.cpp:178:10: error: 'disc_number' may be used uninitialized in this function [-Werror=maybe-uninitialized]
return disc_number;
^
../Source/Core/DiscIO/VolumeWiiCrypted.cpp: In member function 'virtual u8 DiscIO::CVolumeWiiCrypted::GetDiscNumber() const':
../Source/Core/DiscIO/VolumeWiiCrypted.cpp:258:10: error: 'disc_number' may be used uninitialized in this function [-Werror=maybe-uninitialized]
return disc_number;
^
../Source/Core/DiscIO/VolumeWiiCrypted.cpp: In member function 'virtual IOS::ES::TMDReader DiscIO::CVolumeWiiCrypted::GetTMD() const':
../Source/Core/DiscIO/VolumeWiiCrypted.cpp:123:20: error: 'tmd_address' may be used uninitialized in this function [-Werror=maybe-uninitialized]
tmd_address <<= 2;
^
```
2017-03-25 13:50:23 -07:00
Lioncash
57c21b9576
TextureCacheBase: Convert bound_textures from a C array to a std::array
...
Prevents array-to-pointer decay and simplifies some code.
2017-03-25 14:53:25 -04:00
Markus Wick
4d8d0451e3
Merge pull request #5142 from MerryMage/stored_stack_pointer
...
JitAsm: Use stored_stack_pointer instead of s_saved_rsp
2017-03-25 17:37:48 +01:00
Markus Wick
3898707ef9
Merge pull request #5141 from MerryMage/ConvertDoubleToSingle
...
EmuCodeBlock: Place ConvertDoubleToSingle temporaries on the stack
2017-03-25 17:37:29 +01:00
Anthony
b099a1c02a
Merge pull request #5135 from lioncash/ini
...
IniFile: Minor changes
2017-03-24 19:33:09 -07:00
Anthony
e2a7e8a40d
Merge pull request #5143 from JosJuice/wii-menu-region-log
...
Clarify the log message for unknown Wii Menu regions
2017-03-24 19:31:52 -07:00
Sepalani
6eca605284
Fix wrong address in zz_ symbol name
2017-03-25 01:21:13 +00:00
JosJuice
f5469878ba
DVDInterface: Update comment about buffer speed
...
The actual code was changed based on mmastrac's hardware
tests, but it seems like we forgot to edit this comment.
2017-03-24 20:04:26 +01:00
Michael Maltese
a098fe57c5
IP/Top: rename private methods à la HandleXRequest
...
Fixes this warning everytime Top.h is included:
```
../Source/Core/Core/IOS/Network/IP/Top.h:76:20: warning: 'IOS::HLE::Device::NetIPTop::Close' hides overloaded virtual function [-Woverloaded-virtual]
IPCCommandResult Close(const IOCtlRequest& request);
^
../Source/Core/Core/IOS/Device.h:158:16: note: hidden overloaded virtual function 'IOS::HLE::Device::Device::Close' declared here: different number of parameters (0 vs 1)
virtual void Close();
^
```
2017-03-24 11:52:39 -07:00
Michael Maltese
8387b00f42
MMU: rewrite loop to avoid warning
...
Fixes warning:
```
dolphin/Source/Core/Core/PowerPC/MMU.cpp:278:43: warning: shift count >= width of type [-Wshift-count-overflow]
addr++, addr_translated++, val >>= 8)
```
2017-03-24 11:45:21 -07:00
JosJuice
a31bb7a27c
Clarify the log message for unknown Wii Menu regions
...
Saying just "title" made it seem like we are showing the title
ID, but what we actually are showing is the title version.
2017-03-24 16:44:38 +01:00
MerryMage
61198199cd
JitAsm: Use stored_stack_pointer instead of s_saved_rsp
2017-03-24 11:31:40 +00:00
MerryMage
918d7fa3d1
EmuCodeBlock: Place ConvertDoubleToSingle temporaries on the stack
2017-03-24 10:59:55 +00:00
Michael Maltese
0767c3d94d
DiscIO: add empty UNKNOWN_REGION case (fixes warning)
...
Fixes warning:
```
dolphin/Source/Core/DiscIO/Enums.cpp:171:11: warning: enumeration value 'UNKNOWN_REGION' not handled in switch [-Wswitch]
switch (GetSysMenuRegion(title_version))
^
```
2017-03-23 20:14:11 -07:00
Lioncash
b711daee5f
BitField: Get rid of a C-style cast
...
This can simply be the max value of the unsigned type.
2017-03-23 15:28:58 -04:00
Lioncash
e43c495ce5
BitField: Convert typedefs to using aliases
2017-03-23 15:28:50 -04:00
Lioncash
caef08988e
BitField: Make mostly constexpr capable
...
Makes the constructor and retrieval functions constexpr.
2017-03-23 11:45:45 -04:00
Markus Wick
6e2e48e9ea
Merge pull request #5137 from lioncash/arm
...
Arm64Emitter: Get rid of pointer casts in PoisonMemory
2017-03-23 15:52:58 +01:00
Markus Wick
4b5995a6e0
Merge pull request #5138 from lioncash/init
...
VertexLoaderBase: In-class initialize class members where applicable
2017-03-23 15:15:32 +01:00
Lioncash
da2e34f69b
VertexLoaderBase: In-class initialize class members where applicable
...
Same thing, less code.
2017-03-23 08:37:18 -04:00
Lioncash
a7ec2d3831
Arm64Emitter: Get rid of pointer casts in PoisonMemory
...
The previous code invokes undefined behavior.
2017-03-23 07:10:21 -04:00
Markus Wick
6d065a02b5
Merge pull request #5134 from degasus/texture_cache
...
TextureCache: Don't lock freed rendertargets for one frame.
2017-03-23 09:48:32 +01:00
Lioncash
1d6d85963f
ARDecrypt: const correctness
2017-03-22 20:35:00 -04:00
Lioncash
29ca22905b
IniFile: Replace a character erase with pop_back()
...
Same thing, more straightforward.
2017-03-22 19:32:10 -04:00
Lioncash
35959bdaf9
IniFile: Replace string joining code with JoinString
2017-03-22 19:30:15 -04:00
Lioncash
b92871111a
IniFile: std::move a std::string in GetLines
...
Also gets rid of an unnecessary string copy.
2017-03-22 19:09:25 -04:00
Lioncash
dbdf693c81
IniFile: Use character literals instead of string literals where applicable
...
Character overloads are generally better overall (range checks aren't
necessary, etc).
2017-03-22 19:03:17 -04:00
Lioncash
d8998b6392
IniFile: Provide an rvalue reference overload for SetLines
...
Allows moving in vectors instead of performing an unnecessary copy.
2017-03-22 18:49:13 -04:00
Lioncash
46d74a7760
IniFile: Make Section's string constructor instances take strings by value
...
As the name is immediately stored into a class member, a move here is a
better choice.
This also moves the constructor implementations into the cpp file to
avoid an otherwise unnecessary inclusion in the header. This is also
likely a better choice as Section contains several non-trivial members,
so this would avoid potentially inlining a bunch of setup and teardown
code related to them as a side-benefit.
2017-03-22 18:47:19 -04:00
degasus
ca8d9e2215
TextureCache: Don't lock freed rendertargets for one frame.
...
New Super Mario Bros on PAL still renders at 60 fps, but skips every 5th XFB copy.
So our detection of "per frame" fails, and we require twice the amound of texture objects.
But our pool frees unused textures after 3 frames, so half of them needs to be reallocated
every few frames.
This commit removes the lock for render targets. It was introduced to not update a texture
while it is still in use. But render targets aren't updated while rendering, so this
lock isn't needed. Non-rendertarget textures however aren't as dynamic, so the lock should
have no performance update.
2017-03-22 23:28:42 +01:00
Lioncash
99adc73383
IniFile: Make Section constructor explicit
2017-03-22 18:07:23 -04:00
Markus Wick
9ea59133b3
Merge pull request #5121 from MerryMage/children-happen
...
Jit64: Merge memory allocations into a single allocation
2017-03-22 22:42:46 +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
Matthew Parlane
8804f759b9
Merge pull request #5127 from lioncash/gcode
...
GeckoCodeConfig: Minor changes
2017-03-23 07:13:45 +13:00
Markus Wick
09f4d494ef
Merge pull request #5132 from ligfx/commentoutpagetagshift
...
MMU: comment-out unused var HW_PAGE_TAG_SHIFT
2017-03-22 09:43:45 +01:00
Michael Maltese
da6a1daef6
MMU: remove unused var HW_PAGE_TAG_SHIFT
...
It's not used, so produces a warning during compilation.
2017-03-21 23:47:10 -07:00
Michael Maltese
9e430cbdd6
Breakpoints.cpp: fix format string warnings
...
Fixes warnings:
```
dolphin/Source/Core/Core/PowerPC/BreakPoints.cpp:246:89: warning: format specifies type 'int' but the argument has type 'unsigned long' [-Wformat]
debug_interface->GetDescription(pc).c_str(), write ? "Write" : "Read", size * 8,
^~~~~~~~
dolphin/Source/Core/Core/PowerPC/BreakPoints.cpp:245:50: warning: field width should have type 'int', but argument has type 'unsigned long' [-Wformat]
NOTICE_LOG(MEMMAP, "MBP %08x (%s) %s%zu %0*x at %08x (%s)", pc,
~~~^
```
2017-03-21 23:25:17 -07:00
Lioncash
2f52d04e30
GeckoCodeConfig: Use compare instead of substr for comparing substrings
...
Gets rid of an unnecessary string construction.
2017-03-21 18:12:40 -04:00
Matthew Parlane
a32a2d1a02
Merge pull request #5126 from leoetlino/version
...
UICommon: Don't print --version option twice
2017-03-22 11:10:36 +13:00
Lioncash
0d0e9f626d
GeckoCodeConfig: Amend unnecessary string literals to char literals
...
Also gets rid of an unnecessary std::string construction in a loop.
std::string already has an operator+ overload to prepend characters.
2017-03-21 18:03:06 -04:00
Lioncash
28235b5cb6
GeckoCodeConfig: Remove unused commented out code
2017-03-21 18:03:06 -04:00
Lioncash
f0fa692457
GeckoCodeConfig: Move gecko code title building to its own function
...
Keeps it separate from the rest of the saving code and also allows for
easy rvalue-reference moving into the lines vector as a side-benefit.
2017-03-21 18:03:02 -04:00
Léo Lam
3028158873
UICommon: Don't print --version option twice
...
cpp-optparse already has the --version option built-in, so having our
own version option results in --version being shown twice.
2017-03-21 22:29:01 +01: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
Michael Maltese
7c52b8f838
WiimoteEmu: refer to settings by name, not index
...
Fixes https://bugs.dolphin-emu.org/issues/10159 "Emulated Wii remote
options not working correctly," which was introduced by PR #4856 : "Move
'Background Input' out of individual controller configurations."
2017-03-21 13:31:42 -07:00
MerryMage
cb7d9556bf
Jit64: Merge memory allocations into a single allocation
...
Instead of each component allocating their own memory, we instead allocate
the memory once and divvy that up among the components as required. This
ensures that relative memory offsets remain within architecture limits.
2017-03-21 20:16:12 +00:00
MerryMage
da434e1a1c
ConstantPool: Externalize memory allocation
2017-03-21 20:16:12 +00:00
MerryMage
615fcc621d
CodeBlock: Add support for multiple children
2017-03-21 20:16:12 +00:00
Lioncash
780dffcb13
FifoDataFile: In-class initialize member variables where applicable
2017-03-21 15:41:05 -04:00
Lioncash
4e5e7cff0a
FifoRecorder: In-class initialize member variables where applicable
2017-03-21 15:41:05 -04:00
Lioncash
eda27ee397
FifoPlayer: In-class initialize member variables where applicable
2017-03-21 15:40:56 -04:00
Lioncash
0d1bc53e55
JitBase: Rename MergeAllowedNextInstructions to CanMergeNextInstructions
...
This is more indicative that it's checking for something
2017-03-21 13:50:03 -04:00
Lioncash
f98211bfcf
JitBase: Make MergeAllowedNextInstructions a const member function
2017-03-21 13:45:18 -04:00
Markus Wick
f03fa54bcb
Merge pull request #5116 from degasus/ArmRegCache
...
JitArm64: Fix usages in conditional code.
2017-03-21 18:14:16 +01:00
MerryMage
8a788ebdd9
JitAsm: Add missing forward declaration of X64CodeBlock
2017-03-21 16:56:43 +00:00
Anthony
d2690568f9
Merge pull request #5110 from MerryMage/const-pool
...
Jit64: Implement a constant pool
2017-03-20 13:29:57 -07:00
MerryMage
4491e9b829
Jit_SystemRegisters: Add missing sizes to constant arrays
2017-03-20 20:21:43 +00:00
MerryMage
9058ccea3f
IR_X86: Use MConst for constants
2017-03-20 20:21:43 +00:00
MerryMage
3dccc369d3
Jit64AsmCommon: Use MConst for constants
2017-03-20 20:21:43 +00:00
MerryMage
4814c4ac5a
EmuCodeBlock: Use MConst for constants
2017-03-20 20:21:43 +00:00
MerryMage
8b93baefb7
Jit_SystemRegisters: Use MConst for constants
2017-03-20 20:21:43 +00:00
MerryMage
0fe234ec9b
Jit_FloatingPoint: Use MConst for constants
2017-03-20 20:21:42 +00:00
MerryMage
ff441efc26
EmuCodeBlock: Use ConstantPool
2017-03-20 20:21:42 +00:00
MerryMage
9951961338
ConstantPool: Implement a constant pool
...
Constants are copied into this pool so that they live at a memory
location that is close to the code that references it. The pool allocates
memory from a provided X64CodeBlock to use.
The purpose of the pool is to overcome the 32-bit offset limitation that
RIP-relative addressing has.`
2017-03-20 20:21:42 +00:00
MerryMage
b0d6c29073
JitAsmCommon: Add missing sizes to constant arrays
...
This allows generic code to determine the size of these arrays.
2017-03-20 20:21:41 +00:00
degasus
c5b9c740c9
JitArm64: Fix gpr.R() usages in conditional code.
2017-03-20 21:18:13 +01:00
degasus
f7a52c0c35
JitArm64: Fix gpr.GetReg usages in conditional code.
2017-03-20 21:18:13 +01:00
Anthony
26bb26fe54
Merge pull request #4901 from JosJuice/filemonitor-redesign
...
FileMonitor redesign
2017-03-20 12:46:19 -07: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
Markus Wick
5cc55f0fe3
Merge pull request #5096 from Armada651/anything-with-a-viewport
...
VertexShaderGen: Correct for negative viewport dimensions.
2017-03-20 10:55:56 +01: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
Matthew Parlane
9da35edd15
Merge pull request #5093 from JosJuice/six-char-game-ids
...
Use 6-char game IDs for NAND tiles (if they are printable)
2017-03-20 13:38:35 +13:00
Matthew Parlane
910360f7e7
Merge pull request #5085 from leoetlino/es-nandutils
...
IOS: Add NandUtils
2017-03-20 13:27:17 +13:00
Matthew Parlane
a20b73cfb4
Merge pull request #5112 from MerryMage/quantize
...
Jit64AsmCommon: Use correct quantization table
2017-03-20 13:26:38 +13:00
MerryMage
5f59755d15
Jit64AsmCommon: Use correct quantization table
...
Stores quantize, loads dequantize.
2017-03-19 14:49:24 +00:00
Lioncash
35c230a418
NetPlayServer: const correctness
2017-03-19 09:36:40 -04:00
Lioncash
025eac9062
NetPlayClient: const correctness
2017-03-19 09:32:58 -04:00
Léo Lam
98e27ad9cb
IOS/ES: Use FindInstalledTMD instead of content loader
...
Proper semantics.
IOS only cares about the TMD and nothing else, so we should use
FindInstalledTMD, instead of reading/parsing/decrypting a bunch of
useless stuff, which is slow *and* causes issues because of the cache.
2017-03-19 11:27:34 +01:00
Léo Lam
8984112501
IOS/ES: Move GetStoredContentsFromTMD to NandUtils
2017-03-19 11:10:45 +01:00
Léo Lam
0ed8d68192
IOS/ES: Add functions to get TMDs
2017-03-19 11:10:45 +01:00
Léo Lam
194b0ae36d
IOS: Add NandUtils
...
This keeps the ES specific NAND code in a single place and makes it
reusable. Eventually, other ES specific code will be moved to it.
2017-03-19 11:10:45 +01:00