Commit Graph

4717 Commits

Author SHA1 Message Date
Glenn Rice 3af93e8cf3 If the DSP LLE can not find the needed ROM files exit the emulator without crashing the application. Also reimplement soren's revision 7195 in a way that works on linux and windows. (This makes it easier to clean up the video backend if the DSP emulator fails to initialize.)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7271 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-02 05:16:49 +00:00
Marko Pusljar 6073600084 DSP: implemented saturation in dsplle-int
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7270 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-01 20:20:04 +00:00
Glenn Rice df809630c5 Pass std::string's by reference when possible.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7268 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-01 05:16:32 +00:00
Glenn Rice a5b471f490 More conversion from char * to std::string.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7266 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-01 03:06:14 +00:00
Glenn Rice ba54fac9eb Convert GetUserPath to return a std::string instead of a const char *. This simplifies its usage in most cases.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7265 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-28 20:40:15 +00:00
Soren Jorvang 1b8f476024 Integer constants larger than int need a type suffix.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7264 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-27 23:13:28 +00:00
Glenn Rice 50c2f61d24 Make the break point window toolbar a real toolbar, and general debugger gui cleanup.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7263 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-27 23:03:08 +00:00
Rodolfo Osvaldo Bogado ccc12c6950 a little simplification for the dlist id and a little correction to YieldProcessor in windows.
in windows sleep(0) behaves more like what is defined in the yield instruction so use it instead. In my amd 6 core system brings a nice 8% speedup so please test I'm interested in knowing the behavior in different systems.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7261 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-27 18:06:55 +00:00
pierre d56390407f Core/DSP: Access all registers except ST* through the regcache
No speed difference, probably because our basic blocks are
too small to contain more than one access to any register
or used too seldom for multiple accesses to make a difference.



git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7260 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-27 18:04:35 +00:00
NeoBrainX ff62f492e6 Remove numerous video options from the ISO properties.
Use the new configuration profile system instead.
Thanks to kostamarino for migrating the game inis to the new system :)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7259 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-27 14:43:52 +00:00
Glenn Rice 217ee43063 Fix a memory leak in the breakpoint window.
Parent message alerts by the active window.  This way if another window is open it isn't pushed behind the main window.  We probably should parent the message alerts by the calling window instead, but this may be good enough.
Make sure there is only one instance of some modeless windows (Cheats Manager and Net Play).


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7257 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-27 02:27:43 +00:00
Soren Jorvang c07fb95821 PS3 controllers have some input elements with very large value fields
that cause IOHIDValueGetIntegerValue() to smash the stack when trying
to convert them.

In practice, all relevant axes seem to also be available as either
8 or 16-bit values, so just ignore anything that doesn't look like
that (or a button).

Fixes issue 3931.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7255 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-27 00:15:26 +00:00
Nolan Check f0c5cc76a9 Add EFB encode-to-RAM support in DX11 backend. It could probably be simplified a lot, and not all the possible formats are implemented. I tried to use the dynamic-linking feature of shader model 5, but Microsoft's HLSL compiler is broken. "Dynamic mode" is implemented, but disabled for now.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7253 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-26 23:41:02 +00:00
pierre 8351177738 Core/Core/Src/DSP: Drop the indirect addressing hackery from DSP Jit
Was made possible by the move of Core/DSPCommon to Core/Core.
This should not give a significant speed difference, but frees
another register for register allocator use on x64 and
generally simplifies the code.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7252 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-26 21:30:49 +00:00
Glenn Rice 565ab76e63 Linux build fix.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7251 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-25 23:51:59 +00:00
skidau 960748b184 Added an option for opening up the wiki entry in the compatibility list. The option is in the right click menu of the games list. The game entries in the wiki are currently manually added by the administrator.
Based on an idea by JPeterson.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7250 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-25 23:33:11 +00:00
Shawn Hoffman 19524a8bb7 change how the "toolbar" of bp window is handled -> works correctly in release build.
code is still ugly, so if you feel like writing a shiny debugger...

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7249 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-25 23:15:53 +00:00
Glenn Rice 992f8be5b0 If video backend initialization fails, have the emulator die gracefully instead of crashing the application. Also a little clean up of the passage of the video window handle to the backend and back.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7248 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-25 21:14:13 +00:00
Rodolfo Osvaldo Bogado eef715b1cf added the possibility to allocate aligned memory, an use it to allocate the buffer utilized in texture decoding, this will make a little easy to use aligned writes when possible in sse2/3 optimized algorithms.
some code additions for future use ;).
please gcc user test this as i don't have opportunity to test it myself i only use reference code to.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7247 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-25 20:35:05 +00:00
Rodolfo Osvaldo Bogado ac6c18a5e4 some cleaning in dlist cache, runvertices and runcompiledvertices
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7246 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-25 20:27:57 +00:00
Soren Jorvang 7c959d9655 vector::erase needs a non-const iterator.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7243 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-25 12:27:38 +00:00
Shawn Hoffman 832df18c0f more memcheck stuff
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7242 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-25 11:03:49 +00:00
Shawn Hoffman 1ea4b8045e memorycheckdlg: set the log, break, and range flags properly
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7241 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-25 10:07:24 +00:00
Shawn Hoffman d7a9dc7df8 debugger: better saving/loading of breakpoints/memchecks to file
no more softice style :(

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7240 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-25 09:35:56 +00:00
Glenn Rice 7d3ad0b1fe Fix the hang on windows when wiimote refresh is used during a game.
Fixes issue 4161.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7239 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-25 05:19:59 +00:00
Shawn Hoffman ef63bccfc1 vs2010: make -d be passed to debugfast builds launched from vs
revert r7200. instead, wrap the Interpreter_FloatingPoint.cpp in fp:precise for msvc

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7238 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-25 04:00:16 +00:00
Glenn Rice 1f33fc1a48 Fix a segmentation fault when the wiimote source is changed to a real wiimote in the config dialog.
A little clean up of the debugger code.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7237 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-25 03:56:14 +00:00
Shawn Hoffman ea008a82ae fixes issue 4147
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7235 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-24 10:18:59 +00:00
Shawn Hoffman de25440bb3 debugger: don't make spacebar step the ppc.
don't call UpdateGUI() each time the statusbar is updated.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7234 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-24 05:59:46 +00:00
Glenn Rice 2f14598687 Clean up the debugger gui a bit. In general do not call SetSizeHints on a window unless it is a top level window. It isn't supposed to do anything for non top level windows, but it causes glitches on linux. Removing these calls does not affect the end result on windows.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7233 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-24 05:05:25 +00:00
Glenn Rice 1eaad0966c Still didn't quite have the wiimote connection stuff right. This probably needs to be heavily revised.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7232 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-23 16:00:01 +00:00
skidau 9680d3ac95 Added an option to disable the Wiimote speaker. The checkbox has 3 states:
Ticked = Clear sound but a bit unresponsive to controls
Filled = Same as r7225
Clear = Disable speaker

The option is in the Wii tab of the configuration.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7231 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-23 10:01:04 +00:00
Shawn Hoffman 996ff62ad6 fix the debugger flashing like crazy.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7230 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-23 05:23:21 +00:00
Glenn Rice ceb03781dc Fix an issue when a wiimote source is changed to a real wiimote in the wiimote config dialog while a game is running, and the wiimote was disconnected from the CPU. Only change the connection status when the dialog is closed.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7229 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-23 03:06:16 +00:00
Shawn Hoffman 39573ca959 Use HLE::Patch, so struct order doesn't matter. add a fun symbol :)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7228 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-22 16:18:43 +00:00
Shawn Hoffman 85227934d6 unbreak OSPatches[]
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7227 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-22 15:07:38 +00:00
Soren Jorvang 2b6a8c1cf8 Build Speaker.cpp.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7226 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-22 14:06:06 +00:00
skidau d92aad4430 Added Wiimote speaker support by hack patching out the IsBusyStream function using HLE. DSP LLE is required to process the speaker data. This commit works with real Wiimotes. I have added the code to decode the audio from the emulated wiimotes but have not added the code to output their audio to the PC speakers.
* Added HLE function IsBusyStream which signals that the Wiimote is ready to accept speaker data.  This function is not a conversion from the real PPC code.  It a simple function that returns the "ready" status after being polled.
* Added code to find and patch HLE functions on boot
* Added 4bit Yamaha ADPCM decoder from the ffmpeg project
* Removed some test code
* Added some copyright notices

Fixes issue 438.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7225 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-22 12:48:35 +00:00
Glenn Rice f2a086c44c Time for a translation update.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7224 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-22 02:02:56 +00:00
DimitriPilot3 a1da2e0e4c Some fixes for the "Cheat Search" feature :
- Replace ToLong() with ToULong(), as to allow values in the [0x80000000..0xFFFFFFFF] range to be parsed correctly without failure.
- Remove the "val_base" hack, as it breaks hexadecimal values beginning with '-'.
Simply passing 0 as the second parameter to ToULong() is enough, as mentioned on this page: http://msdn.microsoft.com/en-us/library/5k9xb7x1%28v=VS.100%29.aspx
- Changed the error message (and some of its translations) to reflect that octal values are now auto-detected ("supported") as well.

To users: 
Note that values beginning with '0' (not "0x" nor "0X") are now interpreted as octal values instead of decimal values. So be careful when using those!

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7223 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-21 18:01:32 +00:00
Glenn Rice 9bf8a58286 Fix the segmentation fault users are having when opening the video config dialog with no games visible in the game list. Although in that case there will also not be any game profiles listed in the dropdown.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7222 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-21 16:50:55 +00:00
Shawn Hoffman 6e4923399e revert r7212 (express users must modify a single line, instead)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7220 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-21 15:17:41 +00:00
Glenn Rice 3b6f7644fd Make log options an AUI window instead of a dialog.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7217 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-21 15:01:00 +00:00
Glenn Rice f9ccd6dfa1 Sort configuration profiles in the video configuration dialog. Instead of sorting alphabetically, sort them in the order they appear in the game list control.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7216 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-20 23:42:21 +00:00
Glenn Rice 636af2ce67 Fix the game list tooltips on linux in a better way. Also activated them on OSX, but they still don't work the best there.
Fix a hang on emulation shutdown on linux.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7215 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-20 22:56:03 +00:00
Shawn Hoffman 62cb8ebe46 Force dolphin to use the windows7.1sdk (the windows7.1sdk installer is silly and refuses to recognize that vs2010 exists).
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7212 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-20 18:08:20 +00:00
Glenn Rice fa7194b129 Make game list tooltips work on linux. The HitTest subitem parameter is not implemented on non wxMSW so just use the entire item.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7210 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-20 18:03:14 +00:00
Shawn Hoffman 685d3c1f50 windows: fix crash on close
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7209 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-20 02:04:14 +00:00
Soren Jorvang 69a3e5f3c3 wxConvCurrent in wxWidgets is not always initialized at startup
like it is supposed to and depending on the linking method used
this shows up as the inability to use it in an initializer.

I think this may be a wxWidgets bug (ticket #12927), but I haven't
fully debugged it yet.

For now, apply a workaround here.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7208 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-19 22:56:51 +00:00
Soren Jorvang 1795da46ab std::locale("") seems to be broken not only on OS X, but also
on FreeBSD and Linux when building with clang.

I think it would be best to only use wxWidgets for localization.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7207 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-19 22:06:29 +00:00
Soren Jorvang d2910912a4 XInitThreads() must be the very first Xlib function called or else
some X state will have initialized mutexes and some won't, leading
to unpredictable results depending on the feature set compiled into
wxWidgets and so on.

wxGTK starts by calling Xlib functions indirectly through gdk very
early on, so we must hook into wxApp::Initialize().

I believe this should properly fix issue 1540. In case of problems,
please reopen that issue. If you see XLockMutex in a backtrace,
that's a pretty good indication.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7205 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-19 21:53:53 +00:00
Shawn Hoffman d93a548983 setup ios revision (makes some wii demos shutup)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7204 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-19 21:40:03 +00:00
Glenn Rice 22dcfa4455 Revert alphabetization of game profiles in the video config dialog until I (or someone) has time to do it right.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7203 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-19 20:11:51 +00:00
pierre e57406dbcc Core/Common: Add support for low 8 bit parts of SI,DI,BP on 64 bit in x64Emitter
In addition protect against their use on 32 bit and the use of [ABCD]H
together with a REX prefix on 64 bit.

This assumes that the customOp parameter of WriteREX and operandReg of
OpArg always are registers, and thus needs to give something valid to
WriteREX when that is not the case (WriteShift).

In addition to the patch i sent to the ML, there are a few changes to the
error reporting(mostly whitespace).



git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7202 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-19 14:20:52 +00:00
Shawn Hoffman 1f5d54f5a6 Handle NaN in fselx. Fixes issue 4106.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7200 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-19 09:56:54 +00:00
smelenchuk 050dcad9f8 Build fixes when using SDL 1.3 related to force feedback support, as suggested in issue #1338.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7199 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-19 07:06:26 +00:00
Glenn Rice ad666d5e5c Save and load the line wrap option of the log window from ini.
Add Portuguese translation to the windows build.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7198 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-19 04:43:51 +00:00
Soren Jorvang 198e29be07 Call Video_Prepare() before starting the CPU thread.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7194 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-18 23:52:14 +00:00
Glenn Rice 83dc3bf210 Make the log config dialog modeless. Eventually I will make this a dockable window.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7193 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-18 20:03:01 +00:00
Soren Jorvang a51b99795e Also delay video plugin shutdown for the main thread in the non-dual core case.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7192 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-18 14:27:30 +00:00
Glenn Rice c2bc463fe7 Move the log window options from the log window into a separate dialog openned from an item in the options menu. This gives the log window room to show logs.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7191 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-18 12:34:24 +00:00
Soren Jorvang 2183588030 Also don't shut down the video plugin until after HW::Shutdown.
Not sure if this is necessary, but it matches the previous behavior.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7190 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-17 19:33:50 +00:00
Soren Jorvang 2ce4b29ae2 Initialize video before HW as required by non-USE_WX platforms.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7189 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-17 19:13:44 +00:00
Soren Jorvang fa80f4074d OS X' IOBluetooth class requires that device discovery and device
connection establishment be done in the same thread, which caused
problems when the now persistent device connections could be
initiated by either opening the wiimote config dialog or starting
the emulation.

This same thread doesn't necessarily have to be the main (GUI)
thread, but it fits with the current other init case in the wiimote
config dialog and doing it in the main thread and would be required
if we should want to use the IOBluetoothUI framework in the future
for having the user input a pairing key for permanent syncing.

Also move a few other bits of code from the emu thread function
into Init() and Shutdown() so it only does those things that need
to be in that thread's context. I am not sure about video setup
so I have left that in EmuThread() for now.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7188 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-17 17:51:18 +00:00
skidau 855bcfa40c Added an option for input display. This option shows the controls read by the emulator at each frame. GameCube controls in all four ports have been implemented. Wii controls are todo. The option can be found in the graphics settings. This option is usually used for tool-assisted speed-runs (TAS).
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7186 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-17 09:12:36 +00:00
Marcos Vitali c7ae0eb0d1 Big Fifo Commit Part2: Now the fifo is more stable than my first commit, so is time...
- ReImplementing Single Core Mode like Dual Core Mode Style.

- Stage 1: My goal is, we have the Fifo, CommandProccessor code the more clear, maintenible and documented possible. When I quit dolphin I want any developer can continue with the work only reading the code.
	
* Big Refactoring: A lot of functions was changed the names, and modularized.
Now the FifoLoop and CatchUpGPU does not exist, was replaced by RunGpu() and RunGpuLoop().
The general idea is modeling the code like the real HW. The fifo is only a buffer where the Write Gather Pipe write the commands and from the Graphic Processor read these.
* Big Clean UP a lot of obsolete code and comments was deleted, like DcFakeWachDog, "Fifo very soon hack", etc.

In the stage 2, I will refactoring more code doing emphasis in the division of CommandProcessor, Fifo, Gpu Emulation. Beside I will comment all functions and variables in the code (Don't worry I will ask for English help for this part ;) )

Please test a lot SC mode and DC mode :)
Thank you so much for testing always and the patience. I don't like broke your favorite game but... you must believe me this part is very sensible, I only try to contribute for have a better and stable dolphin emulator.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7185 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-17 04:25:21 +00:00
Soren Jorvang 38950e421b Clean up shared_foo handling.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7183 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-16 13:36:41 +00:00
NeoBrainX e9f3d50eca Fix nowx Debug build. Yes, people use that\!
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7182 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-16 12:09:39 +00:00
Glenn Rice 160f3304d2 Added Czech translations thanks to Zbyněk. Updated Greek, French, Hungarian,
Portuguese, Turkish, and Chinese (Traditional) translations.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7181 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-16 03:06:17 +00:00
Glenn Rice 3a718f04ab Clean up the hotkey dialog by separating into tabs.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7180 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-16 02:19:40 +00:00
smelenchuk 0cc0618e6d GC input recording: Record the on/off state and the analogue state of the L/R triggers separately (gets rid of an arbitrary numeric constant of 230 which isn't elsewhere in the code and should solve some issues with Metroid Prime recordings).
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7179 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-15 23:38:44 +00:00
Soren Jorvang d19c97dbe1 The pkg-config name of libpng is "libpng", not just "png".
Things break if both a shared and static libpng are linked
in, presumably because it has some global state. Several of
the gtk-ish libraries often, but not always, link in libpng
transitively, so it is important that we find it ourselves
first, even if it is not in the linker's search path.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7178 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-15 21:27:15 +00:00
Soren Jorvang 961ac54743 Disable use of exceptions in the wxWidgets3 build.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7177 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-15 20:18:50 +00:00
smelenchuk d7bda211fd Have playback of input files stop upon reaching the frame count designated in the header, preventing that number from being tampered with and assisting in recording verifiability. Adjusted the "resume recording from end of playback" code to account for playback stopping in the middle of a movie as above.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7176 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-15 17:03:20 +00:00
skidau fb4c82fb48 Added the feature to allow creating a TAS movie from a save state. To activate this function, start the game and use the "Start recording" command. A save state will be created at that point in time and the emulator will start recording. This results in two files, a .dtm containing the movie and a .dtm.sav which is the save state.
Changes:
* Allow events to be scheduled when the emulator is not running.  This allows the save state event to be added before the emulator starts.
* Removed the Audio back-end init flag from the save state.  This value should not be saved as it is not data relevant to guest machine.
* Allow a recording to be started at any time (apart from when a recording is already being made).
* Updated the status bar and title bar when an on-screen message is shown
* Removed the saving of PEToken from the save state as the FIFO will save this information
* Added a couple Pixel Engine interrupt states to the save state
* Added the copyright notice to the GCPadStatus.h file.

This function is preliminary.  Let us know of any bugs you find or any UI quirks.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7175 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-15 09:07:55 +00:00
Glenn Rice cf21251802 Fix gfx dialog configuration text on the advanced page, and alphebetize the
configuration selections.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7174 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-15 05:29:21 +00:00
Soren Jorvang c212548f8e Initialize all struct members.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7173 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-14 21:58:53 +00:00
smelenchuk ae4c8c81ac Fix fullscreen switch being triggered twice on hotkey. Should fix issue #4098.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7171 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-14 18:53:54 +00:00
Glenn Rice 0ae8d33149 Some work on changing comments, log messages, and variable and function names to reflect that the plugins are not plugins anymore.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7170 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-14 02:18:03 +00:00
smelenchuk cd308e2358 * If a hotkey is pressed within the render window, pass it over to the main window properly; this means that e.g. the frame advance hotkey works from the render window (and that savestates aren't hard-bound to Fx / Shift+Fx therein).
* Update menu accelerators for all hotkeys, not just the ones in the original hotkey dialogue.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7169 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-14 01:18:01 +00:00
NeoBrainX b776ac3d6f Add per-game "configuration profiles" for video backend configuration:
This allows ALL settings in the gfx configuration dialog to be adjusted _per game_ in a more user-friendly way than before.
Obsoletes the gfx related options in the ISO properties, but I kept those since the configuration profiles use different ini file keys (i.e. convert the game inis to the new naming, please!).


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7167 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-13 22:36:12 +00:00
Marcos Vitali be193088ca - FIX RE0 GFX fifo errors :D
- This game read the CPRead pointer when the GP is processing data and after detach the fifo  and attach again an use this pointer for continue, so implement fifo.SafeCPReadPointer pointer.
- fifo.SafeCPReadPointer is updated when (FAKE_GetFifoEndPtr() - g_pVideoData) == 0) to have a pointer without GFX Commands Cut in the beginning of 32 block.
- Reset video buffer when the CPReadWriteDistance is written by the software.
- This commit is experimental please test a lot your games.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7165 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-13 15:08:37 +00:00
NeoBrainX c30859dae0 SOMEWHAT cleaned up the VideoConfigDiag code:
Also verify the validity of gfx configuration directly after loading rather than in the GUI code (which was kinda stupid anyway).

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7164 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-13 13:42:59 +00:00
Glenn Rice a8992b7960 Move debugger ui files into a subdirectory. Primarily to make it easy to keep debugger strings out of translations, but also because it is more organized.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7163 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-13 06:06:32 +00:00
Marcos Vitali 1d2c936f08 - Delete FIFO CriticalSection sFifoCritical for SAVE STATES. With the skid_au last changes that is not necessary anymore.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7162 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-13 05:52:09 +00:00
smelenchuk 1ad211b3ad Audio logging: actually use the audio backend sample rate when dumping HLE audio; this means that both sample rate settings now dump audio properly.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7161 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-13 05:05:53 +00:00
Marcos Vitali cd9ec1805a - Improve Fifo_Init() and Fifo_ExitLoop() for avoid Crashes when the emulation Start and Stop.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7159 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-13 04:10:40 +00:00
Marcos Vitali 05feabdb49 - Reimplemented FifoReset in other way, only call to GPFifo::ResetGatherPipe() ResetVideoBuffer() in FIFO_RW_DISTANCE_LO when this is equal to "0"
- In the Command Processor Control Register when GPReadEnable is OFF, wait until the fifo lopp finish with thi actual 32 bytes block. This is necessary to have Safe Disabble GP Read in this way AbortFrame is performed by the software, beside this can help to have accurate GPReadEnable OFF.
Please test Metroid Prime 1/2, Guilty Gear XX, X men gc, SMG, and shuffle you can test Harry Potter Prince for WII. :)

PD: The fifo code need a clean very soon.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7158 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-13 02:21:11 +00:00
smelenchuk 0bf25c91ab Have Wiimote update call Frame::SetPolledDevice() so that recordings can track lag frames. (At present, the circumstances in which there actually would be a frame where input isn't polled elude me, but might as well be complete.)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7157 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-13 02:01:31 +00:00
smelenchuk 2eeaae576c Fix for LLE audio dumping to report correct sample rate in output file.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7156 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-13 01:49:20 +00:00
Soren Jorvang 5b75a59d2a Allow building with wxgtk 2.9.2 in Externals.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7155 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-12 22:31:57 +00:00
smelenchuk 8b166a3c6a Fix scons build.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7154 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-12 21:47:14 +00:00
NeoBrainX ced7336d27 wx-less: This time WITH the files of awesomeness!
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7153 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-12 21:29:51 +00:00
NeoBrainX bc6f04adae Move BootManager.cpp to Core since it really doesn't do any wx-specific stuff.
This one is for NaturalViolence, since he was so eager to see it :P

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7152 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-12 21:25:49 +00:00
pierre e81ccd7f33 Common: Change cpuid code again
Looks like compilers tend to use EBX for parameters if not told otherwise and
don't bother to update SP in leaf functions, so PUSH/POP kill local variables.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7151 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-12 18:40:02 +00:00
Soren Jorvang 94176c02a8 Remove a few easily delineated components from the wx 2.9.2+ build.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7150 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-12 16:07:40 +00:00
smelenchuk 642aa59b7e Fix bug wherein the "reconnect on load" checkbox wasn't actually connected to the core setting.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7149 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-12 09:45:33 +00:00
Soren Jorvang 7753937e31 Integrate helper functions from VideoSoftware's VideoConfigDialog
into the shared VideoConfigDiag.

Clean up the list of hotkey defaults a little.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7148 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-12 09:10:11 +00:00
smelenchuk 94d02a23de Tweaks to Wii rerecording for general stability and reliability.
* Better control over which Wiimotes save/load input from input files (general sync improvement).
* Wiimote save stores the ACLQ, allowing maintaining control across save/load (thanks to skid for the idea).
* Wiimote reconnect on save/load now an option - enabled by default to preserve present behaviour.  Disabling this allows the above change to be effective.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7147 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-12 08:25:09 +00:00
smelenchuk 8895d6a250 Make hotkey dialogue display in two columns.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7146 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-12 07:09:49 +00:00