Ryan Houdek
a5bfdbf6cd
Free performance for AMD+Linux. Instead of disabling BaseVertex due to pinned_memory. Just disable pinned_memory for the ELEMENT_ARRAY_BUFFER type which has issues with baseVertex(ELEMENT_ARRAY_BUFFER)+pinned_memory. In my two tests with this, I went from 5FPS to 11FPS in one test, and 2FPS to 6FPS in another.
2013-12-28 08:00:44 -06:00
Ryan Houdek
0b31fc8f52
[buffer_storage] Temporary fix for Android/GLES3 just like how everything else is. Cleanup for this will be in a new branch.
2013-12-28 05:16:39 -06:00
Ryan Houdek
8fdcba0c06
[buffer_storage] Code formatting changes suggested by Bh44L
2013-12-28 05:15:43 -06:00
Ryan Houdek
935e1fdf99
[Android] Enable shader cache.
2013-12-28 04:55:39 -06:00
Ryan Houdek
c8cdc81ce3
[ARM] Implement tw/twi
2013-12-28 04:43:07 -06:00
Ryan Houdek
d8b7f4d73f
[Android] Support grabbing OpenGL extensions and a function for checking for support.
2013-12-28 01:08:52 -06:00
Ryan Houdek
e04edd89cc
Support grabbing whichever OpenGL mode we are running under from GLInterface. GLES or GL
2013-12-28 00:58:08 -06:00
Ryan Houdek
77ba051361
[buffer_storage] Add the CLIENT_STORAGE_BIT since we access the buffer more frequently on the client side than the server side. That is exactly what the hint is for.
2013-12-27 22:58:36 -06:00
Jordan Woyak
8230da26fe
Fixed issue 6245. (ISO Path's "Remove" button not being disabled when it should be)
2013-12-27 17:16:28 -06:00
Jordan Woyak
620bf0b304
Eliminate some Wiimote acceleration logic redundancy.
...
Yeah, I eliminated a total of 3 LSB of accel data in the process, but no one will notice.
2013-12-27 16:35:11 -06:00
Jordan Woyak
c5695c987b
Revert "Reading shake force from calibration rather than a constant"
...
It didn't make sense. The math was nonsensical. Calibration data was somehow applied twice. I don't even.
This reverts commit 4dad640d5f
.
Fixed issue 6702.
2013-12-27 16:00:59 -06:00
Ryan Houdek
d8ceb97a60
[buffer_storage] Require GLEW 1.10 which has the new OpenGL 4.4 methods. Fixes linux build.
2013-12-27 15:37:31 -06:00
Ryan Houdek
ce99921c20
[buffer_storage] Implement ARB_buffer_storage. Disable it for GL_ARRAY_BUFFER due to a bug in Nvidia's drivers that causes black screen with it.
2013-12-27 10:56:03 -06:00
Jordan Woyak
4d1f113ab1
Fix some emulated wiimote turntable stupidness (DJ Hero controller). Happy Christmas!
...
Fixed issue 6865.
2013-12-25 15:33:33 -06:00
Ryan Houdek
a87e0e7489
Remove our GLU dependency. Fix static zlib
2013-12-23 16:01:34 -07:00
Rachel Bryk
04b87e1dcc
Change a PanicAlert to OSD message.
2013-12-23 07:18:28 -05:00
Ryan Houdek
42217fbd75
Fix the extended information status line that shows emulated mhz + idles skipped.
2013-12-21 17:58:04 -06:00
Ryan Houdek
e697d7a2dd
[Android] Work around Qualcomm's broken garbage in their v53 drivers. This doesn't fix the issue, just a work around. This is the stupidest issue coming from Qualcomm. Now Dolphin Mobile won't crash immediately, but there are new SPS issues.
2013-12-19 17:30:39 -06:00
Ryan Houdek
945b903499
Work around AMD's broken Linux drivers when it comes to pinned memory and base_vertex usage. It seems that using pinned memory with base_vertex disabled is quicker than the other way around.
2013-12-19 09:40:13 -06:00
Ryan Houdek
a35b62358a
[Android] Things fixed in Qualcomm driver v53. GLSL Centroid usage. SHADER_INFO_LOG reporting 0 at all times. Some crazy nonsense that broke the FPS counter. Those are all fixed. glBufferSubData still makes the device do a OOM error, and is still stupidly slow to use. Many more bugs remain in this latest Qualcomm driver.
2013-12-18 22:23:26 -06:00
Ryan Houdek
8c264a3964
In the shader log message, say if the error came from a PS or VS.
2013-12-18 22:21:14 -06:00
degasus
5eab3239bb
Jit64: load second operator for double intrutions
...
SSE do support non-vector instructions, but they _all_ overwrite the dest register
if the src location isn't a register. (wtf?)
So we have to load the src into a temporay register :(
2013-12-17 08:49:06 +01:00
degasus
2fad2a3e88
Revert "Jit64: use AVX instructions in some places"
...
and the fixes afterwards
This reverts commit ff91789773
.
This reverts commit bcefa880e4
.
This reverts commit 710a0ff435
.
This reverts commit ddaf29e039
.
2013-12-17 08:49:06 +01:00
comex
1b617c736c
Add a non-tiny warning about CPUs that will silently desync.
2013-12-16 22:41:52 -05:00
comex
d619ccee21
Remove the flawed, unused attempt to manually emulate Gecko codes.
...
Parsing Gecko codes (in any manner) is much like parsing HTML with regex
- that w̷a̶y̸ l̵i̷e̴s̵ m̴̲a̵͈d̵̝n̵̙ę̵͎̞̼̙̼͔̞͖͎̝s̵̨̬̱͍͓͉̠̯̤͙̝s̷͍̲̲̭̼͍͎͖̤̭̘. Luckily, with the embedded codehandler.bin,
the monstrosity may remain at only one implementation. Anyway, removing
the inserted_asm_codes thing probably speeds up the interpreter a bit.
2013-12-16 22:27:13 -05:00
Tony Wasserka
07820aaa9e
Software renderer: Add linear interpolation of fog range adjustment factors.
2013-12-16 18:42:46 +01:00
Ryan Houdek
2e1aa64958
[Android] Fix joysticks only capable of right/down movements. Also make it capable of using onscreen joystick even if controller 1 is bound.
2013-12-12 21:24:39 -06:00
Ryan Houdek
d7be993889
Oops, I left a bit being set when it shouldn't have been.
2013-12-12 22:35:05 +00:00
Ryan Houdek
09680ccee6
Small cleanup in the EGL GLInterface.
2013-12-12 22:08:54 +00:00
Ryan Houdek
50df037bb5
[Android] Fix gamepad input.
2013-12-12 14:42:25 -06:00
Ryan Houdek
f9ff0bc55d
Have our OpenGL/ES context creation be less stupid.
2013-12-12 12:43:49 -06:00
Ryan Houdek
40b3534319
[Android] Remove the now unused texture loader on the JNI side of things.
2013-12-11 20:09:54 -06:00
Ryan Houdek
0e1e14b3a1
Fix Linux build.
2013-12-11 16:06:19 -06:00
Ryan Houdek
eb3b933dd0
Remove all instances of OpenCL in the Dolphin Project. A brief history of OpenCL in Dolphin. OpenCL was originally added to the Dolphin codebase 1 month after it was released with OS X Snow Leopard in 2009. OpenCL was one of the largest group projects that Dolphin ever has had. The OpenCL texture decoder was originally aded with version 1.0 of the OpenCL spec; This version didn't have the capability of a OpenCL-OpenGL interop which would allow for uploading textures once and have it decoded directly to a OpenGL texure. This was to be worked out when the OpenCL 1.1 spec was released and allowed the interop. This work has never been done, and no one in the team is willing to work on it for various reasons. OpenCL has had the unreasonable expectation that it increases the performance of video games that require a large amount of EFB copies like NSMBW. In reality, enabling OpenCL just put the graphics card in a higher power mode which increased the game speed. This is due to the unfortunate effect of Dolphin tending to not push GPUs out of their lower frequency power savings modes. Thanks to everyone that had contributed to the OpenCL texture decoder.
2013-12-11 15:15:55 -06:00
Tony Wasserka
c9d9081bf9
Use less brain damaged names for DLCache and TextureDecoder.
2013-12-11 20:35:12 +01:00
Lioncash
e0aa674c72
Minor const-correctness for some functions in FifoPlayer and some AudioCommon headers.
2013-12-11 08:43:58 -05:00
comex
101bded6b3
Oops, don't use -lrt on Android either.
2013-12-10 16:35:44 -05:00
comex
eaacf10f71
Fix an idiotic race condition when starting games in multiple Dolphin instances at the same time on Unix.
...
MemArena mmaps the emulated memory from a file in order to get the same
mapping at multiple addresses. A file which, formerly, was located at a
static filename: it was unlinked after creation, but the open did not
use O_EXCL, so if two instances started up on the same system at just
the right time, they would get the same memory. Naturally, this caused
extremely mysterious crashes, but only in Netplay, where the game is
automatically started when the client receives a broadcast from the
server, so races are actually quite likely.
And switch to shm_open, because it fits the bill better and avoids any
issues with using /tmp.
2013-12-10 16:20:52 -05:00
degasus
2d8515c0cf
VideoCommon: remove outdated copy of OGL::VertexManager::vFlush
2013-12-09 23:49:09 +01:00
degasus
134c89ef98
OpenGL: disable shader cache when ShaderDebugging is enabled
...
fixes 6859
2013-12-09 16:45:20 +01:00
degasus
42619c1d2d
Merge branch 'ogl-tex2d'
...
Conflicts:
Source/Core/VideoBackends/OGL/Src/TextureConverter.cpp
2013-12-09 13:04:14 +01:00
degasus
687097d4bc
OGL: use integer uniforms for efb2ram texture converter
2013-12-09 12:33:50 +01:00
Chanwoong Kim
c405d92c41
fixed issue 6852.
2013-12-07 16:07:47 +09:00
Ryan Houdek
4867937355
Add Read16/Read8 to the CBlobBigEndianReader so the key check is reading 8bit from the correct location to determin which key to use. Also change check to == 1 as suggested in the IRC channel on first implementation. Potentially fixes 6852.
2013-12-06 20:40:12 -06:00
Ryan Houdek
14d9802ea4
Oops. Fix a typo in the DriverDetails change.
2013-12-06 12:18:20 -06:00
Ryan Houdek
faf8792351
Support OS specific bugs in our DriverDetails.
2013-12-05 09:32:27 -06:00
degasus
2cbefa2905
PixelShaderManager: clear s_bViewPortChanged flag
...
This flag wasn't cleared at all, so we set our constants dirty every time...
This could fix some performance regressions because of revision 6798a4763e
2013-12-03 09:37:45 +01:00
degasus
edc879ce48
OpenGL: fix crash in revision 95aeedec19
...
Real xfb didn't provide any read_stride, so there is a division by zero.
This commit calculates the correct read_stride for real_xfb, so there is also no hack for texture vs xfb needed.
2013-12-03 00:09:37 +01:00
Ryan Houdek
7bdd8191db
Merge branch 'master' into android-new-control-input-overlay
...
Conflicts:
Source/Android/src/org/dolphinemu/dolphinemu/settings/video/VideoSettingsFragment.java
2013-11-29 21:27:17 -06:00
Ryan Houdek
49eef423a8
[Android-overlay] Add the new overlay icons. Support configuring them. Disable hardfloat since it has issues since Dalvik doesn't understand passing floats due to ABI differences.
2013-11-29 18:37:33 -06:00
degasus
69137cff4c
Merge X11+D3D FreeLook feature into DolphinWX
...
This removes the redundant code and also implements this feature for OSX and Wayland.
But so it's dropped for non-wx builds...
imo DolphinWX still isn't the best place for this, but now it's in the same file as all other hotkeys. Maybe they'll be moved to InputCommon sometimes at once ...
2013-11-29 06:09:54 +01:00
degasus
95aeedec19
OpenGL: readback efb2ram with different strides at once
...
This is done with a pixel buffer object. We still have to stall the GPU, but
we only do it once per efb2ram call.
As the cpu can't access the vram, it has to queue a memcpy for the gpu and
wait for the gpu to finish this copy. We did this for every cache line which
is just stupid. Now we copy the complete texture into a pbo and readback this
at once. So we don't have to wait for lots of round-trip-times.
2013-11-26 20:05:49 +01:00
degasus
1138c2e155
OpenGL: reset EFB after efb2ram FB initialization
2013-11-26 04:07:59 +01:00
Ryan Houdek
db9c586356
Revert "jit: change our linking module to be able to handle arbitrary exit addresses"
...
This shouldn't cause issues, but does in Windows. Revert for now.
This reverts commit 1aa06b8fa4
.
2013-11-25 16:56:04 -06:00
degasus
0b4cb2e15f
OpenGL: split real xfb + efb2ram framebuffers
2013-11-25 22:27:11 +01:00
Ryan Houdek
7718c9959e
[Android-overlay] Multiple physical gamepad support.
2013-11-25 10:58:05 -06:00
degasus
11973d31c1
TextureConverter: remove WriteIncrementSampleX
2013-11-25 17:11:41 +01:00
Ryan Houdek
421fd0e16e
Fix OpenGL ES 3.
2013-11-25 15:36:24 +00:00
degasus
64a1969e36
TextureConverter: fix scoping
2013-11-25 16:34:08 +01:00
degasus
2a2f2fd4eb
TextureConvertion: merge Write*Swizzler
2013-11-25 16:19:08 +01:00
Ryan Houdek
9dbb262aab
Fix for OpenGL ES 3.
2013-11-25 15:11:06 +00:00
degasus
6750a81972
TextureConverter: Use integer math for swizzling
...
also move int(efb_coord) -> float(ogl_fb_coord) into WriteSampleColor
2013-11-25 15:49:13 +01:00
degasus
bcb31b09d3
TextureConverter: Use gl_FragCoord instead of uv0
2013-11-25 15:01:18 +01:00
degasus
a289e0604f
TextureConverter: remove D3D9 foo
...
This file is in VideoCommon, but as D3D11 doesn't use it and D3D9 is dropped, it's time to clean up.
2013-11-25 14:53:44 +01:00
degasus
454e1dd9a2
OpenGL: attributeless rendering for efb2ram
...
This wasn't as easy as we now have to cache also the uniform locations.
2013-11-25 13:03:35 +01:00
degasus
6ed3f82aff
OpenGL: attributeless rendering for postprocessing
2013-11-25 12:36:17 +01:00
degasus
38fe05b1df
OpenGL: attributeless rendering in emulate format changes
...
only cleanup
2013-11-25 12:27:54 +01:00
degasus
dd0b74ac15
OpenGL: cleanup efb2tex
...
Also use attributeless rendering. But we need the src rect, so set it by uniform.
If there is a slowdown here (I doubt as the driver likely has a fast path to update uniforms)
then we should check if this rect changes and only then update the uniform.
2013-11-25 12:19:34 +01:00
degasus
b93756df87
OpenGL: drop texture_rect hack
...
Everything is moved to texture2d (but often in a hacky way), so we don't need this global hack any more.
2013-11-25 09:05:50 +01:00
degasus
afcf0e65d1
OpenGL: fix emulate format changes for texture2d
2013-11-25 08:59:04 +01:00
degasus
146e435009
OpenGL: fix efb2ram for texture2D
...
This was hacky as hell. Our efb2ram shader generator is just freaked out.
2013-11-25 08:56:01 +01:00
degasus
b904d56036
OpenGL: fix efb2tex for texture2d
2013-11-25 08:43:55 +01:00
degasus
1a3e790d9e
OpenGL: fix xfb for texture2d
2013-11-25 08:38:00 +01:00
degasus
e8f23af10b
OpenGL: always use texture2d as efb
2013-11-25 08:32:41 +01:00
degasus
230e12ae8c
OpenGL: also remove VAO from xfb convertion
...
We use attributeless rendering, so officially we have to bind _any_ VAO.
As the state of this VAO doesn't matter, we don't have to switch it.
Also fix an AMD issue as they don't like to render from an empty VAO.
2013-11-25 07:38:20 +01:00
Ryan Houdek
da3eef1019
Fix the issue with COLOROUT not being defined anymore. Fix a issue where Mali shader compiler is idiotic in finding an overload for the mix function.
2013-11-25 00:06:29 +00:00
Ryan Houdek
cb3dd6b94b
Merge branch 'master' into android-new-control-input-overlay
2013-11-24 17:10:24 -06:00
Ryan Houdek
2c09e8fc5a
[Android] Enable hard-float support. Requires Android NDK r9b.
2013-11-24 16:43:53 -06:00
Ryan Houdek
ba18f38e70
Merge branch 'master' into android-new-control-input-overlay
...
Conflicts:
Source/Android/res/values-ja/strings.xml
Source/Android/res/values/strings.xml
Source/Android/src/org/dolphinemu/dolphinemu/AboutFragment.java
Source/Android/src/org/dolphinemu/dolphinemu/emulation/EmulationActivity.java
Source/Android/src/org/dolphinemu/dolphinemu/folderbrowser/FolderBrowser.java
Source/Android/src/org/dolphinemu/dolphinemu/gamelist/GameListActivity.java
Source/Android/src/org/dolphinemu/dolphinemu/settings/video/VideoSettingsFragment.java
2013-11-24 16:12:00 -06:00
Ryan Houdek
f292819ff5
[Android] Due to recent changes in code breaking Tegra 4 support, and also the upcoming code which will be breaking GLES2 support entirely. Taking the initiative to drop the remaining support code from the codebase in preparation for the upcoming changes. For a look at how Dolphin on Tegra 4 looked like prior and would not have been able to be fixed at all due to Tegra 4 not supporting the precision we need in our shaders; Look at this Youtube video http://youtu.be/Ga7Jc_Ote7U
2013-11-24 15:49:23 -06:00
Ryan Houdek
f6f2b1fc60
[Android-overlay] Support multiple gamepads with touch screen controls.
2013-11-24 15:04:53 -06:00
degasus
d410fe7c96
OpenGL: cleanup yuv2rgb (real xfb) workflow
...
We neither scale nor render from subimages, so we by using gl_Position, we don't have to generate _any_ vertices for this converting.
Also remove the glTexSubImage optimization as every driver does it when needed. But there are some workflows (eg on APU) where it's better to realloc this texture instead of a second memcpy or stall.
2013-11-24 15:56:50 +01:00
Scott Mansell
12741f6406
Add comments for anybody attempting accuracy improvements in the future.
2013-11-25 01:30:53 +13:00
Scott Mansell
b5bd2ba847
OpenGL: Enable filtering for EFB to Real XFB copies.
...
This fixes Real XFB Jaggies in OpenGL on games which use yscaling, such
as most PAL games.
This fixes the last of the "Real XFB Macroblocking" issues for opengl,
see issue #6503
2013-11-25 01:11:42 +13:00
Ryan Houdek
6f73162df4
[ARM] Implement the Acid test in the JIT core. This test is currently broken in JIT64 since it uses cr instead of cr_fast.
2013-11-24 10:51:07 +00:00
Scott Mansell
e6b35642df
Fix Desktop GLSL versions in the recent changes.
...
Seems OpenGL ES 3 Requires you must have an lod argument, while Desktop
versions require you must not have a lod argument if you are using a
Sampler2DRect (which doesn't do Mipmapping).
2013-11-24 22:48:10 +13:00
Ryan Houdek
531f840720
Fix OpenGL ES 3 in the recent changes. texelFetch doesn't require the lod argument in desktop GLSL versions, but in GLSL ES 3 it is a required argument.
2013-11-24 07:45:42 +00:00
degasus
994426b3dc
Opengl: fix real XFB sample positions
...
(0,0) and (1,0) aren't accurate xfb sample positions. This fixes the image shift to the left and some blocking on higher IR.
2013-11-24 05:39:40 +01:00
Scott Mansell
eef2cddfd7
Opengl: Fix opengl realxfb "macroblocking"/bluring issue.
...
YUYV textures should NEVER be interpolated/filtered in RGB colour space.
Use TexelFetch to always fetch an actual texture sample.
issue 6503
2013-11-24 17:15:11 +13:00
degasus
09f4439d0c
VideoCommon: reorder cbufid in orderer. We've used once two times
2013-11-24 04:43:54 +01:00
degasus
7d58278b67
Merge branch 'efb2tex_alpha'
2013-11-24 04:02:38 +01:00
degasus
2bf7379a7f
D3D: also fix MAX_COPY_BUFFERS
...
the D3D backend caches the colmat buffers. As we've created more different colmats, the maximum of this matrices must also be updated.
2013-11-24 04:00:12 +01:00
Matthew Parlane
0a31255943
Unused arguments removed from XFBSource::Draw
...
Thanks neo.
2013-11-24 11:33:43 +13:00
Scott Mansell
43d1678fb2
Dynamically allocate color textures.
...
Saves ram when the video software backend isn't being used.
2013-11-24 00:52:17 +13:00
Scott Mansell
afe47ff847
Increase res of color texture to match PAL Super Smash Bros: Brawl
...
The pal version of SSBB has a 640x568 xfb, which is larger than the efb.
Increase the size of the static textures and put in some runtime checks
to prevent buffer overruns.
2013-11-24 00:15:08 +13:00
Scott Mansell
e720ea7837
Remove c++11 feature so VC2010 can be happy.
2013-11-23 23:44:05 +13:00
Scott Mansell
786e49ed48
Merge branch 'master' into videosoftware-xfb
...
Conflicts:
Source/Core/VideoBackends/Software/Src/EfbCopy.cpp
Source/Core/VideoBackends/Software/Src/SWRenderer.cpp
Source/Core/VideoBackends/Software/Src/SWRenderer.h
Source/Core/VideoBackends/Software/Src/SWVideoConfig.cpp
Source/Core/VideoBackends/Software/Src/SWmain.cpp
2013-11-23 23:20:45 +13:00
Tony Wasserka
672fa65ee7
OpenGL: Enable pinned memory even for index buffers (works for me). Big-ish speedup on AMD GPUs for streaming intensive games.
2013-11-22 18:09:52 +01:00
skidau
efeb0096c9
Changed the DSP ROM warning from a panic alert to an on-screen message.
2013-11-22 14:55:25 +11:00
degasus
b0a83c9aaa
VideoCommon: don't read alpha from efb which don't have alpha
...
This fixes issue 6788
2013-11-22 04:50:33 +01:00
Ryan Houdek
ea9ac07ec9
Merge branch 'master' into jit_exit_addresses
2013-11-21 21:17:58 -06:00
Tillmann Karras
ff91789773
Jit64: really fix fmrx regression
...
This is more tricky than I thought!
2013-11-21 05:31:55 +01:00
degasus
011fe86d01
jit64: add regcache option IsBound
...
Lots of x86 instructions are different on memory vs registers.
So to generate code, we often have to check if a ppc register is already bound to a x86 register.
2013-11-21 05:16:58 +01:00
Tony Wasserka
286b6110f1
Revert "Handle BP mask register better to avoid useless BP writes (causing flushes)"
...
This reverts commit 954be9e2d9
.
Fixes issue 6826.
2013-11-20 22:53:10 +01:00
Tillmann Karras
bcefa880e4
Jit64: fix fmrx regression
...
Revision ddaf29e039
introduced a register
corruption bug (#6825 ). Since fmrx/MOVSD only modifies ps0 but we save
both ps0 and ps1 in one xmm register, not loading the previous value
when binding to a x64 register trashed ps1.
But hey, a good opportunity to shave off one more instruction ;)
2013-11-20 21:30:49 +01:00
Ryan Houdek
ae11fba069
[Android] Make joysticks less dumb from a configuration standpoint.
2013-11-18 14:48:08 -06:00
comex
4f13f6ecaa
"warning fixes" commit introduced warnings; fix them. (And I refuse to use PRI macros.)
2013-11-18 14:34:21 -05:00
Tillmann Karras
b863e40677
Merge branch 'ppc_fp'
2013-11-18 19:31:09 +01:00
Matthew Parlane
e805bf6068
Only add real HID devices to HID list.
2013-11-17 21:14:22 +13:00
Matthew Parlane
b372f97675
Imagewrite.cpp had same problem.
...
I hate windows :(
2013-11-17 11:30:05 +13:00
Matthew Parlane
f4a1f183b9
std::string can't be passed to ... format.
2013-11-17 11:28:11 +13:00
Matthew Parlane
ea3990a41b
Don't pass char* to std::string.
...
Windows was fine with this :(
2013-11-17 11:25:12 +13:00
Matthew Parlane
33d8166620
Use IOFile for TextureToPng to support non-ascii
...
Changed save texture/screenshot uses to std::string
Removed unneeded new/delete calls when dealing with temp data.
2013-11-17 11:14:38 +13:00
Lioncash
cce869ae01
[Core] Fix a mismatched dealloc in Render.cpp in the OGL backend. Should be delete[]
2013-11-16 17:05:51 -05:00
Ryan Houdek
4a9c8e6f55
Change software rasterizer screenshot code due to change in api just now.
2013-11-16 15:37:40 -06:00
Matthew Parlane
71d70d896f
Api was too confusing for people.
2013-11-17 10:34:34 +13:00
Ryan Houdek
2025f00f88
Woops, vim copy and paste issue with a double include.
2013-11-16 09:41:01 -06:00
Ryan Houdek
e8a4cc0f71
Screenshot capability of Software rasterizer for feature completness.
2013-11-15 22:08:08 -06:00
Matthew Parlane
3a13dfdd9b
[OGL] Textures now save to PNG not TGA
2013-11-16 15:59:59 +13:00
Ryan Houdek
15bb974224
[Android] Add screenshot nativelibrary function.
2013-11-15 17:32:50 -06:00
Ryan Houdek
b9d7bb9012
[Android] Broken UBOs has been fixed in Adreno driver v53, so update the comment in DriverDetails.h. Also enable dynamic UBO array member access with that version since there is a high chance of it being fixed. Dynamic UBO member access is commonly noticed with character models being terrible looking.
2013-11-15 16:51:07 -06:00
Ryan Houdek
0e415467c4
[Android] Spawn a message if someone's phone doesn't support NEON. NEON is a requirement for Dolphin Mobile on ARM, CPU core will crash without it.
2013-11-15 14:17:47 -06:00
Matthew Parlane
c712fb7356
Fix introduced ImageWrite warning.
2013-11-15 17:58:57 +13:00
Jordan Cristiano
714633f311
Fixed console commands not registering. Code cleanup.
2013-11-14 22:23:55 -05:00
Ryan Houdek
117bf435b0
Fix GUI-less build. Also potentially OS X. We now require libpng due to our screenshot code relying on it now. WXWidgets links in libpng by itself so it isn't noticed in a wxwidgets build. OS X seems to not have libpng linked in from wxWidgets so just link in libpng at all times.
2013-11-15 01:09:38 +00:00
Matthew Parlane
ba71cdcc51
Goto crosses initialization error.
...
Sorry.
2013-11-15 13:05:03 +13:00
Matthew Parlane
033ed9477e
Reworked Screenshot saving.
...
Now OGL doesn't rely on WX for PNG saving.
FlipImageData supports (pixel data len > 3) now.
TextureToPng is now in ImageWrite.cpp/h
Video Common depends on zlib and png.
D3D no longer depends on zlib and png.
2013-11-15 13:00:38 +13:00
Ryan Houdek
feedee5c23
[Android-overlay] Support touch screen axises in native. Have a non-configurable main joystick on screen at this point.
2013-11-14 15:18:33 -06:00
Jordan Cristiano
2703cae8d3
Fixed ZComploc and Zfreeze values being incorrectly saved.
2013-11-14 03:15:03 -05:00
Jordan Cristiano
0fced651a5
More warning fixes, OSX build fix.
2013-11-14 03:11:40 -05:00
Matthew Parlane
7e9b970240
Use libpng for saving images.
...
TODO: Needs threading done similiar to OGL backend.
Fixes issue 6779.
2013-11-14 21:02:49 +13:00
Jordan Cristiano
c3069eda28
build fix
2013-11-14 02:27:53 -05:00
Jordan Cristiano
39a4d4329d
more warning fixes
2013-11-14 02:19:15 -05:00
Matthew Parlane
ca5b3b4773
atlbase not needed. Interim fix until I get png done.
2013-11-14 18:10:39 +13:00
Ryan Houdek
1942d79c5b
[Android-overlay] Had the action reversed.
2013-11-13 16:36:30 -06:00
Ryan Houdek
2a23bdde6f
Merge branch 'master' into android-new-control-input-overlay
...
Conflicts:
Source/Core/DolphinWX/Src/Android/ButtonManager.h
2013-11-13 16:17:42 -06:00
Ryan Houdek
63a9dff3bb
Windows requires memory to be included to use unique_ptr
2013-11-13 12:51:49 -06:00
Ryan Houdek
652ef24a2e
Remove our two instances of auto_ptr and replace it with unique_ptr. auto_ptr has been deprecated.
2013-11-13 11:44:04 -06:00
Matthew Parlane
7b53574b68
Support texture and screenshot dumping using WIC, no XP support.
2013-11-14 00:48:02 +13:00
Matthew Parlane
abc3bddb54
Revert "D3D: Reintroduce depencency on D3DX11 because it's the most straightforward way to bring back some broken features."
...
This reverts commit a83c239765
.
2013-11-14 00:34:09 +13:00
Jordan Cristiano
f96e9e1ae4
warnings and code formatting
2013-11-13 04:03:46 -05:00
Tillmann Karras
038ffea369
Jit64: don't flush clean FPRs
2013-11-13 08:03:18 +01:00
Tillmann Karras
288bef2807
x64: add small warning if CPU has SSE2 but not DAZ
2013-11-13 06:26:57 +01:00
degasus
d78c8c21a2
jit64: enable fp instructions faddx fsubx fdivx fdivsx
...
all of them are now accurate enough as we handle non-ieee floats correctly
2013-11-13 06:26:50 +01:00
Tillmann Karras
cd069fdce1
Interpreter: software-based flush-to-zero
...
bDAZ is now called bFlushToZero to better reflect what it's actually
used for.
I decided not to support any hardware-based flush-to-zero on systems
that don't support this for both inputs _and_ outputs. It makes the code
cleaner and the intersection of CPUs that support SSE2 but not DAZ
should be very small.
2013-11-13 06:24:58 +01:00
Tillmann Karras
466a7afde3
Interpreter: support non-IEEE mode emulation
...
v2: fix fxsave on visual studio, thx @ rodolfo for this patch
2013-11-13 06:24:57 +01:00
Tillmann Karras
710a0ff435
Jit64: don't unnecessarily load registers
2013-11-13 06:16:24 +01:00
Tillmann Karras
ddaf29e039
Jit64: use AVX instructions in some places
2013-11-13 06:15:56 +01:00
Tillmann Karras
ae86850a78
x64: support VEX opcode encoding
...
and add some AVX instructions
2013-11-13 06:12:23 +01:00
Tillmann Karras
22b47d5b9c
Jit64: Fix and re-enable psq_l for W=1
...
Patch by konpie:
https://forums.dolphin-emu.org/Thread-code-bug-report-based-on-3-0-735
2013-11-13 05:58:28 +01:00
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