Commit Graph

1023 Commits

Author SHA1 Message Date
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
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
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
Fircrestsk8 05401aeb0e Fixes NeobrainX's new method for toggling the ZTP Hack. The game properties is a much more appropriate place for the hack (I didn't even know about that menu:) ) Thanks to NeobrainX for the code cleanup, and to Mandrix999 for the fix. Also noticed a minor typo.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6062 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-06 02:53:09 +00:00
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
Soren Jorvang 7ddf0aa711 Silence gcc warnings about empty statements and out-of-order initializers.
Increase ISO properties window size to make room for the new Gecko codes.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6050 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-04 14:00:59 +00:00
NeoBrainX 552a535f6d Fix issue 2694.
Fix another dramatic spelling "mistake" in DX9 which I forgot to commit last time.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6042 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-03 18:57:59 +00:00
Glenn Rice 22872b383c Make toggling of word wrap for the log window nicer for linux. Unfortunately this method is only implemented for wxGTK (what not wxMSW? Shocker!).
Made it so that Source/Core/DolphinWX/Globals.h is only used for the wxWidgets build, and a little other file inclusion clean up.
Fix an issue where a user runs a game from the open menu or toolbar items with a clean user directory, and henceforth double clicking on the empty game list (where it says double click to browse for games), that game is run again.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6037 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-03 03:20:44 +00:00
Glenn Rice 26aee8ff76 Create the log window after the menus. This fixes the font ugliness on windows.
Fix modality for the config dialogs on windows.
Fix the compress/decompress dialog wxString issues for MacOSX (hopefully).
Fix the DSP-LLE debugger for linux.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6031 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-02 01:52:00 +00:00
Soren Jorvang 52d3137598 Build with -msse3 on OS X. The first Intel Macs were Core Duo/Solo, which
had SSE3. Keep -msse2 on other platforms. Not sure if there are actually
any Dolphin-capable machines out there without SSE3, but..

Use -search_paths_first to give our statically linked libraries precedence
over /usr/local/lib. 

Some work-in-progress changes to facilitate a more easily redistributable
application bundle on OS X.

Group compiler/preprocessor/linker flags together to make the full set
more intuitively apparent.

The various libraries in Externals have rather inconsistent conventions
for include paths. Best to encapsulate that knowledge in foo/SConscript.

Re-use utils.GenerateRevFile for all three places in the build system 
where we need the SVN revision number.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6030 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-01 16:30:22 +00:00
Soren Jorvang 4bef335632 Remove duplicate instantiation of PNG wxImage handler.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6028 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-01 15:48:11 +00:00
Glenn Rice 2c6f851bba Clean up and fix some issues with the dialogs for compression and decompression of iso and gcm images. Also added a confirmation to overwrite existing files.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6024 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-01 04:09:59 +00:00
Glenn Rice 4d27ecf736 MaxOSX build fix. Thanks soren.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6015 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-31 14:45:35 +00:00
Glenn Rice 840bd3613f Use GetClientRect in the GameListCtrl OnSize function, but removed the +5 padding. This seems to look best on windows and linux. Unfortunately wxWidgets on linux doesn't account for visibility of the vertical scrollbar in this or any calculation I have found.
Also fixed an issue with the saving of the log/console window size.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6013 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-31 14:14:01 +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
Soren Jorvang 1fb47e6393 Modal windows must be closed with EndModal(), not just Destroy()'ed.
wxFD_FILE_MUST_EXIST cannot be used with wxFD_SAVE.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6003 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-30 13:14:53 +00:00
Glenn Rice 2d108f8d57 Fix a mistake in the menu from revision 5999.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6002 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-30 12:52:35 +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
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
Glenn Rice 1f119d5e73 Revert the conversion from u32 to size_t from my last commit to reduce compiler warnings in windows.
Fix an issue that made it impossible to close the console and log windows in windows.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5989 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-28 15:54:22 +00:00
Glenn Rice 71d4ece44e Fix an issue that caused the DSP-LLE window to be openned twice in windows. (Thanks shuffle2).
Fix an issue that prevented the code window settings from taking effect on application start.  (Thanks shuffle2, skid_au, and sanchez).
Fix a potential segmentation fault with the DSP-LLE debugger window.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5988 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-28 15:22:27 +00:00
Glenn Rice 9fea384ed3 Fix some more resizing and saving of such.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5985 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-27 22:12:19 +00:00
Marko Pusljar 67e6ae5fac BPHack option removed (it was not used anymore)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5984 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-27 10:29:34 +00:00
Glenn Rice 586f24645a Fix an issue using render to main in combination with the log window or console window, in which the renderer was not resized when the panes were resized.
Also refresh the log window at that time so artifacts are cleared.
A little more code cleanup of the debugger windows.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5983 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-27 02:39:12 +00:00
Glenn Rice ce3eb85d96 Fix an issue introduced in my last commit. When the debugger is not used and the log or console windows are closed from the menu the notebook is not closed.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5981 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-26 13:22:42 +00:00
Glenn Rice 0eaa7352fd More work on the FrameAui:
Added a default perspective for the debugger.
Save all perspectives, and not just the active one.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5979 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-26 03:46:14 +00:00
Soren Jorvang f99a36ccfa Some refinements to (r5955+r5962+r5964):
Don't rely on trailing /'s in directory names.

Destdir only works for global builds.

Only tar up global builds if they are in a destdir to
avoid SCons eating all available memory indexing /usr.

Print current status of shared_foo in 'scons -h'.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5966 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-24 17:39:17 +00:00
Soren Jorvang d906dcee27 More SConstruct cleanup.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5962 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-24 13:10:54 +00:00
Soren Jorvang 53f5bc682d Make Cg conditional on those platforms for which it is available.
Of course, this doesn't do much good without another shader compiler..

WIP of OS X application bundle building.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5961 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-24 10:24:16 +00:00
Soren Jorvang 7828a689e7 Hopefully fix string concatenation on unicode builds.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5960 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-24 07:31:48 +00:00
Glenn Rice 43cbff64b5 More FrameAui work. Some more segmentation faults resolved. And a little more code clean up.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5959 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-24 02:36:22 +00:00
Soren Jorvang 949b873dc8 Further *BSD portability.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5958 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-23 23:51:34 +00:00
Soren Jorvang 2d06b4114b Some cases where where uses of wxFileSelector with
wxFileSelectorDefaultWildcardStr had been copy-pasted and
changed to use specific filetypes had retained the extranous
format arguments to wxString::Format.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5957 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-23 23:50:09 +00:00
Jordan Woyak a3e3155678 Added a button to the "Gecko Codes" panel to download/parse codes from geckocodes.org. Codes that require modifiers (the XXXX business) will still not work properly, though they should load/save fine. A few more code types should work now. (All non-ASM type codes should at least attempt to run :p) Hacked a param into IniFile::GetLines to disable removal of text after # chars, so codes with # in the name/notes should load fine.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5949 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-23 05:22:12 +00:00
Glenn Rice 2e6c5b36ab Fix a segmentation fault when changing perspectives.
Some general code clean up.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5948 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-23 03:53:18 +00:00
Soren Jorvang ba67333053 Hopefully fix Windows build.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5947 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-22 08:58:23 +00:00
Soren Jorvang 8d2ed5975e Use the Linux install hierarchy conventions on other Unices as well.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5946 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-22 08:09:14 +00:00
Soren Jorvang 09b5dfbd53 Prevent Python from stripping off the final newline of the main(){}
autoconfiguration tests. Some versions of gcc care enough about ANSI C
to complain about this.
 
Use the Linux install hierarchy conventions on other Unices as well.
 
XKeysymToString returns NULL on unknown keysyms, which is not a valid
std::string initializer.
 
There appears to be some disagreement regarding the second parameter
to iconv(). Some versions/installations have it as const, others don't.
Unfortunately, due to wonderful C++ brain damage, implicit conversion 
from const to non-const doesn't work here.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5945 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-22 07:55:35 +00:00
Jordan Woyak 637e5e542a Double warning fix! Thanks to Nakeeeee and BhaaL! :p
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5943 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-22 05:39:57 +00:00
Jordan Woyak 41f5379c8c A slightly modified(fixed a memleak and sizer spacing) version of avindra's patch to improve the layout of the new "Cheat Search" dialog.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5942 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-22 05:28:24 +00:00
Soren Jorvang 83883cee45 Port to *BSD. It runs but isn't terribly useful without Cg.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5934 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-22 03:29:35 +00:00
Glenn Rice 3859a7dce2 Lots more work on making the frame aui stuff functional.
Also added a DSPCORE_STOP state.  The DSP-LLE debugger window segmentation faults if it is openned when a game is not running.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5931 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-22 02:05:28 +00:00
Jordan Woyak fb36de2338 WIP Gecko(ocarina) code support: There are a bunch code types that need coding/fixing/cleanup, but many codes should be functional. The game properties and "Cheats Manager"(formally Action Replay Manager) dialogs now have a "Gecko Codes" tab to view/enable/disable codes. Currently, you must click "Edit Config" and manually add your codes to the [Gecko] inifile section of your gameinis for them to be displayed.(same format as the AR codes) I'm going to add Add/Edit dialogs similar to the AR codes and support codes with modifiers. I added the new files to scons as best as I could without testing :p.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5930 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-22 01:48:48 +00:00
Soren Jorvang 4ffea2c8b9 Less confused about absolute/relative/symbolic pathnames now.
Fixes Linux global build.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5924 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-20 04:50:43 +00:00
Glenn Rice 8c7bdebf1e Fix the global build on linux.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5923 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-20 04:19:25 +00:00
Soren Jorvang 244448014a Prevent double inclusion of CommonPaths.h as pointed out by Glenn.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5922 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-20 03:23:25 +00:00
Soren Jorvang 6813a75ab2 Some pathnames are used both by SCons and cpp which can be a bit tricky.
Should revisit and make the distinction more explicit.

Put the Data and Sys directories under Resources in the OS X app bundle.

Construct config.h (now lower-case to avoid confusion with other Config.h
instances in the tree) in the root. One tiny step towards a read-only
and cross-buildable source tree.

Some minor bits of non-Linux Unix portability.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5921 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-20 02:45:31 +00:00
Soren Jorvang a2b1f829cb Get rid of a number of unnecessary env.Clones.
Use SCons' convenient # shorthand for the root of our tree.
 
Also various minor cleanup of SConscripts.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5915 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-19 03:42:37 +00:00