Commit Graph

132 Commits

Author SHA1 Message Date
Soren Jorvang 7834880925 Make sure the game list gets created with automatic starts.
When rendering to the main window, the wxGLCanvas should really
be owned by the DolphinWX code for it to be safely freed.
Hack around the problem by just hiding the canvas for now.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6890 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-21 02:56:54 +00:00
Soren Jorvang bf2bb00f63 Disable the default PIC generation on OS X. This might make for a
minor performance improvement and also possibly make that platform a
little less prone to problems with ABI assumptions in the JIT code,
although I haven't measured the first or seen signs of the latter.

Only the GL context needs to be specifically freed when shutting
down OpenGL. The GL canvas is implicitly freed by wxWindow.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6885 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-20 05:06:29 +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 d7b6766fe2 Fix cocoaGL window resizing.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6807 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-10 23:48:59 +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 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
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
donkopunchstania 8a711eadac Video software:
Changed the EFB color order from RGBA to ABGR to emulate it correctly on little-endian platforms. Added some enumerations to clear up what components are which colors. Fixed the TEV alpha input LUT which would have caused problems if anything was doing alpha comparisons.
Changed box filter for EFB copies from 3x3 to 2x2 because that is probably correct. Also makes the math nicer.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6696 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-31 06:45:18 +00:00
Glenn Rice 2caa685c7f Fix a few more linkage issues in the cmake build.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6537 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-06 13:06:54 +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 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 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
donkopunchstania 8f035ae40a Create a config dialog. Add dumping TEV texture fetches. Better TEV stage dumping. Byteswap indexed XF loading. Remove scaling texture coordinates in the HW rasterizer because that has already been done by the time they reach the rasterizer. Increase storage for clipper.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6506 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-02 05:38:48 +00:00
donkopunchstania 1f660de7e5 Avoid repeatedly asserting in SWG plugin when matrix indices don't match. Small change to the transform unit to avoid some unnecessary work. Check if Q is zero before dividing UV coordinates by it. Fixes issue 3454.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6504 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-01 04:26:21 +00:00
Glenn Rice fae12f43c2 Inhibit the screensaver while the emulator is running on linux. Fixes issue 3279. Uses the xdg-screensaver method suggested in that issue.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6477 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-25 02:26:46 +00:00
gnick79 4267adbd5e Related FOG changes:
* revert back to proper upscale mantissa of parameters A and C
* properly downscale magnitude to 0.24 bits instead than ≡0.23
* Z Eyespace conversion for projection by original patent concept

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6463 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-23 13:57:01 +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
Christian Morales Vega 7632a5abd4 Fix for issue 3507. Compile with old GLEW versions, support user-specified CFLAGS and link plugins to all the used libs.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6441 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-18 23:27:27 +00:00
Glenn Rice 054358380e Oops. Forgot the primary file.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6432 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-18 02:14:12 +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
Jordan Woyak aae0fa7909 InputCommon(GCPad/WiimoteNew): Fixed issue when inifile didn't exist, defaults were loaded, and input didn't work. Fixed prob in DirectInput(hopefully doesn't break any other gamepads): buffered data wasn't ever being used. WiimoteNew: Hopefully made emulated swinging better(please comment). Added (completely untested) incomplete emulated turntable(DJ Hero) extension support :p. Deleted some files that I meant to delete in my last commit.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6250 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-03 04:29:34 +00:00
Jordan Woyak 841583b8f3 Merged identical VertexManager code from DX9/DX11/OGL plugins into VideoCommon. Still need to merge VertexManager::Flush (will be easier after TextureCache is merged). Purposely using a class/virtualfuncs rather than a namespace so multiple VertexManager can be in one plugin (VideoMergeNew? :p).
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6249 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-03 00:41:06 +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
Shawn Hoffman ecb4d6d2f8 addendum to last commit: forgot files outside the /Externals/GLew directory...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6197 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-09 17:52:52 +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
skidau c76ba17ff4 Stub out glGetError() calls from the release build of the OpenGL plug-in (found by ector, code by LordMark). Gives a speed-up in the OpenGL plug-in.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6039 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-03 10:48:49 +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
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
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 669de4890a abs() works on ints, not floats. Use fabsf() to avoid the double conversions.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5956 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-23 23:48:04 +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
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 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
Marko Pusljar b08230512b dsphle - small mail protocol fix for zelda light type
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5917 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-19 12:34:11 +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
Glenn Rice b175397cb7 Some work on cleaning up the FrameAui code. Primarily this fixes the debugger windows for the audio and video plugins. They are now all subclasses of a wxPanel, instead of a mix of wxFrames and wxDialogs. This makes them work correctly in linux, windows (they really didn't before), and most likely on MacOSX too!
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5913 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-19 02:09:34 +00:00
Marko Pusljar 66d2bc477a Plugin_VideoSoftware fix
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5910 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-18 16:53:49 +00:00
Soren Jorvang 4b1a3152b6 Plugin_VideoOGL has been using an old duplicate of VertexLoaderManager.cpp.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5895 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-17 23:36:03 +00:00
Glenn Rice 25efe443ea Fix an issue that made it so that the emulator could not be resized in the nowx build on linux. Also some code cleanup in the OpenGL and Software plugins.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5889 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-16 21:56:40 +00:00
Soren Jorvang 697480f5cc Remove long-rotted vestiges of SDL video output.
Use SDL for input devices only on Windows and Linux. 
(Still globally enabled for the legacy Wiimote plugin.)


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5886 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-16 19:17:35 +00:00
Glenn Rice 02ce753b76 This is basicall linux code cleanup. We don not need to pass the X display handle from the video plugin anymore. The wiimote plugins now open their own display handles, and the GUI uses the display handle of the main window frame. Only the window handle from the video plugin is needed. The pWindowHandle variable now passes this instead of the display handle.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5884 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-16 14:14:57 +00:00
luisr142004 c2ee89b170 include the MP compiler option, which will allow for faster compiling + some minorly stuff :p
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5882 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-16 09:22:53 +00:00
Soren Jorvang 2bcdf4f5a4 Remove NSAutoreleasePools that are no longer necessary now that pools
are properly declared at thread entry/exit. I am leaving the ones in
Wiiuse while there's still a small hope that it may be used outside of
Dolphin, though.

Move the fixed MAP_32BIT definition for OS X to Common.h.

UDPNunchuk.cpp was deleted, so update the scons build.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5864 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-09 22:31:04 +00:00
Soren Jorvang 0284a7a1df Some more attempts at cleaning up the scons build and more clearly
identifying which options and parameters go with which platforms etc.

OS X, like Windows, now no longer uses Config.h. Configure() is still
used for the wx-config parameters, but that is a temporary measure.

Globals.cpp has never been used.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5860 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-09 01:26:53 +00:00
Soren Jorvang 39ae36398f Copy the version string obtained from svnversion at runtime instead of
using it as a constant in several places. Saves a few bytes and the time
it takes to recompile a bunch of files whenever svnversion twitches.

Using the SVN version string as an integer is not portable as the Unix
svnversion always includes e.g. the "M" suffix for a modified tree.

Windows people, please check my change to Plugin_VideoDX9/Src/main.cpp
as I don't really understand how _T() and the %hs format string work.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5852 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-08 15:25:01 +00:00
Glenn Rice 0e2b4d8306 Implement proper thread naming on linux. This fixes a segmentation fault with thte wiimote new configuration dialog when a thread was named without first calling ThreadInit.
Also take care of some more eols.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5843 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-06 16:16:07 +00:00