Commit Graph
100 Commits
Author SHA1 Message Date
Ryan Houdek c88b83699e Don't use SDL devices that report invalid ranges.
If Buttons, Axes, Hats, or Balls > 255 then reject it.
2014-04-16 16:28:57 -05:00
Ryan Houdek 47f76b8907 Fix the integer overflow that happens in the MD5Sum Progressbar.
Instead of using a u64 size integer as the range on the progressbar, set the max as 1000.
Similar maximums are used in other parts of the UI.
2014-04-14 20:40:43 -05:00
Ryan Houdek a30a528dd1 Add the ability to generate a files MD5sum.
This adds the ability to generate a files MD5sum in the ISO properties.
This uses polarssl to generate the MD5Sum.
2014-04-14 16:35:11 -05:00
Ryan Houdek 60202cff15 Merge pull request #258 from Sonicadvance1/More-Fastmem
[ARM] Implements more fastmem instructions in lXX.
2014-04-14 00:42:44 -05:00
Ryan Houdek 3f73fc37fc [ARM] Implements more fastmem instructions in lXX.
There are a few instructions in lXX that aren't currently fastmem capable due to using a register offset.
This implements fastmem for those few instructions.
Really I'll be changing how ARMv7 fastmem works in the future so this is really temporary code.
Just don't know how long it'll stay.
This relies on PR #257
2014-04-14 00:38:46 -05:00
Ryan Houdek a07f8fb65b Merge pull request #257 from Sonicadvance1/LoadStore-Fix
[ARM] Minor cleanup to lXX and stX. Fixes a bug.
2014-04-14 00:38:13 -05:00
Ryan Houdek 3910437447 Merge pull request #272 from magumagu/jitil-fix-srawi
JitIL: fix carry computation for srawi.
2014-04-14 00:38:06 -05:00
Ryan Houdek a9fa49f34d Support checking for the Mali-T7xx line of GPUs.
They are similar enough that they will share bugs with their drivers, so make them fall under the same Mali-Txxx umbrella of bug issues.
If there is ever a need in the future for having separate bugs depending on family, we can support that then.
2014-04-11 23:46:44 -05:00
Ryan Houdek ed67cc3fb2 Add the ability to determine the Mali driver version.
This is the only way we can determine the video driver version with mali.
Really it's a good thing that they only push driver updates once every two years, makes it easy to determine what driver anybody is running.
2014-04-11 23:38:40 -05:00
Ryan Houdek bedb386560 Merge pull request #242 from LPFaint99/GCMemcard
MemcardManager: Fix "export all saves"
2014-04-10 22:10:34 -05:00
Ryan Houdek d17d5ead07 [ARM] Minor cleanup to lXX and stX. Fixes a bug.
Fixes an issue in lXX where if the instruction was an update instruction and was a register address offset that we would add garbage values to the
writeback register.
Does some minor cleanups as well which save a few instructions here and there.
2014-04-10 02:17:01 -05:00
Ryan Houdek 87d106d65c Remove dumb CodeBlock duplication in the emitters.
Fixes issue 6990.
This uses a bit of templating to remove the duplicate code that is the CodeBlocks in each emitter headers.
No actual functionality change in this.
2014-04-09 13:53:43 -05:00
Ryan Houdek ccc4866118 Fix Fastmem on ARM once more. 2014-04-06 10:28:58 -04:00
Ryan Houdek 93c871522f Fix a bug in the ARMEmitter.
When creating a Fixupbranch we were swapping the BL and B targets.
I think this was found by PPSSPP a while ago, but they never send PRs to merge their changes upstream.
2014-04-06 10:28:41 -04:00
Ryan Houdek 3251d78f89 Add initial support for GLSL ES 3.10.
GLSL ES 3.10 adds implicit support for the binding layout qualifier that we use.
Changes our GLSL version enums to bit values so we can check for both ES versions easily.
2014-04-03 00:46:09 -05:00
Ryan Houdek ca9ee3586f Merge pull request #227 from magumagu/swbackend-fix-shaders
SW backend: make shaders work on Intel/Windows.
2014-04-02 14:51:14 -05:00
Ryan Houdek 94ceb4d305 Merge pull request #203 from Sonicadvance1/fix-crash
Fix a crash that got recently introduced.
2014-03-23 22:56:15 -05:00
Ryan Houdek 5310d6d2ea Fix a crash that got recently introduced.
When CFileSystemGCWii::GetFileName can't find a valid filename it would return nullptr.
nullptr as a std::string throws an assert within the std lib.
So return an empty string and check if it is empty or not
2014-03-23 22:29:30 -05:00
Ryan Houdek 479695d068 Revert "Remove an unnecessary wx translation underscore macro from PHackSettings."
This reverts commit 110f603cb6.
2014-03-23 20:28:19 -05:00
Ryan Houdek 9849129b5d Merge pull request #199 from lioncash/defined-densities
Provide clearly defined densities of the controller icons.
2014-03-23 00:35:40 -05:00
Ryan Houdek a3e18cd498 Merge pull request #171 from lioncash/rarc-cleanup
File tree building cleanup
2014-03-23 00:34:26 -05:00
Ryan Houdek c7335dc48f Merge pull request #198 from Sonicadvance1/Android-onscreenconfigure
Make configuring the onscreen controls less annoying.
2014-03-23 00:29:58 -05:00
Ryan Houdek 4c1cb65e1e Merge pull request #179 from lioncash/phack-cleanup
Remove an unnecessary wx translation underscore macro from PHackSettings.
2014-03-23 00:29:52 -05:00
Ryan Houdek 5dabe598a4 Merge pull request #180 from lioncash/log-window-cleanup
Small log queue clearing simplification.
2014-03-23 00:29:08 -05:00
Ryan Houdek b76351e2d3 Make configuring the onscreen controls less annoying.
Now instead of the top left corner of the button snapping to your finger.
Remember where we clicked on the button initially so it moves from the same location you touched.
This is more intuitive than before of course.
2014-03-22 23:32:46 -05:00
Ryan Houdek 7549ee232c Allow the user to enable the extended information string like the old days.
This string shows emulated CPU speed, including true mhz + idle skipping mhz
2014-03-22 23:32:07 -05:00
Ryan Houdek bf5f485a2c Merge pull request #197 from lioncash/android-things
Fix misc Android things.
2014-03-22 21:45:22 -05:00
Ryan Houdek d85b8afe58 Pass our signing information to gradle by argument.
Changes from using environment variables that the world can see to arguments.
So we don't have to expose our keys and aliases to people
2014-03-22 07:33:18 -05:00
Ryan Houdek 89efec6109 Merge pull request #167 from neobrain/ogl-efbpokes
Implement EFB pokes in the OpenGL backend.
2014-03-20 15:25:56 -05:00
Ryan Houdek eac11b7625 Merge pull request #190 from lioncash/stream-final
Minor audio stream changes.
2014-03-18 13:51:20 -05:00
Ryan Houdek 027240da45 Merge pull request #188 from Sonicadvance1/clang-warnings
Fixes warnings that Clang 3.4 exposes on Android.
2014-03-17 20:19:11 -05:00
Ryan Houdek 484fb46390 Clang 3.4 exposes some warnings on Android.
Fixes all warnings on Android build except for what is in externals.
Removes a function from TextureDecoder_Generic since it is unused and generates a warning.
2014-03-17 18:17:12 -05:00
Ryan Houdek 3586ab1d4c Fix the Android build when using clang 3.4 2014-03-17 17:56:22 -05:00
Ryan Houdek adaf095229 Fix building the release APK with gradle.
In release build all warnings are errors, and lint has some obnoxious warnings.
2014-03-17 16:28:31 -05:00
Ryan Houdek 8ecb7524bc Fix arch detection on x86. 2014-03-17 11:46:19 -05:00
Ryan Houdek d4c53eed01 Fix arch detection on x86. 2014-03-17 11:36:27 -05:00
Ryan Houdek a6ee74b58d Fix arch detection on x86. 2014-03-17 11:33:11 -05:00
Ryan Houdek 7b86716c65 Due to the removal of our char* IniFile setters/getters this broke Android build which relied on that.
Convert our C-strings to std::strings before using
2014-03-15 12:09:49 -05:00
Ryan Houdek 22c989de9a Provide our own dot functions in GLSL since GLSL doesn't provide integer versions of this function, even though AMD and Nvidia provide their own. 2014-03-14 22:26:27 +01:00
Ryan Houdek 3d927d577b Merge pull request #133 from shuffle2/fix-ldmxscr-exception
commit 1a428de189 introduced a bug by usin...
2014-03-05 12:23:13 -06:00
Ryan Houdek 4dc2d71e34 OS X likes to be different. It reports the host processor type as i386 instead of x86 or x86_64 like a typical sane system. 2014-03-04 14:45:50 -06:00
Ryan Houdek 4f02132f93 Make our architecture defines less stupid.
Our defines were never clear between what meant 64bit or x86_64
This makes a clear cut between bitness and architecture.
This commit also has the side effect of bringing up aarch64 compiling support.
2014-03-04 09:36:59 -06:00
Ryan Houdek c028513285 Merge pull request #121 from lioncash/remove-clamp
Remove another clamp function laying in the codebase and replace it with the one in MathUtil.h.
2014-03-02 13:40:10 -06:00
Ryan Houdek b1e94cbbb5 Merge pull request #105 from degasus/vsyncFix
Fetch swapInterval function pointer after binding a context
2014-02-24 06:26:27 -06:00
Ryan Houdek 21bb722c93 Merge pull request #101 from delroth/remove-tests
Remove Source/{Unittests,TestSuite}.
2014-02-24 02:43:32 -06:00
Ryan Houdek 2bd1f99125 Fix the nogui build when building with EGL 2014-02-24 06:34:09 +00:00
Ryan Houdek 60a5d8900b Merge pull request #60 from Sonicadvance1/Android-GLDetect
Fix the Android OpenGL About tab.
2014-02-22 22:29:57 -06:00
Ryan Houdek 1f750904af Fix the OpenGL About tab.
Move EGLHelper to be local to the creation of the about GL/GLES tabs so we don't have 3 EGL contexts running at a time.
Fix issues with OpenGL context creation here so we show the correct information.
This requires adding an EGL function to the NativeLibrary since Android's JAVA bindings don't expose eglBindAPI.
2014-02-22 21:08:27 -06:00
Ryan Houdek cf6e0b6015 Make it possible to build Dolphin for Android in OS X and also less of a pain with gradle. 2014-02-22 21:01:58 -06:00
Ryan Houdek afba0d736d Merge pull request #87 from RachelBryk/save-frame-skip
Save frame skipping option, and allow loading it from game ini too.
2014-02-19 01:11:05 -06:00
Ryan Houdek 6b5f6ddaa1 Merge pull request #82 from lioncash/vertical-alignment
Fix some vertical alignments
2014-02-16 19:12:42 -06:00
Ryan Houdek eae9d47c3c Change OpenGL extension initialization in to a big array
This is a reasonable chunk of changes and moves from multiple initialization functions in to an array initialization.
2014-02-16 17:40:34 -06:00
Ryan Houdek bc0584ea52 Merge pull request #76 from Sonicadvance1/arbitrary-exit
Fix ARM build
2014-02-15 22:07:23 -06:00
Ryan Houdek 9b57292395 Fix ARM build 2014-02-15 22:05:12 -06:00
Ryan Houdek 77851edc1b Fix the arbitrary exits. We have to make sure that the block links are cleared entirely. 2014-02-15 20:41:42 -06:00
Ryan Houdek 0a9fd93eda On block unlinking, wipe the address from the valid links. 2014-02-15 20:23:01 -06:00
Ryan Houdek d2a90e6eab If block linking isn't enabled then make sure there isn't a performance hit from getting a block number. 2014-02-15 20:23:00 -06:00
Ryan Houdek c5b8c65ddc Initialize linkStatus to false in the ARM JIT cores as well. 2014-02-15 20:23:00 -06:00
Ryan Houdek 22b86e64f5 redo 'jit: change our linking module to be able to handle arbitrary exit addresses' 2014-02-15 20:22:59 -06:00
Ryan Houdek b2c0d5d5e6 Merge pull request #71 from lioncash/jit-cleanup
Remove unused code in the JIT recompiler.
2014-02-14 23:11:06 -06:00
Ryan Houdek 8d25e12085 Merge pull request #54 from lioncash/cleanup
Cleanup mismatching struct/enum indentations.
2014-02-09 19:26:15 -06:00
Ryan Houdek 0030784cbf Merge pull request #38 from Sonicadvance1/GLExt-lessfail
Cleanup GLExtensions on how it fails.
Fixes Mesa with buffer_storage patches and no direct_state_access.
2014-02-09 17:48:34 -06:00
Ryan Houdek 6a5cd02629 Cleanup GLExtensions on how it fails.
If there is an issue with a reported extension, disable it instead of failing out entirely.
Fixes an issue with buffer_storage that I had overlooked as well.
2014-02-08 19:50:12 -06:00
Ryan Houdek 56603b297a Merge pull request #52 from Sonicadvance1/GLExt-compiletime
Improve GLExtensions compile time.
2014-02-08 15:51:02 -06:00
Ryan Houdek 9f91769def Improve GLExtensions compile time.
This changes from using logical and to bitwise and, which causes the compile time to drop from an absurd amount of time to around five seconds on my
crappy laptop.
2014-02-08 15:04:17 -06:00
Ryan Houdek 3666178f85 Remove Cache DL option from Android UI
This option has been removed entirely from Dolphin, so remove the option from Android
2014-02-06 17:02:38 -06:00
Ryan Houdek 7a9f7bfa83 Fix a typo in EGL.h for setting mode.
Seems to have been a copy and paste issue where SetMode would always set to DETECT
This isn't right since mode should be set correctly by SetMode
2014-02-06 21:41:11 +00:00
Ryan Houdek 00089433a6 Merge pull request #31 from Sonicadvance1/slowmemfix
[JITARM] Fixes an issue in the slowmem path that causes grey THP movies,...
2014-02-04 12:55:43 -08:00
Ryan Houdek 57f86f7f52 [JITARM] Fixes an issue in the slowmem path that causes grey THP movies, and issues of games not working like Mario Kart being incapable of getting ingame. This was due to me forgetting an instruction. 2014-02-04 13:44:26 -06:00
Ryan Houdek 70f66ad325 Merge pull request #24 from lioncash/remove-ocl-references
Remove leftover references to OpenCL from the Visual Studio vcxproj file for VideoCommon.
2014-02-02 01:53:53 -08:00
Ryan Houdek 99b6c82ac3 [Android] Fix Adreno v53 development drivers rotating framebuffer
Older Qualcomm drivers rotated the framebuffer 90 degrees and this fix didn't work.
Now for some obscene reason it rotates a full 180 degrees.
This can at least be worked around by flipping around the image on our end.
2014-01-29 16:39:45 -06:00
Ryan Houdek 990be70eb7 [Android] Fix Android not calling eglSwapBuffers
This isn't the cleanup that GLInterface needs, but for now it makes it so it'll swap and not just black screen
A cleanup to GLInterface will be coming in a couple weeks.
2014-01-29 15:54:55 -06:00
Ryan Houdek ac2ebd264d Merge pull request #5 from lioncash/android-info-fix
[Android] Fix three limits in GLES2InfoFragment.java.
2014-01-29 04:46:01 -08:00
Ryan Houdek fd8757a64b Fix OpenGL 2.1 devices that support everything we need.
The only two devices that do this are Mesa software rasterizer and Intel Ironlake(With a few hacks).
Basically since it doesn't support OpenGL 3.0, it can't grab the version the new way.
So failing that, it sets to GL 2.1, and continues.

Further along, on Ironlake at least, it tries grabbing the extensions the new GL 3.0 way and fails.
So have a fallback that grabs the extensions string the old way, in probably the most elegant way possible.
2014-01-23 16:02:53 -06:00
Ryan Houdek 650bae12e1 Bit of a failure. Fixes 6964.
I was attempting to grab wglSwapIntervalEXT prior to having a valid WGL context.
This was doomed to fail.
2014-01-23 08:04:33 -06:00
Ryan Houdek 07db7520bf [GLExt-Cleanup] This cleans up some extra bits unneeded in the extension headers
gl.h and glext.h provide most of the function pointer typedefs and defines for extensions and core features.
The only one it doesn't provide is GL 1.1 function typedefs, but this is to be expected.
If anything needs defines or typedefs in their header in the future, that's as easy as before.
2014-01-23 07:11:13 -06:00
Ryan Houdek 7e9b8d18a7 [android-about-menu-info] Add desktop OpenGL tab population.
Since showing every single limit that desktop OGL supports is crazy, Let's just show the basic information, and extensions.
2014-01-21 17:55:00 -06:00
Ryan Houdek d3ccf1c7b5 [android-about-menu-info] Have information populate the GLES2 and GLES3 tabs.
There is a /lot/ of information in these tabs, we may have to think about changing how the information looks
OpenGL isn't done yet since there are a million limits on desktop GL, may just show a few things and extensions there.
2014-01-21 17:45:39 -06:00
Ryan Houdek f28bf81db1 Revert "Modified project settings"
This reverts commit 6ad4c0efa6.

Get out of my tree Matt_P!
2014-01-19 15:07:40 -06:00
Ryan Houdek 683dbc09ac Stop building GLExtensions.cpp twice(One in GL, one in software). We don't need to build it twice, this'll save a bit of time in the build process.
Also a bit of spacing cleanup.
2014-01-19 11:37:37 -06:00
Ryan Houdek 5d26bf6d9d Rename our GLInterface class function 'GetProcAddress' in order to not have clashing function names due to Windows. 2014-01-18 14:18:32 +00:00
Ryan Houdek bea484e12f Move Win32 specific function grabbing fallback to WGL.cpp. Fixes issue 6964. 2014-01-18 14:10:24 +00:00
Ryan Houdek 839df31347 Merge of GL-AutoChoose.
This branch is the final step of fully supporting both OpenGL and OpenGL ES in the same binary.
This of course only applies to EGL and won't work for GLX/AGL/WGL since they don't really support GL ES.
The changes here actually aren't too terrible, basically change every #ifdef USE_GLES to a runtime check.

This adds a DetectMode() function to the EGL context backend.
EGL will iterate through each of the configs and check for GL, GLES3_KHR, and GLES2 bits
After that it'll change the mode from _DETECT to whichever one is the best supported.
After that point we'll just create a context with the mode that was detected
2014-01-18 04:11:59 +00:00
Ryan Houdek 29e0a90b88 [GLExtensions] Rename internal GetProcAddress function since it clashes with the global Windows function. Fix Windows function pointer grabbing. 2014-01-17 16:06:46 +01:00
Ryan Houdek cd145cb63e [GLExtensions] Refix GLES3 build. Until we clean up the platform detection this'll need to be here. 2014-01-17 16:06:40 +01:00
Ryan Houdek c744aca323 [GLExtensions] Move the include directory location for Externals/GL so no other library includes global GL folder first. 2014-01-17 16:06:35 +01:00
Ryan Houdek 3d4d3f6b11 [GLExtensions] Remove a bunch of unneeded headers. Fix Linux+EGL compiling. Move include to glx.h around to work around it including global GL/gl.h 2014-01-17 16:06:29 +01:00
Ryan Houdek 6cdb05b633 [GLExtensions] OpenGL 3.0 also added GL_ARB_map_buffer_range to core. 2014-01-17 16:06:23 +01:00
Ryan Houdek a5ffe9932a [GLExtensions] Future proof ourself by putting the default: instance on the top, so we'll grab extensions if they support something newer. Handle older GLVersions in the case they get that far. 2014-01-17 16:06:18 +01:00
Ryan Houdek 2a11fead5c [GLExtensions] Populate the extension list for OpenGL implementations that don't show core extensions. 2014-01-17 16:06:13 +01:00
Ryan Houdek 0ea6718d99 [GLExtensions] Fix OS X build. 2014-01-17 16:06:08 +01:00
Ryan Houdek 34c9a33807 [GLExtensions] Remove AGL GetProcAddress. Change dlsym to using RTLD_NEXT. Enable dlsym fallback for OS X 2014-01-17 16:06:03 +01:00
Ryan Houdek ca96274936 [GLExtensions] Make sure to link against libdl since we use it to grab GL function pointers in Linux/Android in the case the GLInterface->GetProcAddress fails. 2014-01-17 16:05:57 +01:00
Ryan Houdek 45dfa3a481 [GLExtensions] Missed a couple USE_GLES3 compile time differences. 2014-01-17 16:05:52 +01:00
Ryan Houdek 95ab2380c9 [GLExtensions] wxWidgets expects to statically link in to GL 1.1 functions like any sane project. Let them do this. 2014-01-17 16:05:47 +01:00
Ryan Houdek 97dc20d1be [GLExtensions] Pull in all the function pointers for OpenGL 1.1, This removes the need for a couple compile time differences between GL and GLES3 mode. 2014-01-17 16:05:40 +01:00
Ryan Houdek f308b878b2 [GLExtensions] Oops. Don't just outright disable these helper functions. 2014-01-17 16:05:34 +01:00
Ryan Houdek cfb8b43b4a [GLExtensions] Don't fail out loading funciton pointers in both ES2 and ES3 modes. 2014-01-17 16:05:25 +01:00
Ryan Houdek fc1f8291d6 [GLExtensions] Make sure to initialize our function pointers with VideoSoftware as well. 2014-01-17 16:05:07 +01:00
Ryan Houdek eba0c21b5a [GLExtensions] Fix Windows build.
Conflicts:
	Source/VSProps/Base.props
2014-01-17 16:04:05 +01:00