Commit Graph

999 Commits

Author SHA1 Message Date
Marcos Vitali be193088ca - FIX RE0 GFX fifo errors :D
- This game read the CPRead pointer when the GP is processing data and after detach the fifo  and attach again an use this pointer for continue, so implement fifo.SafeCPReadPointer pointer.
- fifo.SafeCPReadPointer is updated when (FAKE_GetFifoEndPtr() - g_pVideoData) == 0) to have a pointer without GFX Commands Cut in the beginning of 32 block.
- Reset video buffer when the CPReadWriteDistance is written by the software.
- This commit is experimental please test a lot your games.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7165 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-13 15:08:37 +00:00
Marcos Vitali 05feabdb49 - Reimplemented FifoReset in other way, only call to GPFifo::ResetGatherPipe() ResetVideoBuffer() in FIFO_RW_DISTANCE_LO when this is equal to "0"
- In the Command Processor Control Register when GPReadEnable is OFF, wait until the fifo lopp finish with thi actual 32 bytes block. This is necessary to have Safe Disabble GP Read in this way AbortFrame is performed by the software, beside this can help to have accurate GPReadEnable OFF.
Please test Metroid Prime 1/2, Guilty Gear XX, X men gc, SMG, and shuffle you can test Harry Potter Prince for WII. :)

PD: The fifo code need a clean very soon.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7158 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-13 02:21:11 +00:00
pierre e81ccd7f33 Common: Change cpuid code again
Looks like compilers tend to use EBX for parameters if not told otherwise and
don't bother to update SP in leaf functions, so PUSH/POP kill local variables.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7151 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-12 18:40:02 +00:00
smelenchuk b0fa0a83f8 * Dump AVI output on every VI (fixes issue #4064).
* Add audio dumping (fixes issue #1638).


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7131 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-11 18:59:42 +00:00
skidau af139f4661 Used usleep(1) instead of _mm_pause on Linux and Mac OSX. This reduces the CPU usage in the video thread's idle loop. Added YieldCPU to the DSP LLE loop.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7125 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-10 12:56:21 +00:00
Marcos Vitali 86278642dc Experimental commit and one fix for my last commit.
I think that isFifoBusy bring better sync with VI (video interface) because the CPU emulated threads are waiting for DrawDone in BP Register. So, I do some modifications.
1) Rename "IsFifoBusy" by "isPossibleWaitingSetDrawDone"
2) Only activate isPossibleWaitingSetDrawDone when bFF_GPLinkEnable is true in fifo loop "Inmediate mode" that is because in theory this drawsync function is using in this mode.
3) Deactivate isPossibleWaitingSetDrawDone also in SetFinish in PixelEngine, beside when 32 block is finish.

Please regression in yours games thats can bring some FPS more above all with VPS frame limiter ON (Auto, 60, 50, etc).

- Fix waiting in AbortFrame(), please test mp1/mp2 is fixed again.

Good look! 

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7123 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-10 04:47:02 +00:00
Rodolfo Osvaldo Bogado 1f1c9132a6 revert some some of the soren changes to make dolphin compile in vs2008 again until sw plugin is completely fixed.
some correction to dlist caching

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7117 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-08 14:51:53 +00:00
Soren Jorvang 8c41d31651 Fix Plugin_VideoSoftware build.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7113 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-08 11:02:34 +00:00
skidau 855f97841d Paused the video thread while a save state was being created or loaded. Performed the save state operation after the fifo became idle. Saved the interrupt status of the video thread into the save state. This helps stabilise the save states in dual core mode in games like Super Mario Galaxy.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7112 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-08 10:37:47 +00:00
Shawn Hoffman a34b81cc01 vs2010:
buildfix
move much of the build settings to .props files
-please use them as much as possible in the future, instead of changing individual projects
NOTE: to avoid left over blobs, clean your builds *before* applying these changes.
TODO: add DebugFast target for projects that are lacking it. Lack of DebugFast targets cause the linker to use LTCG when we don't want it.
please test for regressions which could be caused by being too happy with compiler flags :)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7109 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-08 04:03:48 +00:00
gnick79 f48c283294 - CPUID
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7103 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-07 21:03:10 +00:00
gnick79 795cf08bbf CPU... (yes)..ID -.-'
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7102 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-07 20:31:28 +00:00
gnick79 05ef2c1337 - again CPUID :°D
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7101 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-07 20:19:21 +00:00
gnick79 d373258517 - CPUID asm changes for x64 systems.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7100 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-07 20:14:22 +00:00
gnick79 a4754956cb - CPUID
restored inline assembly code

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7099 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-07 19:08:19 +00:00
gnick79 b1a63e3e8e - CPUID 2nd Attempt
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7098 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-07 18:35:01 +00:00
gnick79 bba19bb36b * CPUID changes:
- Added full ability to recognize true Intel HTT CPU capability (support to discriminate Intel Core 2 Duo...)
  - Attempt to fix a register trashing (issue 4022 generally, linux and mac systems)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7097 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-07 18:25:55 +00:00
baby.lueshi 145559424c Fixed the new texture hashing functions to take samples into consideration. Fixes issue 4058
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7091 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-06 08:05:18 +00:00
hrydgard 1f42061163 fix silly string in CPUDetect
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7085 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-05 20:28:23 +00:00
Soren Jorvang 98e24f5873 The compiler need not obey the static keyword, so to avoid linker
problems, whole functions in .h files need to also be static in
case they are included in several .cpp files.

Also a few other minor LTO fixes.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7082 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-05 16:06:05 +00:00
baby.lueshi 888cd78724 Changes to hi-res textures. Textures now load correctly when loading/saving a savestate, and can be toggled on and off in game.
Changed non-hi-res textures to use MurmurHash3, which has better performance that the previous hash.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7080 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-05 10:08:06 +00:00
baby.lueshi 40ac272691 32-bit fix.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7068 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-05 00:31:35 +00:00
gnick79 d29b3e612a * Italian translation update
+ some little GUI adjustements

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7066 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-04 23:44:11 +00:00
baby.lueshi cd9e6a8d23 Change the recent speedup to the hashing function to fall back to the old version for custom textures.
Re-fixed custom textures higher than 1024x1024. (It must have accidentally got reverted somewhere during the video plugin merge)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7064 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-04 22:51:17 +00:00
skidau d698e022f5 Changed the hash algorithm to CRC32 utilising the SSE4.2 instruction. The algorithm will automatically be used for the Accurate Texture Cache, EFB to RAM and texture id's when a SSE4.2 capable CPU is detected. It will fallback to the old algorithm if SSE4.2 is not detected. Using CRC32 speeds up the hash algorithm by around 2X.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7060 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-04 08:37:58 +00:00
Soren Jorvang cc289a05bb Turn back on unit tests in SCons.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7057 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-04 01:02:06 +00:00
Soren Jorvang 6d70c14d12 In the SCons build, skip the generation of static libraries
and just operate on lists of object files instead.

This helps with LTO since LLVM/clang LTO is completely broken
by static libraries. It also helps identify symbol clashes
between components like the former plugins.

Many linkers also expect static libraries to form a strict DAG
which turns out be a difficult rule to uphold in practice,
especially since some of our platforms aren't picky about this.

LTO builds currently appears to crash at runtime because of
the static wx libs.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7056 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-04 00:46:56 +00:00
Shawn Hoffman ac3f2d9c19 Remove OpenAL for windows.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7053 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-03 21:35:26 +00:00
Soren Jorvang 1619e176ff Use brute force to link the software plugin.
Not yet functional.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7050 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-03 19:55:30 +00:00
Soren Jorvang a3ba93d9ce Thread affinity on OS X and *BSD.
Keep building the software plugin to prevent rot.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7045 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-02 21:52:43 +00:00
Soren Jorvang 9c21d003af Remove the global namespace a bit and remove some dead code.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7043 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-02 18:21:20 +00:00
Glenn Rice 8b309e26dc Remove PluginSpecs.h. Merge the few needed enums from that file into Common.h for now. I am up for suggestions on a better place for those.
Fix frame dumping on linux.
Make sure that on screen messages get cleared between games.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7039 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-02 04:40:27 +00:00
gnick79 ebc8f02885 * Better fix for CPUID (and this time is the right time)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7038 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-02 04:08:52 +00:00
gnick79 0f0adb4aee * Quick CPUID fix
- this should fix a detecting problem related to some AMD CPU


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7037 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-02 02:05:57 +00:00
Jordan Woyak 53ae9e9e8f Fixed vs2010 SVNRevGen project. (Also changed "make_svnrev.h.vbs" to jscript and gave it some comments :p) Removed some old plugin stuff.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7030 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-01 04:20:51 +00:00
Soren Jorvang e0e4a3ae02 Allow changing the fullscreen resolution on OS X.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7011 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-31 07:38:36 +00:00
Shawn Hoffman 0e91e5b238 fix windows (vs2010) build
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7010 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-31 06:08:46 +00:00
Soren Jorvang 8822674653 Fix *BSD build.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7002 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-31 03:02:23 +00:00
Soren Jorvang 18bb65b300 Fix OS X build.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6997 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-31 01:53:57 +00:00
Jordan Woyak fbaf965995 Eliminated the plugin interface. Merged DX9/DX11/OGL video plugins into Dolphin. It could still use a lot of cleanup. Lots of things are still named "plugin". Software renderer is temporarily disabled until it gets some namespaces. I only updated vs08/10, Linux/OSX builds are broken.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6996 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-31 01:28:32 +00:00
Glenn Rice cde1c5bd60 Remove the PIC linker flag for DSP on linux.
Fix some debugger issues.  Still need to get sound window working, but the invalid id panic alert is fixed.
Also, a ";" as a comment in an ini file is now only allowed at the beginning of a line.  The debugger has settings strings with semicolons in them.  That completely broke the debugger.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6989 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-30 17:04:12 +00:00
Soren Jorvang 2de8742368 Equip any new threads with an NSAutoreleasePool.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6978 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-29 23:46:26 +00:00
Soren Jorvang 043e324789 A few compiler warnings.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6975 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-29 22:48:33 +00:00
gnick79 3078db08c7 * Changed the Projection Hack option in game properties to "Custom Projection Hack"
- dislocating all sensible stuff related to "values per game/pattern" outside the sourcecode.
  - giving more control to end-users across the user-friendly interface.
  - deleting/cleaning some dead variables.
  - updating all gameconfig.ini data to reflect new PHack concept (pending upload).

* Updated Italian translation
  - Includes corrections, a better strings translating and suggestions directly by Google Code's people.

+ Minor old pending changes...

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6973 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-29 21:13:56 +00:00
Soren Jorvang 1287a9bb9f Be a little more careful about the use of SSE.
We really need to adopt the GCC model of one instruction set
per compilation unit.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6965 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-29 11:40:20 +00:00
donkopunchstania d5e5730fef If perspective divide is enabled and texture coordinate Z is 0 then leave texture coordinates alone. Fixes issue 3676.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6964 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-29 08:34:57 +00:00
Soren Jorvang d002a97575 RTLD_SELF is a recent addition on Linux.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6959 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-29 05:08:52 +00:00
Soren Jorvang 1bcad428ea Link the video plugin statically into the main binary on OS X.
This makes the OS X build more robust and should help pave the
way for the integration of the video plugins as well as LTO.

There are now no more global class level namespace conflicts left,
as evidenced by the fact that Dolphin can be linked with -all_load,
not that you would want to.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6958 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-29 04:52:19 +00:00
Rodolfo Osvaldo Bogado 4c58c7ea03 initial implementation of fog range adjust, I don't think is correct or work right but is a start.
some tweaks and fixes.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6957 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-29 04:31:56 +00:00
sl1nk3.s a8e2e9ec54 Fix the Audio tab and merge the DSP config into one.
Unify the DSP settings into DSP.ini

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6955 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-29 04:16:05 +00:00
Soren Jorvang 08b923a163 Fix OS X build.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6951 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-28 21:27:49 +00:00
hrydgard 419d6a244b DSP plugin merge - the two DSP plugins are now gone and all the code has been merged into Dolphin.
This WILL temporarily break the Linux and MacOSX builds but should be easy to fix.

Things left to do:
  * The UI on the new Audio tab for the LLE/HLE choice is ugly
  * At times the code still look "plugin-y" and needs cleanup
  * The two plugins should be merged further. DSPHLE should use the emulated memory etc of DSPLLE as much as possible, so that simply saving the DSPLLE state is enough. This would also bring the possibility of savestate compatibility between the two plugins.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6947 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-28 18:39:30 +00:00
Jordan Woyak 2c05c49a04 Replaced Common::Thread with a partial implementation of std::thread. (rvalue references are used if available, <thread> is used if possible) Eliminates the need to use dynamic memory allocation for threads, so it's impossible to forget to delete a thread or set a pointer to NULL. Enables use of type-safe thread functions, no need to cast to and from void*. I've made sure the code compiles in vs08 and tested the functionality of "StdThread.h" on Linux so I'm hoping everything will work :p. In the future "StdThread.h" can be removed (maybe when OS X ships with gcc 4.4 and vs2015 is released :p).
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6933 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-27 20:47:58 +00:00
Soren Jorvang 0288742565 Various minor fixes to allow building with clang on OS X.
Fixes issue 3992. 

wxWidgets patch at http://trac.wxwidgets.org/ticket/12332 .


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6929 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-27 05:01:00 +00:00
hrydgard 48b7658c8a Detect cpu features AVX and AES, both are present on Sandy Bridge. For future use :P
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6925 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-26 21:27:26 +00:00
Rodolfo Osvaldo Bogado 4c704be0ed second try, a compilable :) fix for issue 3976 and some optimizations to color loading that will not mess with colors.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6917 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-25 22:30:15 +00:00
Jordan Woyak d2044a7a23 Removed extra space character in "Use FPS For Limiting". Changed "Frame Stepping" to "Frame Advance". Some minor preprocessor cleanup.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6913 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-25 11:14:11 +00:00
Rodolfo Osvaldo Bogado 470ed118f5 little fix for issue 3976.
some optimization for vertex color loading, please test  for any change in game color, this is a optimization so nothing should change :)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6908 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-24 21:26:39 +00:00
Soren Jorvang 9f48012442 Inform SCons of the svnrev.h dependency so it isn't subject
to a race with the creation of Build/foo/Source/Common/Src.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6899 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-23 21:28:04 +00:00
Glenn Rice 1f722be056 Add a hack to match the *.* wildcard in a file search on non windows platforms. This fixes Metroid Other M on linux, and probably other games. Fixes issue 3966.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6895 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-22 18:19:42 +00:00
Soren Jorvang fecf10173b Use std::locale() on OS X and std::locale("") elsewhere.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6894 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-22 03:57:03 +00:00
Soren Jorvang 392a589092 Drop support for building on OS X 10.5. It is too much hassle to
work around the limitations of the no longer maintained Xcode 3.1.4
for Leopard. Running a 10.6-built app on 10.5 works fine through
through the use of the 10.5 SDK.

std::locale() seems to be the generally safer way to specify the
default locale and works on Linux and OS X at least. Thanks to
dasmetzelmaennchen for the pointer.

Remove some obsolete SCons related svn:ignores.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6893 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-22 02:18:25 +00:00
Soren Jorvang 1a3cd2d34c Remove the __APPLE__ workaround for reading config files from a ctor.
'#' is a fairly accepted comment character for .ini files along with
the more official ';', but '//' isn't.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6872 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-18 00:04:29 +00:00
Soren Jorvang e429d75489 Clean up nowx and stop cocoaApp busy-waiting in the main loop.
Set up an exit(3) task to shut down real wiimotes. This shouldn't
really be necessary, but we do currently handle a number of error
conditions by calling exit(3).

Retire the inputuicommon library.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6852 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-15 10:33:07 +00:00
pierre fb1ebd8022 Core/DSPCore: Consolidation of register accesses(except for the four hw
stacks), addition of a register cache(currently accumulators on 64bit only).

It feels a bit slower, but the numbers are about the same.
Caching accumulators doesn't change speed either.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6848 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-14 18:00:25 +00:00
Glenn Rice a747cb548c Clean up translator callback.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6842 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-14 00:15:08 +00:00
Glenn Rice 984b0d14d2 Translate PanicAlert captions too.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6841 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-13 20:53:37 +00:00
Glenn Rice c6e0ea59b9 Removed my previous PanicAlert translation hack. Fixed with a better method suggested by BhaaL. The translation is done by a callback in the MsgHandler routine that is set at program start. Added macros PanicAlertT, SuccessAlertT, PanicYesNoT, and AskYesNoT that are identical to the non T versions except those strings will be added by gettext to the po files to be translated. These can and should be used anywhere in the code for strings that should be translated.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6838 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-13 02:05:58 +00:00
Soren Jorvang 9ed3862c0a Executable memory above 2GB is okay on a 32-bit machine.
Fixes issue 3913.

The underlying problem, however, is that PanicAlert GUI popups
are broken on 32-bit Linux. I haven't looked into why that is.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6836 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-12 21:25:33 +00:00
Glenn Rice fcd72bdba9 Fix the panic alert hack for windows and osx. The macro needed to be defined after HAVE_WX is defined. That explains why windows accepted the string concatenation that I thought it wouldn't.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6829 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-12 18:09:16 +00:00
Glenn Rice a4dd8c41a8 Add a little hack to make it so panic alerts and questions can be translated if they are in the wxWidgets portion of the code, as well as make a few strings in the config dialog translatable.
Add Hungarian translations by Delirious.
Update Italian translations by RebuMan.
Update German translations by JackyCola and LucasX.
Update Greek translations by Gpower2.
Update Frensh translations by Pascal.
Make sure the game list is refreshed when the GC language is changed.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6826 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-12 13:14:50 +00:00
Soren Jorvang 6de6cf6d46 Don't bother quickly flashing the full pathname to the file loaded
in the title bar. It is more usefully displayed using the overlay
and long pathnames are not suitable for title bars and probably not
even safe depending on the underlying windowing system.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6817 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-11 16:19:15 +00:00
xsacha 3f5d1afc6a Use alignment for ReadDataU32XN. Revert james temp fix.
Should provide some form of a speedup.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6812 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-11 04:54:35 +00:00
Soren Jorvang d78be40be9 Print the performance status in exactly one place.
Placing the render window at position 0,0 makes it unmovable on OS X.

Use the conventional r1234 format for SVN revision numbers.

Delete mis-copied .svn directories from the application bundle.
 
Only warn about a failed low-memory allocation if one was requested.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6811 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-11 04:09:11 +00:00
NeoBrainX 81638396c0 Some more work on CMake on Windows:
- add support for precompiled headers with MSVC
- compile with _FILE_OFFSET_BITS=64 and _LARGEFILE_SOURCE only for our sources, some dependencies seem to have problems with it enabled...
- disable -Wall for MSVC too prevent warning flood
- rename aes_cbc.c and aes_core.c to cpp files since it makes stuff a lot easier and there's really no reason not to do it since they had been compiled as C++ before anyway

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6797 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-09 16:36:19 +00:00
Rodolfo Osvaldo Bogado d47d2a05d2 some little optimizations and some cleaning.
now lighting should be fully functional again in SM 2.0 cards

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6794 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-09 14:13:24 +00:00
Soren Jorvang d4158f076a Allocate low executable memory on OS X as on Windows and Linux.
Even with LoadStorePaired accounted for, there are still some
niggling 64-bit cleanliness bugs left that are not practical
to weed out on a single platform. We should probably have an
option to use >2GB memory only on all platforms for debugging.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6792 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-09 14:09:27 +00:00
Rodolfo Osvaldo Bogado f869281301 normalize the efb to texture process for color textures to make it work the same in all the plugins and with the same accuracy as real hardware (almost :))
please test for regressions and fixes.
some little changes to make pixel shader more dx9 sm2.0 friendly. the condition is not to use pixel lighting ( sorry no hardware support for the quantity of parameters needed).

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6777 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-07 19:23:57 +00:00
Soren Jorvang 95b6d3f445 Kill HAVE_OPENCL.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6756 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-06 01:11:32 +00:00
Soren Jorvang 4bf07838a8 Use abspath when deleting the old Source..svnrev.h.
Makes no difference for me with SCons 2.0.1,
but maybe it does with other versions.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6717 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-01 22:47:29 +00:00
Soren Jorvang 6ffdbe8482 Use the public svn_rev_str for the kernel.bin header instead of
the private SVN_REV_STR which relies on finicky build mechanics.

With SCons, kill the old svnrev.h in Source if still present.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6715 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-01 21:08:30 +00:00
nitsuja- a55925af79 fixed crash when compressing 4+gb isos on some builds
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6700 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-31 10:40:49 +00:00
Jordan Woyak 2c4f9825ca Fix issue with LinearDiskCache where only new files could be written to, Append() would fail on previously existing cache files.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6690 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-30 07:32:16 +00:00
pierre fc1db5eaa0 Core/DSPCore: Reorganize register layout for accessing accumulators
(acc and ax) and product register with one read/write.

Gives a minuscule speedup of not more than 4%. In exchange, breaks all
your out-of-tree changes to dsp. Tests are not building again, yet.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6680 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-29 02:12:06 +00:00
pierre c33f46406e Core/DSPCore: Improve Interpreter address register add/sub, convert to
assembler for JIT. Replace JIT ToMask() with a different variant. Remove
 superfluous zeroWriteBackLog calls(added by me).
Core/Common: Don't bother creating a string and calling into a Logs trigger()
 when there is noone listening. Change AtomicLoadAcquire for gcc to just
 make the compiler not reorder memory accesses around it instead of doing
 a full memory barrier, per the comment in the win32 variant.
Core/AudioCommon: Fix a use of uninitialized variable inside libalsa.

Microbenchmarking results for ToMask variants:(1 000 000 000 iterations):
             cpu\variant| shifts | bit scan
intel mobile C2D@2.5GHz | 5.5s   | 4.0s
amd athlon64x2@3GHz     | 6.1s   | 6.4s
(including some constant overhead identical to both variants)



git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6667 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-27 15:05:18 +00:00
Soren Jorvang 64d43211c9 Use the same code for populating user data directories one by one
on OS X as on other Unices so OS X initial installs aren't so easily
broken by files being created in constructors.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6661 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-27 00:26:52 +00:00
LPFaint99 547c18fb55 Add the ability to Get / Set Array data from SysConf
wiimote bd's are now read from (or added to if < 4 exist) SysConf
in theory you should be able to use any valid sysconf file now,
but i would advise against using a dolphin edited SysConf on a wii

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6646 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-22 08:00:08 +00:00
Soren Jorvang 3d68608024 Fix Unix build.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6645 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-22 06:45:59 +00:00
LPFaint99 6c556786fb Move AES to common lib
move pch includes to vcproj file for discio

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6643 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-22 06:00:36 +00:00
LPFaint99 9584b5b335 Update Wii save import / export to use the same replace list as FileIO
add a couple of country codes I found through redump.org database

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6640 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-22 00:48:59 +00:00
blubberdiblub 38e80fe094 Fixes some file handling in IPC_HLE
* change File::GetSize to fetch the size directly from the open file instead
  of stat'ing it when challed with a FILE*
* use changed File::GetSize(FILE *f) instead of calling with file name in two
  places
* remove "seek_pos % file_size" hack for ZTP, so one can seek to the end of
  file again. Please check Zelda: Twilight Princess for regressions
* return error codes when reading or writing from/to a file

A lot of those changes are from j4ck.fr0st, so kudos to him.

I did not change the file open mode for ISFS_OPEN_WRITE to "wb". While that
would probably be more correct, it says in the comment that it might affect
Mario Kart Wii. I would prefer somebody with that game try that change
locally first.

Please check your games for regressions (or even improvement). Some games that
may be affected are Zelda - Twilight Princess and Metroid Prime 3.

Fixes issue 1749



git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6634 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-21 18:03:44 +00:00
Rodolfo Osvaldo Bogado 3749c3e57d update shader cache version to force regeneration
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6623 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-19 22:28:22 +00:00
nitsuja- 6492b84ca5 this probably doesn't fix anything noticeable, but, it seems like a bug that C_COLORMATRIX+4 overlapped with C_PLIGHTS
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6620 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-19 21:09:29 +00:00
nitsuja- 98fe8437ae reduced frequency of dx9 ps_2_0 pixel generation errors, and made dx9 efb depth peek of 16-bit depth buffer not use 24-bit adjustment factor. shouldn't affect other the plugins.
(probably nobody else cares, but I need at least one video plugin that actually works on this computer)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6618 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-19 20:59:23 +00:00
Soren Jorvang 98e89c9329 OS X std::locale only supports the "C" locale and will give an exception
on any other, including "" when a different one is specified through the
POSIX locale environment variables.

This is not normally a problem since these variables are stripped out from
the environment when an application is launched by the Finder. This is not
the case when running the binary directly from the command line, such as
when debugging.

I have temporarily disabled the use of std::locale("") on OS X while I try
to come up with a better solution.

Fixes issue 3598.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6615 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-19 16:11:55 +00:00
gnick79 c68ae8e91e Related to CPUID detecting:
* fixed a bug on display info for AMD CPUs.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6612 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-19 15:06:30 +00:00
Glenn Rice 05ad8d01d3 Fix TextureDecoder.cl to work on both NVidia and ATI video cards.
To do so I had to re-add the casting bloat removed in revision 6102.  Also, for some odd reason the NVidia OpenCL drivers don't like 8 bit rotations, but are okay with 2, 4 bit rotations.  These are apparently bugs in the NVidia drivers that are hopefully fixed in future versions.
Also, on linux make sure the TextureDecoder.cl file is copied from the shared data directory to the users directory.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6611 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-19 14:59:57 +00:00
skidau 9114c96c78 Cached the compiled OpenCL kernels to disk (User/OpenCL/kernel.bin). This reduces the start up delay in OpenCL mode. Added a 10 byte header to the file which contains the current svn rev string. This will recompile the OpenCL kernels with every new revision.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6608 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-19 11:03:09 +00:00
gnick79 522746b2c2 **Changes**
* More formats recognition for "Clear Screen" step. Improved the ability handling the alpha channel (% color translucency).
* Related to CPUID detecting:
	- Added support displaying correct SysInfo for recent multicore Intel CPUs x86-64 with HT/SMT (Core i3/i5/i7 and Xeon) based on Nehalem architecture.

+ minor and passive changes.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6604 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-18 18:23:22 +00:00
Orphis 42e40b46c0 OpenCL: Fix error reporting when the build log is too long
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6603 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-18 04:54:16 +00:00
skidau 77a36cf9cb ABI fix for Linux x64. ABI_CallFunctionCC16 was not calculating the jump distance on far calls.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6600 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-17 05:16:51 +00:00
pierre a82a61c53a Core/DSPCore: Fix more memory accesses for linux x64
Core/Common: Add more asserts for too large displacements


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6595 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-16 22:38:31 +00:00
NeoBrainX aa226aaf41 Revert most stuff from r6517 and revert r6501.
PixelShaderGen changes broke Mario Kart Wii, ClearScreen changes broke Super Mario Sunshine.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6592 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-16 17:40:45 +00:00
skidau f67afb4fca LLE JIT:
* Optimised the updating of g_dsp.pc in the compile loop (code by kiesel-stein)
* Added JIT version of LRI (code by kiesel-stein)
* Added JIT versions of the branch instructions (code by Jack Frost)
* DSP_SendAIBuffer fix (code by Mylek)
* Marked instructions that update g_dsp.pc in the DSP table and updated PC based on the table (speed up)
* Fixed the signed bits not being set properly in the addr instruction
* Created a MainOpFallback function to use interpreted versions of the instructions if necessary (code by kiesel-stein)
* Disabled the jit versions of subarn and addarn as they are slowing down NSMBW

The above work in both x86 and x64 modes.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6582 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-15 01:42:32 +00:00
Glenn Rice 35fef1f173 Revert back to LogTypes. Fixes issue 3668.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6580 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-14 17:52:01 +00:00
Soren Jorvang 738e5e55ee Cast size_t to unsigned long for printf to deal with (32-bit)
systems where size_t is typedef int.

It's either this or use the C99 %zu but while we can probably
safely assume C99 compilers, I am not at all sure that that's the
case for stdio libraries and this solution is fairly low-impact.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6535 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-05 18:22:41 +00:00
Soren Jorvang c2f84fdccb CLRun is now used everywhere but OS X.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6532 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-05 16:57:32 +00:00
Soren Jorvang f169def36f First pass at dealing with different size_t/off_t sizes in C90 environments.
Most of the code dealing with the LogTypes namespace was C which lead to a
lot of nonsensical casting, so I have dumbed LOG_TYPE and LOG_LEVEL down to
plain C even though the move of wiiuse into Source means we don't currently
call GenericLog from C.

Set logging threshold to MAX_LOGLEVEL at startup so debug builds will also
p  rint debugging messages before the GUI is running.

For some reason the way we use SetDefaultStyle doesn't play nice with wx 2.9
so we just get the default black text on a black background. Using a gray
background works around that problem, but I found it to also be much easier
on the eyes so I have switched the background color on all versions.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6528 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-05 15:59:11 +00:00
Shawn Hoffman 9da4fe086b allow gcc to check the format of args being passed to MsgAlert and GenericLog. Fixed nearly all warnings that arose from this, as well as some preexisting ones (some were actually crashes and/or bugs...)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6522 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-05 09:04:34 +00:00
Rodolfo Osvaldo Bogado 6df84ddc31 little fix for r6517
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6520 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-05 03:36:37 +00:00
Rodolfo Osvaldo Bogado c8305a7b7d two fixes in this commit:
first fix for issues introduced in sms in r6501, please test for a regressions in The Calling
Second Fix for Issue 3539, by making pixel Dept calculation an option. in games with this issue Enabling pixel depth will solve the issue, in other games disabling the option will not cause speed lost
some cleanup in dlist cache

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6517 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-04 17:58:33 +00:00
Shawn Hoffman e70e623624 Second attempt at issue 3458. Fixes issue 3458.
Replaces all occurrences of ftell and fseek with ftello and fseeko, respectively. This matters on non-win32 where only these names are altered by the _FILE_OFFSET_BITS define. Win32 still just maps the funcs to ftelli64/fseeki64.
Also add some File::GetSize I had skipped in my last commit.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6515 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-04 03:50:55 +00:00
Soren Jorvang 63d690e94c 4.4BSD derived OS'es always have 64-bit file sizes.
XXX This should probably be in CommonFuncs.h or something.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6512 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-03 14:56:55 +00:00
Shawn Hoffman 3d441febda Attempt to fix issue r3458. I don't have a 32bit linux install, however I know it will at least fix compressing. Please test if uncompressed games run.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6510 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-03 12:42:01 +00:00
donkopunchstania f91ac92895 Change comparison in specular light function. Fixes issue 1258.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6505 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-01 04:50:25 +00:00
donkopunchstania 1f660de7e5 Avoid repeatedly asserting in SWG plugin when matrix indices don't match. Small change to the transform unit to avoid some unnecessary work. Check if Q is zero before dividing UV coordinates by it. Fixes issue 3454.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6504 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-01 04:26:21 +00:00
NeoBrainX 76b9e975d5 DX11: Fix mipmaps. Someone forgot creating them at the proper time ;P
DX11: Fix a DX11 debug runtime error caused by the vertex shader output signature and the pixel shader input signature not matching if per-pixel lighting is disabled. Someone forgot disabling those pixel shader parameters ;P
DX11: Enable use of dynamic textures wherever possible.
DX9: Remove two unnecessary TODOs. Someone forgot removing those since they've been obsolete for a long time ;P

Anyway, at least working mipmaps and dynamic textures should increase DX11 performance a bit. And "a bit" is more than my usual "marginally" ;)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6473 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-24 19:13:19 +00:00
gnick79 b197f8600c * Updating Linear DiskCache version in reflection with changes introduced in r6463
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6466 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-23 15:51:08 +00:00
Glenn Rice cefaa393e6 Layout should not be called until after a sizer is inserted into its parent. This fixes the "gtk_widget_size_allocate(): attempt to allocate widget with width -5 and height 17" type console warnings that are annoying on linux. If there are issues with this on other platforms let me know, but there shouldn't be.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6459 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-22 15:25:59 +00:00
Glenn Rice a3c46990f6 Revert to gettimeofday on posix systems. I give up.
Temporary fix for OSX in JitIL.cpp
This revision should build on OSX again.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6457 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-22 02:42:53 +00:00
Glenn Rice 222c2d1297 Revert revision 6464. _POSIX_MONOTONIC_CLOCK is not used in that way.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6455 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-21 21:31:37 +00:00
Soren Jorvang 92fe490270 POSIX feature symbols can be defined even if not implemented.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6454 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-21 20:45:42 +00:00
Glenn Rice 39a4781a5f Check if CLOCK_MONOTONIC is supported before using clock_gettime.
Fix the cmake check to see if -Wno-unused-result is supported by the compiler.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6453 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-21 19:13:55 +00:00
Glenn Rice 7788bac40c Fix ogl screenshots for windows.
Fix the macosx build (perhaps).
This changes the JitIL timed profiling to using assembly language to obtain the time.  It does seem to be faster.  Not sure if it will work on macosx, but if it does it has the necessary precision that gettimeofday does not have.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6448 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-20 03:24:51 +00:00
Glenn Rice ef55177ed6 Implement JitIL profiling on linux. I also tried implementing __rdtsc using assembly and didn't really see a speed improvement so went with clock_gettime.
Also changed other gettimeofday calls to clock_gettime, which is supposedly more accurate.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6447 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-20 00:22:56 +00:00
Glenn Rice 0644295f3d Build fix. Remove some obsolete code. Fix some compiler warnings.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6428 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-16 21:14:19 +00:00
Jordan Woyak 73ed235fd1 Changed macro for disallowing copy-ctor and =operator into an inheritable class. Removed IrPointer.ini (no longer used)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6421 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-15 05:29:10 +00:00
Jordan Woyak b4ffd640b7 Made LinearDiskCache a template class. Keys are now some POD type (fixed size). Eliminates casting and key size checking.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6420 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-15 05:22:03 +00:00
Soren Jorvang 02edf66b49 Simplify OpenCL compile-time detection on OS X.
Turn wiiuse io_osx.m into Objective-C++.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6398 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-13 20:02:01 +00:00
Soren Jorvang 146ddff550 Simplify GenericLog() for C/C++.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6391 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-13 00:10:00 +00:00
Glenn Rice c0bdf4de81 Several little things.
The C version of the GenericLog was being used in both C and C++ branches of the code.
Parent panic alerts by the main_frame so that those windows get the icon too.
Fix a couple of compiler warnings.
Added some checks for libraries in the cmake build.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6385 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-12 05:05:27 +00:00
Glenn Rice adbd7fbd4a Fix StringFromFormat hopefully for the last time. This should be more efficient than before. Thanks to shuffle2 for the windows code.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6379 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-11 04:59:50 +00:00
Glenn Rice 072a698856 The change to StringFromFormat was overwriting the last character with the NULL terminating character.
Also update a deprecated function call.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6374 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-10 23:23:12 +00:00
Jordan Woyak 6ece147568 StringUtil fix
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6370 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-10 06:10:43 +00:00
Glenn Rice 895f1500a5 Fix for my tweak in the last commit. I knew I had that working at one point.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6369 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-10 05:18:20 +00:00
Glenn Rice 92a5b72b42 Linux build fix. stricmp does not exist on linux. Also a small tweak to the StringFromFormat routine.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6368 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-10 04:44:25 +00:00
Jordan Woyak 26f84c1e74 StringUtil cleanup. Nothing seems broken.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6367 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-10 04:12:31 +00:00
Glenn Rice 7b34def0fc A couple of changes to the cmake build system.
First:  Added a DESTDIR option for package building.
Second:  Change the OpenCL setup.  On both linux and windows use CLRun.  I completely removed the option here.  If CLRun works on MacOSX this should be done there as well, and this change implemented in the scons build also.  Then we could remove the HAVE_OPENCL and the new USE_CLRUN definitions.  Then we will finally have the dynamic detection of opencl set up cross platform.
On a side note, it doesn't seem that the program loaded from TextureDecoder.cl compiles or runs.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6366 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-10 01:59:53 +00:00
Glenn Rice 3aff478b3a Add the c++ definition HAVE_CONFIG_H in the scons build and check it before including config.h so the cmake build system doesn't need to worry about conflicts from that file if it exists.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6342 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-04 20:33:45 +00:00
Glenn Rice 4ac40687ea Okay. Big (possible controversial changes) to the cmake build system.
I am officially killing the local/global build crap.  The "local" build thing should never have existed.  There is now only one build that is essentially what the "global" build was before.  This is the way a proper build system should work.  I will soon write a wiki page to describe how to properly use the cmake build system, and how you can still set things up to get the "local" build from before.  However, that type of build should be considered a developer tool, and not the way that dolphin-emu should be built.
Briefly, to use cmake now do the following from the toplevel of dolphin's source:
mkdir Builddir
cd Builddir
cmake ..
make
make install (you may need superuser privileges)

Note that the scons build is still building dolphin in the old way.



git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6341 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-04 13:47:17 +00:00
Soren Jorvang 78ab1c0f3f More robust way of building on 10.6 for a 10.5+ target.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6314 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-24 20:07:12 +00:00
Nolan Check b71cd5f383 A couple minor things I have left over
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6312 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-24 19:41:10 +00:00
skidau 56e79aa87d Added a safer OpenCL shutdown procedure.
Fixes issue 3015.
Fixes issue 3089.
Fixes issue 3099.
Fixes issue 3360.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6307 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-24 04:17:36 +00:00
Nolan Check 2ec3db44ed OpenGL plugin: Support for dual-source blending, CURRENTLY DISABLED. It doesn't work yet. To fix it, we may need to convert all our shaders to GLSL so that we can use glBindFragDataLocation.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6306 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-23 19:55:19 +00:00
Nolan Check 95cfca08e2 Put infrastructure in place so that other plugins may support dual-source blending.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6296 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-21 05:22:18 +00:00
Nolan Check cb453a0fb3 DX11 plugin: Do destination-alpha in a single pass. No more drawing the same geometry twice! SMG is faster now because it uses destination-alpha extensively. This uses dual-source color blending, a DirectX 10-level feature. The equivalent OpenGL function comes from the GL_ARB_blend_func_extended extension, which was made core in OpenGL 3.3.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6294 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-20 03:11:22 +00:00
Soren Jorvang 739c9eb2df Allow building without bluetooth support.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6273 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-12 23:39:16 +00:00
Soren Jorvang a89b8f4a7d Fix scons build.
OS X real wiimote support not yet tested post-merge.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6271 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-12 20:14:09 +00:00
Jordan Woyak 7e08fc19fc Moved WiimoteNew into Dolphin and eliminated the old wiimote plugin. Removed wiimote plugin support. Moved input dialog related InputUICommon stuff into DolphinWX. Removed now unused InputCommon files. UDPWiimote stuff is temporarily disabled until it is reorganized so Core won't depend on wx. Real wiimotes are now initialized on first need(wiimote diag open or game start) and left initialized until Dolphin exit.(maybe this will work better for Linux/OS X) (scons probably needs some fixes)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6270 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-12 19:42:29 +00:00
Rodolfo Osvaldo Bogado 7797b9d753 a little bugfix and a small optimization.
this should fix issue 3313 but i can't test it


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6267 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-10 14:35:31 +00:00