Commit Graph

2252 Commits

Author SHA1 Message Date
Shawn Hoffman 926a4cee17 fix wad loading (broken by r6909)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6919 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-25 23:44:06 +00:00
Glenn Rice 3ce1f73f73 Migrate the "Adjust window size" option to the main configuration dialog (under the "Display" tab, in "Emulator Display Settings", after "Window Size"). Also rework the way that the option works. When using render to main and the auto resize option, the application window will be resized and then resized back when the emulator stops. This looks much better than the box in the corner look before. Also only resize when it would actually change the size of the window. This fixes the hang on emulation stop on linux.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6910 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-25 03:30:12 +00:00
Shawn Hoffman d3b8908a7c Make CDolLoader a bit more c++ish, make wii dols be detected by the presence of a mfspr x, HID4.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6909 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-24 21:54:19 +00:00
skidau 9749d617d0 VBeam emulation
* Fixed audio sync
* Fixed frame-limiter
* Fixed the cursor not showing in SMG
* Reworded the option to "Accurate VBeam emulation"


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6897 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-23 03:28:05 +00:00
skidau 12249296a1 Added an option in the game properties to disable the VBeam speed hack. This option may fix games which currently have an unusual FPS rate. For example, this option fixes the crackly audio in Tales of Symphonia. Leave this option turned off unless you're noticing problems related to the FPS rate because it might slow down the emulator.
Removed the Alternate RFI option as it is no longer needed.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6888 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-20 08:34:49 +00:00
skidau 5aa34d0483 Added the fake decrementer to the save state.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6880 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-19 08:13:15 +00:00
Shawn Hoffman f4dc56d553 usbgecko:
add some nice messages for SE LED commands.
allow exi communication even if there is no tcp client.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6879 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-19 03:47:01 +00:00
Soren Jorvang 83cff0fa63 Compile fix.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6878 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-19 02:46:18 +00:00
Shawn Hoffman afebc0d1d3 Allow usbgecko to try a range of ports, such that multiple dolphin instances will setup their servers on consecutive ports starting at 55020.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6877 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-19 02:17:11 +00:00
Shawn Hoffman c24cedc03b fixes for jit64 twx
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6873 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-18 05:59:38 +00:00
Soren Jorvang 1a3cd2d34c Remove the __APPLE__ workaround for reading config files from a ctor.
'#' is a fairly accepted comment character for .ini files along with
the more official ';', but '//' isn't.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6872 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-18 00:04:29 +00:00
Shawn Hoffman d0805aef37 Fix calling thread::waitfordeath twice in usbgecko/gba
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6871 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-17 08:31:19 +00:00
Shawn Hoffman fdd56f4621 commit some crappy threading code for usbgecko
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6870 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-17 07:44:21 +00:00
Shawn Hoffman d89d730778 add tw/twi to Jit64
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6869 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-17 04:29:23 +00:00
Soren Jorvang df3aecafef Remove some dead code.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6868 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-17 01:47:27 +00:00
Glenn Rice 254cb161f4 Update SConscript for osx too. Also update some of the languages and add Brazilian Portuguese to the windows build.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6867 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-16 20:21:25 +00:00
Shawn Hoffman 1b5c614d0e maintenance
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6866 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-16 20:14:16 +00:00
Shawn Hoffman bc3565341d Begin USBGecko. Kinda works already, need to make a checkpoint before making the socket stuff better.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6865 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-16 20:04:06 +00:00
Glenn Rice 2add956cba Make the "IR Sensitivity" slider work on linux. Also clean up the appearance of the Audio config dialogs on linux and OSX a bit. It doesn't change the appearance on windows.
Mark a couple of strings for translation that were missed before.
Update some of the languages from the translators.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6856 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-15 15:48:04 +00:00
Soren Jorvang 85db30554e Don't bother with a separate NSApplication thread.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6853 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-15 11:05:22 +00:00
Soren Jorvang e429d75489 Clean up nowx and stop cocoaApp busy-waiting in the main loop.
Set up an exit(3) task to shut down real wiimotes. This shouldn't
really be necessary, but we do currently handle a number of error
conditions by calling exit(3).

Retire the inputuicommon library.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6852 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-15 10:33:07 +00:00
Glenn Rice 2d1b84febe Fix tooltip translation in the Video config dialog.
Fix Pad 1-4 and Wiimote 1-4 translation in the input dialogs.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6850 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-14 19:27:18 +00:00
Glenn Rice 8ad402cdde Mark wiimote extension strings for translation.
Update French, Polish, and Korean languages thanks to Pascal, Baszta, and Siegfried, resp.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6849 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-14 18:25:25 +00:00
Shawn Hoffman b0d2df0bad HLE jump to loader (homebrew)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6845 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-14 07:08:12 +00:00
Glenn Rice d0de395a46 Finally got the input common strings figured out. That pretty much finishes translations.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6843 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-14 03:05:02 +00:00
Glenn Rice c6e0ea59b9 Removed my previous PanicAlert translation hack. Fixed with a better method suggested by BhaaL. The translation is done by a callback in the MsgHandler routine that is set at program start. Added macros PanicAlertT, SuccessAlertT, PanicYesNoT, and AskYesNoT that are identical to the non T versions except those strings will be added by gettext to the po files to be translated. These can and should be used anywhere in the code for strings that should be translated.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6838 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-13 02:05:58 +00:00
Soren Jorvang 96403e7284 PanicAlert now needs a string literal as the first argument.
Some more Mac-ish hotkeys and a placeholder for da.po.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6832 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-12 19:28:47 +00:00
Soren Jorvang 6cc41ba96c Workaround for a weird bug on 32-bit Linux that makes the Open dialog crash.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6831 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-12 18:59:52 +00:00
Soren Jorvang d5b7c5802e Fixes issue 3907.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6828 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-12 16:24:18 +00:00
Soren Jorvang 78ec771063 wxCmdLineEntryDesc has switched to char string in 2.9.
Use wxS to get the right string type on either 2.8 or 2.9.

Default to cmd-f for the fullscreen toggle hotkey on OS X.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6820 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-12 01:03:49 +00:00
Soren Jorvang 6de6cf6d46 Don't bother quickly flashing the full pathname to the file loaded
in the title bar. It is more usefully displayed using the overlay
and long pathnames are not suitable for title bars and probably not
even safe depending on the underlying windowing system.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6817 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-11 16:19:15 +00:00
Soren Jorvang 9c09500a13 For some reason the wxGLCanvas loses keyboard focus whenever the
full-screen mode is toggled, so we just re-set it afterwards.

Didn't mean to include the version string in the status bar updates.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6814 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-11 05:48:22 +00:00
Soren Jorvang d78be40be9 Print the performance status in exactly one place.
Placing the render window at position 0,0 makes it unmovable on OS X.

Use the conventional r1234 format for SVN revision numbers.

Delete mis-copied .svn directories from the application bundle.
 
Only warn about a failed low-memory allocation if one was requested.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6811 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-11 04:09:11 +00:00
Soren Jorvang 601eab79e1 Properly resize the GL canvas on window changes with USE_WX and wx 2.9.
Fixes issue 2524.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6803 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-10 16:18:41 +00:00
Soren Jorvang 26d0f58aec The r5799 workaround is no longer necessary with r6792 + r6795.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6798 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-09 19:39:43 +00:00
Soren Jorvang e6c87cbe3d Oops.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6795 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-09 15:20:35 +00:00
Soren Jorvang b7767b63a3 Generalize some __linux__ ifdefs for Unix/X11.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6793 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-09 14:11:46 +00:00
Soren Jorvang d4158f076a Allocate low executable memory on OS X as on Windows and Linux.
Even with LoadStorePaired accounted for, there are still some
niggling 64-bit cleanliness bugs left that are not practical
to weed out on a single platform. We should probably have an
option to use >2GB memory only on all platforms for debugging.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6792 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-09 14:09:27 +00:00
dimitri_le_bon_pilote f634d58035 Changed the IOCTLV_READ_DIR function to use the replacements list.
It will now decode entities of unsupported FAT32/NTSC/etc characters in filenames to be returned, so that games such as HP:HBP won't fail to find files containing such unsupported characters.

Unless there are still parts of code waiting for file name replacements, this should completely fix issue 3443...

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6791 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-09 13:49:54 +00:00
j4ck.fr0st 7c121dadcb Fixed language selection by adding English, leaving default as "<System>" language. Removed languages which don't have translations yet.
As side-effect, changed GameListCtrl sorting to use the configured IPL/GC language instead of the UI language, which is misleading with missing translations, and possibly wrong if we ever get translations that are not part of the GC ones.
In case we want the old behavior back, revert GameListCtrl.cpp and ISOProperties.cpp.

For translators: use either "<System>" if your operating system is the same language as the one you're translating for, or replace one of the others. Someone will add them to the list when they are committed.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6785 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-08 15:05:59 +00:00
Glenn Rice aac34f037f Add profiling (via oprofile) to the cmake build.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6782 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-08 05:27:18 +00:00
Glenn Rice 418357190b Make the gui more accurately reflect connected wiimotes. Also connect and disconnect wiimotes when settings are changed in the wiimote configuration dialog during emulation.
Fix the number of connected wiimotes in the configuration dialog so it works with translations, and update translations accordingly.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6771 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-07 15:18:00 +00:00
donkopunchstania d16357cd5c Add anvideo config option to automatically resize the render window to the size of the game's output resolution. This avoids artifacts that appear when the render target is scaled to fit a window of a different size.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6764 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-07 04:57:59 +00:00
james.jdunne 0b46610d49 Changed order of operations in Profiler.cpp to calculate non-zero values for 'cost'. Integer division was too early. Credit to my brother, Joe, for figuring this one out.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6746 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-05 03:29:56 +00:00
james.jdunne 8f9f1b64ff Fixed Linux build.
Fixed small undiscovered bug in WII_IPC_HLE_Device_FileIO.cpp when looking at 0-length strings.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6745 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-05 03:19:53 +00:00
Soren Jorvang 012939d127 After removing the input queueing in IOdarwin.mm I was still seeing
the occasional HLE wiimote disconnection, although nowhere it was at     
near the level before both the recent wiiuse integration and adding 
the queue in the first place.

The callback-based bluetooth input method on OS X really requires     
that packets be accepted immediately and the 1ms polling done by the 
wiimote worker threads isn't quite good enough.

So just play along with the native OS X model and send the packet up
our stack directly from the callback. With our current API, this is  
kind of a layering violation, but it seems less messy than either
putting back internal queueing in IOdarwin.mm or adding the platform
support for higher-frequency polling than what usleep(3) offers.

Perhaps we should just change our own API to a callback model. While
this makes no real difference right now, it would make it a fair bit
cleaner to accept new wiimotes at any time instead of having to click
Refresh, although with the recent realmote changes, that feature can
probably just be hacked in by looping around FindWiimotes().
 
For other platforms having problems with HLE disconnections caused by
dropped bluetooth packets, as a first stop I would suggest trying to    
do more than just one wiimote->Read() per iteration in the thread.
 
This change also conveniently sidesteps another new IOdarwin.mm bug 
where the discovery and I/O code would clash during a refresh because     
they use the same default CFRunLoop, so if we switch back to using a
run loop for I/O, must remember to create a separate one.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6743 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-05 01:45:36 +00:00
Marko Pusljar 77346cc254 small fix for lle-int
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6739 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-04 14:49:54 +00:00
Soren Jorvang efe555fc16 Some minor tidying of the OS X audio and wiimote code.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6736 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-04 02:09:29 +00:00
j4ck.fr0st 638fa77954 ISFS_Seek: Turns out POSIX allows seek past EOF, the Wii does not.
Should fix Issue 3761 (really!), please test this.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6723 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-02 12:27:33 +00:00
Glenn Rice 75a8fa7340 Fix an issue on windows where found wiimotes were not being reported as found. This fixes issue 3832.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6722 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-02 03:43:44 +00:00
Soren Jorvang 079bc67347 Cast size_t to unsigned long for printing.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6721 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-02 02:50:51 +00:00
pierre 26a3a9400b Core/Core/HW: Give small amounts of time to the dsp whenever the ppc
reads the high bits from the mailbox registers. It is probably waiting for
the dsp to read the data from the cpu-to-dsp mailbox or for the dsp to
write to the dsp-to-cpu mailbox.

This about removes DSP::Read16 from lle profiles where it previously used
up to 2% of all system time. Also speeds up games quiet a bit.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6719 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-02 00:16:13 +00:00
j4ck.fr0st 63115ca2ef Handle FileIO Read/Write more like real hardware.
Fixes Issue 3761.
Fixes Issue 1749.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6718 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-02 00:01:19 +00:00
james.jdunne 7703018632 Possibly fixed game crash issues by switching to unaligned SSE2 loads/stores.
Removed unnecessary work being done in the file system when logging is disabled.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6714 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-01 20:54:15 +00:00
Soren Jorvang 8b55eff33d With the more aggressive polling by the per-wiimote threads,
additional input queueing in IOdarwin appears to be unnecessary.

IOBluetoothDeviceInquiry does not find already connected devices,
so no need to filter those out.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6710 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-01 16:46:41 +00:00
Soren Jorvang 28ef121a93 Revive io_osx.mm revision history and reapply the changes in r6693.
Avoid sending the Wii OS bluetooth packets with uninitialized data
past the nominal length of the report.

XXX IOWin.cpp still always returns MAX_PAYLOAD because I don't have
a Windows environment to test with.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6708 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-01 14:57:19 +00:00
Soren Jorvang 99c8ea7abb Initialize bluetooth input queue when creating wiimote object.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6705 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-01 01:47:33 +00:00
Glenn Rice 71209d99c8 This may fix the extension issue on windows. Please test. Thanks BhaaL.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6703 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-31 15:53:38 +00:00
Glenn Rice 4b3a6a6d47 This should fix wiimote extensions on linux. Now to figure out the windows issue, and then OSX ... Sigh!
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6702 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-31 15:47:42 +00:00
Glenn Rice bc3b43d1bd Fix core dependencies for all windows builds.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6695 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-31 04:52:20 +00:00
Glenn Rice 0249d5fbaa A few details missed in the last commit.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6694 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-31 03:08:22 +00:00
Glenn Rice 8e184171e7 Remove wiiuse, and use our own code. Works on linux and windows. On OSX it should compile, but I don't know about functionality. Even on linux and windows I can't promise this is bug free (wiiuse certainly wasn't). Please report issues as you find them for all platforms.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6693 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-31 02:10:07 +00:00
Glenn Rice 765fb4bbe3 Linux build fix.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6686 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-29 15:23:02 +00:00
NeoBrainX 642c7a437c Add ciso support.
Thanks to dolphin.user839 for the patch ;)
Fixes issue 2708.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6685 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-29 14:42:20 +00:00
j4ck.fr0st 603c99f64f Compile fix for Unittests.
A lot of tests are failing right now, not sure yet if this is caused by the recent reg changes or other stuff (at least broken according to tests: iar, subarn, addarn, 'ir, 'nr, 'l, 's, 'sn, 'ln, 'lsn, 'lsm, 'lsnm, 'sl etc - err, most/all that use increase/decrease)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6683 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-29 13:05:42 +00:00
Jordan Woyak 0059b0f44f Made wiimotes automatically connect on start based on their selected "Input Source" in the wiimote configuration.(fixes issue 2261) Made wiimotes 2-4 input source default to "None".
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6679 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-28 22:14:15 +00:00
Shawn Hoffman 9553aa0100 linux buildfix
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6673 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-27 22:51:20 +00:00
Shawn Hoffman 722b7db8f9 more WIP BBA crap...nothing nice to see.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6672 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-27 22:30:24 +00:00
Shawn Hoffman b21c361a1a Make ARAM DMAs take time. Allows WWE Day of Reckoning 1 & 2 to go ingame...then they crash. Not entirely sure if the crash is related.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6670 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-27 22:14:33 +00:00
Jordan Woyak b4e0fe53af Copied some emulated motion plus stuff over from the old wiimote plugin. Not at all functional currently.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6660 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-26 22:54:02 +00:00
Jordan Woyak 7c5b12c5bc Made the "Download Gecko Codes" button not add already existing codes.(fixes issue 3732) Minor fix to gecko code handling. Added a "Show Shader Errors" setting to video config dialog.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6658 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-26 06:23:33 +00:00
Shawn Hoffman 750515ea79 some better default settings:
logging: turn off write to file
core: don't insert anything in memcard b slot
video: efb scale to integral, AF to 1x
audio: 100% volume, 48KHz sample rate

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6650 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-23 06:00:17 +00:00
Soren Jorvang edbc06bd18 Support for multiple wiimotes on OS X.
Fixes issue 3703.

Note that HLE wiimote activation is currently a little broken, so to
use multiple wiimotes you need to open the wiimote configuration window,
refresh (connect to) the real wiimotes, start the emulation and then
select Connect Wiimote 2/3/4 from the Tools menu or with hotkeys.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6648 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-22 20:24:25 +00:00
Shawn Hoffman e059587c1a Don't reset all of ARAM when DSPReset is sent. Fixes issue 3594
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6647 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-22 17:32:17 +00:00
LPFaint99 547c18fb55 Add the ability to Get / Set Array data from SysConf
wiimote bd's are now read from (or added to if < 4 exist) SysConf
in theory you should be able to use any valid sysconf file now,
but i would advise against using a dolphin edited SysConf on a wii

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6646 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-22 08:00:08 +00:00
Soren Jorvang 3d68608024 Fix Unix build.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6645 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-22 06:45:59 +00:00
LPFaint99 9584b5b335 Update Wii save import / export to use the same replace list as FileIO
add a couple of country codes I found through redump.org database

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6640 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-22 00:48:59 +00:00
Soren Jorvang e4269dcd65 AlphaMask and ColorMask were reversed.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6637 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-21 22:49:35 +00:00
LPFaint99 e9e86abed6 remove the remaining parts of the hack from r1327
the original issue was fixed some time ago
no functionality changes

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6636 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-21 22:27:38 +00:00
blubberdiblub 38e80fe094 Fixes some file handling in IPC_HLE
* change File::GetSize to fetch the size directly from the open file instead
  of stat'ing it when challed with a FILE*
* use changed File::GetSize(FILE *f) instead of calling with file name in two
  places
* remove "seek_pos % file_size" hack for ZTP, so one can seek to the end of
  file again. Please check Zelda: Twilight Princess for regressions
* return error codes when reading or writing from/to a file

A lot of those changes are from j4ck.fr0st, so kudos to him.

I did not change the file open mode for ISFS_OPEN_WRITE to "wb". While that
would probably be more correct, it says in the comment that it might affect
Mario Kart Wii. I would prefer somebody with that game try that change
locally first.

Please check your games for regressions (or even improvement). Some games that
may be affected are Zelda - Twilight Princess and Metroid Prime 3.

Fixes issue 1749



git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6634 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-21 18:03:44 +00:00
Soren Jorvang 38a46ddf94 Avoid shadowing variables.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6613 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-19 16:03:39 +00:00
skidau aecc4f67a1 Fixed the throttle (Tab) key so that it takes effect when the frame-limiter is used. Hold down Tab to run the emulator unthrottled (Windows only).
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6598 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-17 01:34:40 +00:00
LPFaint99 06784d2869 sys menu now loads gamesettings from an ini file (as well as any other wad/nand title that does not have an ascii gamecode)
fixes system menu loading the ini file from the last run game

also check for all countries when setting bntsc for wad/nand titles

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6590 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-15 23:18:08 +00:00
LPFaint99 aee96e12c6 Rename variable in WiiSaveCrypted for icc.
Changes file dialog to show *.bin for wii save import instead of data.bin
Move Sram dumps to Sram.cpp and change default FlashID
Fixes issue 3711.
Fixes issue 3042.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6588 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-15 21:23:42 +00:00
skidau e61133625a Fixed the "Locked threads to cores" option properly. Thanks to ernesto and xenofears.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6584 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-15 02:29:06 +00:00
skidau f67afb4fca LLE JIT:
* Optimised the updating of g_dsp.pc in the compile loop (code by kiesel-stein)
* Added JIT version of LRI (code by kiesel-stein)
* Added JIT versions of the branch instructions (code by Jack Frost)
* DSP_SendAIBuffer fix (code by Mylek)
* Marked instructions that update g_dsp.pc in the DSP table and updated PC based on the table (speed up)
* Fixed the signed bits not being set properly in the addr instruction
* Created a MainOpFallback function to use interpreted versions of the instructions if necessary (code by kiesel-stein)
* Disabled the jit versions of subarn and addarn as they are slowing down NSMBW

The above work in both x86 and x64 modes.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6582 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-15 01:42:32 +00:00
Glenn Rice 76d9209ad4 When the gfx debugger is saving shaders make sure the directory exists.
Make sure the gfx debugger unpauses when the emulator is stopped.
When a wad is installed make sure directories exist.
For the cmake build if a header is not provided in the check_lib macro don't check for it, and assume pkg-config was supposed to work.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6581 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-14 23:19:34 +00:00
Glenn Rice 35fef1f173 Revert back to LogTypes. Fixes issue 3668.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6580 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-14 17:52:01 +00:00
skidau 7c0e08b0e7 Forced the video thread to the third core when "Lock threads to cores" is enabled. This should fix the slowdown that this option produced on CPU's with HyperThreading. Thanks to NaturalViolence for the tip.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6579 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-14 09:20:02 +00:00
Glenn Rice e4ed7dab22 Build fix for case sensitive platforms.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6578 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-14 02:44:27 +00:00
LPFaint99 18e95ecdfa EXI: grab the FlashID from the memory card headers and update sram to include correct id and chksum
allows using any (valid) memorycard.raw in any slot (including real memcard dumps)

Fixes issue 684.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6576 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-14 01:25:50 +00:00
Marcos Vitali b5ba9b3479 I've fixed a beautiful bug in GPFifo the current Memory in some conditions was not assigned right. Pleaseee test again your games with FIFO hangs like WII music, WII sport, Wii resort, etc. May be this help :P
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6575 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-13 23:04:13 +00:00
Marcos Vitali 5fd9951649 - I've implemented cache of interrupt states for PEFINISH and PETOKEN
- I've implemented calling to ProcessFifoEvents when is there is a pending event in the main queue from CP, PE & GP
- I've implemented FifoIntReset(TRUE, TRUE) in write Clear Register.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6572 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-13 07:56:54 +00:00
skidau b926cb426e Disabled the paired single sum instruction (ps_sum) as it is causing
the black screen in Sonic Colours. Both JIT and JITIL have this work-around.

Re-enabled ps_mul as that instruction was not the root cause.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6565 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-12 04:53:18 +00:00
Shawn Hoffman 8e38b1a8a7 HLE_IPC_BuildFilename was actually ignoring the size argument. Fixes "/tmp/sys" error.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6564 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-12 00:38:36 +00:00
skidau ad82dd59b9 Disabled the paired single multiply instruction (ps_mul) in JIT as it is causing the black screen in Sonic Colours. JITIL has a different bug as disabling ps_mul in JITIL did not help the issue.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6563 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-11 22:47:04 +00:00
Shawn Hoffman c7b736bb56 Remove some debug stuff
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6558 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-11 20:53:10 +00:00
Shawn Hoffman 3528629d9a Use the /sys/replace file for defining char to replace and their corresponding replacement strings.
Method suggested by pune for compatibility across filesystems and nand tools.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6557 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-11 20:51:48 +00:00
skidau 0447abef36 Changed the GC controller timer from a host based one to one based on the emulated hardware. This helps the emulator become more deterministic.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6552 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-10 21:24:25 +00:00
LPFaint99 1e0b0bf84d Fixes/Cleanup for the MemcardManager.
Notable Changes:
Fixes right click menu in linux.
Fixes Issue 2412.
sram.raw file is no longer required to format a memcard
Update to use new ini sections, automatically remove default settings from ini file
enable pages setting no longer requires memcard manager to be reopened to take effect
it is no longer possible to switch to a negative page number

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6546 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-10 07:11:05 +00:00
Shawn Hoffman 2ae7f7f01f Replace characters that NTFS and HFS can't handle with '-'. Should fix issue 3443.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6545 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-10 03:47:00 +00:00
skidau c718d2e630 Fixed an issue where the emulator would remain paused when attempting to load a non-existent save-state.
Fixes issue 3665.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6543 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-09 12:04:03 +00:00
Shawn Hoffman 908273d5f4 Just rephrase something :)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6538 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-07 05:59:18 +00:00
Soren Jorvang 738e5e55ee Cast size_t to unsigned long for printf to deal with (32-bit)
systems where size_t is typedef int.

It's either this or use the C99 %zu but while we can probably
safely assume C99 compilers, I am not at all sure that that's the
case for stdio libraries and this solution is fairly low-impact.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6535 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-05 18:22:41 +00:00
Glenn Rice d171f7277b Fix the nogui build on linux. The software plugin config dialog should not be built.
Fix the default wiimote emulation mouse button settings on linux.
Fix a little c++ operator precedence issue.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6534 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-05 18:10:13 +00:00
Soren Jorvang 4934cd29b3 Move NSAutoreleasePool handling into the proper entry/exit points
for the real wiimote thread as for the other threads.

Turns out we use OS X bluetooth API's that were introduced in 10.5.4.
 
Remove vestiges of previously removed wiiuse_set_bluetooth_stack().

XXX We should probably have a Common equivalent of htonl and friends.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6531 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-05 16:18:09 +00:00
Soren Jorvang f169def36f First pass at dealing with different size_t/off_t sizes in C90 environments.
Most of the code dealing with the LogTypes namespace was C which lead to a
lot of nonsensical casting, so I have dumbed LOG_TYPE and LOG_LEVEL down to
plain C even though the move of wiiuse into Source means we don't currently
call GenericLog from C.

Set logging threshold to MAX_LOGLEVEL at startup so debug builds will also
p  rint debugging messages before the GUI is running.

For some reason the way we use SetDefaultStyle doesn't play nice with wx 2.9
so we just get the default black text on a black background. Using a gray
background works around that problem, but I found it to also be much easier
on the eyes so I have switched the background color on all versions.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6528 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-05 15:59:11 +00:00
Shawn Hoffman 9da4fe086b allow gcc to check the format of args being passed to MsgAlert and GenericLog. Fixed nearly all warnings that arose from this, as well as some preexisting ones (some were actually crashes and/or bugs...)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6522 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-05 09:04:34 +00:00
Rodolfo Osvaldo Bogado 379fa47b6a little fix for r6513 thank to metatheos for finding the error
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6518 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-04 22:04:46 +00:00
Soren Jorvang 7901e74f00 Reestablish *BSD build using CMake.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6516 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-04 15:19:04 +00:00
Shawn Hoffman e70e623624 Second attempt at issue 3458. Fixes issue 3458.
Replaces all occurrences of ftell and fseek with ftello and fseeko, respectively. This matters on non-win32 where only these names are altered by the _FILE_OFFSET_BITS define. Win32 still just maps the funcs to ftelli64/fseeki64.
Also add some File::GetSize I had skipped in my last commit.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6515 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-04 03:50:55 +00:00
Rodolfo Osvaldo Bogado 97e3a3ea6f remove fifowait flag, is not needed now as we execute all events that need to be executed even if the cpu is waiting for the fifo.
this way fifo will not avid other thread events to bi executed.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6514 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-04 03:44:56 +00:00
Marcos Vitali f5a28aecb7 Rodolfo and Me fixed ProcessFifoWaitEvents() in CoreTiming, now process the all events and not only the first :P
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6513 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-03 23:12:27 +00:00
Shawn Hoffman 3d441febda Attempt to fix issue r3458. I don't have a 32bit linux install, however I know it will at least fix compressing. Please test if uncompressed games run.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6510 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-03 12:42:01 +00:00
Glenn Rice b5863da915 Possible fix for the rdtsc call in JitIL.cpp on macosx (issue 3531). This also fixes issue 3595 (although that issue was invalid -- we don't suport scons on linux anymore).
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6498 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-30 02:56:44 +00:00
skidau 9c1fb241c7 LLE JIT: Speed up the idle skip detection by moving the logic into the block and removing it from the dispatcher. This works because we can detect the idle skip blocks at compile time.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6488 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-28 11:04:50 +00:00
Glenn Rice 84a72e90b0 Migrate the opencl setting completely to the gfx config dialog.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6472 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-24 17:30:04 +00:00
Glenn Rice 6d93a6b698 Linux build fix for the windows build fix in r6465. I tested this on both windows and linux.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6467 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-23 15:52:42 +00:00
nodchip 5647bcd869 JitIL: Fixed the compile error in r6462.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6465 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-23 14:50:25 +00:00
Glenn Rice f915509fff Linux build fix.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6464 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-23 14:00:40 +00:00
nodchip b0c94a47f9 JitIL: Implemented JitIL IR Disassembler. If you want to use it, add "OutputIR = True" in the "Core" section of Dolphin.ini.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6462 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-23 13:35:44 +00:00
Glenn Rice a3c46990f6 Revert to gettimeofday on posix systems. I give up.
Temporary fix for OSX in JitIL.cpp
This revision should build on OSX again.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6457 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-22 02:42:53 +00:00
Glenn Rice 7788bac40c Fix ogl screenshots for windows.
Fix the macosx build (perhaps).
This changes the JitIL timed profiling to using assembly language to obtain the time.  It does seem to be faster.  Not sure if it will work on macosx, but if it does it has the necessary precision that gettimeofday does not have.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6448 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-20 03:24:51 +00:00
Glenn Rice ef55177ed6 Implement JitIL profiling on linux. I also tried implementing __rdtsc using assembly and didn't really see a speed improvement so went with clock_gettime.
Also changed other gettimeofday calls to clock_gettime, which is supposedly more accurate.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6447 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-20 00:22:56 +00:00
Shawn Hoffman d1264b3258 JitIL Profiler needs time.h
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6446 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-19 17:43:12 +00:00
Glenn Rice c93aaae1d8 Linux build fix. When I have time later I will implement nodchip's JitIL profiling on linux.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6445 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-19 17:35:01 +00:00
nodchip b0c20fe643 JitIL: Improved the speed of JitIL time profiler.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6444 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-19 15:17:26 +00:00
nodchip 96cdb1ad07 JitIL: Removed ENABLE_JITIL_PROFILING macro and added an entry in setting file.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6443 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-19 07:48:48 +00:00
nodchip 13370ca6ca JitIL: Implemented a simple time profiler. Unfortunately, this is currently for windows only. Please fix it.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6442 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-19 06:24:59 +00:00
Glenn Rice a279b391cc Make Linux/MacOSX system checks correct in the cmake build. UNIX is true on both linux and osx. The cmake build probably still doesn't work on MacOSX though.
Also added an option to explicitly disable building with MPG framedumps.  To use it add -DENCODE_FRAMEDUMPS=OFF to cmake on the command line.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6429 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-17 01:03:39 +00:00
Glenn Rice 0644295f3d Build fix. Remove some obsolete code. Fix some compiler warnings.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6428 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-16 21:14:19 +00:00
Shawn Hoffman 9dd60c6115 make Audio Interface more clear. Should have no behavioral changes. The comment block in AudioInterface.cpp lays out how real hardware is...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6427 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-16 20:36:57 +00:00
Jordan Woyak 71f842e8c0 Cleaned up NetPlay a bit, fixed some UI text.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6425 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-16 01:55:29 +00:00
skidau 0c5ccf7156 Tweaked the VBeam logic enough to fix Endless Ocean 2. This might also fix a few other games that have been black screening on boot recently.
Fixes issue 3472.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6423 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-15 11:32:30 +00:00
Jordan Woyak 73ed235fd1 Changed macro for disallowing copy-ctor and =operator into an inheritable class. Removed IrPointer.ini (no longer used)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6421 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-15 05:29:10 +00:00
nodchip b025752192 JitIL: Fixed the wrong constant value. It was lower than the actual number of registers.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6419 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-15 04:06:55 +00:00
j4ck.fr0st 01ac354e97 Move UDPConfigDiag into Dolphin, to allow building of UDP Wiimote again.
Please test this, I don't have any phones or whatever capable of communicating with it.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6405 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-14 13:30:57 +00:00
Shawn Hoffman 7ad7acd248 move wiiuse to Source/Core and add to the main dolphin solution
make wiiuse link dynamically with hid.dll, removing the need for WDK
compile wiiuse as c++

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6394 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-13 19:15:43 +00:00
Shawn Hoffman 820c0022a5 Windows: Link debug build against debug wiiuse. Can't keep linking to the release wiiuse as it does not use the same crt.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6388 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-12 19:00:21 +00:00
Glenn Rice c0bdf4de81 Several little things.
The C version of the GenericLog was being used in both C and C++ branches of the code.
Parent panic alerts by the main_frame so that those windows get the icon too.
Fix a couple of compiler warnings.
Added some checks for libraries in the cmake build.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6385 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-12 05:05:27 +00:00
Shawn Hoffman 7800d68fee add ProcessorInterface::Read16. wii64 uses this (by accident), but real hardware supports it, so why not.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6384 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-12 04:20:00 +00:00
mylek4 67f850dd37 DSPHLE: Added an option for 48khz output and supporting upsampling code.
Games that have higher frequency sounds and music should sound a bit better using 48k. 

I don't have any games that use DTKMusic so that upsampling code untested. If you get strange sounds only at 48k try toggling dtk music to see if that isolates the problem and let me know.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6383 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-12 03:39:07 +00:00
Shawn Hoffman 33421457d6 Quietly log writes to 0xc0003030. Written to only by bs1, and we don't seem to really care about it.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6377 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-11 01:12:01 +00:00
Jordan Woyak 26f84c1e74 StringUtil cleanup. Nothing seems broken.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6367 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-10 04:12:31 +00:00
Glenn Rice d0afc20596 Added checks for portaudio and opencl to the cmake build system.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6351 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-06 03:49:18 +00:00
skidau de62a190f1 Removed one of the extraneous conditions from JIT64 UnsafeLoadToEAX.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6339 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-04 11:43:44 +00:00
Shawn Hoffman 9df772ed89 Make NTSC-J setting an option. This allows games which use Japanese ROM fonts to work correctly. Unfortunately trying to autodetect when to enable this setting is not good enough.
Also move Progressive Scan option to main display settings, since it affects both GC and Wii.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6335 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-03 06:28:47 +00:00
Shawn Hoffman 95d9cb3a0f unbreak japanese rom font, broken by r6297
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6333 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-03 01:52:09 +00:00
skidau 785154b89f JIT fix for the lfs instruction in x64 builds. Fixes Ultimate Spider-man.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6332 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-02 10:27:57 +00:00
skidau 13dda74946 Allow the game to set the DSP sample rate. Fixes Bomberman Generation.
Fixes issue 2523.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6328 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-01 23:41:20 +00:00
NeoBrainX b75a805859 Add an experimental CMake build system as a possible replacement for SCons. Only tested on Linux, should work on OS X and Windows in the future as well though.
Some notes about this:
- config.h doesn't get written yet, so you'll have to use one generated by SCons
- dependency checking isn't really implemented, yet. Just some basic checks for OpenGL or ALSA, we need something more sophisticated though.
- the OpenGL plugin fails to load for some reason which I can't debug right now due to the libc debuginfo package version in openSUSE not matching the runtime packages
- there's even some support for generating install packages (rpm/deb/.. packages, NSIS installer, etc). It doesn't work properly right now though, since some paths seem to be hardcoded into Dolphin's source
- probably lots of other stuff I forgot... Just take a look at all the TODOs in the CMakeLists.txt files for more information ;P

Additionally, I added various files to the svn:ignore list.

tl;dr: Unless you are a dev or you're building binary packages, this commit shouldn't bother you :P


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6326 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-01 15:47:02 +00:00
Jordan Woyak 2f2a76b28a Attempt to fix real wiimote delay issues experienced by some. (Issue 3428)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6324 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-31 19:22:31 +00:00
skidau 7410056536 Added the wait/sync back in the video thread on XFB swaps. Fixes issue 3391.
Changed the VI interrupts to occur on writes instead of reads.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6304 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-23 12:26:57 +00:00
skidau e9734084ee VideoInterface and Progressive Scan fixes
The "Enable Progressive Scan" option in the Wii menu now controls whether the Wii/GC will detect a progressive scan display.  This affects the timing of some games (both GC and Wii).  Usually, the checkbox should be unticked as progressive scan displays require higher bandwidth.

This fixes the slow speed in NBA JAM.  This also fixes the hang in Megaman Network Transmission.  This should fix Deadly Creatures (turn off progressive scan).

Fixes issue 3314.
Fixes issue 3066.
Fixes issue 2571.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6297 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-21 14:50:42 +00:00
Soren Jorvang 9a03484d64 Goto'ing past variable initializations is undefined behavior.
Work around different gcc versions giving conflicting warnings
about signed/unsigned comparisons involving bit fields.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6290 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-20 00:12:41 +00:00
Jordan Woyak 7b45ac6e01 Made it easer to use mouse/keyboard and a gamepad together on the same emulated wiimote. Renamed mouse buttons from "Button N" to "Click N" so they do not conflict with gamepad buttons.(hopefully not too ugly, mouse buttons will need to be reconfigured) (Fixes issue 3363)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6289 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-19 23:11:22 +00:00
skidau f444dd551b Quick FIFO fix to get NBA JAM working.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6285 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-16 10:16:05 +00:00
skidau c4c56d3146 Added Wii disc speed emulation
Added disc access time emulation
Enabled the disc transfer speed by default
Changed the system timing back to the pre-r6090 default (thanks to tsilibourditsas for testing)
Changed the game property to "Speed up disc transfer rate".  Leave this disabled for the most compatible setting.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6284 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-15 21:46:51 +00:00
nodchip 8e6a866a5b JitIL: Fixed the folding rules. This was the underlying bug of the bad collision checking bug reported in Issue 3097.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6283 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-15 07:48:20 +00:00
nodchip 59381f8343 JitIL: Added an IR instruction. Fixed the NSMBW bug reported in Issue 3097.
In Issue 3097, two bugs are reported (The bad collision checking in NSMBW and MP2 collision issue). In this commit, the bug in NSMBW is fixed.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6282 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-15 00:45:45 +00:00
Shawn Hoffman f8d8445805 buildfix for debug/debugfast x64
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6275 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-13 03:07:58 +00:00
Soren Jorvang 739c9eb2df Allow building without bluetooth support.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6273 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-12 23:39:16 +00:00
Soren Jorvang e81a10fb44 Temporarily re-enable SDL pad input on OS X.
Placeholder SConscript for VideoMerge plugin.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6272 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-12 22:26:30 +00:00
Soren Jorvang a89b8f4a7d Fix scons build.
OS X real wiimote support not yet tested post-merge.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6271 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-12 20:14:09 +00:00
Jordan Woyak 7e08fc19fc Moved WiimoteNew into Dolphin and eliminated the old wiimote plugin. Removed wiimote plugin support. Moved input dialog related InputUICommon stuff into DolphinWX. Removed now unused InputCommon files. UDPWiimote stuff is temporarily disabled until it is reorganized so Core won't depend on wx. Real wiimotes are now initialized on first need(wiimote diag open or game start) and left initialized until Dolphin exit.(maybe this will work better for Linux/OS X) (scons probably needs some fixes)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6270 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-12 19:42:29 +00:00
skidau 7733b84bc1 Added a game option to emulate the disc transfer rate. This is needed for some games like Mario Golf and Fire Emblem: Path of Radiance.
Fixes issue 1992.
Fixes issue 2519.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6268 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-11 12:38:17 +00:00
Jordan Woyak 31c7fb7a33 Fix wiimotes.(fixes issue 3195)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6261 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-06 02:28:52 +00:00
Soren Jorvang 4b5b9ad05c Add Turntable.cpp to SCons build.
Set native eol-style on recently added files.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6252 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-03 08:20:24 +00:00
skidau c6fa5804de Added support for PAL-R (Russia) ISO detection. Fixes issue 2575.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6251 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-03 06:10:14 +00:00
skidau 26c7a5303d Fixed a bug in JIT/JITIL. The size_of_merged_addresses variable was being used before it was initialised in certain cases (Rogue Leader).
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6246 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-02 02:04:44 +00:00
Soren Jorvang c8c805f720 Remove unnecessary shadow variables and signed/unsigned comparisons.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6244 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-01 12:38:31 +00:00
Shawn Hoffman 73f4bc4598 Some more cleanup which should've been in r6232. Thanks Billiard.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6234 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-27 05:16:11 +00:00
Shawn Hoffman 18be8ffa6e Replace all bitfields which were only declared with "(un)signed" with their actual types. Let me know if I missed any. It would also be a good idea to test this commit in both x64 and x86.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6232 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-27 04:29:51 +00:00
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
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
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
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
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 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
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
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
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
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
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
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
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 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
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
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
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
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
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
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
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
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
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
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
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
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
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
dok.slade 9b6180ab27 Fixed JIT register allocator.
Now it only writes back dirty registers when flushed
	* Fixed KillImmediate
	* Renamed LoadToX64 and StoreFromX64 to BindToRegister and StoreFromRegister respectively (as suggested by ector)
	* Code cleanup in calls to the reg allocator


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6053 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-04 19:34:47 +00:00
skidau dc0a67b53a Brings back any speed lost from r6040 while maintaining all speed gains.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6045 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-04 11:07:40 +00:00
skidau fe0f25c737 MMMU Speed Optimisations:
* Optimised the memory bounds check in MMU and MMU speed hack games.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6040 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-03 10:52:02 +00:00
skidau f7c4670c9f * Fixed a careless mistake of mine with SetJumpTarget
* Changed ABI_PARAM back to ECX/EDX.  Thanks for the tip, Soren
* Reverted r6035

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6036 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-02 14:06:27 +00:00
Soren Jorvang bbc69a64ad Revert parts of r6032 that break OS X and probably other non-Windows
platforms as well. It would seem that ABI_PARAMx will have to be
used more consistently elsewhere to match up with a change to use
them here.

Not sure yet why I still need the final section of Jit64::stX.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6035 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-02 10:36:33 +00:00
skidau fcf2fb2b9b MMU Speed Optimisations:
* Un-cleaned the Load/Store code.  I think this will fix the stability issues from r6032
* Added memory exception checking to a couple more JIT FPU instructions
* Optimised the 64bit fast memory access slightly
* Optimised the MMU speed hack.

The rest of the speed optimisations from r6032 have been retained.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6034 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-02 10:28:37 +00:00
skidau 9c36f0bc88 MMU Speed Optimisations:
* Added memory exception checking to JIT instructions
* Cleaned up Load/Store code (thanks dok.slade)
* Consolidated memory access routines
* Fixed graphics corruption in some games (dcbz instruction)
* F-Zero GX in 32bit JIT mode now works
* Removed temporary slow hack in JITIL (introduced in r4839)


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6032 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-02 04:22:04 +00:00
Soren Jorvang fad075351c Silence some compiler warnings.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6029 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-01 16:14:35 +00:00
nodchip 949fec41ca JitIL: Reverted "lbzu" added in r6018.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6023 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-01 02:17:52 +00:00
nodchip f79eff00e4 JitIL: Fixed comment out style reviewed in r6017.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6022 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-01 01:23:14 +00:00
Soren Jorvang 3d25197a1c Avoid always-true and signed/unsigned comparisons.
Make empty while loops a little more obvious with a {} suffix.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6019 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-31 19:06:44 +00:00
nodchip 0e83d52382 JitIL: Added "lbzu" instruction and "crXX" instructions. "crXX" are ported from Jit_SystemRegisteres.cpp. "lbzu" may cause crush in GFZP01 (F-Zero GX PAL). I could not test with GFZP01 because I don't have it. I tested "lbzu" with other games, though.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6018 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-31 15:43:54 +00:00
nodchip 2213d423bf JitIL: Commented out the code which cause bugs in STGJAF OP movie.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6017 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-31 15:32:02 +00:00
Soren Jorvang 824b509d2e Make the SSE3.1 VideoCommon code available in GCC builds.
The GCC model for extended instructions like these is that you compile
with -msse3 etc. These affect code generation for whole compilation units,
so the idea is that you have a separate .c file for each instruction set
class and then indirect to the desired one at runtime.

Without e.g. -msse4.1, the GCC built-ins used by <foointrin.h> are not
available. However, in our specific case of compiling with -msse2 and
wanting to use SSE3.1 code, enough built-ins are available that we only
need to provide a little hack for pshufb.

Upgrading this to also use SSE4.1 instructions doesn't appear feasible
without a lot of undesirable duplication of GCC built-in functions and
headers, so we'd probably have to move to the GCC model of separate
source files for that.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6014 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-31 14:40:01 +00:00
dok.slade c88689381f Merged JIT crXXX instructions (thanks XTra.KrazzY)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6012 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-31 10:29:08 +00:00
nodchip d5a698f188 JitIL: Removed unused variables reviewed in r6010.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6011 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-31 10:12:11 +00:00
nodchip aaa083f8f0 JitIL: Added instruction combining rules for speed up.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6010 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-31 03:26:25 +00:00
skidau 432335cda5 Fixed some boundary issues in PPCAnalyst. This fixes Rogue Leader and other MMU games.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6009 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-31 02:29:11 +00:00
dok.slade 12be9952ab Implemented more JIT instructions
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6008 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-30 21:28:20 +00:00
j4ck.fr0st 6ed3357066 Experimental: Implement skid's MMU Demand Paging in JitIL.
This one needs a lot of testing, since I don't have any games that need it, except Rogue Leader (GSWP64) - and I didn't do more "testing" than watching the stormtroopers dance due to speed reasons (altho it seems twice as fast as JIT for me; it does spit out a lot more warnings too)

btw, ITS OVER 6000!!111

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6006 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-30 17:51:05 +00:00
skidau 1d2f4283d1 Added a self modifying code option in the game properties. Turn this on for Monster House and other games that hang or show memory errors. Turn it off for everything else. This fixes Legends of Wrestling.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6005 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-30 17:12:59 +00:00
skidau 84b5824670 Quick fix to get Monster Hunter Tri working.
Minor changes resulting from code review comments.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6004 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-30 16:54:16 +00:00
Soren Jorvang 72494a0363 Use the portable SLEEP() macro in place of Sleep().
r5998 fixes the Center() problem in plugins on OS X.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6001 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-30 11:58:18 +00:00
skidau bae8c6ed9c Fixed the crash that occurred while loading and saving states. This change freezes the system while a save state is being made or loaded, ensuring that the sub-systems (e.g. CPU and GPU) is in a consistent state when the save-state is created. Removed the clearing of the JIT cache as invalidated memory would sometimes be jumped to from the block descriptors, causing the crash. Removed the saving of the old JIT unlimited icache from the state as this now serves only as transient data to track what has been compiled in the JIT (and it took up a lot of space). The icache is now saved inside the PPCState.
Fixes issue 2964.  (I hope)

HAPPY 6000th!!!

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6000 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-30 09:24:23 +00:00
Glenn Rice 06fb0c292a Removed the hackery that was being done with the plugin configuration dialogs on windows. That was unnecessary and ugly. The HWND type is dead for non windows. Also cleaned up the gui a little.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5999 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-30 03:51:49 +00:00
Marcos Vitali 75bd5ed645 Add fifoWait property of Event Object to SaveStates.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5998 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-30 00:35:33 +00:00
Soren Jorvang 24fdf942a4 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 <sys/stat.h>'s.

Correct a few type nits.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5995 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-29 13:29:15 +00:00
skidau 9ff5e836eb 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



git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5994 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-29 12:17:47 +00:00
Jordan Woyak b70f134c88 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)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5993 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-29 10:21:48 +00:00
Marcos Vitali 25accdec23 I add a CriticalSection in RemoveThreadsafeEvent for safety
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5992 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-29 04:02:45 +00:00