Lioncash
5eef8ba984
EfbInterface: Make efb and perf_values std::arrays
2018-05-18 16:23:29 -04:00
Lioncash
dc788042ef
MMU: Use Common::BitCast where applicable
...
Gets rid of more memcpy boilerplate for properly reinterpreting bits.
2018-05-18 16:05:49 -04:00
Lioncash
c58b5e9b9b
EfbInterface: Make perf_values internally linked
...
Instead, expose functions to operate with it. This way we keep the
internal representation concealed.
2018-05-18 15:35:08 -04:00
Lioncash
f3a8874214
EfbInterface: Move efb array into the EfbInterface namespace
2018-05-18 15:09:37 -04:00
Léo Lam
f82e2f0b92
ES: Fix content check in ImportTitleDone
...
ImportTitleDone only checks if all required contents have been imported
for system titles.
This fixes the system menu not being able to recreate title directories
to copy a save back to the NAND by using title import functionality.
2018-05-18 20:59:33 +02:00
Léo Lam
473cbfa951
ES: Add more logging in title import functions
...
...to make troubleshooting easier.
2018-05-18 20:59:29 +02:00
Léo Lam
bb2c3bd572
Merge pull request #6894 from lioncash/mem
...
BPMemory: Use Common::BitCast where applicable
2018-05-18 20:35:18 +02:00
Lioncash
4dbd6f6bbc
BPMemory: Use Common::BitCast where applicable
...
Gets rid of memcpy boilerplating for reinterpreting bits properly.
2018-05-18 14:25:44 -04:00
Tilka
24eeffea7d
Merge pull request #6892 from lioncash/mask
...
Interpreter_Branch: Make type of the bitmask in rfi a u32 instead of int
2018-05-18 19:20:03 +01:00
spycrab
5e3d7dc162
Qt/HacksWidget: Fix slider not showing overridden settings
2018-05-18 20:19:21 +02:00
spycrab
707b966496
Qt/GameConfigWidget: Fix checkboxes not being saved properly
2018-05-18 20:15:14 +02:00
Lioncash
9911e51c8f
Interpreter_Branch: Make type of the bitmask in rfi a u32 instead of int
...
Given this is a bitmask, we should be using an unsigned type to store it
(especially given it's outside the range an int can represent properly
without being considered negative).
No behavior change is caused by this, it just silences a sign conversion
warning.
2018-05-18 13:39:56 -04:00
spycrab
57f9928c49
Merge pull request #6891 from spycrab/qt_fs_glitch
...
Qt/HotkeyScheduler: Fix toggle fullscreen glitches
2018-05-18 19:30:42 +02:00
Léo Lam
49c9c1ee40
Merge pull request #6853 from aldelaro5/qt-debugger-hotkey-fixes
...
Qt debugger hotkey fixes
2018-05-18 19:06:17 +02:00
spycrab
cc55817ec9
Qt/HotkeyScheduler: Fix toggle fullscreen glitches
2018-05-18 09:40:03 +02:00
spycrab
eef2092854
Qt/D3D: Fix render widget size not being restored properly
2018-05-18 09:27:56 +02:00
spycrab
9bdf7c4b5a
Merge pull request #6890 from aldelaro5/qt-fix-random-windows
...
Qt/CheatWarningWidget: properly supply a parent for the widget
2018-05-18 08:08:42 +02:00
aldelaro5
6dd5a3a866
Qt/CheatWarningWidget: properly supply a parent for the widget
...
Because it wasn't parented properly, it would show briefly the widget in its own window when creating an ARCodeWidget or a GeckoCodeWidget which would occur when accessing the game properties page or when the state changes to pause/running.
2018-05-18 01:31:43 -04:00
Tilka
bdce441bb9
Merge pull request #6889 from lioncash/mmu
...
PowerPC: Move MMU-specifics from PowerPC.h to MMU.h
2018-05-18 02:28:13 +01:00
Tilka
cbc85d928b
Merge pull request #6860 from Zexaron/qt_generalwidget_remove_wrong_description
...
Qt/GeneralWidget remove unnecesary description wiring
2018-05-18 02:24:08 +01:00
Lioncash
b9aad3310e
PowerPC: Move MMU-specifics from PowerPC.h to MMU.h
...
PowerPC.h at this point is pretty much a general glob of stuff, and it's
unfortunate, since it means pulling in a lot of unrelated header
dependencies and a bunch of other things that don't need to be seen by
things that just want to read memory.
Breaking this out into its own header keeps all the MMU-related stuff
together and also limits the amount of header dependencies being
included (the primary motivation for this being the former reason).
2018-05-17 19:18:55 -04:00
Tilka
e67f2dcada
Merge pull request #6888 from lioncash/qt-override
...
DolphinQt2: Minor changes
2018-05-17 22:16:23 +01:00
Lioncash
c1f92d304f
DolphinQt2/NetPlay/GameListDialog: Make GetSelectedUniqueID() const qualified
...
Given this member function returns a const reference to a QString, it
can be made const qualified, since it doesn't modify internal state.
2018-05-17 16:35:48 -04:00
Tilka
6ef7578321
Merge pull request #6886 from lioncash/dqt
...
DolphinQt2/Settings: Remove unimplemented IsInDevelopmentWarningEnabled() prototype
2018-05-17 21:33:37 +01:00
Tilka
a825ddf466
Merge pull request #6885 from lioncash/namespace
...
Common/CodeBlock: Namespace code under the Common namespace
2018-05-17 21:33:12 +01:00
Lioncash
c98a8b59d5
DolphinQt2/NetPlay: Mark constructors explicit where applicable
2018-05-17 16:33:05 -04:00
Tilka
7c9b0eb7ce
Merge pull request #6884 from lioncash/bit
...
Interpreter_LoadStorePaired: Use Common::BitCast where applicable
2018-05-17 21:32:37 +01:00
Lioncash
dfa1126946
DolphinQt2: Add missing override specifiers
2018-05-17 16:28:35 -04:00
Lioncash
3d8cca2682
DolphinQt2/Settings: Remove unimplemented IsInDevelopmentWarningEnabled() prototype
...
The "in development" dialog was removed quite a while ago, so this is
just a leftover remnant that must have been missed during said removal.
2018-05-17 16:09:56 -04:00
spycrab
0b5d29a347
Merge pull request #6883 from spycrab/qt_fix_hk_state
...
Qt/HotkeyScheduler: Fix state loading
2018-05-17 22:08:57 +02:00
Lioncash
1c63a48fab
Common/CodeBlock: Namespace code under the Common namespace
...
Brings more common code under the Common namespace.
2018-05-17 15:57:29 -04:00
spycrab
72a66d3fbb
Merge pull request #6877 from aldelaro5/qt-debugger-load-symbols
...
Qt/debugger: properly update when we load the symbols on boot
2018-05-17 21:41:55 +02:00
aldelaro5
65d2a6c590
Qt/debugger: properly update when we load the symbols on boot
...
This host event is still useful because the emu thread will load the symbols on boot if required.
2018-05-17 15:33:47 -04:00
Lioncash
dbe550f7ef
Interpreter_LoadStorePaired: Use Common::BitCast where applicable
...
Gets rid of more memcpy boilerplate code to reinterpret bits. This also
allows us to make variables const where applicable as well.
2018-05-17 15:27:07 -04:00
spycrab
f25213139d
Qt/HotkeyScheduler: Fix state loading
2018-05-17 20:27:14 +02:00
Jonathan Hamilton
b30d56ccc0
Texture AverageDiff: Do more in int space and avoid excessive float conversion
...
Multiplying 2x 8bit values is guaranteed to fit in 16bits, 4 channels then in
18bits, which means an 'int' shouild be sufficient to avoid overflows
2018-05-17 09:39:39 -07:00
spycrab
f51eba9e79
Merge pull request #6879 from aldelaro5/qt-no-screensaver-pause-play
...
Qt: do not toggle the screensaver when pausing or playing
2018-05-17 13:22:46 +02:00
aldelaro5
0a2357f044
Qt/hotkeys: do not show the debugging tab if the debugger is disabled
2018-05-17 07:22:34 -04:00
aldelaro5
3d9d516bd3
Qt: do not toggle the screensaver when pausing or playing
...
This fixes 2 crashes with the pause function. One is when spamming the pause hotkey and the other is to press pause and step hotkeys at the same time. It does disable the screensaver getting disabled when the emulator is running, but paused, though, a better solution would have to be done without introducing these crashes.
2018-05-17 07:14:44 -04:00
Markus Wick
87a29eb602
Merge pull request #6881 from lioncash/build
...
Interpreter_FloatingPoint: Fix build in frspx()
2018-05-17 11:05:18 +02:00
Lioncash
abefbf032e
Interpreter_FloatingPoint: Fix build in frspx()
...
Github didn't detect conflicts here, however, since the float handling
functions were moved into the Common namespace, this would cause a build
failure.
2018-05-17 04:55:48 -04:00
Markus Wick
bc8d87bbfd
Merge pull request #6880 from lioncash/macro
...
PowerPC: Parenthesize GQR macro argument
2018-05-17 10:55:19 +02:00
Lioncash
ddbe292d54
PowerPC: Parenthesize GQR macro argument
...
Ideally none of these macros would exist (long-term goal), however in
the meantime at least make sure expressions always evaluate correctly
(thankfully no current usages rely on this).
2018-05-17 04:48:29 -04:00
Markus Wick
c485efdfe1
Merge pull request #6743 from stenzek/faster-disabled-copy-filter
...
TextureConversionShader: Don't sample from adjacent rows when not needed
2018-05-17 10:45:50 +02:00
Markus Wick
6ed3f8b474
Merge pull request #6634 from lioncash/frsp
...
Interpreter_FloatingPoint: Handle SNaNs and QNaNs properly in frsp
2018-05-17 10:43:14 +02:00
Markus Wick
3e6a706858
Merge pull request #6878 from lioncash/type
...
PowerPC/Interpreter: Avoid sign conversion with utility functions
2018-05-17 10:04:26 +02:00
Markus Wick
1424964678
Merge pull request #6856 from lioncash/cached-hook
...
PowerPC: Factor common part of function hooking code out of the interpreter and JITs
2018-05-17 09:45:17 +02:00
Lioncash
3f19aa6469
PowerPC/Interpreter: Avoid sign conversion with utility functions
...
Given we're operating with flags and bit representations, lets avoid
signed values here. It lessens the amount of sign conversion warnings
and lessens the amount of things to think about screwing you over when
making changes to the interpreter among other things.
2018-05-16 22:21:26 -04:00
Tilka
5b96abf7aa
Merge pull request #6872 from lioncash/exi
...
EXI_DeviceEthernet: Minor cleanup
2018-05-17 02:17:22 +01:00
Tilka
82d9dea245
Merge pull request #6873 from lioncash/bit
...
Interpreter_FPUtils: Use Common::BitCast where applicable
2018-05-17 02:12:07 +01:00
Tilka
975a10b3bd
Merge pull request #6876 from lioncash/var
...
Interpreter_SystemRegisters: Clean up variable naming
2018-05-17 02:09:25 +01:00
Jonathan Hamilton
61a81795e5
Change the arbitrary mipmap detection to use the square of the error
...
Hopefully this better matches the user's view of a texture - as large changes in
colour should be weighted higher than lots of very small changes
Note: This likely invalidates the current heuristic threshold default
2018-05-16 17:51:50 -07:00
Jonathan Hamilton
8be5cdfcad
Make the arbitrary mipmap detection threshold configureable
...
This is likely a "superuser" option at best, but I want to be able to play with
it without rebuilding if I want to tweak the heuristics
2018-05-16 17:49:19 -07:00
Lioncash
d80552b34a
Interpreter_SystemRegisters: Clean up variable naming
...
Cleans up remnant instances of Hungarian notation being used in variable
names along with other spotted deviations.
2018-05-16 20:41:34 -04:00
Jonathan Hamilton
29b7e33c14
Make arbitrary mipmap detection a config option
...
Under GFX::Enhancements::ArbitraryMipmapDetection - default enabled
2018-05-16 17:15:38 -07:00
Lioncash
b29b56c61a
Interpreter_Integer: Clean up casting in mulhwx() and mulhwux()
...
These can be expressed in a slightly cleaner manner without so many
casts. While we're at it, also get rid of unnecessary indexing (we
already have the result nearby).
2018-05-16 19:45:17 -04:00
Lioncash
3400165171
Jit64: Factor function hooking out of DoJit()
2018-05-16 19:00:39 -04:00
Lioncash
f3c13402e8
Interpreter: Factor function hooking code out of SingleStepInner()
2018-05-16 18:56:40 -04:00
Lioncash
4b25538f2f
CachedInterpreter: Factor function hooking code out of Jit()
...
Extracts the self-contained code into its own function to clean up the
flow of Jit() a little more.
This also introduces a helper function to HLE.h that will be used to
reduce the boilerplate here and in the interpreter and Jit64 in the
following commits.
This function performs all of the preliminary checks required prior to
attempting to hook/replace a function at a given address. The function then
calls a provided object that satisfies the FunctionObject concept in the
C++ standard library. This can be a lambda, a regular function pointer,
an object with an overloaded function call operator, etc. The only
requirement is that the function return a bool, indicating whether or
not the function was replaced, and that it can take parameters in the
form: fn(u32 function, HLE::HookType type)
2018-05-16 18:55:49 -04:00
Lioncash
c7cd1424f4
Interpreter_FPUtils: Use Common::BitCast where applicable
...
Gets rid of now-unnecessary memcpy boilerplating for different bit
representations between integral and fp types.
2018-05-16 17:48:30 -04:00
Lioncash
e7403e121e
EXI_DeviceEthernet: In-class initialize members
...
Gets rid of a second pair of ifdefs in the constructor. This also makes
sure the fd on Unix/BSD platforms is uniformly initialized. Previously
fd would be in an inconsistent state on FreeBSD or OpenBSD due to the
BSD OS checks not being present in the #elif within the constructor.
2018-05-16 16:55:07 -04:00
Lioncash
fc78a4c993
EXI_DeviceEthernet: Make internal members and functions private
...
Previously, the entirety of CEXIETHERNET was exposed publically, which
wasn't necessary. We simply make the thread function part of the
internal interface, which gives it access to internal data members,
while keeping everything else outside of it.
2018-05-16 16:55:02 -04:00
Markus Wick
b547f72878
Merge pull request #6871 from lioncash/virtual
...
DSPHLE/UCodes: Replace unnecessary virtual keywords with override
2018-05-16 22:16:26 +02:00
Markus Wick
8fa8aa3e1b
Merge pull request #6870 from lioncash/hash
...
Common/Hash: Namespace code under the Common namespace
2018-05-16 22:04:20 +02:00
Lioncash
a7b8b15e7f
DSPHLE/UCodes: Replace unnecessary virtual keywords with override
...
Given these HLE classes inherit from a common base with a virtual
destructor, override is more appropriate here, as virtual propagates to
these destructors anyway.
This is also safer. If the base class' destructor is ever made
non-virtual, then these classes will cause a compilation error if they
aren't taken into account, as they'd be overriding a non-virtual
function (the destructor).
2018-05-16 15:57:55 -04:00
Lioncash
011ee110bc
Common/Hash: Namespace code under the Common namespace
...
Brings more common code under the Common namespace.
2018-05-16 15:39:23 -04:00
master0fdisaster
2a9283ee3d
Fix "Show Input Display"
2018-05-16 21:07:15 +02:00
spycrab
b203024a26
Merge pull request #6868 from aldelaro5/qt-debugger-fix-updatediasm
...
Qt/Debugger: Use QApplication::instance() as the connection context in Host_UpdateDisasmDialog()
2018-05-16 18:54:21 +02:00
Léo Lam
47fd8c6eff
Merge pull request #6855 from aldelaro5/qt-render-min-width
...
Qt: allow to resize the render widget however wanted on render to main
2018-05-16 14:11:51 +02:00
Léo Lam
4de2c5040d
Merge pull request #6867 from jackoalan/code-view-bg
...
Qt/CodeViewWidget: Dynamic background dimming for dark themes
2018-05-16 14:08:02 +02:00
Léo Lam
9335400f65
Merge pull request #6862 from aldelaro5/qt-unify-pause-play
...
Qt: make the pause play button only one button
2018-05-16 14:07:35 +02:00
Jack Andersen
d14f6e9ee6
Qt/CodeViewWidget: Dynamic background dimming for dark themes
2018-05-15 18:59:40 -10:00
aldelaro5
33ed5b2e99
Qt/Debugger: Use QApplication::instance() as the connection context in Host_UpdateDisasmDialog()
...
Because running on the host instance doesn't actually allow to fire the event. This fix a regression where stepping would not udpate the GUI at all.
2018-05-16 00:42:35 -04:00
aldelaro5
bc43f45119
Qt: make the pause play button only one button
...
This is to avoid several issue with using 2 actions and switching between them. This commit will instead have one action get his property changed on pause and play.
2018-05-15 23:37:50 -04:00
Lioncash
947fa271be
Common: Add MemArena.h/cpp to the Common namespace
...
Brings more common code under the Common namespace.
2018-05-15 18:27:32 -04:00
spycrab
6c09ce3d95
Qt: Use proper signals
2018-05-15 20:13:12 +02:00
spycrab
79533ef789
Qt/PathPane: Disable "Remove" button when not applicable
2018-05-15 20:13:12 +02:00
spycrab
40e6abad09
Qt/AudioPane: Improve layout
2018-05-15 20:13:12 +02:00
spycrab
54d81ed13a
Qt/SettingsWindow: Wrap tabs in scrollareas
2018-05-15 20:13:12 +02:00
spycrab
b9bd4ecbcb
Qt/Host: Fix random crashes when exiting fullscreen
2018-05-15 18:22:26 +02:00
spycrab
71f5fafb3b
Merge pull request #6861 from spycrab/qt_adapter_save
...
Qt/GeneralWidget: Restore the adapter properly
2018-05-15 11:10:12 +02:00
Markus Wick
b4324847fb
Merge pull request #6863 from booto/jit-ps-dsi
...
Prevent paired singles routines clobbering PC,SRR0
2018-05-15 11:07:21 +02:00
booto
c880302c6b
Prevent paired singles routines clobbering PC,SRR0
...
Paired single (ps) instructions can call asm_routines that try to update
PowerPC::ppcState.pc. At the time the asm_routine is built, emulation has
not started and the PC is invalid (0). If the ps instruction causes an
exception (e.g. DSI), SRR0 gets clobbered with the invalid PC.
This change makes the relevant ps instructions store PC before calling out
to asm_routines, and prevents the asm_routine from trying to store PC
itself.
2018-05-14 20:49:13 -04:00
spycrab
e922f91cc3
Qt/GeneralWidget: Restore the adapter properly
2018-05-14 21:16:20 +02:00
Léo Lam
159f6115e2
Merge pull request #6851 from lioncash/usage
...
BreakpointWidget: Move variables closer to usage sites in OnLoad()
2018-05-14 19:18:05 +02:00
Léo Lam
b5761f9dc7
Merge pull request #6852 from lioncash/code
...
CodeViewWidget: Minor changes
2018-05-14 19:17:35 +02:00
Léo Lam
5b15060127
Merge pull request #6857 from spycrab/qt_minor_win
...
Qt: Minor window fixes
2018-05-14 19:11:56 +02:00
Zexaron
ff971b1a6f
Qt/GeneralWidget remove unnecesary description wiring
2018-05-14 18:18:18 +02:00
spycrab
ca5dc25694
Merge pull request #6858 from lioncash/capture
...
DolphinQt2: Resolve unused lambda capture warnings
2018-05-14 16:47:55 +02:00
spycrab
26b1048975
Merge pull request #6850 from lioncash/moc
...
DolphinQt2: Add missing Q_OBJECT macro to all QObject-related classes missing it
2018-05-14 16:29:53 +02:00
Lioncash
e2543ea801
DolphinQt2: Resolve unused lambda capture warnings
...
Resolves -Wunused-lambda-capture warnings.
2018-05-14 10:11:47 -04:00
spycrab
7e9bf12246
Qt: Minor window fixes
...
* Remove some more "What's this?" buttons
* Add some missing titles
2018-05-14 11:10:04 +02:00
Markus Wick
db4d8d7ad3
Merge pull request #6854 from lioncash/access
...
Jit/CachedInterpreter: Minor cleanup to code buffer accesses
2018-05-14 07:49:22 +02:00
aldelaro5
6f2d8fad8f
Qt: allow to resize the render widget however wanted on render to main
2018-05-14 00:43:31 -04:00
Lioncash
7437f2efdc
JitArm64: Clean up code buffer accesses in DoJit()
...
Done for the same reason this was done for Jit64. Avoids constantly
indexing for the same known object instance over and over.
2018-05-13 22:11:01 -04:00
Lioncash
f4affa3d1d
CachedInterpreter: Clean up code buffer accesses in Jit()
...
Done similarly for the reasons Jit64 was done. Localizes indexing to one
place instead of repeatedly indexing the same place.
2018-05-13 22:11:01 -04:00
Lioncash
a16c0a6e16
Jit64: Clean up code buffer accesses in DoJit()
...
Moves the codebuffer access variables closer to their first use, and
gets rid of multiple indexing expressions. We already know which op
we're accessing in particular, so just make a reference to it and access
it instead of duplicating the expression all over the place.
2018-05-13 22:10:56 -04:00
Lioncash
d7a3ce26de
CodeViewWidget: Get rid of magic values in OnInsertBLR() and OnInsertNOP()
...
A call like ReplaceAddress(address, 0) is pretty ambiguous; so is
ReplaceAddress(address, false), so use an enum class that tells people
straight-up what the replacer is.
This also gets rid of the really weird naming, where if 'blr' is true,
we'd be replacing the address with a NOP, rather than an actual BLR
instruction, so we invert that so it actually makes sense. There's no
actual bug fixed here though, considering the OnInsert functions
specified the correct values; it's literally just weird naming.
2018-05-13 18:33:51 -04:00
Lioncash
bbc0aee5ea
CodeViewWidget: Replaces usages of QString::fromStdString with QStringLiteral where applicable
...
There's no need to construct a std::string here, when there's no dynamic
elements to the text.
2018-05-13 18:11:09 -04:00
Lioncash
644bbb29f3
CodeViewWidget: Remove unnecessary includes
2018-05-13 18:06:37 -04:00
Lioncash
7032863569
CodeViewWidget: Remove unnecessary QColor constructions
...
QBrush also accepts regular GlobalColor values as well.
2018-05-13 18:01:10 -04:00
Lioncash
a0a0295f9d
BreakpointWidget: Move variables closer to usage sites in OnLoad()
...
In the early-out case, we now don't end up constructing two vectors
that aren't even used. It also keeps relevant code together.
2018-05-13 17:56:03 -04:00
aldelaro5
2c861e75f5
Qt/debugger: only consider debugger hotkeys if debugging is enabled
2018-05-13 17:39:44 -04:00
Léo Lam
f8e5e7126c
Merge pull request #6849 from leoetlino/oops
...
WiiSave: Fix out-of-bounds read
2018-05-13 23:34:32 +02:00
Léo Lam
345838d517
Merge pull request #6842 from spycrab/qt_map_apply
...
Qt/Mapping: Fix mapping changes not being applied instantly
2018-05-13 23:34:18 +02:00
Lioncash
222fe58e25
DolphinQt2: Add missing Q_OBJECT macro to all QObject-related classes missing it
...
Without this macro, if any signals or slots were attempted to be used,
they wouldn't work; neither would various other features of the Qt
meta-object system. This can also lead to weird behavior in other
circumstances. Qt's documentation specifically states:
"Therefore, we strongly recommend that all subclasses of QObject use the
Q_OBJECT macro regardless of whether or not they actually use signals,
slots, and properties."
on its page for "The Meta-Object System", which can be seen here:
https://doc.qt.io/qt-5/metaobjects.html
Let's opt for "always do the right thing", and keep the code extensible
for the future and not have random things blow up on us.
2018-05-13 17:33:32 -04:00
Léo Lam
3fbfa4335e
WiiSave: Fix out-of-bounds read
...
Fixes the count argument for WriteArray. (I used it like WriteBytes.)
Whoops.
2018-05-13 23:18:28 +02:00
spycrab
c7a0b6c9f8
Merge pull request #6831 from spycrab/qt_memcard_fixes
...
Qt/GCMemcardManager: Fix multiple issues
2018-05-13 23:14:46 +02:00
Léo Lam
2be8c35d6d
Merge pull request #6844 from leoetlino/wii-save-cleanup2
...
WiiSave: Reuse IOS services where possible
2018-05-13 23:08:28 +02:00
JosJuice
74d561085c
Merge pull request #6848 from lioncash/guard
...
DolphinQt2: Add missing header guards for CheatCodeEditor and MappingIndicator
2018-05-13 22:21:40 +02:00
Lioncash
b03c433543
DolphinQt2: Add missing header guards for CheatCodeEditor and MappingIndicator
...
Prevents potential double inclusion issues from ever happening.
2018-05-13 16:11:30 -04:00
Léo Lam
8f44423a5b
Merge pull request #6846 from spycrab/qt_native_sep
...
Qt: Use native dir separators
2018-05-13 22:10:10 +02:00
Léo Lam
6c38e4b47f
Merge pull request #6847 from lioncash/fs-include
...
FilesystemWidget: Replace DiscIO includes with forward declarations
2018-05-13 22:08:09 +02:00
Lioncash
d1d584d16b
FilesystemWidget: Replace DiscIO includes with forward declarations
...
Avoids the need to use an ugly ifdef around a header, and also resolves
an indirect inclusion in PropertiesDialog.
2018-05-13 16:01:16 -04:00
Léo Lam
1fe92b8be7
Merge pull request #6845 from lioncash/patch-dlg
...
NewPatchDialog/PatchesWidget: Use forward declarations where applicable
2018-05-13 22:00:43 +02:00
Léo Lam
07b57c7ac6
Merge pull request #6843 from lioncash/patch
...
PatchEngine: Minor changes
2018-05-13 21:58:55 +02:00
spycrab
5673a64612
Qt: Use native dir separators
2018-05-13 21:51:38 +02:00
Lioncash
5fd8cec7ea
PatchEngine: Add s_ prefix to file-scope variables
...
Brings the translation unit in line with the convention used elsewhere
in the codebase.
2018-05-13 15:46:55 -04:00
Lioncash
0995cfef6a
PatchEngine: Make PatchType an enum class
...
Makes the enum strongly typed. A function for retrieving the string
representation of the enum is also added, which allows hiding the array
that contains all of the strings from view (i.e. we operate on the API,
not the exposed internals). This also allows us to bounds check any
querying for the strings.
2018-05-13 15:46:51 -04:00
Lioncash
799e4154be
PatchesWidget: Convert Core and UICommon includes into forward declarations
...
Avoids propagating inclusions through UI headers
2018-05-13 15:38:58 -04:00
Lioncash
df3f9af6d7
NewPatchDialog: Convert PatchEngine include into a forward declaration
...
Avoids needing to include Core headers in UI-related header files,
preventing unintentional propagation.
2018-05-13 15:34:46 -04:00
Léo Lam
b405a1fbb1
WiiSave: Reuse ES::GetInstalledTitles
...
Same thing, less code, no manual FS access.
2018-05-13 21:28:35 +02:00
Léo Lam
a2ffe010f3
WiiSave: Reuse IOSC::Sign for signing
2018-05-13 21:28:35 +02:00
Léo Lam
07caac1d23
WiiSave: Reuse IOSC for AES decryption/encryption
...
The SD key is already in IOSC.
This also prevents WiiSave from exposing an external library as part
of its interface.
2018-05-13 21:25:58 +02:00
spycrab
9e2f9db94c
Qt/Mapping: Fix mapping changes not being applied instantly
2018-05-13 21:21:31 +02:00
spycrab
b9ae157835
Qt/RenderWidget: Fix render-to-main focus
2018-05-13 21:08:34 +02:00
Lioncash
a166cf2481
PatchEngine: Give Patch and PatchEntry default member initializers
...
Avoids potentially using the values uninitialized. While we're at it,
also drop the prefixed underscores from one of the constructors.
2018-05-13 15:08:32 -04:00
Lioncash
15a522fe9b
DolphinQt2/NewPatchDialog: Remove unused <iostream> include
...
Including <iostream> causes a static constructor to be injected into the
translation unit, even if the everything from the header itself is
unused.
2018-05-13 14:04:22 -04:00
Léo Lam
9d1157f695
Merge pull request #6839 from spycrab/qt_start_top
...
Qt: Fix render widget not being on top when using -n / -e
2018-05-13 18:20:00 +02:00
Léo Lam
e828c243f3
Merge pull request #6836 from leoetlino/wii-save-cleanup
...
WiiSave: (not so) Minor cleanup
2018-05-13 18:19:22 +02:00
spycrab
17795a615b
Merge pull request #6838 from spycrab/qt_map_save
...
Qt/ControllersWindow: Fix changing devices while emulation is running
2018-05-13 18:17:13 +02:00
Léo Lam
80b3d7ccb8
WiiSave: Allow users to specify export directory
...
Export and ExportAll now open a directory picker (that defaults to the
previous default directory, i.e. the Dolphin user dir).
Also removes the need to return the path in the export functions since
the user knows which path they chose.
2018-05-13 17:42:56 +02:00
Léo Lam
87e5cd73dc
WiiSave: Use std::array instead of C arrays
...
Makes copying, comparing more readable
2018-05-13 17:42:55 +02:00
Léo Lam
a93d816c28
WiiSave: Move dialogs to UI code
...
This moves the result dialogs to DolphinQt2, since WiiSave should not
really be responsible for interacting with the user as a simple
Wii save importing/exporting class.
This also fixes Wii save import/export showing result dialogs twice,
once from WiiSave, and another time from DolphinQt2.
2018-05-13 17:42:55 +02:00
Léo Lam
41c4486c65
WiiSave: Clean up constructors
...
Move the import/export operation into separate functions, as it doesn't
really make sense for the constructor to do *everything*, including
printing success/failure message boxes.
The existing constructor was split into two: one that takes a path,
and another taking a title ID. This makes it more obvious what is
actually done when a path/TID is passed and also clarifies what
parameters should be passed. (No more magic 0 or "" value.)
2018-05-13 17:42:55 +02:00
Léo Lam
fbf36b85d2
WiiSave: Remove unused Extract() member function
2018-05-13 17:42:55 +02:00
Léo Lam
956df21bd7
WiiSave: Use Common::BigEndianValue to simplify parsing
...
Gets rid of the need to manually cast when reading/writing, which is
error prone and repetitive.
2018-05-13 17:42:55 +02:00
Léo Lam
fb39efbf90
WiiSave: Fix struct member naming
2018-05-13 17:42:55 +02:00
Léo Lam
bae8bcde0a
WiiSave: Do not expose internal constants
2018-05-13 17:42:55 +02:00
Léo Lam
00bc1f28f2
Rename CWiiSaveCrypted to WiiSave
2018-05-13 17:42:55 +02:00
spycrab
fa77e09239
Qt: Fix render widget not being on top when using -n / -e
2018-05-13 17:32:29 +02:00
Léo Lam
5564150dd6
Merge pull request #6833 from leoetlino/dns
...
Use resolver to get default DNS nameserver
2018-05-13 15:49:50 +02:00
Dexter Gerig
73bc20ead4
Use resolver to get default DNS nameserver
2018-05-13 14:05:23 +02:00
spycrab
2ca75ae05a
Qt/ControllersWindow: Fix changing devices while emulation is running
2018-05-13 14:04:39 +02:00
Léo Lam
99dff10d43
Merge pull request #6837 from spycrab/qt_position
...
Qt/RenderWidget: Save position and size using QSettings
2018-05-13 11:47:04 +02:00
Markus Wick
c267262a66
Merge pull request #6786 from stenzek/crop-negative-y
...
RenderBase: Ensure the draw size does not exceed the window size
2018-05-13 08:55:59 +02:00
spycrab
760a0be28a
Qt/RenderWidget: Save position and size using QSettings
2018-05-13 01:27:56 +02:00
Léo Lam
66c1b909c2
Merge pull request #6765 from aldelaro5/Qt-debugger-fixes
...
Qt/debugger: fix a bunch of things
2018-05-13 01:20:11 +02:00
Léo Lam
ad5a69be79
Merge pull request #6826 from spycrab/qt_netplay2
...
Qt/NetPlayDialog: Improve player list
2018-05-13 01:17:51 +02:00
aldelaro5
5c688b2d2b
Qt/debugger: Don't update the symbols list unnecessarily
...
It only needs to be updated when we changes the symbols, not every time the code widget updates and it does take a while to update them so this fixes some delay when updating the code window.
2018-05-12 19:15:26 -04:00
aldelaro5
be6b4edb0c
Qt/debugger: only resize the columns of the code view once per update
...
Putting the columns to resizeToContents causes way too much resizes per updates which can cause severe lags and even crashes. This only does one resize at the end of the columns.
2018-05-12 19:15:26 -04:00
aldelaro5
daf8df951c
Qt/Debugger: Update the register view properly on pause and step
2018-05-12 19:15:24 -04:00
aldelaro5
7388774f10
Qt/debugger: fix some possible crashes and inconsistencies in the breakpoint widget
...
One, which was also possible in Wx is to add an mbp after the core stopped which shouldn't be possible as it needs to add the memcheck on the core thread which wouldn't be running. The other fix is Qt specific where it doesn't clear the breakpoints on stop.
2018-05-12 19:06:18 -04:00
aldelaro5
09792fde70
Qt/debugger: recenter the code widget when selecting a breakpoint
2018-05-12 19:04:37 -04:00
aldelaro5
53803c1fca
Qt/debugger: fix minor issues in the breakpointWidget
...
The items were editable while you cannot edit the breakpoints at the moment and the last breakpoint deleted would not cause the row count to change to 0.
2018-05-12 19:04:37 -04:00
aldelaro5
238c801711
Qt/debugger: properly updates when we break
...
The Host_UpdateDisasmDialog was unimplemented in Qt which is required to get updates when we break. Additionally, this updates the debugger toolbar.
2018-05-12 19:04:30 -04:00
Mat M
a4de3922e9
Merge pull request #6832 from leoetlino/wiiroot
...
WiiRoot: Copy initial NAND files with proper metadata
2018-05-12 18:25:21 -04:00
Lioncash
411fc01262
DolReader/ElfReader: Remove unnecessary FileUtil.h includes
...
These can be replace with File.h, as the only file-related things
necessary is the declaration of IOFile (which resides in File.h).
2018-05-12 17:41:17 -04:00
Lioncash
f7bc75ae6d
Boot: Make BootExecutableReader's constructor take a std::vector by value
...
This allows avoiding two copies of the executable data being created in
the following scenario (using pseudocode):
some_function()
{
std::vector<u8> data = ...;
DolReader reader{data};
...
}
In this scenario, if we only use the data for passing it to DolReader,
then we have to perform a copy, as the constructor takes the std::vector
as a constant reference -- you cannot move from a constant reference,
and so we copy data into the DolReader, and perform another copy in the
constructor itself when assigning the data to the m_bytes member
variable. However, we can do better.
Now, the following is allowable as well:
some_function()
{
std::vector<u8> data = ...;
DolReader reader{std::move(data)};
...
}
and now we perform no copy at any point in the reader's construction, as
we just std::move the data all the way through to m_bytes.
In the case where we *do* want to keep the executable data around after
constructing the reader, then we can just pass the vector without
std::move-ing it, and we only perform a copy once (as we'll std::move
said copy into m_bytes). Therefore, we get a more flexible interface
resource-wise out of it.
2018-05-12 17:40:34 -04:00
Léo Lam
48fa835bd3
WiiRoot: Copy initial NAND files with proper metadata
2018-05-12 22:54:34 +02:00
Léo Lam
f91b729b61
Merge pull request #6825 from leoetlino/onion-types
...
Config: Fix implicit conversions/enum config types
2018-05-12 21:59:43 +02:00
Léo Lam
e1169ef9ee
Merge pull request #6824 from aldelaro5/custom-rtc-no-bias
...
RTC: Write 0 to the counter bias if we are on custom RTC
2018-05-12 21:59:13 +02:00
aldelaro5
70ca98c8e7
Qt/debugger: change how the selected line in the code widget looks
...
Not only it colors the entire row instead of just the address, but if the pc is the selected row, the pc color will overwrite the selection, this is done via a stylesheet.
2018-05-12 15:47:16 -04:00
aldelaro5
9a2dd470a0
Qt/debugger: change some colors logic in the codeWidget
...
This commit makes the colors hardcoded except when there is no symbols loaded, in which case, it uses the theme colors, except for the PC which is hardcoded to black on green. This makes a compromise between making use of the corespoinding theme color and the text being nicely readable on all themes.
2018-05-12 15:47:16 -04:00
aldelaro5
9bacb3cb26
Qt/RegisterView: fix minor aesthetic issues
...
This aligns the values to the right since It looks odd to be aligned to the left with any format other than hexadecimal. It also sets the font tot he debugger font and disallow selection as a previous commit made the selection pointless since it now relies on the current item.
2018-05-12 15:47:16 -04:00
aldelaro5
8c23335be3
Qt/RegisterView: fix the context menu not working correctly
...
It seemed impossible to SELECT an item, however, when right clicking, the CURRENT item is set to the appropriate cell, this commit makes the view use thta cell instead of the first selected one.
2018-05-12 15:47:16 -04:00
aldelaro5
f9a6f97dca
Make the dock widgets (logger and debugger) be on the left by default
...
Like they were in Wx.
2018-05-12 15:47:16 -04:00
spycrab
b094cda929
Core/GCMemcard: Fix checksums after modifying the memcard
2018-05-12 21:39:13 +02:00
spycrab
229c92d0bf
Qt/GCMemcardManager: Properly perform actions and do error checking
2018-05-12 21:38:30 +02:00
spycrab
8b3358e208
Qt/GCMemcardManager: Fix broken export message
2018-05-12 20:35:16 +02:00
Lioncash
0ef7dca0d4
SettingsHandler: Remove redundant type qualifier in SetBytes()
...
Given the qualifier isn't used for the constructor taking a buffer, remove it here
to be consistent.
2018-05-12 13:53:42 -04:00
Lioncash
1da2091801
SettingsHandler: Remove unnecessary includes
...
All Windows-specific includes aren't needed here anymore.
2018-05-12 13:53:37 -04:00
Lioncash
5677e5d74a
SettingsHandler: Namespace code under the Common namespace
...
Adds another file in Common to the Common namespace.
2018-05-12 13:39:37 -04:00
spycrab
bf0ee9f702
Merge pull request #6822 from spycrab/qt_fix_defaults
...
Qt: Fix mapping defaults
2018-05-12 19:22:53 +02:00
spycrab
d8a95834f3
Qt/NetPlayDialog: Improve player list
2018-05-12 18:25:38 +02:00
Léo Lam
6763a3fce1
Config: Add support for enums
...
This makes it possible to use enums as the config type.
Default values are now clearer and there's no need for casts
when calling Config::Get/Set anymore.
In order to add support for enums, the common code was updated to
handle enums by using the underlying type when loading/saving settings.
A copy constructor is also provided for conversions from
`ConfigInfo<Enum>` to `ConfigInfo<underlying_type<Enum>>`
so that enum settings can still easily work with code that doesn't care
about the actual enum values (like Graphics{Choice,Radio} in DolphinQt2
which only treat the setting as an integer).
2018-05-12 18:10:26 +02:00
Markus Wick
be0f4f7fb2
Merge pull request #6828 from ScoreUnder/syntaxfix2
...
Fix syntax error in GLSL_GS
2018-05-12 17:37:33 +02:00
Léo Lam
94dc746351
Copy Wii NAND data to user NAND in WiiRoot
...
Dolphin doesn't use any of the WC24 files, so this can be done when
actually starting emulation in WiiRoot. The benefit of moving the
copy is that we don't need to handle temporary NANDs in a special way.
2018-05-12 17:08:50 +02:00
Léo Lam
5f567b38fe
WiiRoot: Move content manipulation to separate functions
...
{Initialize,Shutdown}WiiRoot should only be responsible for setting the
SESSION_WII_ROOT or managing the temporary NAND directory.
Move all the content manipulation out of these functions to ensure
separation of concerns and call them after/before WiiRoot init/shutdown
to make sure they operate on the correct root.
2018-05-12 17:06:31 +02:00
Stenzek
a446b096cb
Jit64: Invalidate cached constant values w/o host register on flush
...
If we don't flush the values, they persist in the register cache,
potentially resulting in the values being out of sync with PPCSTATE.
This was causing random crashes in games, mainly booting, when certain
JIT instructions were disabled, or forced to fall back to interpreter.
2018-05-13 00:50:31 +10:00
Score_Under
4e7caa2818
Fix syntax error in GLSL_GS
2018-05-12 15:42:18 +01:00
Score_Under
70b00f2b2d
Remove stray quote sign
...
This allows GLSL_EFB_POKE_GEOMETRY_GS to compile again.
2018-05-12 15:21:29 +01:00
Léo Lam
7dca7c237e
Config: Fix template deduction for implicit conversions
...
This excludes the second argument from template deduction.
Otherwise, it is required to manually cast the second argument to
the ConfigInfo type (because implicit conversions won't work).
e.g. to set the value for a ConfigInfo<std::string> from a string
literal, you'd need a ugly `std::string("yourstring")`.
2018-05-12 14:30:18 +02:00
Léo Lam
e78235943e
Merge pull request #6823 from spycrab/qt_reset_hotkey
...
Qt: Implement "Reset" hotkey
2018-05-12 13:12:24 +02:00
Léo Lam
a712cfe339
Merge pull request #6624 from spycrab/qt_dbg_jit
...
Qt/Debugger: Implement "JIT" widget
2018-05-12 13:02:47 +02:00
aldelaro5
4b2906c569
RTC: Write 0 tot he counter bias if we are on custom RTC
...
This can be considered a hack, but it essentially neuter the bias applied on boot for both console on the RTC. This avoids having the time on boot be changes significantly while the user would want a specific RTC and it also avoids possible underflow of the RTC if it is near the epoch.
2018-05-12 01:37:48 -04:00
spycrab
226b6888d6
Qt: Implement "Reset" hotkey
2018-05-12 03:56:10 +02:00
spycrab
c118af73c2
Qt: Fix mapping defaults
2018-05-12 01:31:42 +02:00
Lioncash
a85aa73c4d
FileUtil: Remove unnecessary IOFile GetHandle() call in ReadFileToString()
...
We can just use IOFile's GetSize() function to do the same thing. While
we're at it, get rid of unnecessary variables.
2018-05-11 16:27:33 -04:00
Anthony
f0c5b76186
Merge pull request #6677 from 404-Name-Not-Found/master
...
Fix test rumble feature in controller configuration
2018-05-11 12:51:52 -07:00
Anthony
968779e623
Merge pull request #6814 from lioncash/sd
...
SDCardUtil: Minor changes
2018-05-11 12:39:17 -07:00
Anthony
ee1a175205
Merge pull request #6816 from leoetlino/kd
...
IOS/KD: Migrate to new filesystem interface
2018-05-11 12:37:10 -07:00
Mat M
b938e15699
Merge pull request #6818 from JonnyH/WIP/variant-update
...
Update mpark::variant implementation to 1.3.0
2018-05-11 15:36:23 -04:00
spycrab
0abce1419b
Qt/NetPlayDialog: Fix broken IP label
2018-05-11 21:22:57 +02:00
spycrab
76f6c7523f
Merge pull request #6810 from spycrab/qt_fix_hotkey_conf
...
Qt/MappingButton: Fix occasionally broken indicator
2018-05-11 21:05:43 +02:00
spycrab
49d2f6f15a
Qt/HotkeyScheduler: Use onion config
2018-05-11 20:47:30 +02:00
Léo Lam
1b070c4b6f
IOS/KD: Migrate to new filesystem interface
2018-05-11 20:30:22 +02:00
Jonathan Hamilton
791c8401c1
Update mpark::variant implementation to 1.3.0
...
Fixes building on the latest clang shipping on MacOS
(Apple LLVM version 9.1.0 (clang-902.0.39.1))
2018-05-11 11:15:06 -07:00
Lioncash
cdeed038bd
SDCardUtil: Replace macros with typed equivalents
...
Instead use a general template and specify which type we're writing out.
2018-05-11 12:33:07 -04:00
spycrab
16e2ac9257
VideoCommon/RenderBase: Refactor OSD messages
2018-05-11 18:24:08 +02:00
spycrab
1dfcffcce2
Qt/Debugger: Implement "JIT" widget
2018-05-11 18:10:35 +02:00
spycrab
082573bd6b
Merge pull request #6808 from spycrab/qt_hotkey_osd
...
Qt/HotkeyScheduler: Show OSD information
2018-05-11 15:51:37 +02:00
Lioncash
3b0139b258
SDCardUtil: Namespace SDCardUtil
...
Brings yet another header in the common library under the Common
namespace.
2018-05-11 09:19:30 -04:00
Lioncash
4e1547b3b2
SDCardUtil: Remove the use of IOFile's GetHandle() function
...
GetHandle() should really not even be part of IOFile's interface, but
since it is (for the time being), we can cull unnecessary usages of it.
In this case, the WriteBytes() function does what we need without using
the underlying handle directly.
2018-05-11 09:19:29 -04:00
Lioncash
ad4150dae9
SDCardUtil: Join variables with declarations where applicable
2018-05-11 09:19:26 -04:00
Lioncash
1ffd0d2572
SDCardUtil: Make type of write_empty's "count" parameter size_t
...
This allows getting rid of casts. We can also leverage std::min to allow
making relevant variables const. Also make the "empty" table const to
allow it to be read-only.
2018-05-11 08:55:05 -04:00
Lioncash
c26de8107d
SDCardUtil: Convert return type of write_* functions to bool
...
Converts them from 0 == success, 1 == failure to using the built-in
standard bool. Also while we're at it, const qualify write_sector's
"sector" parameter, since nothing in the function modifies the data
being pointed to.
2018-05-11 08:29:37 -04:00
Lioncash
5fc18aa639
SDCardUtil: Replace sector size magic value with relevant named constant
...
Makes variable use consistent throughout the file.
2018-05-11 08:25:35 -04:00
spycrab
66190ae4d6
Qt/HotkeyScheduler: Show OSD information
2018-05-11 12:49:20 +02:00
spycrab
242fadc76f
Qt/MappingButton: Fix occasionally broken indicator
2018-05-11 12:37:48 +02:00
Léo Lam
e1866d35e5
Merge pull request #6807 from leoetlino/boot
...
Boot: Migrate to new filesystem interface
2018-05-11 10:41:00 +02:00
Léo Lam
5071973a51
Merge pull request #6805 from spycrab/qt_netplay
...
Qt/NetPlayDialog: Multiple improvements
2018-05-11 10:39:53 +02:00
Léo Lam
d1bb5249ec
Merge pull request #6801 from stenzek/copy-filter-typo
...
D3D/Vulkan: Fix incorrect clamp in EFB RAM copy
2018-05-11 10:36:47 +02:00
Léo Lam
066e4ea463
Merge pull request #6809 from lioncash/macro
...
CommonFuncs: Convert ROUND_UP_POW2 macro to a function
2018-05-11 10:16:29 +02:00
Lioncash
6d0cab3743
DolphinQt2/MemoryWidget: Use QString's toUtf8() where applicable instead of toStdString()
...
Avoids needing to iterate and append the characters in one case. This also
alters the function to not need to construct a temporary std::string
(QString's toUtf8() is sufficient, as QByteArray exposes iterators).
toStdString() is equivalent to retrieving the QString's underlying
QByteArray via calling QString's .toUtf8 member function and then
calling .toStdString() on the result of it (discarding the QByteArray
afterwords), so this just trims off an unnecessary step in the process.
This is also somewhat more indicative of the conversions going on:
toStdString() converts the underlying character sequence of a
QString to UTF-8, not strict ASCII, so we're really using a superset of
ASCII.
2018-05-10 22:10:45 -04:00
Lioncash
ba01f6dba3
CommonFuncs: Convert ROUND_UP_POW2 macro to a function
...
Also move it to MathUtils where it belongs with the rest of the
power-of-two functions. This gets rid of pollution of the current scope
of any translation unit with b<value> macros that aren't intended to be
used directly.
2018-05-10 19:42:20 -04:00
Léo Lam
a977a56434
Boot: Migrate to new filesystem interface
2018-05-10 22:34:03 +02:00
Léo Lam
e6c489f1d4
ES: Move title dir creation logic into separate function
...
Since we're going to need it in the boot code, move it out to a
separate, easily reusable function. This also makes the InitImport
logic clearer.
2018-05-10 22:33:49 +02:00
Léo Lam
722d31124c
SettingsHandler: Fix const correctness
2018-05-10 21:35:27 +02:00
Léo Lam
09d2afa91f
SettingsHandler: Migrate to new filesystem interface
...
Change SettingsHandler to take a buffer instead of assuming that the
setting file to read is always on the host filesystem for more
flexibility and make it possible to use the new filesystem interface.
2018-05-10 21:35:27 +02:00
spycrab
3cca051850
Merge pull request #6806 from spycrab/qt_iowindow_crash
...
Qt/IOWindow: Fix crash
2018-05-10 21:18:48 +02:00
spycrab
146979f67e
Qt/IOWindow: Fix crash
2018-05-10 21:12:19 +02:00
spycrab
09449e2bca
Qt/NetPlayDialog: Use QToolButton instead of a QComboBox
2018-05-10 20:51:12 +02:00
spycrab
26bee93943
Qt/NetPlayDialog: Show more friendly interface names
2018-05-10 20:51:12 +02:00
spycrab
0141ce9305
Qt/NetPlayDialog: Restore window geometry
2018-05-10 20:51:12 +02:00
spycrab
0ee7bddd4f
Qt/NetPlayDialog: Add splitter
2018-05-10 20:51:12 +02:00
spycrab
6ea2b2e7e5
Qt/NetPlayDialog: Fix duplicate messages
2018-05-10 20:51:12 +02:00
spycrab
7550389c72
Qt/NetPlayDialog: Escape HTML in chat
2018-05-10 19:19:09 +02:00
spycrab
893c5e694e
Qt/NetPlayDialog: Use more readable colors
2018-05-10 19:14:19 +02:00
Léo Lam
d8e1d2d573
Merge pull request #6803 from lioncash/tidy
...
FloatUtils: Remove IntDouble and IntFloat
2018-05-10 19:04:49 +02:00
Lioncash
0a3631cc76
FloatUtils: Remove IntDouble and IntFloat
...
Type punning via unions in C++ invokes undefined behavior. Instead, leverage BitCast,
our variant of C++2a's std::bit_cast
2018-05-10 12:28:09 -04:00
Lioncash
bde4e970f1
FloatUtils: Clean up memcpy usages
...
Now that we have BitCast, we can use that instead.
2018-05-10 12:28:09 -04:00
Lioncash
b3292298c9
BitUtils: Add C++14/C++17 compatible equivalent of std::bit_cast from C++2a
...
Given bit conversions between types are quite common in emulation
(particularly when it comes to floating-point among other things) it
makes sense to provide a utility function that keeps all the boilerplate
contained; especially considering it makes it harder to accidentally
misuse std::memcpy (such as accidentally transposing arguments, etc).
Another benefit of this function is that it doesn't require separating
declarations from assignments, allowing variables to be declared const.
This makes the scenario of of uninitialized variables being used less
likely to occur.
2018-05-10 12:28:05 -04:00
spycrab
6e9d0ff6de
Merge pull request #6802 from Neui/qt-remember-main-window-position-and-size
...
Qt: Save and restore main window size and position
2018-05-10 18:26:38 +02:00
Neui
f6d5896bc7
Qt: Save and restore main window size and position
2018-05-10 18:19:17 +02:00
Léo Lam
28915049b5
Merge pull request #6797 from leoetlino/uid
...
Move all UID constants to a single file
2018-05-10 18:16:04 +02:00
Stenzek
3493d738ca
D3D/Vulkan: Fix incorrect clamp in EFB RAM copy
...
This could cause darker-than-expected EFB copies if clamping was not
enabled, and the user forced EFB copies to RAM only.
2018-05-11 00:32:39 +10:00
spycrab
273579bc32
Qt/Win32: Fix font weight calculation
2018-05-10 14:01:55 +02:00
spycrab
fd1ea63383
Merge pull request #6788 from spycrab/qt_gconf_fixes
...
Qt/GraphicsWindow: Fix multiple issues
2018-05-10 12:16:19 +02:00
spycrab
be007b436c
Qt/GraphicsWindow: Fix software renderer breaking layout
2018-05-10 12:08:23 +02:00
spycrab
074a17482b
Qt/GraphicsWindow: Refresh settings on construction
2018-05-10 12:08:23 +02:00
spycrab
6a34f2b47c
Qt/GeneralWidget: Fix "No" response to backend switch confirmation
2018-05-10 12:08:23 +02:00
spycrab
b7b6b5162c
Qt/GeneralWidget: Refresh backend settings properly
2018-05-10 12:08:23 +02:00
spycrab
e380df2e59
Qt/MainWindow: Call Config::Save last before destruction
2018-05-10 12:05:58 +02:00
spycrab
18c7d295c9
Qt/FilesystemWidget: Fix moc compilation
2018-05-09 22:35:27 +02:00
Léo Lam
e56387970a
Move all UID constants to a single file
...
Keeps them all next to each other and deduplicates a few constants,
notably the PPC UIDs. Apparently I forgot that I already added them
for SetupStreamKey.
2018-05-09 21:08:24 +02:00
Léo Lam
169e1d3368
Merge pull request #6795 from lioncash/atomic
...
Atomic_Win32: Replace deprecated (and since been removed) barrier intrinsics
2018-05-09 19:46:00 +02:00
Léo Lam
91f59aa7e1
Merge pull request #6794 from lioncash/float
...
FloatUtils: Minor cleanup
2018-05-09 19:36:33 +02:00
Léo Lam
274f418f4b
Merge pull request #6789 from leoetlino/rename-bug
...
IOS/FS: Fix rename not handling existing target correctly
2018-05-09 19:07:39 +02:00
Léo Lam
1016674242
Merge pull request #6791 from aldelaro5/wii-epoch-fix
...
Wii: Fix the Wii epoch and make the IPL.CB 0 by default
2018-05-09 19:06:25 +02:00
Lioncash
e020f5b04b
RenderBase: Remove unused PixelPerfQuery enum
...
Neither the values or the identifier name of the enum is used anywhere
in the codebase.
2018-05-09 12:11:29 -04:00
Lioncash
593bad3253
Atomic_Win32: Replace deprecated (and since been removed) barrier intrinsics
...
As of VS 15.7, these seem to have been removed. Given we shouldn't have
been using these for some time, just replace them with the standard
library equivalent.
This fixes building on Windows with VS 15.7
2018-05-09 11:35:35 -04:00
Lioncash
f29e7fea2a
FloatUtils: Remove union type punning from ClassifyX functions
...
Type-punning via unions is undefined behavior in C++
Also take the liberty of cleaning these up a little bit by removing
unnecessary else usages.
2018-05-09 10:25:23 -04:00
Lioncash
fe218ea3f6
FloatUtils: Remove union type punning from ApproximateReciprocal functions
...
This form of type punning invokes undefined behavior in C++
2018-05-09 10:05:29 -04:00
Lioncash
46a4243d9a
FloatUtils: Remove using namespace std in ApproximateReciprocal()
...
This was made quite a long time ago when we supported 32-bit ARM targets
2018-05-09 09:36:23 -04:00
spycrab
5cd02f0853
Merge pull request #6793 from spycrab/qt_hotkeys
...
Qt: Implement missing hotkeys
2018-05-09 13:28:53 +02:00
aldelaro5
224a9426db
Fix the Wii epoch and make the IPL.CB 0 by default
...
It was off by about 8 years because it was actually the same as the GC epoch, however, the reason it worked all this time was because the default RTC counter bias of the Wii was not 0, but a value that is about 8 years in seconds. This broke custom RTC as a custom RTC of the gc epoch was underflowing b ecause the wii epoch was thought to be much later.
2018-05-09 02:45:56 -04:00
spycrab
ce32447726
Qt: Implement missing hotkeys
2018-05-09 08:27:04 +02:00
Starsam80
ebf6149ad4
Qt: Use `addLayout` instead of `addItem` when adding layouts
2018-05-08 17:54:47 -06:00
Léo Lam
7feabcd096
IOS/FS: Fix rename not handling existing target correctly
...
The existing backend did not handle cases where the target exists
correctly.
This is a bug that has been around forever but was only recently
exposed when ES started to use our FS code.
Also adds some unit tests to make sure this won't get broken again.
2018-05-08 23:55:13 +02:00
Léo Lam
10d230a512
Merge pull request #6784 from leoetlino/file-creation
...
IOS: Make file creation + open more concise
2018-05-08 23:27:35 +02:00
spycrab
2852959811
Qt: Restore render widget size and position
2018-05-08 16:03:13 +02:00
Léo Lam
a9987588eb
Merge pull request #6768 from spycrab/qt_stylesheet
...
Qt: Allow custom stylesheets
2018-05-08 15:20:19 +02:00
Stenzek
fd5aaa096c
RenderBase: Ensure the draw size does not exceed the window size
...
This was happening when crop was enabled, causing blank outputs for some
Vulkan drivers (namely radv), as the draw rectangle is used as the
viewport.
2018-05-08 23:19:38 +10:00
spycrab
0170052f5d
Qt: Allow custom stylesheets
2018-05-08 15:07:50 +02:00
Léo Lam
f0e6fcfb07
Merge pull request #6785 from JosJuice/stringutil-order
...
StringUtil.h: Move ThousandSeparate down
2018-05-08 14:31:57 +02:00
JosJuice
965c423f1c
StringUtil.h: Move ThousandSeparate down
...
It calls UTF16ToUTF8 on Windows, so it should come after UTF16ToUTF8.
2018-05-08 13:55:07 +02:00
Léo Lam
71afe6b4a6
IOS: Make file creation + open more concise
...
Creating a file then opening it in read write mode is a pretty common
operation. This commit adds a helper function that makes it easier
to read and clearer.
2018-05-08 13:07:30 +02:00
Léo Lam
90f869e940
Merge pull request #6772 from leoetlino/fs-es
...
IOS/ES: Migrate to new filesystem interface
2018-05-08 11:55:52 +02:00
Léo Lam
f97711ac02
Merge pull request #6777 from lioncash/header
...
Common: Move floating-point utility functions to FloatUtils.h/.cpp
2018-05-08 11:55:25 +02:00
booto
823fdda30c
intrinsics: stop defining _xgetbv/_XCR_XFEATURE_ENABLED_MASK, which are reserved
2018-05-08 17:25:33 +08:00
Anthony
1ec3a4db6c
Merge pull request #6763 from spycrab/qt_fix_prog
...
Qt/AdvancedWidget: Fix "Enable Progressive Scan"
2018-05-07 09:59:32 -07:00
Anthony
46236920ef
Merge pull request #6767 from spycrab/qt_whatsthis2
...
Qt: Make dialogues more consistent
2018-05-07 09:58:15 -07:00
Anthony
8212b6e9cf
Merge pull request #6769 from spycrab/qt_fix_netplay
...
Qt/NetPlay: Fix crashes on start
2018-05-07 09:57:02 -07:00
Anthony
ecd9b94415
Merge pull request #6779 from spycrab/qt_trans_fix
...
Qt/WrapInScrollArea: Only use transparency on Windows
2018-05-07 09:56:47 -07:00
Anthony
e62c26c34b
Merge pull request #6781 from spycrab/qt_rtm_addendum
...
Qt/GeneralWidget: Various fixes
2018-05-07 09:53:20 -07:00
spycrab
8f9bc2f3e4
Qt: Implement custom fullscreen resolution support
2018-05-07 18:38:59 +02:00
spycrab
a2448c5b66
Qt/GeneralWidget: Various fixes
2018-05-07 17:50:03 +02:00
Markus Wick
6f0ad84a5e
Merge pull request #6764 from spycrab/qt_fix_rtm
...
Qt: Fix "Render To Main"
2018-05-07 17:33:56 +02:00
spycrab
fc069f709e
Qt/WrapInScrollArea: Only use transparency on Windows
2018-05-07 17:23:03 +02:00
Stenzek
501b35bbf2
OGL: Fix broken format changes in i965 driver
2018-05-08 00:11:27 +10:00
Markus Wick
e31c571f51
Merge pull request #6646 from spycrab/fbm_strings
...
OGL/FramebufferManager: Clean up inline GLSL code
2018-05-07 08:58:56 +02:00
Lioncash
86018b503b
Common: Move floating-point utility functions to FloatUtils.h/.cpp
...
Keeps all of the floating-point utility functions in their own file to
keep them all together. This also provides a place for other
general-purpose floating-point functions to be added in the future,
which will be necessary when improving the flag-setting within the
interpreter.
2018-05-07 02:56:32 -04:00
Markus Wick
756ef54ab6
Merge pull request #6770 from lioncash/ile
...
PowerPC: Fix copying of the MSR.ILE bit to MSR.LE
2018-05-07 08:52:05 +02:00
Markus Wick
b007210761
Merge pull request #6774 from lioncash/enum
...
Interpreter_FPUtils: Make FPCC enum an enum class
2018-05-07 08:48:22 +02:00
Markus Wick
6ec1e742ae
Merge pull request #6773 from lioncash/fpscr
...
PowerPC: Make the PowerPCState's fpscr member variable a UReg_FPSCR instance
2018-05-07 08:47:14 +02:00
Anthony
fcc5095d8c
Merge pull request #6776 from lioncash/type
...
x64Emitter: Use an enum class to represent FixupBranch branch types
2018-05-06 19:09:54 -07:00
Anthony
d131e4d2bc
Merge pull request #6775 from lioncash/flags
...
Interpreter_FPUtils: Properly update the FPSCR's FEX bit in UpdateFPSCR()
2018-05-06 19:07:13 -07:00
Lioncash
82b1518342
x64Emitter: Use an enum class to represent FixupBranch branch types
...
Gets rid of the use of magic values and replaces them with strongly
typed symbolic names.
2018-05-06 22:05:03 -04:00
Lioncash
64d1865448
Interpreter_FPUtils: Properly update the FPSCR's FEX bit in UpdateFPSCR()
...
FPSCR.FEX is supposed to be a logical OR of all floating-point exception
bits masked by their respective enable bits.
Currently UpdateFPSCR() isn't called by anything in the interpreter
except for mcrfs and mffs, so this doesn't alter existing behavior that much.
However, this will be necessary in future PRs when making the interpreter more
accurate in how it sets flags.
2018-05-06 21:40:00 -04:00
Lioncash
d5de49f9aa
Interpreter_FPUtils: Make FPCC enum an enum class
...
Avoids dumping two letter identifiers into global scope
2018-05-06 19:32:09 -04:00
Lioncash
69a0aaebd4
Gekko: Make UReg_FPSCR's single argument constructor explicit
...
Prevent implicit conversions to UReg_FPSCR. Given the semantics of a
random magic value and the FPSCR are different, make explicit
conversions a requirement to signify intent.
2018-05-06 18:46:57 -04:00
Lioncash
cb5926c1ca
PowerPC: Make the PowerPCState's fpscr member variable a UReg_FPSCR instance
...
Gets rid of the need to cast the actual member to access information without bit shifts and masking.
2018-05-06 18:46:52 -04:00
Léo Lam
606d25213b
ES: Create system directories with correct metadata
2018-05-06 23:19:34 +02:00
Léo Lam
f47f916afb
ES: Use new filesystem interface in main code
2018-05-06 23:19:34 +02:00
Léo Lam
923b450268
ES: Use new filesystem interface in TitleManagement
2018-05-06 23:19:34 +02:00
Léo Lam
9ee2654be6
ES: Use new filesystem interface in NandUtils
2018-05-06 23:16:35 +02:00
Léo Lam
359a5dcb54
ES: Use new filesystem interface for content handling
2018-05-06 23:16:35 +02:00
Léo Lam
3dafc66c36
ESFormats: Migrate to new filesystem interface
2018-05-06 23:16:35 +02:00
Léo Lam
5dbf6cd0c9
IOS/FS: Make ConvertResult usable from ES
...
ES makes extensive use of FS and most of the time returns its error
codes directly.
2018-05-06 22:08:31 +02:00
Léo Lam
7dcab20bfa
Qt: Disable 'uninstall' action if title is not installed
2018-05-06 21:01:44 +02:00
Lioncash
707615ef82
PowerPC: Fix copying of the MSR.ILE bit to MSR.LE
...
The MSR.LE bit is supposed to be set to the value of MSR.ILE upon
entering an exception vector to control whether the environment in said
vector operates as little endian or big endian. If this bit is ORed into
the LE bit, then the scenario of operating in little endian but wanting
to take exceptions in big endian will be incorrectly handled.
2018-05-06 14:24:58 -04:00
spycrab
e184dc55b2
Qt/NetPlay: Fix crashes on start
2018-05-06 19:00:17 +02:00
spycrab
7cd30810a3
Qt: Make dialogues more consistent
2018-05-06 18:05:56 +02:00
Léo Lam
c3d88a622d
Merge pull request #6766 from leoetlino/ncd
...
IOS/NCD: Migrate to new filesystem interface
2018-05-06 17:10:19 +02:00
Léo Lam
26be225c92
Merge pull request #6761 from spycrab/qt_win_font
...
Qt/Win32: Use better method to obtain the default font
2018-05-06 16:15:11 +02:00
Léo Lam
fb1d075330
IOS/NCD: Migrate to new filesystem interface
...
A followup for the migration work started in 8317a66
2018-05-06 14:26:51 +02:00
Léo Lam
89713c5889
IOS/FS: Add CreateFullPath helper
...
Analogous to File::CreateFullPath, but for the Wii filesystem so this
ensures that directories and files receive proper attributes.
(This function is technically not part of the FS sysmodule but it's in
an internal FS library that is reused in several IOS sysmodules.)
2018-05-06 14:22:44 +02:00
Léo Lam
8e3cad948c
Merge pull request #6758 from leoetlino/fs-wiiutils
...
WiiUtils: Migrate to new filesystem interface
2018-05-06 14:04:30 +02:00
Léo Lam
76b031184c
Merge pull request #6341 from sepalani/debug-watches
...
DebugInterface: Watches methods added
2018-05-06 13:25:26 +02:00
Léo Lam
7a9e1a240e
Merge pull request #6757 from JosJuice/qt-filesystem-extraction
...
DolphinQt2: Fix disc extraction inconsistencies with DolphinWX
2018-05-06 13:24:06 +02:00
Léo Lam
32235f974d
Merge pull request #6612 from leoetlino/movie-array
...
Movie: Replace some C style arrays with std::array
2018-05-06 13:23:45 +02:00
Léo Lam
34899e8e71
Merge pull request #6759 from spycrab/updater_warn_launch
...
Updater: Show error when trying to launch directly
2018-05-06 13:11:50 +02:00
Léo Lam
3f087e2ed5
Merge pull request #6760 from lioncash/msr
...
PowerPC: Make the PowerPCState's msr member variable a UReg_MSR instance
2018-05-06 12:02:39 +02:00
Léo Lam
27f6274fc5
Merge pull request #6762 from lioncash/condition
...
DolphinQt/MemoryWidget: Fix dead condition in FindValue()
2018-05-06 12:01:24 +02:00
Stenzek
f81d9c3813
Merge pull request #6755 from stenzek/opengl-clamp
...
OGL: Fix incorrect clamping in EFB copies
2018-05-06 18:54:00 +10:00
spycrab
6f65238efc
Qt: Fix "Render To Main"
2018-05-06 04:51:13 +02:00
Anthony
2588b5e40e
Merge pull request #6750 from spycrab/qt_render_widget
...
Qt: Fix multiple RenderWidget issues
2018-05-05 18:39:40 -07:00
spycrab
6442b32aeb
Qt/AdvancedWidget: Fix "Enable Progressive Scan"
2018-05-06 03:16:43 +02:00
Lioncash
31389bab0a
DolphinQt/MemoryWidget: Fix dead condition in FindValue()
...
This condition is already checked earlier in the function and exits out
if it's satisfied, meaning it'll never reach this check further down.
2018-05-05 20:44:38 -04:00
spycrab
49a1b2e5df
Qt/Win32: Use better method to obtain the default font
2018-05-06 02:37:52 +02:00
Lioncash
0043b77ccd
Gekko: Make UReg_MSR's single-argument constructor explicit
...
Prevents implicit construction of MSR instances from integral values.
This is beneficial, considering MSR values have an intended
representation while a regular magic value doesn't. So make these
conversions required to be explicit.
2018-05-05 17:59:45 -04:00
Lioncash
ffcf107dd2
PowerPC: Make the PowerPCState's msr member variable a UReg_MSR instance
...
Gets rid of the need to construct UReg_MSR values around the the actual
member in order to query information from it (without using shifts and
masks). This makes it more concise in some areas, while helping with
readability in some other places (such as copying the ILE bit to the LE
bit in the exception checking functions).
2018-05-05 17:59:30 -04:00
Léo Lam
75d056bc48
Movie: Replace some C style arrays with std::array
...
This replaces some C style arrays with std::array to make copying
and comparing arrays slightly nicer.
2018-05-05 23:40:23 +02:00
spycrab
45995ead03
Updater: Show error when trying to launch directly
2018-05-05 23:32:08 +02:00
Léo Lam
72a6674b73
WiiUtils: Migrate to new filesystem interface
...
A followup for the migration work started in 8317a66e
2018-05-05 19:21:56 +02:00
Léo Lam
9aeb95bc0a
WX: Only call IsTitleInstalled when core is stopped
2018-05-05 19:21:56 +02:00
JosJuice
33211d8690
DolphinQt2: Don't show pop-ups in the middle of extracting a whole disc
2018-05-05 18:31:46 +02:00
JosJuice
f48fac5b55
DolphinQt2: Allow picking "Extract Files..." on disc/partition
...
DolphinWX already does this.
2018-05-05 18:31:44 +02:00
Léo Lam
58b96eeb9d
Merge pull request #6756 from spycrab/qt_segoe_ui
...
Qt/Win32: Force Segoe UI
2018-05-05 18:09:00 +02:00
spycrab
7d762fd632
Qt/RenderWidget: Restore size when exiting fullscreen
2018-05-05 17:05:32 +02:00
JosJuice
1a74de6462
DolphinQt2: Fix the file structure of extracted discs
...
Now all the partitions won't be all jumbled up in one folder,
and the filesystem contents won't be mixed with system data.
2018-05-05 17:00:27 +02:00
Léo Lam
975689e1f7
Merge pull request #6754 from spycrab/qt_no_whatsthis
...
Qt: Remove "What's this" button
2018-05-05 16:04:52 +02:00
Tillmann Karras
41a553e33e
Jit64: warn about code cache flushing
...
The game Go Vacation (SGVEAF) currently stutters a lot because it keeps
overflowing the far code cache and all code needs to be re-jitted.
Logging this warning gives a useful hint as to what is causing the
stuttering.
2018-05-05 14:21:57 +01:00
spycrab
ad21282379
Qt/Win32: Force Segoe UI
2018-05-05 12:41:56 +02:00
Léo Lam
31efec623a
Merge pull request #6695 from Ebola16/UbershadersDecrip
...
Update Ubershader descriptions
2018-05-05 11:16:30 +02:00
Léo Lam
d8549d172c
Merge pull request #6651 from leoetlino/nand-paths
...
NandPaths: Return paths that are relative to Wii NAND
2018-05-05 11:01:35 +02:00
Léo Lam
983d500d14
Merge pull request #6614 from leoetlino/auto-close
...
IOS: Do not manually close devices in destructor
2018-05-05 10:53:06 +02:00
Léo Lam
d848c7e027
Merge pull request #6716 from container1234/qt-cheats-manager
...
Qt/CheatsManager: Fix updating search result takes a long time
2018-05-05 10:42:09 +02:00
Léo Lam
bf8b9f4a34
Merge pull request #6739 from spycrab/qt_aesthetics
...
Qt: Fix visual inconsistencies.
2018-05-05 10:37:44 +02:00
Léo Lam
86f56b8047
Merge pull request #6747 from aldelaro5/qt-debugger-setting-ini
...
INI: Create a new INI setting for toggling the debugger UI
2018-05-05 10:33:04 +02:00
Léo Lam
6e6bf689e7
Merge pull request #6751 from spycrab/qt_show_disc
...
Qt: Show disc number
2018-05-05 10:28:40 +02:00
Stenzek
286d594f32
OGL: Fix incorrect clamping in EFB copies
2018-05-05 17:45:54 +10:00
Pierre Bourdon
798639291f
Merge pull request #6749 from spycrab/qt_gcontrols_crash
...
Qt/GraphicsControls: Fix more random crashes
2018-05-05 03:02:43 +02:00
spycrab
69d6c0dccb
Qt: Remove "What's this" button
2018-05-05 02:29:16 +02:00
aldelaro5
fee92cd4fc
INI: Create a new INI setting for toggling the debugger UI
...
Qt introduced a checkbox to toggle the debugger UI, this makes it work into a setting stored in the INI, it also makes the -d argument only in effect when enabled, in such case, it will override the INI by overriding it.
2018-05-04 19:23:03 -04:00
spycrab
db0e5108dc
Win32/FileUtil: Fix IsDirectory() not working for certain directories
2018-05-04 23:53:41 +02:00
spycrab
67f874250a
Qt: Show disc number
2018-05-04 22:38:27 +02:00
spycrab
e809eef11a
Qt/AdvancedWidget: Fix progressive scan checkbox
2018-05-04 21:33:24 +02:00
Léo Lam
8317a66ea5
NandPaths: Return paths that are relative to Wii NAND
...
Since all FS access will go through the new FS interface (PR #6421 )
in order to keep track of metadata properly, there is no need to return
absolute paths anymore.
In fact, returning host paths is a roadblock to using the FS interface.
This starts the migration work by adding a way to get paths that are
relative to the Wii NAND instead of always getting absolute paths
on the host FS.
To prepare for future changes, this commit also makes returned paths
canonical by removing the trailing slash when it's unneeded.
Eventually, once everything has been migrated to the new interface,
we can remove the "from" parameter.
2018-05-04 19:52:17 +02:00
spycrab
452cc6b69f
Qt/RenderWidget: Show proper icon and title
2018-05-04 14:04:46 +02:00
spycrab
300c3970f3
Qt/GraphicsControls: Fix more random crashes
2018-05-04 13:51:55 +02:00
spycrab
11f83c1e36
HttpRequest/Curl: Use a more intelligent timeout method
2018-05-04 13:30:49 +02:00
Stenzek
a5e410b7c9
Merge pull request #6744 from stenzek/ui-disable-vram-copies
...
UI: Add Disable EFB Copies to VRAM to Advanced Options
2018-05-04 12:01:29 +10:00
spycrab
96e488a181
Qt/PathPane: Add dots to buttons
2018-05-04 00:12:08 +02:00
spycrab
d97d916758
Qt/Settings: Restore padding
2018-05-04 00:12:08 +02:00
spycrab
b741ef81bd
Qt/WrapInScrollArea: Make background color more consistent
2018-05-04 00:12:08 +02:00
Ryan Meredith
c2355d4f63
Android Interface submenu: Add Show OSD Messages
2018-05-03 16:05:22 -04:00
Ryan Meredith
25179258b7
Android: Initial implementation of Interface submenu
2018-05-03 16:05:22 -04:00
Mat M
54a6b0f50a
Merge pull request #6726 from spycrab/qt_sort_alpha
...
Qt/GameList: Always sort games alphabetically
2018-05-03 13:13:09 -04:00
Mat M
348125eda4
Merge pull request #6738 from spycrab/qt_fix_empty_adapter
...
Qt/GeneralWidget: Fix empty adapter option
2018-05-03 13:11:00 -04:00
Mat M
689a70a7f1
Merge pull request #6736 from spycrab/qt_bad_range_clear
...
Qt/MappingButton: Fix bad range default
2018-05-03 13:09:26 -04:00
Mat M
cf40ebf16a
Merge pull request #6737 from JosJuice/qt-invalid-si-device
...
DolphinQt2: Don't crash on invalid SI devices
2018-05-03 13:07:23 -04:00
Stenzek
3270fadb0d
Merge pull request #6587 from stenzek/macos-content-scale
...
DolphinWX: Scale window geometry before passing to backend
2018-05-03 23:35:21 +10:00
Stenzek
be32602769
Merge pull request #6745 from spycrab/qt_fullscreen
...
Qt: Call Render::SetFullscreen
2018-05-03 23:28:21 +10:00
spycrab
a61445919d
Qt/GraphicsSlider: Fix random crashes
2018-05-03 15:22:40 +02:00
spycrab
68e2b46ba1
Qt: Call Render::SetFullscreen
2018-05-03 15:15:35 +02:00
Stenzek
210a6a37b4
DolphinWX: Scale window geometry before passing to backend
...
In macOS, the window size is device-independent points, which may not
match the content/backing framebuffer size.
2018-05-03 22:01:07 +10:00
JosJuice
1a2b6e2645
Merge pull request #6742 from stenzek/qt-borderless-fullscreen
...
Qt/AdvancedWidget: Fix borderless fullscreen option not showing
2018-05-03 08:07:29 +02:00
Stenzek
d4f6c86eec
UI: Add Disable EFB Copies to VRAM to Advanced Options
2018-05-03 14:31:04 +10:00
Stenzek
0152f63655
TextureCacheBase: Make "disable vram copies" part of the active config
2018-05-03 14:24:44 +10:00
Stenzek
8a061d6fb4
Qt/AdvancedWidget: Fix borderless fullscreen option not showing
2018-05-03 14:13:35 +10:00
Stenzek
4faac3a627
TextureConversionShader: Don't sample from adjacent rows when not needed
2018-05-03 14:09:32 +10:00
Stenzek
a93830056f
TextureConversionShader: Fix more implicit conversion errors
2018-05-03 11:32:06 +10:00
spycrab
6b5b51831a
Qt/GameList: Always sort games alphabetically
2018-05-02 21:57:46 +02:00
spycrab
0595fd498f
Qt/MappingButton: Fix bad range default
2018-05-02 21:50:50 +02:00
Markus Wick
ef98a21735
Merge pull request #6729 from stenzek/gles-gamma
...
TextureConversionShader: Fix compile errors in OpenGL ES
2018-05-02 21:50:30 +02:00
JosJuice
16b805410f
DolphinQt2: Don't crash on invalid SI devices
...
This is important if we ever add or delete SI devices.
2018-05-02 21:50:28 +02:00
Mat M
ed6709ac8f
Merge pull request #6731 from spycrab/qt_cache_slider
...
Qt/HacksWidget: Fix "Accuracy" slider
2018-05-02 15:48:33 -04:00
Mat M
a2c12f1503
Merge pull request #6735 from JosJuice/ui-ini
...
Remove code related to UI.ini
2018-05-02 15:47:28 -04:00
spycrab
b99610f1a3
Qt/GeneralWidget: Fix empty adapter option
2018-05-02 19:20:45 +02:00
JosJuice
6e96f62b41
Remove code related to UI.ini
...
We don't use it for anything, we just create it and leave it empty.
2018-05-02 18:18:27 +02:00
spycrab
3221ca2200
Updater: Fix UI not showing up
2018-05-02 18:17:16 +02:00
Pierre Bourdon
40cf07d8e7
Merge pull request #6733 from spycrab/rename_update_cfg_again
...
Core/ConfigManager: Rename Track to UpdateTrack
2018-05-02 17:55:37 +02:00
spycrab
a984d18a14
Core/ConfigManager: Rename Track to UpdateTrack
2018-05-02 17:23:41 +02:00
spycrab
e3cebebe51
Qt/MappingButton: Fix Clear not resetting ranges
2018-05-02 17:02:14 +02:00
spycrab
3d7b613be5
Qt/Mapping: Fix "Default" not working properly.
2018-05-02 16:55:42 +02:00
spycrab
ef3f660983
Qt/HacksWidget: Fix "Accuracy" slider
2018-05-02 16:36:15 +02:00
Stenzek
7a745e5b0d
D3D: Drop gamma parameter from util draw helper
...
No longer needed as we perform gamma correction during the XFB copy.
2018-05-02 21:58:56 +10:00
Stenzek
2c6b20bb03
TextureConversionShader: Fix compile errors in OpenGL ES
2018-05-02 21:54:13 +10:00
spycrab
0d5b34be34
Qt/MappingWindow: Fix saving to incomplete Profile directory
2018-05-02 06:45:11 +02:00
Ryan Meredith
05205ce3d7
Update Ubershader descriptions
2018-05-01 18:57:34 -04:00
spycrab
b4dc658b2e
OGL/FramebufferManager: Clean up inline GLSL code
2018-05-01 15:03:59 +02:00
Stenzek
6e62d1ab9f
Merge pull request #6722 from spycrab/qt_adapter
...
Qt/GraphicsSettings: Save Adapter index
2018-05-01 21:57:50 +10:00
spycrab
87d6bffcec
Qt/GraphicsSettings: Fix various adapter issues
2018-05-01 13:54:01 +02:00
container1234
850afd8457
Qt/CheatsManager: Fix updating search result takes a long time
2018-05-01 18:58:58 +09:00
Léo Lam
78c9bad44f
Merge pull request #6688 from spycrab/qt_dedup
...
Qt: Deduplicate settings
2018-05-01 11:53:39 +02:00
Léo Lam
23f958d766
Merge pull request #6715 from spycrab/qt_path_fixes
...
Qt/PathPane: Various fixes
2018-05-01 11:40:21 +02:00
Stenzek
c46882142b
Merge pull request #6369 from stenzek/xfb-copy-filter
...
Implement copy filter (deflickering/brightness) and XFB gamma
2018-05-01 19:31:54 +10:00
Stenzek
42d73deaed
Merge pull request #6723 from spycrab/qt_fix_profile_save
...
Qt/MappingWindow: Fix profile saving
2018-05-01 19:26:22 +10:00
Léo Lam
c2ddddc723
Merge pull request #6724 from JosJuice/qt-normal-speed
...
DolphinQt2: Translate the "(Normal Speed)" text
2018-04-30 21:30:45 +02:00
JosJuice
1b830df250
DolphinQt2: Correct the condition for enabling Cheat Manager
...
Only the other condition, the one that runs when the cheat setting
changes, was taking into account whether emulation was running.
2018-04-30 14:19:56 +02:00
JosJuice
e74f5c4f42
DolphinQt2: Translate the "(Normal Speed)" text
2018-04-30 13:42:48 +02:00
spycrab
c6a0a4318d
Qt/MappingWindow: Fix saving
2018-04-30 09:09:27 +02:00
spycrab
fcb80646ed
Qt/PathPane: Various fixes
2018-04-30 06:44:13 +02:00
Mat M
ad836b9071
Merge pull request #6717 from spycrab/issue_11039
...
Qt/GraphicsControls: Reload values when settings are changed
2018-04-29 20:20:36 -04:00
spycrab
a2dbf97205
Qt/Win32: Fix console output
2018-04-29 23:26:20 +02:00
Mat M
d8b56af342
Merge pull request #6714 from spycrab/qt_fix_toolbar
...
Qt/ToolBar: Fix inconsistencies
2018-04-29 15:20:01 -04:00
spycrab
dd6ac93ad0
Qt/ToolBar: Fix checkbox and actual visibility not being in sync
2018-04-29 20:28:11 +02:00
Mat M
cad7d2c71f
Merge pull request #6720 from spycrab/qt_ext
...
Qt/GameTracker: Match uppercase file extensions
2018-04-29 14:24:24 -04:00
spycrab
f5cfd1ab14
Qt/GameTracker: Match uppercase file extensions
2018-04-29 19:59:50 +02:00
spycrab
2a837a82d4
Qt: Implement Batch flag (-b)
2018-04-29 19:13:40 +02:00
spycrab
bc51c34a96
Qt: Implement "Free look"
2018-04-29 13:52:27 +02:00
spycrab
417d191c9e
Qt/GraphicsControls: Reload values when settings are changed
2018-04-29 12:17:39 +02:00
Stenzek
ea4090d92c
Dolphin: Add disable copy filter to graphics options
2018-04-29 19:05:20 +10:00
Stenzek
9e798eec94
Implement EFB copy filter and gamma in hardware backends
...
Also makes y_scale a dynamic parameter for EFB copies, as it doesn't
make sense to keep it as part of the uid, otherwise we're generating
redundant shaders.
2018-04-29 19:05:20 +10:00
Scott Mansell
a192a3bb30
While I'm here, fix some chroma sub-sampling bugs.
...
RE4's brightness screen is actually very good for spotting these.
Bug 1: Colors at the end of the scanlines are clamped, instead of a black
border
Bug 2: U and V color channels share coordinates, instead of being offset
by a pixel.
2018-04-29 17:56:53 +10:00
Scott Mansell
fc96479f12
VideoSoftware: Implement xfb copy filter (Deflickering/Brightness)
2018-04-29 17:56:51 +10:00
Lioncash
167b92ff2c
Jit_Integer: Make arrays const in MultiplyImmediate() and twX()
...
These are only ever read from, so make the data immutable to be explicit about that
2018-04-28 14:13:02 -04:00
Mat M
0cd46f4d21
Merge pull request #6690 from lioncash/nand
...
Common/NandPaths: Minor cleanup
2018-04-28 13:43:33 -04:00
Mat M
6b8da197e8
Merge pull request #6689 from container1234/qt-minor-fixes
...
Qt: Minor changes
2018-04-28 13:41:59 -04:00
Tilka
6bb880457f
Merge pull request #6711 from lioncash/handler
...
Common/MemTools: Make handler function internally linked on Windows
2018-04-28 18:41:10 +01:00
Mat M
c057eb3c82
Merge pull request #6705 from leoetlino/variable
...
IOS/SO: Clean up variable declarations
2018-04-28 13:40:38 -04:00
Mat M
fa44e28ce0
Merge pull request #6708 from spycrab/qt_dynfilter
...
Qt/GameList: Ensure resort when new entries are added
2018-04-28 13:39:56 -04:00
Lioncash
8183360832
Common/MemTools: Make handler function internally linked on Windows
...
This doesn't need to be an externally linked function.
2018-04-28 12:55:38 -04:00
Sepalani
74d4a4478f
DebugInterface: Watches methods added
...
Move Watches to Common
2018-04-28 17:46:51 +04:00
JosJuice
8870ffeac4
DolphinQt2: Fix clearing numeric values in controller config
2018-04-28 13:02:26 +02:00
spycrab
7db86c20d0
Qt/GameList: Ensure resort when new entries are added
2018-04-28 12:53:10 +02:00
JosJuice
28138cfde9
Merge pull request #6707 from spycrab/qt_fix_numeric
...
Qt/MappingNumeric: Calculate values properly
2018-04-28 12:42:27 +02:00
spycrab
1fb188a7d9
Qt/MappingNumeric: Calculate values properly
2018-04-28 12:32:23 +02:00
spycrab
b88a5875ec
Qt/WiimoteEmuExtension: Add "Slider Bar" to Guitar
2018-04-28 11:41:22 +02:00
Léo Lam
4f427de924
IOS/SO: Clean up variable declarations
...
Move them closer to their usage and fix the naming.
2018-04-28 11:13:03 +02:00
container1234
b46bf9b736
Qt/Debugger: Change CodeView background colors to bright ones
2018-04-28 16:53:04 +09:00
Léo Lam
cf1adfbe20
Merge pull request #6673 from leoetlino/network
...
IOS: Network fixes
2018-04-28 00:47:18 +02:00
Léo Lam
9c63bae19a
Merge pull request #6687 from spycrab/qt_graphics_caps
...
Qt/GraphicsWindow: Disable unsupported options
2018-04-28 00:35:47 +02:00
spycrab
4caca2bd7a
Qt/GraphicsWindow: Disable unsupported options
2018-04-28 00:01:26 +02:00
Léo Lam
3b70da2da4
Merge pull request #6693 from spycrab/qt_missing_paths
...
Qt/PathPane: Add missing options
2018-04-27 23:49:13 +02:00
Léo Lam
393663a0a3
IOS/SO: Use an enum for result codes
2018-04-27 23:35:40 +02:00
Léo Lam
32d51f1699
IOS/SO: Re-implement GetInterfaceOpt(0x4003)
...
Use the newly added GetSystemDefaultInterfaceOrFallback() to return
actual information for the default interface, not just dummy
interface details.
This also fixes GetInterfaceOpt(0x4003) and gethostid() returning
inconsistent information. Prior to this change, GetInterfaceOpt(0x4003)
would return 10.0.1.30 and gethostid would give a totally unrelated IP.
2018-04-27 23:35:40 +02:00
Léo Lam
3ce271991b
IOS/SO: Implement GetSystemDefaultInterface for non-Windows
...
This fixes gethostid on non-Windows platforms.
Except on Android, where this is left unimplemented because Android
does not support getifaddrs.
2018-04-27 23:35:40 +02:00
Léo Lam
25b198cac8
IOS/SO: Move default interface code into a separate function
...
...so that the function can be more easily reused.
2018-04-27 23:35:40 +02:00
Léo Lam
e4276f2983
IOS/SO: Handle invalid GetInterfaceOpt requests
2018-04-27 23:35:40 +02:00
spycrab
9057a7d50a
Qt/GeckoCode: Fix multiple bugs
2018-04-27 22:58:57 +02:00
Anthony
2b9df8eedd
Merge pull request #6697 from spycrab/qt_sort
...
Qt/GameList: Sort by title by default
2018-04-27 19:30:48 +01:00
spycrab
eefa6db57c
Qt: Fix "Render To Main" not booting into fullscreen
2018-04-27 15:04:26 +02:00
Sepalani
e73906ee38
DolphinWx: Prevent a crash on Copy hex
2018-04-27 09:53:11 +04:00
spycrab
7749e18ecc
ConfigManager: Enable Auto-Updater by default
2018-04-26 15:12:15 +02:00
spycrab
ddcc3451b1
Qt/GameList: Sort by title by default
2018-04-26 11:50:18 +02:00
Pierre Bourdon
1b389398ad
Merge pull request #6696 from spycrab/updater_cpy
...
Updater: Use copy instead of move
2018-04-26 11:10:52 +02:00
spycrab
fb268bb04f
Updater: Use copy instead of move
2018-04-26 11:00:03 +02:00
spycrab
6e4c5d780d
Updater: Implement UAC support
2018-04-25 22:38:10 +02:00
spycrab
82390495ee
Qt/PathPane: Add missing options
2018-04-25 21:43:12 +02:00
Lioncash
4637579375
Common: Amend CommonTypes include within BitSet.h
...
We do includes relative to the root, rather than direct pathing.
2018-04-23 00:14:00 -04:00
Lioncash
d68f437e67
Common: Move BitSet helper functions into the Common namespace
2018-04-23 00:13:55 -04:00
Lioncash
c1c360d9b1
NandPaths: Make function parameters consistent
...
Also drops trailing underscores from said parameter names.
2018-04-22 23:49:20 -04:00
Lioncash
62242331d8
NandPaths: Remove unused header inclusions
2018-04-22 23:49:16 -04:00
Lioncash
2ce0f42c14
Common: Move BitSet into the Common namespace
...
This should be under the common namespace, considering where it's living
2018-04-22 23:43:07 -04:00
spycrab
40a61e7bf5
Qt: Deduplicate settings
2018-04-22 22:26:28 +02:00
container1234
41844c1cc5
Qt/Debugger: Change the row height to same as code/memory widget
2018-04-23 00:52:31 +09:00
container1234
32f6d3f62b
Qt: Use HostRead for float and double
2018-04-23 00:46:42 +09:00
Pierre Bourdon
1b63810e85
Merge pull request #6684 from spycrab/qt_wrong_thread
...
Qt/Settings: Emit EmulationStateChanged from the UI thread
2018-04-22 15:36:32 +02:00
spycrab
854fa0f093
Qt/Settings: Emit EmulationStateChanged from the UI thread
2018-04-22 13:04:48 +02:00
spycrab
519fa7529f
Qt/RenderWidget: Fix the render widget showing up when it shouldn't
2018-04-22 13:01:18 +02:00
spycrab
caa18edc79
Qt: Implement "Keep Window on top"
2018-04-22 11:15:39 +02:00
spycrab
c1dccdc0e5
Qt/RenderWidget: Fix getting painted over
2018-04-22 10:15:09 +02:00
spycrab
b059b3a646
Qt: Pause on focus loss
2018-04-22 10:15:09 +02:00
Tilka
c131b7c3b4
Merge pull request #6682 from spycrab/qt_minor_fixes
...
Qt: Minor fixes
2018-04-22 08:12:42 +01:00
aldelaro5
2f6879f0d9
Qt/log change the notice log color to lime
...
It's slightly easier to read than green
2018-04-21 21:22:16 -04:00
spycrab
7b35c8577a
Qt: Fix crashes when closing render window
2018-04-21 23:27:54 +02:00
spycrab
b2e5f1d85f
Qt/GeneralPane: Disable certain options while emulation is running
2018-04-21 22:09:46 +02:00
Léo Lam
9dcc8131df
Merge pull request #6331 from spycrab/deprecate_wx
...
[RFC] Qt/Wx: Turn Qt into the default interface
2018-04-21 18:36:10 +02:00
spycrab
694df74b0b
Qt/Wx: Turn Qt into the default interface
2018-04-21 17:54:00 +02:00
Tilka
7dc16efc9d
Merge pull request #6675 from spycrab/qt_recursive
...
Qt: Add "Search subdirectories" checkbox
2018-04-21 16:07:02 +01:00
spycrab
a4526772b9
Qt: Add "Search subdirectories" checkbox
2018-04-21 00:14:55 +02:00
Léo Lam
dabfecfd74
Merge pull request #6672 from spycrab/qt_dynamic
...
Qt: Make toolbar more dynamic
2018-04-20 23:41:51 +02:00
spycrab
264c995b0d
Qt: Make toolbar more dynamic
2018-04-20 22:44:49 +02:00
Léo Lam
2fcc633c28
Merge pull request #6649 from leoetlino/fs-tests
...
UnitTests: Add tests for the Wii filesystem
2018-04-20 21:34:06 +02:00
Tilka
4c8de9638a
Merge pull request #6674 from Tilka/jit64
...
Jit64: avoid an unnecessary load
2018-04-20 19:23:28 +01:00
Léo Lam
f9340424c8
Merge pull request #6669 from lioncash/thread-local
...
Core: Use thread_local directly
2018-04-20 18:11:32 +02:00
Léo Lam
1176ae6512
IOS/FS: Fix ReadDirectory file list copying
...
Each entry can take up to 13 bytes (including the terminating null
character) but should not be aligned to 13 bytes.
2018-04-20 00:02:32 +02:00
Léo Lam
4c47417a0e
IOS/FS: Fix ReadDir returning wrong number of entries
...
ReadDir should always write the actual number of entries in the
directory list (`min(max_count, number_of_entries_on_nand)`).
2018-04-20 00:02:32 +02:00
Connor Roth
3e4725f390
THis fixes issue #08 and #16 , the rumble test and slider
2018-04-19 17:48:55 -04:00
Tilka
a500347345
Merge pull request #6676 from spycrab/qt_fix_open
...
Qt: Fix "Open File" dialog opening twice
2018-04-19 22:13:38 +01:00
spycrab
cd390714c9
Qt: Fix "Open File" dialog opening twice
2018-04-19 23:10:23 +02:00
Tillmann Karras
1737f1bee8
Jit64: avoid an unnecessary load
2018-04-19 21:49:12 +01:00
spycrab
c09075209f
Qt: Implement Cheats Manager
2018-04-19 10:42:24 +02:00
Léo Lam
396204248d
Merge pull request #6667 from lioncash/si
...
SI: Remove unnecessary declarations of internally linked functions
2018-04-18 18:49:44 +02:00
Lioncash
e6405f7b2b
Core: Use thread_local directly
...
Both Android and OSX now support it, allowing us to remove the fallback code.
2018-04-17 19:03:24 -04:00
Mat M
df44aa7335
Merge pull request #6668 from JosJuice/remove-hybrid-wiimote
...
Remove Hybrid Wii Remote
2018-04-17 18:09:58 -04:00
JosJuice
2953cf201d
Remove Hybrid Wii Remote
...
It simply doesn't seem to work for anything useful, and nobody seems
to care about maintaining it.
2018-04-17 22:40:21 +02:00
Lioncash
d1d8300a46
SI: Remove unnecessary declarations of internally linked functions
...
These aren't dependent on calling order so we can just organize all of the statics together
instead of splitting them up over the file. This also allows us to organize a common spot for
file static variables as well.
2018-04-17 16:33:11 -04:00
Mat M
d230194464
Merge pull request #6657 from leoetlino/dedup
...
Qt/Debugger: Deduplicate memory view update code
2018-04-17 10:21:53 -04:00
Mat M
b19d77a3ff
Merge pull request #6660 from leoetlino/pause
...
Qt/Debugger: Don't pause when already paused
2018-04-17 10:20:30 -04:00
Mat M
e04592e6c4
Merge pull request #6663 from spycrab/qt_fix_columns
...
Qt: Fix columns not properly showing / hiding
2018-04-17 10:19:35 -04:00
Mat M
8bb0e0ee96
Merge pull request #6662 from Tilka/fix_warnings
...
Fix some warnings
2018-04-17 10:17:01 -04:00
spycrab
9ffc600e8d
Qt: Fix columns not properly showing / hiding
2018-04-17 15:27:51 +02:00
Tillmann Karras
4cfd900c67
Fix some warnings
2018-04-17 14:10:05 +01:00
Sepalani
04cfddca33
HLE_VarArgs: PowerPC::HostRead_F64 used
2018-04-17 16:25:43 +04:00
Léo Lam
69ad94997c
Qt/Debugger: Don't pause when already paused
...
Fixes a severe performance issue which would cause the UI to use tons
of CPU time and fail to update when scrolling with a breakpoint on PC.
2018-04-17 14:21:18 +02:00
Mat M
c78b3f6ab6
Merge pull request #4507 from sepalani/host_f
...
PowerPC: HostR/W float/double added
2018-04-17 08:02:07 -04:00
Pierre Bourdon
94f3e27ccd
Merge pull request #6659 from spycrab/qt_tabbed_config
...
Qt/SettingsWindow: Use tabs
2018-04-17 13:52:23 +02:00
Sepalani
048513183e
PowerPC: HostR/W float/double added
2018-04-17 08:29:47 +04:00
spycrab
4d4a018ccf
Qt/SettingsWindow: Use tabs
2018-04-16 23:15:45 +02:00
Lioncash
c23a998f9d
TraversalClient: Use u32 instead of enet_uint32
...
Lessens the dependence on the enet library (and we really don't need to rely on a third-party library for a 32-bit integer type)
2018-04-16 16:46:48 -04:00
Lioncash
f1e92a1eae
TraversalClient: Make TestPacket() private
...
This is only used by the private InterceptCallback()
2018-04-16 16:46:48 -04:00
Lioncash
1b8ad49d1e
TraversalClient: In-class initialize members where applicable
2018-04-16 16:46:48 -04:00
Lioncash
ca6a2970ea
TraversalClient: Make data externally read-only members private
...
These are only ever queried for state, not written. Therefore, prevent writing to the members
and make them private.
2018-04-16 16:46:44 -04:00
Léo Lam
6c87817d9c
Qt/Debugger: Deduplicate memory view update code
...
The structure and address calculation were identical.
Only the string generation was different.
2018-04-16 22:36:32 +02:00
Léo Lam
dfd6a228a6
Merge pull request #6654 from lioncash/log
...
Common/Logging/Log: Wrap GENERIC_LOG macro's body in do { } while (0)
2018-04-16 20:38:22 +02:00
Léo Lam
d13fc1d2e9
Merge pull request #6655 from lioncash/common-libs
...
Common/CMakeLists: Link curl and VTune libraries in privately
2018-04-16 20:35:31 +02:00
JosJuice
0efbaebe17
Minor fixes to translatable strings
...
The usual deduplication between DolphinWX and DolphinQt2, plus the removal
of a now unused ubershader string and a fix for the Euphoria i18n comment.
2018-04-16 19:08:58 +02:00
Lioncash
236aed9fd1
Common/CMakeLists: Link curl and VTune libraries in privately
...
These are only used internally.
2018-04-16 12:38:24 -04:00
Lioncash
b0dc823472
Common/Logging/Log: Wrap GENERIC_LOG macro's body in do { } while (0)
...
Enforces the termination of GENERIC_LOGs with semicolons.
2018-04-16 12:11:32 -04:00
Mat M
6224b9bd37
Merge pull request #6642 from leoetlino/stm
...
IOS/STM: Reset the event hook at the correct time
2018-04-16 09:04:12 -04:00
Lioncash
939c5671a9
Common/Config: Remove unused header inclusions
2018-04-15 22:35:00 -04:00
Lioncash
4836739663
Common/Config: Remove unnecessary function declaration
...
This prototype declaration is already provided by the Config.h header
2018-04-15 22:33:53 -04:00
Léo Lam
3355ddcfb3
FileSystem: Fix member destruction order
2018-04-15 14:29:27 +02:00
Mat M
eecdb51709
Merge pull request #6645 from JosJuice/tie-constexpr
...
x64Emitter: Don't assume that std::tie is constexpr
2018-04-15 03:11:31 -04:00
JosJuice
8a146d5210
x64Emitter: Don't assume that std::tie is constexpr
...
Using constexpr tie broke building with older GCC versions according to
https://forums.dolphin-emu.org/Thread-build-error-on-linux-mint-18-3
2018-04-15 08:30:01 +02:00
JosJuice
45923696ed
Merge pull request #6648 from leoetlino/master
...
WiimoteEmu: Fix turntable_button_names size
2018-04-15 08:25:44 +02:00
Mat M
615c0decb7
Merge pull request #6644 from leoetlino/uicommon-header
...
UICommon: Fix header
2018-04-14 20:25:22 -04:00
Léo Lam
0a481c0663
WiimoteEmu: Fix turntable_button_names size
...
Three elements were removed, but because of an oversight the array
size was not changed to match.
2018-04-14 23:52:10 +02:00
Léo Lam
783e4ec2fa
Merge pull request #6633 from aldelaro5/wx-debugger-icons
...
Wx: debugger icons
2018-04-14 23:29:57 +02:00
Léo Lam
371f807e67
Merge pull request #6615 from leoetlino/sysconf
...
SysConf: Migrate to new filesystem interface
2018-04-14 23:29:25 +02:00
Léo Lam
c73b05e200
Merge pull request #6647 from aldelaro5/qt-fix-mbp
...
Qt/Debugger: correctly set the MBP attributes when adding an address one
2018-04-14 23:22:57 +02:00
aldelaro5
0f8c51dfe4
Wx: Implement the new debugger icons
2018-04-14 17:22:04 -04:00
Léo Lam
ee955e37a9
Merge pull request #6564 from JosJuice/translate-certain-button-names
...
Translate certain button names but not all
2018-04-14 23:20:39 +02:00
Léo Lam
aafa8a10e1
Merge pull request #6643 from lioncash/oprofile
...
CMakeLists: Define an OProfile target and use it
2018-04-14 23:12:17 +02:00
aldelaro5
1401fbc71a
Qt/Debugger: correctly set the MBP attributes when adding
...
Not setting the end address causes the GetMecheck function to never think a matching address MBP exists.
2018-04-14 17:05:23 -04:00
Léo Lam
2f22c76db1
UICommon: Avoid including Xrandr.h
...
Xlib has really terrible headers that declare non-namespaced
macros and typedefs for common words.
Just wasted 10 minutes trying to figure out why a unit test failed
to build before I remembered it was Xrandr.h conflicting with our
enum class members again.
To fix the issue, this removes the Display* parameter from the
EnableScreensaver function (which was unused) so we don't have
to include Xrandr.h anymore.
2018-04-14 17:14:38 +02:00
Léo Lam
62269572e4
UICommon: Fix indirect includes
2018-04-14 16:42:54 +02:00
Léo Lam
e253d3d919
Merge pull request #6640 from spycrab/qt_scale_render
...
Qt: Fix render size not matching window size
2018-04-14 14:56:33 +02:00
Lioncash
b31281527a
CMakeLists: Define an OProfile target and use it
...
Allows us to bring includes and relevant libraries into scope by explicitly declaring linkage against the target
as opposed to using a variable. Also removes the dumping of OProfile includes into the top-level directory.
2018-04-13 19:35:17 -04:00
Léo Lam
8bae4b7e51
IOS/STM: Reset the event hook at the correct time
...
Just re-disassembled STM and found out I have made a mistake when
I changed STM stuff back in 2016.
I accidentally made STM reset the event hook on close when it should
have been done in the destructor (i.e. when IOS gets reset on console).
Verified in IDA that STM just `IOS_ResourceReply(request, IOS_OK)`
without ever resetting the hook.
2018-04-13 23:34:35 +02:00
Léo Lam
b1bbd8a50e
Merge pull request #6625 from lioncash/evdev-udev
...
InputCommon/CMakeLists: Include evdev and udev includes on a by-target basis
2018-04-13 20:50:31 +02:00
Léo Lam
52905a5fae
Merge pull request #6627 from sepalani/map-strip
...
PPCSymbolDB: Do not truncate fixed size symbols
2018-04-13 20:48:28 +02:00
spycrab
a12d4996ed
Qt: Use new debugger icons
2018-04-13 20:40:41 +02:00
spycrab
8536e31136
Qt: Fix render size not matching window size
2018-04-13 20:12:13 +02:00
Lioncash
b256f873ca
CMakeLists: Link in zlib privately where applicable
...
Also, use the target name introduced via find_package(ZLIB) instead
of hardcoding the 'z' name in the link libraries.
2018-04-13 08:29:46 -04:00
JosJuice
7ed28297b2
ControllerEmu: Use enum instead of bool for translatability
2018-04-13 13:04:26 +02:00
JosJuice
3f13dbe087
Translate certain button names but not all
...
Some button names should be translated, for instance Up, Left and such.
At the same time, some other button names shouldn't be translated,
for reasons that might be less obvious. In 0146456af
, I removed the
_trans markers for button names that never need to be translated
(such as A and B), but that isn't actually enough to ensure that
DolphinWX won't try to translate them anyway. This commit adds a bool
that explicitly tells the GUI whether a button name should be translated.
Otherwise we'll have problems like the GUI treating the button name "B"
(which isn't supposed to be translated) as matching the translatable
string "B" (being an abbreviation of "bytes"), meaning that the button
"B" will be labeled "o" when running Dolphin in French (after
translations get pulled from Transifex the next time).
By the way, while it turned out that DolphinWX translated all button
names, it also turned out that DolphinQt2 translated *no* button names.
Go figure. This commit makes them consistent with each other.
2018-04-13 13:04:26 +02:00
JosJuice
e604641b12
Remove leftovers of projection hack support
2018-04-13 12:52:42 +02:00
Markus Wick
71dd2d9d4c
Merge pull request #6632 from lioncash/fp
...
Interpreter: Don't use a union to type-pun between integral and FP types
2018-04-13 11:12:01 +02:00
Lioncash
a36bf438cd
Interpreter_FloatingPoint: Handle QNaNs properly in frsp
...
Essentially the same behavior as the SNaN path, minus the conditional result and setting of the VXSNAN FPSCR bit.
2018-04-12 19:47:10 -04:00
Lioncash
965b963a6f
Interpreter_FloatingPoint: Handle SNaNs properly in frsp
...
If FPSCR[VE] is set, a result isn't supposed to be written to the destination,
just the FPSCR[VXSNAN] bit gets set, and FPSCR[FR] and FPSCR[FI] get set to zero.
If FPSCR[VE] isn't set, then we do write out a result, however, the FPSCR[FPRF]
field is updated to signify a QNaN (yes, a QNaN, the FPRF field doesn't have
a bit configuration for SNaNs).
2018-04-12 19:47:06 -04:00
Lioncash
e28d063539
x64Emitter: Make the Align* functions return a non-const data pointer
...
There's no real requirement to make this const, and this should also
be decided by the calling code, considering we had places that would
simply cast away the const and carry on.
2018-04-12 19:46:55 -04:00
Lioncash
ab25eb6449
Interpreter_LoadStorePaired: Don't use a union to type-pun between integral and FP types
2018-04-12 19:44:31 -04:00
Lioncash
7a3158a693
Interpreter_FPUtils: Don't use a union to type-pun between integral and FP types
...
The previous code invokes undefined behavior. memcpy will optimize away
to the relevant loads and stores while maintaining well-defined
behavior.
2018-04-12 19:44:31 -04:00
Tilka
bbd1bb8eaa
Merge pull request #6636 from phire/fix_autoformatting
...
Fix change in comment meaning by autoformat.
2018-04-12 22:52:06 +01:00
Scott Mansell
0e6d01220a
Fix change in comment meaning by autoformat.
2018-04-13 09:20:27 +12:00
Tilka
27515f4c9b
Merge pull request #6626 from lioncash/dcbz_l-disasm
...
GekkoDisassembler: Fix disassembly of dcbz_l
2018-04-12 22:18:56 +01:00
Léo Lam
a287bbc3bd
Move SysConf to Core
...
It's not common code that could be reused for, say, Citra;
it's absolutely specific to Wii emulation and only used by the Dolphin
core, so let's move it there.
Another reason for doing this is to avoid having Common depend on Core.
2018-04-12 22:16:37 +02:00
Léo Lam
0856d4a68a
SysConf: Migrate to new filesystem interface
...
It was discovered that some titles rely on filesystem metadata to work
properly. Currently, in master they either simply won't find their
save files (for example Bolt) or will complain about the Wii system
memory being corrupted (on first use or every time depending on
the title).
In order to even be able to keep track of file metadata, we first need
to eliminate all direct accesses to the NAND and make all kinds of
operations go through the filesystem code added in PR 6421.
This commit starts the migration process by making SysConf use
the new FS interface.
2018-04-12 22:16:37 +02:00
Léo Lam
3744a6d3f5
FileSystem: Add some more wrappers for convenience
2018-04-12 22:16:37 +02:00
Léo Lam
95aae11164
IOS: Do not manually close devices in destructor
...
This used to be necessary for properly cleaning up the FS state because
the old FS implementation used static state and only performed cleanup
in the close function, not in the destructor.
Now that the static state is gone, we do not need to close devices
manually anymore.
2018-04-12 22:16:10 +02:00
spycrab
40bb9974f2
Reformat all the things!
2018-04-12 21:28:39 +02:00
Sepalani
7d36165489
PPCSymbolDB: Do not truncate fixed size symbols
...
Fix comparison warning
2018-04-10 21:50:33 +04:00
Sepalani
9b8866ba78
PPCSymbolDB: Replace alert with LOG message
2018-04-10 21:49:47 +04:00
Lioncash
1c17329e2f
GekkoDisassembler: Fix disassembly of dcbz_l
...
Previously this would fall through and disassemble as a generic "ps_[number]" junk instruction.
2018-04-10 11:22:01 -04:00
Lioncash
73ebc190fa
InputCommon/CMakeLists: Link evdev and udev in privately
...
These libraries aren't directly used outside of InputCommon
2018-04-10 09:59:55 -04:00
Lioncash
d63d0b5069
InputCommon/CMakeLists: Include evdev and udev includes on a by-target basis
...
Avoids including the evdev/udev includes in the top-level directory
2018-04-10 09:59:51 -04:00
Markus Wick
0bfeb37a1f
Merge pull request #6604 from lioncash/dcbz_l
...
Interpreter_LoadStore: Generate a program exception if dcbz_l is executed when HID2[LCE] is zero
2018-04-09 23:04:09 +02:00
JosJuice
a66d56aece
Use configured locale in UICommon::FormatSize
...
StringFromFormat always uses the C locale, so we can't use it if we want
the decimal separator to be locale aware, but we can use a stringstream.
2018-04-09 19:14:15 +02:00
JosJuice
0dca432836
Remove old code for using default locale
...
This isn't needed anymore now that the global C++ locale isn't
set to the classic locale.
2018-04-09 19:14:15 +02:00
JosJuice
13d060491c
DolphinQt2: Set locale
...
We want things like number formatting to be done the way the user expects.
2018-04-09 19:14:14 +02:00
JosJuice
72040600d7
Set locale to "en_GB" if "en" is configured
2018-04-09 19:14:14 +02:00
JosJuice
9417fc6a3a
DolphinWX: Set C++ locale
...
After 3a83ebc
, the Show System Clock feature started using the
unfortunate combination of MM/DD/YY dates (rare outside of the US)
and 24-hour time (rare in the US) regardless of the user's locale
settings. This commit makes it use the configured locale again.
I've noticed one minor difference in behavior between now and
before 3a83ebc: The new way of setting the C/C++ locale seems to
treat "en" as "en-US", but the wx way of setting the C locale
treated it as "en-GB" (at least on Windows).
2018-04-09 19:14:14 +02:00
JosJuice
7aaaf44229
Merge pull request #6611 from leoetlino/remove-workaround
...
Boot_WiiWAD: Remove a timing issue workaround
2018-04-09 15:46:39 +02:00
Léo Lam
67f8e6e60a
Merge pull request #6620 from lioncash/dvd
...
DVDInterface: Deduplicate code in UpdateInterrupts()
2018-04-09 12:52:38 +02:00
Léo Lam
cb88e1256f
Merge pull request #6617 from lioncash/ppcanalyst
...
PPCAnalyst: Minor cleanup
2018-04-09 12:48:16 +02:00
Léo Lam
783cbef638
Merge pull request #6618 from lioncash/symboldb
...
PPCSymbolDB: Minor cleanup
2018-04-09 12:46:28 +02:00
Lioncash
1b3dae918a
StreamADPCM: Turn the ADPCM decoder into a class
...
Migrates the state to be instance-based as opposed to being a flat
namespace. This keeps behavior localized to its own instantiable unit
(and forces uses of the class to also be localized, lest they cart around
an instance all over the place).
2018-04-09 03:49:18 -04:00
Lioncash
a8088b7365
ProcessorInterface: Remove prefixed underscores from parameters
...
These are reserved by the implementation for any use.
2018-04-09 03:21:59 -04:00
Lioncash
419ed1b46a
DVDInterface: Deduplicate code in UpdateInterrupts()
2018-04-09 03:18:51 -04:00
Lioncash
a0f943178b
Profiler: Move BlockStat and ProfileStats structures into the Profiler namespace
...
These should be part of the namespaced API and not be sitting in the
global namespace.
2018-04-08 22:29:48 -04:00
Lioncash
0461709c8d
PPCSymbolDB: Use auto for iterators where applicable
2018-04-08 22:03:11 -04:00
Lioncash
b44eb90ee4
PPCSymbolDB: Default destructor and pass to member variables in the constructor initializer-list
2018-04-08 21:56:24 -04:00
Lioncash
d6d17eea60
PPCSymbolDB: Remove unused function pointer typedef
2018-04-08 21:54:50 -04:00
Lioncash
9c5115a627
PPCAnalyst: Simplify boolean assignments in SetInstructionStats()
...
Ternaries here aren't necessary if all we're checking against is if
something is non-zero
2018-04-08 21:42:43 -04:00
Lioncash
f2b2f5b4c7
PPCAnalyst: Make ReorderType an enum class
...
Makes the values strongly typed and doesn't dump them into the class
itself.
2018-04-08 21:38:19 -04:00
Lioncash
5e5a56bd9b
PPCAnalyst: Remove unnecessary includes from header
2018-04-08 21:34:12 -04:00
Lioncash
4bd3b28823
PPCAnalyst: in-class initialize PPCAnalyzer's members
...
Eliminates the need to assign in the constructor initializer list.
2018-04-08 21:32:15 -04:00
Lioncash
433a56636b
PPCAnalyst: Move public interface above private interface
2018-04-08 21:31:19 -04:00
Léo Lam
8894b902df
Boot_WiiWAD: Remove a timing issue workaround
...
This was necessary to work around a FS timing issue which caused small
writes to take much longer than they should.
Now that we emulate timings for the FS module including its file cache,
we don't need to maintain this workaround anymore.
2018-04-08 11:23:18 +02:00
Léo Lam
9dbc760bb7
Merge pull request #6606 from lioncash/bochs
...
CMakeLists: Link bochs in privately where applicable
2018-04-08 11:08:12 +02:00
Lioncash
f1be7cd4a0
CMakeLists: Link bochs in privately where applicable
...
Everything that links in core doesn't need to see anything related to bochs, because it's only used internally.
Anything else that relies on bochs should be linking it in explicitly.
2018-04-08 04:59:58 -04:00
Léo Lam
0a290f5d11
Merge pull request #6607 from lioncash/ppc
...
PPCDebugInterface: Remove redundant HostRead_U32() call in Disassemble()
2018-04-08 10:25:43 +02:00
Léo Lam
2a535d5a55
Merge pull request #6608 from lioncash/gekko
...
Gekko: In-class initialize members where applicable
2018-04-08 10:23:42 +02:00
Léo Lam
219728dbd4
Merge pull request #6609 from lioncash/ufpr
...
Gekko: Remove unused UFPR union
2018-04-08 10:22:43 +02:00
Lioncash
88a80f118c
Common/Swap: Amend BigEndianValue's operator= to return a reference to the object rather than returning void
...
The general convention is to return a reference to the object that was
acted on, otherwise you can get into situations with errors because the
type wasn't being propagated properly
2018-04-08 01:22:18 -04:00
Lioncash
5d1349f9c7
Gekko: Remove unused UFPR union
...
Using this in its current form would invoke undefined behavior, as it's
using a union to type pun between data types. It's also, well, unused,
so we don't need to keep it around.
2018-04-07 22:30:26 -04:00
Lioncash
d5555b49e9
Gekko: In-class initialize members where applicable
...
Allows defaulting the default constructor. Also moves assignment to
initializer lists where applicable as well.
2018-04-07 22:26:24 -04:00
Lioncash
3e50b0e320
PPCDebugInterface: Remove redundant HostRead_U32() call in Disassemble()
...
We already read the necessary information with the
HostRead_Instruction() call. Internally, it calls HostRead_U32() as
well, so there's no difference in behavior.
2018-04-07 22:20:59 -04:00
Léo Lam
f4a2ad3c88
IOS/FS: Emulate read/write/close/seek timing
...
Also bumps up the state version.
2018-04-07 23:35:28 +02:00
Léo Lam
42983c0bd3
IOS/FS: Emulate superblock write timing
2018-04-07 23:35:28 +02:00
Léo Lam
b74577ff43
IOS/FS: Emulate GetAttr() timing
2018-04-07 23:35:28 +02:00
Léo Lam
896d875187
IOS/FS: Emulate Open() timing
2018-04-07 23:35:28 +02:00
Léo Lam
32b1409cbd
IOS/FS: Use hardware tested minimum reply time
...
...instead of an arbitrary guess.
2018-04-07 23:35:28 +02:00
Léo Lam
7dff069659
Merge pull request #6605 from spycrab/gc_fix_rumble
...
[RFC] Core/GC: Fix rumble for "Luigi's Mansion"
2018-04-07 23:23:30 +02:00
spycrab
eed066e8a7
Core/GC: Fix rumble for "Luigi's Mansion"
2018-04-07 22:13:01 +02:00
Lioncash
181539e049
Interpreter_LoadStore: Generate a program exception if dcbz_l is executed when HID2[LCE] is zero
...
If the locked cache isn't enabled, dcbz_l is illegal to execute
(locked cache is off, locked cache instructions don't work, makes sense)
This makes exception handling more accurate. It was previously possible to hit the DSI exception
handler when HID2[LCE] is set to zero, which isn't correct.
With this change we no longer hit the DSI handler, however we still have a lingering issue elsewhere
likely to do with exception precedence, we seem to hit the Floating Point exception handler instead
in some cases. This isn't due to the instruction itself directly however, so this is just another bug
to fix elsewhere.
2018-04-06 23:53:44 -04:00
Anthony
9e2806c181
[AVIDump] fix compilation issues on Linux
2018-04-06 19:53:10 -07:00
Léo Lam
a957bd1ecc
Merge pull request #6421 from leoetlino/fs-interface
...
IOS: Refactor the filesystem code
2018-04-06 12:17:09 +02:00
Lioncash
3e946d87e4
DolphinWX/DolphinQt2 CMakeLists: Use cmake -E instead of mkdir -p for creating language directories
...
CMake already has this functionality built-in. This lessens depending on the host system environment
and is more cross-platform friendly (which is always nice from a build-system point of view).
2018-04-05 12:49:33 -04:00
Léo Lam
a3bdb5d85e
Merge pull request #6598 from lioncash/target
...
DolphinQt2/CMakeLists: Use the target_* equivalents of add_definitions and include_directories
2018-04-05 17:53:24 +02:00
Léo Lam
4cd5ef76ad
Merge pull request #6537 from spycrab/qt_quick_assign
...
Qt/Mapping: Implement "Iterative Input"
2018-04-05 17:44:30 +02:00
Lioncash
839fc7e749
DolphinQt2/MainWindow: Resolve a memory leak on systems with X11
...
In the case we had X11 libs available, we'd allocate an XRRConfiguration instance and pass it
to the GraphicsWindow instance, but it would never actually be freed.
2018-04-05 09:07:08 -04:00
Lioncash
9c27c7eda8
DolphinQt2/CMakeLists: Use the target_* equivalents of add_definitions and include_directories
...
add_definitions and include_directories don't operate on a by-target basis, they act on a
by-directory basis (i.e. if we defined two targets, A and B, in this CMakeLists file, add_definitions
would add the definitions to the COMPILE_DEFINITIONS directory property which both A and B would
implicitly use).
The same idea applies to include_directories, only it appends to the INCLUDE_DIRECTORIES directory
property.
Instead, specify these on the target to keep scope as narrow as possible.
2018-04-05 07:52:25 -04:00
Léo Lam
d0b7c013a1
Merge pull request #6593 from lioncash/headless
...
DolphinNoGUI/CMakeLists: Remove the use of SRCS and LIBS variables
2018-04-05 10:07:31 +02:00
Léo Lam
39cb22ddc9
Merge pull request #6594 from lioncash/qt
...
DolphinQt2/CMakeLists: Specify Qt libraries via COMPONENTS in the find_package call
2018-04-05 10:03:41 +02:00
Markus Wick
a9cd67125c
Merge pull request #6597 from lioncash/fp-load-store
...
Interpreter_LoadStore: Generate alignment exceptions if an FP load/store instruction's effective address is not word aligned
2018-04-05 09:55:49 +02:00
Lioncash
912c9490c0
Interpreter_LoadStore: Generate alignment exceptions if an FP load/store instruction's effective address is not word aligned
...
This is one of the conditions for an alignment exception documented in
the 750CL architecture reference manual in section 4.5.6, which also
applies to the Gekko microprocessor.
2018-04-05 00:30:53 -04:00
Lioncash
980f1641b5
Interpreter_LoadStore: Generate alignment exceptions if dcbz or dcbz_l are executed with the data cache disabled
...
This is an exception condition documented within section 4.5.6 in the
architecture reference manual for the PPC 750CL, which also applies to
the Gekko microprocessor.
Also moves dcbz_l's implementation out of Interpreter_Paired and beside
dcbz where it belongs.
2018-04-04 18:44:17 -04:00
spycrab
e0ba2a4aeb
Qt: Implement "Iterative Input"
2018-04-04 21:51:51 +02:00
Lioncash
fb929ab8e5
DolphinQt2/CMakeLists: Specify Qt modules via COMPONENTS in the find_package call
...
Eliminates the need to find the individual modules separately
2018-04-04 15:05:20 -04:00
Lioncash
6f694e435c
DolphinNoGUI/CMakeLists: Remove the use of SRCS and LIBS variables
...
Instead, operate on the target directly. This removes the last usages of the
SRCS and LIBS variables.
2018-04-04 11:42:57 -04:00
Léo Lam
9be505fde2
Merge pull request #6473 from spycrab/qt_dbg_memory
...
Qt/Debugger: Implement "Memory" widget
2018-04-04 16:58:04 +02:00
Léo Lam
4d5adf3dfa
Merge pull request #6588 from lioncash/cmake
...
DolphinWX/DolphinQt2 CMakeLists: Remove use of LIBS and SRCS variables
2018-04-04 16:57:01 +02:00
Lioncash
5e4446c313
DolphinQt2/CMakeLists: Remove usages of LIBS and SRCS variables
...
Instead, operate on the target itself. Also removes the variable
representing the name of the target. We can just refer to this directly
2018-04-04 09:09:45 -04:00
spycrab
95ae4b34d9
Qt/Debugger: Implement "Memory" widget
2018-04-04 13:43:30 +02:00
Markus Wick
c6d0d9a01f
Merge pull request #6578 from JosJuice/remove-projection-hacks
...
Remove support for projection hacks
2018-04-04 09:10:32 +02:00
Lioncash
3ea0a37d72
Interpreter_LoadStore: Generate alignment exceptions if lmw, lswi, lswx, stmw, stswi, or stswx is executed when the MSR[LE] bit is set
...
Improves exception accuracy regarding an admittedly very unlikely
scenario.
2018-04-03 20:47:40 -04:00
Lioncash
74aff4d9ef
HiresTexture: Correct texture hashes
...
Fixes a regression introduced in 2da8d98b2f
2018-04-03 12:42:05 -04:00
Lioncash
516b46845d
DolphinWX/CMakeLists: Remove usages of the LIBS and SRCS variables
...
Instead, operated on the target itself.
2018-04-03 08:04:29 -04:00
Markus Wick
1e0f72f2da
Merge pull request #6585 from lioncash/exception
...
Interpreter_LoadStore: Handle alignment exceptions in lmw, lwarx, stmw, and stwcx + fixes for eciwx and ecowx
2018-04-03 09:52:36 +02:00
Léo Lam
91f3650fa5
Merge pull request #6586 from lioncash/video-backends
...
CMakeLists: Migrate video backends off the add_dolphin_library macro and remove said macro
2018-04-02 17:10:52 +02:00
Stenzek
9924434cdf
Merge pull request #6573 from stenzek/bad-shader-uid-cache
...
ShaderCache: Improve shader UID cache file reliability
2018-04-03 01:00:09 +10:00
Lioncash
de0ed1a5fb
Interpreter_LoadStore: Update the DAR if a DSI exception occurs in eciwx and ecowx
...
Also once a DSI exception occurs, execution is supposed to leave the
instruction immediately. It doesn't finish execution.
2018-04-02 08:34:32 -04:00
Lioncash
a013638dcb
Interpreter_LoadStore: Properly update the DAR whenever an alignment exception occurs within eciwx and ecowx
...
These should be updating the DAR when an alignment exception occurs,
just like every other instruction that can cause an alignment exception.
2018-04-02 08:34:32 -04:00
Lioncash
c1b78106e7
Interpreter_LoadStore: Flag alignment exceptions on misaligned addresses in lwarx, lmw, stmw, and stwcx
...
The effective address given to these instructions must be word (4 byte) aligned,
and if the address is not aligned like that, then an alignment exception
gets triggered.
We currently don't update the DSISR in this case properly, since we
didn't really handle alignment exceptions outside of ecowx and eciwx,
and even then the handling of it isn't really that great, considering
the DAR isn't updated with the address that caused the exception to
occur.
The DSISR will eventually be amended to be properly updated.
2018-04-02 08:34:26 -04:00
Lioncash
b184923540
Vulkan/CMakeLists: Migrate off add_dolphin_library
...
Finishes the migration work started in 3a4c3bbe01
2018-04-02 08:29:37 -04:00
Lioncash
8b43a31855
Software/CMakeLists: Migrate off add_dolphin_library
...
Continues the migration work started in 3a4c3bbe01
2018-04-02 08:24:40 -04:00
Lioncash
a3c53ff754
OGL/CMakeLists: Migrate off add_dolphin_library
...
Continues the migration work started in 3a4c3bbe01
2018-04-02 08:22:39 -04:00
Lioncash
d4f8502ad1
Null/CMakeLists: Migrate off add_dolphin_library
...
Continues the migration work started in 3a4c3bbe01
2018-04-02 08:17:00 -04:00
Lioncash
3854e2bcca
D3D/CMakeLists: Migrate off add_dolphin_library
...
Continues the migration work started in 3a4c3bbe01
2018-04-02 08:15:22 -04:00
Markus Wick
2449be7f0c
Merge pull request #6571 from lioncash/rotate
...
CommonFuncs: Generify rotation functions and move them to BitUtils.h
2018-04-02 12:18:22 +02:00
Markus Wick
dea30e08bf
Merge pull request #6576 from lioncash/iconv
...
CMakeLists: Remove iconv from the LIBS variable
2018-04-02 11:07:19 +02:00
Léo Lam
80525cfd4e
Merge pull request #6584 from lioncash/async-init
...
AsyncRequests: In-class initialize class members
2018-04-02 10:37:07 +02:00
Lioncash
672665dec0
AsyncRequests: In-class initialize class members
...
Prior to this change, it's possible for m_wake_me_up_again to be used
while it's in an uninitialized state from the exposed API.
e.g.
- Using SetEnable after construction would perform an uninitialized read.
- Using PushEvent would perform an uninitialized read by way of operator |=.
internally, an uninitialized read can happen if PullEventsInternal() is
executed before other functions.
Just to avoid the whole possibility of performing uninitialized reads,
we just give the class member a default value of false.
2018-04-01 19:06:43 -04:00
Lioncash
fd9eab73fb
CPUDetect: Make CPUVendor enum an enum class
...
Avoids dumping the enum contents into the global namespace.
2018-04-01 17:47:50 -04:00
Léo Lam
bf8ffe5bfb
Merge pull request #6582 from lioncash/const
...
Jit64/JitRegCache: Make member functions const qualified where applicable
2018-04-01 23:32:58 +02:00
Léo Lam
7d561c7e0e
Merge pull request #6579 from lioncash/socket
...
IOS/Socket: Minor changes to WiiSocket
2018-04-01 23:31:47 +02:00
Lioncash
0f6c3c7b35
Jit64/JitRegCache: Make member functions const qualified where applicable
...
None of these member functions modify class state.
Also makes the parameter name for ScoreRegister's implementation
consistent with its declaration.
2018-04-01 16:53:00 -04:00
JosJuice
c6931ee5b8
Merge pull request #6577 from lioncash/memcard
...
EXI_DeviceMemoryCard: Get rid of magic number in SetCS()
2018-04-01 22:08:36 +02:00
JosJuice
621e1758fb
Merge pull request #6581 from lioncash/const
...
DSPJitRegCache: Make FindFreeReg() a const member function
2018-04-01 22:05:48 +02:00
Lioncash
6cfa9fda6b
DSPJitRegCache: Make FindFreeReg() a const member function
...
This member function doesn't modify class state.
2018-04-01 16:01:25 -04:00
Lioncash
fe9d989765
DSPJitRegCache: Remove unnecessary casts in FlushRegs()
...
We can just use the proper printf specifiers instead.
2018-04-01 15:49:21 -04:00
JosJuice
91732e2baf
Remove support for projection hacks
...
This isn't really useful for anything anymore as far as I know.
2018-04-01 21:41:18 +02:00
Lioncash
ad17d9a979
IOS/Socket: Delete WiiSocket's copy constructor
...
If the copy assignment operator is deleted, then the copy constructor
should be deleted as well, otherwise it's a hole in the API where copies
can be made (and if this were an intended case, it should be
documented).
So we delete the copy constructor and explicitly default the move
assignment and move constructor to signify this is intended to be a
move-only type.
2018-04-01 15:38:37 -04:00
Lioncash
ad575a1556
IOS/Socket: Place WiiSocket's private interface below the public interface
...
In the rest of the codebase we try to position the private interface
below the public interface (unless it's otherwise not possible).
2018-04-01 15:38:33 -04:00
Lioncash
abb33637a3
IOS/Socket: In-class initialize WiiSocket members
2018-04-01 15:27:58 -04:00
Lioncash
8fbd6e2a87
EXI_DeviceMemoryCard: Get rid of magic number in SetCS()
...
Keeps the code consistent with other usages of the same constant
2018-04-01 15:21:20 -04:00
Mat M
d8dd7b9e66
Merge pull request #6533 from spycrab/qt_desc_box
...
Qt/GraphicsWindow: Decrease description box size
2018-04-01 14:06:50 -04:00
Lioncash
8db4ab7dd6
CMakeLists: Remove iconv from the LIBS variable
...
Adjusts Common to use the ICONV_LIBRARIES variable directly and doesn't
append it to the LIBS variable.
After this, there's only one remaining usage where libraries are added
to the LIBS variable, after which it can be removed once the rest of
the targets are migrated off add_dolphin_library
2018-04-01 14:00:55 -04:00
Stenzek
2687c55cf6
Renderer: Only recreate frame dump texture if dimensions differ
...
This was a typo, been around for a while. == should be !=. May improve
frame dumping performnace slightly, but I doubt much if any.
2018-04-02 01:15:48 +10:00
Stenzek
8587403e0e
ShaderCache: Write currently-known UIDs to cache when re-creating file
...
This way, if we load a UID cache where the data was incomplete (e.g.
Dolphin crashed), we don't lose the existing UIDs which were previously
at the beginning.
2018-04-02 01:13:24 +10:00
Stenzek
36ea2f7a26
ShaderCache: Fix issue where shader cache wasn't recreated when invalid
2018-04-02 01:02:20 +10:00
Léo Lam
aaf9f4759f
Merge pull request #6570 from lioncash/lzo
...
CMakeLists: Remove lzo from the LIBS variable and make linkage private
2018-04-01 11:51:06 +02:00
Lioncash
a4420d6d94
Jit64: Make CheckMergedBranch() a const member function
...
This function doesn't modify class state.
2018-03-31 20:12:53 -04:00
Lioncash
c3483a1823
CommonFuncs: Generify rotation functions and move them to BitUtils.h
...
These are bit manipulation functions, so they belong within BitUtils.
This also gets rid of duplicated code and avoids relying on compiler
reserved names existing or not existing to determine whether or not we
define a set of functions.
Optimizers are smart enough in GCC and clang to transform the code to a
ROR or ROL instruction in the respective functions.
2018-03-31 18:09:45 -04:00
Lioncash
eee32c030b
CMakeLists: Remove lzo from the LIBS variable and make linkage private
...
The only place this library is needed (core) is already linked in the core target.
Also make the linkage private to create linkage failures if the dependency isn't
explicitly linked in elsewhere where it should be.
Reduces the dependency on the LIBS variable.
2018-03-31 15:01:05 -04:00
Mat M
76e1a5b892
Merge pull request #6569 from JosJuice/kill-emu-state
...
Remove EmuState
2018-03-31 14:04:30 -04:00
Mat M
a6f1c6e2e9
Merge pull request #6568 from leoetlino/dead
...
Remove dead code
2018-03-31 14:02:40 -04:00
Shawn Hoffman
6a0c15491b
Remove EmuState
2018-03-31 16:21:17 +02:00
Léo Lam
df0d1c8138
Merge pull request #6563 from JosJuice/fix-wii-banner-load
...
Fix loading Wii banners for games that initially were cached without banners
2018-03-31 14:59:09 +02:00
Léo Lam
c82da2b978
Remove dead code
...
Unused, old code that is intended to be removed should not be left in
comments -- that is what version control is for.
2018-03-31 14:56:27 +02:00
JosJuice
5847e213af
Clean up the end of GameFile::BannerChanged
2018-03-31 14:52:21 +02:00
Léo Lam
329622120f
Merge pull request #6567 from JosJuice/discio-enums-case
...
DiscIO: Don't use all uppercase for enum values
2018-03-31 14:37:26 +02:00
JosJuice
4387432436
DiscIO: Don't use all uppercase for enum values
...
Also removing some prefixes that we don't need now that we're
using enum classes instead of plain enums.
2018-03-31 14:11:32 +02:00
Léo Lam
4e547772da
IOS/FS: Make the NAND root path a parameter
...
Cleaner than having the backend figure out which NAND root to use.
2018-03-31 10:58:49 +02:00
Léo Lam
c56f31906c
IOS/FS: Remove some redundant log messages
...
The FS IPC code already logs all commands, so keeping the log messages
in the backend is redundant.
2018-03-31 10:58:49 +02:00
Léo Lam
2d8be6a77d
IOS/FS: Make it harder to forget closing FDs
...
Return a FileHandle which will automatically close the FD when
the handle goes out of scope. For the rare cases where this behaviour
is undesirable, the FD can be released from the handle.
2018-03-31 10:58:48 +02:00
Léo Lam
de15e09a4f
Log: Rename IOS_FILEIO to IOS_FS
...
Let's use the actual name of the system module.
Also, the FS code is not all about files.
2018-03-31 10:58:37 +02:00
Léo Lam
5a7b966b6d
IOS: Rewrite FS to use FileSystem
...
This is the large change in the branch.
This lets us use either the host filesystem or (in the future) a NAND
image exactly the same way, and make sure the IPC emulation code
behaves identically. Less duplicated code.
Note that "FileIO" and "FS" were merged, because it actually doesn't
make a lot of sense to split them: IOS handles requests for both
/dev/fs and files in the same resource manager, and as it turns out,
/dev/fs commands can *also* be sent to non /dev/fs file descriptors!
If we kept /dev/fs and files split, there would be no way to
emulate that correctly. I'm not aware of anything that does that (yet?)
but I think it's important to be correct.
2018-03-31 10:58:37 +02:00
Léo Lam
78478a651d
Boot: Move CreateVirtualFATFilesystem to Boot_WiiWAD
...
It has nothing to do in the filesystem code.
(It also smells like a workaround for some kind of timing issue.)
2018-03-31 10:58:37 +02:00
Léo Lam
fcfe4e2a26
IOS: Change GetFS() to return a FileSystem
...
Now that we have a proper filesystem interface, it makes more sense
to return it instead of the emulated IOS device (which isn't
really usable for any purpose other than emulated IPC).
2018-03-31 10:45:44 +02:00
Léo Lam
1eec459e30
IOS: Extract existing FS code into a host backend
...
Extract the existing FS code into a HostBackend implementing
the filesystem interface.
Compared to the original code, this uses less static state.
The open host files map is now a member variable
as it should have been. Filesystem handles are now also easier
to savestate. Some variable names and log messages were cleaned up.
Nothing else has been changed.
2018-03-31 10:45:44 +02:00
Léo Lam
f1dbb8952c
IOS: Introduce a new FileSystem interface
...
Add a new FileSystem class that can be used to perform operations
on the emulated Wii filesystem.
This will allow separating the IPC code (reading from and writing to
memory to handle IOS FS commands) and the actual filesystem code
in a much better way.
This also paves the way for implementing another filesystem backend
in the future -- NAND images for more complete emulation, including
filesystem metadata like permissions or file orders, which some games
and homebrew actually care about -- without needing to make any more
changes to the other parts of the codebase, in addition to making
filesystem behaviour tests easier to write.
2018-03-31 10:45:44 +02:00
Léo Lam
1bdfedf3c6
Common: Add a Result class
...
This adds a lightweight, easy to use std::variant wrapper intended to
be used as a return type for functions that can return either a result
or an error code.
2018-03-31 10:45:44 +02:00
Lioncash
e93159e54a
CMakeLists: Link in system framework libraries explicitly on macOS
...
Makes our libraries explicitly link in which libraries they need.
This makes our dependencies explicit and removes the reliance on the
LIBS variable to contain the libraries that they need.
2018-03-30 16:14:10 -04:00
Léo Lam
7833f1a931
Merge pull request #6558 from lioncash/input
...
InputCommon/CMakeLists: Link in ForceFeedback library explicitly on macOS
2018-03-30 14:05:36 +02:00
JosJuice
a7ba69e16a
Fix loading Wii banners for games that initially were cached without banners
...
Fixes https://bugs.dolphin-emu.org/issues/10969
2018-03-30 12:04:01 +02:00
Mat M
c3398c9e2c
Merge pull request #6559 from spycrab/qt_crashes
...
Qt/PatchesWidget: Fix segfault
2018-03-29 18:51:22 -04:00
Mat M
fc99b21080
Merge pull request #6560 from JosJuice/invalid-games-in-game-list
...
DolphinQt2: Don't show invalid games in game list
2018-03-29 18:49:38 -04:00
Mat M
65a1065cde
Merge pull request #6561 from JosJuice/uid-version-last-changed
...
Put a "last changed in PR" comment next to UID cache version
2018-03-29 18:48:12 -04:00
JosJuice
b065f86270
Translate the netplay chat info message about QoS
2018-03-29 22:44:23 +02:00
JosJuice
01ea10824d
Put a "last changed in PR" comment next to UID cache version
...
This will create a merge conflict if two PRs try to increment the
cache version at the same time, which makes it noticeable that the
PR that gets merged last needs to increment the cache version again.
We already use this for savestates and the game list cache.
2018-03-29 22:38:37 +02:00
JosJuice
ff2fe73ec9
DolphinQt2: Don't show invalid games in game list
...
Regression from 1f1dae3
.
This problem doesn't happen in DolphinWX as far as I know, but if
you've ran into the problem in DolphinQt2, it will carry over to
DolphinWX because of the shared game list cache.
2018-03-29 21:52:21 +02:00
spycrab
55d9df379a
Qt/PatchesWidget: Fix segfault
2018-03-29 21:33:36 +02:00
Lioncash
b8a4ab23dd
InputCommon/CMakeLists: Link in ForceFeedback library explicitly on macOS
...
Makes an implicit dependency explicit. Also makes the macOS libraries link privately
as they aren't used in the exposed interface.
2018-03-29 11:53:50 -04:00
Léo Lam
e4f2ff0f32
Merge pull request #6557 from spycrab/qt_log_font
...
Qt/LogWidget: Add "Debugger Font" option
2018-03-29 15:12:33 +02:00
spycrab
8cb497cab2
Qt/LogWidget: Add "Debugger Font" option
2018-03-29 03:02:34 +02:00
Lioncash
b818cc682c
VideoCommon/Vulkan: Explicitly link in xxhash
...
Lessens the dependency on the LIBS variable (and also makes the required
libraries explicit).
2018-03-28 17:03:16 -04:00
Léo Lam
03a6a9b240
Merge pull request #6546 from spycrab/updater_ui
...
Implement Updater UI
2018-03-28 20:04:32 +02:00
Léo Lam
21a2c0284d
Merge pull request #6544 from spycrab/qt_fix_general
...
GeneralPane: Fix settings resetting and improve code
2018-03-28 20:01:57 +02:00
spycrab
429dc54159
Updater: Implement UI
2018-03-28 17:59:22 +02:00
spycrab
f700fcae2e
HttpRequest: Add callback option
2018-03-28 17:33:34 +02:00
Lioncash
fd7ac0d4a3
VideoCommon/CMakeLists: Migrate off add_dolphin_library
...
Continues the migration work started in 3a4c3bbe01
2018-03-28 09:57:50 -04:00
Léo Lam
c28850045d
Merge pull request #6552 from lioncash/uicommon-cmake
...
UICommon/CMakeLists: Migrate off of add_dolphin_library
2018-03-28 12:33:24 +02:00
Lioncash
a2a18380a7
UICommon/CMakeLists: Migrate off of add_dolphin_library
...
Continues the migration work started in
3a4c3bbe01
2018-03-28 06:29:09 -04:00
Markus Wick
fc59ec6f13
Merge pull request #6547 from lioncash/dead
...
PixelShaderGen: Remove dead code in WriteColor()
2018-03-28 10:43:15 +02:00
JMC47
3cd9465f91
Fix JIT64 mtsmsr issue after PIE support again.
2018-03-28 04:16:41 -04:00
Léo Lam
10f198f3cf
Merge pull request #6551 from lioncash/qt-misc
...
DolphinQt: Remove a few unused variables
2018-03-28 07:50:44 +02:00
JosJuice
748ebf6891
Merge pull request #6550 from lioncash/qt
...
HacksWidget: Remove duplicate AddDescription() calls in AddDescriptions()
2018-03-28 07:33:04 +02:00
Lioncash
df4ca7f05e
SearchBar: Remove unused class variables
2018-03-27 22:47:02 -04:00
Lioncash
306d132232
MainWindow: Remove unused std::string variable in NetPlayHost()
2018-03-27 22:47:02 -04:00
Lioncash
833c030496
WiiPane: Remove unused variable in OnUSBWhitelistRemoveButton()
2018-03-27 22:47:01 -04:00
Lioncash
eb8a853d8e
Resources: Remove unused string in Init()
2018-03-27 22:47:01 -04:00
Lioncash
568490fdfb
MD5Dialog: Call .empty() instead of testing against an empty string
2018-03-27 22:47:01 -04:00
Lioncash
d3283a881f
MenuBar: Remove unnecessary c_str() call
...
Also uses the character overload for find_last_of
2018-03-27 22:47:01 -04:00
Lioncash
b637163704
CodeWidget: Remove unnecessary c_str() calls
2018-03-27 22:46:51 -04:00
Lioncash
4a1123f519
HacksWidget: Remove duplicate AddDescription() call in AddDescriptions()
2018-03-27 22:36:37 -04:00
Lioncash
aa42534fed
FilesystemWidget: Pass path QString by const reference instead of by value in ExtractDirectory()
...
Makes it consistent with the surrounding API.
Also corrects a typo in ExtractFile's parameter list.
2018-03-27 22:00:40 -04:00
Lioncash
fc531993a9
DiscExtractor: Pass partition by reference rather than by value in ExtractDirectory()
2018-03-27 21:49:42 -04:00
Pierre Bourdon
ac97f0463f
Merge pull request #6548 from lioncash/const
...
LinearDiskCache: Don't cast away const in Read()
2018-03-28 03:14:38 +02:00
Lioncash
008442898c
LinearDiskCache: Don't cast away const in Read()
...
We really shouldn't make the out pointer in the read function const and
then summarily cast it away. Also alters Write to be consistent with
casting.
2018-03-27 21:09:18 -04:00
Lioncash
f10198500e
PixelShaderGen: Invert conditional in WriteColor()
...
Puts the true condition body first instead of the false one for better
reading.
2018-03-27 18:53:17 -04:00
Lioncash
c9e0045881
PixelShaderGen: Remove dead code in WriteColor()
...
The outer conditional executes only whenever destination alpha is used.
2018-03-27 18:46:25 -04:00
Léo Lam
ea166a4812
Merge pull request #6543 from lioncash/cast
...
HiresTextures: Remove unnecessary pointer casts in GenBaseName() + minor associated cleanup
2018-03-27 21:45:56 +02:00
Lioncash
2da8d98b2f
HiresTextures: Use std::minmax or std::minmax_element where applicable in GenBaseName()
...
Minimizes repetition.
std::minmax_element can be used for the 256 * 2 case, as it's only performing byte comparisons
and thus, there will always be an element smaller than 0xffff, so it doesn't need to be included
in the set of compared values.
2018-03-27 15:39:05 -04:00
Lioncash
d5a1edba09
HiresTextures: Remove unnecessary pointer casts in GenBaseName()
...
swap16 has an overload that accepts a u8*, performing the same behavior
in a well-defined manner.
2018-03-27 15:19:02 -04:00
Pierre Bourdon
4ed0e10f41
Merge pull request #6541 from spycrab/updater_feedback
...
Updater: Provide basic user feedback
2018-03-27 20:43:36 +02:00
spycrab
7ce147f4d5
Updater: Provide basic user feedback
2018-03-27 20:32:26 +02:00
spycrab
11b15a688b
GeneralPane: Fix settings resetting and improve code
2018-03-27 20:27:03 +02:00
Stenzek
92e7830be9
Merge pull request #6540 from spycrab/gcpad_segfault
...
Core: Check for initialized GCPad before resetting rumble
2018-03-28 02:40:53 +10:00
Léo Lam
3c61ee5f7f
Merge pull request #6542 from lioncash/cast
...
BPStructs: Remove an unnecessary pointer cast in GetBPRegInfo
2018-03-27 18:12:56 +02:00
Léo Lam
98f62a3ecd
Merge pull request #6530 from spycrab/qt_hires_icon
...
Various icon improvements
2018-03-27 18:08:46 +02:00
Lioncash
9feb18866b
BPStructs: Remove an unnecessary pointer cast in GetBPRegInfo
...
swap32 has an overload that accepts a u8*, performing the same behavior
in a well-defined manner.
2018-03-27 12:04:16 -04:00
spycrab
4f63d7f204
Qt: Fix low-resolution icon
2018-03-27 17:32:45 +02:00
spycrab
016ef43b27
Core: Check for initialized GCPad before resetting rumble
2018-03-27 16:26:36 +02:00
Léo Lam
ceed6890df
Merge pull request #6526 from lioncash/emitter
...
x64Emitter: Minor cleanup and changes
2018-03-27 08:49:36 +02:00
Lioncash
476c71efc1
x64Emitter: Make eligible register and immediate functions constexpr
...
Pointer variants aren't eligible as expressions with reinterpret cast
within them cannot be constexpr.
2018-03-26 18:21:22 -04:00
Lioncash
8b072e1383
x64Emitter: Make remaining eligible functions in OpArg constexpr
2018-03-26 18:21:21 -04:00
Lioncash
964201f2d3
x64Emitter: Use std::tie in OpArg's operator==. Provide operator!= for symmetry
2018-03-26 18:21:21 -04:00
Lioncash
7f583b66cb
x64Emitter: Clean up constructors for OpArg
...
Default initializes members and moves initial assignments into the
initializer list.
2018-03-26 18:21:17 -04:00
Miikka Juomoja
7169be242f
StringUtil: Fix possible bad free
2018-03-26 23:48:13 +02:00
Léo Lam
793c6d25f4
Merge pull request #4532 from Neui/env-var-usr-cfg
...
Use $DOLPHIN_EMU_PATH as an alternative for the user directory
2018-03-26 23:41:27 +02:00
Léo Lam
b0e4e35cc5
Merge pull request #6478 from spycrab/qt_default_btns
...
Qt: Replace "OK" with "Close" buttons
2018-03-26 22:48:26 +02:00
Léo Lam
d3f432946f
Merge pull request #6514 from lioncash/inputcommon-cmake
...
InputCommon/CMakeLists: Migrate off add_dolphin_library
2018-03-26 21:25:27 +02:00
Léo Lam
c9b4e3959c
Merge pull request #6511 from leoetlino/qt
...
Qt: Minor fixes
2018-03-26 21:24:44 +02:00
Léo Lam
91f61a1be4
Merge pull request #6285 from JosJuice/qt-gametracker-more-thread
...
DolphinQt2: Perform more of GameTracker's work on a separate thread
2018-03-26 21:24:22 +02:00
Markus Wick
9b5726fc23
Merge pull request #6534 from lioncash/dspjit
...
DSPEmitter: Remove uses of the DSP JIT global in CompileCurrent()
2018-03-26 21:12:46 +02:00
Markus Wick
12b99313aa
Merge pull request #6536 from stenzek/glx-swap-interval
...
GLInterface: Use EXT_swap_control or MESA_swap_control over SGI
2018-03-26 21:11:13 +02:00
JosJuice
0a69b42d07
DolphinQt2: Perform more of GameTracker's work on a separate thread
...
This reduces the time from startup to the game list window showing up.
2018-03-26 20:08:06 +02:00
Léo Lam
b4e9bef25c
Merge pull request #6519 from spycrab/qt_rw_bg
...
Qt/RenderWidget: Draw background on pause
2018-03-26 19:04:53 +02:00
Léo Lam
2e1edb49b0
Merge pull request #6524 from lioncash/global
...
JitArm64/JitAsm: Remove usages of the JIT global
2018-03-26 18:59:05 +02:00
Léo Lam
674ab6a8ef
Merge pull request #6532 from lioncash/interp
...
Interpreter: Remove static state within SingleStepInner()
2018-03-26 18:50:26 +02:00
Stenzek
c82be53d5c
GLInterface: Use EXT_swap_control or MESA_swap_control over SGI
...
The SGI extension does not define calling SwapInterval with a parameter
of zero as valid. It was just lucky that drivers interpreted this as
vsync off. The EXT_swap_control extension defines zero as a valid value.
Mesa does not appear to support the EXT variant, so we fall back to
MESA_swap_control here, which also supports zero.
2018-03-26 22:09:22 +10:00
Lioncash
4a4538abbf
Interpreter_LoadStore: Amend variable naming
...
Amends variable names to follow our code style. Also makes code const correct where possible.
2018-03-26 07:47:50 -04:00
Léo Lam
97e4d3d56f
Merge pull request #6523 from lioncash/cast
...
Interpreter_LoadStore: Remove unnecessary casts
2018-03-26 12:47:09 +02:00
Léo Lam
eb489c0a5e
Merge pull request #6529 from lioncash/utils
...
DSPCodeUtil: Don't return data via an out parameter
2018-03-26 12:46:16 +02:00
Léo Lam
3272fda3ee
Merge pull request #6525 from lioncash/dead-code
...
Jit64/Jit_Integer: Remove dead code in arithXex()
2018-03-26 12:43:01 +02:00
Léo Lam
ccfdea696a
Merge pull request #6527 from lioncash/typedef
...
DSPTables: Remove opc_t typedef
2018-03-26 12:39:27 +02:00
Léo Lam
8e8603fcc9
Merge pull request #6528 from lioncash/enum-asm
...
DSPAssembler: Make error code enum an enum class
2018-03-26 12:38:06 +02:00
Léo Lam
ea5808759e
Merge pull request #6531 from lioncash/mmu-enum
...
MMU: Make TLBLookupResult and XCheckTLBFlag enum classes
2018-03-26 11:39:37 +02:00
spycrab
591c8837e2
Qt: Replace "OK" with "Close" buttons
2018-03-26 09:20:48 +02:00
spycrab
9f13048e1e
Qt/GraphicsWindow: Decrease description box size
2018-03-26 08:30:32 +02:00
Lioncash
1519e4dbb3
DSPEmitter: Remove uses of the DSP JIT global in CompileCurrent()
...
With this, the DSPEmitter itself no longer makes use of the DSP JIT global
2018-03-26 01:14:17 -04:00
Kekker-git
d40ae9f569
Fix indefinite rumble on emulation pause
2018-03-26 00:04:58 -04:00
Lioncash
8b29997ed1
Interpreter: Remove an unnecessary UReg_MSR& cast from SingleStepInner
...
This is technically undefined behavior, but regardless of that, it's not
even necessary since we can just make a temporary around the MSR value
and just discard it when done with it, since all we do is query the FP
bit value with it.
2018-03-25 21:36:39 -04:00
Lioncash
b0efcdc8ef
Interpreter: Get rid of static state within SingleStepInner()
...
Given how the hooking operates, we may not execute an instruction.
Instead of making the state a static local to the function, just make it
part of the lifecycle of the Interpreter class.
2018-03-25 21:30:00 -04:00
Lioncash
c4a597171c
MMU: Make XCheckTLBFlag an enum class
2018-03-25 19:51:47 -04:00
Lioncash
9967c24f5d
MMU: Make TLBLookupResult an enum class
2018-03-25 19:44:14 -04:00
Lioncash
0f25627614
DSPCodeUtil: Don't return data via an out parameter
...
We can just return directly in these cases.
2018-03-25 18:55:08 -04:00
Lioncash
e42db3594b
DSPAssembler: Make error code enum an enum class
...
Prevents the error codes from littering the surrounding scope.
2018-03-25 18:19:08 -04:00
Lioncash
8c421ffbb7
DSPTables: Remove opc_t typedef
...
This was only ever used by the DSP assembler, and even then it was
sparsely used. Get rid of it to be consistent with types in other
sections of the DSP code.
2018-03-25 17:53:23 -04:00
Lioncash
2861e8f868
x64Emitter: Clean up constructor and destructors of XEmitter
...
In-class initializes members, defaults the default constructor and
virtual destructor, and puts members in the initializer list.
2018-03-25 16:50:02 -04:00
Lioncash
7bd41a3b55
Jit64/Jit_Integer: Remove dead code in arithXex()
...
The conditional this code is within already checks whether d == b, so this
conditional will never be true.
2018-03-25 15:35:02 -04:00
Lioncash
efcdb3debb
JitArm64/JitAsm: Remove usages of the JIT global
...
With this, the entire ARM JIT makes no use of the JIT global whatsoever.
2018-03-25 15:23:49 -04:00
Lioncash
a45631c4ca
Interpreter_LoadStore: Remove unnecessary casts
...
These aren't necessary as the type being stored into a u32 are of the
same signedness and are smaller in data size, so there's no truncation
being performed.
2018-03-25 15:09:32 -04:00
Stenzek
2f1a7cbee1
Implement "Skip" ubershader mode
...
Skip ubershader mode works the same as hybrid ubershaders in that the
shaders are compiled asynchronously. However, instead of using the
ubershader to draw the object, it skips it entirely until the
specialized shader is made available.
This mode will likely result in broken effects where a game creates an
EFB copy, and does not redraw it every frame. Therefore, it is not a
recommended option, however, it may result in better performance on
low-end systems.
2018-03-26 01:57:41 +10:00
Léo Lam
5c83e18fbd
Merge pull request #6515 from lioncash/cast
...
Interpreter_FPUtils: Get rid of a pointer cast
2018-03-25 11:27:38 +02:00
Léo Lam
e9976c27c0
Merge pull request #6518 from lioncash/namespace
...
Interpreter: Don't dump the MathUtils namespace into scope in Interpreter_FloatingPoint and Interpreter_Paired
2018-03-25 11:24:24 +02:00
Lioncash
48e2e9a41d
CachedInterpreter: Use using aliases instead of typedef
2018-03-25 02:57:25 -04:00
Lioncash
9829083241
CachedInterpreter: Use an enum class for instruction type
2018-03-25 02:57:16 -04:00
Lioncash
89df65aa25
Interpreter_Integer: Correct precedence of overflow check in nego
...
The overflow check needs to occur before the condition register update
due to the fact that the summary overflow (SO) bit is used in the
updating of the condition register. If we set any overflow bits after
updating the CR, then we can potentially incorrectly report that an
overflow did not happen (in the case the SO bit wasn't set previously).
2018-03-24 20:48:05 -04:00
spycrab
3f1430587c
Qt/RenderWidget: Draw background on pause
2018-03-25 01:26:50 +01:00
Lioncash
96014e74a3
Interpreter_Paired: Don't dump the entire MathUtils namespace into scope
...
Functions from the namespace are only used four times within the entire
file.
2018-03-24 19:42:14 -04:00
Lioncash
46f61a48c7
Interpreter_FloatingPoint: Don't dump the entire MathUtils namespace into scope
...
Given functions from the MathUtils namespace are only used six times in
the whole file, dumping the namespace seems a little excessive.
2018-03-24 19:40:22 -04:00
Lioncash
27611d55ff
Interpreter_FPUtils: Get rid of a pointer cast
...
This is undefined behavior according to the standard. We can just use
the built in means of retrieving a quiet NaN.
2018-03-24 19:33:44 -04:00
Léo Lam
328ac424c0
Merge pull request #6517 from lioncash/ppctables
...
PPCTables: Namespace all exposed functions
2018-03-24 22:17:36 +01:00
Lioncash
8a7abd72b4
PPCTables: Remove prefixed underscores from parameter names
2018-03-24 16:46:49 -04:00
Lioncash
2381aeecc3
PPCTables: Namespace all exposed functions
...
It's somewhat inconsistent to have two straggler functions outside the
namespace.
2018-03-24 16:46:12 -04:00
Lioncash
397b3fb976
CPUCoreBase: Make the GetName() member function const qualified
...
This function should have no need to modify internal class state.
2018-03-24 16:17:39 -04:00
Lioncash
c738ddc4aa
CPUCoreBase: Default the virtual destructor
2018-03-24 16:09:19 -04:00
Léo Lam
5369d3c9f1
Merge pull request #6513 from lioncash/dead-code
...
Interpreter: Remove dead code
2018-03-24 20:09:25 +01:00
Lioncash
ef6e747a68
PowerPC: Remove commented out PanicAlert
2018-03-24 14:52:22 -04:00
Lioncash
3dc3b0caa5
Interpreter_LoadStore: Remove commented out code
...
Also removes long separation lines that aren't really necessary.
2018-03-24 14:49:18 -04:00
Lioncash
f9e0645b99
Interpreter_SystemRegisters: Remove commented out code
2018-03-24 14:45:46 -04:00
Lioncash
288b579c09
Interpreter_Integer: Remove commented out code in subfic
2018-03-24 14:43:25 -04:00
Lioncash
01308330d9
InputCommon/CMakeLists: Migrate off add_dolphin_library
...
Continues the migration work started in 3a4c3bbe01
2018-03-24 14:13:53 -04:00
Lioncash
680ceb7f43
DiscIO/CMakeLists: Migrate off add_dolphin_library
...
Continues the migration work started in 3a4c3bbe01
2018-03-24 13:54:06 -04:00
Léo Lam
2d0d4fee28
Qt: Fix controller window margin
...
Reduces wasted space and makes the whole window (barely) fit on my
laptop screen again. (Regression from the scroll wrap changes)
2018-03-24 18:45:10 +01:00
Léo Lam
bf05c74f6b
Qt: Fix GameCube config pane spacing
2018-03-24 18:18:17 +01:00
Léo Lam
752098de22
Qt: Fix search bar widget spacing
...
With setMargin(0), the widgets look awkwardly close to the window edges
2018-03-24 18:09:46 +01:00
Léo Lam
8d0c15bb97
Qt/Search: Simplify placeholder text
...
A search box is a common UI element. We don't need to explicitly tell
the user that they need to type a search term. Also,
Let's use the common "Search <items>..." placeholder text instead
and make the string shorter for localisation.
2018-03-24 18:02:17 +01:00
Léo Lam
f7c9d2fd4d
Qt: Show code pane by default in debug mode
...
Otherwise, it's confusing because the option seems to do nothing
especially if the user is used to the DolphinWX debugger.
2018-03-24 17:53:46 +01:00
spycrab
806990968d
Qt: Implement "Auto-Adjust Window Size"
2018-03-24 16:48:46 +01:00
Léo Lam
a838d13fd1
Merge pull request #6504 from Ebola16/OSD
...
Rename "On-Screen Messages" to "On-Screen Display Messages"
2018-03-24 09:59:14 +01:00
Léo Lam
305b3dc835
Merge pull request #6497 from spycrab/qt_file
...
Qt: Implement missing "File" menu items
2018-03-24 09:10:49 +01:00
Léo Lam
4c5efb0f3a
Merge pull request #6508 from lioncash/cmake-common
...
Common/CMakeLists: Migrate off add_dolphin_library
2018-03-24 09:08:20 +01:00
Léo Lam
37dbb2e181
Merge pull request #6509 from spycrab/qt_shader_gen
...
Qt: Show shader generation window
2018-03-24 09:03:16 +01:00
Markus Wick
3ab88742fd
Merge pull request #6492 from lioncash/nop
...
Jit_Integer: Make NOP check more flexible for ori and expand NOP checking to oris, xori, and xoris
2018-03-24 08:53:21 +01:00
spycrab
cb71b06afc
Qt: Show shader generation window
2018-03-24 03:02:47 +01:00
Mat M
5669841e83
Merge pull request #6505 from lioncash/arm
...
Arm64Emitter: Minor cleanup
2018-03-23 19:25:50 -04:00
Lioncash
f889cae8c4
Arm64Emitter: Satisfy unrelated linter issues that cropped up by modifying the cpp file
2018-03-23 19:17:44 -04:00
Lioncash
91cefe6c8a
Arm64Emitter: Make IsImmArithmetic, IsImmLogical, FPImm8ToFloat, and FPImm8FromFloat internally linked
...
These aren't used anywhere outside of the emitter. Centralizes them under an anonymous namespace.
2018-03-23 19:17:26 -04:00
Lioncash
2548ccda8e
Common/CMakeLists: Migrate off add_dolphin_library
...
Continues the migration work that was started in 3a4c3bbe01
2018-03-23 19:08:30 -04:00
spycrab
8ebb3a015e
Qt: Update analytics checkbox after initial prompt
2018-03-23 23:28:17 +01:00
spycrab
f3e6f0f2d4
Updater: Increase request timeout to 30s
2018-03-23 22:25:38 +01:00
Lioncash
b11c237c43
Arm64Emitter: Remove unnecessary V8_UINT64_C preprocessor macro
...
UINT64_C is provided via <cstdint>, so we can just use that instead.
2018-03-23 13:31:48 -04:00
Lioncash
03671a5534
Arm64Emitter: Remove duplicate IsPowerOf2 function
...
We can just use the generified version in MathUtil.
2018-03-23 13:31:44 -04:00
Ryan Meredith
976347c65d
Rename "On-Screen Messages" to "On-Screen Display Messages"
2018-03-23 12:29:03 -04:00
Pierre Bourdon
22d851d930
Merge pull request #6500 from spycrab/qt_respect_portable
...
Qt: Make QSettings use the user config directory (Make it respect portable.txt)
2018-03-23 17:25:28 +01:00
JosJuice
9c70036105
Merge pull request #6503 from lioncash/brace-warn
...
PixelShaderGen/UberShaderPixel: Silence -Wmissing-braces warnings
2018-03-23 15:29:39 +01:00
Lioncash
a52cc8d52b
PixelShaderGen/UberShaderPixel: Silence -Wmissing-braces warnings
2018-03-23 10:06:27 -04:00
Lioncash
2ab29a40eb
AbstractFramebuffer: Silence a -Wlogical-op-parentheses warning in ValidateConfig()
2018-03-23 09:58:19 -04:00
Lioncash
79f40fb8d7
MathUtil: Generify IsPow2
...
This will allow it to also be used in the AArch64 emitter.
2018-03-23 09:50:49 -04:00
spycrab
68733ac6c1
Qt: Make QSettings use the user config directory
2018-03-23 12:50:01 +01:00
Lioncash
38f045cee5
DolphinQt2/GameCubePane: Correct duplicate condition in LoadSettings()
...
Also turns a std::string const reference into a value instance.
While this is well-defined, it does look out of place, given a new string
is being created.
2018-03-23 07:38:26 -04:00
Pierre Bourdon
894d4c99a8
Merge pull request #6495 from lioncash/namespace
...
PowerPC: Namespace all header contents for PowerPC.h
2018-03-23 12:09:09 +01:00
Pierre Bourdon
27ffc8a69d
Merge pull request #6498 from lioncash/cmake
...
AudioCommon/CMakelists: Migrate off add_dolphin_library
2018-03-23 12:07:00 +01:00
Pierre Bourdon
1ac7452129
AutoUpdater: Generate basic HTML changelog.
2018-03-23 11:10:25 +01:00
Pierre Bourdon
1f3310874b
AutoUpdater: Don't show a spinning wheel cursor when delaying update
2018-03-23 11:10:25 +01:00
Pierre Bourdon
9628333b86
AutoUpdater: support optionally restarting Dolphin after update
2018-03-23 11:10:25 +01:00
Pierre Bourdon
773ec975f3
Merge pull request #6489 from spycrab/qt_updater
...
Qt: Improve and better integrate updater
2018-03-23 11:08:48 +01:00
spycrab
95a5a51e55
Qt: Implement missing "File" menu items
2018-03-23 10:58:54 +01:00
spycrab
ee3d64145c
Qt: Improve updater
2018-03-23 10:42:40 +01:00
Lioncash
fc16a78f6a
Jit_Integer: Handle NOP case for xori and xoris
...
Like ori and oris, xori and xoris can also be used to introduce a NOP.
In that case, just don't do anything.
2018-03-22 22:51:43 -04:00
Lioncash
007f9e5309
Jit_Integer: Handle NOP case for oris as well
...
Like ori, this can also be used as a NOP under the same conditions.
2018-03-22 22:49:02 -04:00
Lioncash
42fce74f39
Jit_Integer: Handle NOP case where RA == RS for ori
...
ori can be used as a NOP if the two register operands are the same, and
the immediate is zero, not only if the two register operands are r0.
Also removes the check for !inst.Rc, as ori only has one encoding, and
said encoding doesn't even have a record bit in it.
2018-03-22 22:47:19 -04:00
Lioncash
b96bbc8f8d
AudioCommon/CMakelists: Migrate off add_dolphin_library
...
Continues the changes that were introduced in 3a4c3bbe01
2018-03-22 22:07:11 -04:00
Mat M
71846a6daa
Merge pull request #6469 from lioncash/cmake
...
Core/CMakeLists: Migrate off add_dolphin_library
2018-03-22 21:52:44 -04:00
Lioncash
4c97deb364
PowerPC: Namespace all header contents for PowerPC.h
...
Puts everything under the same namespace. Previously the header was only
partially namespaced, which is inconsistent.
2018-03-22 19:01:47 -04:00
spycrab
196a1dcce4
Qt/CheatCodeEditor: Fix valid, encrypted AR codes not being accepted
2018-03-22 23:42:20 +01:00
Léo Lam
5e76f3a6d4
Merge pull request #6488 from aldelaro5/symbols-log
...
LOG: Add a log type for Symbols
2018-03-22 22:06:04 +01:00
Markus Wick
a4511129e7
Merge pull request #6491 from lioncash/sub-oe
...
Interpreter_Integer: Handle OE bit for subf, subfc, subfe, subfme, and subfze
2018-03-22 21:52:17 +01:00
aldelaro5
c54e56793a
Add a log type for Symbols and move symbols related logs to it
...
This fix the awkwardness of having the symbols detection, parsing and loading related logs be in OS HLE while they don't have anything to do with that.
2018-03-22 14:57:28 -04:00
Lioncash
796d67e1ec
Interpreter_Integer: Handle OE bit for subf, subfc, subfe, subfme, and subfze
...
With this, overflow flag support is now fully implemented for all
instructions that support it.
2018-03-22 13:08:03 -04:00
Anthony
0f60e68e0b
Merge pull request #6490 from spycrab/qt_fs_warn
...
Qt: Fix fullscreen quitting
2018-03-22 08:43:52 -07:00
spycrab
cc3d5a9921
Qt: Fix fullscreen quitting
2018-03-22 15:29:08 +01:00
Markus Wick
59c5bc964f
Merge pull request #6486 from lioncash/add-oe
...
Interpreter_Integer: Handle overflow flag when OE bit is set in add, addc, adde, addme, and addze
2018-03-22 14:15:58 +01:00
Lioncash
9d21425449
Interpreter_Integer: Handle overflow flag when OE bit is set in add, addc, adde, addme, and addze
2018-03-22 09:09:31 -04:00
Léo Lam
2e92d95888
Merge pull request #6487 from sepalani/dsp-doc
...
DSP: Fix typos in DSP LoadStore doc
2018-03-22 07:51:29 +01:00
Sepalani
4ed06da2b4
DSP: Fix typos in DSP LoadStore doc
2018-03-22 09:24:58 +04:00
Lioncash
e53fffeb90
PowerPC: Properly unset the overflow bit
...
The OV bit is non-sticky. Therefore, after an overflow-enabled
instruction executes, if an overflow does *not* occur, then OV is
cleared. SO is sticky however, so it staying set in this case is
correct.
2018-03-21 23:59:15 -04:00
Anthony
23bc50704a
Merge pull request #6484 from lioncash/mul
...
Interpreter_Integer: Handle the overflow flag when the OE bit is set for mullw
2018-03-21 18:18:00 -07:00
Lioncash
355509653e
Interpreter_Integer: Handle the overflow flag when the OE bit is set for mullw
2018-03-21 20:28:37 -04:00
Michael M
1ba43e6c27
DSPSymbols: remove unused ReadAnnotatedAssembly
...
It's unused, and it used a weird format, something like:
```
void label_name() {
asm $REG1, $REG2
// etc
}
```
2018-03-21 17:07:27 -07:00
Michael M
ed56f319b5
DSPHost: don't try to read old annotated assembly files
...
They don't exist anymore!
2018-03-21 17:06:30 -07:00
Anthony
30ccaa3fd5
Merge pull request #6481 from spycrab/qt_fix_fs
...
Qt: Fix fullscreen
2018-03-21 16:44:54 -07:00
Léo Lam
1b0f6a7d2e
Merge pull request #6482 from spycrab/qt_borders
...
Qt/MainWindow: Remove obnoxious border
2018-03-21 23:24:46 +01:00
Léo Lam
1b28693eb0
Merge pull request #4484 from Helios747/remove_text
...
[UI] Remove experimental tag from Vulkan
2018-03-21 23:18:03 +01:00
Helios747
b02b616930
[UI] Remove experimental tag from Vulkan
2018-03-21 15:12:12 -07:00
spycrab
8ead5be9f2
Qt: Fix fullscreen
2018-03-21 22:57:16 +01:00
spycrab
809dd665c7
Qt/MainWindow: Remove obnoxious border
2018-03-21 22:48:17 +01:00
Anthony
9cf22aec04
Merge pull request #6480 from spycrab/qt_search
...
Qt: Implement search
2018-03-21 12:40:34 -07:00
spycrab
3292abb41d
Qt: Implement search
2018-03-21 20:04:13 +01:00
Léo Lam
8580b3ba1f
Qt: Add ignore button for panic alerts
...
Allows easily disabling panic alerts during a session if needed.
2018-03-21 11:22:30 +01:00
Markus Wick
8308d6b464
Merge pull request #6476 from lioncash/dispatch
...
JitAsm: Eliminate use of the JIT global variable
2018-03-21 09:55:04 +01:00
Lioncash
7a2d98b948
JitAsm: Remove use of the JIT global in Generate()
...
With this, JitAsm code doesn't have any reliance on the JIT global
variable. This means the core JIT64 code no longer relies on said
global at all. The Jit64 common code, however, still has some offenders.
Notably, EmuCodeBlock and Jit64AsmCommon are the remaining places in the
common code that make use of the global variable.
2018-03-21 04:41:37 -04:00
Lioncash
e0165a62da
JitBase: Remove use of the JIT global in Dispatch() and JitTrampoline()
...
Trims down a few more uses of the global variable by just passing the
JIT instance we're dispatching or trampolining with as a parameter.
2018-03-21 04:41:30 -04:00
Pierre Bourdon
fe600ab0ed
Merge pull request #6146 from HannesMann/qos-support
...
Netplay: Add Quality of Service (QoS) support
2018-03-21 02:46:46 +01:00
Pierre Bourdon
6860259c44
Merge pull request #6457 from spycrab/qt_misc
...
Qt: Improve spacing again
2018-03-21 01:10:01 +01:00
Pierre Bourdon
6079d7d3c6
Merge pull request #6475 from Starsam80/fix-always-true
...
Qt: Remove always true if statement
2018-03-21 01:07:54 +01:00
Anthony
ad8c31699f
Merge pull request #6463 from delroth/auto-update
...
Initial implementation of the Dolphin auto-updater for Windows
2018-03-20 11:28:26 -07:00
Pierre Bourdon
66b41c5509
UICommon: Add AutoUpdate module + placeholder Qt implementation
...
The AutoUpdate module is a generic update checker mechanism which can be
used by UI backends to trigger an auto-update check as well as the
actual update process.
Currently only configurable through .ini and the Qt implementation is
completely placeholder-y -- blocking the main thread on a network
request on startup, etc.
2018-03-20 19:21:19 +01:00
Pierre Bourdon
37902c4aa4
DolphinWX: depend on Updater in order to make sure the binary is included in default builds
2018-03-20 19:21:19 +01:00
Pierre Bourdon
07c160310e
Add Updater.exe which performs the update tasks.
...
Updater.exe takes as input manifests and applies the difference between
these manifests to an install directory.
Currently lacking a UI.
2018-03-20 19:21:19 +01:00
Markus Wick
43c92c8b16
Merge pull request #6451 from leoetlino/default-mmu
...
Config: Set bMMU to true by default on x64
2018-03-20 14:40:40 +01:00
Markus Wick
35bfa64dfc
Merge pull request #6470 from lioncash/ov-flag
...
Interpreter: Handle setting the overflow flag when the OE bit is set in divw, divwu, and neg
2018-03-20 11:08:12 +01:00
Starsam80
b7c44715a8
Qt: Remove always true if statement
2018-03-20 00:41:47 -06:00
Pierre Bourdon
bc9deb7be3
HttpRequest: make curl initialization thread-safe
2018-03-20 00:36:43 +01:00
spycrab
44ce78c969
Qt: Remove in-development warning
2018-03-19 21:59:50 +01:00
Anthony
50588034ba
Merge pull request #6472 from lioncash/jit-init
...
JitBase: Ensure JitOptions and JitState instances are consistently initialized
2018-03-19 13:20:40 -07:00
Lioncash
51cfeb8c7d
JitBase: Ensure JitOptions and JitState instances are consistently initialized
...
Ensures that upon construction of a JitBase instance, that all
underlying members within the option and state structs are guaranteed
to be initialized.
This prevents potentially using a member uninitialized in some form.
2018-03-19 15:58:32 -04:00
Anthony
37f8efcda0
Merge pull request #6471 from JosJuice/qt-strings-consistent
...
Make strings more consistent between DolphinWX and DolphinQt2
2018-03-19 11:00:24 -07:00
JosJuice
a71c615435
Make strings more consistent between DolphinWX and DolphinQt2
...
Reduces the number of strings to translate.
2018-03-19 18:52:46 +01:00
Léo Lam
16f74cee70
Merge pull request #6467 from lioncash/breakpoint
...
Breakpoints: Remove direct usages of the JIT global
2018-03-19 18:42:10 +01:00
Lioncash
2fa0cb91a1
Interpreter_Integer: Set the overflow flag if the OE bit is set for neg
...
Also amends the condition that was being checked. Previously it was
checking if the destination register value was 0x80000000, however it's
actually the source register that should be checked.
2018-03-19 13:27:36 -04:00
Lioncash
675d2fb774
Interpreter_Integer: Set the overflow flag if the OE bit is set for divw and divwu
...
divw and divwu won't panic now if the OE bit is set for these instructions.
2018-03-19 11:51:10 -04:00
Lioncash
f129c936e7
PowerPC: Add functions for getting and setting the XER OV bit
...
While we're at it, change GetXER_SO's return value to u32
to prevent potential sign bit wonkyness given we're performing bit arithmetic.
2018-03-19 11:51:04 -04:00
Léo Lam
f335790623
Merge pull request #6460 from lioncash/datareader
...
DataReader: Minor API changes
2018-03-19 15:02:50 +01:00
Markus Wick
8c1be29cef
Merge pull request #6466 from lioncash/mffs
...
Interpreter_SystemRegisters: Handle mffs, mtfsb0, mtfsb1, mtfsf and mtfsfi with the record bit set
2018-03-19 09:37:01 +01:00
Markus Wick
523031f037
Merge pull request #6444 from stenzek/d3d-bbox
...
D3D: Fix broken bounding box
2018-03-19 09:21:22 +01:00
Markus Wick
98b4716902
Merge pull request #6442 from stenzek/async-compiler-priority
...
ShaderCache: Implement compile priority
2018-03-19 09:16:53 +01:00
Markus Wick
0c0a342483
Merge pull request #6464 from lioncash/using
...
JitArm64_RegCache: Remove using namespace declaration from header
2018-03-19 09:11:45 +01:00
Lioncash
3a4c3bbe01
Core/CMakeLists: Migrate off add_dolphin_library
...
This macro (that has unfortunately become the de-facto way of
introducing targets) has a lot of disadvantages that outweigh the fact
that you avoid writing two extra lines of CMake script.
- It encourages the use of variables. In a build system the last thing
we want to care about is mutable state that can be avoided.
- It only handles linking in the libraries and nothing else. It's a
laziness macro.
- We should be explicit about what we're doing by introducing the target
first, not last.
This gets the ball rolling by migrating Core off the macro. Note that
this is essentially 1-to-1 unrolling of the macro, therefore we're
still linking in all libraries as public, even though that may not be
necessary.
This can be revisited once everything is off the macro for a quicker
transition period.
2018-03-19 04:02:12 -04:00
Markus Wick
22aba8c56d
Merge pull request #6468 from lioncash/downcast
...
JitInterface: Remove a downcast within InitJitCore
2018-03-19 09:00:56 +01:00
Markus Wick
3d49bdb488
Merge pull request #6462 from lioncash/ppc
...
PPCTables: Make the op type enum an enum class
2018-03-19 08:55:32 +01:00
Markus Wick
8002bfbc41
Merge pull request #6461 from lioncash/emitter
...
x64Emitter: Move FloatOp and NormalOp enum definitions into the cpp file
2018-03-19 08:53:00 +01:00
Markus Wick
79b21e1381
Merge pull request #6459 from lioncash/enum
...
VertexShaderGen: Convert defines to an enum
2018-03-19 08:48:25 +01:00
Markus Wick
768cd7ede5
Merge pull request #6458 from lioncash/remove-mainbase
...
VideoBackendBase: Migrate functions from MainBase.cpp to VideoBackendBase.cpp
2018-03-19 08:46:35 +01:00
Lioncash
14b204a9bb
JitInterface: Remove a downcast within InitJitCore
...
This isn't necessary as JitBase is already within the type hierarchy that
CPUCoreBase is.
2018-03-19 03:13:16 -04:00
Lioncash
a0164e14bc
BreakPoints: Avoid direct use of the JIT global
...
Trims the direct usages of the global by making the code go through the
JIT interface (where it should have been going in the first place).
This also removes direct JIT header dependencies from the breakpoints as
well. Now, no code uses the JIT global other than JIT code itself, and
the unit tests.
2018-03-19 03:08:57 -04:00
Lioncash
b4cd11c7c9
BreakPoints: Invert if statements where reasonable
...
Puts the early-exit condition first, unindenting code that doesn't need
to be.
2018-03-19 03:08:53 -04:00
Lioncash
3137d4f75f
BreakPoints: Use std algorithms where applicable
2018-03-19 03:08:17 -04:00
Lioncash
eea99de118
Interpreter_SystemRegisters: Handle mffs, mtfsb0, mtfsb1, mtfsf, and mtfsfi with the record bit set
...
All of these with the record bit set update condition register 1 with the
contents of the FPSCR's FX, FEX, VX and OX bits.
Helper_UpdateCR1() does exactly that, so we use it here to perform this
for us.
2018-03-19 00:05:00 -04:00
Lioncash
6ae8a2b5f8
JitArm64_RegCache: Remove using namespace declaration from header
...
Dumping a namespace in a header file should be avoided since it can
cause random name and type clashing in unexpected ways.
2018-03-18 19:39:58 -04:00
Pierre Bourdon
5498f9b7ef
make_scmrev.h.js: set default auto-update track from environment
2018-03-19 00:11:55 +01:00