Commit graph

17375 commits

Author SHA1 Message Date
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
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
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
Matthew Parlane
cb87b25ac6 Merge pull request #5106 from lioncash/constant
Memmap: Replace '0' constant with nullptr
2017-03-19 16:42:36 +13:00
Matthew Parlane
036d676230 Merge pull request #5107 from lioncash/unused
ES: Remove unused string format argument in LaunchPPCTitle
2017-03-19 16:41:28 +13:00
Lioncash
8e999b209a NetPlayClient: Eliminate variable shadowing
Gets rid of two -Wshadow warnings
2017-03-18 22:58:07 -04: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
3404057732 ES: Remove unused string format argument in LaunchPPCTitle
Gets rid of a -Wformat-extra-args warning.
2017-03-18 22:44:46 -04:00
Lioncash
2b8abddadf Memmap: Replace '0' constant with nullptr 2017-03-18 22:35:35 -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
Matthew Parlane
ce034a8186 Merge pull request #5101 from JosJuice/es-launch-wii-menu
Display a different error message when failing to ES_Launch the Wii Menu
2017-03-19 01:00:59 +13:00
JosJuice
998a215a0d Display a different error message when failing to ES_Launch the Wii Menu
Trying to return to the Wii Menu from a game is the easiest
way to trigger this error. Just saying 0000000100000002
when that happens doesn't mean much to most users.
2017-03-18 12:13:17 +01:00
JosJuice
9d54e4a9de Return a more meaningful type from GetSysMenuRegion 2017-03-18 10:13:36 +01:00
JosJuice
04c49aa395 Fix GetSysMenuRegion's handling of Wii Menu 1.0
This was a regression in 58bd129.
2017-03-18 10:13:31 +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
Markus Wick
609d195822 Merge pull request #5100 from VinDuv/fix-texture-type-checks
OGL: Fix texture_type checks in FrameBufferManager::CreateTexture
2017-03-18 08:35:44 +01:00
Matthew Parlane
8669426b0b Merge pull request #5092 from lioncash/namespace
SI: Namespace device classes
2017-03-18 19:30:38 +13:00
Vincent Duvert
bbb5945375 OGL: Fix texture_type checks in CreateTexture
The FrameBufferManager::CreateTexture (from the OpenGL backend) method introduced by commit 69cedf41 incorrectly compares the texture variable (which contains a name provided by glGenTextures) against GL_TEXTURE_2D_MULTISAMPLE_ARRAY and GL_TEXTURE_2D_MULTISAMPLE.
It should instead use the texture_type variable for this (as done in the first branch of the if).
2017-03-17 23:53:56 +01:00
Markus Wick
b7f605e88e Merge pull request #5097 from MerryMage/pic
PIE support for the DSP JIT
2017-03-17 22:24:03 +01:00
MerryMage
5e7d01dea4 DSPJitRegCache: Remove ebp_store
Restoring RBP before function calls is a no-op.
2017-03-17 17:10:25 +00:00
MerryMage
14739c55c3 DSP/Jit: PIE support 2017-03-17 17:10:24 +00:00
Markus Wick
b7ba391041 Merge pull request #5084 from MerryMage/Update_SR_Register
DSP/Jit: Explicitly specify scratch register for Update_SR_Register
2017-03-17 17:21:21 +01:00
Matthew Parlane
47fe78a76a Merge pull request #5094 from lioncash/magic
SI: Convert SI buffer from a C array to std::array
2017-03-17 20:49:26 +13:00
Matthew Parlane
9b883d999e Merge pull request #5095 from JosJuice/simplify-getsysmenuregion
Simplify GetSysMenuRegion
2017-03-17 20:47:36 +13:00