Commit Graph

3922 Commits

Author SHA1 Message Date
nodchip a5333f80d1 Gecko code: Fixed the thread-safe problem reported in r6227.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6230 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-27 01:18:25 +00:00
pierre bc1e0c24e8 Add an PanicAlert in case we try to do an >32 bit displacement
If you see this alert, dolphin will probably crash in a few moments.

Found in the course of fiddling with DSPLLEs JIT, which puts its data
structures and static code somewhere above 0x7fff00000000 on my machine, making
it unreachable via 32bit displacements from the created code at ~ 0x40000000.

Fixed all the offending places in DSPLLEs JIT to emit register indirect accesses,
only to find out that the generated code is slower than the interpreter and does
work just as good(or bad). Oh well, back to DSPHLE it is then.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6229 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-26 19:37:30 +00:00
nodchip 2f44464eef Fixed the build error in r6227.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6228 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-26 06:58:21 +00:00
nodchip 436a927566 Gecko codes: Implemented CT6 CST1 code type (insert asm code in the game). This function may need many tests.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6227 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-26 06:31:45 +00:00
nodchip e011b4a6a6 Jit64/JitIL: Removed a redundant MOV instruction. This commit suppresses alert windows of debug binary in windows.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6226 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-26 04:50:12 +00:00
pierre 91036ae160 Slightly adjust z-values calculated in the vertex shader so OGL does not clip the
final rendering of (at least) Sonic Unleashed.

This should be (nearly) invisible in Z16 depth copies and in games, but there is
some chance that it collides with other such border cases. There probably is some
room to decrease the adjustment but 9999999/10000000 is not enough. A static offset 
may be an option, too. I don't know if the game can/does set something like that.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6225 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-23 19:38:49 +00:00
Rodolfo Osvaldo Bogado e641323de2 i know still a lot to fix and much work to do but sometimes experiments are fun :)
for all the plugins implemented per pixel lighting, this will make games that uses lighting  a lot nice. (just look at mario sunshine and compare :))
for dx9: implemented temporal anaglyph stereo: just grab your red-cyan glasses  and enjoy.
stereo calibration: use stereo separation ( distance of the point from you are looking) and Focal Angle: the angle necessary to focus in one particular object.
this settings are different in every games as they use different depth ranges.
please for any regression and bug introduced by this commit.
if you ask why i did not implement stereo in dx11 and opengl the reason is one: they don't work right when i have more time will try to find a way to make them work.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6224 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-23 02:17:48 +00:00
nodchip 5e806eb7b2 Jit64/JitIL: Implemented simple function inlining for speedup.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6223 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-23 02:05:04 +00:00
nodchip 97a9c375f9 JitIL/Jit64: Removed std::vector for speed up.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6222 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-22 02:42:17 +00:00
Jordan Woyak 194493cc04 Some work on merging the video plugins: Added a new plugin to the solution(shouldn't build by default) which combines the DX9, DX11, and OGL plugins with their common code merged (and some things temporarily removed). In it's current state the plugin is hardly usable. Perhaps someone with knowledge of the video plugins will be able to fix the things I have broken more easily than me(or point me in the right direction). I will continue to work on it as well.
Main Issues:
DX11 is functional with a ~2MB/s mem leak.
OpenGL/DirectX9 have a black display while game runs. (DirectX 9 flashes good display on emulation stop)
Too many virtual function calls. (once everything is working, I will work on removing them)
Won't build on non-Windows in its current state. (mainly EmuWindow will need changes for Linux/OS X)
Probably other stuff.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6219 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-20 21:45:47 +00:00
Jordan Woyak eda652b7a0 New Wiimote Plugin: Fix Emulated Wiimote Problem.(fixes issue 3230) Made the "Connected to X Wiimotes" text update on all tabs when clicking "Refresh"/"Pair Up". Some other cleanup.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6216 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-18 16:43:43 +00:00
anusko 7216699fc4 Seems like I broke something in r6127. I'll fix it asap but for now l'll just revert it. Sorry :-(
This closes issue 3180.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6215 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-17 20:01:09 +00:00
Jordan Woyak 19a50b3c51 New Wiimote Plugin: Added a real wiimote "Pair Up" button on Windows for the Microsoft bluetooth stack, like the old plugin. The PairUp function was copied from the old plugin and cleaned up. (Mostly untested because I'm not using the MS stack) Please test. Other minor changes to emu-wiimote and DInput. (Perhaps the "Refresh" button should call PairUp() followed by Refresh() to make the dialog simpler.)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6213 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-16 22:50:18 +00:00
Jordan Woyak 2cddf48cde ControllerInterface: DirectInput: Added support for Ramp and various Periodic force types. Only Constant forces were supported prior. (only partially tested due to lack of hardware) This may improve performance for those experiencing emulated wiimote slowdowns when using DInput rumble.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6212 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-16 05:09:29 +00:00
Glenn Rice 7824855116 Silence some compiler warnings that have accumulated.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6211 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-16 04:22:27 +00:00
nodchip 72af7b3e5e Jit64/JitIL: Fixed the constant value used to control block merging.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6210 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-16 03:46:23 +00:00
nodchip 2774d4ffd4 Fxied the build error in r6207.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6209 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-16 02:38:28 +00:00
Glenn Rice b7ba3ffc84 Fix a segmentation fault if "Change Disc..." is selected and then the file chooser is cancelled.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6208 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-16 02:12:00 +00:00
nodchip 26ab958ffb Jit64/JitIL: Corrected address information used for speed hack. This commit will prevent slow down with block merging in some games.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6207 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-16 01:58:02 +00:00
skidau a3b59f6845 Change Disc functionality:
* Fixed the "Change disc..." command.  The filename of the disc was being lost between functions.
* Split the ChangeDisc function into two functions: EjectDisc and InsertDisc
* Moved the "Change disc..." command to the File menu.
* Removed some log messages that caused the debug build to crash when loaded with release build plug-ins.

Fixes issue 3036.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6206 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-15 12:30:56 +00:00
Rodolfo Osvaldo Bogado 73adab0ce1 Dlist Cache step 2:
include referenced array data in the hash to avoid problems in some games.
this version is a slower than the last version but is more stable, still much work to do but so little time to do it :)
Added Dlist Caching Option to the plugin configuration so anyone can compare the performance change.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6205 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-14 22:48:22 +00:00
nodchip 08b999dbfa VideoCommon: A minor optimization.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6204 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-14 13:52:17 +00:00
nodchip 412ce56f83 Added options to enable/disable Block Merging and DList Cache into game specific settings.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6203 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-14 13:50:25 +00:00
skidau 4ec8f97154 Fixed channel loading from the System Menu. Also gave the menu a speed up by increasing the IPC_HLE_PERIOD.
After launching a channel, the wiimote has to be disconnected and reconnected for it to work.  The same also has to be done when returning back to the menu.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6202 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-14 12:32:02 +00:00
Shawn Hoffman 5c4c8ec07a bs2emu: load 32bytes of the disc header to memory instead of just 10bytes.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6201 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-12 13:27:37 +00:00
j4ck.fr0st 51cd032af3 Clear m_TitleIDs when opening Device_ES (Fixes Issue 3205)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6200 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-11 10:41:57 +00:00
skidau 9d57903065 Emulation accuracy improvements
* Implemented HID4.SBE flag
* Implemented but disabled MSR[IR] and MSR[DR]
* In-lined ISI exception calls
* Fixed and verified exception handling according to docs
* Code clean-up in the memory functions


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6199 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-11 02:34:51 +00:00
Shawn Hoffman 18123251d1 allow multiple titles on sysmenu versions > 3.0
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6198 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-10 21:06:59 +00:00
nodchip ccb96be9b3 Jit64/JitIL: Enabled block merging to improved the performance. This improves the fps 4-5 faster in some games. However it decreases the fps 10 slower in other games, MP2 and etc. In this commit, the actual block merging is disabled. If you want to try block merging, please set FUNCTION_FOLLOWING_THRESHOLD to a positive integer.
Increased the size of code buffer to prevent cache clearing with block merging.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6193 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-09 02:14:03 +00:00
j4ck.fr0st bf4a18e08c Fix a few things in ES I had lying around.
Booting newer SysMenu versions still doesn't work, tho.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6192 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-08 17:08:01 +00:00
LPFaint99 a20483eedd Hackfix launching pal games from discchannel (cause was missing tik for ios required by game)
when sysmenu asks for tik of a ios give it its own tik

Update issue 3186
it should work now :)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6191 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-08 06:23:37 +00:00
LPFaint99 d422039f0a call DIVerify when a wii game is launched directly by dolphin (adds tmd+uid)
after this revision, wii save manager (< 3.0) should show any saves on the emulated nand

fixes an old issue with GetTitleID
fixes issue 1716.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6190 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-08 00:20:19 +00:00
LPFaint99 e0383634d3 Implement parts of DIVerify that can be useful. (copy tmd to emulated nand for disc titles)
correct some parts of uid.sys as disc title ids are included
title in uid + tmd on nand is how the sysmenu knows which save files to look for.
IE games that are displayed in the disc channel at least once and have a save file will be
viewable in the sysmenu save manager

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6189 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-07 06:06:08 +00:00
baby.lueshi dee24e5695 Added support for recording multiple GameCube controllers at once.
Fixed recording playback to automatically enable/disable the correct controllers.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6188 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-06 21:41:01 +00:00
skidau c710ae7529 Added a speed hack for the MMU games. The speed hack is enabled by default. "Enable BAT" in the game properties enables the old accurate emulation behaviour.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6187 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-06 14:43:28 +00:00
Shawn Hoffman 5948865bcc jiggle includes in hci.h/l2cap.h: msvc <= 9 doesn't provide stdint.h
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6186 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-06 13:47:18 +00:00
Glenn Rice c551a2ee51 Linux build fix.
Also fixed a couple of compiler warnings (one in SystemTimers.cpp that was an actual bug too!).


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6185 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-06 13:38:22 +00:00
Soren Jorvang d02dd6d3fa std::string needs <string> rather than <string.h>.
Also some minor cleanup.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6184 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-06 12:14:18 +00:00
skidau 34aebffff9 Added an option "Alternate RFI" to the Game Properties to enable alternate interrupt timing. Try enabling this option if a game hangs, works only in the Interpreter or Dolphin crashes. This option fixes Die Hard: Vendetta and Medabots Infinity.
Fixed the interpreter to execute instructions in the right number of cycles.  It used to execute all instructions in one cycle.

Added a trace function to the interpreter making it easier to determine differences between the interpreter and the recompilers.

Removed the "Enable self modifying code check" as it was not useful.

Fixes issue 2407.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6183 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-06 10:27:33 +00:00
LPFaint99 3bdeb923ef Some work towards launching by titleid rather than content path,
update some var names in WII_IPC_HLE_Device_fs, filter out some spam logs from VolumeCommon

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6182 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-06 04:36:58 +00:00
nodchip 402b1d83e2 JitIL: Implemented 64-bit access in StoreDouble for speed up.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6181 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-06 03:09:12 +00:00
nodchip 58ac6e541f Added PSRLD/PSRLQ/PSLLD/PSLLQ support to x64Emitter
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6180 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-06 03:03:33 +00:00
Shawn Hoffman 43c11a491a remove frivolous comments in WII_IPC_HLE_Device_usb.cpp which must've been there since the code was copy-pasta created ;p
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6179 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-05 20:54:24 +00:00
Shawn Hoffman eda6b2a23c remove an ERROR_LOG that was left in from r6177 which could be annoying
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6178 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-05 20:49:04 +00:00
Shawn Hoffman 92eedc9cd3 Fix wiimote in homebrew
Marginally speed up old wiimote plugin by doing less memcpys
A lot of changes went into the bt dongle emulation, so please test for regressions :)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6177 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-05 20:18:13 +00:00
LPFaint99 197202798d oops, left in some code and typo with the attempted ios reload fix
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6176 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-05 07:38:26 +00:00
LPFaint99 9e3dd4d2d4 Work towards implementing ES_LAUNCH
returning to installed wii menu from a disc based game is working
however wiimote does not work
launching title from the wii menu has a similar issue
only tested photo channel 1.1, channel loads but wiimote does not work
as before launching channels requires sysmenu < 3.0
and you can change between sys menus via extracted wads by installing any version
IE if 4.2 is installed, right click on 2.0 wad in the gamelist and install to wiimenu
and right click on 4.2 wad and install to go back to menu 4.2



git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6175 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-05 07:36:10 +00:00
j4ck.fr0st 80a9116c0d Fixed plugin selection/config dialogs (broken in r6168).
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6174 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-04 14:51:24 +00:00
nodchip 6dc16b7416 JitIL: Improved the compilation speed by fixing the bug that getNumberOfOperands() initializes the table each time it is called.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6173 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-04 14:25:39 +00:00
anusko f4a6e585be Rollback on a DSI exception, for the instructions that need it.
Not a good thing to say, but this isn't properly tested, since I don't know of any game that generates a DSI exception. I'll try to write some homebrew to test this, but I'm pretty confident it's ok. Anyway, please take a look at it and tell me if you find some mistake :-)


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6172 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-04 01:04:37 +00:00
Shawn Hoffman 9935fe2546 Create a stub device for ios hle, and use it for /dev/usb/hid. "Fixes" monster hunter tri, which was broken by r6164
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6170 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-03 17:03:06 +00:00
j4ck.fr0st c92ae1c915 I think it should be addr there, not address. Plus code-formatting.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6169 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-03 14:06:34 +00:00
dok.slade 76a5ca84d1 Removed the check on video plugin change in PluginManager::GetVideo() (Profiling shows lots of strings compare from this function).
Since plugins can't be changed when emulation is started, it's a waste of time to check if it has changed.

There may be cases where this check is needed. If so, the check should be done in another function (because GetVideo() is called very often while emulating).

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6168 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-03 09:08:33 +00:00
skidau c08144f893 Fixed F-Zero GX in JITIL 32bit builds by using a vmem mask for memory loads.
Enabled the lbzu instruction in JITIL.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6167 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-02 15:10:12 +00:00
nodchip 38d6d539d2 JitIL: Fixed the compile error reported in r6165. Sorry for inconvenience.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6166 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-02 11:12:45 +00:00
nodchip 26eac5d22a JitIL: Fixed a bug (hack?) that NaN is considered as -0.0 in fcmpx. Implemented Nan check routine in FDCmpCR.
The bug (hack?) was introduced in r3312. I could not determine whether it was a hack or not. 

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6165 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-02 09:36:19 +00:00
Shawn Hoffman efd9bae449 improve ios hle error handling.
remove stubbed devices. they now fall back to the base device class, which reports the device as not available.
fixes issue 3137.
start ios fd counting at 0 instead of 0x13370000. I know it's sad, but it fixes homebrew booting and such.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6164 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-02 04:17:23 +00:00
Shawn Hoffman baf82a0849 hackfix dsp reset: fixes zelda collector's edition and some other games which reset and hang (...are there any others?)
the problem was that the streaming audio interrupts were still being triggered, causing the game to try and jump to an invalid interrupt handler. The code for dsp lle looks like a hack :( (but it works)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6163 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-02 01:36:45 +00:00
Shawn Hoffman 9220ca1afc fake /dev/stm/eventhook ... makes libogc shutup a bit
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6162 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-02 01:23:28 +00:00
Shawn Hoffman 743641965a DVD Interface forces alignment, and rejects writes to DICFG
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6161 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-02 01:21:26 +00:00
Shawn Hoffman ab56cf9c1c stop trying to patch out OSProtectRange calls
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6160 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-02 01:20:27 +00:00
Jordan Woyak 7afd393acb GCPad/Wiimote New (ControllerInterface): Some tweaks to the DirectInput code. (fix for a random gamepad which didn't work)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6159 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-02 00:03:25 +00:00
dok.slade 9e17007c90 - Fixed TimeBase and Decrementer registers so that they are updated only when needed
- Fixed RTC for GC homebrews

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6158 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-01 23:44:03 +00:00
dok.slade 8d6f98439e Fixed some race conditions with PPC exceptions and external interrupts.
This may help fixing issues related to video interrupts handling.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6157 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-01 22:03:51 +00:00
Rodolfo Osvaldo Bogado 625d78fb59 fix for my last commit
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6156 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-30 15:33:37 +00:00
Rodolfo Osvaldo Bogado c9dd11c803 some fixes for dlist, now is configurable in the video config section, still not in the gui,
disabled by default till a fix for segfaults in linux and geometry problems in some games

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6155 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-30 15:18:43 +00:00
baby.lueshi c1cac331a0 Major overhaul to input recording, including fixing major desyncs during playback and a small bug in the .DTM file format. Like netplay, some emulator options (specifically dual core and idle skipping) can cause desyncs, and the more your plugin options are similar to the ones used during recording, the more likely playback will sync.
Also, input movies are now linked to savestates instead of just selecting a file to save to and running a game and are exported at a later time. This allows you to easily continue a recording across sessions and makes rerecording possible.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6154 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-30 07:05:47 +00:00
Nolan Check 6a695eff49 Remove more obsolete code
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6153 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-30 04:05:06 +00:00
nodchip 014e87157c JitIL: Modified "LoadDouble" with SSSE3 to improve the performance. The code is ported from Jit64.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6152 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-30 02:07:09 +00:00
nodchip baba7f54dc JitIL: Fixed the Issue 3114. The bug was introduced because the usage of MOVSD/MOVSS was wrong. MOVSD/MOVSS don't clear the upper bits when they are used to transfer between registers. But they clear the upper bits when they are used to transfer between a register and memory.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6151 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-30 01:24:14 +00:00
anusko e4f9b6a5f8 I'm an 100% scons noob but I think this fixes r6149, although it seems that the repository revision isn't appearing correctly (only happening with me?).
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6150 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-30 00:00:14 +00:00
Rodolfo Osvaldo Bogado 3e7dafbbd7 fully implemented display list cache with vertex data included and added in all the plugins.
still experimental, not totally optimized but must bring a nice speed up
please test for regressions an error. an please Linux people fix scons :)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6149 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-29 23:08:56 +00:00
Nolan Check 4229d9e01e Remove a bunch of freshly-obsolete code
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6148 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-29 19:34:54 +00:00
anusko 3058a926cf Implemented missing lswx and stswx instructions. Tested with Wii PES 2008 (PAL), which now works (OpenGL devs please take a look at this game).
Changed the scope of some variables introduced in my previous commit (r6132).

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6147 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-29 17:53:55 +00:00
nodchip a3df65bd02 JitIL: Added a new IR instruction, MulHighUnsigned, which computes the upper 32-bit of the multiplication of two unsigned 32-bit integers. Rewrote mulhwux with MulHighUnsigned.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6145 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-29 08:00:51 +00:00
Jordan Woyak 4e81cb4012 GCPad/Wiimote New: (OS X Config Dialog) Temporarily fix a crash when selecting an item in the device list (a current bug in wxWidgets with wxTE_PROCESS_ENTER). (Windows DirectInput) Hopefully made axis enumeration and the fall back to polled data(for drivers which don't support buffered data) simpler and more foolproof (a few users were having issues with a few specific gamepads).
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6143 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-29 03:45:56 +00:00
nodchip 6f6acf3970 JitIL: Improved the register usage and remove extra MOVAPD instructions. This is for the speed optimization.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6142 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-29 02:18:06 +00:00
Soren Jorvang 1d05290be7 Include "Hash.h" rather than "hash.h" for case-sensitive file systems.
Fix some compiler warnings.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6141 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-28 15:53:01 +00:00
nodchip ae802f0403 JitIL: Disabled the jitting of psq_l when inst.W == 1. This is a test commit to check Issue 3114.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6140 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-28 15:40:45 +00:00
Rodolfo Osvaldo Bogado 9b0357b5e2 sometimes to advance you have to make a step back.
use plain vertex arrays instead of VBOs to render in Opengl plugin as the nature of the data make VBOs slower. This must bring, depending on the implementation, a good speedup in opengl.
in my system now opengl and d3d9 have a difference of 1 to 5 fps depending of the game.
some cleanup and a little work pointing to future improvements in the way of rendering.
please test and check for any errors.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6139 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-28 15:09:42 +00:00
skidau eb40f765c2 Bugfix for the TLB cache used by the MMU. Thanks to drkIIRaziel for spotting it.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6138 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-28 00:37:27 +00:00
nodchip f8e8f25408 JitIL: Reverted r6135 again. Please refer r6110, r6131, r6135, and Issue 3097 about the problem. I will check the problem after I get MP2.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6137 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-27 11:17:58 +00:00
skidau eaa3371f92 Further optimised the JIT cache lookup. Attempted to fix the Wii games in ICC builds.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6136 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-27 09:41:48 +00:00
nodchip d5bae7e0ad JitIL: Restored some instruction handlers reverted in r6131. If this revision does not introduce the bugs reported in Issue 3097 and r6127, the cause of the bugs is the wrong implementation of "mtcrf" which was fixed in r6134. If not, there are other bugs. I will revert again. Any way, they were my fault. I'm sorry for all.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6135 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-27 07:40:22 +00:00
nodchip 47fa91250b JitIL: Fixed the wrong implementation of "mtcrf". (The bit order was reverse...) This commit may fix the bugs reported in Issue 3097 and r6127. (I could not test them because I don't have the games which are reported.)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6134 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-27 07:25:31 +00:00
PerfectInduction aae0e96682 Fix RTC to report the correct system time in Wii and GC titles as reported in Issue 1817
Modify GetLocalTimeSinceJan1970 to account for DST.
GetGCTime() returns only GC epoch time(used by most Wii titles.)
IPL-DEV subtracts Wii bias before copying to m_RTC(mostly used by homebrew.)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6133 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-26 19:24:47 +00:00
anusko d082f50c34 My first commit!
Done some refactoring around the PowerPC stuff. Main changes:

* Declared CPUCoreBase class
* Wrapped the interpreter into a class and made both it and JitBase inherit from CPUCoreBase
* Avoided reinitializing interpreter's and Jit's tables

A great deal of this work was done by nodchip, so kudos to him :-)
To finish, please forgive me for my not-so-great english.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6132 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-26 17:44:13 +00:00
nodchip 46e8ea8094 JitIL: Partially reverted r6110 (andcx, norx, orcx, nandx, and eqvx) to fix the bug reported in Issue 3097.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6131 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-26 12:52:35 +00:00
nodchip 60696ffe30 JitIL: Commented out folding rules which are not tested. This commit is for the check of the bug reported in Issue 3097. The bug was introduced in r6110 by myself. In r6110, I added a function to convert andx, nandx, andcx, orx, norx, orcx, xorx, and eqvx into IRs. It is clear that the function has the bug. However I could not find the bug in the function. Then I thought there may be bugs in folding rules in IRBuilder because there are some untested folding rules which fold and, or, xor, etc. (This is also written by myself. I'm sorry.) I tested some folding rules and commented out the other untested rules.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6130 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-26 11:32:30 +00:00
skidau ea7004ffa7 Optimised the JIT cache lookup in JIT and JITIL. Gives a <5% speed-up in GameCube games. Wii games and GC games+MMU get a smaller speed-up.
Cleaned up some code in the JIT and memory functions.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6129 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-26 11:06:47 +00:00
nodchip 9c98d0ab85 JitIL: Extracted local variables to prevent calling regLocForInst()/fregLocForInst() many times. It was pointed out in r6127.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6128 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-26 01:56:30 +00:00
nodchip c32cad999c JitIL: Improved the register usage of some IL instructions (SExt8, ICmp*, DupSingleToMReg, InsertDoubleInMReg) for the speed improvement.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6127 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-25 12:55:21 +00:00
Rodolfo Osvaldo Bogado 8e4df07353 sorry for the last one, please test this one :)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6125 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-25 11:18:46 +00:00
Rodolfo Osvaldo Bogado 3b30019fcb some experiments with lighting, please test an let me know if is a improvement or make things worst
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6124 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-25 03:42:57 +00:00
skidau 0f56f5076c Changed WII IPC HLE to continue execution after the game attempts to open unknown devices.
The allows Prince of Persia: The Forgotten Sands to be played.
Fixes issue 2684

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6123 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-25 01:45:23 +00:00
dapetcu21 b7ecd01686 9/10-bit accelerometer data interleaved with buttons
some useless IR pointer math... It still doesn't make rotation work
a sign fix when tilting along y axis (twisting the wiimote)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6121 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-24 08:48:09 +00:00
dok.slade cf5088c37e JIT compiler:
* Improved constants folding in load/store instructions
* Merged load instructions

This is almost the same commit as r6076/r6077 but x64 build has been fixed.
Thanks a lot to skidau and BHaaL!!


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6120 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-23 22:26:00 +00:00
nodchip bab7721124 JitIL: Reverted r6117 because I could not find the case js.downcountAmount == 0. I'm sorry for confusion.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6118 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-23 00:36:59 +00:00
nodchip e740c4caa8 JitIL: Omitted extra SUBs when js.downcountAmount == 0. (Though it is not very often.)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6117 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-22 08:38:56 +00:00
nodchip 43dc70eace JitIL: Omitted some extra MOVs when a next program counter is in a register.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6116 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-22 08:27:43 +00:00
nodchip 10a14d17d3 JitIL: Fixed a wrong implementation reported in r6111.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6115 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-21 10:53:17 +00:00
nodchip 62c4d439ce JitIL: Modified psq_l implementation. Reverted psq_st. Removed compile warnings.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6114 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-21 06:29:47 +00:00
skidau 20704fca3d Low level emulate the GC IPL (BIOS screen). The GC BIOS now correctly launches the game. JIT the IPL instead of interpreting it. Made LLE BIOS the default (which silently fails to HLE). Relabelled the "HLE the IPL" option to "Skip GC BIOS".
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6113 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-20 14:57:26 +00:00
nodchip 168136a219 JitIL: Implemented some instructions.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6111 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-20 05:05:11 +00:00
nodchip 7b9d0dbedc JitIL: Added some instruction handlers. They were ported from Jit64.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6110 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-19 14:10:22 +00:00
Ignacio Farias cf078067e7 Reverted change from r6100 to previous version. That thing broke some games audios. With audio throttle off, possessing audio was disabled. Now I'm working on a workaround, stay tunned.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6106 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-17 15:45:12 +00:00
Marko Pusljar 9080e09a45 dsplle - small mulx.. regression fix
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6105 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-17 12:42:14 +00:00
Glenn Rice 7866fade02 Add volume control for the pulse audio backend. Unfortunately that can not be done with the pulse-simple api, so I had to switch to the asynchronous pulse api.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6104 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-17 02:14:04 +00:00
Rodolfo Osvaldo Bogado fb1c14e2cc long time no commits :).
fixed one of the last graphic problems in smg, now the glow in the plants and planets must be correct.
the error was caused by a error in lighting calculations. so it must affect other games.
please test and let me know the results.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6103 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-16 22:37:04 +00:00
Ignacio Farias 56d916bf93 Corrected writing error on previous commit :). Now should compile correctly. Thanks God for the advise
"
/trunk/Source/Core/AudioCommon/Src/Mixer.cpp   r6100   line 145:
145: 	{
oops, wrong brace? "

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6101 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-16 15:45:18 +00:00
Ignacio Farias fd5f7ba6b4 Hy, this is my first commit, and i hope it is not bad xD.
- First change is for Mixer.cpp, I've just re-added the functionality lost in r4724, so, if you disable audio throttle, games like donkey kong jungle beat, will work properly.

- Second change points to a doubt comment on UCode_Zelda_Voice.cpp, where it did not know here PB.NeedsReset came from. Well, the answer is it came from line 03b2 of the dumped Ucode, so when PB.IsBlanck equals to zero, PB.NeedsReset is zero too.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6100 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-16 15:22:53 +00:00
Shawn Hoffman fec9234aca IPC HLE: don't automatically make all addresses the cached one, leave them as however they have been written.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6099 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-16 00:14:08 +00:00
Shawn Hoffman b83d3e8970 make memory breakpoints log the PC when hit.
if the PC makes no sense, it's probably because some HLE has done the access.
perhaps we should wrap accesses from IOS HLE, so that we can trace it? dunno if it presents that much of a problem anymore.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6098 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-16 00:13:23 +00:00
Jordan Woyak dac2666236 New Wiimote Plugin: Fix hang on close issue of my last commit.(thanks to glennrics) Made profile saving/deleting a bit more user friendly.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6097 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-15 23:03:15 +00:00
Jordan Woyak 7c7257b825 New Wiimote Plugin: Give each real wiimote an individual thread.(eliminates multi-wiimote delay)(fixes issue 3037 for the new plugin) Fix a mem-leak in the input config dialog.(GCPad/NewWiimote)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6096 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-15 20:33:07 +00:00
Marko Pusljar 0a606d7356 fixes for my previous commits
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6095 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-14 09:07:28 +00:00
NeoBrainX 1f9dbb5afe Warning fixes and some cleanups.
Correct me if I was wrong when changing those 0s to '\0's.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6093 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-13 19:07:59 +00:00
nodchip 0c1977dc45 JitIL: Added code which deal with psq_st/psq_l in the case of inst.W == 1.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6092 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-12 12:31:15 +00:00
skidau df8ffa69bb Used a less hacked way of making the multiboot games work. Instructions are now executed at their proper number of cycles. The timeslice has instead been increased to compensate. Increases VPS in some games.
Thanks to BhaaL for the tip.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6090 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-11 12:49:38 +00:00
skidau e82c128043 Applied the multiboot dol fix to JITIL too.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6089 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-11 11:15:59 +00:00
skidau 6918a9e1d6 Added support for multiboot dols. This allows demo discs, bonus discs etc to be played.
* Flushed the JIT cache on "ICFI" (Flush Instruction Cache)
* Made all instructions one cycle in duration

Fixes issue 233

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6088 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-11 10:45:27 +00:00
Soren Jorvang db072e1986 Add Common::AtomicDecrement for gcc to match win32.
Use the debug option for conf.CheckWXConfig on OS X as on Unix.

Take care of a few compiler warnings.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6084 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-10 08:29:15 +00:00
Marcos Vitali 3b7a6ce336 I've observed that "FIFO is overflown by GatherPipe" is not real overflow.
Really that happens because the fifo.CPReadWriteDistance is negative.
Example: CPReadWriteDistance: -864 CPEnd: 10092672 fifo.CPBase: 9568416
In SMG this is because  PI_FIFO_RESET is writing and after fifo.CPReadWriteDistance will be setted to 0.
To Prevent that, I've Implemented AbortFrame function in the CommmandProcessor. It should fix overflown because of that. 
Note: There is other issue (Issue 2846) where the fifo.CPReadWriteDistance is negative too but the effect is different.
I'm working to solve this.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6083 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-10 07:25:35 +00:00
Jordan Woyak 2b45e87b3e New Wiimote Plugin: Added a "Hybrid Wiimote" input source type. This allows a real wiimote to be used with an emulated extension.(and in the future, real wiimote with emulated motion plus) If the emulated extension is set to "None", a real extension can be used. Real/Emulated buttons are combined. Real acceleration data is used. Currently, emulated IR data is used.(might change this to allow both) Switching between an emulated and a real extension in-game is a bit testy right now, but if you switch the emu-extension to "None" before connecting a real extension, it usually works.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6082 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-10 04:12:32 +00:00
Glenn Rice a1daa636c2 Take care of some compiler warnings from unused variables, and a little code cleanup.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6081 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-10 01:08:22 +00:00
dok.slade 55d7f93e0c Revert r6076 and r6077 since they broke x64 builds
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6080 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-09 19:00:24 +00:00
pierre 468b9bfe68 Fix the OpenGL depth buffer values from the vertex shader.
I am not sure i am understanding what the pipeline really does, and more so what
the GC/WII expects here. If my comments are incorrect, please let me know.

This was tested with MP2:E, ZWW on r6075.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6078 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-08 22:27:35 +00:00
dok.slade 244191f18f Fixed some mistakes from r6076:
* Fixed missing UnlockAllX
* Fixed 64-bits compilation

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6077 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-08 18:53:00 +00:00
dok.slade 5a248b46a1 JIT compiler:
* Improved constants folding in load instructions
* Merged load instructions
* Fixed the register allocator so that it can restore the registers state after jumping to the dispatcher (in case of a conditional jump)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6076 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-08 18:12:58 +00:00
Marko Pusljar 95b0abb737 dsplle - another small fix
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6075 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-08 16:35:10 +00:00
Shawn Hoffman 2ac8691911 ok...svnrev crap finally under control? please?
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6074 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-08 16:34:32 +00:00
Shawn Hoffman 4ae77b2d70 revert last two commits. screw it.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6072 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-08 15:37:18 +00:00
Shawn Hoffman 78add0ca9b must've gotten too excited, forgot a file
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6071 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-08 15:22:25 +00:00
Shawn Hoffman 7823eddd4e kill that annoying relinking once and for all!
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6070 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-08 15:21:29 +00:00
skidau 208ecd698e Debugger enhancements:
* Added working Step Over function.
* Added hard-coded hotkeys for step into (F11), step over (F10) and toggle breakpoint (F9).  The hotkeys are only active when the debugger is enabled.  They function as before when the debugger is disabled.
* Added Debug menu item.
* Removed obsolete NotifyBreakpoint function from JIT and JITIL.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6069 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-08 06:00:22 +00:00
Shawn Hoffman 7b8863dc9c r6066, part two: learning to count
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6068 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-08 00:54:04 +00:00
Glenn Rice 957e7c415e Several little things:
Clean up of the input selected for the opengl x window in linux.
Fix a potential segfault when taking a screenshot (happens consistently when using "Save Targets" from the video debugger window).
Fix a memory corruption error that results from the wrong image size being passed when dumping textures.
Make the screenshot hotkey configurable.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6067 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-08 00:13:05 +00:00
Shawn Hoffman 105c05bb7e make_svnrev.h.vbs: look for "Last committed at revision [0-9]+" instead of "Updated to revision [0-9]+" for svn
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6066 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-07 23:18:43 +00:00
Shawn Hoffman 521c7558bc Change make_svnrev.h.vbs so that it won't cause svnrev.h to be regenerated if it's already at the current revision (saves re-linking all the time)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6065 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-07 21:22:15 +00:00
skidau b2791b2d79 Added code to unlock the reg in lwzux. Fixes issue 3017 (thanks j4ck.fr0st).
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6064 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-07 13:26:53 +00:00
dok.slade 1faff6aeb7 JIT compiler:
* Improved constant folding/propagation in integer instructions
* Merged boolean instructions

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6063 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-06 19:35:40 +00:00
Fircrestsk8 05401aeb0e Fixes NeobrainX's new method for toggling the ZTP Hack. The game properties is a much more appropriate place for the hack (I didn't even know about that menu:) ) Thanks to NeobrainX for the code cleanup, and to Mandrix999 for the fix. Also noticed a minor typo.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6062 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-06 02:53:09 +00:00
pierre 92b180b71f Opengl and D3D are doing the perspective division differently
Thanks to glennricster for catching this.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6061 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-05 23:04:34 +00:00
NeoBrainX d5d7beb6c7 Move the ZTP hack to the game properties (reverted all changes from r6057 to the video plugins) due to some obvious reasons. Also some fixes to the coding style.
Remove a member variable which I introduced in r5907 although it never actually got used. Restores binary compatibility (at least in that regard) to pre-r5907 video plugins, but breaks any binaries after that :P

Update FIFO watermark tightness recommendations. 1000 is quite a high value I guess, but some people seem to need it.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6060 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-05 18:41:02 +00:00
Marko Pusljar 8dc01b685f dsp stuff - the same ucode hash under lle and hle now (had to rename couple of dissasms), ucode dumping under hle (debug only), small dsp:read32 change (needed for some homebrew)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6059 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-05 17:00:32 +00:00
skidau ca9c174450 Stability fix for JIT load/stores
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6058 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-05 10:01:27 +00:00
Fircrestsk8 040a6e1eb3 This commit addresses the Hyrule field slowdown issue in Zelda: Twilight Princess, as discussed in Xtreme2damax's thread: http://forums.dolphin-emu.com/thread-10638.html. It can be activated in the DX9, DX11, and OpenGL plugin GUI's. Enabling the hack while playing other games besides ZTP will likely have either an undesirable or no(more likely) effect.
The code changes disable the usual pipeline flush for certain BP Writes that occur while the minimap is being drawn in Zelda: twilight princess. This significantly increases speed while in hyrule field. The way this is accomplished is described more in depth on page 42 of Xtreme's thread. Big thanks to Xtreme for doing a great job hosting that thread, and Kiesel-stein for initial work on the hack

Also, I used the resource editor in Visual studio to generate the GUI code for the DX11 plugin, and some code appeared to be removed, although the behavior of the GUI did not seem to change. Hopefully someone more experienced with resource files (forms?) can double check that no code was damaged


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6057 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-05 03:24:13 +00:00
pierre 9e4ff175ec Set z-position for opengl, too
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6056 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-05 00:09:33 +00:00
dok.slade 7a80e8e409 Added missing unlocks from r6053 (thanks mylek4)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6055 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-04 23:30:47 +00:00
pierre e5f629da37 Fix saving states on mesa3d and clean up the handling of asynchronous requests
(those originating from a thread other than the gpu thread)

glxMakeCurrent is supposed to error out when the context is
still current in another thread. NVIDIA handles that, but mesa3d errors.



git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6054 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-04 21:02:32 +00:00