Léo Lam
47bf809796
Merge pull request #7060 from lioncash/reg
...
Gekko: Make register constructors explicit where applicable
2018-06-03 21:04:34 +02:00
Léo Lam
6b9aef7042
FS: Add a struct for modes
...
As suggested here: https://dolp.in/pr7059#pullrequestreview-125401778
More descriptive than having a std::tuple of FS::Mode, and lets us
give names to known triplets of modes (like in ES). Functions that
only forward mode arguments are slightly less verbose now too.
2018-06-03 20:45:35 +02:00
Lioncash
06056d4f45
Gekko: Make register constructors explicit where applicable
...
Prevents implicit conversions to types and requires explicitly
specifying them in order to construct instances of them. Given these are
used within emulation code directly, being explicit is always better
than implicit.
2018-06-03 12:37:17 -04:00
Léo Lam
d1a8661709
WiiSave: Save and restore files and banner with correct mode
2018-06-03 17:23:40 +02:00
Léo Lam
fd3472442d
WiiSave: Use new filesystem interface
...
Converts WiiSave to the new filesystem interface.
2018-06-03 17:01:14 +02:00
Léo Lam
c22205cd7e
Merge pull request #7053 from lioncash/frfi
...
Interpreter_FPUtils/FloatingPoint/Paired: Amend cases where FPSCR.FR and FPSCR.FI should be unset
2018-06-03 15:36:12 +02:00
Léo Lam
83324fe77d
StringUtil: Remove ValueToString(std::string)
...
Doesn't make a lot of sense to have a function that gives the string
representation for a string.
2018-06-03 15:11:59 +02:00
Léo Lam
7e79bf97ab
IniFile: Use templates for Get()
...
Gets rid of duplicated code.
2018-06-03 14:53:56 +02:00
Léo Lam
cba32b12e7
IniFile: Use templates for Set()
2018-06-03 14:53:56 +02:00
Lioncash
3e63d71046
Gekko: Add helper function for clearing both FPSCR.FI and FPSCR.FR
2018-06-03 08:27:18 -04:00
Léo Lam
fc0193c4b1
Move Config ValueToString to StringUtil
...
An identical implementation is used by IniFile, so move those functions
to StringUtil. A future commit will modify IniFile to use them.
2018-06-03 14:10:52 +02:00
Léo Lam
66ee47c417
Merge pull request #7056 from spycrab/qt_hk_debug
...
Qt/HotkeyWindow: Always show debugging tab
2018-06-03 13:50:56 +02:00
spycrab
0cc20e95fe
Qt/HotkeyWindow: Always show debugging tab
2018-06-03 13:40:57 +02:00
spycrab
327eb1336b
Merge pull request #7055 from spycrab/qt_other_state
...
Qt/Hotkeys: Implement missing "Other State Management" tab
2018-06-03 13:32:42 +02:00
spycrab
9c26a1a458
Qt/Hotkeys: Implement missing "Other State Management" tab
2018-06-03 12:44:02 +02:00
Léo Lam
1e51e263e0
Merge pull request #6988 from leoetlino/wii-save-refactor
...
WiiSave: Refactor the import/export code
2018-06-03 12:05:43 +02:00
Léo Lam
86368fcd4d
Merge pull request #6499 from Ebola16/SettingsGroup
...
Android: Initial implementation of Interface submenu
2018-06-03 12:02:56 +02:00
Léo Lam
24ca621652
Merge pull request #7052 from AdmiralCurtiss/pokemon-colosseum-bonus-disc-ini
...
Update GameINI settings for the Japanese Pokémon Colosseum Bonus Discs.
2018-06-03 11:58:46 +02:00
Léo Lam
a2b2a31e64
Merge pull request #7054 from JosJuice/android-no-themes
...
Don't include the Themes directory in Android APKs
2018-06-03 11:55:08 +02:00
JosJuice
2062768bb2
Don't include the Themes directory in Android APKs
...
We already exclude the Resources folder. Let's do the same with Themes.
2018-06-03 11:11:24 +02:00
Lioncash
d6bafbfaaf
Interpreter_Paired: Handle signaling NaNs within ps_res and ps_rsqrte
...
Like regular fres and frsqrte, these also signal whether or not either
of the inputs are signaling NaNs.
2018-06-02 20:47:18 -04:00
Lioncash
d05c2ef90d
Interpreter_Paired: Unset FPSCR.FI and FR in ps_res and ps_frsqrte in exceptional cases
...
If invalid operation exceptions or zero divide exceptions occur in
either of these instructions, FI and FR are supposed to be unset.
2018-06-02 20:42:47 -04:00
Lioncash
83774f72ad
Interpreter_FloatingPoint: Unset FPSCR.FI and FPSCR.FR if a division by zero exception occurs in fres and frsqrte
...
Within the programming environments manual, part of the behavior of a
zero divide exception condition is that FI and FR be cleared.
2018-06-02 20:26:20 -04:00
Lioncash
468efb7243
Interpreter_FPUtils: Unset FPSCR.FI and FPSCR.FR if an invalid operation occurs in NI_* functions
...
If an invalid operation occurs, FI and FR bits are defined to be cleared
to zero for arithmetic operations.
2018-06-02 20:18:51 -04:00
Admiral H. Curtiss
2b1bfc886a
Update GameINI settings for the Japanese Pokémon Colosseum Bonus Discs.
...
These discs use the Pokémon Colosseum engine and thus need Safe Texture Cache for scrolling text to display correctly.
2018-06-03 01:50:29 +02:00
Anthony
0f7370a22c
Merge pull request #7051 from lioncash/frsqrte
...
Interpreter_FloatingPoint: Don't store to destination in frsqrte if VE or ZE is set and a relevant exception occurs
2018-06-02 13:49:09 -07:00
spycrab
ba471c3214
Merge pull request #7048 from spycrab/qt_fs_size
...
Qt/FilesystemWidget: Add size column
2018-06-02 21:45:02 +02:00
Léo Lam
396810c450
Merge pull request #7050 from lioncash/ptr
...
WiimoteDevice: Get rid of pointer casting in CBigEndianBuffer
2018-06-02 21:35:43 +02:00
Lioncash
21add26b71
Interpreter_FloatingPoint: Clear FPSCR.FI and FPSCR.FR in invalid operation cases
...
As explained within 179d73ac0d
, the table
within the Programming Environments Manual for PowerPC lists the FI and
FR bits as cleared for invalid operation cases. So, we amend the
relevant cases here in order to be accurate to hardware.
2018-06-02 15:30:56 -04:00
Lioncash
b71a9e658f
Interpreter_FloatingPoint: Don't store to destination in frsqrte if VE or ZE is set and a relevant exception occurs
...
As explained within commit a08ad82ace
, if
an invalid exception occurs and VE is set, then the destination register
should remain unchanged. Ditto for when ZE is set and a zero divide
exception occurs.
2018-06-02 15:27:14 -04:00
Lioncash
f6c4c05d93
WiimoteDevice: Make CBigEndianBuffer's constructor explicit
...
Prevents implicit construction of buffers.
2018-06-02 15:10:51 -04:00
Lioncash
4601136b08
WiimoteDevice: Get rid of pointer casting in CBigEndianBuffer
...
Gets rid of more places where we can violate alignment requirements and
aliasing rules.
2018-06-02 15:02:03 -04:00
Lioncash
13e828fd4d
WiimoteDevice: Move CBigEndianBuffer to the cpp file
...
This is only used internally, so we don't need to expose it in the
header. This also allows getting rid of inclusion of the byte swapping
utilities in the header as well.
2018-06-02 14:55:05 -04:00
Anthony
8d1b2f9cae
Merge pull request #7045 from lioncash/fres
...
Interpreter_FloatingPoint: Don't store to destination in fres if VE or ZE is set and a relevant exception occurs
2018-06-02 11:42:34 -07:00
Anthony
c02a239a2f
Merge pull request #7049 from lioncash/ipl
...
EXI_DeviceIPL: Minor changes
2018-06-02 11:40:27 -07:00
Lioncash
b1c7ce75e4
EXI_DeviceIPL: Replace superfluous virtual with override on destructor
2018-06-02 14:18:49 -04:00
Lioncash
0d89650950
EXI_DeviceIPL: Use std::array where applicable
2018-06-02 14:18:02 -04:00
Lioncash
bf4775f95f
EXI_DeviceIPL: Normalize variable names
...
Makes naming consistent with our coding style.
2018-06-02 14:14:08 -04:00
Lioncash
b6203c66c2
EXI_DeviceIPL: In-class initialize data members where applicable
2018-06-02 14:08:01 -04:00
spycrab
f6865117e4
Qt/FilesystemWidget: Add size column
2018-06-02 18:59:56 +02:00
Léo Lam
f09f83c309
Merge pull request #7019 from Ebola16/VSQT
...
Make DolphinQT2 the default project in dolphin-emu.sln
2018-06-02 14:23:20 +02:00
Léo Lam
62fdef0e6c
Merge pull request #7046 from lioncash/priv
...
EXI_DeviceMic: Make data members of CEXIMic private
2018-06-02 11:53:07 +02:00
Mat M
d67de4cc15
Merge pull request #6038 from stenzek/update-glslang
...
Externals: Update glslang to upstream commit 32d3ec3
2018-06-02 03:54:04 -04:00
Stenzek
bc96557ec4
Externals: Update glslang to upstream commit 32d3ec3
2018-06-02 07:34:31 +00:00
Pierre Bourdon
160d16f1b3
Merge pull request #7047 from spycrab/analytics_update_channel
...
Analytics: Report update track
2018-06-02 14:45:29 +09:00
spycrab
0e8db9fd1d
Analytics: Report update track
2018-06-02 05:59:03 +02:00
Lioncash
3906859984
EXI_DeviceMic: Remove unimplemented StreamLog function prototype
2018-06-01 20:43:28 -04:00
Lioncash
9e068ad2c4
EXI_DeviceMic: Make data members of CEXIMic private
...
Given they were only made public so that the callback could access class
state, we can simply make the callback a private static function of
CEXIMic, which allows access to members from the callback function
without making all of said members public.
2018-06-01 20:43:28 -04:00
Lioncash
179d73ac0d
Interpreter_FloatingPoint: Clear FPSCR.FI and FPSCR.FR if an SNaN is an input to fres
...
In the PEM manual, within Table 3-12, which lists what should occur for
invalid operation exceptions, the FPSCR.FI and FPSCR.FR bits are listed
as "Cleared" for when FPSCR.VE is unset and set. So we clear these bits
as well to match hardware behavior.
2018-06-01 20:21:13 -04:00
Lioncash
a08ad82ace
Interpreter_FloatingPoint: Don't store to destination in fres if VE or ZE is set and a relevant exception occurs
...
In the PowerPC Microprocessor Family: The Programming Environments
Manual for 32 and 64-bit Microprocessors, in section 3.3.6.1, Table
3-12 lists what should occur if an invalid operation exception occurs in
situations where VE is set and when VE is not set. In the case where VE
is set, it lists the frD as "Unchanged". It also lists the FPRF flags as
"Unchanged".
Further down in Table 3-13, the listings for what should occur when zero
divide exceptions occur is listed, both for when ZE is set, and when it
isn't. When ZE is set, it lists frD as "Unchanged". It also lists the
FPRF flags as "Unchanged" as well.
This also alters the code so that we don't even calculate the result if
we don't need to compute it, making it a little bit less wasteful.
2018-06-01 20:21:09 -04:00