Commit Graph

17774 Commits

Author SHA1 Message Date
Jeffrey Pfau d6517a761c VideoCommon: Simplify indirect texture lookup code slightly 2016-04-23 22:55:52 -07:00
Jeffrey Pfau aa736bf258 Revert "VideoBackend: Remove extraneous shifts from indirect texture lookups"
This reverts commit 1f1b127b69.
2016-04-23 22:55:42 -07:00
mimimi085181 fcd5170cff XInput: Apply Rumble/Motor output only on changes (again)
Disclaimer: I can't test if this works on xbox one controllers, i don't have one. But i have conformed that this UpdateMotors() is related to rumble for emulated wiimotes.

This partially reverts commit "XInput: Apply immediately as well" (1958a10b6f) from pr # https://github.com/dolphin-emu/dolphin/pull/1560

Hopefully this fixes the xbox one controller rumble issue:
https://bugs.dolphin-emu.org/issues/9071

And in theory it might reduce the used usb bandwidth, as it was originally intended before pr 1560.

@JMC47: Please do a good amount of testing, to see if this breaks rumble for wiimotes or gamecube controllers emulated with xinput devices.
2016-04-23 13:45:10 +02:00
Mathew Maidment bdb9da2104 Merge pull request #3687 from rukai/fixMakerColumn
DolphinWX: Disable 'maker' column hiding
2016-04-21 09:15:10 -04:00
EmptyChaos 49babfb60b CFrame: Fix Confirm Close
Closing Dolphin's main frame and clicking "no" does not clear
m_bClosing which means that pressing the "stop" button triggers
OnClosed which suddenly and unexpectedly closes the main frame.
2016-04-19 15:47:51 +10:00
Rukai 4cd918caf1 DolphinWX: Disable 'maker' column hiding
This was done because showing a column was broken:
Showing a column repopulates the column with no regard for the sorted
order. This results in a seemingly random order.
(actually the order of m_ISO_FILES)
2016-04-17 10:19:25 +10:00
EmptyChaos 32239f500c VideoInterface: Fix registers not being initialized
VideoInterface::Preset was not initializing all registers, this is a problem
because it leaks register settings across games. Xenoblade Chronicles does
not like m_DisplayControlRegister having random bit patterns in it.
2016-04-17 09:35:22 +10:00
Lioncash 4ae4b241ec ChunkFile: Handle bool in a stable way across platforms
bool is not always guaranteed to be the same size on every platform.
On some platforms it may be one byte, on others it can be 8 bytes if the
platform dictates it. It's implementation-defined.

This can be problematic when it comes to storing this
data to disk (it can also be space-inefficient, but that's not really an
issue). Also say for some reason you moved your savestates to another
platform, it's possible they won't load correctly due to differences in size.

This change stores all bools to savestates as if they were a byte in size
and handles the loading of them accordingly.
2016-04-14 22:55:03 -04:00
Pierre Bourdon 4d864ece27 Merge pull request #3759 from JosJuice/dvd-callback-savestates
DVDInterface/DVDThread: Don't store CoreTiming event IDs in savestates
2016-04-14 17:55:52 +02:00
Chris Burgener 02bfc62d1c Fix Windows build not copying certain files 2016-04-12 19:05:17 -04:00
Chris Burgener ab4c3314e7 Only copy relevant files for Windows builds
Fixes issue 9455: https://bugs.dolphin-emu.org/issues/9455
2016-04-12 12:20:23 -04:00
JosJuice be191c0473 DVDInterface/DVDThread: Don't store CoreTiming event IDs in savestates
CoreTiming event types aren't guaranteed to be stable across
runs of Dolphin, so they shouldn't be in savestates.
2016-04-11 22:14:25 +02:00
Pierre Bourdon 2063fc671a Merge pull request #3748 from mimimi085181/partial-updates-paletted-textures
Partial updates for paletted textures
2016-04-11 21:47:24 +02:00
Pierre Bourdon 58d8c734b8 Merge pull request #3773 from phire/if_you_want_100_cycles_ask_for_100_cycles
"Instant" ARAM DMA shouldn't schedule and event too soon.
2016-04-11 21:46:43 +02:00
Pierre Bourdon 61ea5328f7 Merge pull request #3774 from phire/Fix_Metroid_Other_M
Fix Metroid: Other M
2016-04-11 21:43:20 +02:00
degasus ef01f234df PixelShaderGen: Fixes implicit type conversion or PR #3772.
This regression did only happen on OpenGL ES.
2016-04-10 12:49:32 +02:00
Pierre Bourdon c4af588945 Merge pull request #3772 from degasus/shader_opt
PixelShaderGen: Move constant multiplication to constant generation.
2016-04-10 01:20:34 +02:00
mimimi085181 9f625417c0 Partial updates for paletted textures
This pr fixes another regression that happened after pr #3165 was merged. The shadows in mario baseball should now work again.
2016-04-09 18:22:36 +02:00
Pierre Bourdon e98fb0af84 Merge pull request #3752 from mimimi085181/remove-use-only-once-restriction-partial-updates
Remove the restriction to use efb copies only once as partial update
2016-04-09 18:10:20 +02:00
Scott Mansell 5e50c37c13 Alternative fix: promote cycleslate to an s64 everywhere.
Also changed a few functions to be static.
2016-04-10 02:13:06 +12:00
Scott Mansell 28e0607522 Fix Metroid: Other M
During boot of Other M, there is momentarily a period when VICallback's
cycles late is larger than GetTicksPerHalfLine(). Because
GetTicksPerHalfLine() returns a u32 and c++'s weird type promotion rules,
cycleslate gets promoted from a s32 to a u32 and the result of the
substraction is a really large u32.

Before ScheduleEvent accuracy improvements, ScheduleEvent took a s32, so
the result got cast back to the small negitave we expect. But it now takes
a s64 and the u32 to s64 conversion gives us a really large number (around
two seconds) and Other M times out while waiting for something.
2016-04-10 00:10:56 +12:00
Scott Mansell 662ed217d7 "Instant" ARAM DMA shouldn't schedule and event too soon.
Now that the accuracy of ScheduleEvent has changed, 0 cycles will
schedule an event as soon as possible. But this breaks ATV 2.

So we schedule it 100 cycles out (unless it's a really short copy)
2016-04-09 22:34:53 +12:00
degasus 10e4f7e7bf PixelShaderGen: Move constant multiplication to constant generation.
No need to do this within the shader per pixel if it can be done once.
2016-04-09 12:25:00 +02:00
EmptyChaos 80ff82b81a DSP: Fix integer promotion spill 2016-04-08 12:08:17 +10:00
Scott Mansell 365baeccb4 Only force progressive if we are currently in an interlaced video mode
The NES games on the Zelda Collecters Edition disk use a XFB which is
only 256 pixels wide, but has a stide of 640 pixels.

This fits our definition of a interlaced xfb, as a second line of data
could fit in the extra space. The solution is to check that we are
actually in a interlaced video mode before activating the force
progressive hack.
2016-04-06 05:12:53 +12:00
Chris Burgener 3140f9b226 Change GetStatePtr() Return to const 2016-04-05 12:45:48 -04:00
Chris Burgener 54eb8c09f9 Remove Unused Framestop Functions 2016-04-05 12:19:12 -04:00
Pierre Bourdon 3f079fb2c1 Merge pull request #3762 from mimimi085181/partial-updates-efb-copy-before-texutre
Partial texture updates: Allow the efb copy to start before the texture
2016-04-04 14:53:06 +02:00
shuffle2 c63ef18fcc Merge pull request #3760 from lioncash/vs
pch: Update Visual Studio version check
2016-04-03 17:14:45 -07:00
Lioncash 8d9221a71e MathUtilTest: Fix tests on MSVC - Document compiler bug
MSVC's implementation of numeric_limits currently generates incorrect
signaling NaNs. The resulting values are actually quiet NaNs instead.

This commit is based off of a solution by shuffle2. The only
difference is a template specialization for floats is also added
to cover all bases
2016-04-03 19:16:47 -04:00
Mathew Maidment 23f6c64525 Merge pull request #3733 from EmptyChaos/wx-playbtn-fix
WXGUI: Fix disabled play button not fading
2016-04-03 11:26:14 -04:00
mimimi085181 befb2e4809 Partial texture updates: Allow the efb copy to start before the texture
This is an oversight from pr https://github.com/dolphin-emu/dolphin/pull/3266 . Thanks to degasus for pointing this out.

It's possible that MAX_TEXTURE_BINARY_SIZE can be optimised, but i wanted to play it safe considering the 5.0 stable release.
2016-04-02 20:34:49 +02:00
sigmabeta 57eea4f330 Fix android builds permanently. 2016-04-02 10:14:40 -04:00
degasus 6cd7740f4b Android: Update gradle version 2016-04-02 13:56:30 +02:00
Pierre Bourdon 418b8c03d5 Merge pull request #3763 from JosJuice/boot-clear-memory
Always clear memory when booting
2016-04-02 12:59:24 +02:00
JosJuice 2db2672810 Always clear memory when booting
Reading uninitalized memory is non-deterministic. We used to only
clear the memory when using EmulatedBS2_GC or FifoPlayer, but we
now do it during Memory::Init instead so it always gets done.
2016-04-01 21:35:26 +02:00
Pierre Bourdon 77c05737e9 Merge pull request #3757 from stenzek/amd-glsl-storage-qualifier
ShaderGen: Handle AMD bug with storage qualifiers in interface blocks
2016-04-01 10:05:50 +02:00
Lioncash b3c77fd96a VertexLoaderTest: Amend code to fix new warnings in Visual Studio
Fixes warning C4334
2016-03-30 21:00:08 -04:00
Lioncash 33c22ffab7 D3D: Amend code to fix a new VS warning
Fixes warning C4334
2016-03-30 20:59:57 -04:00
Lioncash d2c4ce8696 pch: Update Visual Studio version check 2016-03-30 20:31:59 -04:00
Pierre Bourdon 486d3a7114 Merge pull request #3656 from phire/windows-10-sdk-update
Updated D3D12 to build on the newer windows 10 sdk.
2016-03-30 18:37:53 +02:00
Stenzek e6b2212ec0 ShaderGen: Only specify storage qualifier in interface block when needed
Drivers that don't support GL_ARB_shading_language_420pack require that
the storage qualifier be specified even when inside an interface block.

AMD's driver throws a compile error when "centroid in/out" is used within
an interface block.

Our previous behavior was to include the storage qualifier regardless, but
this wasn't working on AMD, therefore we should check for the presence of
the extension and include based on this, instead.
2016-03-30 00:42:50 +10:00
Pierre Bourdon 2d1c0e4092 Merge pull request #3722 from Sonicadvance1/upgrade_to_new_MaJoR1
Update to MaJoR1's latest on screen buttons
2016-03-27 22:43:22 +02:00
mimimi085181 2dd9e6bfe2 Remove the restriction to apply efb copies only once as partial update
I'm not entirely sure what is happening, but this optimisation is causing an issue in Sonic Riders: Zero Gravity. Apparently the issue would also be fixed by PR#3747, but this PR should also fix similar issues.

Games that use partial updates might get slower with this, so some performance regression testing would be nice. Games like New Super Mario Bros, RS2, Zelda TP and Silent Hill. Testing with high graphics settings makes sense, since this would mostly end up in more work for the GPU.
2016-03-27 04:13:20 +02:00
Scott Mansell fbcac2598a Use a sane default for the controller update rate.
Previously the default queryed the controller 4500 times a second,
Wasn't really a problem for most games as they set it to a sane
value. But fifoplayer didn't, and so in my profile dolphin spends
12% of the cpu time reading the controllers.

This new default value (I just took what the gamecube bios set)
drops that to 1.2% of cpu time and increase the framerate of the
silent hill fifo by 10-12%
2016-03-27 09:02:52 +13:00
Scott Mansell c036cf7a5f Updated D3D12 to build on the newer windows 10 sdk. 2016-03-26 18:11:49 +13:00
Pierre Bourdon bd200bd195 Merge pull request #3736 from BhaaLseN/issue-9135
Rewrite NAND Content handling in ES to fix Issue 9135
2016-03-26 05:00:08 +01:00
Pierre Bourdon 2fd0884347 Merge pull request #3672 from EmptyChaos/d3d-anisotropy
Fix D3D Forced Anisotropy
2016-03-26 03:25:01 +01:00
Pierre Bourdon ae4cb12033 Merge pull request #3719 from Sonicadvance1/workaround_osx_video_drivers
Workaround OS X video driver bug #24983074
2016-03-26 01:43:32 +01:00
Pierre Bourdon 21eb1cd158 Merge pull request #3635 from phire/lazy_comex
Implement BLR Overflow handling for Windows.
2016-03-26 01:42:54 +01:00
Pierre Bourdon 8f74f1f4e9 Merge pull request #3601 from phire/AccurateEventScheduling
Adjust cycle counts so they are accurate to the JIT block level (Fixes OoT virtual console and other games)
2016-03-25 17:02:30 +01:00
Scott Mansell 066b6b0bcb OpenGL: Cache query to max texture size.
This showed up really high when I was profiling things.
2016-03-26 03:14:39 +13:00
Stenzek 53cf42fb06 D3D11: Fix some cases where render target switches desynced StateManager
This was occuring in certain EFB copy patterns, leaving the textures
unbound for the next draw call.
2016-03-26 00:01:26 +10:00
Stenzek 63e4e07683 D3D11: Simplify MSAA depth texture resolving
This also fixes EFB depth buffer copies when MSAA is enabled.
2016-03-26 00:00:39 +10:00
EmptyChaos 0b9a72a62d VideoCommon: Refactor TexMode0 mipmaps disabled test into a helper function 2016-03-24 13:43:29 +11:00
EmptyChaos 902e5cddf7 VideoBackends: Do not use Anisotropy on Point filtered textures.
The D3D backend was always forcing Anisotropic filtering when that is enabled regardless of how the game chose to configure the texture filtering registers; this causes the same issues as "Force Filtering" without Anisotropy, such as causing game UI elements to no longer line up adjacent correctly. Historically, OpenGL's Anisotropy support has always worked "better" than D3D's due to seeming to not have this problem; unfortunately, OpenGL's Anisotropy specification only gives GL_LINEAR based filtering modes defined behavior, with only the mipmap setting being required to be considered. Some OpenGL implementations were implicitly disabling Anisotropy when the min/mag filters were set to GL_NEAREST, but this behavior is not required by the spec so cannot be relied on.
2016-03-24 13:43:29 +11:00
Scott Mansell d61baef2f6 Disable JitArm64's inline timebase implemenation, as it's incorrect.
The interpeted version is correct.
2016-03-24 05:17:10 +13:00
Scott Mansell 27beef1ff4 Store an inverted copy of lastOCfactor.
The inverse operation is more common, especially when games check the
timer rapidly. So we do the division once and store the inverted copy.
2016-03-24 05:17:10 +13:00
Scott Mansell 407f86e01a Mark global variables with g_ prefix 2016-03-24 04:32:12 +13:00
Scott Mansell 67dc26cf1d CoreTiming: Fix 31bit overflow for events scheduling.
Events scheduled more than 4.12 seconds in the future (2.96 seconds for
Wii games) would overflow the sign bit and get scheduled in the past
instead, causing them to fire instantly.
2016-03-24 04:27:14 +13:00
Scott Mansell 2ebbfd6f85 Adjust cycle counts so they are accurate to the jit block level
Previously GlobalTimer was only updated at the end of each slice
when CoreTiming::Advance() was called, so it could be upto 20,000
cycles off.

This was causing huge problems with games which made heavy use of
the time base register, such as OoT (virtual console) and Pokemon
puzzle.

I've also made it so event scheduling will be accurate to the jit
block level, instead of accurate to the slice.
2016-03-24 04:24:53 +13:00
Scott Mansell 51dc779b7c Implement Dithering for video software 2016-03-23 12:29:35 +13:00
BhaaL 0aeac66222 clear the NAND data cache on ES_LAUNCH to avoid leaving files open
also, clear it on Device_ES::Close, just to make sure nothing remains open.
2016-03-20 13:50:19 +01:00
BhaaL a449ef4e11 properly open/close the file to avoid rapid open/close cycles
ES_OPENCONTENT and ES_CLOSECONTENT now call Open and Close respectively,
as the old code did.
2016-03-20 13:10:51 +01:00
BhaaL 8a6d9e1e0b hide the distinction between WAD and File from ES
instead, leave all the management with the NANDContentLoader.

for file data (directly on the NAND), this opens the file on-demand and
returns the requested chunk when asked for it.
for on-the-fly decrypted WAD data, we just keep the decoded buffer in
memory, like we've done before - except that we don't give away any objects
we don't want to.
2016-03-20 13:10:50 +01:00
BhaaL 8fd2f05741 remove all accesses to m_pContent
this fixes the crashes, but leaves the "else" part of ES_READCONTENT
temporarily broken until the next commit.

WAD access that are performed on the encrypted WAD will most likely fail
with this commit.
2016-03-20 13:10:49 +01:00
BhaaL 598c3dbe2f get rid of the cached pointer inside ES
only fixes half the issues, since we still cache a pointer from
SContentAccess.m_pContent to SNANDContent.m_data (which is free'd along
with the rest of the NAND data cached inside the CNANDContentManager when
ClearCache is called)
2016-03-20 13:10:48 +01:00
BhaaL 1e28d06f26 fix some style inconsistencies that drove me nuts 2016-03-20 13:10:47 +01:00
Rukai cc6a7826c0 Implements Emulation MenuBar
Save states, fullscreen, frame advance, screenshot and emulation
controls are available through the MenuBar
2016-03-20 11:44:35 +11:00
Scott Mansell c5b3a2efac Implement BLR Overflow handling for Windows. 2016-03-20 00:41:28 +13:00
Pierre Bourdon 647fec92a0 Merge pull request #3266 from mimimi085181/partial-updates-with-parts-of-efb-copies
Partial texture updates with parts of efb copies
2016-03-18 01:11:59 +01:00
Pierre Bourdon 421a67d7cc Merge pull request #3684 from Sonicadvance1/fix_vertexshadergen_asserts
Fix a few asserts in the VertexShaderGen.
2016-03-17 23:33:53 +01:00
mimimi085181 e4f984d5dd Minor fixes to the partial updates code
- remove an outdated comment about the efb to ram and scaled efb restriction
- when upscaling efb copies, mark the new texture as efb copy
- dx12 fixes for the src box, especially the number of layers for 3D
2016-03-16 22:24:11 +01:00
mimimi085181 80250f47e9 Partial texture updates with parts of efb copies new version 2016-03-16 22:24:10 +01:00
Ryan Houdek a53c0f6995 Merge pull request #3717 from degasus/videosw
VideoSW: Drop stupid state setters.
2016-03-14 09:36:12 -04:00
Ryan Houdek 95e7c247df Merge pull request #3700 from degasus/custom_textures
CustomTextures: Fix loading of the last mipmaps.
2016-03-14 09:35:40 -04:00
EmptyChaos 564341ab3d WXGUI: Fix disabled play button not being faded.
Followed from PR #3333.
2016-03-14 13:42:52 +11:00
Pierre Bourdon f0e25b8477 Merge pull request #3668 from RisingFog/wii_movie_sysconf
Apply Wii Settings on Movie Recording/Playback
2016-03-14 01:42:37 +01:00
Ryan Houdek 03071c0c5c Merge pull request #3711 from degasus/arm
JitArm64: Implement dcbx
2016-03-12 17:38:00 -05:00
Lioncash 2ce6b449d1 NonCopyable: Remove private access specifier
This isn't necessary, as the member functions are deleted.
If someone tries to perform a copy, the compiler will now
indicate that the member functions/constructors are deleted,
rather than inaccessible.
2016-03-12 16:59:45 -05:00
Lioncash 5d74e02286 NonCopyable: Specify const in copy constructor/assignment signatures 2016-03-12 16:59:45 -05:00
Ryan Houdek 38a5183eb4 Fix Android buildbot 2016-03-12 15:44:13 -06:00
Ryan Houdek 4c4eaaa1d6 Merge pull request #3570 from endrift/indtev-reduce-shifting
VideoBackend: Remove extraneous shifts from indirect texture lookups
2016-03-10 13:12:47 -05:00
Ryan Houdek 3ab7806e24 Workaround OS X video driver bug #24983074
OS X's shader compiler has a bug with interface blocks where interface block members don't properly inherit the layout qualifier from the interface
block.
Work around this limitation by explicitly stating the layout qualifier on both the interface block and every single member inside of that block.
2016-03-09 09:11:00 -06:00
Pierre Bourdon a06eaabcdc Merge pull request #3721 from lioncash/net
NetPlayServer: Get rid of some explicit deallocations
2016-03-09 15:29:44 +01:00
Mathew Maidment 1c7f5b139d Merge pull request #3623 from rukai/dolphinQtAbout
DQt2: About Dialog
2016-03-09 03:16:40 -05:00
Ryan Houdek baee7f0d15 Update to MaJoR1's latest on screen buttons 2016-03-08 20:27:03 -06:00
Lioncash 84b0a930da NetPlayServer: Get rid of some explicit deallocations 2016-03-08 19:31:36 -05:00
Pierre Bourdon 370e91d4c0 Merge pull request #3708 from ismail/miniupnpc-api-16
Fix build with MINIUPNPC_API_VERSION >= 16
2016-03-07 13:49:26 +01:00
degasus ab44d2ec5c VideoSW: Drop SetTevReg for colors. 2016-03-06 11:05:49 +01:00
degasus 7a154181b4 VideoSW: Drop SetScissor().
Just access the global state directly.
2016-03-06 10:24:28 +01:00
degasus 8b0fd623e5 VideoSW: Drop SetViewOffset.
Just use the global state.
2016-03-06 10:22:44 +01:00
Ryan Houdek 40931f5030 Merge pull request #3690 from aserna3/bikeshedding_bait
[Config UI] add "normal speed" to speed limit 100%
2016-03-05 11:55:06 -05:00
degasus 54a4d68c9a JitArm64: implement dcbx 2016-03-05 00:29:38 +01:00
Ryan Houdek 8f75594de7 Merge pull request #3694 from degasus/arm
JitArm64: Small improvements.
2016-03-04 18:01:25 -05:00
Pierre Bourdon 3b6af8c7a5 Merge pull request #3691 from rukai/netplayWiiRemoval
Netplay Wii Remote Removal
2016-03-04 23:45:07 +01:00
degasus 9bf50fb93d JitArm64: Fix mulli.
mulli has no inst.OE
2016-03-04 22:51:47 +01:00
degasus 9ed465f4ac JitArm64: Implement mulhwx 2016-03-04 22:51:46 +01:00
degasus 889a0d396d JitArm64: Align farcode entry points to 16 bytes 2016-03-04 22:49:02 +01:00
degasus eaa0e275db JitArm64: Use immediate WriteExceptionExit more often. 2016-03-04 22:49:01 +01:00
degasus 689205f0a4 JitArm64: small cleanup, no changes 2016-03-04 22:49:01 +01:00
Ryan Houdek 5b040ec67b Merge pull request #3704 from Tsunamical/arm
[Android] Remove CPUHelper Class
2016-03-04 16:47:37 -05:00
Tyler Dunn 309b0c53bf [Android] Remove CPUHelper class 2016-03-04 16:17:41 -05:00
degasus 7b017c6a65 JitArm64: Use a register as PC argument for the dispatcher. 2016-03-04 19:50:12 +01:00
degasus 050932ed23 JitArm64: Rename global registers. 2016-03-04 19:50:12 +01:00
degasus 57d76cefb0 JitArm64: Merge WriteExceptionExit. 2016-03-04 19:50:12 +01:00
degasus 55b9ce9b5b JitArm64: Store memory pointer once, not per block. 2016-03-04 19:50:12 +01:00
degasus 56c8f65bc2 JitArm64: Precheck for exceptions before calling PowerPC::CheckExceptions. 2016-03-04 19:50:12 +01:00
degasus aea48c4591 JitArm64: Drop unused WriteExceptionExit. 2016-03-04 19:50:11 +01:00
degasus c5b0dc98c2 JitArm64: Fix LWZ idle skipping. 2016-03-04 19:50:11 +01:00
Pierre Bourdon c24c278ce9 Merge pull request #3709 from Sonicadvance1/mesa_intel_geometry_shaders
Mark Mesa Intel Sandy Bridge geometry shaders not broken in Mesa 11.2
2016-03-04 18:02:26 +01:00
Ryan Houdek ff0aac82b5 Mark Mesa Intel Sandy Bridge geometry shaders not broken in Mesa 11.2 2016-03-04 10:45:13 -06:00
İsmail Dönmez 20f8b471a8 Fix build with MINIUPNPC_API_VERSION >= 16
miniupnp commit c4991916e5c12a7754e935e71a5313e75af6aeb9 introduced a
4th statusCode parameter to miniwget function. This parameter is set
to a value returned by the UPnP device. We have to check if it's set
to 200 to make sure the result is a success. Also, we now have to check
if descXML is set in the error case and free it.
2016-03-04 10:59:57 +02:00
Ryan Houdek e60f0b3cf0 Merge pull request #3551 from RisingFog/videodump_proper_delay
Properly Handle Video Dumping from Power On
2016-03-03 10:38:36 -05:00
Ryan Houdek b57cb30c41 [Android] Make sure the file extension check isn't case sensitive 2016-03-03 08:29:51 -06:00
Anthony Serna 8ba9839161 [Config UI] add "normal speed" to speed limit 100% 2016-03-02 19:51:05 -06:00
Pierre Bourdon 265c6408d6 Merge pull request #3686 from Armada651/revert-3578
Revert "Merge pull request #3578 from Armada651/forced-slow-depth"
2016-03-03 02:03:03 +01:00
Pierre Bourdon f752c6e704 Merge pull request #3589 from mathieui/gcadapter-recording
Fix recording a movie with the GC Adapter
2016-03-03 02:02:29 +01:00
degasus 1544e4049d CustomTextures: Fix loading of the last mipmaps.
Non-square textures still have mipmaps down to 1x1.
2016-03-02 23:25:04 +01:00
Mathew Maidment a64dd3659a Merge pull request #3634 from spxtr/DQt22
Stop parenting RenderWidget.
2016-03-02 16:51:37 -05:00
Mathew Maidment c2802f96a6 Merge pull request #3655 from jcowgill/spelling-fixes
Fix some very minor spelling mistakes
2016-03-02 14:04:05 -05:00
Pierre Bourdon 643cf4553f Merge pull request #3692 from EmptyChaos/d3d12-static
D3D12: Fix uninitialized variable in SetSamplerState
2016-03-02 15:52:44 +01:00
Rukai 1b65adcd56 Fully remove wii remote netplay UI code and remove reference to WiimoteReal in NetPlayClient.cpp 2016-03-02 21:02:15 +11:00
Mathew Maidment 3a47845226 Merge pull request #3675 from rohit-n/build-pch
Fix building with PCH disabled.
2016-03-01 18:22:53 -05:00
Dolphin Bot ab50dd1926 Merge pull request #3667 from RisingFog/fix_savestates
Fix savestates if a device is changed after a savestate is made
2016-03-01 15:35:09 +01:00
Ryan Houdek 36b476ed76 Merge pull request #3683 from Sonicadvance1/aarch64_fix_fcmp
[AArch64] Fix fcmp.
2016-03-01 09:29:56 -05:00
Ryan Houdek 344a4ddc9b Merge pull request #3685 from degasus/arm
JitArm64: Optimize addi
2016-03-01 09:29:42 -05:00
Chris Burgener 7991605ad9 Fix savestates if a device is changed after a savestate is made 2016-03-01 09:28:04 -05:00
EmptyChaos cc36dec9b5 D3D12: Cleanup DX12::Renderer::SetSamplerState
Remove uninitialized non-static variable. Replace test to avoid unnecessary state changes with a simpler one.
2016-03-01 23:55:19 +11:00
degasus 64f9941595 EGL: Also check for higher GL versions.
Seems like NVidia just ignores the forward compatible flag.
Additionally, they neither enable any extension which was designed later...
So either compatible profile, or a huge list of core profiles....
2016-03-01 07:55:57 +01:00
Ryan Houdek a8c37e5d6b Remove two more asserts in VertexShaderGen.
As confirmed by a hardware test if we are using the texgen type of COLOR_STRGBC0/STRGBC1 then it sets the texture coordinates to those values
regardless of what the input form or source row is.

Thanks to Ornox for testing again
2016-02-29 16:45:51 -06:00
Ryan Houdek 92e9382e61 Confirm with hardware test that the high bit of the input form is ignored.
Thanks to Ornox for testing
2016-02-29 16:45:51 -06:00
Ryan Houdek e1d36f91fc Fix a few asserts in the VertexShaderGen.
Removes a couple asserts in the vertex shader gen when dealing with the input form.
Typically input form ABC1 is used, so it'll pull in the first three elements and always set the fourth to 1.0
The other input form available is AB11, which sets the last two components to 1.0 (Theoretically).
No titles actually use this input form that we know of except for Project M, but it can have some fairly drastic visual differences.

Confirmed correct by hardware test
2016-02-29 16:43:44 -06:00
Pierre Bourdon 8e1aff34df Merge pull request #3682 from Alcaro/master
Run pngout and zopflipng on every single PNG in this repo.
2016-02-29 17:27:29 +01:00
Alcaro da68dfc2f4 Use optipng too. 2016-02-29 17:08:18 +01:00
Pierre Bourdon 392051bd69 Merge pull request #3679 from JosJuice/seek-log-sign
DVDInterface: Log seek offsets with a more intuitive sign
2016-02-29 16:49:39 +01:00
Pierre Bourdon 07ff8379ba Merge pull request #3647 from stenzek/d3d12-fences
D3D12: Multiple fixes (texture cache, fences, MSAA, CPU EFB access)
2016-02-29 16:49:03 +01:00
Ryan Houdek c82feb6c08 Merge pull request #3626 from Sonicadvance1/more_robust_gcadapter
Improve stability of the Wii U Gamecube Controller adapter under Android.
2016-02-29 09:54:01 -05:00
degasus e2725792d4 JitArm64: Optimize addi 2016-02-29 08:39:24 +01:00
degasus 4478146c80 JitArm64: Split addi from arith_imm.
They ARM assembly has different immediate versions for logic and additions, so there is no use in merging those instructions.
2016-02-29 08:39:14 +01:00
Chris Burgener b1c8198cec Move SetData logic to within SysConf.cpp 2016-02-28 19:42:15 -05:00
Jules Blok 6d1628eda4 Revert "Merge pull request #3578 from Armada651/forced-slow-depth"
This reverts commit e2a1a085b6, reversing
changes made to 2aea549eef.
2016-02-29 00:55:51 +01:00
Pierre Bourdon 961901daae Merge pull request #3355 from mimimi085181/partial-texture-updates-check-dimensions
Partial texture updates: Check the dimensions of the efb copy
2016-02-29 00:49:48 +01:00
Ryan Houdek abaa8fc24d [AArch64] Fix fcmp.
Fixes Luigi's head vanishing. Was due to a mishandling of nans.
Confirmed fixed by hardware test.
2016-02-28 13:15:47 -06:00
Stenzek 0a96e2f531 D3D11: Fix texture dumping, for both single and multi-mip textures 2016-02-28 17:24:47 +10:00
Stenzek c793459b88 D3D12: Fixed issue where EFB copies could end up corrupted after reset
Also prevents previously-released textures from ending up in a descriptor
table.
2016-02-28 17:24:46 +10:00
Stenzek 74275bdfe3 D3D12: Don't keep screenshot/encoder buffers mapped
Readback heaps do not support persistent mapping. See D3D12 docs.
2016-02-28 17:24:09 +10:00
Stenzek c4d79d6db3 D3D12: Add helper method for setting both viewport and scissor rect
Simplfies making changes, as well as keeping the two in sync.
2016-02-28 17:18:46 +10:00
Stenzek 13e143de38 D3D12: Optionally prevent StreamBuffer from executing command list
This applies to callers that do not have full knowledge of the command
list state, and thus, cannot restore it should allocations cause command
list execution. Instead we reallocate a new buffer. Should not happen
often enough for this to be a concern, as it's mainly for the utility
classes.
2016-02-28 17:18:46 +10:00
Stenzek 04257029e0 D3D12: Don't enumerate outputs, it's not used anywhere
The D3D12 backend does not support exclusive fullscreen.
2016-02-28 17:18:45 +10:00
Stenzek 9efe66509d D3D12: Fix crash/errors when switching MSAA modes while running 2016-02-28 17:18:44 +10:00
Stenzek 1d909ec7a4 D3D12: Implement non-blocking EFB access when EFB has not been modified 2016-02-28 17:18:43 +10:00
Stenzek 6bbf836ea9 D3D12: Simplify and fix MSAA EFB depth copy path 2016-02-28 17:18:43 +10:00
Stenzek 649b94338e D3D12: Cleanup/refactoring of teardown process 2016-02-28 17:18:42 +10:00
Stenzek 759b77474d D3D12: Use std::thread for worker thread
Using CreateThread can create issues if any CRT calls are made, as
thread-specific data may not be initialized. Additionally, TerminateThread
is not a good idea for similar reasons, and may not free CRT resources.
2016-02-28 17:18:41 +10:00
Stenzek ffe0e326d2 D3D12: Use stream buffer for CD3DFont 2016-02-28 17:18:40 +10:00
Stenzek 5c1a708977 D3D12: Clean up debug device creation path 2016-02-28 17:18:39 +10:00
Stenzek efbb85da43 D3D12: Improve robustness of command allocator and fence tracking 2016-02-28 17:18:39 +10:00
Stenzek 2f7870b046 D3D12: Don't add fence tracking entries without buffer offset changes 2016-02-28 17:18:38 +10:00
Stenzek 31bc0cf2c3 D3D12: Don't clear texture SRV on destruction, as it may still be in use 2016-02-28 17:18:37 +10:00
Alcaro a79d9ccfa1 Run pngout and zopflipng on every single PNG in this repo. 2016-02-27 22:25:51 +01:00
degasus 68defb72a3 JitArm64: Don't generate the carry if it's not used any more. 2016-02-27 21:27:29 +01:00
JosJuice 9427d6efb9 DVDInterface: Log seek offsets with a more intuitive sign 2016-02-27 15:20:49 +01:00
Rohit Nirmal 14b0a9cf70 Fix building with PCH disabled. 2016-02-26 13:55:34 -06:00
Pierre Bourdon 1b37b39d64 Merge pull request #3673 from mmastrac/dvd_nobackwardsbuffer
[DVD] Ignore buffer when seeking backwards
2016-02-26 13:14:47 +01:00
Pierre Bourdon 1d07fee367 Merge pull request #3432 from stenzek/bba-tap-win
EXI: Refactor Windows BBA-TAP interface to a read thread, crash fixes, cleanups
2016-02-26 12:46:20 +01:00
mathieui 4fe2886c2c [netplay] Use the device only if it’s a gc controller or similar
(bad things could happen if we wire up the gba with netplay)
2016-02-25 22:58:21 +01:00
mathieui 7b2c54ad93 [Movie] allow recording with any pad
(bongo/dancemat/adapter…)
2016-02-25 22:58:21 +01:00
mathieui d61ef9a95a [SI] add a way to check if the current controller is a gcpad
(or gcpad-compatible)
2016-02-25 22:58:17 +01:00
Matt Mastracci f1a5d6c104 [DVD] Ignore buffer when seeking backwards
Unfortunately this fix re-breaks Arc Rise Fantasia, so we must restore its INI as well.
2016-02-25 12:09:25 -07:00
degasus 3286bbd9bd JitArm64: Track single precision in ps_sel. 2016-02-25 19:47:07 +01:00
degasus 141e299161 JitArm64: Track single precision in fctiwzx. 2016-02-25 19:47:07 +01:00
degasus e0793a274f JitArm64: Track singles in fselx. 2016-02-25 19:47:07 +01:00
degasus b4d0307b25 JitArm64: Remove LoadTo* helpers. 2016-02-25 19:47:07 +01:00
degasus 2112d8dfda JitArm64: Replace REG_IS_LOADED with REG_LOWER_PAIR 2016-02-25 19:47:07 +01:00
degasus c30a66b2d5 JitArm64: Track singles in fabs. 2016-02-25 19:47:07 +01:00
degasus 84395b65f6 JitArm64: Track singles in psq_st. 2016-02-25 19:47:06 +01:00
degasus fe87462be8 JitArm64: Track singles in stfs. 2016-02-25 19:47:06 +01:00
degasus 5fad3d94a0 JitArm64: Track singles in fcmpX. 2016-02-25 19:47:06 +01:00
degasus c8948ff8c7 JitArm64: Track single precision in ps_maddXX. 2016-02-25 19:47:06 +01:00
degasus 7fd68c8761 JitArm64: Track singles in ps_sumX. 2016-02-25 19:47:06 +01:00
degasus ca091b9e92 JitArm64: Track single precision in ps_res. 2016-02-25 19:47:06 +01:00
degasus d185d2f704 JitArm64: Track singles in ps_mulsX. 2016-02-25 19:47:06 +01:00
degasus 6572790d8b JitArm64: Track singles in ps_mergeXX. 2016-02-25 19:47:06 +01:00
degasus 5506295123 JitArm64: Track singles in frspx. 2016-02-25 19:47:06 +01:00
degasus 0efdd5cacd JitArm64: Track singles in paired fp_logic. 2016-02-25 19:47:06 +01:00
degasus 003288a886 JitArm64: Track singles in fp_arith. 2016-02-25 19:47:05 +01:00
degasus ae1b5ff9e8 JitArm64: Track single precision in load/store. 2016-02-25 19:47:05 +01:00
degasus 1e59dc1025 JitArm64: Single precision tracking. 2016-02-25 19:47:05 +01:00
Chris Burgener 4aa6f6c812 Apply Wii Settings on Movie Recording/Playback 2016-02-24 21:22:37 -05:00
Ryan Houdek 0e7401f350 Merge pull request #3639 from ASSympt0te/toggle-frame-limit-changes-fixes
Reword "Toggle Frame Limit" to better explain function
2016-02-24 12:15:11 -05:00
Ryan Houdek 6513062144 Merge pull request #3596 from Sonicadvance1/fix_android_crash
[Android] Fix crash when we don't have access to a folder.
2016-02-22 16:15:54 -05:00
Jules Blok e2a1a085b6 Merge pull request #3578 from Armada651/forced-slow-depth
VideoConfig: Replace FastDepthCalc by ForcedSlowDepth.
2016-02-22 11:29:09 +01:00
Stenzek 1ce38a136d TextureConversionShader: Invert depth for Z24 encoder with D3D 2016-02-22 00:09:07 +10:00
Mathew Maidment bd148e911b Merge pull request #3642 from lioncash/backend
VideoBackendBase: Store video backends as unique_ptr
2016-02-21 04:49:14 -05:00
Sintendo 00cc59e83a VideoInterface: Fix comment typo 2016-02-21 09:39:01 +01:00
Lioncash 1d6ee140f0 VideoBackendBase: Store video backends as unique_ptr 2016-02-20 19:07:40 -05:00
Pierre Bourdon 5fd9604195 Merge pull request #3660 from aserna3/no_wagglesticks_allowed
[Netplay] Disable Wiimotes
2016-02-20 14:30:28 +01:00
Anthony Serna 28fbf6ae03 [Netplay] Disable Wiimotes 2016-02-19 22:15:52 -06:00
Chris Burgener d39d193c0f Properly Handle Video Dumping from Power On 2016-02-19 22:53:58 -05:00
Tillmann Karras 4ecd191a7e VertexShaderGen: turn pseudo-mod into a simple and
The type of posmtx has changed over time: half -> float -> int.
I assume this is supposed to be a modulo.
2016-02-20 03:29:08 +00:00
Tillmann Karras 3b2e170f0b Interpreter: simplify subtable handling 2016-02-20 02:20:41 +00:00
Tillmann Karras b291b0a7c2 Interpreter: simplify mask helper 2016-02-20 01:03:46 +00:00
Tillmann Karras af5ff9941a Interpreter: deduplicate CR0 helper 2016-02-20 01:03:37 +00:00
James Cowgill db8dbae131 Fix some very minor spelling mistakes
Found by Lintian https://lintian.debian.org/
2016-02-19 01:48:10 +00:00
rukai 6349b88fae DolphinQt Builds on Visual Studio 2016-02-18 16:42:05 +11:00
Mathew Maidment 1f2b1caf42 Merge pull request #3633 from spxtr/DQt2
Replace TableProxyModel with TableDelegate.
2016-02-18 00:24:52 -05:00
rukai 704d9cbea5 Enter key opens selected game in the game list. 2016-02-18 16:16:24 +11:00
spxtr dfb0db9d31 Replace TableProxyModel with TableDelegate. 2016-02-17 21:12:24 -08:00
Mathew Maidment 58b3552233 Merge pull request #3616 from rukai/dolphinQtGameContextMenu
DQT2: Add context menu to gamelist
2016-02-18 00:07:22 -05:00
Rukai 7cd1a233eb DQT2: Added context menu to gamelist 2016-02-18 16:04:15 +11:00
Mathew Maidment 05e431d5b5 Merge pull request #3645 from lioncash/dxmem
D3D12: Get rid of most explicit delete and new usages
2016-02-16 22:54:04 -05:00
Mathew Maidment 96e48c3c9f Merge pull request #3644 from lioncash/shadercache
ShaderCache: Minor changes
2016-02-16 22:52:39 -05:00
Chris Burgener 6fe3a3004d Rename Direct3D to Direct3D 11 2016-02-16 22:43:21 -05:00
Mathew Maidment 2e35e79302 Merge pull request #3643 from lioncash/inclass
NativeVertexFormat: Minor changes
2016-02-16 21:47:38 -05:00
Pierre Bourdon d4b67be288 Merge pull request #3640 from Sonicadvance1/glextensions_workaround_trash
Disable some OpenGL 4.5 functions until AMD fixes their trash driver.
2016-02-16 15:41:48 +01:00
Lioncash 6b08194728 D3D12: Get rid of safe deletion macros
Anything these macros provided can be obsoleted by using
the correct standard library types.
2016-02-16 02:09:06 -05:00
Lioncash 626fcf4c15 D3DStreamBuffer: Use size_t within the class interface
A few StreamBuffer instances take arguments that are actually size_t,
and this will cause truncation warnings during argument forwarding
with make_unique.
2016-02-16 02:08:52 -05:00
Lioncash 932dd14418 NativeVertexFormat: Add missing override specifier 2016-02-15 23:41:20 -05:00
Lioncash 69c82f32ff NativeVertexFormat: Use in-class initialization 2016-02-15 23:40:34 -05:00
Lioncash 6c0db9fe3c ShaderCache: Remove unnecessary template type specifications
These are already inferred through the passed in arguments.
2016-02-15 23:32:30 -05:00
Lioncash 53fe5a04ec ShaderCache: Remove unnecessary null checks
We already bail out if the shader compilation fails.
Also, there would have already been a nullptr dereference in
InsertByteCode prior to reaching this point.
2016-02-15 23:29:30 -05:00
Lioncash a22f2e1144 D3DBase: Fix missing return statement 2016-02-15 21:15:43 -05:00
Pierre Bourdon 05f5668bcc Merge pull request #3591 from phire/VC_widescreen
Make all Virtual console games 4:3 (and cleanup GameInis)
2016-02-16 00:41:33 +01:00
hdcmeta 8cc686b360 D3D12: Initial commit for D3D12 backend implementation. 2016-02-15 09:48:25 -08:00
hdcmeta a2e2e36745 D3D12: Additions to VideoCommon to support D3D12 backend. 2016-02-15 09:48:23 -08:00
hdcmeta 9f279f77fc Add missing include, this was previously masked by PCH usage 2016-02-15 09:48:22 -08:00
Ryan Houdek d4dfbbf214 Make sure to get the right function pointer for DSA+buffer_storage 2016-02-15 06:05:38 -06:00
Ryan Houdek 64cb57c5ee Disable a few OpenGL 4.5 functions that AMD fails to expose. 2016-02-15 06:05:09 -06:00
blendmaster345 c61625cdd3 Relabel hotkey option for toggle frame limit to better reflect function 2016-02-15 04:11:21 -06:00
Pierre Bourdon a89d48ad99 Merge pull request #3636 from Sonicadvance1/glextensions_improvements
Glextensions improvements
2016-02-15 10:30:44 +01:00
Pierre Bourdon 14cdf82a69 Merge pull request #3638 from lioncash/mmio
Memmap: Make the MMIO mapping a unique_ptr
2016-02-15 10:29:40 +01:00
Lioncash b36b10fa78 Memmap: Make the MMIO mapping a unique_ptr 2016-02-15 00:02:00 -05:00
Ryan Houdek 2685ebaed1 Add support for GL 4.3 2016-02-14 20:35:38 -06:00
Ryan Houdek e253fafe42 Add support for GL 4.4 2016-02-14 20:16:33 -06:00
Ryan Houdek 87afa2c277 Add support for GL 4.5 2016-02-14 20:15:40 -06:00
Ryan Houdek 23787f709c Change GL 4.2 defines over to the proper naming convention. 2016-02-14 20:01:02 -06:00
spxtr 0d80c6c5f7 Stop parenting RenderWidget. 2016-02-14 17:04:16 -08:00
Matt Mastracci 4e6f58d82e [DVD] Signedness fix in realistic timing path 2016-02-14 14:27:08 -07:00
mimimi085181 bb4d636f34 Copy all layers of textures with CopyRectangleFromTexture 2016-02-14 21:17:06 +01:00
mimimi085181 99555a35ca For partial texture updates check the dimensions of the efb copy and the target texture, not just the binary size.
This should get Donkey Kong Country Returns characters to be as broken as they should be. They will be fixed in a later pr.

Expected result is:
efbtex: characters are always flickering or invisible, no matter what scaling or IR setting
efb2ram: characters are always working properly at 1xIR, no matter what scaling or IR setting
2016-02-14 17:13:51 +01:00
Ryan Houdek cafc879b7c Merge pull request #3617 from degasus/arm
JitArm64: Merge FP functions.
2016-02-13 18:57:01 -05:00
Tillmann Karras 797431dda4 MMIO: correct error message 2016-02-13 17:42:24 +00:00
Ryan Houdek 6cc40b1235 Improve stability of the Wii U Gamecube Controller adapter under Android.
Under failure conditions of the GC Adapter, When interface count is zero and we can't open the device.
Then there were race conditions on shutdown of the threads which could result in crashing.

Make adapter opening more robust like the Mayflash DolphinBar.
Make shutdown more robust by making the read thread control the write thread.
Make sure that there is actual data to be written when kicking the write thread. So it doesn't attempt a write a shutdown.
Make a toast on screen to tell the user that the adapter needs to be unplugged and plugged back in again for it to work.
2016-02-13 08:17:20 -06:00
Rukai 77efb2d134 About dialog displays version numbers and handy links 2016-02-13 14:28:38 +11:00
degasus f259a8d6cf JitArm64: Merge more stuff into ps_maddXX. 2016-02-12 23:26:47 +01:00
Mathew Maidment 5b795c4b20 Merge pull request #3347 from JosJuice/wii-compress-warning-once
DolphinWX: Fixes for compressing multiple games at once
2016-02-12 10:02:25 -05:00
Ryan Houdek b2b0959f23 Geometry shader bug isn't fixed in 11.1.2 for Intel Sandy Bridge 2016-02-12 07:04:09 -06:00
degasus 8b32cd0738 JitArm64: Merge ps_sumX. 2016-02-12 10:09:57 +01:00
degasus 2d8e1bc34d JitArm64: Merge PS stuff into fp_logic. 2016-02-12 10:09:57 +01:00