Stenzek
0622979d3b
ShaderGen: Support writing integer colors when logic op is enabled
...
This is required for D3D to support logic op.
2017-09-03 16:33:25 +10:00
Stenzek
254160691a
Revert "Vulkan: Use VK_NV_glsl extension where available, and skip glslang"
...
This reverts commit d23fd17e1a
.
Dynamic sampler indexing is broken in VK_NV_glsl as of 385.41. The
performance gap doesn't seem to be as wide with the updated driver, so
to save maintaining two code paths, it's easier to just drop the
extension support completely.
2017-09-03 15:31:19 +10:00
Stenzek
3dd675e613
Renderer: Change SetBlendState to accept a BlendingState
...
This decouples the state generation (from the emulated GPU) from the
management of internal backend state.
2017-09-03 14:14:54 +10:00
Stenzek
22b8cbae35
RenderBase: Drop SetColorMask and SetLogicOpMode
...
These are now incorporated into the blend state for all backends.
2017-09-03 14:14:54 +10:00
Stenzek
5c9bc8b79c
D3D11: Use blending state from VideoCommon
2017-09-03 14:14:54 +10:00
Stenzek
c90b0bf532
D3D11: Create debug device when validation layer is enabled in options
2017-09-03 14:14:19 +10:00
Stenzek
ce59121748
Merge pull request #6004 from lioncash/d3d
...
D3D: Eliminate redundant ID3D11DeviceChild* casts
2017-09-03 14:13:17 +10:00
Stenzek
005d0b39f7
Merge pull request #6009 from lioncash/async
...
AsyncShaderCompiler: Make WorkItem-derived class constructors explicit
2017-09-03 14:11:41 +10:00
Stenzek
7a4348b641
Merge pull request #5649 from JonnyH/WIP/disable-vk-clear-renderpass
...
Add DriverDetails::BUG to Disable "LoadOp" clear renderpass in vulkan
2017-09-03 13:49:51 +10:00
Pierre Bourdon
ed07bd4270
Merge pull request #6005 from spycrab/qt_warning_disable
...
Qt/DevelopmentWarning: Add "Don't show me this warning again" option
2017-09-03 03:50:29 +02:00
spycrab
0d3c4a3883
Qt/DevelopmentWarning: Add "Don't show me this warning again" option
2017-09-03 03:46:23 +02:00
Pierre Bourdon
425a8cb378
Merge pull request #5718 from mimimi085181/partial-updates-update
...
Update to partial texture updates
2017-09-03 03:16:55 +02:00
Pierre Bourdon
ab27f0f78c
Merge pull request #6010 from lioncash/vertex
...
OGL/VertexManager: Make vertex and index buffer handles private
2017-09-03 03:13:40 +02:00
spycrab
1b593fd56b
Qt: Implement TAS/Movie shortcuts
2017-09-03 02:58:38 +02:00
spycrab
0e7ed3514f
Qt: Implement "Movie" menu
2017-09-03 02:57:44 +02:00
Lioncash
2237a6a04c
OGL/VertexManager: Make vertex and index buffer handles private
...
These are only ever read, but not written to outside of the VertexManager class.
2017-09-02 20:51:54 -04:00
spycrab
4163ee42bc
Qt/GameList: Implement SelectionChanged()
2017-09-03 01:49:04 +02:00
Pierre Bourdon
3ae82ea669
Merge pull request #6007 from spycrab/qt_win_icon
...
Qt/MSVC: Add icon
2017-09-03 01:36:11 +02:00
spycrab
018c2cfd65
Qt/MSVC: Add icon
2017-09-02 23:51:59 +02:00
Lioncash
2d45204f12
VideoBackends: Add the explicit keyword to WorkItem-derived class constructors
...
Prevents implicit conversions
2017-09-02 17:35:20 -04:00
Lioncash
5059332d95
OGL/ProgramShaderCache: Remove unnecessary virtual keyword
...
This is superfluous, considering the override keyword is present.
2017-09-02 17:27:19 -04:00
Mat M
657195fad5
Merge pull request #6006 from JonnyH/WIP/parse-imgtec-gl_version-string
...
Parse IMGTEC's GL_VERSION string format
2017-09-02 17:10:59 -04:00
Markus Wick
30e01834e2
Merge pull request #6002 from lioncash/include
...
CommandProcessor: Remove unnecessary include
2017-09-02 23:05:58 +02:00
Jonathan Hamilton
658a4a6e29
Mark an ImgTec driver bug as fixed in 1.8@4693462
...
Now we correctly parse ImgTec's GL_VERSION string we can actually use
the BugInfo's version stuff correctly here
2017-09-02 14:05:16 -07:00
Jonathan Hamilton
662abcb2fe
Parse IMGTEC's GL_VERSION string format
...
ImgTec's driver uses a major.minor@changeID versioning system
This is packed into a double so "1.9@4850625" becomes "109.4850625"
The next release brnach is expected to be 1.10, hence the need for 2
digits for the branch minor.
The changeID should be unique for each build, but is shared over all
branches, so only makes sense to compare withing a branch.
It's likely branch 'major' versions will be used for major hardware
revisions, and the drivers for both maintained in parallel. Thus it
may not make sense to compare versions between different major
verisons - if/when this happens we can hook up a DriverDetails::Family
as needed.
2017-09-02 14:05:16 -07:00
Lioncash
64de8a9d0b
D3D: Eliminate redundant ID3D11DeviceChild* casts
2017-09-02 14:45:14 -04:00
Lioncash
6f97e3faa6
AsyncShaderCompiler: use std::make_unique in CreateWorkItem()
...
Same behavior, simpler code.
2017-09-02 14:08:00 -04:00
Lioncash
62615c601e
AsyncShaderCompiler: Forward arguments to the specified type's constructor in CreateWorkItem()
...
As this just hands off the arguments to another type's constructor,
perfect forwarding should be used here to preserve any potential move semantics.
2017-09-02 14:06:48 -04:00
Lioncash
f6e3a39c0e
CommandProcessor: Remove unnecessary include
...
Gets rid of some indirect inclusion.
2017-09-02 13:34:21 -04:00
degasus
992893ba41
Jit64: Use ImmPtr.
2017-09-02 14:33:07 +02:00
degasus
da79ddbde7
JitArm64: Rewrite Exit functions.
...
The gpr must not be touched in the Exit functions as they are maybe conditional.
So just allocate everything here manually.
2017-09-02 13:45:24 +02:00
degasus
304e601ad3
JitArm64: Reimplement aarch64 cycle counters.
...
CNTVCT_EL0 is force-enabled on all linux plattforms.
Windows is untested, but as this is the best way to get *any* low
overhead performance counters, they likely use it as well.
2017-09-02 13:24:37 +02:00
degasus
9080192a65
Jit64: Move profiler to the end of th block.
...
Within Cleanup(), it is called at *every* end of the block. This generates bigger code,
but it is the only way to handle blocks with multiple exit nodes.
2017-09-02 13:05:58 +02:00
degasus
958b75b707
JitCommon: Restructure the profiler calls.
2017-09-02 13:05:58 +02:00
degasus
95ce860265
DolphinWX: Enable branch following in the JIT debug interface.
2017-09-02 13:05:58 +02:00
degasus
8ab34b1a3e
Jit64: Inline the profiler calls.
2017-09-02 13:05:58 +02:00
spycrab
fcdd247f93
Qt: Fix building on <= 5.7.x
2017-09-02 03:20:20 +02:00
Leo Lam
8e9857d3cd
Merge pull request #5954 from khg8m3r/OSXKeyboard
...
Clean up OSX input selection
2017-09-01 21:31:17 +02:00
spycrab
1173c2f790
Qt: Implement "Extract Certificates from NAND"
2017-08-29 08:31:50 +02:00
spycrab
561d31f887
Qt: Implement "Import BootMii NAND Backup"
2017-08-29 08:31:45 +02:00
Jonathan Hamilton
62e8d25cd1
Add Bug to Disable "LoadOp" clear renderpass in vulkan
...
This optimisation doesn't work on PowerVR's Vulkan implementation. We
(incorrectly) disallow Framebuffer objects to be used with a different
load or store op than that which they were created with, despite the
spec allowing such.
This fixes the windwaker intro "smearing"
2017-08-28 18:01:35 -07:00
Jonathan Hamilton
11057649ee
Add VideoLogic (ImgTec) PCI ID
2017-08-28 18:01:16 -07:00
spycrab
a2b7632850
Qt: Implement "Load GameCube Main Menu"
2017-08-29 02:57:46 +02:00
spycrab
0dfde1d34e
Qt: Implement "Export All Wii Saves"
2017-08-28 23:00:14 +02:00
spycrab
9469fc3d6f
Qt: Implement "Import Wii Save"
2017-08-28 23:00:14 +02:00
Leo Lam
378416f986
Merge pull request #5972 from leoetlino/close
...
WiimoteReal: Fix device handles not being closed
2017-08-28 21:01:12 +02:00
Lioncash
9c1f9c1c00
ConstantManager: Use std::array where applicable
...
Modernizes the arrays and makes future simplifications possible (e.g. usages within the software renderer).
It also makes cases where we use array->pointer decay explicit.
2017-08-27 15:41:36 -04:00
spycrab
95a53a435c
Qt/GraphicsWidget: Fix bad layout column
2017-08-27 10:04:06 +02:00
Stenzek
21b3cd4759
OGL: Fix EFB pokes using incorrect color/depth
2017-08-27 11:55:24 +10:00
spycrab
8b346b7058
Qt/GameList: Implement "Filesystem" tab
2017-08-26 14:56:33 +02:00
spycrab
56aad4a958
Qt/PropertiesDialog: Make title more like Wx
2017-08-26 14:44:38 +02:00
spycrab
2630fa0ce9
Qt: Only show "Filesystem" Tab when game is disc based
2017-08-25 20:35:41 +02:00
JosJuice
87d982982d
Fix regression in File::CopyDir
...
This apparently fixes https://bugs.dolphin-emu.org/issues/10499 somehow.
The first changed line of this commit is just for performance - the
second changed line is where the difference in behavior is.
2017-08-25 19:14:14 +02:00
Léo Lam
31b04149b3
DiscIO: Fix TMD extraction
...
The offset that we read from the header is relative to the partition.
2017-08-25 17:31:50 +02:00
Chris Burgener
cc03e49024
Remove FFMPEG check for Renderer::IsFrameDumping()
2017-08-24 11:15:50 -04:00
spycrab
b9c5a2af05
Qt: Implement gamelist caching
2017-08-24 07:17:31 +02:00
Nick
ef95bf26cb
Implement GamePAd and MultiAxisController detection
2017-08-24 00:31:59 -04:00
Michael M
b58f8d19ab
Rename Common::FifoQueue to Common::SPSCQueue
...
Since all queues are FIFO data structures, the name wasn't informative
as to why you'd use it over a normal queue. I originally thought it had
something to do with the hardware graphics FIFO.
This renames it using the common acronym SPSC, which stands for
single-producer single-consumer, and is most commonly used to talk about
lock-free data structures, both of which this is.
2017-08-23 17:00:52 -07:00
Jonathan Hamilton
5b41c5ae0d
Fix vulkan crash on drivers without atomic load/store support
...
This would not allocate a SSBO buffer, but still try to update the
descriptor said with a NULL buffer. Which naturally crashed.
2017-08-23 14:49:22 -07:00
Léo Lam
52f26d462e
WiimoteReal: Fix device handles not being closed
...
fail.
I have no idea how this didn't cause issues for more people.
2017-08-23 23:05:29 +02:00
JosJuice
fb2016838e
Merge pull request #5864 from JosJuice/directoryblob-disccontentcontainer
...
DirectoryBlob: Improve ReadInternal
2017-08-23 18:48:24 +02:00
Anthony
935c1da357
Merge pull request #5951 from ligfx/gametrackerworkqueuethread
...
GameTracker: use new Common::WorkQueueThread instead of signals/slots
2017-08-23 08:02:36 -07:00
Léo Lam
e4ea4da782
IOS: Check for available features when adding devices
...
Prevents resource managers that shouldn't be visible from being exposed
to titles.
This adds a new function to get features for an IOS version, and also
moves the version checks from the modules themselves to VersionInfo.
This hopefully documents some of the differences between IOS better
and should be slightly cleaner than having random version checks.
2017-08-23 15:18:12 +02:00
Léo Lam
24e7b465be
IOS: Rename MemoryValues to VersionInfo
2017-08-23 14:44:51 +02:00
Pierre Bourdon
187e65f495
Merge pull request #5941 from delroth/wfs
...
WFS updates
2017-08-23 11:14:01 +02:00
Nick
3abde44641
formatting cleanup
2017-08-23 00:19:34 -04:00
Lioncash
bc57ab3923
Clipper: Copy both color sequences in CopyVertex as opposed to one
...
This is likely an oversight.
2017-08-22 22:45:28 -04:00
Lioncash
ffaa9a3bea
SW NativeVertexFormat: Utilize std::array where applicable
...
Gets rid of some hardcoded looping bounds, and also simplifies code in
some places, sometimes allowing for removal of a loop altogether.
2017-08-22 22:39:28 -04:00
Léo Lam
ef888ef168
WFS: Fix logging types.
2017-08-22 23:41:38 +02:00
Léo Lam
344228ec10
WFSI: Implement noop ioctl 0x8f.
2017-08-22 23:41:38 +02:00
Léo Lam
70cb0cb126
WFSI: Implement GET_VERSION.
...
This ioctl writes a constant value to the output buffer.
2017-08-22 23:41:38 +02:00
Léo Lam
8a5d24ab4b
WFSI: Implement IOCTL_WFSI_IMPORT_TITLE_CANCEL.
...
It gets called for cleaning up whenever something goes wrong, and
also when cancelling an update.
2017-08-22 23:41:38 +02:00
Léo Lam
5cc18bf116
WFSI: Add missing functionality to ImportTitleInit.
2017-08-22 23:41:38 +02:00
Léo Lam
f0aeeeaef6
WFSI: Implement internal Cancel{Title,Patch}Import.
2017-08-22 23:41:38 +02:00
Léo Lam
c1817b2c6d
WFSI: Rename 2 ioctls to better reflect their purposes.
...
* IOCTL_WFSI_PREPARE_DEVICE -> IOCTL_WFSI_IMPORT_TITLE_INIT
(equivalent of ES_ImportTitleInit, also the official name)
* IOCTL_WFSI_IMPORT_TITLE -> IOCTL_WFSI_IMPORT_TITLE_CANCEL
(equivalent of ES_ImportTitleCancel)
2017-08-22 23:41:38 +02:00
Léo Lam
7423563386
WFSI: Fix the TMD size check.
2017-08-22 23:41:37 +02:00
Pierre Bourdon
a641609857
WFSI: Implement patch install finalization.
2017-08-22 23:41:37 +02:00
Pierre Bourdon
76bbfbb511
WFSI: Adapt FINALIZE_TITLE_INSTALL for patch support.
2017-08-22 23:14:00 +02:00
Pierre Bourdon
db24c94c6e
WFSI: More work to support patching: split off current_tid/gid and import_tid/gid
2017-08-22 23:14:00 +02:00
Pierre Bourdon
aa445806a5
WFSI: Rename a few ioctl handlers.
2017-08-22 23:14:00 +02:00
Pierre Bourdon
5ed3a3f12d
WFSI: Get the patch info from PREPARE_DEVICE.
2017-08-22 23:14:00 +02:00
Léo Lam
e004709b69
WFSI: Implement CHECK_HAS_SPACE.
2017-08-22 23:13:59 +02:00
Léo Lam
15f25783a8
WFS: Implement RENAME.
2017-08-22 23:13:58 +02:00
Pierre Bourdon
2a8d9a53b7
WFS: Share error codes with WFSI.
2017-08-22 23:13:14 +02:00
Pierre Bourdon
e6e00f6c8d
WFSI: Implement install finalization.
2017-08-22 23:13:14 +02:00
Pierre Bourdon
88580b8d5f
WFSI: Fix install directories creation.
2017-08-22 23:13:14 +02:00
Pierre Bourdon
e79392cb8e
WFS: Implement WRITE and WRITE_ABSOLUTE.
2017-08-22 23:13:14 +02:00
Pierre Bourdon
dca70844a6
WFS: Implement CREATE_OPEN along with OPEN.
2017-08-22 23:13:14 +02:00
Pierre Bourdon
ef3232cd74
WFSI: Create meta/work/save dirs when applying title profile.
2017-08-22 23:13:14 +02:00
Pierre Bourdon
c0b3a68441
WFS: Implement MKDIR.
2017-08-22 23:13:13 +02:00
Pierre Bourdon
e45bb77512
WFS: Add a basic GET_ATTRIBUTES implementation.
2017-08-22 23:13:13 +02:00
Pierre Bourdon
56aa3cc558
WFSI: Implement both GET_TMD ioctls.
2017-08-22 23:13:13 +02:00
Pierre Bourdon
c81636d9a8
WFSI: Stub out SET_FST_BUFFER.
2017-08-22 23:13:13 +02:00
Pierre Bourdon
92387cb052
WFS: Implement CLOSE_2 as a clone of CLOSE.
2017-08-22 23:13:13 +02:00
Leo Lam
c12418788a
Merge pull request #5963 from JMC47/mtmsrfix
...
Fix JIT64 mtmsr issue after PIE support.
2017-08-22 22:12:13 +02:00
Leo Lam
788af71f30
Merge pull request #5949 from ligfx/gamelistmodelupdategame
...
GameListModel: make UpdateGame update existing files as well
2017-08-22 21:39:29 +02:00
Nick
3d01eeef00
Fix OSX hotkey defaults
2017-08-22 21:31:19 +02:00
Leo Lam
6e1cdfadc9
Merge pull request #5955 from leoetlino/copy
...
FileUtil: Simplify File::Copy on non-Windows platforms
2017-08-22 21:29:46 +02:00
Leo Lam
b3a8209821
Merge pull request #5960 from ligfx/gamefiledontstorefilepathparts
...
GameFile: don't store file path parts
2017-08-22 21:29:30 +02:00
Leo Lam
232b81999a
Merge pull request #5961 from ligfx/gamefilebanner
...
GameFile: handle missing banners in UI instead
2017-08-22 21:26:38 +02:00
Michael M
d00ecb7231
GameFile: remove unused m_company
2017-08-22 12:18:49 -07:00
Markus Wick
3094d6531d
Merge pull request #5962 from degasus/arm-fixes
...
JitArm64: Fix rlwinmx.
2017-08-22 20:27:45 +02:00
Nick
3cddb62aea
keyboard fixes v2
2017-08-22 12:26:44 -04:00
JosJuice
09f3f9b41a
Remove NonCopyable
...
The class NonCopyable is, like the name says, supposed to disallow
copying. But should it allow moving?
For a long time, NonCopyable used to not allow moving. (It declared
a deleted copy constructor and assigment operator without declaring
a move constructor and assignment operator, making the compiler
implicitly delete the move constructor and assignment operator.)
That's fine if the classes that inherit from NonCopyable don't need
to be movable or if writing the move constructor and assignment
operator by hand is fine, but that's not the case for all classes,
as I discovered when I was working on the DirectoryBlob PR.
Because of that, I decided to make NonCopyable movable in c7602cc
,
allowing me to use NonCopyable in DirectoryBlob.h. That was however
an unfortunate decision, because some of the classes that inherit
from NonCopyable have incorrect behavior when moved by default-
generated move constructors and assignment operators, and do not
explicitly delete the move constructors and assignment operators,
relying on NonCopyable being non-movable.
So what can we do about this? There are four solutions that I can
think of:
1. Make NonCopyable non-movable and tell DirectoryBlob to suck it.
2. Keep allowing moving NonCopyable, and expect that classes that
don't support moving will delete the move constructor and
assignment operator manually. Not only is this inconsistent
(having classes disallow copying one way and disallow moving
another way), but deleting the move constructor and assignment
operator manually is too easy to forget compared to how tricky
the resulting problems are.
3. Have one "MovableNonCopyable" and one "NonMovableNonCopyable".
It works, but it feels rather silly...
4. Don't have a NonCopyable class at all. Considering that deleting
the copy constructor and assignment operator only takes two lines
of code, I don't see much of a reason to keep NonCopyable. I
suppose that there was more of a point in having NonCopyable back
in the pre-C++11 days, when it wasn't possible to use "= delete".
I decided to go with the fourth one (like the commit title says).
The implementation of the commit is fairly straight-forward, though
I would like to point out that I skipped adding "= delete" lines
for classes whose only reason for being uncopyable is that they
contain uncopyable classes like File::IOFile and std::unique_ptr,
because the compiler makes such classes uncopyable automatically.
2017-08-22 16:40:34 +02:00
JosJuice
6e6864fcbf
Revert "DirectoryBlob: Use NonCopyable"
...
This reverts commit a7a8e467b6
.
2017-08-22 16:35:37 +02:00
JosJuice
51a7150990
Fix DolphinWX build issue
...
I'm not sure why this hasn't popped up as an error on the buildbots,
but the build fails on my new install of VS2017. The error is C2445:
result type of conditional expression is ambiguous: types 'wxString'
and 'const char [1]' can be converted to multiple common types
2017-08-22 13:35:20 +02:00
JMC47
f7b133b39a
Fix JIT64 mtmsr - PIE support caused the codesize
...
to get bigger, breaking an optimization. This forces the emitter to use a
32bit pointer instead of an 8bit one, fixing the issue at the expense of
efficiency.
2017-08-22 06:44:38 -04:00
Michael M
5f30ebed23
GameFile: don't store file path parts
2017-08-21 23:55:45 -07:00
Michael M
e88b5f4254
GameFile: add missing include for QFileInfo
2017-08-21 23:55:45 -07:00
degasus
b00c60618b
JitArm64: Fix rlwinmx.
...
Seems like I was wrong that ANDI2R doesn't require a temporary register here.
There is *one* case when the mask won't fit in the ARM AND instruction:
mask = 0xFFFFFFFF
But let's just use MOV instead of AND here for this case...
2017-08-22 08:47:43 +02:00
Michael M
061da1300a
GameFile: handle missing banners in UI instead
...
Currently, GameFile returns a generic banner if the file didn't have one
available (either because the file format doesn't support it, or because
it's a Wii file without an associated save).
It makes more sense to handle the lack of banner in the UI layer. The
game list will use the generic missing banner explicitly (no change from before), and the game info window now omits the banner display entirely if the file didn't have one (since it's not useful to display/allow the user to save the "missing banner" banner).
2017-08-21 18:00:04 -07:00
N.E.C
ebda7db437
VideoCommon: Fix bug #10464 (RA4 format not handled in TextureDecoder)
2017-08-21 10:22:15 -07:00
Léo Lam
6f923ffae4
FileUtil: Simplify File::Copy on non-Windows platforms
...
The old way of doing it is error prone and unnecessarily complex.
2017-08-21 18:31:46 +02:00
Pierre Bourdon
873521ce0b
Revert "Try to fix File::Copy with non-1024-byte aligned sizes"
2017-08-21 18:29:58 +02:00
Jules Blok
d0fc223fe1
Merge pull request #5956 from Armada651/fix-remove-clr-usage
...
RenderState: Fix incorrect blending factors when removing the color usage.
2017-08-21 17:06:44 +02:00
Markus Wick
8280d15357
Merge pull request #5939 from JonnyH/WIP/broken-fstream-copy
...
Try to fix File::Copy with non-1024-byte aligned sizes
2017-08-21 17:01:16 +02:00
Jules Blok
390f3f13ba
RenderState: Fix incorrect blending factors when removing the color usage.
2017-08-21 16:33:10 +02:00
Leo Lam
92b375b07a
Merge pull request #5952 from lioncash/futureproofing
...
CommonTypes: Qualify standard integral types in typedefs with std::
2017-08-21 11:07:34 +02:00
Nick
0df4f7db4f
Depreciate old OSX Keyboard and Mouse
2017-08-21 01:44:03 -04:00
Mat M
5aed9a67ef
Merge pull request #5904 from leoetlino/indirect-include
...
PowerPC: Fix indirect includes for GDBStub
2017-08-20 19:59:53 -04:00
Lioncash
7a5577498b
CommonTypes: Qualify standard integral types in typedefs with std::
...
Given a relatively recent proposal (P0657R0), which calls for deprecation of putting stuff into the global namespace when using C++ headers, this just futureproofs our code a little more.
Technically this is what we should have been doing initially, since an
implementation is allowed to not provide these types in the global
namespace and still be compliant.
2017-08-20 19:34:52 -04:00
Leo Lam
08004d409e
Merge pull request #5937 from ligfx/miniupnpccmake
...
CMake: use miniupnpc target instead of global vars
2017-08-20 23:44:06 +02:00
Leo Lam
aab4cced11
Merge pull request #5938 from sepalani/err-msg
...
CommonFuncs: LastStrerrorString added
2017-08-20 23:41:47 +02:00
Michael M
8c13e0230c
GameTracker: use WorkQueueThread
2017-08-20 14:40:56 -07:00
Michael M
de9378bf63
Common: add WorkQueueThread
2017-08-20 14:40:56 -07:00
Leo Lam
165a995cc4
Merge pull request #5950 from ligfx/gamelistmodelfilenamefallback
...
GameListModel: fallback to file name if long name is empty
2017-08-20 23:29:27 +02:00
Michael M
1a59ea3adb
GameFile: don't assign English long name for ELF/DOLs
2017-08-20 13:50:24 -07:00
Michael M
f3ab974bc6
GameListModel: fallback to file name if long name is empty
2017-08-20 13:50:24 -07:00
Michael M
6bfb280cec
GameListModel: make UpdateGame take a const ref
2017-08-20 13:46:49 -07:00
Michael M
f724a06108
GameListModel: make UpdateGame update existing files as well
2017-08-20 13:46:49 -07:00
Jules Blok
f4f6782ae6
D3DBase: Only use a stereo swapchain if quad-buffering is enabled.
2017-08-20 18:25:49 +02:00
Stenzek
a7f217c3f4
UberShaderPixel: Fix sampling of EFB copies in stereo modes
2017-08-20 18:08:24 +10:00
Michael M
623026f420
Connect to Settings::PathAdded/Removed directly in GameListModel
...
It no longer makes sense to connect these signals in GameList, since
GameListModel is now owned by Settings.
2017-08-19 15:59:40 -07:00
Michael M
7d9ad88bc5
Add initial paths to GameTracker after construction
...
It's strange to see GameTracker add its own initial paths in
construction, because you might expect a race condition where the
GameLoaded signal is emitted before it gets connected to in
GameListModel.
In fact, this doesn't happen, but only because of how it abuses the Qt
signals mechanism to load files asynchronously: GameLoader emits a
GameLoaded signal which gets forwarded to the GameTracker::GameLoaded
signal _after_ control returns to the event loop, at which point
GameListModel has connected.
This commit moves the logic of adding initial paths out of GameTracker
to a point after the signals are connected, which is more obvious and
doesn't rely on how GameTracker implements concurrency.
2017-08-19 15:59:40 -07:00
Sepalani
4e5fe6366a
CommonFuncs: LastStrerrorString added
2017-08-18 20:08:50 +01:00
Michael M
abf55be70d
RunOnObject: add missing QThread include
2017-08-17 16:41:35 -07:00
Jonathan Hamilton
643b3ba9f8
Try to fix File::Copy with non-1024-byte aligned sizes
...
ifstream::read() sets the failbit if trying to read over the end, which
means that (!input) would be hit for the 'last' block if it wasn't
exactly BSIZE (1024) bytes.
2017-08-17 14:08:56 -07:00
Michael M
fc306faad8
CMake: use miniupnpc target instead of global vars
2017-08-17 13:15:02 -07:00
Léo Lam
4b4e488189
WFS: Use a separate log type for WFS related logs
...
Makes it easier to turn off general IOS messages that can be
distracting (e.g. /dev/net/ssl being opened hundreds of time...)
without losing the ability to view WFS messages.
2017-08-16 22:27:29 +02:00
Leo Lam
918b0375e4
Merge pull request #5742 from ToadKing/fix-bad-controllers
...
Ignore capabilities reported by an XInput device
2017-08-17 03:42:02 +08:00
Leo Lam
799b01b6af
Merge pull request #5751 from leoetlino/region
...
Config: Fall back to the system menu region
2017-08-17 03:40:19 +08:00
Leo Lam
a53b01360c
Merge pull request #5898 from ligfx/extractupnp
...
Common: extract UPnP namespace from NetPlayServer
2017-08-17 03:11:41 +08:00
Leo Lam
70931f460d
Merge pull request #5929 from JonnyH/PR/fix-oprofile-build-linked-as-needed
...
Fix OPROFILE linux build with -Wl,--as-needed
2017-08-17 03:06:59 +08:00
Léo Lam
d2452b8ecf
Qt: Fix old usage of GetSelectedGame
...
Waited too long before merging a PR, which managed to break the build
because GetSelectedGame was changed without introducing any conflict :(
2017-08-16 13:21:14 +02:00
Leo Lam
3748384008
Merge pull request #5746 from leoetlino/disc-updates
...
Add support for installing disc updates from the game list
2017-08-16 19:02:42 +08:00
Sepalani
93b5a5369b
SymbolDB: Blank stripped symbol name fixed
2017-08-16 04:07:19 +01:00
Pierre Bourdon
9b79e0ac72
Merge pull request #5930 from delroth/wfs
...
Fix Dragon Quest X offline mode on Dolphin
2017-08-15 22:40:56 +02:00
Pierre Bourdon
40c70469e5
WFS: Implement GET_HOMEDIR.
2017-08-15 22:35:45 +02:00
Pierre Bourdon
1e75455ef5
WFS: Return a proper ENOENT code on failed OPEN.
2017-08-15 22:35:45 +02:00
Pierre Bourdon
397f5e54e0
WFS: Implement READ_ABSOLUTE (merged with READ implementation).
2017-08-15 22:35:45 +02:00
Pierre Bourdon
49a4712f33
WFS: Implemented the GET_SIZE ioctl.
2017-08-15 22:35:45 +02:00
Pierre Bourdon
2f5ddf12a9
WFS: Normalize paths before opening.
2017-08-15 22:35:45 +02:00
Pierre Bourdon
425cf18bf7
USB: Add a stub HIDv5 implementation and use it for IOS59.
2017-08-15 22:35:45 +02:00
Pierre Bourdon
f810f1edb2
WFS/NAND: Better handle GID.
2017-08-15 22:29:10 +02:00
Pierre Bourdon
f8e5f4296f
WFS: Document WFSSRV ioctl 0x0c as being mkdir.
2017-08-15 22:29:10 +02:00
Pierre Bourdon
c14ab0dd53
WFS: Implement current/home path expansion.
2017-08-15 22:29:10 +02:00
Jonathan Hamilton
2a66b88d01
Fix OPROFILE linux build with -Wl,--as-needed
...
The opagent library was (incorrectly) marked as a dependency for "Core"
instead of "Common".
When linked with --as-needed, any symbols the linker can tell are not
used are discarded. As the link is done in command-line order, and the
Core library (and dependencies) are processed before Common, it would
link in Core, then opagent, but as at that point no opagent symbols are
used the whole opagent library would be discarded.
Moving the opagent library to be a dependency of Common fixes this, as
after the Common library is linked, there *are* opagent symbols used.
2017-08-14 14:38:44 -07:00
Jonathan Hamilton
5c213a5ad5
Qt frontend build fix for USE_UPNP=OFF
...
A couple of missing "#ifdef USE_UPNP" around
NetPlaySetupDialog::m_host_upnp
2017-08-14 13:31:55 -07:00
Anthony
6a272f22de
Merge pull request #5478 from stenzek/vulkan-nvidia
...
Vulkan: Don't use vkCmdClearAttachments on NVIDIA with MSAA
2017-08-14 13:12:41 -07:00
Anthony
a7bdd2ee1c
Merge pull request #5868 from stenzek/d3d-require-new-compiler
...
D3DBase: Raise error if d3dcompiler_47.dll cannot be loaded
2017-08-14 09:55:31 -07:00
Leo Lam
5bfd00f4e6
Merge pull request #5926 from ligfx/lintallsource
...
Fix two small lint errors
2017-08-14 23:18:04 +08:00
Anthony
fc9f9b6683
Merge pull request #5880 from stenzek/nv-ubershaders
...
Ubershader optimizations for NVIDIA
2017-08-14 08:17:10 -07:00
Michael M
1ade08c607
Fix two small lint errors
2017-08-13 19:06:10 -07:00
Michael M
8702ffccc3
UPnP: use value-initialization instead of std::memset
2017-08-13 18:50:53 -07:00
Michael M
0e51082bbb
UPnP: move variable declaration to where it's used
2017-08-13 18:50:52 -07:00
Michael M
7ce9f1f984
UPnP: remove unneeded vector in InitUPnP()
2017-08-13 18:50:52 -07:00
Michael M
b5d070b0cf
NetPlayServer: handle port forwarding in constructor
2017-08-13 18:50:52 -07:00
Michael M
4b50e77a26
NetPlayClient/Server: apply Parameter Object pattern to traversal parameters
2017-08-13 18:50:52 -07:00
Michael M
fdb5828d62
Qt MainWindow: clean up Netplay settings logic
2017-08-13 18:50:52 -07:00
Michael M
a09f8744b9
UPnP: cleanup variable name desc_xml
2017-08-13 18:50:52 -07:00
Michael M
ff1d1a7a4d
UPnP: use std::to_string
2017-08-13 18:50:52 -07:00
Michael M
862e0bec79
UPnP: cleanup function names
2017-08-13 18:50:52 -07:00
Michael M
281f90efc3
UPnP: coalesce s_our_ip and cIP
2017-08-13 18:50:51 -07:00
Michael M
106ae9636e
UPnP: cleanup variable names
2017-08-13 18:50:51 -07:00
Michael M
3386543a9c
Common: extract UPnP namespace from NetPlayServer
2017-08-13 18:50:51 -07:00
Michael M
9afb2ff40e
Common/CMakeLists: sort source files
2017-08-13 18:50:51 -07:00
Markus Wick
06da1973a8
Merge pull request #5919 from degasus/arm
...
JitArm64: Small performance optimizations.
2017-08-14 00:01:27 +02:00
Markus Wick
f92562c652
Merge pull request #5917 from degasus/cmp
...
JitArm64: Fix and improve the cmpXX instructions.
2017-08-14 00:00:54 +02:00
Sepalani
c71ce9a8eb
MemoryWindow: base address search added
2017-08-12 18:22:30 +01:00
Pierre Bourdon
5a4900bc96
WFS: Stub WFSSRV's flush command.
2017-08-12 15:17:34 +02:00
Pierre Bourdon
f3224dc726
WFS: Stub out unimplemented ioctl 0x08.
2017-08-12 15:17:34 +02:00
Pierre Bourdon
f0ba0f617f
WFS: Fix shutdown behavior with long hanging requests.
2017-08-12 15:17:34 +02:00
Pierre Bourdon
385f063be1
ES: Split out GetTitleId to a separate method.
2017-08-12 15:17:34 +02:00
Pierre Bourdon
58624ef409
ES: Fix wrong log message.
2017-08-12 15:17:34 +02:00
Markus Wick
d791e5d3a8
JitArm64: Use the updated wrappers.
...
They are faster, no need to use the slow path in the CPU.
2017-08-12 00:00:41 +02:00
Markus Wick
d78009877b
JitArm64: Fix LSL/LSR/ROR/ASR wrappers.
...
The other method has a latency of 2 cycles. This also improves the
throughput a lot.
2017-08-12 00:00:41 +02:00
Markus Wick
5ee7f86199
JitArm64: Optimize rlwinmx.
...
The new code adds fast paths for most usages which fits in one
instruction with one cycle latency.
2017-08-12 00:00:41 +02:00
Markus Wick
ec5cfd2aae
JitArm64: Update CR helpers to reflect their usage.
...
This helpers are not for general CR calculation, they are just for the
common case of the sign extended result of integer instructions if the
rc bit is set.
They must not be used by other instructions like cmp, so there is no
need to be as flexible.
2017-08-11 21:17:13 +02:00
Markus Wick
7d4c14feba
JitArm64: Fix and improve the cmpXX instructions.
2017-08-11 21:17:13 +02:00
Ryan Meredith
7154c0f0ff
m_bt_wiimote_motor rename and tooltip addition
2017-08-11 15:15:51 -04:00
Markus Wick
b89e4b5258
Interpreter: Fix cmpi.
...
cmpi shall compare two signed 32 bit values. The used difference a-b
may overflow and so the resulting 32 bit value can't represent it.
A correct way would be cr = s64(a) - s64(b) and it should be done in
this way in the JITs, but the Interpreter shall implement the most
readable way.
Also drops the now unused helper function.
2017-08-11 17:35:22 +02:00
Stenzek
f8a64ab1fc
UberShaderPixel: Use an if trees instead of switch statements on GL
...
The switch statements in these functions appear to get transformed into
an if..else chain on NVIDIA's OpenGL/Vulkan drivers, resulting in lower
performance than the D3D counterparts. Transforming the switch into a
binary tree of ifs can increase performance by up to 20%.
2017-08-12 00:16:19 +10:00
Leo Lam
5767309670
Merge pull request #5914 from sepalani/rso-data
...
RSO: Import data symbols
2017-08-11 21:02:28 +08:00
Léo Lam
1bd7fefec1
Config: Set DOL/ELF region to UNKNOWN
...
This allows the region to be chosen by the user.
2017-08-11 20:28:33 +08:00
Léo Lam
bec35b287e
Config: Fall back to the system menu region
...
Since we don't want users to have to configure the region manually
and always enforce one automatically, we should fall back to a region
that was likely to be chosen by the user instead of always using
PAL whenever the title region cannot be detected.
Dolphin doesn't mess with installed NAND titles like the system menu,
so it is a reliable indicator of what region the user wants.
2017-08-11 20:28:33 +08:00
Leo Lam
86e932b833
Merge pull request #5915 from JosJuice/pad-size
...
DolphinQt2: Replace "Pad size" with "Buffer size"
2017-08-11 20:27:52 +08:00
JosJuice
3570a9b636
DolphinWX: Replace "Pad buffer" with "Buffer size"
2017-08-11 12:36:42 +02:00
Leo Lam
c91211b6ce
Merge pull request #5867 from leoetlino/widescreen
...
GameINI: Replace Wii.Widescreen with AspectRatio
2017-08-11 18:23:54 +08:00
JosJuice
9747a4c697
DolphinQt2: Replace "Pad size" with "Buffer size"
...
"Pad size" just doesn't make much sense. Let's go with "Buffer size"
instead, since the control for it is labeled "Buffer".
(Another possibility is "Pad buffer size", but I'm against that,
because we've stopped referring to controllers as "pads" in almost
all GUI strings.)
2017-08-11 12:22:44 +02:00
Leo Lam
438610a58d
Merge pull request #5748 from nitrousox1de/hide-mouse-delay-fullscreen
...
Hide mouse delay fullscreen
2017-08-11 17:34:46 +08:00
Leo Lam
54778303ee
Merge pull request #5871 from JosJuice/read-swapped-and-shifted
...
DiscIO: Add a Volume::ReadSwappedAndShifted function
2017-08-11 15:58:42 +08:00
Léo Lam
940cc843ed
Config: Fix Movie config loading/saving
...
* Add missing Language setting loading/saving. This was added after the
original OnionConfig PR, which is why support for it was missing.
* Change MovieConfigLoader to reuse ConfigInfos. Less duplication.
* Extract MovieConfigLoader::Save into SaveToDTM. The DTM should use
the current config and not just the movie layer. This makes more
sense than just saving the movie layer, which may not always exist,
and also fixes a crash that would happen when creating a new
recording because the movie layer wouldn't exist in that case.
(Plus, having to get the loader from the layer and call ChangeDTM
on it manually is not very pretty.)
2017-08-11 15:36:32 +08:00
Léo Lam
fa7e3e55d2
Config: Add MainSettings
...
Not really used anywhere yet, but useful for not having to duplicate
config locations and for getting rid of conflicts when I get around
to rebase my Main.Core and Main.DSP porting PR.
2017-08-11 15:36:32 +08:00
Léo Lam
e471505632
WX: Reload Wii config pane on config change
2017-08-11 15:36:32 +08:00
Léo Lam
b2c41cec0a
Config: Include SYSCONF in base layer
...
Settings that come from the SYSCONF are now included in Dolphin's
config system as part of the base layer. They are handled in a
special way compared to other settings to make sure they are only
loaded from and saved to the SYSCONF (to avoid different, possibly
contradicting sources of truth).
2017-08-11 15:36:31 +08:00
Léo Lam
c900e77ac5
Config: Add Get/Set on Layer
...
For convenience, when getting/setting from ConfigInfos.
2017-08-11 15:28:11 +08:00
Leo Lam
e86f5ac04b
Merge pull request #5913 from ligfx/qtselectedgamegamefile
...
GameList: make GetSelectedGame a pointer to GameFile
2017-08-11 15:25:15 +08:00
Sepalani
ae4790ff25
RSO: Import data symbols
2017-08-10 21:30:32 +01:00
Michael M
3c002f0213
GameList: make GetSelectedGame a pointer to GameFile
2017-08-10 13:22:35 -07:00
Michael M
fcb1eb9d3b
dsp_rom: skip bootucode_ax when running from entrypoint
...
This could cause the first branch of the bootucode procedure, which
takes its parameters from the AX registers, to run during the ROM init
sequence. Since the ROM doesn't set any of the AX registers, the values
aren't meaningful, and can cause bad DMA transfers and crashes.
2017-08-10 10:53:12 -07:00
Léo Lam
5ba6182bbc
Qt: Fix WiiUpdate progress dialog cancel button
...
We didn't properly remove the default cancellation handler, which would
cause crashes if the dialog was gone too early.
2017-08-10 23:47:18 +08:00
Léo Lam
ea3b351d92
Qt: Add menu item to perform system update from disc
2017-08-10 23:47:18 +08:00
Léo Lam
0e71c0760e
WX: Add menu item to perform system update from disc
2017-08-10 23:47:18 +08:00
Léo Lam
0fdae2adb8
UI: Refactor Wii update code
...
This moves the progress dialog logic and the result dialog to separate
functions that can easily be reused for disc updates.
2017-08-10 23:47:18 +08:00
Léo Lam
916deb9004
WiiUtils: Add a disc updater
2017-08-10 23:47:18 +08:00
Léo Lam
eb1ba4b0e9
DiscIO: Add a blob reader for Volume files
2017-08-10 23:47:18 +08:00
Léo Lam
ca0438e26d
WiiWad: Allow using WiiWad with more than just files
...
This adds a WiiWad constructor that takes a BlobReader, so that the
class can be used with more than just files from the host filesystem.
Required for using WiiWad with WADs from update partitions.
2017-08-10 23:47:18 +08:00
Léo Lam
5976d3934d
WiiUtils: Refactor InstallWAD
...
Allows using an existing instance of IOS and WiiWAD.
2017-08-10 23:47:18 +08:00
Léo Lam
bc588948c9
WiiUtils: Move ShouldInstallTitle to the online updater
...
The disc updater uses different conditions.
2017-08-10 23:47:18 +08:00
Léo Lam
71f403d05b
BTBase: Fix a file deletion issue on Windows
...
> The process cannot access the file because it is being used by another process.
2017-08-10 23:30:52 +08:00
JosJuice
e806928071
Make DolphinQt2 netplay strings more like in DolphinWX
2017-08-10 15:58:04 +02:00
spycrab
366d4c7744
Qt/NetPlay: Use TraversalClient::FailureReason
2017-08-10 15:41:01 +02:00
Leo Lam
e41a9905c0
Merge pull request #5744 from JosJuice/remove-non-integer-irs
...
Remove non-integer IRs
2017-08-10 17:10:26 +08:00
Leo Lam
d0304c9b38
Merge pull request #5810 from spycrab/qt_netplay
...
Qt: Implement Netplay
2017-08-10 14:45:52 +08:00
Leo Lam
15e46cb216
Merge pull request #5900 from ligfx/fixupnpinit
...
Fix UPnP init
2017-08-10 14:41:50 +08:00
Leo Lam
13b0ba3f55
Merge pull request #5908 from beholdnec/fix-i8-typo
...
VideoCommon: Fix typos in comments introduced by #5849
2017-08-10 14:39:30 +08:00
spycrab
9b65f38382
Make Visual Studio happy
2017-08-10 06:49:57 +02:00
spycrab
78cc759d56
Settings: Implement NetPlay globals
2017-08-10 06:49:57 +02:00
spycrab
2e29509b75
Qt/GameList: Add "Host with NetPlay" option
2017-08-10 06:49:57 +02:00
spycrab
13fac93a29
Qt: Implement NetPlay
2017-08-10 06:49:57 +02:00
Michael Lelli
4fb2d1e361
Ignore capabilities reported by an XInput device
2017-08-09 22:51:01 -05:00
spycrab
d5629017b9
Qt/NetPlay: Implement MD5 dialog
2017-08-09 23:13:20 +02:00
N.E.C
b52aff7966
VideoCommon: Fix typo in comments introduced by #5849
2017-08-09 00:02:27 -07:00
Michael M
6faacbeea5
TraversalClient: make FailureReason an enum class
2017-08-08 15:29:56 -07:00
spycrab
962af060a0
Qt/GameList: Add method to get unique ID for item
2017-08-09 00:05:48 +02:00
spycrab
e9138f7512
Qt/GameList: Implement GetModel()
2017-08-09 00:05:48 +02:00
spycrab
655778f7f1
Qt: Implement GetUniqueID()
2017-08-09 00:05:48 +02:00
spycrab
ca1646d99b
Qt: Add "Start NetPlay" option to the menubar
2017-08-09 00:05:48 +02:00
Léo Lam
58b7350562
SettingsHandler: Fix generated serial numbers
...
Must be 9 characters at most; otherwise the serial number will be
rejected by SDK libraries, as there is a check to ensure the string
length is strictly lower than 10.
2017-08-08 23:25:40 +08:00
JosJuice
1fc910b3ea
Convert to/from old EFB scale numbering
2017-08-08 12:09:50 +02:00
JosJuice
f090a94319
Remove non-integer IRs
2017-08-08 12:09:50 +02:00
Léo Lam
e10e42c09e
PowerPC: Fix indirect includes for GDBStub
2017-08-08 17:47:20 +08:00
Michael M
9e81fec816
NetPlayServer: encapsulate m_upnp_inited in initUPnP()
2017-08-07 11:35:13 -07:00
Michael M
6a8c0ca70b
NetPlayServer: actually set m_upnp_inited
2017-08-07 11:35:13 -07:00
Emmanuel Gil Peyrot
1b32751367
VideoCommon: Round values in swizzlers.
...
This was breaking Metroid Prime 2: Echoes’s scanner in some rooms, such
as the one in https://fifoci.dolphin-emu.org/dff/mp2-scanner/
It was found on Ivy Bridge on Mesa, the alpha value read back from the
EFB was off-by-4 in multiple objects, which was a conversion error
because int4() is equivalent to floor() and the value wasn’t always
higher.
2017-08-07 20:20:36 +02:00
Leo Lam
a25f7b9b4c
Merge pull request #5892 from leoetlino/sysmenu-emu-fixes
...
Boot/BS2: Accuracy fixes
2017-08-08 01:33:05 +08:00
JosJuice
cbe43e58a7
Merge pull request #5890 from leoetlino/sd-fixes
...
IOS/SDIO: Small fixes
2017-08-07 17:03:18 +02:00
Leo Lam
f64b189850
Merge pull request #5895 from lioncash/sw
...
TransformUnit: Get rid of most pointer casting in TransformColor()
2017-08-07 14:18:35 +08:00
Michael M
2abf13ae36
NetPlayServer: remove goto statements
2017-08-06 23:06:38 -07:00
Leo Lam
dbb26a2b54
Merge pull request #5837 from leoetlino/auto-pause
...
WX: Automatically pause the core for the JIT menu items
2017-08-07 13:21:54 +08:00
Scott Mansell
3b5cad6682
Merge pull request #5860 from jturcotte/fix-macos-nswitch-axis
...
Fix axis not working with Switch Pro controller on macOS
2017-08-07 13:44:07 +12:00
Lioncash
745f92b4e5
TransformUnit: Get rid of pointer casting in TransformColor() where applicable
...
The casts to u32* are technically undefined behavior. The u8* cast is
left, as char/unsigned char is exempted from this rule to allow for
bvtewise inspection of objects (and this is what s8/u8 are typedefs of
on platforms we support).
2017-08-06 19:04:31 -04:00
Lioncash
4d35a3105e
TransformUnit: Make LightColor()'s chan parameter const
...
Also marks references/pointers const where applicable
2017-08-06 18:15:05 -04:00
Andrew
d38987e1e8
Hide mouse cursor after delay in DolphinQt
2017-08-06 17:52:37 -04:00
Lioncash
2363be4c63
ElidedButton: Make constructor explicit
...
Prevents implicit conversions to ElidedButton.
2017-08-06 17:31:29 -04:00
Lioncash
5153271278
ElidedButton: Add missing override specifier on paintEvent()
2017-08-06 17:26:07 -04:00
Leo Lam
1385444d86
Merge pull request #5883 from sepalani/term-close
...
DolphinWX: Prevent Dolphin to be shutdown when closing cmd.exe
2017-08-07 00:50:31 +08:00
Léo Lam
9f36499f9e
IOS/SDIO: Make GetCSDv1/v2 const member functions
2017-08-07 00:48:51 +08:00
Léo Lam
c24418a822
IOS/SDIO: Fix warnings about missing braces
2017-08-07 00:48:16 +08:00
Léo Lam
d86d5d62ad
IOS/SDIO: Add missing save calls in DoState
2017-08-07 00:48:16 +08:00
Leo Lam
1833354ef9
Merge pull request #5891 from lioncash/const
...
File: Make GetSize() a const member function
2017-08-07 00:46:49 +08:00
Léo Lam
6d73c3e8e3
Boot/BS2: Don't write part of the debugger hook
...
Writing to 0x60 does actually not "init exception[s]" or anything like
that. Not at all. Rather, it *breaks* a check in Nintendo's SDK, which
makes it fail to realise that the hook hasn't been set up.
This prevents the SDK initialisation routines from writing the rest of
the hook instructions (total: 0x20 bytes), which in turn causes an
anti-piracy check to fail in some Ubisoft games (including Tintin).
Dolphin can be really amazing sometimes.
2017-08-07 00:36:35 +08:00
Léo Lam
d612416ce8
Boot/BS2: Write to 0x3194 and 0x3198
2017-08-07 00:36:35 +08:00
Léo Lam
0bdcabdfa9
Boot/BS2: Write the "devkit boot program version"
2017-08-07 00:36:34 +08:00
Léo Lam
81b298f747
Boot/BS2: Set the proper value for 0x000030d8
...
No clue where people got the 0 value from, or why it's labelled as
"time". As far as I can tell, it is always set to 0xffffffff by
official NAND titles, including the system menu.
2017-08-07 00:36:34 +08:00
Léo Lam
29b1276548
Boot/BS2: Update state file
2017-08-07 00:36:34 +08:00
Léo Lam
363bf27cce
Boot/BS2: Write empty play record
2017-08-07 00:36:34 +08:00
Léo Lam
8489d9da90
Boot: Move StateFlags from Boot_WiiWAD to Boot
...
It's not specific to WADs. The BS2 emulation boot code will also need
to update the state file.
Move the struct to Boot and add a helper function that will handle
reading + computing the checksum + writing the state file.
2017-08-07 00:36:34 +08:00
Lioncash
f0308151a8
File: Make GetSize() a const member function
2017-08-06 07:57:43 -04:00
JosJuice
fa4723ffb4
DolphinQt2: Rename "Table"/"List" to "List View"/"Grid View"
...
Sentret_C posted this comment on Transifex recently:
"What Dolphin refers to as "Table View" and "List View" are
similar to "List View" and "Grid View" in Steam, and I think
the Steam names describe them better."
I agree with that, so here's a commit that changes the names.
2017-08-06 11:35:45 +02:00
Leo Lam
84ecc0ecc9
Merge pull request #5842 from TBoshoven/sdhc-support
...
Add support for SDHC
2017-08-06 11:17:50 +08:00
mimimi085181
cdbd9863b4
Keep textures that are overwritten by efb copies, if the stride matches
...
This is supposed to get efb2tex to the same texture as efb2ram, by applying the related efb copies as updates after each other, in the order of their creation.
2017-08-06 03:13:57 +02:00
mimimi085181
4e8ff42503
Do not load overwritten textures by hash
...
In this case, comparing the hash is not enough to check, if two textures are identical.
2017-08-06 03:13:57 +02:00
mimimi085181
a21ac22e07
fix stored memory stride for normal textures
2017-08-06 03:13:57 +02:00
Tom Boshoven
10c615d7db
Added proper SDHC initialization to protocol v2.
2017-08-05 19:55:08 +02:00
degasus
cc4b3b180b
VideoSW: Drop log level of missing anti aliasing support.
...
We don't want to emit such a high priority warning here, else fifoci will die.
2017-08-05 19:20:19 +02:00
Tom Boshoven
b29c8c1a63
Redid initialization logic.
...
Looks like initialization is done automatically by IOS versions that support SDHC.
2017-08-05 18:51:24 +02:00
Lioncash
01c262fe47
Filesystem: Declare FileInfo iterator's move constructor and assignment operator noexcept
...
Prevents potential extra copies being created in the context of
std::move_if_noexcept.
2017-08-05 12:29:02 -04:00
Tom Boshoven
47e056a654
Re-enable SDIO events.
2017-08-05 14:52:03 +02:00
Tom Boshoven
494e935ca7
Use std::array for CSD.
...
Fix double negative in comment.
Fixed member variable names, added some const correctness.
2017-08-05 14:49:38 +02:00
Stenzek
6d91c1b079
ProgramShaderCache: Call glTexImage3D after glTexParameter
...
Was missed before merge.
2017-08-05 18:18:30 +10:00
Anthony
3c5112bb21
Merge pull request #5856 from stenzek/optimus-crash
...
Fix ubershader crashes with primus/bumblebee
2017-08-05 00:54:28 -07:00
Léo Lam
e58ba76f07
Don't force the aspect ratio in GameINIs
...
Instead, add a SuggestedAspectRatio option which tells Dolphin which
aspect ratio to use when the aspect ratio option is set to Auto.
2017-08-05 14:27:16 +08:00
Anthony
737e045bd8
Merge pull request #5849 from beholdnec/tex-format-bookkeeping
...
Video: Clearly separate Texture and EFB Copy formats
2017-08-04 22:34:34 -07:00
Sepalani
eb3975eee8
DolphinWX: Prevent Dolphin to be shutdown when closing cmd.exe
2017-08-04 18:35:02 +01:00
Leo Lam
9bab7ffa83
Merge pull request #5794 from spycrab/qt_menubar
...
Qt: Overhaul menubar
2017-08-04 14:42:58 +08:00
Leo Lam
284aa99a0d
Merge pull request #5169 from ligfx/sidevicegbastate
...
SI_DeviceGBA: refactor and make GBASockServer a member rather than parent
2017-08-04 14:40:51 +08:00
iwubcode
bc3622c2a8
Fix the size of s_last_connect_request_counter to be 5 (wiimotes + balance board)
2017-08-04 00:32:20 -05:00
Leo Lam
f274bbcbe1
Merge pull request #5872 from ligfx/wxnetplayonionconfig
...
WX: make Netplay use new-style config
2017-08-04 10:07:05 +08:00
Leo Lam
51af8d4aeb
Merge pull request #5829 from ligfx/qtmsgalerthandler
...
Qt: register MsgAlertHandler
2017-08-04 09:53:24 +08:00
Leo Lam
fac085940e
Merge pull request #5877 from JosJuice/log-strings
...
DolphinQt2: Make logging strings more like in DolphinWX
2017-08-04 09:50:08 +08:00
N.E.C
c3a57bbad5
Video: Clearly separate Texture and EFB Copy formats
...
Improve bookkeeping around formats. Hopefully make code less confusing.
- Rename TlutFormat -> TLUTFormat to follow conventions.
- Use enum classes to prevent using a Texture format where an EFB Copy format
is expected or vice-versa.
- Use common EFBCopyFormat names regardless of depth and YUV configurations.
2017-08-03 18:35:29 -07:00
Michael M
7bdfd862d7
Qt: register MsgAlertHandler
...
This is the thing that pops up a message box when something goes wrong,
or when you want to override a previously dumped file, etc.
2017-08-03 13:29:59 -07:00
Michael M
737651f298
MsgHandler: small cleanup
2017-08-03 13:29:59 -07:00
Michael M
76459d88bf
QtUtils: add RunOnObject
2017-08-03 13:29:59 -07:00
Michael M
dde3471b62
WX: make Netplay use new-style config
2017-08-03 13:16:17 -07:00
Michael M
f8fea83e67
NetPlayLauncher: store window geometry in native wxConfig
2017-08-03 13:16:17 -07:00
Michael M
9867677211
WxUtils: add WxStrToUL
2017-08-03 13:16:17 -07:00
Michael M
7d509a7a94
Config/Section: support u16 values
2017-08-03 13:16:16 -07:00
Markus Wick
9649494f67
Merge pull request #5827 from JonnyH/WIP/fix-glMultiDrawElementsBaseVertex-invalid-OES-suffix
...
Fix an incorrect OES suffix on glMultiDrawElementsBaseVertex
2017-08-03 18:45:32 +02:00
JosJuice
b29ca4f830
DolphinQt2: Make logging strings more like in DolphinWX
...
Like PR 5817 but for strings that were added after that PR was merged.
2017-08-03 16:43:50 +02:00
Stenzek
7f88711186
Vulkan: Add a driver bug for NV when MSAA is enabled
...
This causes the card to lock up when vkCmdClearAttachments is called,
when multisampling is enabled. Seems to be restricted to Maxwell and
newer?
2017-08-03 17:40:15 +10:00
Leo Lam
6a76ca7bb7
Merge pull request #5873 from mimimi085181/fix-real-wiimote
...
Properly handle g_wiimotes_mutex again for real wiimotes
2017-08-03 13:09:57 +08:00
mimimi085181
576bf32ab2
Properly handle g_wiimotes_mutex again for reconnect on button press for real wiimotes
...
Sorry, i overlooked the mutex in PR https://github.com/dolphin-emu/dolphin/pull/4949
This pr fixes issue 10434: https://bugs.dolphin-emu.org/issues/10434
2017-08-03 01:54:49 +02:00
JosJuice
5e3c98af1d
DiscIO: Add a Volume::ReadSwappedAndShifted function
...
This is a fairly common operation, so let's make a utility
function for it to cut down on code duplication.
2017-08-02 22:00:51 +02:00
Stenzek
fee08cf63d
Vulkan: Use optimal tiling for dummy texture
...
Fixes a crash on some NVIDIA drivers. Apparently calling
vkCmdClearColorImage on an image with linear tiling causes the
GPU/driver to lock up.
2017-08-02 21:33:10 +10:00
Stenzek
287859c5e1
GLInterface: Support surfaceless contexts on GLX
2017-08-02 20:12:28 +10:00
Stenzek
67997529b8
ProgramShaderCache: Create a FBO for shared contexts to draw into
...
This way it allows us to use surfaceless contexts in EGL/GLX. It also
ensures that the shared context shares a similar setup to the main
context's framebuffer, potentially reducing the number of variants a
driver needs to generate.
2017-08-02 20:12:28 +10:00
Stenzek
d0bcdc7f89
Merge pull request #5858 from stenzek/ubershader-6-bit-color
...
Ubershaders: Fix 6-bit color truncation not being applied
2017-08-02 20:10:34 +10:00
Stenzek
57f34d748b
D3DBase: Raise error if d3dcompiler_47.dll cannot be loaded
...
Previously we were falling back to an earlier version of the compiler.
The older version cannot compile our ubershaders without various
graphical issues.
2017-08-02 19:54:55 +10:00
Leo Lam
a8e4a3c915
Merge pull request #5759 from AwesomeMarioFan/master
...
Fix Time in Forecast Channel
2017-08-02 12:54:26 +08:00
Leo Lam
7565d97733
Merge pull request #4980 from FunctionalDragon/patch-2
...
send stop message before saving recording
2017-08-02 12:49:46 +08:00
Leo Lam
d3bb964d79
Merge pull request #5809 from HannesMann/master
...
Send rumble data to the adapter on a separate thread
2017-08-02 12:36:35 +08:00
FunctionalDragon
11cab1c68d
Send stop message before saving recording
...
When recording during netplay, the stop message was only sent after you
have chosen a filename for the replay, causing the other player(s)
to freeze for a few seconds. This takes care of the annoyance.
2017-08-02 12:29:49 +08:00
Leo Lam
d6e051c942
Merge pull request #5703 from ligfx/blockuserinputfilter
...
QtUtils: add BlockUserInputFilter
2017-08-02 12:13:56 +08:00
Leo Lam
4ddf4e9604
Merge pull request #5862 from JosJuice/bs2-cleanup
...
Emulated BS2 cleanup
2017-08-02 12:03:50 +08:00
Leo Lam
407bc7a544
Merge pull request #4949 from mimimi085181/netplay-reconnect-on-button-press
...
Wiimote Netplay: Sync button press for reconnect
2017-08-02 12:00:28 +08:00
Leo Lam
f208ed8924
Merge pull request #5861 from JosJuice/pr-5817-fixup
...
PR #5817 fixup
2017-08-02 11:57:14 +08:00
Leo Lam
02e80af104
Merge pull request #5863 from MerryMage/oop
...
Config: Missed a line in #5770
2017-08-02 11:56:31 +08:00
Leo Lam
c7602cce04
Merge pull request #5865 from JosJuice/noncopyable-move
...
DirectoryBlob: Use NonCopyable
2017-08-02 11:56:16 +08:00
Hannes Mann
56239d1ae1
Send rumble data to the adapter on a separate thread
2017-08-02 00:44:46 +02:00
JosJuice
2bcccd893a
DirectoryBlob: Remove unused DiscContent member
2017-08-01 22:01:34 +02:00
JosJuice
f7032f8deb
FileSystemGCWii: Don't add 0-size files to m_offset_file_info_cache
...
This is done in order to reduce the risk of files not being added
due to them having the same end offset as another file.
2017-08-01 21:58:25 +02:00
JosJuice
b155c46aca
DirectoryBlob: Fix reading beyond the end of the disc
...
There were two problems with this:
1. If the starting offset was beyond the end of the disc,
we would dereference an invalid iterator.
2. The data beyond the end of the disc was non-deterministic.
2017-08-01 21:58:18 +02:00
JosJuice
74ada98e84
DirectoryBlob: Remove redundant assert
...
DiscContent::Read contains an equivalent assertion.
2017-08-01 21:58:12 +02:00
JosJuice
6b0a60d2ee
DirectoryBlob: Don't add DiscContents with size 0
...
Having DiscContents with size 0 would mean that some DiscContents
might not get added to the std::set because of them comparing
identically to another DiscContent.
This replaces an older piece of code in WriteDirectory that ensures
that no two files have the same starting offset. (We now care about
the ending offset, not the starting offset. The new solution both
ensures that no two files have the same ending offset and that no
two files have the same starting offset.)
2017-08-01 21:58:04 +02:00
JosJuice
78fa98f559
DirectoryBlob: Change the return type of Add/CheckSizeAndAdd
...
Only return the information that isn't already known to the caller.
2017-08-01 21:57:54 +02:00
JosJuice
1b1a75ee3a
DirectoryBlob: Lookup DiscContents by offset + size instead of offset
...
This simplifies DiscContentContainer::Read.
2017-08-01 21:57:48 +02:00
JosJuice
d6260e02ce
DirectoryBlob: Replace std::set<DiscContent> with a new class
2017-08-01 21:57:24 +02:00
JosJuice
a7a8e467b6
DirectoryBlob: Use NonCopyable
2017-08-01 21:52:30 +02:00
mimimi085181
acde0b8b6c
Sync info about pressed wiimote button
2017-08-01 20:56:45 +02:00
JosJuice
b0ee8bd0a0
NonCopyable: Allow moving
...
NonCopyable is only supposed to prevent classes from being copied,
not make it hard for classes to be moveable.
2017-08-01 20:50:11 +02:00
mimimi085181
8b1e61b00a
Change wiimote reconnect on button press code
...
This moves the reconnect logic into a single function, so the netplay code doesn't need to be written 2 times
2017-08-01 20:41:05 +02:00
MerryMage
31ec3e2501
Config: Missed a line in #5770
2017-08-01 18:07:53 +01:00
Leo Lam
9b0fae3183
Merge pull request #5730 from spycrab/qt_logging
...
Qt: Implement logging window
2017-08-01 23:51:35 +08:00
JosJuice
363547a5b2
Boot: Make EmulatedBS2 require a volume
2017-08-01 16:05:53 +02:00
JosJuice
eb6f0a7258
Boot: Remove volume parameter from SetupWiiMemory
2017-08-01 16:05:20 +02:00
JosJuice
42d7dc2e08
Boot: Remove skip_app_loader parameter
2017-08-01 16:04:15 +02:00
JosJuice
fea75d045c
Boot: Split out some code to a new function SetupGCMemory
...
Just like the existing function SetupWiiMemory.
2017-08-01 16:03:55 +02:00
JosJuice
a345ab2515
PR 5817 fixup
2017-08-01 14:34:44 +02:00
Leo Lam
a8606f5d13
Merge pull request #5844 from leoetlino/video-analytics
...
Analytics: Report a few more video settings
2017-08-01 19:23:59 +08:00
JosJuice
b6c6a04f95
DirectoryBlob: Standardize the spelling of disc
...
DirectoryBlob was using disk in some places and disc in other places.
2017-08-01 11:36:40 +02:00
JosJuice
d0c322f6e6
DirectoryBlob: Don't silently set GC region to NTSC-J if bi2.bin is missing
...
We were already handling the Wii region in region.bin in this way.
2017-08-01 11:36:40 +02:00
JosJuice
3fd0d39a85
DirectoryBlob: Write partition headers properly
2017-08-01 11:36:40 +02:00
JosJuice
09832caf41
DolphinQt2: Fix memory leak in GameLoader::LoadGame
2017-08-01 11:36:40 +02:00
JosJuice
a6be1513bf
DolphinWX: Increment game list cache version
...
This is so that DirectoryBlobs won't look like valid discs
in old versions that don't support the DirectoryBlob format.
2017-08-01 11:36:40 +02:00
JosJuice
5fe3745750
Don't show "extra" files from DirectoryBlobs in game list
...
For instance, we don't want to show TGC files that might be
inside the /files/ directory of a GameCube DirectoryBlob,
and we don't want to show the /sys/main.dol files for extra
partitions of Wii DirectoryBlobs.
2017-08-01 11:36:40 +02:00
JosJuice
1ea44f425d
DirectoryBlob: Change ConvertUTF8NamesToSHIFTJIS's parameter to pointer
2017-08-01 11:36:40 +02:00
JosJuice
34fd08e7eb
DirectoryBlob: Support multiple partitions
2017-08-01 11:36:40 +02:00
JosJuice
955ab72b1d
DirectoryBlob: Remove m_root_directory from DirectoryBlob
2017-08-01 11:36:40 +02:00
JosJuice
e15b957d53
DirectoryBlob: Implement GetDataSize()
2017-08-01 11:36:40 +02:00
JosJuice
d84bee3ff4
DirectoryBlob: Prepare more for supporting multiple partitions
2017-08-01 11:36:40 +02:00
JosJuice
a3ee61e1a9
DirectoryBlob: Let DirectoryBlob force GC/Wii for partition
2017-08-01 11:36:40 +02:00
JosJuice
fb09874f79
DirectoryBlob: Reorder functions in .cpp file
...
They're now grouped by which class they belong to.
2017-08-01 11:36:40 +02:00
JosJuice
ba0ee3f54b
DirectoryBlob: Prepare for supporting multiple partitions
2017-08-01 11:36:40 +02:00
JosJuice
953ca9cee1
DirectoryBlob: Make PadToAddress and Write32 static
2017-08-01 11:36:40 +02:00
JosJuice
ab4762c4c2
DirectoryBlob: Split out setting BI2 to new function
2017-08-01 11:36:40 +02:00
JosJuice
2ea0a1a086
DirectoryBlob: Make some constants local
2017-08-01 11:36:40 +02:00
JosJuice
0d4ad0e39e
DirectoryBlob: Remove m_fst_name_offset
2017-08-01 11:36:40 +02:00
JosJuice
ef39b4da46
DirectoryBlob: Improve SetApploader
...
The code gets simpler by using IOFile instead of ReadFileToString.
Also, we now write -1 in all cases where loading fails.
2017-08-01 11:36:40 +02:00
JosJuice
31d8322c5a
DirectoryBlob: Don't use member variables for addresses
...
Now it's clearer that SetDOL depends on SetApploader
and BuildFST depends on SetDOL.
As a side note, we now load the DOL even if there's
no apploader. (I don't think it matters whether we
do it, but it was easier to implement this way.)
2017-08-01 11:36:40 +02:00
JosJuice
b28ec0b7ee
DirectoryBlob: Split out setting partition table to new function
2017-08-01 11:36:40 +02:00
JosJuice
c4879aa48d
DirectoryBlob: Split out setting TMD and ticket to new function
2017-08-01 11:36:40 +02:00
JosJuice
5a00bda490
DirectoryBlob: Move content emplacement out of the constructor
2017-08-01 11:36:40 +02:00
JosJuice
1258d18f21
DirectoryBlob: Restructure SetApploader
2017-08-01 11:36:40 +02:00
JosJuice
8747b1b6ab
DirectoryBlob: Support region.bin
2017-08-01 11:36:40 +02:00
JosJuice
c73f6b6c26
DirectoryBlob: Add ReadFileToVector function
2017-08-01 11:36:40 +02:00
JosJuice
8afa230787
DirectoryBlob: Rename DISKHEADERINFO_ADDRESS to BI2_ADDRESS
...
Because DISKHEADERINFO is too easy confuse with DISKHEADER.
Also adding BI2_SIZE and DISKHEADER_SIZE contants.
2017-08-01 11:36:40 +02:00
JosJuice
975b2b40fa
DirectoryBlob: Support bi2.bin
2017-08-01 11:36:40 +02:00
JosJuice
251828ccc0
Don't check validity twice when creating DirectoryBlob
2017-08-01 11:36:40 +02:00
JosJuice
a6bbf7e21b
DirectoryBlob: Don't keep DOL in memory
2017-08-01 11:36:40 +02:00
JosJuice
4cc8d3091c
DirectoryBlob: Require header file (boot.bin)
2017-08-01 11:36:40 +02:00
JosJuice
71578b468d
DirectoryBlob: Support tickets and TMDs
2017-08-01 11:36:40 +02:00
JosJuice
02610d4b28
DirectoryBlob: Use DISCIO instead of DVDINTERFACE for logging
2017-08-01 11:36:40 +02:00
JosJuice
3f9eec9ae4
DirectoryBlob: Use DiscContent for ReadNonPartition too
...
ReadPartition and ReadNonPartition are now unified into
ReadInternal, with a parameter controlling whether
the read is in a partition or not.
2017-08-01 11:36:40 +02:00
JosJuice
a0fa350ca6
DirectoryBlob: Use DiscContent for everything in ReadPartition
2017-08-01 11:36:40 +02:00
JosJuice
936ef5b9dd
DirectoryBlob: Let DiscContent be backed by memory instead of file
2017-08-01 11:36:40 +02:00
JosJuice
e1321b131d
DirectoryBlob: Create a DiscContent class for use in m_virtual_disc
2017-08-01 11:36:40 +02:00
JosJuice
b56214789e
DirectoryBlob: Make some functions private
2017-08-01 11:36:40 +02:00
JosJuice
b8d8c7370f
DirectoryBlob: Move constants to .cpp file
2017-08-01 11:36:40 +02:00
JosJuice
12cbeb2288
Remove DVD root and apploader path settings
2017-08-01 11:36:40 +02:00
JosJuice
37c09343d8
Turn VolumeDirectory into DirectoryBlob
...
This lets VolumeDirectory/DirectoryBlob skip implementing
various volume functions like GetGameID, GetBanner, etc.
It also lets us view extracted discs in the game list.
This ends up breaking the boot process for Wii
DirectoryBlobs due to workarounds being removed from the
boot process, but that will be fixed later by adding
proper DirectoryBlob support for things like TMDs.
We now expect the directories to be laid out in a certain
format (based on the format that WIT uses) instead of requiring
the user to set the DVD root and apploader path settings.
2017-08-01 11:36:40 +02:00
JosJuice
5f8935932d
Blob: Add interface for reading decrypted Wii data directly
...
This is useful for blob types that store Wii data unencrypted
(such as WIA and discs extracted to directories) so that
we don't have to waste CPU time encrypting in the blob code
just to decrypt right afterwards in the volume code.
2017-08-01 11:36:40 +02:00
JosJuice
878869488d
Boot: Consider DOL/ELF files as possible volumes
...
The old approach to detecting DOL/ELF files doesn't fit
with the new way of implementing extracted discs.
The game list is already doing it in a way that's similar
to the approach that this commit uses.
2017-08-01 11:36:40 +02:00
Leo Lam
764c93f932
Merge pull request #5683 from JosJuice/volume-wii-defer
...
VolumeWii: Defer loading tickets, TMDs and keys until when needed
2017-08-01 17:11:30 +08:00
Leo Lam
c4b2aa88ec
Merge pull request #5690 from ligfx/removecoreaudio
...
Remove CoreAudio audio backend
2017-08-01 16:42:01 +08:00
Leo Lam
4dcc931d97
Merge pull request #5855 from leoetlino/config-reload
...
Config: Reload game INI on title change
2017-08-01 13:40:05 +08:00
Stenzek
fe65b26d53
Merge pull request #5834 from stenzek/bc7
...
Support loading BC7 (BPTC) textures from DDS files
2017-08-01 12:39:19 +10:00
Stenzek
b93d118cef
Merge pull request #5857 from stenzek/drop-force-ubershader-settings
...
VideoConfig: Drop force vertex/pixel ubershader settings
2017-08-01 12:01:33 +10:00
Stenzek
63305e9173
HiresTextures: Support loading BC7 (BPTC) from DDS files
2017-08-01 11:59:38 +10:00
Stenzek
d18988f41e
GLExtensions: Add GL_ARB_texture_compression_bptc
2017-08-01 11:58:57 +10:00
Jocelyn Turcotte
200fb26148
Fix axis not working with Switch Pro controller on macOS
...
Each axis would appear as multiple elements with 0 min/max.
Filter the list of elements using the correct usage page like
done for buttons.
2017-08-01 01:58:30 +02:00
spycrab
84b44fa467
Qt: Implement logging widget (+ configuration)
2017-08-01 01:36:08 +02:00
spycrab
962d684ca2
Qt: Implement logging settings and signals
2017-08-01 01:36:08 +02:00
spycrab
5b733b8710
Qt: Add log menubar options
2017-08-01 01:36:08 +02:00
Léo Lam
4129aa2438
Config: Reload game INI on title change
...
Enables any code that uses OnionConfig to use the correct config for
the current title, not just the first title that was booted.
2017-07-31 22:44:32 +08:00
Leo Lam
131c97e87c
Merge pull request #5853 from leoetlino/onionconfig-fix
...
Config: Fix the loader Load() being called twice
2017-07-31 22:43:32 +08:00
Léo Lam
f5fd183571
Config: Fix the loader Load() being called twice
...
The Config::AddLoadLayer functions call Load on the layer
explicitly, but Load is already called in the constructor,
so they'd cause the loader's Load function to be called twice,
which is potentially expensive considering we have to read an INI
from the host filesystem.
This commit removes the Config::AddLoadLayer functions because
they don't appear to be necessary.
2017-07-31 22:32:05 +08:00
Stenzek
852e30bb8c
Ubershaders: Fix 6-bit color truncation not being applied
2017-08-01 00:01:09 +10:00
Stenzek
d62dcd397d
VideoConfig: Drop force vertex/pixel ubershader settings
...
This was mainly included for debugging, but could end up being confusing
for users, as well as polluting the GL program cache with a mix of uber
and specialized shaders if the option was changed.
2017-07-31 23:21:38 +10:00
Léo Lam
23ae756192
WX: Automatically pause the core for the JIT menu items
...
Removes the need to manually pause the core, select the menu item and
then unpause.
2017-07-31 17:31:26 +08:00
Léo Lam
f777c01c5d
WX/Debugger: Clean up event handling
...
Boot to Pause and Automatic Start are not JIT or CPU menu items,
so they are supposed to be handled by OnCPUMode.
2017-07-31 17:31:26 +08:00
Léo Lam
603762ec4d
Config: Fix returned game INI filenames for title IDs
...
Using the first letter or the 3 letters of the ID only makes sense
if the ID is an actual game ID (which has 6 characters).
2017-07-31 17:00:44 +08:00
Leo Lam
ed331918f0
Merge pull request #5851 from leoetlino/sysconf-fix
...
SysConf: Fix writing a new SYSCONF
2017-07-31 16:45:06 +08:00
Leo Lam
279c80b414
Merge pull request #5852 from leoetlino/wiimotes
...
Core: Reset s_wants_determinism on shutdown
2017-07-31 16:44:05 +08:00
Leo Lam
c11172497f
Merge pull request #5840 from leoetlino/wx-focus-fix
...
WX: Fix 'renderer has focus' returning false after start
2017-07-31 16:43:53 +08:00
Leo Lam
ca49de80c5
Merge pull request #5826 from JonnyH/WIP/add-option-to-prefer-GLES-when-using-EGL
...
Add "PreferGLES" option to EGL GLInterface
2017-07-31 16:43:38 +08:00
Léo Lam
311cfe9223
Core: Reset s_wants_determinism on shutdown
...
Without doing this, Core::WantsDeterminism() will keep returning true
and some GUI options may be disabled for no reason.
2017-07-31 15:38:39 +08:00
Léo Lam
b5e7c417ff
SysConf: Fix writing a new SYSCONF
...
On Windows, File::GetTempFilenameForAtomicWrite returns a path
somewhere in C:\Users\XXX\AppData\Local\Temp\{UUID here}\
in which all writes just fail.
Just use the SYSCONF path + ".tmp" for the temporary file name.
2017-07-31 15:18:43 +08:00
Lioncash
f6c21e002b
General: Remove unnecessary semicolons
2017-07-30 16:39:53 -04:00
Lioncash
b3c1bff34b
SysConf: Add explicit to single-argument constructor
...
Prevents implicit construction from FromWhichRoot values.
2017-07-30 15:35:16 -04:00
Léo Lam
072991fa31
Force ticket to have a correct key index for importing
...
This commit changes the import code to ensure the common key index
in the ticket is correct, as it's checked by IOS.
2017-07-31 00:50:19 +08:00
Léo Lam
a1f75f3370
Analytics: Report a few more video settings
...
* per-pixel lighting
* usershader mode
* fast depth
* vertex rounding
2017-07-30 21:50:33 +08:00
Tom Boshoven
fa683adaf5
SDHC documentation and cleanups.
...
Added some more comments.
Cleanups based on PR feedback.
Comment was unclear.
2017-07-30 13:06:38 +02:00
Léo Lam
f0aa454662
WX: Fix 'renderer has focus' returning false after start
...
The main window was already active, so the activate event was never
emitted, and m_renderer_has_focus was never changed.
2017-07-30 17:48:54 +08:00
Stenzek
b154edb4fb
VideoCommon: Move WM_USER_CREATE message to after backend initialization
...
Fixes the mouse cursor being left visible after ubershader
precompilation when the hide option is checked.
2017-07-30 17:43:59 +10:00
Stenzek
d54ca2a16a
PixelShaderGen: Don't include host early z support in UID
...
Disable it at shader generation time instead. This way the UIDs are
sharable.
2017-07-30 17:43:59 +10:00
Stenzek
e968c191ff
Ubershaders: Support per-pixel lighting
2017-07-30 17:43:59 +10:00
Stenzek
c8f31656cb
VideoBackends: Support a different number of threads for precompiling
...
At runtime, we only really want a single shader compiler thread.
However, for initial boots, we can use a higher number to speed things
up.
2017-07-30 17:43:59 +10:00
Stenzek
e17efb1d8d
ShaderGen: Use consistent variable names for texture coordinates
2017-07-30 17:43:59 +10:00
Stenzek
25338c53e0
NativeVertexFormat: Drop unused virtual method SetupVertexPointers
2017-07-30 17:43:59 +10:00
Stenzek
33f6668544
Vulkan: Multithreaded creation of UID pipeline caches
...
Should give a decent speedup to boot time.
2017-07-30 17:43:59 +10:00
Stenzek
81b4ed2a81
Vulkan: Uber shader support
2017-07-30 17:43:59 +10:00
Stenzek
4bf5625895
D3D: Uber shader support
2017-07-30 17:43:59 +10:00
Stenzek
cd502990fa
OGL: Uber shader support
2017-07-30 17:43:59 +10:00
Stenzek
901bf9c257
VideoConfig: Add config options for ubershaders
2017-07-30 17:43:59 +10:00
Stenzek
745d541527
ShaderGen: Implement vertex ubershaders
2017-07-30 17:43:59 +10:00
Stenzek
7d78cf0f6f
ShaderGen: Implement pixel ubershaders
2017-07-30 17:43:59 +10:00
Stenzek
07591e7d5c
PixelShaderGen: Move header generation to seperate function
2017-07-30 17:43:59 +10:00
Stenzek
c783cd2aaf
GeometryShaderGen: Add UID enumeration functions
2017-07-30 17:43:59 +10:00
Stenzek
38c48ff72e
VertexLoaderManager: Add methods to generate "uber" vertex formats
...
These vertex formats enable all attributes. Inactive attributes are set
to offset=0, and the smallest type possible. This "optimization" stops
the NV compiler from generating variants of vertex shaders.
2017-07-30 17:43:59 +10:00
Stenzek
f48ef65bec
XFMemory: Convert several registers to bitfields
2017-07-30 17:43:59 +10:00
Scott Mansell
479abde9f4
BPMemory: Convert a number of unions to BitFields
2017-07-30 17:43:59 +10:00
Stenzek
0a9574eaa1
VideoCommon: Add AsyncShaderCompiler class implementation
2017-07-30 17:43:59 +10:00
Anthony
5bad2ee4a4
Merge pull request #5832 from stenzek/ubershader-prereq
...
Ubershader prerequisites
2017-07-30 00:42:36 -07:00
Stenzek
357c55442f
Vulkan: Clear decoding texture before usage
...
Fixes a validation layer warning.
2017-07-30 12:38:50 +10:00
Stenzek
447aeb8f77
EGLInterface: Create shared context with same attributes as main context
2017-07-30 12:38:50 +10:00
Stenzek
aff44684a4
Vulkan: Move shader/pipeline-related methods to ShaderCache
2017-07-30 12:38:49 +10:00
Stenzek
d23fd17e1a
Vulkan: Use VK_NV_glsl extension where available, and skip glslang
...
Seems to produce faster ubershaders, at least.
2017-07-30 12:38:49 +10:00
Stenzek
416afa065c
BitField: Add StartBit() and NumBits() accessors
2017-07-30 12:38:49 +10:00
Stenzek
3e508fc0a2
GLInterface: Support shared contexts on AGL
2017-07-30 12:38:49 +10:00
Ryan Houdek
01ae02482c
GLInterface: Support shared contexts in GLX
2017-07-30 12:38:49 +10:00
Stenzek
621287e7eb
VideoCommon: Improve precision of FPS counter
2017-07-30 12:38:48 +10:00
Stenzek
1fccbd5be3
DolphinWX: Add a progress dialog host command
...
Allows feedback from backends to be communicated to the user when
long-running operation are performed (e.g. shader compilation).
2017-07-30 12:38:48 +10:00
Tom Boshoven
4cbb66637b
Add support for SDHC.
...
This add support for SD protocol 2 while staying compatible with protocol 1.01.
Most of this is quite hacky, but it seems to be working well.
The original implementation was quite confusing, so I didn't touch most of the stuff I did not understand.
2017-07-29 21:24:01 +02:00
spycrab
b3e93c5273
Qt: Overhaul menubar
2017-07-29 21:19:05 +02:00
Léo Lam
5a90a26080
IOS: Fix the error code for ES_DEVICE_ID_MISMATCH
2017-07-30 00:24:47 +08:00
ligfx
2f932273bb
LogManager: remove stand-alone semicolon
...
My bad!
2017-07-27 21:15:05 -07:00
Anthony
97ea97564f
Merge pull request #5833 from leoetlino/unused
...
Qt/Config: Remove unused members
2017-07-27 12:00:33 -07:00
Anthony
6fe33f844f
Merge pull request #5770 from ligfx/lognewconfig
...
LogManager: use layered config
2017-07-27 11:58:57 -07:00
Léo Lam
27924a1e2e
Qt/Config: Remove unused members
2017-07-27 17:26:28 +08:00
Leo Lam
7a51b0bcec
Merge pull request #5807 from leoetlino/connect-wiimote
...
Move the Wiimote connect code out of Host
2017-07-27 15:02:28 +08:00
Leo Lam
5c29ea54c5
Merge pull request #5817 from JosJuice/qt-strings-match-wx
...
Make DolphinQt2 strings more like DolphinWX strings
2017-07-27 15:01:56 +08:00
Leo Lam
b140a6eb04
Merge pull request #5830 from lioncash/prototypes
...
DolphinQt2: Remove unimplemented prototypes
2017-07-27 15:01:29 +08:00
Leo Lam
bf7c0c8024
Merge pull request #5831 from lioncash/include
...
DolphinQt2: Add missing include guards
2017-07-27 15:00:52 +08:00
Stenzek
a11bde7d16
Merge pull request #5679 from stenzek/no-host-state-in-uids
...
ShaderGen: Decouple host state from shader UIDs
2017-07-27 13:30:38 +10:00
Jonathan Hamilton
0fbd0cab6a
Add "PreferGLES" option to EGL GLInterface
...
This makes the EGL interface select OpenGL|ES contexts over "desktop"
OpenGL ones.
Possibly not useful for anyone outside my own debugging, but you never
know
2017-07-26 19:26:36 -07:00
Lioncash
fb42c3eddc
DolphinQt2: Add missing include guards
2017-07-26 16:31:58 -04:00
Lioncash
80b938b403
DolphinQt2: Remove unimplemented prototypes
...
Also removes an unnecessary includes in related files
2017-07-26 16:26:55 -04:00
Michael M
0437f4c486
IOWindow: use BlockUserInputFilter
2017-07-26 10:30:02 -07:00
Michael M
c624ef43f0
MappingButton: use BlockUserInputFilter
2017-07-26 10:30:02 -07:00
Michael M
7d438da911
QtUtils: Add BlockUserInputFilter
2017-07-26 10:30:01 -07:00
JosJuice
de6bd80f9c
DolphinQt2: Add i18n comments for Table/List
...
To avoid confusion with the verb "list" and the kind of table
that's a type of furniture.
2017-07-26 08:04:10 +02:00
JosJuice
b32fe5e41d
DolphinQt2: Remove the %1 from "%1 Banner Details"
...
It's not particularily useful to list the platform here,
and these kinds of messages that use words as parameters
are more likely to be mistranslated than the average string.
2017-07-26 08:04:10 +02:00
JosJuice
960525859b
Make DolphinWX strings more like DolphinQt2 strings
...
Same as the previous commit, except I'm copying strings
in the other direction because the DolphinWX variants
of these strings could use some improvement.
2017-07-26 08:04:10 +02:00
JosJuice
ce11b34e74
Make DolphinQt2 strings more like DolphinWX strings
...
Without this, we would be pushing a lot of extra strings onto
translators now that 55fb6ef
is merged.
2017-07-26 08:04:10 +02:00
JosJuice
fb80c5398a
DolphinWX: Use title case for hotkey group names
2017-07-26 08:00:17 +02:00
JosJuice
d7d88aeb7d
DolphinWX: Mark AF choices as translatable
...
For consistency with DolphinQt2.
2017-07-26 08:00:17 +02:00
JosJuice
8deba867e8
DolphinQt2: Remove ellipses from settings menu options
...
The action that these menu options perform is to open a
settings window, and that action is completed instantly,
so we shouldn't have ellipses.
2017-07-26 08:00:17 +02:00
Leo Lam
10db1bcbca
Merge pull request #5828 from ligfx/qtqueueonobject
...
Qt: add QueueOnObject
2017-07-26 12:56:08 +08:00
Leo Lam
be8324380d
Merge pull request #5786 from grimpunch/qt_viewoptions
...
Qt: Implement Show Platforms / Show Regions
2017-07-26 12:02:14 +08:00
Michael M
2c03cfacc2
Qt WiiUpdate: use QueueOnObject instead of Core::QueueHostJob
2017-07-25 17:44:07 -07:00
Michael M
734c9e1459
QtUtils: add QueueOnObject
2017-07-25 17:44:07 -07:00
Jonathan Hamilton
184e4d7b4a
Fix an incorrect OES suffix on glMultiDrawElementsBaseVertex
...
The spec says it should have an EXT not OES suffix, as it's enabled as
an interaction with GL_EXT_multi_draw_arrays.
On some drivers GetProcAddress() returns NULL, which causes the
GLExtensions init to fail
This 'happened' to work if GetProcAddress() doesn't return NULL on missing
functions (as allowed in EGL) - as the function appears to never be called so
this would not have been noticed.
Mesa also (incorrectly?) exports the EXT version, so this would all
happen to work there, but appears to be contrary to the spec.
This invalid prefix even ended up in the upstream khronos registry, the
issue was reported here:
https://github.com/KhronosGroup/OpenGL-Registry/issues/81
2017-07-25 12:52:39 -07:00
JosJuice
8292d378ea
Merge pull request #5824 from lioncash/include-guard
...
ListProxyModel: Add missing include guard
2017-07-25 08:23:49 +02:00
Mat M
63f1f122fa
Merge pull request #5729 from ligfx/qtremoveoldsyntax
...
DolphinQt2: update old SLOT/SIGNAL syntax
2017-07-24 18:48:20 -05:00
Lioncash
7373474888
ListProxyModel: Add missing include guard
2017-07-24 19:46:25 -04:00
Christian Murphy
df35a26628
Qt: Implement Show Platforms / Show Regions
...
Porting the View config logic from WX to Qt.
Adds to the View Menu
2017-07-24 14:36:09 +01:00
Leo Lam
c27dd9dc20
Merge pull request #5785 from leoetlino/sysconf-fix
...
SysConf: Minor fixes
2017-07-24 14:03:33 +08:00
Leo Lam
a23a38da23
Merge pull request #5821 from JosJuice/qt-builtin-database-placement
...
DolphinQt2: Change the placement of "Use Built-In Database of Game Names"
2017-07-24 11:06:20 +08:00
Michael Maltese
aafb61c187
DolphinQt2: Remove 'slots:' syntax from headers
...
With Qt5's new connection syntax, method pointers and functors are
connected directly. There's no need to declare slots.
2017-07-23 15:07:49 -07:00
Michael Maltese
f0fd38698e
DolphinQt2: use new connection syntax instead of old syntax
2017-07-23 15:07:49 -07:00
Michael Maltese
a365686956
GameList: fix Decompress slot typo
...
There is no such `DecompressISO` slot.
2017-07-23 15:07:49 -07:00
Leo Lam
7c70e77c74
Merge pull request #5818 from JosJuice/qt-localization-fixes
...
DolphinQt2: Fix localization issues
2017-07-23 22:04:17 +08:00
Leo Lam
96a8fb720d
Merge pull request #5819 from JosJuice/qt-analytics-message
...
DolphinQt2: Reword the analytics message
2017-07-23 22:02:02 +08:00
JosJuice
bb3bbb2887
DolphinQt2: Fix saving "Use Built-In Database of Game Names"
...
This one is my fault too
2017-07-23 15:29:43 +02:00
JosJuice
22fbd65d47
DolphinQt2: Change the placement of "Use Built-In Database of Game Names"
...
When I added this setting, I didn't notice that the interface
pane in DolphinQt2 was split into two different sections.
2017-07-23 15:28:34 +02:00
JosJuice
34cacd4944
DolphinQt2: Reword the analytics message
...
"this" made sense when "Do you authorize..." was on the bottom,
but it doesn't make sense when it's at the top.
Also removing unnecessary newlines.
2017-07-23 15:18:12 +02:00
JosJuice
20172196f5
DolphinQt2: Let game properties show names for WADs
2017-07-23 15:11:18 +02:00
JosJuice
5938c58f99
DolphinQt2: Fix localization issues
2017-07-23 10:50:20 +02:00
Léo Lam
02f32a9b26
Handle BT.DINF properly
...
The section is 0x461 bytes long, not 0x460. The config data is also now
initialised to zero to avoid garbage being written to the SYSCONF.
Because our handling has been wrong forever, we discard older BT.DINF
section backups as using them would result in the section being the
wrong size / incomplete again.
2017-07-23 15:58:04 +08:00
Léo Lam
c759739ee9
SysConf: Handle array entries properly
...
It turns out that the last byte of array entries isn't unused (as we
thought); instead, it looks like it's actually part of the main data,
and the length stored next to the name is in fact the length minus one.
Getting it wrong and always storing a null byte in there won't affect
most entries (since the last byte is zeroed most of the time), except:
- IPL.NIK: the length is stored in the last byte, and it must be kept.
- BT.DINF: u8 unknown[0x45] should be another Bluetooth device entry.
- Possibly other unknown affected entries.
2017-07-23 15:57:29 +08:00
Léo Lam
1c33dfc787
Wiimote: Remove useless disconnections
...
ChangeWiimoteSource does not need to disconnect a Wiimote if it isn't
connected.
2017-07-23 15:52:15 +08:00
Léo Lam
ee868e2362
Move the Wiimote connect code out of Host
...
I don't know who thought it would be a good idea to put the Wiimote
connect code as part of the Host interface, and have that called
from both the UI code and the core. And then hack around it by having
"force connect" events whenever Host_ConnectWiimote is called
from the core...
2017-07-23 15:47:32 +08:00
Léo Lam
9357fa3514
Qt/AboutDialog: Fix the copyright string
2017-07-23 14:58:01 +08:00
Leo Lam
673210afea
Merge pull request #5814 from ligfx/macremovecfbundlelocalizations
...
Remove CFBundleLocalizations from Info.plist
2017-07-23 14:48:38 +08:00
Leo Lam
2c35983126
Merge pull request #5787 from ligfx/wxsortfallbacktotitle
...
Wx: make GameListCtrl fallback to sorting by title
2017-07-23 14:47:31 +08:00
Leo Lam
81abecbf46
Merge pull request #5739 from leoetlino/correct-key
...
IOS/ES: Use the correct import/export key (fix DLC)
2017-07-23 14:47:10 +08:00
Leo Lam
3cbf56a9ad
Merge pull request #5797 from ligfx/qtoptionsmenu
...
Qt: implement remainder of 'Options' menu
2017-07-23 14:46:48 +08:00
Leo Lam
55fb6efea3
Merge pull request #5812 from ligfx/gettexttizeqt
...
gettextize: extract arguments to Qt's `tr`
2017-07-23 14:35:44 +08:00