Dolphin SVN r5995

Revision 5995:

Use .cpp suffix when detecting libraries. On some systems, g++
is required to correctly link with C++ libraries like wxw.

Tell OS X that the user is doing something when using the wiimote
so that the screensaver doesn’t come on when playing a Wii game.

Replace unnecessary floating point with integer math.

Remove unnecessary ‘s.

Correct a few type nits.

Revision 5994

Implemented MMU Demand Paging
* Emulated correct behaviour of DSI and ISI exceptions
* Added memory exception checks
* Added fast TLB cache implementation (written by booto)
* Added “Enable MMU” option in the game properties
* Renamed old TLBHack to “MMU speed hack”

Thanks to booto (PowerPC) and nash (testing) who spent many weeks of their time helping me make this work. Also thanks to shuffle2 for finding and converting the map file of the original target.

There are two options for MMU emulation found under the game properties. “Enable MMU” is the accurate emulation option. “MMU speed hack” is the old TLBHack renamed. Most games will work with one or the other. Some games can work with both options ticked.

Only the JIT recompiler and Interpreter work with the MMU code. JITIL is not supported (too hard for me to add).

The speed optimised code still needs a lot more work and is disabled for now.

Fixes issue 2546
Fixes issue 2583
Fixes issue 2704

Revision 5993

New Wiimote Plugin: Added a real wiimote io_write queue like the old plugin. A combination of locks and lack of a write queue were the cause of the real wiimote slowdown. – new plugin should work as good as the old one with real wiimotes now.(but still lacking a pairup button) Other stuff: Disabled execution of Gecko Codes when Dolphin has cheats disabled.(fixes issue 2971) Allow the range of an input to be increased to 500% (will make ps3 controller’s tilt more usable)


r5995 x86 – скачать, зеркало

r5995 x64 – скачать, зеркало

Dolphin SVN r5989

Revision 5989:

Revert the conversion from u32 to size_t from my last commit to reduce compiler warnings in windows.
Fix an issue that made it impossible to close the console and log windows in windows.

Revision 5988

Fix an issue that caused the DSP-LLE window to be openned twice in windows. (Thanks shuffle2).
Fix an issue that prevented the code window settings from taking effect on application start. (Thanks shuffle2, skid_au, and sanchez).
Fix a potential segmentation fault with the DSP-LLE debugger window.

Revision 5987

Sory, I’ve forgot to delete my logs in my last commit. :)

Revision 5986

When the new FIFO is being attached We make sure there wont be SetFinish event pending if so reset this. This protection fix Eternal Darkness booting, because the second SetFinish event when it is booting seems invalid or has a bug and hang the game.
This is EXPERIMENTAL, in theory don’t break any game but if so Revert this commit immediately please.
Note: Beside Eternal Darkness needs DirectX 11 or DirectX 9 with Zelda Hack to works fine.

Revision 5985

Fix some more resizing and saving of such.

Revision 5984

BPHack option removed (it was not used anymore)


r5989 x86 – скачать, зеркало

r5989 x64 – скачать, зеркало

Dolphin SVN r5983

Revision 5983:

Fix an issue using render to main in combination with the log window or console window, in which the renderer was not resized when the panes were resized.
Also refresh the log window at that time so artifacts are cleared.
A little more code cleanup of the debugger windows.

Revision 5982

Merge JIT instructions when loading 32-bits immediate values :
PowerPC needs 2 instructions to load a 32-bits immediate value in a register (lis + addi; lis + ori). We can merge both instructions into a single SetImmediate().
This commit shares code with r5799, so to prevent another flame war on OSX vs Windows, I added #ifdef around the “bad” lines…

Revision 5981

Fix an issue introduced in my last commit. When the debugger is not used and the log or console windows are closed from the menu the notebook is not closed.


r5983 x86 – скачать, зеркало

r5983 x64 – скачать, зеркало

Dolphin SVN r5980

Revision 5980:

Gecko codes: Added parenthesis where they were needed.(thanks to glennrics and soren) Fixed a copy paste error with write & fill 8bit codes. Also forgot to remove a return false;.(some more codes should work (fixed issue 2968)) New Wiimote Plugin: Added emulated swinging.(seems to work) Changed the emulated calibration data to some nice values. ControllerInterface: moved and constified some stuff.

Revision 5979

More work on the FrameAui:
Added a default perspective for the debugger.
Save all perspectives, and not just the active one.

Revision 5978

Fixes a crash in the new wiimote plugin when using real wiimotes plus making real wiimotes work again.

Revision 5977

Commit r5970 part #5: Removed unneeded MOV in branch instructions

Revision 5976

Commit r5970 part #4: Merge some loops in PPCAnalyst::Flatten()


r5980 x86 – скачать, зеркало

r5980 x64 – скачать, зеркало

Dolphin SVN r5973

Revision 5973:

Commit r5970 part #2: Jit64::GenerateCarry() don’t need a temporary register anymore

Revision 5972

Commit r5970 part #1: Fix what seems to be a bug in PowerPC instruction RFI: the wrong bit was cleared in MSR

Revision 5971

Revert r5970 before committing again part by part (except modifications about CR union)

Revision 5970

More performance work on the PowerPC JIT compiler:

* Merge some loops in PPCAnalyst::Flatten()
* Put 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


r5973 x86 – скачать, зеркало

r5973 x64 – скачать, зеркало

Dolphin SVN r5969

Revision 5969:

JitIL: Fixed the code which were pointed out in r5968.

Revision 5968

JitIL: Added operand folding rules to increase speed.

Revision 5967

Produce usable global+destdir tarballs with pathnames relative to / .
This is a bit hacky as SCons’ built-in tar handling basically makes
this impossible. I should just write a “relative path” tarball Builder.


r5969 x86 – скачать, зеркало

r5969 x64 – скачать, зеркало

Dolphin SVN r5966

Revision 5966:

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’.

Revision 5965

Just a small thing that I forgot to change earlier.
The new default wiiuse wiimote read timeout of 30ms has been overridden previously by the default 10ms from the wiimoteplugin.

Revision 5964

Fix scons stuff broken in revision 5962. The prefix must be conditional on whether the build is global or local. Help should be shown after tests are performed so that the actual values reported are not just an echo of the default values. The bundle is separate from the destdir option.

Revision 5963

Fixes issue 2958 / 2960
Removed wiiuse linkage to common.lib and removed inclusion of log.h(r5944) under windows, since it’s obviously causing problems.

Revision 5962

More SConstruct cleanup.

Revision 5961

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.


r5966 x86 – скачать, зеркало

r5966 x64 – скачать, зеркало

Dolphin SVN r5960

Revision 5960:

Hopefully fix string concatenation on unicode builds.

Revision 5959

More FrameAui work. Some more segmentation faults resolved. And a little more code clean up.

Revision 5958

Further *BSD portability.

Revision 5957

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.

Revision 5956

abs() works on ints, not floats. Use fabsf() to avoid the double conversions.

Revision 5955

Simplify SConstruct.

Revision 5954

Commit patch submitted in issue 2951 (PowerPC JIT optimizations)

Revision 5953

Remove references to dead “io.h”.

Revision 5952

Merging Externals/WiiUse/Src and Externals/WiiUseSrc as requested.

Revision 5951

Revision 5952


r5960 x86 – скачать, зеркало

r5960 x64 – скачать, зеркало

Dolphin SVN r5953

Revision 5953:

Remove references to dead “io.h”.

Revision 5952

Merging Externals/WiiUse/Src and Externals/WiiUseSrc as requested.

Revision 5951

Buildfix for wiiuse/windows (broken since r5944) and more wiiuse clean up, plus merging external and internal wiiuse.h as requested.


r5950 x86 – скачать, зеркало

r5950 x64 – скачать, зеркало

Dolphin SVN r5950

Revision 5950:

Lil fix for Gecko code endifs. ((CT7 CST1) error messages)

Revision 5949

Added a button to the “Gecko Codes” panel to download/parse codes from 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.

Revision 5948

Fix a segmentation fault when changing perspectives.
Some general code clean up.


r5950 x86 – скачать, зеркало

r5950 x64 – скачать, зеркало