Commit graph

1373 commits

Author SHA1 Message Date
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
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
Ryan Houdek
9bded1382c [ARM] Add ASR/ASRS and UMULLS emitters. 2013-08-19 06:26:34 +00: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
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
fede38985e Replace OpenSSL with PolarSSL
Works on windows, not yet cmake.
2013-08-15 20:47:47 +12: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
Pierre Bourdon
ffdd79df36 Move VideoBackendBase from Common to VideoCommon 2013-08-14 23:16:46 +02:00
Jasper St. Pierre
b5c2737c9f IniFile: Don't parse comments after the [Section] brackets
This is non-standard behavior. We won't fail to parse, but we now
won't write them back out either.
2013-08-11 11:32:10 -04:00
Jasper St. Pierre
0eaea5f4df IniFile: Remove support for comments anywhere but the beginning of lines
The MS INI parser and most other INI parsing libraries APIs only support
comments at the beginning of lines. Right now, some Game INI files use sections
like:

  [OnFrame]#Add memory patches here

But these section headers are parsed separately, so this should not break
them.
2013-08-11 11:30:52 -04:00
Jordan Woyak
a279001472 Remove "-0" from stable version numbers in a more foolproof manner for vs and cmake builds. 2013-08-10 17:19:19 -05:00
Rachel Bryk
90d454d22f Remove -0 from stable release version numbers. 2013-08-08 23:59:53 -04:00
Pierre Bourdon
9ea01aa7a8 Use a multibyte-neutral codepage when calling *printf on Windows.
More explanation in code comments.

Fixes issue 4046.
2013-08-09 00:17:48 +02:00
NeoBrainX
72abe7c654 Fix a stack corruption in ExtendedTrace.
Fixes issue 6454.
2013-08-08 20:29:20 +02:00
Lioncash
9d0554e4a6 Free two memory leaks in ArmCPUDetect.cpp
Char pointers aren't freed after use.

Fixed this in PPSSPP a few days ago. Forgot to check here for the same thing until now.
2013-08-06 18:17:54 -04:00
Ryan Houdek
ca7fb9f38e [ARM] Fix VCVT F32<->F64 encoding. 2013-08-03 00:48:44 +00:00
Ryan Houdek
ab0f42636d [ARM] Push new ArmEmitter changes from PPSSPP. Mostly Fixes a few VFP/NEON instruction encodings. 2013-08-02 23:18:44 +00:00
Jasper St. Pierre
52482115e1 Move in-game keybinding handling to a central location
Instead of handling it separately in every backend.
2013-07-21 23:17:16 -04:00
Ryan Houdek
f4b414a9c1 Fix encoding issue with VADD(Integer) 2013-07-16 22:18:15 -05:00
Ryan Houdek
9123f58bd5 Check for IDIVA/IDIVT correctly. Cortex-A5 parts would have had this set since it supports VFPv4 but not IDIVA. Qualcomm Krait/Krait 300 still doesn't report in the kernel that it supports this. 2013-07-16 01:22:25 -05:00
Ryan Houdek
012c32c14c [Android] Undefine the swaps in Android completely, not just on ARM Android. 2013-07-11 08:58:10 -05:00
Ryan Houdek
7d6b36bf73 Fix most ARM warnings 2013-07-05 19:56:15 -05:00
John Peterson
0fd3acd152 Saving real Wiimote state
because that's simpler than reconnecting
2013-06-25 09:24:14 -04:00
Ryan Houdek
6bb7cc5fea [Android] Add an about screen that shows build revision. 2013-06-22 22:54:36 -05:00
NeoBrainX
15943de313 Revert "Added optimizations to ClassifyFloat/Double functions in Mathutil.cpp and to PPCCache.cpp"
This reverts commit 7aae9ccbc0.

Reasons:
- no test results have been provided to prove the usefulness of the patch
- broken coding style
- the author hasn't replied to any criticism
2013-06-22 12:25:03 +02:00
Armada
fc7099a905 Set the locale per-thread instead of globally when generating shaders. Add cross-compatible versions of newlocale, uselocale and freelocale.
This commit fixes a rare race condition when generating shaders because setlocale is global.
2013-06-16 12:33:13 +02:00
eli173
7aae9ccbc0 Added optimizations to ClassifyFloat/Double functions in Mathutil.cpp and to PPCCache.cpp 2013-06-01 19:17:52 -05:00
Ryan Houdek
09def3ed3f [Android] Add in a compiling option for GLES3 2013-05-05 23:37:01 -05:00
Matthew Parlane
934e150596 Merge branch 'master' into wii-network
Conflicts:
	Source/Core/Core/Src/Boot/Boot_BS2Emu.cpp
	Source/Core/Core/Src/ConfigManager.cpp
	Source/Core/Core/Src/HLE/HLE_OS.h
	Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_es.cpp
	Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_es.h
	Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_net.cpp
	Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_net.h
2013-04-24 00:48:00 +12:00
Pierre
9a8dd7963e Merge branch 'dspjit'
Conflicts:
	Source/Core/Core/Src/DSP/Jit/DSPJitExtOps.cpp
	Source/Core/Core/Src/DSP/Jit/DSPJitMisc.cpp
	Source/Core/Core/Src/DSP/Jit/DSPJitRegCache.cpp
	Source/Core/Core/Src/DSP/Jit/DSPJitUtil.cpp
2013-04-21 12:29:18 +02:00
lioncash
d244bca1f5 Fix a bunch of random typos in comments and logging.
Also update the comment headers for two functions in GCMemcard.cpp.
2013-04-19 09:21:45 -04:00
Ryan Houdek
491ffabb56 Android Clang doesn't support TLS, so do the same thing as OSX. 2013-04-18 22:52:53 -05:00
Ryan Houdek
f811d11863 Fix clang building the std headers. 2013-04-18 22:52:05 -05:00
Ryan Houdek
d68955c539 Clang uses __clear_cache instead of __builtin___clear_cache like GCC 2013-04-18 22:50:58 -05:00
Lioncash
bab9963b00 New license header introduced for DiscIO, AudioCommon, InputCommon, VideoCommon, and Common projects. 2013-04-17 23:09:55 -04:00
lioncash
ef85b9af45 Update the license file text (change SVN to Git) in all projects except Core since I was told a merge was happening soon. So for the sake of the merge going smoothly, I'll fix that when I remove the tab/space mismatches from the Core project.
Also, some tab/space mismatches removed from VideoOGL, and some places I missed in VideoDX[number] projects.

Now, the Core is literally the only project with tab/space mismatches (on a large scale).
2013-04-15 16:28:55 -04:00
Ryan Houdek
bde7ea00ef Removes the Java ButtonManager for one in the C++ source so the OSD class can call in to it each frame for drawing the buttons. Copy our assets to the dolphin-emu directory for now. Remove NativeRenderer, ButtonManager, and Button Java classes since they aren't used anymore. Buttons A, B, and Start all work and are drawn on screen now. Button input on Android is still a bit hacky, needs a proper controller interface still. Android specific button drawing code is still hanging out in SWRenderer.cpp 2013-04-14 20:39:56 -05:00
Pierre
6b5b8ab5be Implement and use MOVZX(64, 32,...)
Probably better to keep that same-register-MOV assert useful. Also,
explicit type extension documents whats happening.

Internally, this boils down to the original MOV, but without the assert.
2013-04-14 13:34:29 +02:00
Pierre
701b5916ab Revert "In memory of calc84."
This reverts commit 539bf405f2.
2013-04-14 13:34:29 +02:00
Ryan Houdek
605bbf5ca8 Merge remote-tracking branch 'origin/master' into Android-trash 2013-04-13 00:58:37 -05:00
Ryan Houdek
6d9c0c8863 Merge in latest changes to ArmEmitter from the PPSSPP crew. Should fix the dumb random crashes I had from IOS icache clearing not initializing a value. 2013-04-12 11:59:19 -05:00
Matthew Parlane
5eeed7aa9f This should never have been committed. Sorry. 2013-04-12 00:14:38 +12:00
Matthew Parlane
0c9d8d34e1 Merge branch 'master' into wii-network
Conflicts:
	Source/Core/Core/CMakeLists.txt
2013-04-11 19:55:36 +12:00
Jordan Woyak
385d8e2b15 ChunkFile has allowed me to accidentally "Do" a non-POD for the last time! 2013-04-09 19:02:22 -05:00
Jordan Woyak
71f4bf25a7 Make FifoQueue take advantage of rvalue references to avoid std::vector copies. 2013-04-04 19:34:50 -05:00
Ryan Houdek
d06379fc59 Fix 32bit Linux. GCC's lrotl/lrotr instrinsic functions are 32bit when building for 32bit, we require 64bit at all times, so keep using our own instead. 2013-04-03 12:43:17 -05:00
Ryan Houdek
b5676fe82b Fix GCC 4.8 compiling. GCC 4.8 now defines _rotl/_rotr/_lrotl/_lrotr. 2013-04-03 10:52:26 -05:00
Jordan Woyak
d951c4c374 real buildfix 2013-04-02 13:07:51 -05:00
Jordan Woyak
c65473d9d3 Probably a sloppy buildfix. 2013-04-01 23:30:05 -05:00
Jordan Woyak
69779a4321 Fix loading of "themes" with non-ascii character names.
Fixed issue 6189.
Why did GetUserPath return a non-const ref to string..?
2013-04-01 23:22:20 -05:00
Pierre Bourdon
49d809ac0e Merge branch 'osx-libcxx' 2013-04-01 18:17:49 +02:00
Lioncash
58159a1693 Some more logging typos and clarifications. Missed these in my last commit.
This commit mainly elaborates on some messages a little more. Also fixes some typos that slipped through the last commit.

A large change in text can be seen in EXI_DeviceMemoryCard.cpp. I added more info as to why a write to a memory card may fail. (This actually was a reason I was unable to write to a memcard recently).

Elaborations can be seen in WGL.cpp

I did change some comments in some files that I was correcting logging messages in, however this is only if I spot a typo or if an abbreviation is lower-cased. Even in that case, the amount of changes done to comments is very minimal.
2013-04-01 00:10:54 -04:00
Lioncash
f432d6038e Fix some typos and correct some capitalizations in the log messages.
Makes the logging look more orderly and less spammy when spitting out things.
2013-03-31 19:13:30 -04:00
Pierre Bourdon
194ada2481 More MSVC 2010 build fixes 2013-03-29 07:55:56 -07:00
Pierre Bourdon
38db520617 MSVC 2010 does not have <mutex> or <thread> either, adding the Std* files back 2013-03-29 07:53:45 -07:00
Pierre Bourdon
a8513e4605 Re-add StdConditionVariable, MSVC 2010 does not support <condition_variable> 2013-03-29 07:42:41 -07:00
Pierre Bourdon
4895e38bd5 This change might work better if I git add the files 2013-03-29 07:31:15 -07:00
Pierre Bourdon
b73941c0ea Use libc++ for Mac OS X builds now that we require >= 10.7 anyway 2013-03-29 07:29:31 -07:00
Lioncash
b1dd14c319 Fix a slight leak in LogManager.
m_debuggerLog wasn't ever deleted in the destructor.
2013-03-27 23:39:48 -04:00
skidau
7784fa4c67 Merge branch 'master' into wii-network
# By Ryan Houdek (185) and others
# Via degasus (12) and others
* master: (625 commits)
  Revert "Don't open/close file for every file operation." as it was crashing PokePark in Windows builds.
  Array overrun fixed in VertexShaderCache for the DX11 plugin.
  Fixed DSPTool build.
  Windows build fix
  Go back to assuming every HID device is a wiimote on Windows. Fixed issue 6117. Unfixed issue 6031.
  VideoSoftware: Improve fog range adjustment by using less magic and more comments.
  revert RasterFont for VideoSoftware
  ogl: fix virtual xfb
  Windows build fix from web interface...
  Adjusted the audio loop criteria, using >= on the Wii and == on GC.  This fixes the audio static that occurred in Wii games after hours of play.
  Forced the exception check only for ARAM DMA transfers. Removed the Eternal Darkness boot hack and replaced it with an exception check.
  VideoSoftware: Implement fog range adjustment, fixing issue 6147.
  implement 4xSSAA for OGL
  move ogl-only settings into backend
  Fix description of disable fog, and move it to enhancements tab.
  Reverted rd76ca5783743 as it was made obsolete by r1d550f4496e4.
  Removed the tracking of the FIFO Writes as it was made obsolete by r1d550f4496e4.
  Forced the external exception check to occur sooner by changing the downcount.
  Mark the Direct3D9 backend deprecated.
  Prefer D3D11 and OpenGL over D3D9 by default.
  ...

Conflicts:
	CMakeLists.txt
	Source/Core/Common/Common.vcxproj.filters
	Source/Core/Common/Src/CommonPaths.h
	Source/Core/Core/Core.vcxproj.filters
	Source/Core/Core/Src/Core.cpp
	Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_FileIO.cpp
	Source/VSProps/Dolphin.Win32.props
	Source/VSProps/Dolphin.x64.props
2013-03-27 13:19:23 +11:00
Ryan Houdek
7034c79ab9 Big commit. Fix running the APK, I had missed a view in the manifest. Clean up the Android EGL context creation to fit more in line with how Dolphin works. This breaks input at the moment as well. Change the memarena from 768MB to 64MB to allow 1GB phones to potentially run it. Rename EGL_X11 back to EGL since this merge brings in some of soreau's changes to more easily allow different platforms like Wayland and Android. Not quite all of the code because some needs to be cleaned up still. 2013-03-24 21:06:34 -05:00
NeoBrainX
bb3ce1f8d3 Mark the Direct3D9 backend deprecated. 2013-03-23 23:53:19 +01:00
NeoBrainX
816020f4eb Prefer D3D11 and OpenGL over D3D9 by default. 2013-03-23 23:52:30 +01:00
Ryan Houdek
d11679a06e Android mega commit of trash. 2013-03-19 21:53:09 -05:00
lioncash
edd9d0e0ef Clean up more space/tab mismatches in AudioCommon, Common, and VideoCommon.
Not planning to touch Core since it's the most actively changed part of the project.
2013-03-19 21:51:12 -04:00
Ryan Houdek
7d74293170 Fix a typo in ArmEmitter noticed by LionCash. 2013-03-18 08:45:33 -05:00
Ryan Houdek
9ae9910490 Finish up VFP cleanup. A few more instructions are left for VFP, and a bunch of NEON ones if it will ever be used. 2013-03-18 00:10:56 +00:00
Pierre Bourdon
612c2e8516 Fix converting the charset of an empty string. Thanks to MrData on the forums for reporting this issue. 2013-03-17 14:37:00 +01:00
Ryan Houdek
8c1091a21f Merge branch 'master' into GLSL-master
Conflicts:
	Source/Core/VideoCommon/Src/PixelShaderGen.cpp
	Source/Plugins/Plugin_VideoDX11/Src/VertexManager.cpp
	Source/Plugins/Plugin_VideoDX9/Src/VertexManager.cpp
2013-03-15 11:19:52 -05:00
Ryan Houdek
e6c6053fcc Beginning of VFP cleanup. Will finish when I have the hardware in front of me. 2013-03-14 10:45:26 -05:00
Ryan Houdek
b4830be9bc Actually set the bIDIVa value in the ARM CPUDetect. 2013-03-14 08:48:01 -05:00
Ryan Houdek
c93f7760ce Really clean up all the emitter loadstores on ARM. If a ARM device supports VFPv4, then it supports IDIVA, so handle that in CPUDetect. 2013-03-14 01:50:38 +00:00
Ryan Houdek
202e2fa5c8 Add a new WriteNewStoreOp emitter function for beginning of rewrite of the Arm Emitter LoadStores. Will finish when I have the hardware in front of me to test on. 2013-03-13 14:08:54 -05:00
degasus
382be2aabd Merge branch 'master' into GLSL-master
Conflicts:
	.gitignore
2013-03-12 11:28:56 +01:00
Ryan Houdek
8406d9972d Fix JIT from rebasing on PPSSPP ArmEmitter. 2013-03-12 02:35:29 +00:00
Ryan Houdek
b94b4a9e8f Rebase ArmEmitter on PPSSPP's base. The loadstores are making my heart cry at this point. 2013-03-11 13:57:55 -05:00
Ryan Houdek
be217bf096 Add a comment about Qualcomm in load stores. 2013-03-07 20:28:18 -05:00
degasus
12e84f918a Merge branch 'master' into GLSL-master
this fix debug build
2013-03-07 17:05:32 +01:00
Ryan Houdek
f3528277c4 Make sure to mask out the FPU rounding mode correctly. Good spot from LionCash. 2013-03-07 09:52:38 -06:00
degasus
eaa5a77d9e fix debug build 2013-03-06 20:47:48 +01:00
degasus
a1c5e90083 Merge branch 'master' into GLSL-master
Conflicts:
	CMakeLists.txt
	Source/Core/DolphinWX/CMakeLists.txt
	Source/Core/DolphinWX/Src/GLInterface.h
	Source/Core/VideoCommon/Src/PixelShaderGen.cpp
	Source/Core/VideoCommon/Src/TextureCacheBase.cpp
	Source/Core/VideoCommon/Src/VertexManagerBase.cpp
	Source/Plugins/Plugin_VideoDX11/Src/VertexManager.cpp
	Source/Plugins/Plugin_VideoDX9/Src/VertexManager.cpp
	Source/Plugins/Plugin_VideoOGL/Plugin_VideoOGL.vcxproj
	Source/Plugins/Plugin_VideoOGL/Plugin_VideoOGL.vcxproj.filters
	Source/Plugins/Plugin_VideoOGL/Src/GLUtil.h
	Source/Plugins/Plugin_VideoOGL/Src/PixelShaderCache.cpp
	Source/Plugins/Plugin_VideoOGL/Src/TextureCache.cpp
	Source/Plugins/Plugin_VideoOGL/Src/VertexManager.cpp
	Source/Plugins/Plugin_VideoOGL/Src/VertexShaderCache.cpp
	Source/Plugins/Plugin_VideoOGL/Src/main.cpp
2013-03-06 15:59:29 +01:00
degasus
8d5299c20b Merge branch 'vertex-loader-cleanup' 2013-03-06 14:08:02 +01:00
Ryan Houdek
d6558e1c31 Make the (V)LDR/(V)STR instructions support negative offsets. This fixes a bug where Arm Jit couldn't load the top 33 FPRs. Also makes it so the core can access all GPRs, FPRs, and SPRs in ppcState. This increases VPS 15-20 on SSBM intro movie on ODROIDX 2013-03-06 01:51:59 +00:00
Jordan Woyak
2095641af0 OK, seriously, buildfix. I shouldn't even have commit access! 2013-03-05 16:17:45 -06:00
Jordan Woyak
b34991c4c3 Buildfix for real. 2013-03-05 16:08:26 -06:00
Jordan Woyak
fe3a54d7fd Buildfix! 2013-03-05 15:48:57 -06:00
Jordan Woyak
10d57a3402 Use standard binary multiple unit symbols for game size display.
Use integer math for the calculation as we cannot rely on floats for something as important as game size display!
2013-03-05 14:58:30 -06:00
Jordan Woyak
f3f89e1d00 Merge branch 'master' into vertex-loader-cleanup
Conflicts:
	Source/Core/Common/Src/CommonFuncs.h
	Source/Core/VideoCommon/Src/VertexLoader.cpp
2013-03-04 15:47:56 -06:00
Jordan Woyak
814c2ffdfd Fix some leaking file handles and buildfix probably. 2013-03-03 19:20:35 -06:00
Jordan Woyak
989f0663eb Make "Crypto" file opening unicode-safe on Windows. 2013-03-03 19:14:13 -06:00
Jordan Woyak
c07b8a6e37 Fix more of what I broke. 2013-03-03 17:08:41 -06:00
Jordan Woyak
aeb4fc9846 Fix what I broke. 2013-03-03 02:12:24 -06:00
Jordan Woyak
6c8adf6130 Eliminate the wstring game name.
Some cleanup throughout related code. (try to make logic in ISOFile understandable by a human)
Encode strings in UTF-8 rather than somehow trying to determine the encoding in the GUI code.

Non-windows OSes temporarily broken.
2013-03-02 20:00:36 -06:00
Jordan Woyak
2b1af36900 Merge branch 'master' into windows-unicode 2013-03-02 15:33:32 -06:00
Jordan Woyak
2356e5c0e7 Eliminate some baseless restrictions in PointerWrap, mainly vector<string> not working. 2013-03-02 03:32:30 -06:00
Jordan Woyak
b0630790c1 It's 2013! Why can't I use C++11 yet!? 2013-02-28 19:42:29 -06:00
Jordan Woyak
dea1e2827d Open std::fstream in a unicode-safe manner. 2013-02-28 19:33:39 -06:00