Commit Graph

3614 Commits

Author SHA1 Message Date
dok.slade d340b9497e Commit r5970 part #5: Removed unneeded MOV in branch instructions
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5977 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-25 19:10:50 +00:00
dok.slade 673f18837b Commit r5970 part #4: Merge some loops in PPCAnalyst::Flatten()
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5976 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-25 19:01:32 +00:00
dok.slade 16129f6f6d Commit r5970 part #3.1: Forgot to remove code unused since r5974
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5975 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-25 18:52:02 +00:00
dok.slade c7b4df19d7 Commit r5970 part #3: Inline the call to computeCR: it now costs a few more memory bytes per JITed instruction but it removes the CPU overhead of the CALL. This allowed to remove some unneeded MOV as well.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5974 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-25 18:44:34 +00:00
dok.slade cba42fab1d Commit r5970 part #2: Jit64::GenerateCarry() don't need a temporary register anymore
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5973 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-25 18:14:48 +00:00
dok.slade 68c8f345d7 Commit r5970 part #1: Fix what seems to be a bug in PowerPC instruction RFI: the wrong bit was cleared in MSR
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5972 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-25 18:03:14 +00:00
dok.slade fa2cfcd089 Revert r5970 before committing again part by part (except modifications about CR union)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5971 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-25 17:54:03 +00:00
dok.slade cbc66f9467 More performance work on the PowerPC JIT compiler:
* Merge some loops in PPCAnalyst::Flatten()
* Put ppcState.cr and ppcState.cr_fast[] into a single C++ union. This allows quick access to the whole CR register without needing to merge the cr_fast array. The implemented solution assumes the host system is little-endian, but it seems to be already assumed in many places in the code...
* Inline the call to computeCR: it now costs a few more memory bytes per JITed instruction but it removes the CPU overhead of the CALL. This allowed to remove some unneeded MOV as well.
* Jit64::GenerateCarry() don't need a temporary register anymore
* Fix what seems to be a bug in PowerPC instruction RFI: the wrong bit was cleared in MSR

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5970 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-25 15:37:56 +00:00
nodchip 15b741706d JitIL: Fixed the code which were pointed out in r5968.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5969 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-25 09:56:39 +00:00
nodchip 1cf1711149 JitIL: Added operand folding rules to increase speed.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5968 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-25 03:28:52 +00:00
Soren Jorvang f99a36ccfa Some refinements to (r5955+r5962+r5964):
Don't rely on trailing /'s in directory names.

Destdir only works for global builds.

Only tar up global builds if they are in a destdir to
avoid SCons eating all available memory indexing /usr.

Print current status of shared_foo in 'scons -h'.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5966 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-24 17:39:17 +00:00
Soren Jorvang d906dcee27 More SConstruct cleanup.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5962 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-24 13:10:54 +00:00
Soren Jorvang 53f5bc682d Make Cg conditional on those platforms for which it is available.
Of course, this doesn't do much good without another shader compiler..

WIP of OS X application bundle building.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5961 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-24 10:24:16 +00:00
Soren Jorvang 7828a689e7 Hopefully fix string concatenation on unicode builds.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5960 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-24 07:31:48 +00:00
Glenn Rice 43cbff64b5 More FrameAui work. Some more segmentation faults resolved. And a little more code clean up.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5959 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-24 02:36:22 +00:00
Soren Jorvang 949b873dc8 Further *BSD portability.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5958 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-23 23:51:34 +00:00
Soren Jorvang 2d06b4114b Some cases where where uses of wxFileSelector with
wxFileSelectorDefaultWildcardStr had been copy-pasted and
changed to use specific filetypes had retained the extranous
format arguments to wxString::Format.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5957 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-23 23:50:09 +00:00
Soren Jorvang 669de4890a abs() works on ints, not floats. Use fabsf() to avoid the double conversions.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5956 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-23 23:48:04 +00:00
dok.slade f8ce075ab1 Commit patch submitted in issue 2951 (PowerPC JIT optimizations)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5954 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-23 19:30:00 +00:00
Jordan Woyak 04da34ceb7 Lil fix for Gecko code endifs. ((CT7 CST1) error messages)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5950 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-23 06:39:07 +00:00
Jordan Woyak a3e3155678 Added a button to the "Gecko Codes" panel to download/parse codes from geckocodes.org. Codes that require modifiers (the XXXX business) will still not work properly, though they should load/save fine. A few more code types should work now. (All non-ASM type codes should at least attempt to run :p) Hacked a param into IniFile::GetLines to disable removal of text after # chars, so codes with # in the name/notes should load fine.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5949 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-23 05:22:12 +00:00
Glenn Rice 2e6c5b36ab Fix a segmentation fault when changing perspectives.
Some general code clean up.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5948 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-23 03:53:18 +00:00
Soren Jorvang ba67333053 Hopefully fix Windows build.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5947 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-22 08:58:23 +00:00
Soren Jorvang 8d2ed5975e Use the Linux install hierarchy conventions on other Unices as well.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5946 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-22 08:09:14 +00:00
Soren Jorvang 09b5dfbd53 Prevent Python from stripping off the final newline of the main(){}
autoconfiguration tests. Some versions of gcc care enough about ANSI C
to complain about this.
 
Use the Linux install hierarchy conventions on other Unices as well.
 
XKeysymToString returns NULL on unknown keysyms, which is not a valid
std::string initializer.
 
There appears to be some disagreement regarding the second parameter
to iconv(). Some versions/installations have it as const, others don't.
Unfortunately, due to wonderful C++ brain damage, implicit conversion 
from const to non-const doesn't work here.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5945 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-22 07:55:35 +00:00
Jordan Woyak 637e5e542a Double warning fix! Thanks to Nakeeeee and BhaaL! :p
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5943 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-22 05:39:57 +00:00
Jordan Woyak 41f5379c8c A slightly modified(fixed a memleak and sizer spacing) version of avindra's patch to improve the layout of the new "Cheat Search" dialog.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5942 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-22 05:28:24 +00:00
Shawn Hoffman 4230c2501e Fix small copy-paste error in Timer.cpp
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5939 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-22 04:21:10 +00:00
Shawn Hoffman 0d7e4703fb I *think* this is how XK envisioned the DTM structs...let us know if it is or isn't...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5938 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-22 04:16:51 +00:00
Soren Jorvang 35395366bd Revert to using ftime() on Windows which doesn't have gettimeofday(). Untested.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5937 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-22 04:15:11 +00:00
Shawn Hoffman 48abd94113 small fix for svnrev.h generation: now (again) dolphinwx project will cause the build number to be updated as well.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5936 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-22 04:11:28 +00:00
Soren Jorvang 83883cee45 Port to *BSD. It runs but isn't terribly useful without Cg.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5934 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-22 03:29:35 +00:00
Glenn Rice cdce0ec322 Build fix on linux.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5933 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-22 02:46:15 +00:00
Shawn Hoffman b4ce9c90b6 make generation of svnrev.h slightly more sane, by using vbscript instead of just batch script.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5932 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-22 02:46:11 +00:00
Glenn Rice 3859a7dce2 Lots more work on making the frame aui stuff functional.
Also added a DSPCORE_STOP state.  The DSP-LLE debugger window segmentation faults if it is openned when a game is not running.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5931 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-22 02:05:28 +00:00
Jordan Woyak fb36de2338 WIP Gecko(ocarina) code support: There are a bunch code types that need coding/fixing/cleanup, but many codes should be functional. The game properties and "Cheats Manager"(formally Action Replay Manager) dialogs now have a "Gecko Codes" tab to view/enable/disable codes. Currently, you must click "Edit Config" and manually add your codes to the [Gecko] inifile section of your gameinis for them to be displayed.(same format as the AR codes) I'm going to add Add/Edit dialogs similar to the AR codes and support codes with modifiers. I added the new files to scons as best as I could without testing :p.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5930 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-22 01:48:48 +00:00
nodchip 9f3e2ac2cc JitIL: Added operand folding rules for speed improvement.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5927 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-21 02:23:55 +00:00
Soren Jorvang 4ffea2c8b9 Less confused about absolute/relative/symbolic pathnames now.
Fixes Linux global build.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5924 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-20 04:50:43 +00:00
Glenn Rice 8c7bdebf1e Fix the global build on linux.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5923 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-20 04:19:25 +00:00
Soren Jorvang 244448014a Prevent double inclusion of CommonPaths.h as pointed out by Glenn.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5922 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-20 03:23:25 +00:00
Soren Jorvang 6813a75ab2 Some pathnames are used both by SCons and cpp which can be a bit tricky.
Should revisit and make the distinction more explicit.

Put the Data and Sys directories under Resources in the OS X app bundle.

Construct config.h (now lower-case to avoid confusion with other Config.h
instances in the tree) in the root. One tiny step towards a read-only
and cross-buildable source tree.

Some minor bits of non-Linux Unix portability.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5921 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-20 02:45:31 +00:00
nodchip c9855f2c22 JitIL: Implemented linear scan algorithm for register allocation. This is for speed improvement.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5919 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-19 15:07:19 +00:00
dapetcu21 8c57ef548e Fixed windows build...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5918 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-19 13:00:40 +00:00
dapetcu21 9074df896a UDPWii: Broadcasting it's presence on IPv4 to 255.255.255.255 once every 1.5 seconds. 3-arg Set()-s only worked on strings and doubles :P . Added int and bool variants.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5916 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-19 10:36:30 +00:00
Soren Jorvang a2b1f829cb Get rid of a number of unnecessary env.Clones.
Use SCons' convenient # shorthand for the root of our tree.
 
Also various minor cleanup of SConscripts.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5915 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-19 03:42:37 +00:00
Soren Jorvang 4ecfa3b7a2 Specify union members of new ARAddr type when printing it.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5914 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-19 03:32:50 +00:00
Glenn Rice b175397cb7 Some work on cleaning up the FrameAui code. Primarily this fixes the debugger windows for the audio and video plugins. They are now all subclasses of a wxPanel, instead of a mix of wxFrames and wxDialogs. This makes them work correctly in linux, windows (they really didn't before), and most likely on MacOSX too!
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5913 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-19 02:09:34 +00:00
Jordan Woyak 3457ead880 A bunch of cleanup and some fixes to ActionReplay: Fixes crashes with certain conditional codes.(such as the Wind Waker test rooms) When these conditions fail, they should skip all lines until a "00000000 40000000"(endif) line is reached.(the endif line was being handled as a regular code) There are still some codes which crash the emu, such as most of the Melee unlock codes. These Melee codes seem to have a bogus first line which tells AR to write .5 MB of zeros.(without this line they work) Codes from the net do not have this line. (The game inis seem to have some bad codes)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5912 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-19 02:08:34 +00:00
NeoBrainX 378d3aaa52 Make FIFO watermark tightness configurable instead of hardcoding it.
To change it, right click the affected game in the iso list, select Properties, and enter some constant for "Watermark tightness". Reasonable values range from 20 to 200.

FIFO seems unoverflowable on my computer no matter what I set this value to, so test whether tuning the value helps you ;P


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5907 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-18 15:47:28 +00:00
Soren Jorvang a96b00a16e Bitfields of sub-int size are promoted to (signed) ints even if unsigned.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5904 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-18 10:36:20 +00:00