Commit Graph

8491 Commits

Author SHA1 Message Date
Tillmann Karras 6054129df8 x64: detect FMA support 2013-11-13 04:46:34 +01:00
Tillmann Karras 2fecb033be Jit64: micro-optimize ps_sel
Adapted from a patch by konpie:
https://forums.dolphin-emu.org/Thread-code-bug-report-based-on-3-0-735
2013-11-13 04:45:43 +01:00
Tillmann Karras 6f5650f82e Fix Bluetooth warnings 2013-11-13 04:01:24 +01:00
Tillmann Karras 268bdf19ce Fix format string warnings 2013-11-13 04:01:16 +01:00
Ryan Houdek 39ad5a2f7a Disable Fastmem on JIT64IL. JIT64IL is completely incompatible with Fastmem and doesn't need it since it has its own way to speed up memory accesses. This fixes the JIT64IL core, which I totally didn't break but was blamed for. 2013-11-12 19:37:09 -06:00
Ryan Houdek 7c1ac441f6 Redo 'Fixes GCC 4.9 compilation. It now supplies its own _mm_shuffle_epi8 intrinsic.' This time with support for Windows. 2013-11-12 16:34:56 -06:00
Rachel Bryk 0f94652952 Disable wiimote source selection while netplay is running. 2013-11-12 04:16:51 -05:00
Ryan Houdek a72b3ca20c [ARM] Don't leave my test code in the JIT core. 2013-11-12 04:22:42 +00:00
Ryan Houdek 56557c845a [ARM] Fix NEON emitter encodings. 2013-11-12 01:01:54 +00:00
Ryan Houdek 68ba0f7f4e Add a comment to the magic value reading location. 2013-11-11 17:17:49 +00:00
Chanwoong Kim 22fef0da9b Fixed a bug that incorrectly recognized as 'GameCube'. when you open the Korean Wii Disc, which is re-encrypted with a common-key(g_MasterKey). 2013-11-12 01:05:30 +09:00
Ryan Houdek d1de336879 [ARM] More NEON emitters. 2013-11-11 01:47:05 +00:00
Jordan Cristiano 3a28afd8d5 Changed thread barrier and event to use a lamba wait predicate instead of a functor. 2013-11-10 04:57:11 -05:00
Ryan Houdek e013a74cdb [ARM] More NEON emitters. 2013-11-10 05:02:32 +00:00
Tony Wasserka 22f727cc69 D3D: Use D3DX11 for taking screenshots. 2013-11-10 00:22:35 +01:00
Tony Wasserka 0b02880b76 Revert "Be less dumb."
Revert "Actually, filename really does need to be a parameter because of some random debug thing."
Revert "fix non-HAVE_WX case"
Revert "Handle screenshot saving in RenderBase.  Removes dependency on D3DX11 for screenshots (texture dumping is still broken)."

This reverts commits 00fe5057f1, 74b5fb3ab4, cd46138d29 and 5f72542e06 because taking screenshots in D3D still crashed for me so there was no point in the code changes (which I found ugly anyway).
2013-11-10 00:22:33 +01:00
Tony Wasserka 3de2ee5d46 D3D: Use D3DX for texture dumping. 2013-11-10 00:22:31 +01:00
Tony Wasserka a83c239765 D3D: Reintroduce depencency on D3DX11 because it's the most straightforward way to bring back some broken features.
The Dolphin development team is incapable of providing sufficient replacement for its previous usage in Dolphin and the advantages of dropping the dependency do not justify the removal of screenshots and texture dumping.

From now on, d3dx11.h, d3dx11async.h, d3dx11core.h and d3dx11tex.h are required to be stored somewhere in the header include path. I don't know if this is the case for anyone else than me, but I can't really say that I care after having people randomly merge unfinished branches into master.
2013-11-10 00:18:03 +01:00
degasus 8923968b47 Revert "VideoCommon: create native texture pool"
This reverts commit 6cece6b486.

In fact, there was a _huge_ speedup on lots of games (mostly on nvidia+ogl), but there are some crashes on D3D.
I have to fix this crash and then I'll commit something like this again :-)

Conflicts:
	Source/Core/VideoCommon/Src/TextureCacheBase.cpp
2013-11-07 21:16:36 +01:00
Shawn Hoffman 33d56f50a4 Re-plumb window handle to the dsound backend.
Reverts parts of commit 71c01d83ab614b9e0c421d03ca694713dbabff48.
Fixes issue 6800
2013-11-07 09:24:56 -08:00
degasus ea2d8bf328 VideoCommon: fix custom textures
This fix a regression by revision 6cece6b486

delete pointer must not do anything if pointer==NULL.
2013-11-07 15:55:34 +01:00
Lioncash c33036aa01 Fix the filter for some files in the Core VS project related to the JitIL. They were in the root of the project. They should actually be in their own filter named JitILCommon. 2013-11-07 01:33:32 -05:00
degasus 1aa06b8fa4 jit: change our linking module to be able to handle arbitrary exit addresses
And also do this for all JIT backends...
2013-11-07 06:19:35 +01:00
Pierre Bourdon ea6fd58b97 Use an unordered_set to track FIFO write adresses
Reduces CheckGatherPipe CPU consumption by 40%.
2013-11-07 03:22:32 +01:00
Pierre Bourdon 954be9e2d9 Handle BP mask register better to avoid useless BP writes (causing flushes)
Patch from konpie: http://forums.dolphin-emulator.com/showthread.php?tid=24658
2013-11-07 03:06:53 +01:00
Tillmann Karras cdc27e46f1 Jit64: implement ps_res
This is probably more accurate than it is allowed to be. After all, the
instructions are supposed to be "estimates".
2013-11-07 02:19:20 +01:00
Tillmann Karras 0a2a273a2e Jit64: simplify ps_sel 2013-11-07 02:02:38 +01:00
Tillmann Karras 201c4c65a5 Jit64: fix typo in ps_sel and re-enable it 2013-11-07 02:02:24 +01:00
degasus 2f7ca688ae jit64: remove dead code 2013-11-07 01:59:10 +01:00
Tillmann Karras c29fb22cd4 Jit64: extract frsqrtex as method 2013-11-07 01:59:00 +01:00
Matthew Parlane 897bec1add [JitIL] No more terrible usage of vectors.
This is possible because of C++11.
2013-11-06 22:18:08 +13:00
degasus 274f6dd7ab ogl: check default framebuffer for msaa
default framebuffer must not be sampled, so throw a panicalert if it is
2013-11-05 17:38:48 +01:00
Ryan Houdek 948ace9546 [ARM] Minor idle skip optimization in bx. 2013-11-05 13:05:39 +00:00
Ryan Houdek 56685c396a [ARM] Fix an issue with the data offset in LoadStore operations. Thanks to PPSSPP. 2013-11-05 13:05:38 +00:00
degasus 6cece6b486 VideoCommon: create native texture pool
We often need the same native texture objects for new textures. This commit
try to avoid destroying and creation of this textures by pooling them.

This should be a big performance gain for some efb2ram games as they may
overwrites partially a cached texture (which would be deleted) and afterwards
try to read it.

Creating/destroying sounds like an easy task, but it isn't. eg the nvidia ogl
driver synchonize their threads do avoid use-after-free issues.
2013-11-05 12:21:22 +01:00
Shawn Hoffman f4056978c8 [windows] update SDL-2.0.0 to 2.0.1. Fixes issue 6793. 2013-11-04 23:50:52 -08:00
degasus 045efdfc3e ogl: drop all %f from TextureConversionShader 2013-11-04 12:38:55 +01:00
Matthew Parlane e15f628935 Fix {Read,Write}FileToString.
We should be using binary always.
2013-11-05 00:33:41 +13:00
comex 3f1ea21e4f Fix warnings. 2013-11-03 20:54:06 -05:00
comex 21610c2e54 Run code through clang-modernize -add-override to add 'override' decls. 2013-11-03 20:54:05 -05:00
comex c579637eaf Run code through the advanced tool 'sed' to remove trailing whitespace. 2013-11-03 20:54:05 -05:00
comex 965b32be9c Run code through clang-modernize -loop-convert to create range-based for loops, and manually fix some stuff up. 2013-11-03 20:54:01 -05:00
comex 00fe5057f1 Be less dumb. 2013-11-03 14:37:56 -05:00
Rachel Bryk a250ab0af7 Stop saving random files to ./ 2013-11-02 23:47:10 -04:00
comex 74b5fb3ab4 Actually, filename really does need to be a parameter because of some random debug thing. 2013-11-02 22:44:27 -04:00
comex cd46138d29 fix non-HAVE_WX case 2013-11-02 22:23:29 -04:00
comex 5f72542e06 Handle screenshot saving in RenderBase. Removes dependency on D3DX11 for screenshots (texture dumping is still broken). 2013-11-02 22:19:21 -04:00
Shawn Hoffman 26059f1109 rename the dolphinwx project to dolphin, and thus change the executable name back to dolphin{d}.exe 2013-11-02 16:22:15 -07:00
Shawn Hoffman bc45a38122 do not copy pdbs to binary dir (you can use the symbol server for $(random_build), or it will be found locally if you built it yourself) 2013-11-02 16:19:17 -07:00
Matthew Parlane dab9af43a4 [Windows] Add missing dlls and enable OpenMP support. 2013-11-03 11:54:45 +13:00
skidau 65404e7475 Removed duplicate definition of ibuild within JitIL.h. Fixes JitIL from hanging on x64/x86. 2013-11-01 12:33:29 +11:00
comex 82729fcc8f Merge remote-tracking branch 'shuffle2/vc12'
Conflicts:
	Source/Core/Common/Common.vcxproj
	Source/Core/Common/Common.vcxproj.filters
2013-10-31 16:51:56 -04:00
comex 4c7bbd96e4 Improve ChunkFile.h:
- Add support for std::set and std:pair.

- Switch from std::is_pod to std::is_trivially_copyable, to allow for
  types that have constructors but trivial copy constructors.  Easy,
  except there are three different nonstandard versions of it required
  on different platforms, in addition to the standard one.
2013-10-31 15:40:53 -04:00
degasus 498d491942 Merge branch 'viewportCorrection' 2013-10-29 22:33:51 +01:00
degasus 35824aa4d5 ogl: ceil viewport, rounding isn't supported on vs and this is more like the old behavior 2013-10-29 21:42:40 +01:00
degasus ab35503195 ogl: don't force depth+stencil for default framebuffer 2013-10-29 19:20:40 +01:00
degasus 92fdac412b VideoCommon: drop UpdateViewportWithCorrection
It's only used once in BPFunction which itself is also only used once.
So the setter is moved to BPStructs like all other ones.
2013-10-29 18:55:50 +01:00
degasus 2118c1d3c3 VideoCommon: remove constants.depthparams[2+3] as they aren't used in the shader at all 2013-10-29 18:55:50 +01:00
degasus f4a9deefa8 ogl: remove some unneeded includes 2013-10-29 18:55:50 +01:00
degasus 8e0f91f70e d3d: use backend based UpdateViewport instead of VideoCommon one 2013-10-29 18:55:50 +01:00
degasus acc0b3b21c ogl: don't call SetViewportChanged from backend as it's not needed any more 2013-10-29 18:55:50 +01:00
degasus 3151d8709c VideoCommon: move ViewportCorrection into VideoCommon
D3D doesn't allow bigger viewports than rendertargets. But flipper does, so the viewport will be clipped and the transformation matrix will be changed.
This was done in the D3D backend itself. This is now moved into VideoCommon. This don't reduce code, but in this way, VideoCommon doesn't depend on the backends.
2013-10-29 18:55:50 +01:00
degasus 0002236e3e Merge branch 'viewport_float' 2013-10-29 18:33:56 +01:00
degasus b253d60f04 VideoCommon: Drop D3D9 SSAA implementation
This isn't needed for both OGL+D3D11 as they support sample shading directly. So we
could use the common MSAA util shaders instead of writing custom ones.
2013-10-29 18:20:07 +01:00
Ryan Houdek f18c461fd6 [viewport-float] Fix OpenGL ES 3 build. 2013-10-29 17:10:02 +00:00
degasus edf0511d4e OGL: Use floating points for viewport parameters.
As told by neobain, ARB_viewport_array introduced float viewports.
They must be supported on OGL4.1+, but it's usually also implemented on 3.3 GPUs.
2013-10-29 15:29:06 +01:00
Ryan Houdek 58d42f43e3 [Android] Fix PCH build. Clean up DolphinWX cmake file a little bit. Modify our android cmake toolchain file to make the default build location not be source root, because that is stupid. 2013-10-28 19:59:03 -05:00
comex 2e983071c5 Add git.bat to the options in make_scmrev.h.js because depot_tools uses it and I'm silly. 2013-10-27 19:51:55 -04:00
Ryan Houdek 8e73e8ae5f Wipe all traces of OpenSSL's AES implementation. Use polarssl instead. 2013-10-27 18:27:07 +00:00
Shawn Hoffman 8dcd13cca7 [vc12] std::min/max requires <algorithm> header. It should be in pch, but just add it for the single file that needs it, for now. 2013-10-26 18:04:00 -07:00
Shawn Hoffman ccd30024b3 Update to VS2013 and a slew of build-related updates. Notes:
* Currently there is no DEBUGFAST configuration. Defining DEBUGFAST as a preprocessor definition in Base.props (or a global header) enables it for now, pending a better method. This was done to make managing the build harder to screw up. However it may not even be an issue anymore with the new .props usage.
* D3DX11SaveTextureToFile usage is dropped and not replaced.
* If you have $(DXSDK_DIR) in your global property sheets (Microsoft.Cpp.$(PlatformName).user), you need to remove it. The build will error out with a message if it's configured incorrectly.
* If you are on Windows 8 or above, you no longer need the June 2010 DirectX SDK installed to build dolphin. If you are in this situation, it is still required if you want your built binaries to be able to use XAudio2 and XInput on previous Windows versions.
* GLew updated to 1.10.0
* compiler switches added: /volatile:iso, /d2Zi+
* LTCG available via msbuild property: DolphinRelease
* SDL updated to 2.0.0
* All Externals (excl. OpenAL and SDL) are built from source.
* Now uses STL version of std::{mutex,condition_variable,thread}
* Now uses Build as root directory for *all* intermediate files
* Binary directory is populated as post-build msbuild action
* .gitignore is simplified
* UnitTests project is no longer compiled
2013-10-26 17:55:38 -07:00
Ryan Houdek 1eba4da21a Revert "Fixes GCC 4.9 compilation. It now supplies its own _mm_shuffle_epi8 intrinsic."
This reverts commit b2c4901b3f.

Breaks Windows build. GCC 4.9 isn't out yet anyway.
2013-10-26 19:21:00 -05:00
Ryan Houdek b2c4901b3f Fixes GCC 4.9 compilation. It now supplies its own _mm_shuffle_epi8 intrinsic. 2013-10-26 19:05:31 -05:00
Tony Wasserka f82e1b9dc7 D3D: Use floating points for viewport parameters.
OpenGL 4.1 allows for a similar change thanks to ARB_viewport_array, but we don't make use of this, yet.
2013-10-26 12:40:37 +02:00
Ryan Houdek c24dfe559b [Android] Change how the onTouchEvent native method works. Just pass in the correct Button ID and Action and it'll be pressed or not. Not actually rigged up to the Java code yet. Doesn't support anything with an Axis yet so no C stick, main stick, L and R triggers 2013-10-26 05:36:20 -05:00
skidau 41f6f6adc9 Added memchecks when the MMU is enabled. Thanks to comex for the fix.
Fixes issue 6754.
2013-10-26 14:32:03 +11:00
comex 005af7bd63 Fix build on Mavericks. 2013-10-24 16:39:46 -04:00
Tillmann Karras 69a10869bb Document FPSCR fields 2013-10-24 01:46:07 +02:00
Rachel Bryk 8aef60f6ca Allow frame limit to be set via game ini. 2013-10-23 13:45:03 -04:00
Ryan Houdek e3febb1603 [Android] Fix MIPS compiling. 2013-10-21 09:52:43 -05:00
Ryan Houdek 887f8e463d [Android] Fix MIPS compiling. 2013-10-21 09:43:19 -05:00
Lioncash 4b774ef99a Fix my fix. 2013-10-20 16:42:30 -04:00
Lioncash 448c19bce1 Fix an issue where my recent changes would cause compilation to fail on some distros of Linux.
Note that before pushing those changes, they were initially tested in a branch, and passed the compilation testing. Sorry that I didn't catch this before.
2013-10-20 16:32:40 -04:00
Lioncash b3da5c5d58 Really fix the Linux build this time.
Dammit size_t :(
2013-10-19 19:59:05 -04:00
Lioncash a5a21e7f44 Fix Linux build.
Turns out Hash.h needs Common.h
2013-10-19 19:59:04 -04:00
Lioncash 8b10d5b481 Add header cstdint to CommonTypes.h 2013-10-19 19:59:03 -04:00
Lioncash 1f0710caf7 Remove some more includes. 2013-10-19 19:59:03 -04:00
Lioncash 207547b425 Clean up includes in DiscIO as much as possible.
Also turned a long iterator declaration in VolumeDirectory.cpp to using auto in order to shorten it.
2013-10-19 19:59:02 -04:00
Lioncash 82fd579506 Remove unnecessary include of "../../Core/Src/ConfigManager.h" from BannerLoaderGC.cpp. In actuality, all that was needed here was an include of CommonTypes.h.
Also change Common.h to CommonTypes in BannerLoaderWii.cpp.
2013-10-19 19:59:01 -04:00
Lioncash 6adf3e37e2 Clean out unnecessary includes from the DSP JIT. 2013-10-19 19:59:00 -04:00
Lioncash af1b5fe767 Woops forgot to clean out some files in the Jit64IL. All clean now. 2013-10-19 19:58:59 -04:00
Lioncash 80b4cb6cf3 Clean out includes from regular JitCommon. 2013-10-19 19:58:59 -04:00
Lioncash 3360ec013f Clean out includes in JitILCommon. 2013-10-19 19:58:58 -04:00
Lioncash 22cdc0f56e Remove some more unnecessary includes, as well as organize a little more. 2013-10-19 19:58:57 -04:00
Lioncash 97cd42f5c3 Remove some unnecessary includes as well as simplifying exisiting ones if possible. 2013-10-19 19:58:56 -04:00
comex 33ee04626d Don't define __rdtsc if x86intrin.h already does. 2013-10-19 12:40:21 -04:00
Lioncash 81964517d6 Remove a redundant assignment in Init() within PowerPC.cpp. We already assign zero to ppcState.dtlb_last. 2013-10-17 20:38:49 -04:00
Lioncash b8a947ce0a Fix a filter in the VS project file for JitILCommon-related files. 2013-10-17 06:36:32 -04:00
comex de1773affb Basic precompiled header support for Linux/OS X. Shaves 20-30% off full rebuild time on my system. 2013-10-17 00:07:35 -04:00
comex cffe6ba3fd Fix TextureEncoder.h 2013-10-16 23:20:51 -04:00
comex e1f3a4d7b3 Fix out-of-tree build on OS X. 2013-10-16 23:15:21 -04:00
Tillmann Karras e4a81f32d4 Document some UGeckoInstruction fields 2013-10-17 04:59:13 +02:00
Rachel Bryk f605ea9eeb [Netplay] Allow a spectator to leave without affecting players. 2013-10-16 21:44:49 -04:00
degasus 5a212a8fe0 jit64: enable faddsx again
It was disabled because of issue 182, but as this game depeneds on FPRF, it was just 'fixed' because of the fallback to interpreter (which implements FPRF by default).
Also enables FPRF for this game via GameIni, so that the issue is still workaround.

If there are any regressions because of this commit, please try to enable FPRF in GameIni.
2013-10-17 01:43:16 +02:00
degasus f850d283d1 ogl: only use bufferdata if buffersubdata is broken
Else nvidia fallback would be slower than needed
2013-10-16 15:46:58 +02:00
Ryan Houdek f0bf5aa113 Fix rendering on Adreno and Mali. This adds a new DriverDetails bug to know if the bufferstreaming is broken. Thanks degasus for fixing this. 2013-10-16 11:27:58 +00:00
Tillmann Karras c234dc97c0 Jit64: optimize floating-point/paired-single arith
The "else if (b != d)" branch was dead code and only works if b == d. Now
the last else block with two temporary XMM registers is not needed anymore.
2013-10-16 00:52:21 +02:00
skidau b4513313bb Increase the trampoline cache size to cater for fastmem writes.
Fixes issue 6722.
2013-10-16 09:26:08 +11:00
Rachel Bryk 6eb216fc77 (Netplay) Disable record input checkbox while a game is running.
Fixes issue 6734.
2013-10-15 17:28:01 -04:00
comex b11cf1fa10 Fix config file saving on Windows. 2013-10-15 17:20:00 -04:00
degasus b1afb32188 ShaderGen: fix for commit bd80de14f4 2013-10-15 14:48:40 +02:00
degasus bd80de14f4 ShaderGen: drop PerPixelLighting + 8Texcoord hack
D3D9 only supports 8 texcoords. But we need a new one for ppl, so we just store it in the first 4 texcoords in the free 4th component.

This isn't needed for both d3d11 and ogl3, so just remove it.
2013-10-15 14:38:26 +02:00
degasus f62579761c ShaderGen: remove nonsense for() if() {} 2013-10-15 14:31:02 +02:00
comex 72c1e143f3 Try to atomically save config files. 2013-10-15 02:59:25 -04:00
Lioncash f3af8ee0f0 Revert "Remove some unnecessary includes."
Turns out this explodes on Linux.

This reverts commit c4696568cc.
2013-10-14 04:05:38 -04:00
Lioncash c4696568cc Remove some unnecessary includes. 2013-10-14 04:01:57 -04:00
comex 390760bd75 Perf: Use unordered_map instead of map in very slightly hot function.
Incrementing an unordered_map's iterator is a bit faster.
2013-10-13 15:31:42 -04:00
comex 1570558789 Remove unused variable waitingForPEInterruptDisable. 2013-10-13 14:00:38 -04:00
NeoBrainX 59ae93d04e PixelShaderGen: Refine the comment from revision 3fbe1b1ccd. 2013-10-13 14:59:59 +00:00
degasus 3fbe1b1ccd VideoCommon: Update FastDepth's comment 2013-10-13 16:14:30 +02:00
degasus 6798a4763e VideoCommon: revert the ViewPort changes
xfregs isn't written when calling this function, so we have to use such an invalid flag :-(
2013-10-13 15:41:11 +02:00
degasus 2754c1132e VideoCommon: reimplement Dirty() in PixelShaderManager
This isn't needed in VertexShaderManager as it's still in the old dirty flag way.

But it's very importend for PixelShaderManager as some float4s aren't initialized as 0.0f
2013-10-12 20:31:59 +02:00
degasus 50c404ce4a VideoCommon: fix dstAlpha 2013-10-12 20:31:59 +02:00
degasus 0b2fb548c3 VideoCommon: remove SetVSConstant4f 2013-10-12 20:31:59 +02:00
degasus 5de7ac4791 OGL: update ubo workaround 2013-10-12 20:31:59 +02:00
degasus cc6c454898 VideoCommon: refactor PixelShaderManager setters
The old way was to use a dirty flag per setter. Now we just update the const buffer per setter directly.
The old optimization isn't needed any more as the setters don't call the backend any more.

The follow parts are rewritten:

Alpha

ZTextureType

zbias

FogParam

FogColor

Color

TexDim

IndMatrix

MaterialColor

FogRangeAdjust

Lights
2013-10-12 20:31:25 +02:00
degasus 15ed0ea9cf videoCommon: remove not supported constant types
I'm pretty sure GPUs can read u8 values, but this isn't exported by the API.

But hey, see unpackSnorm4x8 :-)
2013-10-12 20:29:56 +02:00
degasus 6e2fe72b8f D3D: also uses VideoCommon constant buffer handling
As now both backends uses the VideoCommon one, the old setting API was removed.
2013-10-12 20:29:56 +02:00
degasus 7c14463d11 ogl: implement useful constant buffer upload
this will remove the additional memcpy introduced in my last commit
2013-10-12 20:29:56 +02:00
degasus 4377618438 VideoCommon: keep a copy of the const buffer in VideoCommon
The upload in the backend isn't done, it's just pushed by the mostly removed SetMulti*SConstant4fv.
Also no optimizations was done on VideoCommon side, but I can start now :-)

Sorry for the hacky way, but I think this is a nice (working) snapshot for a much bigger change.
2013-10-12 20:29:56 +02:00
degasus 0753ce5bda ogl: use GL_RGBA instead of GL_RGBA8
8 bit per pixel is _everywhere_ the default, so we don't need to define it explicitly.
Also we don't rely on exact 8 bit resolution.
2013-10-12 16:34:06 +02:00
Ryan Houdek 2f0aca2055 [ARM] Fix the JITILArm and JITArm dispatchers from comex's recent changes. 2013-10-12 08:30:26 +00:00
Ryan Houdek 0556193442 Build fix for previous commit. 2013-10-11 21:45:44 -05:00
Ryan Houdek cf7521dc36 [Android] Make Tegra 4 output graphics that aren't visually appealing. 2013-10-11 21:42:07 -05:00
comex 78a4dbced8 Remove more unused stuff. 2013-10-09 21:37:29 -04:00
comex 8962b9606b One shudders to imagine what inhuman thoughts lie behind that code.
(Read_Opcode_JIT and Write_Opcode_JIT read/write from unrelated memory
areas.*  Rename the latter and refactor.)

*except at the one specific exception handler where it doesn't.  I
have no idea what this is supposed to do, but it probably doesn't do
it correctly.  For now, remove the exception.
2013-10-09 21:37:29 -04:00
comex 2e32f11f03 Remove "deprecated" and unused function Read_Opcode_JIT_LC. 2013-10-09 21:37:28 -04:00
comex 5847e26d34 Minor JitCache cleanup. 2013-10-09 21:37:28 -04:00
comex 86f2e1734a Make JIT_UNLIMITED_ICACHE always on.
(1) The alternative doesn't compile.
(2) Despite "unlimited" sounding like a hack, it's actually
    significantly more correct then the alternative, which is no
    emulated icache.
(3) Easier to wrap my head around.
2013-10-09 21:37:28 -04:00
Ryan Houdek 715d5ae8a7 Merge branch 'JitArmIL'
This implements a partial JITIL based off of the JIT64IL. It's enough to run most games, albiet at a slow speed.
Implementing instructions for this IL is really simple since it basically is just enabling based on what is already in JIT64IL, and then enabling each individual IL instruction.
2013-10-09 23:16:07 +00:00
Ryan Houdek 7bc4838243 Add the Arm JITIL to DolphinWX. 2013-10-09 23:09:18 +00:00
Ryan Houdek bd79603c66 [ARM-JitArmIL] Enable a bunch of instructions. 2013-10-09 23:03:39 +00:00
Ryan Houdek f5e1b4659a [ARM] Clean up LSL, LSR, and ASR emitters, we don't need a separate instruction for each to support registers. 2013-10-09 22:57:31 +00:00
Ryan Houdek 4914665429 [ARM-JITArmIL] Remove the SystemRegisters file. 2013-10-09 20:59:15 +00:00
Rachel Bryk cc05f66ba1 Don't prepend file:// in wxUtils::Explore() on windows. Wxw will just remove it, and/or blow up trying to remove it, if the path isn't ascii.
Fixes issue 6721.
2013-10-09 16:18:33 -04:00
Rachel Bryk 99c89ae109 Fix unicode support for File::Rename() on windows.
Partial fix of issue 6721.
2013-10-09 15:33:21 -04:00
comex d5e40bfb01 Don't waste time looking up the block if enableBlocklink is off anyway. 2013-10-09 15:01:55 -04:00
Matthew Parlane 414ed6ef63 C.K. should fix his website before throwing stones at obsolete xml. 2013-10-09 23:56:16 +13:00
Matthew Parlane fbcc41c18e Fix references for OGL, SW and D3D. 2013-10-09 23:49:00 +13:00
Matthew Parlane 935ed814ea Missed a accept error handler.
Init instead of memset.
2013-10-09 23:35:29 +13:00
Matthew Parlane f811dbb575 Fix accept() bug, which was using the wrong isRW for error conversion.
Also fixed a debug issue where local_name is used uninitialised.
2013-10-09 22:16:04 +13:00
Ryan Houdek 932586f743 [JitArmIL] Fix Windows build? 2013-10-09 00:55:43 +00:00
Ryan Houdek 4263f062b0 [JITArmIL] Fix JITIL compiling on x86. 2013-10-08 19:16:27 -05:00
Ryan Houdek ce5dbfe7a7 [ARM-JITArmIL] Begin merging of the two IL cores in to a common source base. 2013-10-08 19:23:37 +00:00
Ryan Houdek a0f2183424 [ARM-JITArmIL] Provide the necessary instructions to allow the JitArmIL to actually run. Disable branch instructions as well for now since one is wrong somewhere. 2013-10-08 16:42:33 +00:00
Ryan Houdek 7dd8deecec [ARM] Update the ArmEmitter with a bunch of NEON emitters. This adds around 47 instruction emitters if I counted correctly. None well tested at this point. On going to add all the NEON emitters. 2013-10-08 10:17:01 +00:00
Matthew Parlane 4a0745799f Missed OGL includes apparently. 2013-10-08 18:03:33 +13:00
Matthew Parlane eb480a406c Fix Windows vcxproj files. 2013-10-08 17:52:18 +13:00
Ryan Houdek 0236ba3f86 [ARM-JITARMIL] CMP optimization. Int3 IR. DownCount added. 2013-10-07 23:25:13 +00:00
Jasper St. Pierre 9920362581 Fix MSVC project files
yay relative paths
2013-10-07 18:50:21 -04:00
Jasper St. Pierre a7c7208103 Put Plugins/ in Core/, rename to VideoBackends 2013-10-07 10:37:01 -04:00
Ryan Houdek a4eab75d15 [ARM] Beginning of JitArmIL JIT recompiler. This code is entirely based off of magumagu's work with the JIT64IL. This puts down the base needed for the recompiler. Starfield actually runs quite a few blocks being mysteriously dying while most other games just exit out due to an instruction not being done yet. A lot of this code can be tidied up and actually shared between the two IL recompilers but isn't yet done. 2013-10-07 14:25:07 +00:00
comex d6f0ecebb4 Fix updating the register even if an exception occurred in MMU mode. 2013-10-07 02:34:38 -04:00
comex a9908fdf09 Fix build issues on OS X i386. 2013-10-07 02:16:51 -04:00
Ryan Houdek c054049712 Fix PixelShaderGen from the previous commit. 2013-10-06 21:54:09 -05:00
Ryan Houdek 26c38648ec [Android] Missed a few things for PowerVR544MP3 'support.' It doesn't actually get any video output on it just like Tegra 4. 2013-10-06 21:51:41 -05:00
Ryan Houdek d4bd5fde71 Only emit the texgens if they are used, not every single time do all of them. 2013-10-06 21:32:05 -05:00
Tony Wasserka ed88cf6cad Removing more references to D3D9. 2013-10-06 13:37:10 +02:00
Tony Wasserka 5de6726658 Remove another D3D9 reference. 2013-10-06 13:30:59 +02:00
Tony Wasserka d198fee21b Remove more references to D3D9... 2013-10-06 13:30:59 +02:00
Tony Wasserka 61ed40749f Shader generators: Remove any references to D3D9 and cleanup the affected code. 2013-10-06 13:30:56 +02:00
Tony Wasserka 0e2e71e483 Remove some now unused VideoConfig settings. 2013-10-06 13:28:46 +02:00
Tony Wasserka 3b188b0481 VideoConfigDiag: Update video backend description to reflect the D3D9 removal. 2013-10-06 13:28:45 +02:00
Lioncash 0d4df39e1f Remove D3D9 related files.
Cf. issue 6167 for a list of shortcomings that made us decide on removing the backend.
2013-10-06 13:28:41 +02:00
Ryan Houdek 6bdcde9dd6 [Android] Tegra 4 'support.' This brings up the OpenGL backend to support Tegra 4 to the point where it will run games but it doesn't have any video output for some reason. This is a large change that doesn't actually change much functionally. Walking through the changes.
It changes the string in the Android backend select to just OpenGL ES.
Adds a check in the Android code to check for Tegra 4 and to enable the option to select the OpenGL ES backend.
Adds a DriverDetails bug under BUG_ISTEGRA as a blanket case of Tegra 4 support.
The changes that effects most lines in this change. Removing all float suffixes in the pixel/vertex/util shaders since OpenGL ES 2 doesn't support float suffixes.
Disables the shaders for reinterpreting the EFB format since Tegra 4 doesn't support integers.
Changes GLFunctions.cpp to grab the correct Tegra extension functions.
Readds the GLSL 1.2 'hacks' as GLSLES2 'hacks' since they are required for GLSL ES 2
Adds a GLSLES2 to the GLSL_VERSION enum.
Disable the SamplerCache on Tegra since Tegra doesn't support samplers...
Enable glBufferSubData on Tegra since it is the only mobile GPU to correctly work with it.
Disable glDrawRangeElements on Tegra since it doesn't support it, This uses glDrawElements instead.
2013-10-06 03:12:29 -05:00
skidau 2b08172a45 Corrected the XMM0 processing for pairedStoreQuantized in the x86 build.
Updated the PC for the fifo writes processing in the less common case.
2013-10-06 16:31:34 +11:00
Matthew Parlane 8722b9cfb5 Missing break for IOCTL_ES_DELETETITLECONTENT 2013-10-06 16:22:44 +13:00
Lioncash a7d073b0da [Core] Simplify a loop within function Run() in Interpreter.cpp. The increment variable for the for loop is never used at all, so it's sensible to replace it with a while loop. 2013-10-05 14:38:21 -04:00
skidau 2d00c3a4f8 Added code to update the PC before doing a fastmem write. Fixes games with freezing and FIFO errors since r2a339c926e43c11f7b9acc8d3af202f0be54e2b0. 2013-10-05 23:23:49 +10:00
comex 6498a77362 Fix storeSingleFloat stack alignment. 2013-10-05 07:56:57 -04:00
comex 21a114ec28 ...Forgot the XMM regs for x86. 2013-10-05 01:17:34 -04:00
comex 144d7e5500 Fix build-breaking typo. 2013-10-05 01:08:08 -04:00
skidau 8324510d65 Removed the IOSVersion check (caused some Wii games like Battalion Wars 2 not to boot). 2013-10-05 13:07:40 +10:00
skidau b7d1c03c8a Added a check for the IOS version before overriding the OSGetResetCode() function.
Fixes issue 6700.
2013-10-05 12:41:59 +10:00
comex f6c0fb7bbe Merge branch '6663'
Should fix some fastmem-related bugs and possibly improve performance a bit.
2013-10-04 21:19:40 -04:00
comex a51eb5fd19 Fix idle skipping.
It incorrectly continued to test EAX after it was changed to load
directly to the assigned register.

Also switch from a flush to ABI_PushRegistersAndAdjustStack, to avoid
needless flushing in the no-idle case.
2013-10-04 20:33:39 -04:00
comex 3679f9ba60 Don't push registers before pairedStoreQuantized, that's dumb.
And fix some stuff up.  It would probably be good to unify the stack
handling some more rather than having ABI_PushRegistersAndAdjustStack do
part of it and ABI_AlignStack the rest, causing unnecessary subtract
instructions on Linux x86 (only).
2013-10-04 15:48:06 -04:00
LPFaint99 8c103a8dee ChooseMemcardPath bugfix: check for a directory separator before converting an absolute path to a relative path.
if the exe directory and the save directory had the same prefix, .../dolphin emulator/... and .../dolphin/... the path would previously have been incorrectly changed
2013-10-04 11:31:22 -07:00
comex a91469ffa5 Fix stfd, which was broken in the fastmem writes commit. 2013-10-03 18:22:35 -04:00
comex 5e4665301b Finish replacing ThunkManager with ABI_PushRegistersAndAdjustStack.
As part of that, change SafeLoadToEAX to SafeLoadToReg, and have JitIL
use that, which should fix fastmem on JitIL.

This should also fix a potential stack corruption issue with x86.
2013-10-03 18:22:35 -04:00
comex a53dc6f981 Remove profiled re-JIT support in JitIL.
It's extremely unsafe, unused (not exposed in the GUI and not present in
any gameconfigs), and mostly obviated by fastmem.  Although this type of
thing could theoretically be useful someday for fastmem support with
MMU, it's probably not the best way to do it, the existing
implementation is way too simplistic, and it can always be dug up to
provide support for a new implementation if needed.

Not like it's a big deal to keep it working, but it really seems
pointless.
2013-10-03 18:22:12 -04:00
comex 3b0c0e2500 Trap to the debugger properly after BackPatch failure. 2013-10-03 18:21:29 -04:00
Ryan Houdek fe3d0c9aa2 [ARM] Disable subfic, it prevents Wind Waker from booting into a save game. 2013-10-03 06:43:16 +00:00
comex cb3afe8f70 Warning fixes:
- Don't use %lu for size_t; they're different on Linux x86.

- has_warned_about_drivers is only used on win32, so only declare it
  there to avoid a unused variable warning.
2013-10-02 20:48:37 -04:00
Lioncash 1ec4894bc5 [Common] Abstract out the decode5A3Image and decodeCI8Image functions in BannerLoaderGC, BannerLoaderWii, and GCMemcard into ColorUtil.cpp. Makes for less copied code and remains functionally the same. 2013-10-02 18:18:54 -04:00
Matthew Parlane cd99e5e3a6 mtspr fall through to interpreter not needed for basic SPRs 2013-09-30 23:43:11 +13:00
Matthew Parlane d261dfaf46 Upgrade libusb to 1.0.16 2013-09-30 18:36:54 +13:00
Ryan Houdek 3c53f2e5e0 [Android] Fix Fastmem on Android 4.2 2013-09-29 20:53:32 -05:00
comex 1a008b9e62 Fix use of ABI_GetAlignedFrameSize. 2013-09-29 16:36:26 -04:00
comex ccbf2ac21a Match ABI_AlignStack with ABI_RestoreStack properly.
The relevant function is entirely unused, so it shouldn't have any
effect.
2013-09-29 14:59:13 -04:00
Rachel Bryk b0200219dd Add literally a million blank inputs in netplay when a wiimote changes reporting mode, just to make nsmbw sync. 2013-09-28 23:39:29 -04:00
comex 853392b790 Use a separate section for enabled Gecko codes, like AR.
This properly fixes default gecko codes.

It makes perfect sense to have two separate cheat windows and two
separate code paths for the different code formats, right?
2013-09-28 23:38:40 -04:00
comex f57ff0a569 Support a gcm revision-specific game ini for cheats + partially fix gecko codes in default ini.
The local ini is not revision-specific because it would require renaming
everything.  Meh.
2013-09-28 23:38:25 -04:00
comex 1ed06f1dc4 Reset wxTAB_TRAVERSAL.
Fixes issue 3903.
2013-09-28 23:00:56 -04:00
Rachel Bryk 9c53a21c18 Allow setting DSP settings via game ini. 2013-09-28 08:31:28 -04:00
Rachel Bryk 785171abb4 Change iTLBHack to a bool.
It is only used as a bool.

Fixes issue 6668.
2013-09-28 08:07:23 -04:00
Rachel Bryk cbd366236a Allow loading save states via drag and drop. 2013-09-27 08:38:12 -04:00
skidau 9a2c7df8dc Added a small disc access delay to fix the missing music in Super Monkey Ball 2. 2013-09-27 20:35:27 +10:00
comex bea76ac129 No need to std::move a return value. Thanks Billiard. 2013-09-26 21:15:35 -04:00
Lioncash 4542b9fcbb [Core] Fix a memory leak in NetPlayServer.cpp in function OnData(). 2013-09-26 15:42:22 -04:00
Ryan Houdek e37cb1fc76 Implement CR1 for the intepreter. To be honest I have no idea why this was never done previously, all it is is copying four bits from the FPSCR register to CR1. This fixes issue 2390. 2013-09-26 18:09:25 +00:00
Ryan Houdek 4efc3e6c8f Quick build fix. 2013-09-26 07:50:24 +00:00
Ryan Houdek feaf65f2ae [Android] The dynamic UBO access isn't actually fixed, contrary to what rev cd646d8e236 said. I presumed it fixed with v4x drivers, but I didn't have the LG G2 with me to test 100% at the time. This won't afflict any Adreno device with v4x drivers since UBOs are disabled for them since they are _broken_. 2013-09-26 07:46:56 +00:00
comex ecca0045a9 Fix Imm8 check.
(I blame whoever made it take a u8 despite logically being a s8.)
2013-09-25 14:29:17 -04:00
Ryan Houdek 691f76b826 [ARM] Implement CR1 setting for the few floating point instructions that I have setting the flags. For the rest, drop to interpreter if it sets CR1. At that point it'll spam a panic alert. I don't quite understand why Interpreter and JIT64/IL don't do this yet, it's a simple 4 bit copy. 2013-09-25 18:17:05 +00:00
comex 54843ad1e8 Need to reload from XMM0 in this case. 2013-09-25 14:16:20 -04:00
Rachel Bryk 74ee85aaac Fix linux, attempt 2. 2013-09-25 06:22:11 -04:00
Rachel Bryk f77b3ccf8a Fix linux, probably. 2013-09-25 06:13:44 -04:00
Rachel Bryk 93f7622e16 Fix changing wiimotes when starting netplay.
AccessWiiMote() crashed for some users. Not sure why...
2013-09-25 05:44:16 -04:00
comex ebe4448749 Save only the registers that need to be saved rather than going through ProtectFunction. 2013-09-25 03:15:53 -04:00
comex 2a339c926e Fastmem writes for x86-64. 2013-09-25 03:15:53 -04:00
comex 18abc33306 2x banner images! 2013-09-25 03:06:27 -04:00
Ryan Houdek 624c92f97e [ARM] fresx/fnmaddsx/fselx/frsqrtex/fnmaddx implementations. 2013-09-25 03:00:57 +00:00
Ryan Houdek ae75f92b2a [ARM] psq_lx/psq_lux/psq_stx/psq_stux implementations. Four more instructions that JIT64 doesn't have. 2013-09-25 02:22:52 +00:00
Ryan Houdek cd646d89e2 [Android] The issue with the dynamic UBO access on Adreno platforms was fixed with v41 of the video drivers. v41 and above of the video drivers fix the spiky polygon problems that are noticed ingames. 2013-09-25 01:50:02 +00:00
Ryan Houdek 357a7707a6 [ARM] ps_cmpu0/ps_cmpu1/ps_cmpo0/ps_cmpo1 implementations. 2013-09-24 21:13:33 +00:00
Ryan Houdek 74bc855f20 [ARM] ps_res implementation. 2013-09-24 21:00:50 +00:00
Ryan Houdek 3b1b0d3fb5 [ARM] ps_div implementation. 2013-09-24 20:46:57 +00:00
Ryan Houdek 94a731b49d [ARM] fctiwx implementation. 2013-09-24 20:37:10 +00:00
Ryan Houdek 482170c3ea [ARM] Implement subfic with optimizations stolen from JIT64. 2013-09-24 19:01:03 +00:00
Ryan Houdek 405aa30cb8 [ARM] Fix fastmem... 2013-09-24 18:03:06 +00:00
Ryan Houdek 8e2e5a4e70 [ARM] Have both fastmem and non-fastmem paths for floating point loadstores because fastmem is completely broken garbage on Android at this point in time. 2013-09-24 17:40:12 +00:00
Ryan Houdek 5866859ff0 Screw you comex, this doesn't even make any damn sense. 2013-09-24 17:25:13 +00:00
Ryan Houdek eb6ed3e42a [ARM] Change all floating point loadstores to fastmem implementations except lfs since all floating point accesses tend to be to RAM space. lfs tends to get used to write quickly to the gatherpipe and other places, look at the JIT64 implementation to see how to make it quicker. 2013-09-24 05:41:58 +00:00
comex 29dc253fde Improve context structure handling on non-Windows.
Instead of copying data into and out of a fake CONTEXT structure with
only a few entries, use the platform specific structure directly with a
typedef and macros.  This is needed because fastmem writes need to be
able to access any register from BackPatch.  It adds a fair number of
repetitive defines, but it's better than the alternative.
2013-09-24 01:38:27 -04:00
comex 4cdce55615 Don't define _M_IX86 on ARM(!).
Also define _M_* in a common location, and clean up code that these
changes break (including DSPJit files that assume X86 yet are compiled
on ARM for some reason...)
2013-09-24 01:30:41 -04:00
comex a7f2160a0f Remove "educational purposes only" from about message.
Dolphin is obviously not marketed as being for educational purposes
only, and claiming otherwise in the about screen would not have any
legal weight, so don't insult everyone's intelligence.
2013-09-24 01:14:56 -04:00
comex 2f384c75d2 Only include scmrev.h from Version.cpp.
This way less code has to be rebuilt whenever that file gets
regenerated.
2013-09-24 01:14:56 -04:00
comex 1bf2c03a99 Fix my stupid attempt to depend on the entire Data/Sys directory.
Instead, if SKIP_POSTPROCESS_BUNDLE is on, just use a symlink, and if
it's off, always run the install.
2013-09-24 01:14:56 -04:00
Scott Mansell 0696fc93b2 Merge branch 'fix-field-ordering'
Fixes 6387
Closes 6635
2013-09-24 13:47:20 +12:00
Ryan Houdek 41ab4a2275 Nevermind the previous commit, SafeLoadToEAX already calls in to UnsafeLoadToEAX if fastmem is enabled. This one just tidys up the code. 2013-09-24 01:40:19 +00:00
Ryan Houdek aa41978834 Enable fastmem for the lfs instruction for unix and OSX as well. 2013-09-24 01:34:08 +00:00
Ryan Houdek 3fe8134f3b [ARM] lfsux/lfdx/lfdux/stfsx/stfsux/stfdx/stfdux implementations. 2013-09-24 01:17:24 +00:00
comex f81df136c2 Add an explicit error message for outdated GCC, and remove some commented out code. 2013-09-23 15:01:38 -04:00
Rachel Bryk 1745bfdc45 Fix crash in gc games in netplay. 2013-09-23 11:07:15 -04:00
comex 299421a02a Don't call into wx in static initializers - crashes on Windows. 2013-09-23 02:58:04 -04:00
Rachel Bryk 0bdef3932f Automatically connect the appropriate wiimotes in netplay. Extensions must still be set manually. 2013-09-23 02:56:17 -04:00
Ryan Houdek 96a77f9feb [Android] Fix the ability to stop the game and start another. 2013-09-23 01:43:18 -05:00
Scott Mansell 440353a3a1 Remove all refrences of field ordering from video backends.
They were unused.
2013-09-23 18:29:31 +12:00
Scott Mansell 4d3c41c8a2 Fixed issues with feild ordering.
This commit fixes issues with PAL games which use the incorrect feild
ordering.
We move all code that deals with indivudal fields from the indivudal
video plugins and VideoCommon and make VideoInterface always pass in
the start address of the whole XFB into VideoCommon.
2013-09-23 16:31:27 +12:00
comex c8c83f7b8a Remove FifoQueue iterator and RemoveThreadsafeEvents.
No point making a whole iterator class for the sake of a function that
doesn't need to exist.
2013-09-22 23:14:42 -04:00
Rachel Bryk 0a093cf1b9 Why do compilers assume i don't know order of opperations? :( 2013-09-22 22:01:25 -04:00
comex e82c9e616d operator= is a function too! std::forward is still appropriate.
Fix the potentially unsafe use of std::move I added to FifoQueue.
2013-09-22 21:15:58 -04:00
degasus 573dbfd494 ogl: drop glsl120 support 2013-09-22 23:45:14 +02:00
Rachel Bryk 12e7c22006 Fix recording netplay with wiimote. 2013-09-22 17:32:11 -04:00
comex 80b14e80b5 Fix crash when a player leaves in NetPlay.
The player ID was being written as int and read as PlayerId (u8).
2013-09-22 16:12:16 -04:00
comex 229b35bb6d When hosting, don't try to connect if listening failed.
If another instance of the server is running on the same computer, this
would cause Dolphin to confusingly connect to it.
2013-09-22 16:11:47 -04:00
comex 17e753faf3 Fix FifoQueue's atomicity on ARM.
Theoretically.
2013-09-22 16:08:09 -04:00
comex c3b9f3556f Make CoreTiming's threadsafe events lock-free.
Not sure if this actually helps in practice, but might help in
pathological cases, and almost certainly can't hurt.
2013-09-22 16:08:01 -04:00
comex 7fe440340f Improve Atomic.h:
- For GCC, use intrinsics that will work on ARM.
- Add AtomicExchangeAcquire.
- Make Atomic{Load,LoadAcquire,Store,StoreRelease} work for any suitable type.
2013-09-22 16:07:45 -04:00
comex 6209067daa Fix stack misalignment fix. 2013-09-22 15:48:27 -04:00
Rachel Bryk 9a6f28fce4 Revert "Fix stack misalignment issues."
This reverts commit d334a9bc23.

This breaks single core.
2013-09-22 14:29:35 -04:00
Rachel Bryk f3469c16a5 Merge branch 'wiimote-netplay'
Conflicts:
	Source/Core/Core/Src/NetPlayClient.cpp
	Source/Core/Core/Src/NetPlayClient.h
	Source/Core/Core/Src/NetPlayProto.h
	Source/Core/Core/Src/NetPlayServer.cpp
	Source/Core/Core/Src/NetPlayServer.h
	Source/Core/DolphinWX/Src/NetWindow.cpp
	Source/Core/DolphinWX/Src/NetWindow.h
2013-09-22 14:27:52 -04:00
Rachel Bryk 75129dc3a7 Merge branch 'to-merge-after-4.0' 2013-09-22 10:58:24 -04:00
Pierre Bourdon 323ecdb772 Ship vcomp100.dll with Dolphin 2013-09-22 16:00:56 +02:00
Pierre Bourdon 1f95a294cd Add the new 'Clean' themes from MaJoR and default to Clean by changing the name of the config key (yes, hack) 2013-09-22 16:00:56 +02:00
Pierre Bourdon 196953c50a Use the new Dolphin icon 2013-09-22 16:00:39 +02:00
Scott Mansell 4758ef9a9e Merge commit 'fa8a4cdbb57e' 2013-09-22 15:25:10 +12:00
Pierre Bourdon 91c0e02609 Don't require running Dolphin in the directory that contain Languages/ on Windows 2013-09-21 21:17:47 +02:00
Glenn Rice d321aa7e7a Pull in translations from Transifex. 2013-09-21 11:24:33 -05:00
Scott Mansell 1fb373f439 Stop dolphin from loading help.png
It was never used, just wasting time and resources.
This patch simply deletes two lines of code.
2013-09-21 06:34:50 +02:00
Rachel Bryk d2c3222fcc Fix copying Sys/Wii to User/Wii on startup.
Fixes issue 6621.
2013-09-21 00:34:19 -04:00
comex d334a9bc23 Fix stack misalignment issues.
- Call ABI_AlignStack even on x86-64.

- Have ABI_AlignStack respect the difference in current alignment
  between the root JIT function, which has a prolog, and
  ProtectFunction thunks, which do not.  This was causing many games
  to crash on start on OS X.  Since this might otherwise mean changing
  the stack pointer before every call...

- Have one prolog/epilog function rather than two (one of which
  definitely did not do what it was thought to do), and make it
  actually work like a normal one, so that the stack frame shows up
  properly in the debugger.  There should be no performance impact.
2013-09-20 16:46:48 -04:00
LPFaint99 95aac4ff68 if a memcard is set to read only, fail more gracefully by reporting when writes to the file fail instead of saying that the file does not exist. 2013-09-20 12:08:58 -07:00
Lioncash 86d70cee15 Turns out CVTSD2SI in x64Emitter.cpp should actually use 64 bits instead of 32. Thanks for pointing that out hk.konpie. 2013-09-20 14:50:27 -04:00
Ryan Houdek 85f067780a [ARM] Reenable flush per instruction with FPR cache. Something is still very wrong. 2013-09-19 02:08:20 +00:00
Ryan Houdek 930f997f04 [ARM] Fix and optimize mtcrf. 2013-09-19 02:08:19 +00:00
Ryan Houdek 1b1b5d2100 [ARM] MicroOps in the branching instructions. 2013-09-19 02:08:19 +00:00
Ryan Houdek 5158aea4dc [ARM] Fix misuse of RBIT in crXXX, meant to use MVN. 2013-09-19 02:08:19 +00:00
Rachel Bryk dc73222bfc Remove suggestion to restart dolphin if a wiimote movie desyncs, since it's no longer necessary. 2013-09-18 21:51:37 -04:00
comex ae607ea1e9 Fix missing md5thread.detach() 2013-09-18 21:48:23 -04:00
Ryan Houdek 452fd84bbd [ANDROID] Fix ARM JIT. Is due to Android using softfp instead of hardfp. 2013-09-18 17:21:22 -05:00
Ryan Houdek 6fc2117503 [ARM] Enable VMOV to move from double VFP reg to two ARM registers. 2013-09-18 17:21:22 -05:00
Lioncash af951f467e [InputCommon] Fix a bug in ControllerInterface::UpdateOutput() in ControllerInterface.cpp. The variable ok_count was never incremented, which caused the function to always return false. 2013-09-18 10:09:32 -04:00
Lioncash d03fb11188 Fix an incorrect opcode for an SSE instruction in x64Emitter.cpp. CVTSD2SI should write 0x2D, not 0xF2.
Also format the NormalSSEOps enum.
2013-09-18 07:43:31 -04:00
Pierre Bourdon 86f6e8cc1e Better fix for issue 6614: ISOProperties should store integer settings for PHack booleans. INIFile is stupid, please kill it with fire. 2013-09-18 12:33:57 +02:00
Pierre Bourdon 7aa98a3830 Fix loading of the 'projection hack enabled' gameini setting
Fixes issue 6614.
2013-09-18 12:23:46 +02:00
Ryan Houdek 24a44ecfb8 [ANDROID] Add two new DriverDetails bugs for Adreno. V45 of the driver has broken shader compilation with UBOs in the shaders, this is most likely fixed with V53 found in the Nexus 5. Add a bug for issue surrounding on screentext and doing a glClear after swap causes screen swizzling and zero frames rendered respectively. On the Java side, pass in the dimensions of the screen swapped since there is an issue with Adreno where it rotates the output 90 degrees for some reason. Disable the GLSL shader cache on Android for now due to the inability to cleanly exit the emulator, this tends to cause the cache to get corrupted. All this together fixes rendering with Adreno 3xx GPUs with driver version v14 and above. In particular my Galaxy S4 still resets with this without the root commands, but my HTC Droid DNA and LG G2 is fine. This must be due to particular 'enhancements' that the Samsung kernel has over the other ones. The speed on Adreno has yet to be optimized, so it will most likely be slow still. Faster than the software rasterizer in any case. The ARMJIT is still broken in at this point, so not much fun can be had. 2013-09-18 02:37:10 -05:00
Lioncash 197b317357 Fix indentation in function PSO_MakeSaveGameValid() in GCMemcard.cpp.
Also move the iterator variable for a for loop into the loop statement in function CARD_GetSerialNo()
2013-09-17 21:27:37 -04:00
Ryan Houdek 39a8645ffc [ARM] Fix the FPR cache to not have to dump registers after every instruction. Add mullwox instruction. 2013-09-17 22:08:23 +00:00
Ryan Houdek 06062d5744 [ARM] Fix VSQRT/VCMP/VCMPE/VCMPE0/VCMP0 emitters when using the high 16 double registers. 2013-09-17 22:08:23 +00:00
Pierre Bourdon ec9c395f4f Add WBFS to the file extensions supported by Dolphin on OSX 2013-09-17 16:50:44 +02:00
Pierre Bourdon e34d8aee1d Add * to the characters leading a verbatim line (used in Gecko codes comments) 2013-09-17 16:50:44 +02:00
Rachel Bryk 47ce3dd09d Really fix reading projection hacks from game inis. 2013-09-17 10:44:47 -04:00
Rachel Bryk e3d01de01d Fix reading projection hack from game inis in ISOProperties. 2013-09-17 10:40:12 -04:00
Rachel Bryk ec5cf60f5e Set L/R buttons in tas input, instead of just the analog triggers.
Fixes issue 6613.
2013-09-17 09:56:45 -04:00
Ryan Houdek 302e9c891b [ARM] crand/crandc/creqv/crnand/crnor/cror/crorc/crxor/mcrf/mfcr/mtcrf/mtsr/mcrxr/mfsr implementations. 2013-09-17 11:00:16 +00:00
Ryan Houdek dcf74ef2b3 [ARM] Renables load instructions with update. 2013-09-17 11:00:15 +00:00
Lioncash 38c7d38800 Fix two wrong opcodes in the x64Emitter. PEXTRW and PINSRW were actually writing PCMPGTB opcodes. Thanks for the help Sintendo. 2013-09-16 15:59:31 -04:00
Ryan Houdek 1529bb48c8 [ARM] Flush the fpr cache between every instruction. Do this until I figure out what is destroying the FPR register states. 2013-09-16 15:44:41 +00:00
Ryan Houdek 9b9526fba2 [ARM] Add dcbt/dcbtst/dcba noops. 2013-09-16 15:13:37 +00:00
degasus 75f2738f5c VideoCommon: fix ogl lighting bug which happens because of NaN emulation
attn is sometimes very big (eg 1e27), so attn*attn doesn't fit into a float.
So the funny part here is: 0.0 * (1e27*1e27) = 0.0 * Inf = NaN

As the shader compiler is allowed to change the order of multiplications,
this issue isn't fixed completely.
2013-09-16 17:10:19 +02:00
Ryan Houdek 98fb4c146e [ARM] ps_sel implementation. 2013-09-16 14:05:50 +00:00
Ryan Houdek cba2dd01bc [ARM] Remove extraneous BKPT from ps_rsqrte. 2013-09-16 13:39:02 +00:00
Ryan Houdek a0a0c526ae [ARM] ps_rsqrte implementation. 2013-09-16 12:59:34 +00:00
Ryan Houdek 7d410ec95c [ARM] VRSQRTE NEON emitter. 2013-09-16 12:58:20 +00:00
Ryan Houdek 5a9cb84ae2 [ARM] ps_nmadd/ps_nmsub implementations. 2013-09-16 12:03:08 +00:00
Ryan Houdek b7f47bc2e1 [ARM] rlwnmx implementation. 2013-09-16 11:53:22 +00:00
Ryan Houdek 43f2313ef9 [ARM] Implement ps_msub. Minor optimizations. 2013-09-16 11:53:21 +00:00
Ryan Houdek 0bcc20ca5b [ARM] fcmpo/fcmpu implementations. 2013-09-16 08:57:51 +00:00
Ryan Houdek c56ecce840 [ARM] fctiwzx implementation. This isn't implemented in JIT64 and it is unstandeable why it isn't. 2013-09-16 07:49:16 +00:00
Ryan Houdek beb41a8f56 [ARM] Add NEON VORR and fix encoding on NEON VEOR. Remove VMRS_APSR because it is the same as VMRS(PC) 2013-09-16 07:49:16 +00:00
Pierre Bourdon f0fc611f15 Add a hacky check for text file size in ReadFileToString. Fixes issue 6455. 2013-09-16 06:57:44 +02:00
LPFaint99 a7e1fb81b1 Merge branch 'wad_gamenames' 2013-09-15 21:38:31 -07:00
Pierre Bourdon 037199c326 Look for portable.txt in the exe directory and activate portable mode if it exists 2013-09-16 05:46:07 +02:00
Pierre Bourdon 2c350a5e6b Fix INIFile ignoring the last line of files 2013-09-16 05:28:14 +02:00
Rachel Bryk b4c082f1b3 No, i don't check what i committed before pushing to master, one week before a release.
Fixes a mistake from  550c855ae6.
2013-09-14 22:58:32 -04:00
Rachel Bryk 550c855ae6 Create blank ini file before editing it, if it doesn't already exists. This prevents the editor from prompting to create it. 2013-09-14 20:30:42 -04:00
LPFaint99 5d202ae9ea proper fix for issue 6206 2013-09-14 15:09:58 -07:00
Pierre Bourdon 24e9aedc14 Merge branch 'global-user-directory'
Please read https://wiki.dolphin-emu.org/index.php?title=Controlling_the_Global_User_Directory
for documentation about this feature.

Thanks to neobrain and RachelB for their work on this change, and thanks to
everyone who helped test it.
2013-09-14 19:24:27 +02:00
Pierre Bourdon 4ef5624f1f Change the name of INI options for memcard paths and NAND path to make migrating User directory from non-global to global easier 2013-09-14 17:46:41 +02:00
Pierre Bourdon 501eafb407 Overlay local gameinis over global gameinis instead of copying.
Huge megacommit because a lot of things needed to be modified to make this
possible.
2013-09-14 17:46:41 +02:00
Ryan Houdek e56071f2be [ARM] slwx/srwx/srawx implementations. 2013-09-14 09:07:34 +00:00
Ryan Houdek 81d7986202 [ARM] Add LSRS emitters, and ASR{S} register emitters. Fixes encoding in LSR emitter. 2013-09-14 09:06:49 +00:00
Ryan Houdek 53498dafeb [ARM] fmaddsx and fmaddx implementations. 2013-09-14 05:52:09 +00:00
Ryan Houdek be4277e8a1 [ARM] stmw implementation. 2013-09-14 05:16:18 +00:00
Ryan Houdek c211d06ad2 [ARM] stfd and stfdu implementations. 2013-09-14 05:09:46 +00:00
Ryan Houdek 6fe86f1fd1 [ARM] cntlzwx implementation. 2013-09-14 04:29:37 +00:00
Ryan Houdek ef2ea31eac [ARM] ps_madds0 and ps_madds1 implementations. 2013-09-14 04:12:57 +00:00
Pierre Bourdon cf4c39d2be IniFile: Support extending the list of loaded keys and sections with data from other ini files.
Changes a lot of parsing code which previously was not aware of the notion of
key/value, and operated only with raw lines. Now key/value is the default and
lines are handled as raw only if they do not contain =, or they start with $ or
+ (for Gecko/AR compatibility).
2013-09-14 06:08:31 +02:00
NeoBrainX d1e96c7282 Display warning OSD messages when a game ini is overriding any settings. 2013-09-14 06:08:31 +02:00
Pierre Bourdon aa202c2e21 Move global gameinis from User to Sys. Get rid of SHARED_USER. 2013-09-14 06:08:30 +02:00
Pierre Bourdon 86e765f3eb Move Themes/ from User to Sys. Only Gameinis remain. 2013-09-14 06:08:30 +02:00
Pierre Bourdon 91a758b342 Move TextureDecoder.cl from User to Sys 2013-09-14 06:08:30 +02:00
Pierre Bourdon c3eec379df Move global User/Wii to Sys/Wii 2013-09-14 06:08:30 +02:00
Pierre Bourdon e7213ca4b1 Overlay the user Shaders/ over the shared one to avoid copying files 2013-09-14 06:08:30 +02:00
Pierre Bourdon 6bdb6585d6 Overlay the user Maps/ over the shared one to avoid copying files 2013-09-14 06:08:29 +02:00
Pierre Bourdon b587af3ea3 Change the initial user directory creation to stop special casing Windows 2013-09-14 06:08:29 +02:00
Rachel Bryk dfcef6890e Use global user directory on windows.
Can override by setting HKCU\Software\Dolphin-emu\LocalUserConfig to true.
2013-09-14 06:08:29 +02:00
Ryan Houdek 4512813cf9 [ARM] lfdu and stfsu implementations. 2013-09-14 04:00:40 +00:00
Ryan Houdek 0ae8fa964d [ARM] lfsu implementation. 2013-09-14 03:51:32 +00:00
Ryan Houdek aaf8e92f78 [ARM] Fixes srawix implementation. 2013-09-14 03:00:33 +00:00
Jasper St. Pierre f830b85d10 NetPlayServer: Drop all the pads for a client when she disconnects
This makes intuitive sense, and prevents issues with users stealing
up all the pads and requiring admin intervention to participate.
2013-09-13 21:33:11 -04:00
comex 0040e66282 Merge branch 'geckoos-fix'
Fixes issue 6551.
2013-09-13 18:18:51 -04:00
comex e15e30602c Fix HLE_HOOK_START in the interpreter. 2013-09-13 18:18:20 -04:00
comex e62bc44f15 Use d01f1bad for the gameid check in RunCodeHandler rather than the actual ID.
This avoids conflict with the icache hack.  codehandleronly.s does not
actually use the gameid, so it shouldn't matter.
2013-09-13 18:14:56 -04:00
comex e6cd3b3283 Fix placement of HLE::Patch to not get overwritten by HLE::PatchFunctions.
(This applies to the existing HBReload hook, which would be erased in
various circumstances depending on the type of file loaded.)
2013-09-13 15:31:51 -04:00
comex a316e2f182 Hook the Gecko codehandler to invalidate the icache.
The codehandler is broken and does not do this itself.  This is a hack,
but a lot simpler than the alternatives.
2013-09-13 15:31:51 -04:00
comex 354b205dec Return correct value to fix libogc's IOS launch sequence. 2013-09-13 15:31:50 -04:00
comex 1f8237c570 Fake ticket views for missing IOS title. 2013-09-13 15:31:50 -04:00
comex 868ab1918b Reset es_inuse upon Reset. 2013-09-13 15:31:50 -04:00
comex 39a524f47d Returning false from an IPC_HLE method should not produce an INFO_LOG.
It's commonly used to delay replying to a message and is in no way an
error.
2013-09-13 15:31:50 -04:00
Ryan Houdek 1680f27739 [ARM] Disable loadstorepaired instructions when fastmem is disabled. 2013-09-12 23:07:19 -05:00
Jordan Woyak ef1d33647f Improve the ArraySize function a bit now that c++11 isn't forbidden there. Error messages should be friendlier now. 2013-09-12 12:57:13 -05:00
Pierre Bourdon 44066326ff Hack the gettext detection a bit to fix translations not working on OSX buildbot builds 2013-09-12 18:22:31 +02:00
Ryan Houdek c1ddeacc9d [ARM] Removes extraneous fpr.Flush 2013-09-12 10:31:29 +00:00
Ryan Houdek aa8f0c2ca4 [ARM] Fixes ps_madd implementation. 2013-09-12 10:30:52 +00:00
Ryan Houdek 8882d27689 [ARM] Fixes the ps_merge00 and ps_merge10 implementations. They both had the potential to overwrite the source registers in the moves. 2013-09-12 10:17:27 +00:00
Ryan Houdek 749b62fcd9 [ARM] Fixes orcx implementation. 2013-09-12 09:55:55 +00:00
Ryan Houdek e1d510c2dc [ARM] Disables loadstores with update because they are broken. 2013-09-12 09:40:10 +00:00
Ryan Houdek 2c33bab1a6 [ARM] lfsx implementation. 2013-09-12 07:52:19 +00:00
Ryan Houdek fa5499e046 [ARM] Disable lmw when fastmem is disabled. 2013-09-12 02:51:38 -05:00
Glenn Rice acbdcc8ea0 Use the POLARSSL_LIBRARY variable to set the link library. This fixes a
possible linkage issue when multiple versions of the library are around.
2013-09-11 22:09:49 -05:00
comex b9c1af04ad Replace the one use of CompileTimeAssert with static_assert (already used elsewhere). 2013-09-11 20:58:47 -04:00
comex 9ee50a2730 Merge branch '6584'
Fix for XP and lifetime issues on Mac.  Fixes issue 6584.
2013-09-11 20:47:27 -04:00
Jordan Woyak fde3815d34 Replace ARRAYSIZE macro with another ugly macro. At least this will throw an error for a non-array and won't conflict with Windows macro names. 2013-09-11 19:19:36 -05:00
Jordan Woyak ce49964dfe Fix "modifier" button functionality et al. 2013-09-11 17:48:04 -05:00
degasus 3fcdf5e25b VideoCommon: use memcmp to compare shader uid 2013-09-11 17:34:23 +02:00
Jasper St. Pierre 2b10142b4f Remove a bunch of old HLE junk
This hasn't been used since 2008
2013-09-10 22:35:52 -04:00
comex 56686666d6 Fix ES_DECRYPT.
ES_DECRYPT is usually called with the in IV parameter equal to the out
IV parameter.  Dolphin was preemptively zeroing out the out buffer,
causing it to read zeroes for the IV.  (Also be more correct when those
parameters *aren't* equal.)

Dolphin now has the dubious honor of having an exploit (smashstack) work
in it.  It crashes in Project M, though.
2013-09-10 17:09:37 -04:00
Shawn Hoffman 484130049d On windows, ignore WM_QUERYENDSESSION and close upon WM_ENDSESSION.
The messages can come through CFrame::MSWWindowProc and the wxApp implementation, so make sure to catch both.
Fixes issue 6546.
2013-09-10 03:14:21 -07:00
Shawn Hoffman 2d492bdc4f Revert "Leak an object when quitting Dolphin to try and fix issue 6546"
This reverts commit 380b780dd1.

Revert "Move the CFrame::ClosePages call from ~CFrame to CFrame::OnClose"
This reverts commit e29de302a6.
2013-09-10 01:04:29 -07:00
comex 4add0f55e0 Fix SDIO HLE writing garbage to memory.
When servicing a write-register request, it wrote the contents to the
register offset plus 0x8d070000, which corresponds to the actual
hardware registers, presumably in case the application wanted to read
them directly rather than with a read-register request.  WriteToHardware
doesn't handle cached writes to registers, so it decided the address was
RAM, applied RAM_MASK, and happily wrote the register contents to
0x81070000, causing random corruption.  Since the PPC does not normally
have access to those registers, there is no reason to be doing this in
the first place.  Use a member to store these values instead.

(Also add a proper DoState.)
2013-09-09 23:57:51 -04:00
Pierre Bourdon e29de302a6 Move the CFrame::ClosePages call from ~CFrame to CFrame::OnClose 2013-09-09 18:49:10 +02:00
Pierre Bourdon 380b780dd1 Leak an object when quitting Dolphin to try and fix issue 6546 2013-09-09 18:44:21 +02:00
Rachel Bryk 0d341e9f28 [NetPlay] Fix copy and paste error. 2013-09-09 03:12:42 -04:00
Rachel Bryk 772046647a Revert "Revert "NetPlay: Use the correct pad mappings for rumble""
This reverts commit 06140e8083.
2013-09-09 03:09:45 -04:00
comex 06140e8083 Revert "NetPlay: Use the correct pad mappings for rumble"
This reverts commit 92c846de45.

It breaks NetPlay entirely for me.
2013-09-09 02:39:28 -04:00
degasus 3ec9f9b64a videoCommon: also reset logicOp on mode switch 2013-09-09 02:30:44 +02:00
comex fe0a450ee4 Don't request authentication (aka I should actually test before committing). 2013-09-08 19:32:14 -04:00
comex 22d9331b96 Improve IOdarwin -
Add requestAuthentication, which might help someone who can't sync, and
better error reporting.
2013-09-08 18:15:49 -04:00
Ryan Houdek 4146e1f3d6 [ARM] Implement psq_st. Optimizations in psq_l and fix all the remaining bugs...except clamping within the max value range of the value. Causes some minor visual effects mostly. 2013-09-08 21:56:17 +00:00
Ryan Houdek c1aa80cefa [ARM] Add support for double registers in VMOV(immediate). Add VEOR and VSTR1. Fix some minor encoding bugs. 2013-09-08 21:56:17 +00:00
NeoBrainX 3db2108dbb Add two buttons to the ISOProperties dialog so that we still meet string freeze deadline. 2013-09-08 21:04:03 +02:00
Jasper St. Pierre 92c846de45 NetPlay: Use the correct pad mappings for rumble
Rename the functions around so we don't get confused again, too.
2013-09-08 13:54:05 -04:00
Ryan Houdek ba0c52b104 [ARM] Optimization to psq_l, no need to push/pop regs anymore. Implement support for single float loading, gives a decent speedup to Ikaruga in menus and game. 2013-09-08 08:18:34 +00:00
Ryan Houdek e5b5713d70 [ARM] Optimize that fastmem load/stores minimally. 2013-09-08 07:37:03 +00:00
Ryan Houdek 2126f405e0 [ARM] 1 instruction optimization for psq_l 2013-09-08 07:25:59 +00:00
Ryan Houdek e6af4970d8 [ARM] Use NEON for loading the values from psq_l, gives a minimal performance increase. This change also begins a new NEONXEmitter for having cleaner support for NEON. 2013-09-08 07:07:15 +00:00
comex 8b4f0ef034 IODummy needs it too. 2013-09-07 16:17:00 -04:00
comex b31502893f Fix lifetime issues in IOWakeup. 2013-09-07 16:13:39 -04:00
comex f4586570ac Use SetEvent instead of CancelIoEx for XP compatibility. 2013-09-07 15:43:17 -04:00
Ryan Houdek 31b69c53f7 [ARM] Implement psq_l for 2x float loads. Couldn't find a game using quantized loads. Huge speed boost to Ikaruga and THP movies with this one. 2013-09-07 17:44:10 +00:00
Ryan Houdek 614a7c2081 [ARM] Clean up some host side register allocations I missed. 2013-09-07 17:44:10 +00:00
Glenn Rice cf09974d61 Merge branch 'translate-about' 2013-09-07 09:56:54 -05:00
Rachel Bryk 33fb1b562f Move some code from NetPlayClient.h to NetPlayProto.h, and only include that outside of NetPlay. 2013-09-07 00:27:35 -04:00
Rachel Bryk 2bc44f98c3 Disable gui controls for gc controllers and memory cards during netplay and movies. 2013-09-07 00:06:03 -04:00
Glenn Rice f1c6357750 Enable translation of the about dialog. 2013-09-06 21:02:11 -05:00
Matthew Parlane d25a8bb6cb Fix reply after shutdown error.
Fixes Issue 6577
2013-09-07 13:07:00 +12:00
Ryan Houdek 67c65831bc [ARM] Make fnabsx and ps_nabs quicker. Sleep deprivation got the better of me. 2013-09-07 00:35:12 +00:00
Ryan Houdek ef05a14757 [ARM] Clean up FPR cache. Rapid fire floating point instruction implementations. Adds 13 new instructions. 2013-09-07 00:19:32 +00:00
comex cd7b97f767 Make JITDISABLE not defeat grep. 2013-09-05 18:38:47 -04:00
Rachel Bryk 3baab41cf4 Allow input display to work with netplay even when not recording. 2013-09-05 16:09:56 -04:00
skidau b2657f6a9b Re-added the HLE code that creates the cdb.vff file on first launch of the Wii sysmenu.
Revert "Remove HLE_IPC_CreateVirtualFATFilesystem as it no longer takes 3 minutes to LLE like the comment says."

This reverts commit 5d47fd1dde.
2013-09-05 21:29:04 +10:00
comex 2fb0147967 Merge branch 'comex-wiimote-fixes'
Should fix issue 6574.
2013-09-05 06:13:33 -04:00
Ryan Houdek a7f244e96d Revert "Revert "[NetPlay] Make the Memory Card A/B setting sync across netplay.""
This reverts commit 5696da0b3e.

JMC messed up, it wasn't due to this commit.
2013-09-04 19:16:28 -05:00
Pierre Bourdon 7acee71c0c Move swapModeTable to a local variable, avoids shader uid generation writing to it 2013-09-04 23:23:29 +02:00
Pierre Bourdon 175707739e Move LightingUidData to the LightingShaderGen header 2013-09-04 23:23:29 +02:00
Lioncash 30da36dd1e Fix an incorrect sizeof in a memset in GDBStub.cpp 2013-09-04 09:01:44 -04:00
comex 8992f58720 Fix Wiimote thread wakeup on externally-triggered destroy. 2013-09-04 05:32:32 -04:00
comex dc87b6d431 Fix OS X code.
- Close the connection properly on destruction.

- Work around what seems like an Apple bug.
2013-09-04 05:32:13 -04:00
comex 872e9ce3da Add accidentally omitted code in last commit.
(m_wiimote_thread_run_loop was being used but not set, causing
Wiimote::IOWakeup to crash on OS X; todo rebase this)
2013-09-04 04:39:18 -04:00
Ryan Houdek 5696da0b3e Revert "[NetPlay] Make the Memory Card A/B setting sync across netplay."
This reverts commit e110f1049c.

This unfixes issue 6575. Reverted due to huge performance hit on behalf of JMC.
2013-09-04 02:55:13 -05:00
comex 02fc68ea5d While we're at it, explicitly wake up the Wiimote thread rather than using a 1s timeout.
This only matters if reads are not constantly being completed by
reports anyway, but seems like a good idea.
2013-09-04 03:25:05 -04:00
comex 906de748bd Refactor thread handling to fix OS X bug.
On OS X, openL2CAPChannelSync registers events on the current
thread's run loop, so Connect needs to be called on a thread that's
going to do CFRunLoopRun; this was causing all Wiimote input to be
ignored.  Easiest way to do that is to use the Wiimote thread, and
have Read call CFRunLoopRun to block on events, bringing OS X's
Wiimote event loop in line with every other platform's.  This also
means that the thread can't be stopped and recreated by Prepare,
so make Prepare notify it instead, which has the side effect of not
making the GUI block on Prepare.  (It would be nice if the GUI also
did not block on searching for devices, because blocking the GUI
is gross, but for now...)
2013-09-04 03:24:00 -04:00
Ryan Houdek d0d053a9f9 Fix for old libc version on bionic. Old versions would crash if the second argument was NULL. 2013-09-04 02:04:31 -05:00
comex 0e949afa57 Remove dubious retain on OS X.
Revert this if the claimed crash actually shows up - or better, figure
out the actual cause.
2013-09-04 01:11:04 -04:00
comex e0214b1a38 Fix syncing wiimotes on OS X.
IOdarwin.mm was assuming that scanning was complete when the run loop
was stopped (which the scan callback does), but somebody else was
stopping the run loop first, causing the scan to be aborted.  Wait until
the scan is actually complete.
2013-09-04 01:04:51 -04:00
comex 1ea8b93667 Fix typo in log message in WII_IOB.cpp. 2013-09-04 00:03:05 -04:00
Ryan Houdek 7e26aace9f [ARM] Reenable ps_add. Issue is due to something in the FPR cache. Still needs to be investigated. 2013-09-04 03:27:45 +00:00
Ryan Houdek 8684b7635a [ARM] Reimplement fastmem for the few loadstores that had it before. 2013-09-04 02:07:57 +00:00
Rachel Bryk e9ffba7ab8 Don't ever ever let CFrame::DoStop() run twice at the same time. 2013-09-03 18:53:23 -04:00
Justin Chadwick e110f1049c [NetPlay] Make the Memory Card A/B setting sync across netplay.
Fixes issue 6575.
2013-09-03 17:41:52 -04:00
Rachel Bryk 8ae10b3e12 [NetPlay] Allow recording movies during netplay.
Fixes issue 6207.
2013-09-03 15:50:41 -04:00
Ryan Houdek 39ad48dfa5 [ARM] lmw implementation. 2013-09-03 09:55:15 +00:00
Ryan Houdek 30cd436e86 [ARM] Merge load instructions in to one. Also rapid prototype 13 more load instructions. This disables fastmem currently for loads. 2013-09-03 09:22:43 +00:00
Ryan Houdek d4d6eb562e [ARM] Fix and enable fastmem for 32bit stores. 2013-09-03 05:05:10 +00:00
Ryan Houdek cc2fa4a003 [ARM] Merge all store instructions in to one. This disables fastmem on stores currently. Hit isn't noticeable since I've also implemented 5 more store instructions with this. 2013-09-03 04:11:25 +00:00
Ryan Houdek dfce0f3b0b [ARM] Merge all store instructions in to one. This disables fastmem on stores currently. Hit isn't noticeable since I've also implemented 5 more store instructions with this. 2013-09-03 04:08:15 +00:00
Justin Chadwick 6b1c8f9d17 [Netplay] Read dual core setting before syncing it with clients.
Fixes issue 6573.

Fixes issue 6535.
2013-09-02 19:55:25 -04:00
comex 5b9254a1cd fix android. 2013-09-02 17:30:31 -04:00
comex 50520c7c3d Make fastmem work under a debugger on OS X.
Not only do debuggers catch the expected SIGSEGV by default, I'm not
sure there's a working way to configure either gdb or lldb not to.  This
commit uses an OS X-specific mechanism to add an exception handler that
runs before the default one.
2013-09-02 17:26:32 -04:00
comex 4c3230bcde Remove accessType from BackPatch's signature in favor of getting it from DisassembleMov.
It isn't easily accessible with sigaction or Mach exceptions (well,
requires an additional system call in the latter), and isn't necessary.

(and get rid of the enum, because it's only used once, and the comments
are more expressive than enum names)
2013-09-02 16:55:22 -04:00
Ryan Houdek a7f3264fed [ARM] Merge a bunch of arithmetic JIT instructions and rapid prototyping of a bunch more. 2013-09-02 14:15:37 +00:00
degasus 1b1cc82e5b rename vertex streaming hack tooltip
String is copyed from issue 6552.
2013-09-02 13:33:36 +02:00
Ryan Houdek 2897619ddb Removal of my terrible idea. 2013-09-02 05:31:48 -05:00
Ryan Houdek e7157e7c52 [Android] Fix fastmem and enable. 2013-09-02 04:10:21 -05:00
Ryan Houdek 831963616f [Android] Make texture loading/deleting/drawing backend non-specific by making them happen in the backend instead of somewhere else. Just a clean up commit really. 2013-09-02 01:40:05 -05:00
Lioncash 0219049c03 Fix an accidental duplicate if-statement handling of 0x1007 in WII_IPC_HLE_Device_net.cpp 2013-09-02 01:28:48 -04:00
comex 35b8dfbe0c A few more warnings. 2013-09-01 23:33:35 -04:00
comex 2630169229 More warnings: mark/avert truncating conversions from float. 2013-09-01 22:59:35 -04:00
comex 4f5729dd59 MSVC warnings. 2013-09-01 22:59:32 -04:00
comex de0a5fdfbb More trivial warning fixes. 2013-09-01 22:59:18 -04:00
comex c08f06f8c9 Fix IOCTLV_SO_GETADDRINFO.
It tried to cast incoming pointers to native ones.  The values are
required to be null anyway, so it doesn't really matter, but it fixes a
warning at least.
2013-09-01 22:58:40 -04:00
comex 186527544b Fix use of deprecated APIs in IOdarwin.mm. 2013-09-01 22:58:38 -04:00
comex 403744dee8 Fix use of deprecated screen resolution API.
(This is currently pointless, as the code in question is not used on OS
X anyway, but I'd like to see that option come back.  In any case, fixes
the warning)
2013-09-01 22:58:35 -04:00
comex fd7cf5bb71 A bunch of trivial changes to fix clang warnings. 2013-09-01 22:58:33 -04:00
comex 71fde876df A fix to my fix to my fix. Sorry.
(Avoid uninitialized m_pFile when loading WADs.)
2013-09-01 17:15:16 -04:00
Ryan Houdek b03ff7a86b [Android] Fix the game thread never leaving. 2013-09-01 01:10:40 -05:00
comex a6f6695ecd Work around MSVC bug, and make it less likely to happen again. Ew.
MSVC insisted on using a copy assignment where a move was intended and
ought to be used.  This would have been caught, because the class in
question inherits from NonCopyable, which declares a move assignment
operator, which is supposed to delete the implicitly declared copy
assignment operator, but of course MSVC didn't do that either, causing a
class that should have been safe to be unsafe.
2013-09-01 00:04:50 -04:00
comex 5209abeb03 Better error reporting for ES / NANDContentLoader. 2013-08-31 23:49:29 -04:00
Jasper St. Pierre 3e049a130b NetPlay: bump proto
As it changed with the pad mapping change.
2013-08-31 23:29:12 -04:00
Matthew Parlane ffe710b4e8 Recvfrom tidy and store laste error. 2013-09-01 15:15:55 +12:00
Matthew Parlane 1c106abf13 Fix sendto.
This fixes Opera, sorry [SS]
2013-09-01 14:30:07 +12:00
Matthew Parlane b11f14c6f7 Fix setsockopt. 2013-09-01 14:03:03 +12:00
Jasper St. Pierre 22f57cf07a NetPlay: Don't bother with the host's controller settings
Use the pad mapping to calculate the number of devices
we want, and add them on each client when we get the
message.
2013-08-31 21:18:14 -04:00
comex b187a38433 Fix inability to boot NAND contents caused by 04c41c1d38.
Might be nice to refactor this code to decrease duplication, but for now
just a fix.
2013-08-31 15:06:00 -04:00
Pierre Bourdon 751c2e69f6 Add a link to our documentations guides in Dolphin 2013-08-31 10:31:43 +02:00
Matthew Parlane 676d78ec41 Fixes accept.
Tested with network demo from devKitPPC :)
2013-08-31 18:47:19 +12:00
comex 11cffddbf7 Fix a trivial bug in b6728c1405. 2013-08-31 01:54:57 -04:00
comex 04c41c1d38 Fix loading DLC using IOCTL_ES_OPENTITLECONTENT & /dev/es state save.
(Intertwined enough that's it's easier to do in one patch.)

(1) /dev/es did not support state save, which could cause crashes and
    incorrect behavior after loading.

(2) NANDContentLoader tried to read all of a title's contents into
    memory when it was first opened.  Two issues:

- If any contents were missing, it bailed out.  However, with DLC,
  only some of the contents may be downloaded, as determined by the
  permission bits in the ticket.  Instead, return an appropriate error
  when a content is accessed that doesn't exist on the filesystem
  (don't bother checking the permission bits though).

- Everything was loaded into memory - even if it consisted of 3 GB of
  songs, which caused Dolphin to lag out for quite a while (and would
  fail on 32-bit).  Instead, open content on demand.
2013-08-31 01:38:52 -04:00
comex 4d6d4a97e4 Make NonCopyable use rvalue references.
This is required to be able to move objects that inherit from it.
(Note that this patch also #ifs out the class for the externals that
include it yet are compiled in pre-C++11 mode.  It shouldn't matter,
since those externals don't use it.)
2013-08-31 01:38:49 -04:00
Matthew Parlane c497d62836 Fix sysmenu test connection bug on Windows. 2013-08-31 16:44:53 +12:00
Lioncash 7ce3d846d5 Indent the code in the previous bug fix I did. Now there aren't braces on the same level as each other. Should have initially done this along with that commit. 2013-08-31 00:39:19 -04:00
LPFaint99 199c4e0d78 Merge branch 'wiiSaveExportFixes'
saves like super smash bros brawl, mario kart, etc which use simple copy restriction via the banner file are now able to be imported natively with the wii/wiiU system menu
save files which include subdirs are correctly packaged

NOTE: saves which include 'nocopy'/'nomove' folders will likely always require homebrew

adds feature to export all wii saves
2013-08-30 20:52:09 -07:00
Ryan Houdek df7b4da13b [ARM] Fastmem is back. Still disabled for Android. 2013-08-31 02:33:12 +00:00
Ryan Houdek 8b0a0daf10 Revert "[ARM] Remove Fastmem. It is buggy and may never have the potential to work correctly."
This reverts commit f485d96b0b.
2013-08-31 02:33:11 +00:00
Lioncash 93b0f46d34 Fix a tiny bug in CodeView.cpp. If statement with more than one line was missing braces. 2013-08-30 18:29:03 -04:00
comex b6728c1405 Avoid unnecessary bundle copies on OS X:
- Make "copy data into bundle" depend on the files actually being
  changed, rather than being run on every build.

- postprocess_bundle depends on system files and checking the Dolphin
  binary and all that, and would be iffy to try to avoid rerunning;
  but it's only needed to produce a redistributable bundle, so add
  SKIP_POSTPROCESS_BUNDLE to skip it for development.
2013-08-30 17:54:52 -04:00
Pierre Bourdon 6428137ca4 Set XAudio2 as the default audio backend 2013-08-30 19:12:46 +02:00
Ryan Houdek 710ac04084 [ARM] Fix the VMOV encoding to encode the destination VFP register correctly. 2013-08-30 05:13:43 -05:00
Ryan Houdek 2c1337eb5f [ARM] Support both hardfp and softfp with lfs and lfd. Fixes these two instructions on Android since it uses softfp calling conventions. This adds a emitter for moving from two ARM Registers to a double VFP reg. 2013-08-30 09:38:11 +00:00
Pierre Bourdon 2ab7fc10da Rollback "DSP on Thread" to only affect LLE.
Keep the threading code in AX HLE in case we want/need to enable it again at
some point. Not too confident about refactoring it right now.
2013-08-30 09:14:30 +02:00
Ryan Houdek 7cceace1ed [ARM] Fix Savestates. 2013-08-30 06:43:18 +00:00
Ryan Houdek 8bb16d8e98 [Android] Android NDK now supports full implementations of std::mutex, std::thread, and std::conditional_variable so there is no need to have our own implementations there now. 2013-08-29 22:29:33 -05:00
Ryan Houdek 10c18e75de [ARM] Fix lfs/lfd. We need to dump the fpr cache at times where VFP registers may be affected. We shouldn't need to flush D8-D15 but it doesn't seem to work. So we have to flush all registers. 2013-08-30 01:11:32 +00:00
Ryan Houdek 96394da1c2 [Android] Let NativeLibrary handle initial folder structure creation. 2013-08-29 18:07:32 -05:00
Ryan Houdek 957c263367 [Android] Add save state native functions. 2013-08-29 17:47:50 -05:00
comex 2de2e774fe Use pthread_setname_np.
This makes SetCurrentThreadName actually work (name shows up in
debugger) on non-Windows.
2013-08-29 16:30:32 -04:00
Ryan Houdek 18fd690533 Only use static iconv on Android. 2013-08-29 05:53:15 -05:00
Ryan Houdek cb8e7a1be5 Work around check_lib not finding iconv. 2013-08-29 05:40:16 -05:00
Ryan Houdek 160d72a9ae [Android] Add in a static libiconv library so non English games don't crash Dolphin Mobile. 2013-08-29 04:43:31 -05:00
Matthew Parlane e7bdcc34e1 Fix some enum alignments 2013-08-28 01:12:24 +12:00
Matthew Parlane b34a5faee7 More cleaning. 2013-08-28 01:07:43 +12:00
Matthew Parlane 2a68b65cda Merge branch 'master' into wii-network 2013-08-28 00:57:37 +12:00
Matthew Parlane 75c398118f Fix headings and more. 2013-08-28 00:57:08 +12:00
Matthew Parlane d493525050 Add socket cleanup.
Don't know what to do with remaining sockops if called from a SetRegister reset command.
2013-08-28 00:37:45 +12:00
Matthew Parlane 6748d5d087 Fix const. 2013-08-28 00:05:43 +12:00
Matthew Parlane eebcea9174 Fixed accept.
Added helper functions.
Removed unused structs.
2013-08-27 23:58:26 +12:00
Matthew Parlane 4644a3bd16 Fix for Just Dance 4
Some clean ups.
2013-08-27 23:58:26 +12:00
degasus 15df7b3445 ogl driverdetails: add flag to disable hacked and pinned memory
pinned memory is broken for index buffers
hacked buffer crashes the amd driver
2013-08-26 19:45:19 +02:00
Matthew Parlane 8006c878f8 Maybe libusb_exit fails when not initialized. 2013-08-27 00:58:20 +12:00
Matthew Parlane aa7319e043 Slightly better error handling for libusb_init not working. 2013-08-27 00:46:04 +12:00
Matthew Parlane 33761c0b65 More cleaning. 2013-08-27 00:22:44 +12:00
Matthew Parlane 69bb04f79f Fixed inconsistent usage of sock and used fd instead. 2013-08-26 23:57:18 +12:00
Matthew Parlane e8cde8464e Code style fix and cleanup. 2013-08-26 23:24:41 +12:00
Matthew Parlane 5ecd86708b Disable Wii Sockets for NetPlay and TAS 2013-08-26 23:24:01 +12:00
Matthew Parlane 15f8603d1f Merge branch 'master' into wii-network
Conflicts:
	Source/Core/Common/Src/CommonPaths.h
	Source/Core/Common/Src/FileUtil.cpp
2013-08-26 00:50:57 +00:00
Pierre Bourdon 0e8f9d8abc Fix a crash in the Wiimote registration code
The code was hitting undefined behavior, causing crashes when starting a Wii
game with Dolphin compiled with gcc >= 4.8.

Might introduce some slight change in the Wiimote activation logic.

Fixes issue 6526.
2013-08-25 21:30:43 +02:00
Rachel Bryk 18749bad68 Actually allow the dump and logs folders to be set outside of user/ 2013-08-25 01:35:32 -04:00
Rachel Bryk 8882f89bbc Allow user folder to be set via command line.
Clean up GetUserPath(), to allow setting any path with it.
2013-08-24 23:15:55 -04:00
John Chadwick 417bfb2630 Send pad buffer to clients when they join; fixes issue 6524. 2013-08-24 21:43:33 -04:00
Pierre Bourdon 0dd98d62fc Remove 'pragma optimize' in fakepoll.h - if optimizations cause breakage the breakage should be fixed instead of disabling opts 2013-08-25 03:04:43 +02:00
Matthew Parlane c4dec3fb3a Remove debug verify cert code. 2013-08-25 13:02:34 +12:00
Pierre Bourdon 73be79f4e0 Fix trailing whitespaces in all files where some were added 2013-08-25 02:49:58 +02:00
Pierre Bourdon 987f4945b5 Fix indentation issues 2013-08-25 02:41:02 +02:00
degasus 1cbc8f8182 sync gpu: check disable flag before volatile
This could be an optimizing as this condition could be moved out of the loop.
So we save an atomic load.
But I don't know if it matters at all
2013-08-24 18:43:07 +02:00
Matthew Parlane 5548e77438 Merge branch 'master' into wii-network 2013-08-24 23:56:31 +12:00
Matthew Parlane d1057b2c6c Fix android part 2 of X. 2013-08-24 23:41:25 +12:00
Matthew Parlane 7de9bda35e Fixes hid.
Fix small bug in ssl when testing certain demos.
2013-08-24 23:16:58 +12:00
Rodolfo Bogado dbcc677922 Merge remote-tracking branch 'remotes/origin/dx9-ssaa-fix' 2013-08-23 22:43:03 -03:00
Rodolfo Bogado 40243a4fe7 Indentation Fix 2013-08-23 22:28:17 -03:00
Jasper St. Pierre dfb34ddef4 NetPlayWindow: Make the spacing consistent on both sides 2013-08-23 20:40:34 -04:00
Pierre Bourdon 9303b57db1 Refactor VideoCommon/OnScreenDisplay.
Use strings internally, use a multimap and std::function for callbacks (instead
of a flat vector + loop over the vector to find the right callback type), fix
coding style issues. Simplify MainAndroid code a bit.
2013-08-24 02:13:54 +02:00
Pierre Bourdon 9deb63a312 Simplify a few OSD::AddMessage calls now that this function accepts std::string objects 2013-08-24 01:44:16 +02:00
Pierre Bourdon 367d6dfd65 Add an OSD message when taking screenshots in D3D9/D3D11
Fixes issue 6486.
2013-08-24 01:41:17 +02:00
Jasper St. Pierre 23ff31451f NetPlay: Rework pad mapping
Pad mapping and the UI behind it is significantly confusing,
and has been confusing users since NetPlay was introduced.

As part of a large code cleanup to help NetPlay more stable,
introduce a better pad mapping system where local pad mapping
is handled by the client. Now, all the server and other
clients know is which player have which controllers, and the
clients only know this so they can show the pad mapping in the
UI; they don't do anything else with it.

A future cleanup will use this pad mapping data to completely
ignore the pads configured in the settings pane on the host.
2013-08-23 09:40:08 -04:00
degasus 7a5374258e ogl: rework DriverDetails framework + detect UBO mesa bug 2013-08-23 10:52:29 +02:00
skidau 1f3a0ff10b Merge branch 'OpenAL-sane-defaults'
* OpenAL-sane-defaults:
  Removed a redundant tooltip text.
  Changed the default audio latency to 2.  Made soft_oal.dll the default on Windows builds as the old OpenAL32.dll is outdated and contains bugs.
2013-08-23 12:15:39 +10:00
Rachel Bryk d3894a0594 Clean up wiimote-netplay. 2013-08-22 11:58:29 -04:00
Matthew Parlane 98a038aefb Fix more *nix issues. 2013-08-23 00:58:12 +12:00
Matthew Parlane b6e054a2be Merge branch 'master' into wii-network
Conflicts:
	Source/Core/Core/Core.vcxproj
	Source/Core/Core/Core.vcxproj.filters
	Source/Core/Core/Src/CoreParameter.cpp
	Source/Core/DolphinWX/Dolphin.vcxproj
	Source/Core/DolphinWX/Dolphin.vcxproj.filters
2013-08-23 00:51:12 +12:00
Matthew Parlane f274b3b074 Fix compile on *nix. 2013-08-23 00:13:26 +12:00
Matthew Parlane 6acbea5c3e Less verbose. Sorry. 2013-08-23 00:10:47 +12:00
Matthew Parlane 124fe24f4c Make wii-network async.
* accept still needs to be made async.
2013-08-22 23:58:56 +12:00
Pierre Bourdon 20e82ec08c Fix the fix to AVX support detection
Should be xgetbv(0) & 6 == 6, not just & 6. Thanks to tueidj for pointing this
out.
2013-08-22 01:08:14 +02:00
Ryan Houdek 1eb1ba8c3d Typo + Add Lima to the driverdetails. 2013-08-21 05:41:32 -05:00
Ryan Houdek 1910f5851f Make us capable of supporting driver specific issues(OSS versus official) 2013-08-21 05:34:52 -05:00
Ryan Houdek 60ccb2f44d [Android] Fix Android 4.3 from crashing on my devices. This was annoying to find. 2013-08-21 00:12:53 -05:00
Ryan Houdek 272dcb8756 In Windows, if BBA can't connect to any TUNTAP device then throw a panicalert, not just an error log. 2013-08-21 03:22:14 +00:00
Pierre Bourdon a3a4f21284 Remove some spurious endlines at the end of log messages 2013-08-21 00:19:50 +02:00
Scott Mansell fa8a4cdbb5 Corrected names of GetXFBAddress* functions in header.
They were named incorrectly in VideoInterface.h, but because nobody used
them outside of VideoInterface.cpp where they were decleared until now, this
hasn't been an issue.
2013-08-20 23:25:24 +12:00
Pierre Bourdon 377202b9f6 Correctly check for AVX support in x64CPUDetect
It's not enough to check for the CPUID bit to know if AVX is supported since
AVX requires OS support (new set of registers == more registers to be saved
when context switching). If the OS does not support, the cpuid bit will still
be set but using YMM registers will cause an illegal exception fault.
2013-08-20 01:25:10 +02:00
Rachel Bryk d3c437819d NetPlay: Add blank inputs when reporting mode changes, so the buffer isn't empty if wiimote 1 isn't polled next. 2013-08-19 17:03:14 -04:00
degasus 814c1c9572 pixelShaderGen: also execute alpha test for always fail with late z test
This should fix issue 6493, but maybe no real issue as this rendering just do nothing
2013-08-19 21:27:54 +02:00
Ryan Houdek ba3d3311bd [ARM] If one requests a FPR to not preload but then later ask it to preload. Make sure to preload it at that time. Would have caused issues with having to make sure the non-preloaded regs were always grabbed last. 2013-08-19 18:13:08 +00:00
Ryan Houdek 8094037104 [ARM] Add ps_sum0 and a disabled ps_madd. 2013-08-19 18:13:08 +00:00
Ryan Houdek 42de733c41 [ARM] Disable floating loadstores as they cause problems. Reenable faddsx/fsubsx as it works with loadstores disabled. 2013-08-19 18:13:08 +00:00
Ryan Houdek 1675f56f02 [ARM] Disable faddsx since it causes problems in crazy taxi. 2013-08-19 12:26:25 +00:00
Ryan Houdek b4baa4fdb9 [ARM] Add mullwx, mulhwux and half implemented srawix instructions. Change fsubsx/fmulsx slightly, still broken. 2013-08-19 06:26:34 +00:00
Ryan Houdek 9bded1382c [ARM] Add ASR/ASRS and UMULLS emitters. 2013-08-19 06:26:34 +00:00
Jasper St. Pierre 7a41acd8ff NetPlayServer: Remove unused code
GetPlayerList is always called on the client.
2013-08-18 21:38:32 -04:00
Pierre Bourdon 5c3dcc50bc Add an INI option to not loop FIFO playback and stop emulation when it's done 2013-08-19 01:39:00 +02:00
LPFaint99 c2d208df96 add the ability to export all save files 2013-08-18 15:02:40 -07:00
LPFaint99 477c21e946 fix import/export of games with folders.
remove copy protection bit from banner
	- should allow *some* copy protected games to be moved to a real system;
	ex: super smash bros brawl, mario kart
games with a nocopy/nomove folder cannot be imported to a real system without using homebrew tools, warn for these saves
	ex: guitar hero
remove some unneccessary class fields
the class is still incredibly ugly :(
2013-08-18 15:00:50 -07:00
Ryan Houdek 9f4ca0e0a7 [ARM] JitASM miroops. No functionality change. 2013-08-18 17:45:04 +00:00
Jasper St. Pierre 5782530b40 NetPlayProto: bump netplay version
Since the packet structure changed.
2013-08-18 09:10:15 -04:00
Justin Chadwick 26242de914 Increases Gamecube pad polling rate during netplay to normal. Also re-add dualcore setting syncing to netplay, which I had erroneously removed. 2013-08-18 08:19:16 -04:00
Rachel Bryk 894e29b809 Fix comments, and send wiimote mapping to new users. 2013-08-18 05:17:06 -04:00
skidau c774fb4880 Removed a redundant tooltip text. 2013-08-18 17:09:01 +10:00
skidau 5cec914484 Changed the default audio latency to 2. Made soft_oal.dll the default on Windows builds as the old OpenAL32.dll is outdated and contains bugs. 2013-08-18 17:03:21 +10:00
Ryan Houdek ba76b016da [Android] Fix Wii games. 2013-08-17 19:41:28 -05:00
Ryan Houdek 7294fe5a3f Change per instruction run counts to u64 on all platforms. JIT64 and JITIL runcount isn't implemented properly(and is disabled) so this doesn't effect them. 2013-08-18 00:15:47 +00:00
Pierre Bourdon d6fe9c639b Add an OSD message to remind the user if Shader Debugging is enabled
Fixes issue 6497.
2013-08-17 23:48:06 +02:00
Jasper St. Pierre 756bf93111 NetWindow: Move "Write memcards" checkbox to be host-only
The setting is propagated from the host, so the client checkbox would
be ignored anyway.
2013-08-16 21:42:38 -04:00
Ryan Houdek 7934df3879 Remove a redundant check in the fifo. 2013-08-17 01:27:08 +00:00
Matthew Parlane d0d162e6ad Fix really stupid optimise on Windows.
Possibly explains speed difference from master.
2013-08-17 12:16:51 +12:00
Ryan Houdek 08b27bb3b8 In the EGL backend context interface, don't call eglMakeCurrent. This was only done to pull in some information to the info log. This is necessary since eglMakeCurrent binds the context to the current thread and we need to destroy the context and reinitialize it when jumping to a new thread. We already call MakeCurrent in Video_Prepare which is done in the new thread. 2013-08-16 23:41:45 +00:00
NeoBrainX 1ba98550ef VideoConfigDialog: Rephrase "Hacked Buffer Upload" and its description to something less technical. 2013-08-16 14:26:50 +00:00
Rachel Bryk 89d324786a Prevent stopping emulation before fully booting. This can sometimes cause dolphin to crash. 2013-08-16 10:04:08 -04:00
Ryan Houdek da560ecefc On CoreParemeter member object creation make sure to set bEnableDebugging, bAutomaticStart, and bBootToPause to default values so they aren't unitialized. This caused a issue in particular on the Android builds where bBootToPause would cause the games to boot in to a paused state, effectively causing the application to need to be forced closed and reran multiple times in order to test anything. 2013-08-16 07:30:53 -05:00
Ryan Houdek 367f294ed2 [Android] Make sure to unallocate the correct memory size in MemArena. 2013-08-16 04:55:43 -05:00
Matthew Parlane 59e060aba2 Missed some VS build options. 2013-08-16 21:42:31 +12:00
Matthew Parlane 9de7611ff9 Merge branch 'master' into wii-network
Conflicts:
	CMakeLists.txt
	Source/Core/Core/Core.vcxproj
	Source/Core/DolphinWX/Dolphin.vcxproj
	Source/Core/DolphinWX/Dolphin.vcxproj.filters
	Source/Dolphin_2010.sln
	Source/VSProps/Dolphin.Win32.props
	Source/VSProps/Dolphin.x64.props
2013-08-16 19:17:07 +12:00
Rachel Bryk c7025989f8 Probably worthless commit that may fix wiimote netplay buffer problems. 2013-08-15 22:31:36 -04:00
Pierre Bourdon c3065ecb66 Fix compatibility with the SDL2.0 release.
SDL2.0 removed SDL_HAPTIC_SQUARE because of ABI issues (see comment #7 on issue
6491 by Ryan C. Gordon from the SDL project). It will be reintroduced again in
2.1, so keep the code and #ifdef it away.
2013-08-15 22:18:40 +02:00
Rodolfo Bogado ba6a67a5f1 Merge branch 'master' of https://code.google.com/p/dolphin-emu into dx9-ssaa-fix 2013-08-15 13:49:53 -03:00
Matthew Parlane 417552b21e Not sure what that was. 2013-08-16 01:06:44 +12:00
Pierre Bourdon c6d8d52041 Fix a warning introduced by the recent netplay UI changes 2013-08-15 15:05:20 +02:00
Rachel Bryk 6d67ea2fda Merge remote-tracking branch 'origin/master' into wiimote-netplay 2013-08-15 09:00:04 -04:00
Matthew Parlane d6ec6ae97a Fix polarssl on Windows. 2013-08-16 00:24:10 +12:00
Matthew Parlane d8b39b9dcf Support PolarSSL on *nix
Removed unneeded PolarSSL directories.
Remove duplicate sha1 and md5 files.
Define out SSL test file writing.
Fix format string bug and warning.
2013-08-15 23:36:17 +12:00
Matthew Parlane b93d62dcb8 Remove LTCG and platform toolset, fix code style. 2013-08-15 21:43:43 +12:00
Matthew Parlane fede38985e Replace OpenSSL with PolarSSL
Works on windows, not yet cmake.
2013-08-15 20:47:47 +12:00
Rodolfo Bogado 979718484f Merge branch 'master' of https://code.google.com/p/dolphin-emu into dx9-ssaa-fix 2013-08-15 00:21:28 -03:00
Jasper St. Pierre 3380e47ca7 MemArena: Free memory for 64-bit machines
Make the logic here a lot simpler. Patch contributed by Google Code
user plbl4ster.
2013-08-14 20:34:15 -04:00
Jasper St. Pierre 1826fce946 NetPlay: Make sure the server knows it's stopped when it's stopped
This is embarassing.
2013-08-14 18:36:09 -04:00
Pierre Bourdon 7622d5b354 Only call SetGenerationMode from BPWritten if the cull mode changed.
Should decrease CPU usage on the GPU thread by a bit in the OGL backend.
2013-08-15 00:26:03 +02:00
Jasper St. Pierre 998194246c NetPlay: Disable the "Start" button while the game is running 2013-08-14 18:16:07 -04:00
Jasper St. Pierre 1c74e412e2 NetPlay: Remove the "Stop" button
Now that the host can simply close the window, there's no need for this extra control.
2013-08-14 18:16:06 -04:00
Jasper St. Pierre 5241deaebe NetPlay: Allow hosts to stop the game by closing the game window 2013-08-14 18:16:05 -04:00
Jasper St. Pierre 92f8d79574 NetPlay: Set the pad buffer size on server creation
If we don't do this, then when the game starts we'll send out the
buffer size to clients being a super large value of junk, and they'll
hang forever trying to accumulate an input buffer a size that they'll
never ever reach in a million years.

This never manifested in release builds for some reason.
2013-08-14 18:15:28 -04:00
Pierre Bourdon 26f58e1ba5 Add an option to enable performance queries in gameini files, disable it by default 2013-08-14 23:16:46 +02:00
Pierre Bourdon ffdd79df36 Move VideoBackendBase from Common to VideoCommon 2013-08-14 23:16:46 +02:00
NeoBrainX 0cd94b5bc7 VertexShaderGen: Cleanup. 2013-08-14 11:47:23 +00:00
Rodolfo Bogado 85f91d66ba Merge branch 'master' of https://code.google.com/p/dolphin-emu into dx9-ssaa-fix 2013-08-13 17:30:22 -03:00
John Chadwick a791733c27 Fix invalid C++ code (returning reference to local) - thanks devm33. 2013-08-13 14:47:32 -04:00
Rodolfo Bogado 9e0fc8b42d Merge branch 'master' of https://code.google.com/p/dolphin-emu into dx9-ssaa-fix 2013-08-12 21:32:25 -03:00
NeoBrainX c05aa0141d ShaderGen: Optimize out most function calls for uid generation. 2013-08-12 18:30:42 +02:00
NeoBrainX fe2ca814c5 LightingShaderGen: Use macro magic instead of snprintf. Should fix performance problems. 2013-08-12 18:30:42 +02:00
NeoBrainX 22d9736787 ShaderGen: Static inline everything. 2013-08-12 18:30:42 +02:00
NeoBrainX 69a5a79c03 PixelShaderGen: Optimize shader uid data order. 2013-08-12 18:30:42 +02:00
NeoBrainX 7a1940020d VertexShaderGen: Optimize shader uid data order. 2013-08-12 18:30:41 +02:00
Rodolfo Bogado 5948665cd6 Merge branch 'master' of https://code.google.com/p/dolphin-emu into dx9-ssaa-fix 2013-08-12 10:30:19 -03:00
Jasper St. Pierre d0084cb41d Main: Fix code that creates the BIOS subdirectories
We need to ensure that the file path ends with DIR_SEP, as
File::CreateFullPath is a very naive function.
2013-08-12 06:23:58 -04:00
NeoBrainX 4c22e1264e PixelShaderGen: Do not write depth in pixel shader if depth testing (and thus writing) is not enabled. Should improve performance quite a bit in some cases.
Fixes issue 6474.
2013-08-12 09:33:36 +00:00
Ryan Houdek 7f3c06de27 [ARM] Add a few instructions. 2013-08-12 02:52:56 +00:00
Rodolfo Bogado f4000b6b42 Add the ability to force Dual Source Blending in the configuration file.
this way everyone can check if their hardware support this feature in dx9
2013-08-11 18:48:31 -03:00
Jasper St. Pierre 22b3c26654 Main: Create BIOS subdirs of GC userdir on load
So that users don't get confused about where to place the BIOS files
2013-08-11 14:33:26 -04:00
Jasper St. Pierre d0729983b0 Check for GC BIOS in userdir before sysdir 2013-08-11 14:13:45 -04:00
Jasper St. Pierre b5c2737c9f IniFile: Don't parse comments after the [Section] brackets
This is non-standard behavior. We won't fail to parse, but we now
won't write them back out either.
2013-08-11 11:32:10 -04:00
Jasper St. Pierre 0eaea5f4df IniFile: Remove support for comments anywhere but the beginning of lines
The MS INI parser and most other INI parsing libraries APIs only support
comments at the beginning of lines. Right now, some Game INI files use sections
like:

  [OnFrame]#Add memory patches here

But these section headers are parsed separately, so this should not break
them.
2013-08-11 11:30:52 -04:00
Ryan Houdek 4ed8972c30 [ARM] Implement andx, andi_rc, and andis_rc. 2013-08-11 08:21:17 +00:00
Ryan Houdek 42aef24d78 [ARM] IMM support for all integer instructions that call ComputeRC. Small FPS gains everywhere. 2013-08-11 07:41:23 +00:00
Ryan Houdek ef83d03dc0 [ARM] Fix ori again. 2013-08-11 05:07:20 +00:00
Jordan Woyak a279001472 Remove "-0" from stable version numbers in a more foolproof manner for vs and cmake builds. 2013-08-10 17:19:19 -05:00
Jordan Woyak 951d8e356a Remove some non-catastrophic IPC_HLE wiimote related PanicAlerts. We have logging for this.
Fixed issue 6464.
2013-08-10 16:50:12 -05:00
NeoBrainX eed36cbf78 D3D11: Implement zcomploc for hardware supporting D3D 11.0. 2013-08-09 22:20:35 +02:00
Ryan Houdek 805009abca Fix a merge fail that happened when I merged in Android. It is just a bit of duplicate code, no issues came from it. 2013-08-09 19:01:27 +00:00
Pierre Bourdon 0aa9308006 Revert "Fix a memory leak in ExpressionParser.cpp"
This reverts commit cce809ac90.

The code was actually correct: "expr" is never allocated when an error is
returned. This means when the expression parser fails, deleting "expr" means
deleting an uninitialized pointer.
2013-08-09 10:46:11 +02:00
Rachel Bryk 90d454d22f Remove -0 from stable release version numbers. 2013-08-08 23:59:53 -04:00
Pierre Bourdon 9ea01aa7a8 Use a multibyte-neutral codepage when calling *printf on Windows.
More explanation in code comments.

Fixes issue 4046.
2013-08-09 00:17:48 +02:00
Lioncash cce809ac90 Fix a memory leak in ExpressionParser.cpp
Because there's a return here, expr should be deleted since it's not assigned to anything before returning.
2013-08-08 17:56:15 -04:00
NeoBrainX 72abe7c654 Fix a stack corruption in ExtendedTrace.
Fixes issue 6454.
2013-08-08 20:29:20 +02:00
Rachel Bryk f51cb0b7eb Fix multiplayer wiimote netplay. 2013-08-07 18:00:38 -04:00
Rachel Bryk 011bcfee34 Misc netplay cleanup. 2013-08-07 10:10:40 -04:00
degasus a6fd2c8227 fix lightning for inconsitent config
It's possible to configure to use the vertex color as lightning source without enabling the vertex color at all.
The old implementation will use zero, but it seems to be wrong (prooven by THPS3), more likely is to disable
the lightning and just return the global color.
This fixes THPS3 on OpenGL, but it isn't verifed on hardware
2013-08-07 14:22:15 +02:00
Rachel Bryk d0f05291e7 Add wiimote support to netplay. 2013-08-07 08:16:41 -04:00
Lioncash 9d0554e4a6 Free two memory leaks in ArmCPUDetect.cpp
Char pointers aren't freed after use.

Fixed this in PPSSPP a few days ago. Forgot to check here for the same thing until now.
2013-08-06 18:17:54 -04:00
Rachel Bryk 88212fba67 Add new Netplay headers to the VS project. 2013-08-05 23:15:53 -04:00
Ryan Houdek 873987bc99 [ARM] Some initial support for immediates in integer. Plenty more to go. 2013-08-05 19:48:15 +00:00
Ryan Houdek 4752eae677 [ARM] Fix IMM support in the register cache. 2013-08-05 18:33:51 +00:00
Jasper St. Pierre 9f90cbee19 NetPlayServer: Close the socket when we're done with it
This would allow a new socket to be created with the same port after
we close it. However, we can't reuse it immediately because of the TCP
TIME-WAIT state.
2013-08-05 06:43:27 -04:00
Jasper St. Pierre 59ab60f37f NetPlay: Supply every player's ping data to the client
This means that we now have feature parity with the combined server
before.
2013-08-05 06:12:56 -04:00
Jasper St. Pierre a3a222bf5b NetPlay: Remove NetPlay.h / NetPlay.cpp
Now the server and client implementations are entirely separate.
2013-08-05 05:05:06 -04:00
Jasper St. Pierre 9e63cebc93 NetPlay: Remove the base NetPlay class
It's only used by the NetPlayClient. For now, keep around NetPlay.cpp,
but we'll remove that soon.
2013-08-05 04:56:30 -04:00
Jasper St. Pierre 3b32d3c90d NetPlay: Split the server out, and make the local system manage a client as well
This should be transparent, but it may cause regressions.

The idea here is that now all players, including the host of the server,
talk to the server through TCP/IP networking. This significantly reduces
our codepaths through netplay, and will prevent strange local-only bugs
from happening.

The cleanup isn't 100% finished yet. The NetPlay dialog still drives the
server through private APIs. I eventually want to sanction off the server
entirely, so all communication is done through TCP/IP. This will allow us
to have high-traffic public servers that can relay multiple games and
lobbies at a time, and split off channel and game management to people
other than the host.

This is all still just a pipe dream, though.
2013-08-05 04:42:26 -04:00
Jasper St. Pierre 9e8655fa1f NetPlay: Remove some dead code 2013-08-05 04:25:16 -04:00
Ryan Houdek 25fc0c27f3 [ARM] Make sure to flush a register location. IMM still doesn't work... 2013-08-05 07:15:15 +00:00
Ryan Houdek f2e43f47a4 [ARM] Add support for IMMs to the GPR reg cache. Not yet using it since it doesn't quite work 2013-08-05 05:26:32 +00:00
Ryan Houdek f485d96b0b [ARM] Remove Fastmem. It is buggy and may never have the potential to work correctly. 2013-08-05 05:26:32 +00:00
Jasper St. Pierre 0e0f0aec6e Core: Remove dead code
We never call SetState with CORE_UNINITIALIZED, and always call
Core::Stop() directly.
2013-08-05 00:03:15 -04:00
Ryan Houdek db93b516b0 [ARM] Missed flushing our register caches in mtmsr. This would cause a buttload of problems, including the suspected ori being wrong issue. So flush caches and reenable ori. 2013-08-05 02:15:25 +00:00
Ryan Houdek bafed349e8 [ARM] dcbst implementation. 2013-08-04 17:44:59 +00:00
Ryan Houdek 522d38d080 [ARM] Implement cmpl 2013-08-04 17:33:43 +00:00
Ryan Houdek f690be3e94 [ARM] Disable ori since it breaks Wind Waker. 2013-08-04 17:05:53 +00:00
Rachel Bryk af71100867 Save DSP on thread setting to config cache when booting.
Fixes issue 6451.
2013-08-04 02:34:39 -04:00
Pierre Bourdon 28e12a4198 Change the OSX CFBundleIndentifier to use the proper domain name 2013-08-03 18:37:57 +02:00
Ryan Houdek cf8e8c91b6 [ARM] Implement lha and fix lfs. 2013-08-03 00:48:45 +00:00
Ryan Houdek ca7fb9f38e [ARM] Fix VCVT F32<->F64 encoding. 2013-08-03 00:48:44 +00:00
Rachel Bryk f58edd018c Remove a couple files which have apperently never been used for anything. 2013-08-02 20:46:07 -04:00
Rachel Bryk 541106d611 Increase number of save state slots to 10. 2013-08-02 20:42:30 -04:00
Ryan Houdek ab0f42636d [ARM] Push new ArmEmitter changes from PPSSPP. Mostly Fixes a few VFP/NEON instruction encodings. 2013-08-02 23:18:44 +00:00
Rachel Bryk c1baed086d Fix hotkeys. 2013-08-02 16:14:34 -04:00
degasus 8f1a2bf43b fix c&p error
This error could change dual vs single core setting
2013-08-02 14:21:34 +02:00
Glenn Rice 95c234ceb3 Merge branch 'join-wiimote-scanning-thread' 2013-08-01 07:19:00 -05:00
Glenn Rice be76dc153b Re-add the HandleWiimoteDisconnect calls to the RealWiimote::Shutdown
routine.  This is needed to actually disconnect real wiimotes and delete
the corresponding wiimote objects when the app exits.
2013-08-01 07:16:51 -05:00
Rachel Bryk 8c5bc2ba3c Allow setting dsp on thread via game ini.
Also force TWW to LLE and no dsp on thread.
2013-07-31 21:35:22 -04:00
Glenn Rice 7aae59a766 Add comments to explain the usage of the WiimoteReal Stop/Shutdown
routine usage.
2013-07-31 09:19:28 -05:00
Glenn Rice 01987be6b9 Make sure that WiimoteReal is really shutdown on app exit. Particulary
ensure that the wiimote scanning thread is joined.  This fixes a crash
on shutdown if scanning has been initiated.
2013-07-31 09:09:18 -05:00
Rachel Bryk 44d17b5da5 Add hotkeys to increase/decrease the frame limit. 2013-07-30 19:25:12 -04:00
Rachel Bryk a33b1fcdc6 Make hotkeys for togglign IR, AR, efb copies and fog settings configurable. 2013-07-30 05:49:02 -04:00
degasus 4987f89ecc simplify my last commit 2013-07-29 23:26:18 +02:00
degasus d029fc2f9f remove printf in shader uid generation 2013-07-29 20:52:24 +02:00
Pierre Bourdon 8529addcc6 Removing the 'Clearing code cache' OSD message in Release builds 2013-07-29 09:56:50 +02:00
degasus 531c299bde fix movie player on linux
thx @ delroth for the patch
2013-07-28 17:55:35 +02:00
Ryan Houdek 5d38a9c91e [Android] Some minor cleanup. 2013-07-27 15:09:33 -05:00
John S. Peterson 9b20280bcf Changing the Nunchuk stick axis from center to center + 1
if the other axis isn't at center

because

* it's expected by some emulated programs
2013-07-26 23:47:50 -04:00
John Peterson 23f59a82f7 Adding Nunchuk stick calibration
because it's useful for the hybrid Wiimote mode
2013-07-26 23:47:23 -04:00
Ryan Houdek 4aba0135e1 [Android] Qualcomm Swap hack isn't needed anymore due to the new StreamBuffer type. 2013-07-26 21:49:48 -05:00
Ryan Houdek b6e9a75bdf Good Job Windows. Fixes compiling... 2013-07-27 00:53:53 +00:00
Ryan Houdek f786f0f0c6 Remove the broken buffers bug on Mali hardware since it isn't needed anymore using the glBufferData route in the StreamBuffer class. 2013-07-27 00:41:38 +00:00
Rachel Bryk bff2bc1288 Clear patches on shutdown.
Fixes issue 6434.
2013-07-25 16:43:00 -04:00
Ryan Houdek e0a5f7842e Fix Mali-T604 shader compilation 2013-07-25 16:13:33 +00:00
Ryan Houdek 672871b3be Add in the Mali driver bug so we can call glFlush every flush. It seemingly is quicker calling flush every time instead of every n times. 2013-07-25 05:44:20 +00:00
Rachel Bryk 3f03588dec Tas input works with bongos too. 2013-07-23 20:43:51 -04:00
Braden ec148008d0 Clean up code for multiple GameCube Controllers
Conflicts:

	Source/Core/DolphinWX/Src/Frame.cpp
	Source/Core/DolphinWX/Src/FrameTools.cpp
2013-07-23 20:35:33 -04:00
Braden 59d6df7046 Adds Support for multiple GameCube Controllers
Conflicts:

	Source/Core/DolphinWX/Src/Frame.cpp
2013-07-23 20:22:08 -04:00
Rachel Bryk 8a4b6f3d73 Forgot this from the last commit. 2013-07-23 19:55:17 -04:00
Rachel Bryk 9fdc7360cd Fix L and R triggers with tas input.
Partially copied from revision 1be844406c, but allows < fully pressed, and without the typo.
2013-07-23 19:44:43 -04:00
Jasper St. Pierre 09338c673c FrameTools: Use the correct window handle for resizing the window
We want to resize the OpenGL window, not the frame window.
2013-07-23 15:02:00 -04:00
degasus 0ba6d12e9d fix a small uid awsome bug 2013-07-23 02:13:40 +02:00
Jasper St. Pierre a963c621dc NetPlay: Sync across whether to save memcards or not
There's no reason this shouldn't be synced other than laziness.
2013-07-22 07:29:15 -04:00
Jasper St. Pierre 6d463d1b67 NetPlay: Allow building a server without a game
This isn't hooked up in the UI yet, but it will allow us to
basically start the server and chat system without choosing
a game.
2013-07-22 07:29:15 -04:00
Jasper St. Pierre 2631ec3cff Core: Remove an unused var 2013-07-22 07:29:15 -04:00
degasus 15b8ac64ef Implement zcomploc on OpenGL4.2+ 2013-07-22 12:02:16 +02:00
Jasper St. Pierre f693488c8a InputConfigDiag: Save the configuration when pressing "OK"
This fixes a common UI complaint of the control dialog UI.
Also, don't close the dialog if we have an error with the expression.
2013-07-22 03:19:38 -04:00
Jasper St. Pierre bc17798ef2 InputConfigDiag: Add a simple error status label
This tells you what you did wrong at a high level if you messed up.
2013-07-22 03:19:22 -04:00
Jasper St. Pierre 3c7f223aa1 Add "Q" / "E" as freelook keybindings
To move the view up and down.
2013-07-22 00:14:42 -04:00
Jasper St. Pierre 52482115e1 Move in-game keybinding handling to a central location
Instead of handling it separately in every backend.
2013-07-21 23:17:16 -04:00
Rachel Bryk e742b32c65 Drag and drop. 2013-07-21 22:25:26 -04:00
Jasper St. Pierre 4981b7cdd3 VertexShaderManager: Make ProjectionHack private
There's no reason to make this public, and it prevents a build
issue with the next commit.
2013-07-21 17:56:20 -04:00
Rachel Bryk 481c081db3 Merge branch 'possibly-useful-netplay-changes' 2013-07-21 13:33:14 -04:00
Ryan Houdek 82f7b20b91 There. Fix all the issues where we are using integers when we should be using floats in the texture conversion shaders. 2013-07-21 12:00:20 +00:00
Ryan Houdek 83a79c28ca Continuation of the previous commit. I missed a integer. 2013-07-21 11:27:26 +00:00
Ryan Houdek 6194234a54 Fix a issue in the texture conversion shaders that was multiplying an integer with a float. 2013-07-21 11:17:21 +00:00
Jasper St. Pierre fec641d14a X11: Don't do a round-trip to the server to figure out our size on configure
Simply use the values from the event structure.
2013-07-21 01:59:40 -04:00
Jasper St. Pierre 01ff85506d X11: Don't use a client event as a wrapper for XMoveResizeWindow
Simply configure the window from here
2013-07-21 01:59:40 -04:00
Jasper St. Pierre ca97b10dda Actually link to XI2
No idea how this was working before
2013-07-21 01:59:40 -04:00
Jasper St. Pierre bd7ca7625b Fix up last commit
I forgot to git add this change.
2013-07-21 00:51:07 -04:00
Max Eliaser fe2fe8b6cc Clean up all the GetName methods for XInput2 controls. 2013-07-20 13:58:02 -08:00
Max Eliaser 9fbc5ff27c Add X11 XInput2 input plugin, including MPX and with support for axis controls.
Based on the original XLib plugin, and thus shares some of its warts.
2013-07-20 13:58:02 -08:00
Rachel Bryk 41fe2e1466 Don't sync dual core setting in netplay. 2013-07-20 13:20:14 -04:00
Rachel Bryk 96219df4fd Allow non-SIDEVICE_GC_CONTROLLER controllers in netplay again. 2013-07-19 22:58:33 -04:00
Rachel Bryk e4767aec55 Sync some important settings with server during netplay. 2013-07-19 18:48:27 -04:00
Rachel Bryk 919e54c695 Automatically connect the appropriate controllers for netplay. 2013-07-19 15:53:20 -04:00
Rachel Bryk 0e1efd7d38 Poll the controllers with the same timing as movies for netplay. Might help prevent desyncs. 2013-07-19 15:01:04 -04:00
Ryan Houdek a3e289e802 [ARM] Reenable FMRX, it seems to work fine. 2013-07-17 04:29:17 -05:00
Ryan Houdek 86826b28dc [ARM] Implement LFD. Reorder VFP register allocation a bit. 2013-07-17 04:23:38 -05:00
Ryan Houdek dc66b3d474 Add Read_F32 and Read_F64 helper functions to MemmapFunctions. 2013-07-17 04:22:47 -05:00
Ryan Houdek 5147e5167b [ARM] Implement xorx 2013-07-17 02:34:20 -05:00
Ryan Houdek b30a697355 [ARM] Disable mfmsr. Implement stb and subfx. 2013-07-17 02:25:21 -05:00
Ryan Houdek 5899013876 [ARM] Implement MFTB 2013-07-17 01:35:07 -05:00
Ryan Houdek fc6e06cb72 [ARM] Implement mfmsr 2013-07-17 01:25:06 -05:00
Ryan Houdek bab3032185 On ARM Hosts, increase the instruction run count to 64bit. 32bit is /very/ quickly overflown. 2013-07-16 22:20:18 -05:00
Ryan Houdek f4b414a9c1 Fix encoding issue with VADD(Integer) 2013-07-16 22:18:15 -05:00
Ryan Houdek 9123f58bd5 Check for IDIVA/IDIVT correctly. Cortex-A5 parts would have had this set since it supports VFPv4 but not IDIVA. Qualcomm Krait/Krait 300 still doesn't report in the kernel that it supports this. 2013-07-16 01:22:25 -05:00
Jasper St. Pierre 4c807fa7b4 Fix Device.h placement in VC++ 2013-07-15 16:24:20 -04:00
Ryan Houdek 737df2a68c Patch from Degasus that removes the last of the the GL_TEXTURE_RECTANGLE usages. This is needed to have GLES3 support. 2013-07-13 17:24:23 -05:00
Ryan Houdek 52cb398804 [Android] Actually push the library file to the correct location. 2013-07-13 10:32:23 -05:00
Jasper St. Pierre b64e882ba5 ExpressionParser: Parse fully qualified control names correctly
Without clearing out the "accumulator" for the backtick parsing,
our control name was full of junk (the previous device name) causing
us to not correctly find the control.

Ensure that always we clear the "accumulator" string during backtick
parsing.
2013-07-12 13:26:09 -04:00
John Peterson c52a583090 Removing reading of the emulated Wiimote state in the real Wiimote mode
because

* the purpose of the emulated Wiimote state in the real Wiimote mode is to store the real Wiimote state rather than synchronise with an emulated Wiimote
2013-07-11 19:11:36 -04:00
degasus a1822a3aca fix AudioCommon::Mixer Buffer indices
This fix the 1h32 audio bug which outputs static sound after 1h32.

The mixer is used for 32->48kHz resampling and as output buffer for the async audio backends.
So this buffer was indiced by a writing and a reading pointer and the count of samples in it.
As this is redundant and the sample count isn't accurate calculateable because of the interpolation,
both indices gets out of sync. So after some time (~92min), this buffer overflows and return only garbage.

thx @ moosehunter + delroth for debugging on this issue. You did the most work :-)
2013-07-11 21:22:38 +02:00
John Peterson fd4a4410e5 Removing wait for real Wiimote connection
when

* opening the Wiimote configuration dialog
* booting from the emulated program entry point rather than a state

because

* it doesn't have meaning in these scenarios
* it has meaning when booting from a state
2013-07-11 11:32:14 -04:00
John Peterson e36757bec1 Adding read data reply to the real Wiimote
because the emulated program expect it
2013-07-11 11:32:09 -04:00
Ryan Houdek 6e74d4b21d [Android] Disable x64MemTools' backpatching. It isn't available on x86 anyway. 2013-07-11 09:00:08 -05:00
Ryan Houdek 012c32c14c [Android] Undefine the swaps in Android completely, not just on ARM Android. 2013-07-11 08:58:10 -05:00
Glenn Rice 8b65775ee1 Fix a couple of compiler warnings that have cropped up. 2013-07-10 15:07:57 -05:00
John Chadwick 16cd26d177 Add UPnP support.
Feedback is in logs as suggested by skid_au. The checkbox is still there, but
mostly for people who would like to opt out (unfortunately, I can not be sure
how this feature may behave for some routers - there's a hell of a lot of bad
UPnP implementations.)

The Visual Studio stuff is a little messy, so I apologize if anything is a bit
off. I tested most configurations and it worked.

I also tested CMake on Debian Wheezy, Ubuntu Saucy, and Mac OS X Mountain Lion.
All seemed to be OK.
2013-07-09 18:08:43 -04:00
Ryan Houdek 379a15ba3b Make confirm on stop default enabled. 2013-07-08 02:56:40 -05:00
Pierre Bourdon 22c80e1dc2 Fix ICC profiles in some of our PNGs (ic_drawer, Dolphin icon).
Also keep a PNG version of bin2c'd resources in order to make these kind of
changes easier in the future.

Fixes recent versions of libpng complaining loudly about our images.
2013-07-07 02:40:59 +02:00
Pierre Bourdon 9b128e9347 Disable LPF filtering in new-ax-hle
The current implementation is broken and this is a non critical feature.

Fixes new-ax-hle regression in Super Monkey Ball.
2013-07-06 14:35:19 +02:00
Pierre Bourdon 7b40874309 Implement AX command 0x11 (SET_OPPOSITE_LR) 2013-07-06 14:35:19 +02:00
Jasper St. Pierre b2e7248b58 LogWindow: Fix a bad initializer
Since these defaults aren't used, don't bother specifying them.
2013-07-05 22:39:18 -04:00
Ryan Houdek d584150851 Remove a warning from ARM includes already defining PAGE_SIZE and a warning in the FPR cache. 2013-07-05 20:56:17 -05:00
Ryan Houdek 7d6b36bf73 Fix most ARM warnings 2013-07-05 19:56:15 -05:00
Ryan Houdek cdfd7905a0 [Android] Copy over DSP roms and font assets on build and first runs. 2013-07-05 19:18:33 -05:00
Matthew Parlane 691900aa90 Disable encryption when checking Wiimote extension for scan.
This is for when we are checking if it is a Balance Board.
2013-07-03 23:05:30 +12:00
Matthew Parlane 998c4042c2 Add ability to dump Balance Board data to local udp port.
This probably won't work on Mac...
2013-07-03 23:05:29 +12:00
Lioncash 03a47d3c6b Fix a case where a boolean check (vector.empty()) was used when a clear (vector.clear()) was intended in ExpressionParser.cpp. 2013-07-02 21:42:44 -04:00
NeoBrainX 1f92ccc228 ShaderGen: Use u8 as uid storage base type. Fixes an off-by-one error introduced in revision bdc28106ee that caused some lighting issues. 2013-07-02 14:48:08 +02:00
Rachel Bryk de369dcc60 Misc cleanup and fixes for some of the bad code i've written.
Fixes a buffer overflow in the sscanf, move the movie.raw to the GC folder, and stops calling GetSettings() twice.
2013-07-01 17:44:42 -04:00
Rachel Bryk e4846de692 Add hotkeys for save/load state to/from file. 2013-06-30 19:01:30 -04:00
NeoBrainX c34c82e7ae VertexShaderGen: Fix a potential bug where vertex shader uids don't change when
pixel lighting is toggled.

Same as revision f524312fd1 but done properly (why is our shader gen code this dumb?).
2013-06-30 14:27:04 +02:00
NeoBrainX b8b5427ba4 VertexShaderGen: Fix a dumb regression from revision f524312fd1. 2013-06-30 11:36:45 +00:00
Jasper St. Pierre d5983b587e InputConfigDialog: Don't show "..." for complicated expressions
Just show the actual expression. We need to do a bit of mangling
here as wx has no way to turn off mnemonics parsing, so do that
as well.
2013-06-29 18:28:14 -04:00
NeoBrainX eb153cfded PixelShaderGen: Fix a small early-ztest related bug. 2013-06-29 23:14:08 +02:00
NeoBrainX 99301bd158 PixelShaderGen: Store early_ztest as part of shader uid. 2013-06-29 23:01:42 +02:00
NeoBrainX f524312fd1 VertexShaderGen: Fix a potential bug where vertex shader uids don't change when pixel lighting is toggled. 2013-06-29 23:01:42 +02:00
Jasper St. Pierre 1083d78721 InputConfigDiag: Put the colon after the device name
Oops. The dialog accidentally generated the wrong syntax for
this one.
2013-06-29 02:58:17 -04:00
NeoBrainX e3c0a39d5d Merge branch 'shader-uids-awesome-after-hours'. 2013-06-28 17:45:19 +02:00
NeoBrainX 166a9c5637 Finishing touches. 2013-06-28 17:43:53 +02:00
Jasper St. Pierre 11fdd5a4ec ExpressionParser: Search for control names first
Otherwise, valid control names like "Cursor X+" would be incorrectly
tokenized as "`Cursor` `X` +", causing the parser to first abort trying to
find a control named `Cursor` rather than aborting with invalid syntax on
the bad binop.

We could also do this by resolving devices lazily, but since simple
control name bindings are going to be 90% of usecases, just look for these
first.
2013-06-27 10:51:19 -04:00
Jasper St. Pierre a92f6f68d6 DInputJoystick: Fix compile
Whoops. MSVC++ messed up somehow and didn't tell me it didn't work
locally.
2013-06-26 23:26:21 -04:00
Jasper St. Pierre cdb5b8b737 DInputJoystick: Always exclude XInput
Yeah, yeah, it's possible that some guy would try to build DInput
without XInput, but they're crazy, and I doubt it would have worked
since the header file mess was so fragile anyway. Always exclude
DInput devices when we don't have XInput.
2013-06-26 23:06:17 -04:00
Jasper St. Pierre c11ae9ea4b Revert "Core: Update default bound controls for new ExpressionParser"
This reverts commit 54e1b58199.

We now support barewords control names, so use those instead.

Conflicts:
	Source/Core/Core/Src/HW/WiimoteEmu/WiimoteEmu.cpp
2013-06-26 20:25:37 -04:00
Jasper St. Pierre f53eefb491 ExpressionParser: Add support for simple barewords control names
If an expression can't be parsed normally, we then look to see if it's a
simple device name. This keeps backwards compatibility with simple input
ocnfigurations, where people just used the Detect button.
2013-06-26 20:19:23 -04:00
Jasper St. Pierre 03fdebac09 ExpressionParser: Don't crash when we can't find a device 2013-06-26 16:54:48 -04:00
Ryan Houdek 9edfb5c710 [Android] Disable OpenGL ES 3 EGL bit. This is due to drivers complaining(Which they should do) when they don't support GLES3. Qualcomm drivers don't care about it being ES2 or ES3 bit anyway. Intel drivers are untested in this code path, but GLES3 is untested entirely in desktop anyway. 2013-06-26 08:19:01 -05:00
Rachel Bryk 63a747edc0 Add shortcut to (dis)connect the balance board.
Fixes issue 6383.
2013-06-26 06:23:29 -04:00
Jasper St. Pierre 55950365e3 InputConfigDiag: Fix complex bindings with with left-click Detect
This fixes the binding of XBox 360 controllers and similar devices
with complex control names.
2013-06-25 15:05:53 -04:00
Rachel Bryk 5904ffb21d Fix last commit, and set the position on mouse down instead of mouse up. 2013-06-25 11:04:28 -04:00
Rachel Bryk b892d838ff Allow dragging the analog sticks with the tas input. 2013-06-25 10:52:25 -04:00
John Peterson e250550de3 Removing muted Wiimote audio
because that reduce writes
2013-06-25 09:24:45 -04:00
John Peterson 9e779c22b3 Removing Wii input use of an unsaved state value
because that allow the complete state to be loaded
2013-06-25 09:24:33 -04:00
John Peterson 0fd3acd152 Saving real Wiimote state
because that's simpler than reconnecting
2013-06-25 09:24:14 -04:00
NeoBrainX ba310ce096 PixelShaderManager: Revert code introduced mainly in revision 0fdeb81038.
The shader constant usage profile functionality is still buggy and the code using it wasn't ever meant to be merged to master.
2013-06-25 13:37:38 +02:00
Jasper St. Pierre 748ee50536 Core: Fix a typo in the binding of IR Up
Whoops.
2013-06-25 01:58:22 -04:00
Jasper St. Pierre 54e1b58199 Core: Update default bound controls for new ExpressionParser 2013-06-25 01:46:13 -04:00
Jasper St. Pierre 89e84163c2 ExpressionParser: Fix delimiter scanning
We need to make sure we eat the delimiter, otherwise we'll notice
the colon / backtick and think it's either a new control or part
of the control name
2013-06-25 01:44:28 -04:00
Jasper St. Pierre c5c86d17dc InputConfigDiag: Use "..." for complicated expressions
The full expression is quite often too big for a simple button
label, so encourage people to use the full editor to edit it.
2013-06-25 00:58:31 -04:00
Jasper St. Pierre 62281fbfde InputConfigDiag: Give the input text field a monospace font 2013-06-25 00:58:30 -04:00
Jasper St. Pierre 03a835ec07 InputConfigDiag: Update for the new expression language
Modify the buttons and editor interface for the new expression
language, like the new op name for add, the new device name syntax,
and add new editing features, like simple selection behavior on
unary ops.
2013-06-25 00:58:30 -04:00
Jasper St. Pierre a42388d061 ExpressionParser: Support bare words for simple control names
Using backticks for all control names can get a bit grating,
so support "A & B" instead of requiring "`A` & `B`".
2013-06-25 00:58:30 -04:00
Jasper St. Pierre d2753cce66 ExpressionParser: Add support for the add operator
Use "+" instead of "^" this time.
2013-06-25 00:58:30 -04:00
Jasper St. Pierre 6246f6e815 InputCommon: Add a new ExpressionParser to replace the old hack language
This contains a new, hand-written expression parser to replace the old
hack language based on string munging. The new approach is a simple
AST-based evaluation approach, instead of the "list of operations"
infix-based hack that there was before.

The new language for configuration has support for parentheses, and
counts "!" as a unary operator instead of the binary "NOT OR" operator
it was before. A simple example:

  (X & Y) | !B

Explicit device references, and complex device names ("Right Y+") are
handled with backticks and colons:

  (`SDL/0/6 axis joystick:Right X+` & `DInput/0/Keyboard Mouse:A`)

The basic editor UI that inserts tokens has not been updated to reflect
the new language.
2013-06-25 00:58:30 -04:00
Jasper St. Pierre 877106b027 InputCommon: Split Device stuff out
The ExpressionParser needs this to be out of here to prevent issues
with cyclic references.
2013-06-25 00:58:30 -04:00
Rachel Bryk 970661a0c5 Warning fix. 2013-06-24 12:30:08 -04:00
Rachel Bryk f73a97b242 Revert "fix warning: format '%x' expects argument of type 'unsigned int*', but argument 3 has type 'u8* {aka unsigned char*}'"
This reverts commit b9953f5d6a.
2013-06-24 09:16:14 -04:00
NeoBrainX 597a6b34cb Compactify VertexShader uid struct. 2013-06-23 19:29:02 +02:00
degasus a2e132dd4b small index generator optimiztions
- rewrite loops to not use divisions and multiplications
- remove warnings as the current implementations seems to be correct (ignore additional vertices)
2013-06-23 14:38:25 +02:00
Tetsuo55 b9953f5d6a fix warning: format '%x' expects argument of type 'unsigned int*', but argument 3 has type 'u8* {aka unsigned char*}' 2013-06-23 11:03:30 +02:00
Ryan Houdek eb579e4264 Merge in JP's change to fix audio stuttering with OpenAL. 2013-06-23 02:46:45 -05:00
Ryan Houdek 6bb7cc5fea [Android] Add an about screen that shows build revision. 2013-06-22 22:54:36 -05:00
Jordan Cristiano 8cf515359c fixed uninitialzed audio_size variable in WaveFileWriter 2013-06-22 23:24:05 -04:00
Jordan Cristiano fafdc4fcef DSBCAPS_GLOBALFOCUS allows sound to still play when the application is in the background. Other backends do this, so why not let dsound do it too. 2013-06-22 23:23:53 -04:00
Jordan Cristiano 911d73d85a added new license header to missed audio source files 2013-06-22 23:20:48 -04:00
NeoBrainX bdc28106ee Optimize shader uid checks by checking the number of uid values which are actually used. 2013-06-22 21:47:22 +02:00
NeoBrainX 16ada5fa3d Compactify generated UID generator assembly and generally cleanup code by storing tev stage hash values in a struct. 2013-06-22 21:47:22 +02:00
Ryan Houdek 2b9f79dff3 [Android] Remove SimonVT menudrawer library. Move to Google's support library for their navigation drawer support. Overall cleanup. 2013-06-22 07:45:05 -05:00
NeoBrainX 15943de313 Revert "Added optimizations to ClassifyFloat/Double functions in Mathutil.cpp and to PPCCache.cpp"
This reverts commit 7aae9ccbc0.

Reasons:
- no test results have been provided to prove the usefulness of the patch
- broken coding style
- the author hasn't replied to any criticism
2013-06-22 12:25:03 +02:00
Rachel Bryk 266236d6a4 When loading a save state in read only that mismatches the current movie, load the input prior to the save state from the save state's movie, instead of using the current movie's input up to that point.
This prevents desyncing before the save state.
2013-06-21 01:53:50 -04:00
Rachel Bryk 716f656d28 Save sync gpu setting to dtm header. 2013-06-20 06:08:17 -04:00
degasus 010165b2c2 fix gcc warning, probably also the logic
comparing two char pointers doesn't compare the strings
2013-06-20 10:43:09 +02:00
Ryan Houdek 02cbcc8ec4 [Android] When running OpenGL ES 3 backend, we've got to switch the screen coordinates or bad things happen. Adds a Driver bug that causes swap every single flush. Hard requirement currently to see /anything/ on screen. 2013-06-18 12:44:06 -05:00
NeoBrainX c4eb659fec BPMemory: Assign a more descriptive name to a field in the genmode register. 2013-06-18 17:25:16 +02:00
Ryan Houdek 6143594db6 [Android] Qualcomm glGetShaderInfoLog returns a max of 1024 bytes(tested) for the log, and glGetShaderiv with GL_INFO_LOG_LENGTH /always/ returns 0 on compile failure. 2013-06-18 10:24:36 -05:00
Lioncash d78f00971b Fix a free that should have been a delete. 2013-06-18 10:13:37 -04:00
Ryan Houdek 7df8a9cae8 Partial revert of 0247b2a97a. I'll add a work around for Qualcomm in a bit. Qualcomm shader compiler failing was only due to floating suffixes not whole function defines. Qualcomm video driver devs seem to have a good response time when it comes to OpenGL ES 3 issues. 2013-06-18 07:52:36 -05:00
Ryan Houdek 7223778520 [Android] Gamepad input. Refactor JNI native functions to all pull from a single class instead of everywhere willy-nilly 2013-06-18 07:09:38 -05:00
booto a518a1cbdc buffer fixes found via cppcheck/tetsuo-- 2013-06-18 13:17:50 +08:00
degasus c57a90c5b5 don't define clipPos twice
fix issue 6378
2013-06-17 23:24:54 +02:00
NeoBrainX 88bc8255b8 Merge branch 'shader-uids-awesome'.
Replaces the old, hardcoded shader ID generator with a semi-automatic mechanism that generates IDs from hints in the code generator.

Also introduces a flexible framework to do all kinds of funky stuff with the shader code generation logic. As an example, a uniform usage profile generation class is added (unused for now, though).

Functionality can still be tested by setting the EnableShaderDebugging field in the gfx config to True. Any two shaders which are identified with the same ID will be written to a file and an error message will be written to the Dolphin log.
2013-06-17 13:27:22 +02:00
NeoBrainX 8816369144 PixelShaderGen: Add some TODOs.
Totally the perfect commit message for a final commit before merging :p
2013-06-17 13:17:25 +02:00
NeoBrainX f724b47f45 PixelShaderGen: Fix more critical issues, some of which are regressions of revision 32b78a85. 2013-06-17 13:08:38 +02:00
NeoBrainX 2b2ca5260f PixelShaderGen: Fixed some bugs, removed unused shader uid fields. 2013-06-17 13:03:38 +02:00
NeoBrainX 7a01ceba73 PixelShaderGen: Fix various merge conflicts and a critical regression from revision 32b78a85. 2013-06-17 12:51:57 +02:00
Matthew Parlane 868c627876 Fixes Issue 6353 Remove extract apploader/dol from top level 2013-06-17 22:51:15 +12:00
NeoBrainX c505260ec1 Fix some merge conflicts. 2013-06-17 12:29:47 +02:00
NeoBrainX ca22872dae Merge 'master' into shader-uids-awesome.
Conflicts:
	Source/Core/VideoCommon/Src/LightingShaderGen.cpp
	Source/Core/VideoCommon/Src/PixelShaderGen.cpp
	Source/Core/VideoCommon/Src/PixelShaderGen.h
	Source/Core/VideoCommon/Src/VertexShaderGen.cpp
2013-06-17 12:05:47 +02:00
NeoBrainX f0ea525d3b PixelShaderGen: Change a comment slightly. 2013-06-17 11:39:50 +02:00
NeoBrainX 20719081df PixelShaderGen: Move RegisterStates from global storage to stack. 2013-06-17 11:37:41 +02:00
NeoBrainX 7e0db58b1e Fix stuff 2013-06-17 10:50:16 +02:00
NeoBrainX 32b78a8572 First steps of making the pixel shader uid struct more compact. 2013-06-17 10:50:12 +02:00
Matthew Parlane 43a4d41889 Handle 1 partition only, fixes Issue #6353 2013-06-17 19:25:55 +12:00
Armada 9594cac42c Build fix: Android NDK doesn't support any locale switching.
Also, Mac OS X doesn't support DX9.
2013-06-16 14:51:38 +02:00
Armada fc7099a905 Set the locale per-thread instead of globally when generating shaders. Add cross-compatible versions of newlocale, uselocale and freelocale.
This commit fixes a rare race condition when generating shaders because setlocale is global.
2013-06-16 12:33:13 +02:00
John Peterson 825c5ca09a Equalising the 32 and 64 bit state compression
because that allow loading both
2013-06-15 23:28:04 +02:00
John Peterson 5bd44d7e3f Build fix 2013-06-13 18:38:05 +02:00
John Peterson adb83cfabe Clarifying the OpenAL loop
because it isn't as clear as it can be
2013-06-13 18:04:02 +02:00
Ryan Houdek fa4ad82878 Fix Windows Compiling? 2013-06-12 03:14:13 -05:00
Ryan Houdek 9df3dbe13c Build Fix 2013-06-11 08:38:45 -05:00
Ryan Houdek 703a51e4c0 [Android] Start of *working* GLES3 support. Needs to be able to compile in Windows still. 2013-06-11 08:33:56 -05:00
Ryan Houdek 8efdbcda9e [Android] Fix drawn buttons causing rendering issues. 2013-06-11 08:23:32 -05:00
Rachel Bryk 3e40f28369 Get video backend name via g_video_backend->GetName() instead of sconfig for movies, since that can be wrong.
Also, I still can't code. Or even notice when something obviously doesn't work.
2013-06-10 21:04:55 -04:00
skidau 92fdc15aa3 Implemented field order detection for PAL games. Fixes the shaking of the screen when XFB is enabled with a PAL game.
Fixes issue 6316.
2013-06-08 14:05:02 +10:00
skidau 196d152ad7 Invalidate the texture cache using the GPU thread when the CPU thread makes a request.
Fixes issue 6350.
2013-06-08 11:28:54 +10:00
ondra.hosek 3ff2a3a11a Fix the GameCube mic dialog header's invalid include guard.
Fixes issue 6349.
2013-06-06 21:30:50 +10:00
John Peterson b6e1127c8a Adding stick radius setting
because that makes it easier to adjust it

Adding visual aid for the hardware range because that makes it easier to adjust the radius relative to it
2013-06-06 09:28:59 +02:00
eli173 7aae9ccbc0 Added optimizations to ClassifyFloat/Double functions in Mathutil.cpp and to PPCCache.cpp 2013-06-01 19:17:52 -05:00
John Peterson 80b09c074e Changing the Gecko code comparison from metadata to data comparison
because different data sometimes have the same metadata
2013-06-01 09:21:57 +02:00
John Peterson 4dad640d5f Reading shake force from calibration rather than a constant
because that allow maximum force regardless of calibration
2013-05-28 23:46:01 +02:00
John Peterson 388ddee685 Adding condition to CoreTiming state function
because ev->type might be undefined in MODE_READ
2013-05-27 23:26:17 +02:00
Rachel Bryk ca12e7ee8f Make auto fullscreen resolution the default. 2013-05-25 13:51:52 -04:00
degasus 3378f7d6a7 fix auto fullscreen resolution on linux 2013-05-25 11:43:56 +02:00
Rachel Bryk 743230500f Add auto fullscreen resolution option. Not tested on Linux, let me know if it doesn't work (it probably does).
Fixes issue 6082.
2013-05-25 03:08:09 -04:00
Rachel Bryk 026ab26755 Save settings to file when booting a game.
Fixes issue 6310.
2013-05-24 19:06:01 -04:00
degasus a51d6a6ddd add new statistics for gpu buffer streaming 2013-05-23 21:07:01 +02:00
degasus 6a5e7d7be4 also hide hacked buffer option on d3d 2013-05-23 13:58:37 +02:00
degasus ae55d82e43 disable hacked buffer option for d3d 2013-05-23 11:08:07 +02:00
John Peterson f452a6442f Adding MMU state values to state
because that allow the MMU state to be loaded
2013-05-23 01:55:29 +02:00
Matthew Parlane 3778c96d48 Edge case where balance board returns corrupt extension type... 2013-05-22 22:39:55 +12:00
Rachel Bryk 10630989a4 Merge remote-tracking branch 'john-peterson/state4' 2013-05-21 20:14:15 -04:00
John Peterson 5e801fd6ef Adding DSP state values to state
because that allow the DSP state to be loaded
2013-05-22 02:13:23 +02:00
Rachel Bryk 10d1d19409 Set graphics settings while playing a movie in UpdateActiveConfig(), so settings can't be changed for a frame. 2013-05-21 19:20:22 -04:00
Matthew Parlane 86b4a87fef Merge branch 'wii_bb'
Adds Balance Board support.
2013-05-21 23:34:58 +12:00
Matthew Parlane d642abce46 Only show 4 config dialogs in wiimote config. 2013-05-21 23:31:41 +12:00
Matthew Parlane f178015461 Better checking for extension. 2013-05-21 22:54:01 +12:00
Matthew Parlane e2b0632334 Added a method for detecting Wiimote extension.
This is run before a Wiimote will be considered.
2013-05-21 21:42:19 +12:00
John Peterson 9a1b9e9b3b Removing ISO ini presence requirement for reading movie settings
because it's not necessary for running a movie
2013-05-19 19:47:32 +02:00
Matthew Parlane 56976ad6ea Fix coding style. 2013-05-19 14:57:04 +12:00
Matthew Parlane 065d772696 Windows should have support for Balance Board now.
Needs to be tested.
2013-05-19 14:45:24 +12:00
Matthew Parlane 7208823396 Added config for enabling Balance Board.
Fixed other structures that still assumed 4 of everything.
2013-05-19 00:30:20 +12:00
Matthew Parlane 59924d0291 It never had logging here anyway... 2013-05-18 22:31:22 +12:00
Matthew Parlane 08f6ba8274 I'm bad at mac.. sorry.
Used the correct name string.
2013-05-18 22:29:51 +12:00
Matthew Parlane 0b869cf12d Add mac support for balance board. 2013-05-18 22:26:00 +12:00
Ryan Houdek 2c7f9b1b78 [Android] Copy over the Dolphin shared library to the Android APK build directory so it doesn't need to be manually copied each time. 2013-05-18 03:56:45 -05:00
Matthew Parlane fccf377180 Fix IODummy FindWiimote method. 2013-05-18 20:35:37 +12:00
Matthew Parlane 19252f4e0e Initial commit with balance board working on Linux.
Will not work on any other platform currently.
Missing any sort of config, and definitely no emulation mode.
2013-05-18 20:31:37 +12:00
degasus a905b18ef1 Merge branch 'ppd' - per pixel depth
use always ppd is a huge gpu performance drop: 20%-50%
and always disable it cause some rendering issues
so there is an option again
But this time it's called "Fast Depth Calculation"
2013-05-12 07:29:31 +02:00
Ryan Houdek bf67378812 Fix the integer compare in our GLSL fmod function 2013-05-11 00:16:20 -05:00
Pierre 82cd91e944 DSPJIT: the shift value must still be loaded into the correct register
Fixes issue 6295
2013-05-10 20:12:49 +02:00
NeoBrainX f348712d3a BPMemory: Fix a small documentation mistake from revision 9365187f89. 2013-05-10 11:47:06 +00:00
degasus f7c3cacb5c ppd: fix small issues in my last commit 2013-05-10 12:51:06 +02:00
degasus 89be1cbf51 recreate "per pixel depth" option and renamed it to fast depth calculation 2013-05-09 17:48:48 +02:00
skidau 98e8f8d7d0 Forced an external exception check on DI interrupts. Fixes Summoner: A Goddess Reborn.
Fixes issue 6301.
2013-05-10 00:03:00 +10:00
degasus c7486609fa fix underflow in IndexGenerator::AddFan
fix issue 6282

The Last Story seems to render a fan with two vertices. It is non-sense as it
shouldn't do anything, but the code underflows at (u32)numVerts-3
2013-05-09 10:17:12 +02:00
NeoBrainX 9365187f89 BPMemory: Add register documentation for texture source adress and EFB configuration. 2013-05-06 22:20:17 +02:00
NeoBrainX 6871cc9700 FifoPlayerDlg: Improve navigating through search results. 2013-05-06 22:20:17 +02:00
Ryan Houdek 0247b2a97a [Android] More GLES3 things. Disable Framedumping and MSAA rendering. Remove the HLSL->GLSL shader defines since Qualcomm doesn't support this in their shader compiler. Now they get chosen in our shader generator instead. 2013-05-06 06:43:04 -05:00
Ryan Houdek b6963ce1cb [Android] Use vsnprintf for the log messages. 2013-05-05 23:37:01 -05:00
Ryan Houdek 09def3ed3f [Android] Add in a compiling option for GLES3 2013-05-05 23:37:01 -05:00
Glenn Rice 12d791a628 Fix some of the compiler warnings that have appeared recently. 2013-05-05 23:22:57 -05:00
John Peterson 46cd91dc0d Build fix 2013-05-05 21:23:16 +02:00
John Peterson 7cc2e3146b Updating Cheats manager when the ISO is changed etc.
The Cheats manager should be updated when the ISO is changed because it's non-modal

Removing code that read the ID from file because the cheats manager only has a use when an emulation is running (when the ID doesn't need to be read from the ISO again because it's in a variable). This fixes loading Gecko codes for .wad during an emulation because "VolumeHandler::GetVolume()" return false in this case
2013-05-05 12:25:53 +02:00
skidau 719f18a122 Forced an exception check on short ARAM DMA transfers. 2013-05-04 00:19:02 +10:00
skidau 18b0556e0d Immediately process ARAM DMA transfers if they are 1 block in length. Fixes the teleportation in Beyond Good and Evil.
Fixes issue 6289.
2013-05-03 23:20:48 +10:00
LPFaint99 c80309ee1a GCMemcard: Initialize the current/previous DIR BAT pointers when creating a new memory card fixes issue 6288 2013-05-01 11:28:02 -07:00
skidau 8bcd9a74c8 Clear the texture cache when a new dol is loaded via ES_LAUNCH. Fixes the black screen in The House of the Dead 2.
Abbreviated some of the information in the window titlebar.
2013-05-01 23:51:43 +10:00
lioncash c2859a5207 Dammit Ctrl-Z. Restore a wxSpinCtrl parameter that accidentally got removed in the last commit. 2013-05-01 09:41:45 -04:00
lioncash fbc77e956a Display the initial number of frames that are to be recorded in the Fifo Player.
Before this commit, nothing would would be displayed in the "Frames to Record" text control.

This fixes that by setting it to what m_FramesToRecord is initially set to, which is 1 (at the time of this commit).
2013-05-01 09:35:31 -04:00
lioncash 62065be788 Fix a bug where FIFO recording could not work.
Example (in step by step explanation):

1. Run Dolphin.

2. Go to Tools -> Fifo Player

3. Go to the Record tab and hit record and then stop without a game loaded.

The button is now disabled and will not become active again for the whole time that Dolphin is running. Dolphin must be closed and then re-opened in order to use it again. This fixes that.

I've tested it with multiple conditions to make sure this doesn't beef anything else related to the Fifo Player.

ie)

- Record then Stop without a game loaded (multiple times)
- Record then Stop with a game loaded (multiple times, as well as testing playback. All of which work fine).
2013-05-01 09:05:37 -04:00
NeoBrainX 2c7ed2a793 Apply color mask when alpha test parameters change. Required to make the changes in revision be706a3977 work properly.
Fixes issue 6080.
2013-05-01 11:50:37 +02:00
skidau e70a277af2 Added Dance Mat support for the Family Trainer/Active Life series.
Select the dance mat via Configure > Gamecube > Port 1 > Dance Mat

The dance mat is mapped to the GC Pad:

D-Pad Up = Blue Arrow Up
D-Pad Down = Blue Arrow Down
D-Pad Left = Blue Arrow Left
D-Pad Right = Blue Square
Y Button = Orange Arrow Up
A Button = Orange Arrow Down
X Button = Orange Arrow Right
B Button = Oranage Square
2013-04-30 23:36:46 +10:00
Rachel Bryk e5fdd301a9 Merge remote-tracking branch 'John-Peterson/state' 2013-04-29 22:32:08 -04:00
John Peterson ef2e0a87d0 Adding option to save and load state by timestamp
Load by timestamp: load last state is expanded from 1 to 8 actions, for newest to oldest state

Save by timestamp: overwrite the oldest state (or use an empty slot if available)

Adding remaining hardcoded state keys to hotkey dialog

Adding a program exit hotkey
2013-04-30 04:13:55 +02:00
NeoBrainX 76a316ffab Don't exit when bluetooth support is not available on Windows.
Fixes running Dolphin in Wine and on regular Windows setups where bthprops.cpl is not available.

Fixes issue 6283.
2013-04-29 21:32:13 +02:00
NeoBrainX 9cb263ad48 PixelShaderGen: Set some uid fields that I missed before. 2013-04-29 21:19:48 +02:00
NeoBrainX 02afec5076 Polish shader uid checking. 2013-04-29 21:00:39 +02:00
NeoBrainX 77dae3496a PixelShaderGen: Cleanups. 2013-04-29 19:52:12 +02:00
NeoBrainX adab4e37f7 Fix some mistakes from the master merge; some cleanups. 2013-04-29 19:37:32 +02:00
John Peterson 8dbe236606 Fixing or disabling the "Download Codes (WiiRD Database)" button problem
The "Download Codes (WiiRD Database)" button is enabled (and its click return silently without an effect) when "Tools → Cheats Manager" is opened when there's a running emulation for which there's no "[Gecko]" ini section, confusing the user about the reason for not downloading codes or showing an error when there's no running emulation

Solution

when there's a running emulation: fix the button

when there's no running emulation: disable the button (to indicate to the user that this button must be clicked elsewhere, in the ISO settings dialog, the user will realise or remember)
2013-04-29 12:00:23 -04:00
Glenn Rice 4f5832827e Merge branch 'fix-linux-win-resize' 2013-04-26 12:04:09 -05:00
Glenn Rice 2c8c6304d7 Make sure the EGL evdpy is closed. 2013-04-26 11:35:42 -05:00
Glenn Rice 1666e091ef Make EGL and X11 dpy/evdpy usage consistent. EGL needs testing. 2013-04-26 10:53:46 -05:00
Rachel Bryk 5afceca7a1 Apparently we can't trust m_strVideoBackend on osx. 2013-04-26 02:47:49 -04:00
Glenn Rice 03dfe7b816 The evdpy should be used for the X11 window creation and in the event
thread.  dpy should only be used for GL.
2013-04-25 23:41:45 -05:00
Rachel Bryk 3b732f695d Show video backend and audio engine in title bar.
Fixes issue 6276.
2013-04-25 19:59:08 -04:00
NeoBrainX 5e6b712651 Merge 'master' into shader-uids-awesome.
Conflicts:
	Source/Core/VideoCommon/Src/BPMemory.h
	Source/Core/VideoCommon/Src/LightingShaderGen.cpp
	Source/Core/VideoCommon/Src/PixelShaderGen.cpp
	Source/Core/VideoCommon/Src/PixelShaderGen.h
	Source/Core/VideoCommon/Src/PixelShaderManager.cpp
	Source/Core/VideoCommon/Src/VertexShaderGen.cpp
	Source/Core/VideoCommon/Src/VertexShaderGen.h
2013-04-25 14:05:54 +02:00
NeoBrainX eef95fa4c5 ShaderGenCommon: Adding documentation. 2013-04-25 13:30:41 +02:00
Matthew Parlane d18b71ccf9 Back to broken ES_launch but 4 wiimotes working. 2013-04-25 15:28:42 +12:00
Matthew Parlane 7c50ac931d Update before enqueue. 2013-04-25 14:37:12 +12:00
Matthew Parlane a2b543d47f request_queue may not have anything in it on return from ExecuteCommand
i.e. when calling ES_Launch and everything is reset.

Don't call Update after queuing a request.
2013-04-25 14:24:05 +12:00
Matthew Parlane 00316e182b Cleanup session data on deconstruct. 2013-04-25 01:59:20 +12:00
Matthew Parlane c3dbbe011d Merge branch 'master' into wii-network 2013-04-25 01:41:45 +12:00
Matthew Parlane 62ebfa0a78 Probably breaks a "fixed" issue.. 2013-04-25 01:39:33 +12:00
Lioncash 8da425b008 Formatting cleanup for VideoCommon.
Block braces on new lines.

Also killed off trailing whitespace and dangling elses.

Spaced some things out to make them more readable (only in places where it looked like a bit of a clusterfuck).
2013-04-24 09:21:54 -04:00
Matthew Parlane e98069b647 Merge branch 'master' into wii-network 2013-04-25 01:13:14 +12:00
Matthew Parlane c118c71eac ES needs to handle it's own reply.
pDevice was being used after free otherwise.
2013-04-25 01:11:36 +12:00
Matthew Parlane 5df545926b Tidy up and support for setting rootca. 2013-04-24 21:35:36 +12:00