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