9397 Commits

Author SHA1 Message Date
hrydgard
562ed5e8a5 forgot a file, sorry
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4892 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-19 19:35:16 +00:00
hrydgard
576990c5a3 JitIL is no longer a separate .exe/binary - it's now a simple option, Dolphin.exe now contains both cores.
Advantages:
* Less confusion for users
* No need to build twice to make sure you didn't break something
* Easier to switch between the cores for testing

Disadvantages:
* None, as far as I can tell :) Maybe some extra code complexity, but not much.

Also break some include chains that caused <windows.h> to get included into everything, slowing down the build on Windows. There's more to do here though, there's still a lot of files that get it included that don't need it at all.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4891 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-19 19:28:27 +00:00
j4ck.fr0st
8fec36b22a position and size of the main window are now saved (fixes issue 2035)
Note that running in debug mode (Dolphin.exe -d) still maximizes the window and stores that size aswell.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4879 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-18 18:01:03 +00:00
skidau
335c056586 Fixed the button states in the toolbar when loading, starting, and stopping a game.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4877 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-18 12:10:51 +00:00
skidau
9df31a9747 Implemented tlbie instruction
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4875 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-18 04:39:01 +00:00
skidau
8245e4115d Fix for saving SaveStates - VirtualEFB does not exist any more, so do not try to save it.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4874 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-18 03:55:54 +00:00
hrydgard
53408a695f Fix EFB reads in fastmem mode by removing the EFB mapping (forces it to go through the right handlers). Enable fastmem mode in x64. 1-2% speed boost overall maybe :p
Disable the Redundant MOV warning in release mode, it's only enabled in debug builds now.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4870 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-17 21:28:39 +00:00
hrydgard
3e01152793 Shader Disk Cache implementation for D3D. Saves generated shaders on disk. Eliminates "freeze jerks" in D3D plugin the _second_ and later times you play something.... not much to do about the first time. The D3D shader compiler is just slow.
Also assorted cleanup around the shader code.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4869 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-17 17:44:09 +00:00
hrydgard
f50e3cf5fe Add code for frsqrtex to JIT. Disable the table-based implementation in the interpreter until we find something that it actually fixes, so far it seems like it breaks stuff.
Assorted cleanup around the JIT of flags that we don't need anymore.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4867 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-17 11:47:35 +00:00
Shawn Hoffman
4927e5607e Do ARAM DMA less often, and in larger chunks. hopefully it adds some speed, but probably only a tiny amount.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4865 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-17 07:20:15 +00:00
skidau
59e7c19380 drkIIRaziel reversed engineered the frsqrte instruction providing hardware accurate emulation.
The algorithm and lookup table are 99% accurate which is far better than the approximation that Dolphin had previously.

The frsqrte instruction is used for a lot of 3D graphics functions so this change may help fix graphics glitches.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4864 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-17 04:29:44 +00:00
hrydgard
b61b04352e Stop Story Mode in F-Zero GX from crashing. Story mode still doesn't work though, it just stops.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4862 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-17 01:16:16 +00:00
hrydgard
b84a1823b2 Hopefully fix all remaining quantizer issues in Mario Kart Wii:
* must use a truncating float-to-int conversion, for example.
  * introduce optimized variants of the single value psq_st operation (JIT only).
  * fix bug in SafeWriteRegToReg when swap = false

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4861 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-16 22:44:49 +00:00
hrydgard
4aeec95513 Temporarily disable a couple of unsafe quantizer optimizations. they will return in a better form.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4858 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-16 20:05:37 +00:00
hrydgard
48e3f0e17f delete some leftovers
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4856 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-16 19:06:11 +00:00
hrydgard
901316e61b (assorted cleanup and reindent that didn't belong in the quantizer change)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4855 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-16 19:01:00 +00:00
hrydgard
1848e93790 RIP "Optimize Quantizers" option. Now using the safe quantizer code from JITIL in all builds.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4854 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-16 19:00:09 +00:00
skidau
efe20c93e8 In the Interpreter, marked mtmsr as an "end of block" instruction, making it consistent with the JIT tables.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4849 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-16 04:43:07 +00:00
skidau
fa5823ad9a Minor bugfix to the TLB cache
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4848 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-16 03:55:53 +00:00
skidau
b3b7ed2a2f FPU NaN and negative zero fixes. Verified against the real hardware.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4847 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-16 03:43:16 +00:00
j4ck.fr0st
5cd81033c3 Taking screenshots now creates an extra folder for each Game ID.
Fixes Issue 1905

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4842 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-15 16:11:06 +00:00
Shawn Hoffman
c7e055d1f5 small buildfix for debug
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4840 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-15 15:28:21 +00:00
skidau
9c264a1047 Implemented MMU:
* Added BAT algorithm
* Page Address translation algorithm is now used in all games
* Added TLB cache
* Temporarily forced JITIL to use the slow memory access for Win32 when playing tlbhack games.

F-ZERO GX is now playable.  It works only on JITIL in the 32bit version.  It works in both JIT and JITIL on x64.

The MMU code may fix other games that are crashing.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4839 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-15 14:39:27 +00:00
hrydgard
75c1661e19 Fix mtsrin/mfsrin instructions. Not likely to change anything since they are only used by MMU code which doesn't work right anyway.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4837 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-14 22:16:12 +00:00
Marko Pusljar
d7b4175605 JITIL : fixes games that require "EnableFPRF=True" under jitil
- Super Monkey Ball
- Super Monkey Ball 2
- Virtua Striker 2002
- ...

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4836 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-14 16:59:52 +00:00
ayuanx
571a47ef9a This could alleviate the suffering of dual core synchronization a bit.
But I doubt you would notice it in most cases.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4830 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-14 10:52:14 +00:00
hrydgard
2db709aeb6 Add "Auto Aspect Ratio" to both graphics plugins. It's the new default, so you can forget about switching aspect manually from now on. In the Auto mode, aspect ratio is automatically set depending on whether it's a Wii or GC game, and whether the global Wii Widescreen setting has been set. There is still the possibility to override, which can be useful for the very few GC games that do support widescreen.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4828 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-13 21:11:02 +00:00
ayuanx
5aac8a5437 Fixes Issue 2004
This also mutes the sound when paused in Debug mode.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4825 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-13 14:18:13 +00:00
ayuanx
429691ce96 This should settle the FIFO BP critical games like Metroid Prime 2
G2ME01.ini

[Video]
FIFOBPHack = 1

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4823 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-13 11:42:04 +00:00
ayuanx
ecdcffc7cf Fixes Issue 1997
This also makes the CP FIFO hack obsolete.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4821 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-13 09:03:55 +00:00
ayuanx
98ce4c4d8f Dedicate Wii SD Card & Wii USB Keybaord settings
When they are disabled, you get over 50% speed boost in Wii Menu.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4804 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-11 11:56:17 +00:00
nakeee
345f922549 1. Removed the waitfordeath time out as it seems to crash dolphin every now and then
if it hangs on stop now please report so we can fix it.
2. Change linux to use the same threading module in single core mode as windows

Anyone knows which revision broke dual core mode on linux?


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4803 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-11 07:14:30 +00:00
LPFaint99
183804e442 Small unicode fix for extracting files (ISOProperties.cpp)
Change some PanicYesNo to AskYesNo so that they will always show (WiiSaveCrypted.cpp)
Adds more country filtering options to Gamelist (france, italy, korea, taiwan, and unknown country)
Misc. fixes for potential crashes that can only occur with a corrupted dump == check filesize of a dump before spending time looking for the cause of a crash :P

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4802 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-11 05:07:56 +00:00
fgfemperor
175162e661 Fixed Issue 1979 - Crash when scanning WAD files with no title information...
Removed the panic alert about HCI_CMD_INQUIRY because it doesn't crash Dolphin or anything like that...
It's called from MiiChannel, when you try to upload your Miis to a WiiMote.
And it works just fine! (except for the warning "Can't find Wiimote by bd: xx:xx:xx:xx:xx:xx", which is really odd)...

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4800 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-09 22:03:20 +00:00
ayuanx
f472e2904d Now Progressive Scan actually works for those games that really depend on this setting (Try Mario Kart Wii)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4798 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-09 17:11:59 +00:00
daco65
6575f9d03a error 003 fix when booting system menu 4.2. note that the 0x45 doesn't actually have a name tho
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4796 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-08 22:11:18 +00:00
ayuanx
a3cfafcd12 1. Expanded Framelimit range from 20 to 120 in case someone wants to run a little faster than full speed but still controllable not like wild OFF.
2. Fixed a bug (for Win 32bit) that reports "No possible memory base pointer found!" even when there IS valid memory base found.

3. Made Metroid Prime 2 (maybe also other games) boot
PS: There is definitely some initialization problem with Dolphin (not found exact location yet), which prevents Metroid Prime 2 from first time booting (If you boot some other GC game first, stop it, then MP2 can boot without problem).
So I added an instant BP hack that can make MP2 boot even at first time.
And I've tested all my games to guarantee it won't break any game that already boots before this hack.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4795 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-08 21:57:31 +00:00
ayuanx
9ed2d1957a This should fix Issue 1960
Also makes VPS visible as sl1nk3 suggested, so that it won't confuse people with a wrong percentage of speed.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4791 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-08 11:25:51 +00:00
ayuanx
9cbd508181 1. This should fix Issue 1625 (Bizarre Auto Frame Limit)
Now the frame limiter yields on CPU thread, not as before on GPU thread mistakenly

2. Fixed clear of VI interrupts
   I guess VI interrupts are not used at all, because they were never cleared before

3. Made GPU thread 0% processor usage when paused whatever your active config is.
   I tried the event approach but somehow the thread resume latency is excessively long (Who can tell me why?)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4790 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-07 20:01:41 +00:00
fgfemperor
64167bcb60 Now you can switch between Emulated and Real WiiMotes, connect more Real Wiimotes and even pair them up (if you have MS BT Stack) during gameplay!
All you gotta do is Pause the emulation! That's useful for when your batteries run out during gameplay, for example...

But if you change the WiiMote source (between Emulated, Real or Inactive) you must disconnect and reconnect (Menu Tools -> Connect WiiMote) the WiiMotes affected by the change...

Thanks to jack.fr0st who did all the emulation state notification work!

Now every plugin has a way to know the current emulation state (paused, stopped or playing)

@ayuanx: I thought about doing a PostMessage(g_WiimoteInitialize.hWnd, WM_USER, WIIMOTE_DISCONNECT, current_number); so that the user gets asked to reconnect that WiiMote, trying to avoid having to disconnect and reconnect, but it didn't work because shooting that message only asks to reconnect, doesn't do a disconnect... Do you have any ideas on how to accomplish that?

Also, if anyone could check if Issue 1916 is finally fixed... Or at least when is the cursor being hidden or not...

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4789 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-06 19:26:52 +00:00
ayuanx
516f7a4ca1 An attempt to fix Issue 1919 (Multi-Wiimote Freezing)
Please test.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4787 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-05 17:39:06 +00:00
nakeee
ea4225f9fd Cleanup of the Device usb code, now we don't compare u32 to NULL.
Please someone who knows the code take a look to make sure I got it right.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4785 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-05 08:07:06 +00:00
bztdlinux
cbf5929276 Patch from stgn:
JitBlockCache::GetCompiledCodeFromBlock() now casts the correct pointer, which allows the PPC <-> x86 translated code viewer to work. 
Fixes issue 1935.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4781 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-04 01:28:47 +00:00
ayuanx
72b1570e08 Fixed Issue 1928
Fixed Issue 1917
(Since wxWidgets is not allowed in core, so I moved the popup window to CFrame)

*Maybe* this could also fix Issue 1919?

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4780 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-03 23:05:52 +00:00
skidau
e55c3793b6 Readded the "Loading settings from" log at the INFO log level.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4772 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-01 20:12:31 +00:00
skidau
746b9eeaab Stop spamming the file log without being asked to. Removes the "Loading settings from" and "Starting application" notices being written to the file log when the file log was not enabled.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4770 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-01 09:13:08 +00:00
sl1nk3.s
5877961354 Some fixes to Stop() process.
Unbreak linux stop on Single Core, remove an unnecessary wait event, fix DSP HLE/DSP LLE/OGL plugin hang on stop when the config dialog has been opened (nJoy and Wiimote still need to be fixed), avoid the CpuThread to be stuck in the efb/swap loop by setting a flag before the thread is actually shutdown (contrary to r4756 which was setting it.. after :D)
Clear the status bar Framerate/Core message when the game is stopped.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4769 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-01 03:55:39 +00:00
fgfemperor
7359b3b2a6 Now Dolphin officially supports multiple REAL WiiMotes!
Only downside: You can't change between Real and Emulated WiiMotes while the game is running anymore... This is due to the way the Real WiiMotes are assigned to the slots...

I've tested it with 2 real WiiMotes, but I can't see why it wouldn't work with 4!
Also, you can assign Real or Emulated WiiMotes to any one of the four slots that it will be respected!

Happy New Year everybody!

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4765 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-01 00:38:24 +00:00
ayuanx
2788222be3 Fixed Issue 1888, marco.calautti's patch
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4761 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-12-31 18:37:47 +00:00
ayuanx
d4a1b97ac9 Fixed OpenGL shutdown issue in single core mode.
Thanks to sl1nk3.s

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4758 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-12-30 16:26:16 +00:00