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
7ed8e6a29c
[Android] Fix the check for the Qualcomm graphics driver version for v53 drivers with the screen being rotated 90 degrees. Initialize the OpenGL information grabbing only once. Check for v14 Qualcomm drivers and spit out an error if the user tries selecting OpenGL ES 3.
2013-11-24 22:45:48 -06: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
Scott Mansell
999e085411
Fix a few typos.
2013-11-23 20:16:30 +13:00
Scott Mansell
01da9c4b71
Added a Bypass XFB option to Videosoftware's configuration.
...
This is useful for testing XFB vs no XFB in videosoftware, for
compatablity or visual comparasions.
2013-11-23 20:04:37 +13:00
Scott Mansell
a94940edd3
Videosoftware realxfb: Fixed a few bugs while testing Zelda: Collectors Edition
...
* Don't force a frame to be progressive if it's already progressive.
* Don't assume the framebuffer will be 640 pixels wide
* Remember to offset the Luma channel by 16.
2013-11-23 18:38:15 +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
Lioncash
42f8562e5c
[Android] Basic Wiimote binding settings now implemented.
2013-11-19 19:28:10 -05:00
Lioncash
7e544d8996
[Android] Basic UI functionality for enabling/disabling aforementioned Gamecube controllers.
2013-11-19 16:14:40 -05:00
Lioncash
53ab104d5f
[Android] Expand the input binding UI in the settings to handle 4 Gamecube controllers in the future.
...
Other changes:
- Broke out MotionAlertDialog into it's own separate class.
- Made a preference specifically for handling input bindings.
2013-11-19 15:53:30 -05: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
Lioncash
c46aabc853
Merge branch 'master' of https://code.google.com/p/dolphin-emu
2013-11-16 16:53:22 -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
Lioncash
ee32c8b4e9
[Android] Remove accidental fragment tag in GameListActivity (it was useless, since it's an empty string)
2013-11-16 15:17:37 -05:00
Ryan Houdek
2025f00f88
Woops, vim copy and paste issue with a double include.
2013-11-16 09:41:01 -06:00
Lioncash
11a156615f
[Android] Like the previous commit (but for the GameListFragment), don't constantly create a new adapter when filling the game list.
2013-11-16 05:30:58 -05:00
Lioncash
d98664b053
[Android] Simplify the FolderBrowserAdapter a little, as well as the Fill method within FolderBrowser.java. Previously the fill method would create an entire new adapter and assign it to the backing ListView. This is pretty unnecessary, so what it now does is, when the function is called, it clears out the adapter, then simply fills it in again with the new directory's contents. Simple, and doesn't require a reference to the actual ListView to be used.
2013-11-16 04:36:22 -05:00
Lioncash
c8ddc70c97
[Android] Simplify the AboutFragment view inflating. Considering the backing layout is a direct ListView, the original rootView can just be casted to a ListView, no need for an intermediate.
2013-11-16 04:09:30 -05:00
Lioncash
94f8c68a35
[Android] Use the ViewHolder design pattern for the FolderBrowserAdapter. In directories with a lot of files, this should be noticeably smoother in terms of scrolling. Also fixed the case where the subtitle text might disappear.
2013-11-16 03:56:58 -05:00
Lioncash
c90ce1aad1
[Android] Change the name of the XML layout file gamelist_folderbrowser_list.xml to gamelist_folderbrowser_list_item.xml. More accurate name on what it is.
2013-11-16 03:31:02 -05:00
Lioncash
21a196f9af
[Android] Eliminate the need to hold a reference to the shown Fragment within GameListActivity. Now we only care about the numeric ID of the one being shown.
2013-11-16 03:09:07 -05:00
Lioncash
777b5a109b
[Android] Fix the handling of orientation changes for the Fragments related to the game list. Now screen orientation changes don't kick you back to the root view.
2013-11-16 01:48:17 -05:00
Ryan Houdek
e8a4cc0f71
Screenshot capability of Software rasterizer for feature completness.
2013-11-15 22:08:08 -06:00
Lioncash
23c84c220f
[Android] Add ability to take screenshots into the emulation menu.
2013-11-15 22:21:50 -05: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
0720026dab
[Android] Disable the workaround for Qualcomm devices with driver >= 53 for the rotated framebuffer since it is fixed now.
2013-11-15 16:56:21 -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
Lioncash
483a28f34a
[Android] Simplify the AboutFragmentAdapter a little bit.
...
- Removes an unnecessary variable.
- Shortens the LayoutInflater usage.
- Gets rid of an unnecessary override of onAttach.
2013-11-15 17:19:09 -05:00
Lioncash
8c7d1afd5f
[Android] Externalize the device compatibility warning strings.
2013-11-15 17:05:56 -05:00
Lioncash
4bb22aa0ab
[Android] Indicate whether or not the device supports NEON within the About fragment.
2013-11-15 16:48:36 -05:00
Lioncash
d3731d0827
[Android] Get rid of some unnecessary variables in the getView() methods of some adapters.
...
Directly referencing convertView is fine.
2013-11-15 16:32:52 -05: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
Lioncash
07765aa6f0
[Android] Documentation and some cleanup.
2013-11-15 12:26:17 -05: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
1e90a838f2
Make sure to add our resources for the joystick.
2013-11-14 15:20:44 -06: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
Lioncash
9d3d568ae4
[Android] Bump the targetSdkVersion in the AndroidManifest XML file to 19 (KitKat). Nothing we do would require compatibility behaviors to be enabled to maintain forward compatibility.
2013-11-14 11:01:44 -05:00
Lioncash
f15a0c17d0
[Android] Get rid of some unnecessary onAttach overrides in AboutFragment, VideoSettingsFragment, and FolderBrowser. These can just be replaced with calls to getActivity().
2013-11-14 10:45:45 -05: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
Matthew Parlane
e22ff4927a
Revert "Add dxsdk_dir to vc++ paths via base.props. This means you no longer need the paths in a global property sheet. In fact if you have them in such a file, you should remove them as it will cause conflicts with the vs2013 build."
...
This reverts commit 0791a9ef80
.
2013-11-02 09:24:56 +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
Ryan Houdek
0f061e4e7c
[Android] Do /not/ give users the benefit of the doubt that the device supports OpenGL ES 3 when we can't grab an OpenGL context. The only devices that fail to do so is PowerVR5 and we can't run with them anyway.
2013-10-31 07:30:18 -05: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
Lioncash
3c7613fc83
[Android] More cleanup. We don't need the preference to enable/disable the overlay in the video preferences anymore.
2013-10-28 16:36:26 -04:00
Lioncash
4e999fe0ee
[Android] General cleanup.
...
We no longer need the buttons in Assets, considering they are now resources (ie. drawables).
Also remove (now) junk code from VideoSettingsFragment.java. We handle the input overlay within the InputSettingsFragment.
Also add a TODO detailing what needs to be refactored when axis support is finally added.
2013-10-27 22:15:49 -04:00
Lioncash
d1834b3058
[Android] Overlay now works during emulation.
2013-10-27 22:08:41 -04: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
comex
b97e2faa15
Fix Linux build issue.
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
0791a9ef80
Add dxsdk_dir to vc++ paths via base.props. This means you no longer need the paths in a global property sheet. In fact if you have them in such a file, you should remove them as it will cause conflicts with the vs2013 build.
2013-10-27 00:48:53 -07: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
Lioncash
c3e4aa1f35
[Android] Add the copyright header to some Java source files that were lacking them.
2013-10-26 01:06:00 -04:00
Lioncash
c78d5a9751
[Android] Improve an if statement check in InputConfigFragment.java. Also clarify it.
2013-10-26 00:59:53 -04:00
Lioncash
8d71a83ae5
[Android] Fix the super-mature string that was a placeholder for the title for the overlay configuration setting.
...
Also fix a NullPointerException possibility. Fixed it by giving the PreferenceScreen a title.
2013-10-26 00:55:07 -04: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
Lioncash
77eb9ce725
[Android] Add the capability to dynamically enable and disable the input overlay during emulation.
2013-10-25 23:10:17 -04:00
Lioncash
d9be95ed9e
[Android] Fix alignment issues with the overlay config settings.
2013-10-25 21:29:06 -04:00
Lioncash
7c6caa388a
[Android] Prevent automatic alignments within the overlay configuration settings. Let the user do this on their own.
2013-10-25 21:14:11 -04:00
Lioncash
c1ed54832c
[Android] Maintain the chosen button layout when returning to the input overlay configuration menu.
...
- Also make the overlay configuration screen fullscreen for the app.
- Also force the overlay activity to be landscape, since this is the only orientation the EmulationActivity supports.
2013-10-25 21:05:42 -04:00
Lioncash
c8cf71c913
[Android] The emulation overlay now sets the button positions based upon the locations chosen in the input overlay configuration settings. Documented the hell out of how the initialization of the Drawables works inside InputOverlay.java.
...
Also made the use of InputOverlayItem.java obsolete. So this is now removed.
2013-10-25 20:34:38 -04:00
Lioncash
88c797a9c0
[Android] Slight cleanup for previous commit. Mostly UI adjustments.
...
Makes the buttons appear uniformly on the overlay config activity.
2013-10-25 17:39:23 -04:00
Lioncash
9f36081a8f
[Android] Implement a very basic version of the input overlay configuration screen.
...
Still a bit of a mess, but this will get cleaned up during finalizations.
2013-10-25 16:52:46 -04:00
comex
005af7bd63
Fix build on Mavericks.
2013-10-24 16:39:46 -04:00
Lioncash
1267877e80
[Android] Documentation typo cleanups from the last commit.
...
Also cleaned up the Javadoc for the constructor of MotionAlertDialog.
2013-10-24 15:10:25 -04:00
Lioncash
079147ca07
[Android] Refactor InputConfigFragment a little bit in preparation for the implementation of the new input overlay.
...
This moves all of the dialog handling into the actual MotionAlertDialog class itself. This is something I should have done a long time ago.
Also moved the Gamecube input binding preferences into their own PreferenceScreen.
2013-10-24 14:55:10 -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
187827624f
[Android] 0.12 release.
2013-10-21 12:09:15 -05: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
Ryan Houdek
aa713e11f7
[Android] Fix Build.
2013-10-21 09:36:40 -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
Lioncash
2015cd0928
[Android] Implement OnSharedPreferenceChangeListener within PrefsActivity.java. This allows us to immediately save to the ini config when a preference in the front-end is changed, rather than waiting for the settings window to close. This also allows us to remove handling for preferences from CPUSettingsFragment.java and VideoSettingsFragment.java.
2013-10-13 22:20:34 -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