Commit Graph

367 Commits

Author SHA1 Message Date
Jordan Woyak cbc520a70a Committing Visual Studio 2010 solution/project files. (not switching from 2008 just yet, just making 2010 an option) Still need to add a "DebugFast" config and change optimization settings.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6927 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-27 00:14:29 +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
Soren Jorvang e53c8188c0 Update Cg.framework to version 3.0.0015.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6900 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-24 00:26:39 +00:00
Soren Jorvang 392a589092 Drop support for building on OS X 10.5. It is too much hassle to
work around the limitations of the no longer maintained Xcode 3.1.4
for Leopard. Running a 10.6-built app on 10.5 works fine through
through the use of the 10.5 SDK.

std::locale() seems to be the generally safer way to specify the
default locale and works on Linux and OS X at least. Thanks to
dasmetzelmaennchen for the pointer.

Remove some obsolete SCons related svn:ignores.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6893 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-22 02:18:25 +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
Glenn Rice 83eed62449 Build mo translation files on all platforms. Had to import msgfmt executable in the Externals to do this on windows.
Save wxLanguage enumeration value in ini file so that users are not surprised when a language is added and dolphin-emu is suddenly translated in a different language.
Update Spanish, Korean, and Simplified Chinese translations.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6804 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-10 19:26:36 +00:00
Soren Jorvang 70f4dd9df3 Lipo the ppc fat out of Cg to save some space.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6799 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-09 21:05:34 +00:00
NeoBrainX 81638396c0 Some more work on CMake on Windows:
- add support for precompiled headers with MSVC
- compile with _FILE_OFFSET_BITS=64 and _LARGEFILE_SOURCE only for our sources, some dependencies seem to have problems with it enabled...
- disable -Wall for MSVC too prevent warning flood
- rename aes_cbc.c and aes_core.c to cpp files since it makes stuff a lot easier and there's really no reason not to do it since they had been compiled as C++ before anyway

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6797 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-09 16:36:19 +00:00
Soren Jorvang 95b6d3f445 Kill HAVE_OPENCL.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6756 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-06 01:11:32 +00:00
Soren Jorvang 613b0f4c51 Upgrade GLEW to version 1.5.7:
New extension:
	GL_NVX_gpu_memory_info
Bug fixes:
	Improved mingw32 build support
	Improved cygwin build support
	glGetPointervEXT fix
	Add GLEW_VERSION_1_2_1

Fixes issue 3798.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6689 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-30 02:43:50 +00:00
Soren Jorvang 0ecf88c300 LUA_USE_LINUX is suitable for everything but Win32 really.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6529 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-05 16:03:48 +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
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 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
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
snzgoo 8eb1fe8831 proper .libs fixing building problems under vs2008, x32 and x64. Please dont use vs2010 for buildings those static libs next time to keep compatibility under vs2008 atm.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6393 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-13 13:17:48 +00:00
Shawn Hoffman 02d1321bcb windows: update wiiuse libs, since logging functions were changed in common...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6392 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-13 00:24:34 +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
Shawn Hoffman ae8c943669 build wiiuse as a static lib on windows.
make wiiuse log via Common lib on windows.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6386 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-12 17:53:54 +00:00
Glenn Rice 7b34def0fc A couple of changes to the cmake build system.
First:  Added a DESTDIR option for package building.
Second:  Change the OpenCL setup.  On both linux and windows use CLRun.  I completely removed the option here.  If CLRun works on MacOSX this should be done there as well, and this change implemented in the scons build also.  Then we could remove the HAVE_OPENCL and the new USE_CLRUN definitions.  Then we will finally have the dynamic detection of opencl set up cross platform.
On a side note, it doesn't seem that the program loaded from TextureDecoder.cl compiles or runs.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6366 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-10 01:59:53 +00:00
Soren Jorvang 7dd7bd2b03 Write bluetooth packets asynchronously to prevent blocking on
commands that take some time to complete in the wiimote.

From <matthew.powersfreeling>. Fixes issue 3437.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6365 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-09 20:46:11 +00:00
NeoBrainX 4782a8fc5a More CMake work:
- various fixes for using CMake on Windows
- support building external SDL, zlib, CLRun, wxWidgets
- support using precompiled GLew and WiiUse libs on Windows

For what it's worth, I'm not quite sure if I got all the wx files right...
Building with MSVC2008 still doesn't work yet, but is a lot closer now.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6361 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-08 14:04:56 +00:00
Glenn Rice 57f01776ef Fix cmake so it is possible to build without bluetooth support, and the typo that tells you bluetooth is enabled when it is not.
Fixes issue 3464.
Also make the check for portaudio really check the version of portaudio.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6359 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-08 02:51:31 +00:00
Glenn Rice e96943c121 Added an option in the cmake build to disable wxWidgets. To use add "-DDISABLE_WX=1" to the cmake configuration command. Also fixed the nowx build.
Set scons build to autodetect OpenCL by checking for both the library and header instead of having an option.  Unfortunately there probably needs to be a path variable that can be set to the location to look for the headers.  For example on Ubuntu with nvidia, the headers are located in /usr/include/nvidia-current instead of /usr/include, and hence not found by scons.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6355 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-07 17:45:35 +00:00
Glenn Rice 7864f3c087 Missed a needed -fPIC.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6350 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-05 23:38:37 +00:00
Glenn Rice 3aff478b3a Add the c++ definition HAVE_CONFIG_H in the scons build and check it before including config.h so the cmake build system doesn't need to worry about conflicts from that file if it exists.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6342 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-04 20:33:45 +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
LPFaint99 c015811d4d remove standalone MemcardManager, now has its own repo
(http://code.google.com/p/gcn-memcard-manager/)
add some svn:ignores (windows build dirs)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6320 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-30 07:30:32 +00:00
Soren Jorvang 78ab1c0f3f More robust way of building on 10.6 for a 10.5+ target.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6314 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-24 20:07:12 +00:00
Soren Jorvang 7c0cae9e8b Get the htonl/htons prototypes on all Unix-likes.
Clean up a few remnants of the --wiimote_plugin command-line option.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6277 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-13 13:18:17 +00:00
Soren Jorvang 77a3a5078e Fix building on Linux without bluetooth headers.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6276 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-13 09:57:13 +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
Shawn Hoffman 65975e212e update GLEW on windows to 1.5.6 (and any platform that builds from source)
remove glx stuff that we weren't using

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6196 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-09 17:48:52 +00:00
Shawn Hoffman 00327b0494 Update Cg for windows to 3.0.0007
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6195 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-09 17:11:51 +00:00
Soren Jorvang a1de442ed8 Update the Cg framework for OS X to version 3.0.17.
Tested with ATI 2600 and NVidia 9400 graphics.

I have not updated the header files. There doesn't appear to be any
obvious interface changes for OS X, but the same might not be true
for Windows.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6194 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-09 13:25:43 +00:00
Jordan Woyak 84152919dc Wiiuse: Hopefully fix the Windows real wiimote connecting issues caused by r5940. An "index = 0;" line was accidentally removed.(uninitialized value being used) Hopefully this fixes issue 3067, issue 3058, issue 3057, issue 3054, issue 3012, and issue 2975. Some other minor cleanup to Wiiuse.(recreated the vcprog because it had hard coded include paths and it sucked)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6107 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-18 00:22:08 +00:00
Soren Jorvang a26f744c98 UpdateSystemActivity() is defined in OSServices/Power.h which is
erroneously #ifndef _LP64 in the 10.5 SDK. Since OSServices is a
sub-framework of the CoreServices, Power.h cannot be included
directly without specifying the long and messy path to it.
Just declare it extern here as well instead.

Don't disable dynamic updating of the bluetooth device name as it
would then be printed as (null) on the first pairing of a wiimote.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6091 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-11 20:53:19 +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 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 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
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
Glenn Rice 87043879f8 Fix a hang in linux with the wiimote new plugin caused by a critical section not being exited. Also removed the original wiiuse_find function and replaced it with my wiiuse_find_more function with a little tweak to speed up wiimote discovery.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6007 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-30 18:55:36 +00:00
Soren Jorvang f081710800 Oops, removed one <sys/stat.h> too many.
No need to autoconf for libusbhid - all USB-capable BSD's have it.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5996 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-29 17:52:43 +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
snzgoo 840334ad97 Fixes issue 2958 / 2960
Removed wiiuse linkage to common.lib and removed inclusion of log.h(r5944) under windows, since it's obviously causing problems.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5963 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-24 14:20:50 +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 c72b5c8bdc Remove references to dead "io.h".
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5953 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-23 18:29:10 +00:00
snzgoo 919ccb469a Merging Externals/WiiUse/Src and Externals/WiiUseSrc as requested.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5952 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-23 18:19:38 +00:00
snzgoo 27665e5bbd Buildfix for wiiuse/windows (broken since r5944) and more wiiuse clean up, plus merging external and internal wiiuse.h as requested.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5951 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-23 15:03:49 +00:00
Soren Jorvang 6c7e666a75 Report on the bluetooth queue depth watermark to help diagnose cases
where Dolphin blocks long enough to lose packets.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5944 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-22 06:05:08 +00:00
Glenn Rice 6795551a8c Linux build fix ... again.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5941 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-22 04:38:45 +00:00
snzgoo 987832cbb0 External/wiiuse clean up, part 2.
- More removal of unnecessary code
- Windows: Modification of Wiiuse_Find under windows,
  instead of always deleting and recreating the whole wiimote_t struct, we do maintain the old one,
  adding/removing new wiimotes to/from it
- some wiimote bugfixes, see below for details

Windows related stuff:
Fixed most of the disconnection issues (single and mulitple real wiimotes, both wiimote plugins) (I haven't had a disconnect msg in hours anymore(ms stack)).
Rumble bug should be fixed now(both plugins,pls verify).
Fixed some pair up issues( sometimes you had to press the pair up button up to 3 times, till it paired up your wiimote).
More dongles might be now supported via ms stack, pls try and report back!
Fixed a problem where multiple wiimotes would swap slots on pair-up/addition of a real wiimote (2-4 real wiimotes) (both plugins, but not integrated into new plugin).
Improved ingame auto-pairup for real wiimotes(thx to the new wiiuse_find routine).
Fixed a bug on setting wiimote timeouts, which means changing the timeout was just a dummy earlier.
Most of the stuff concerns stuff in the old wiimote plugin, dont worry, in the end it's important for both plugins. It will get ported to the new plugin sooner or later.:')
Some minor stuff.
This might break osx/linux build and maybe the new plugin realwiimote-wise only. Thx to glennrics to pointing me to some breakings on linux, I didn't fix them all. 
PS I hope i haven't forgotten anything, enjoy.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5940 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-22 04:31:36 +00:00
Soren Jorvang 75dbad3610 Build but don't install the dsptool/tester/MemcardManager tools
which aren't really useful to typical users.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5935 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-22 03:38:32 +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 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
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
NeoBrainX a2e39a84f3 Delete various unused files.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5909 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-18 16:15:43 +00:00
NeoBrainX 961bac32b3 Use the correct calling convention for OpenCL function pointers.
Fixes issue 2927, thanks to dimitri_le_bon_pilote for the patch ;)


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5905 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-18 14:18:37 +00:00
NeoBrainX da4c3a5f29 Committing some cleanups by avindra:
- fix numerous warnings
- make some variables unsigned
- remove redundant code and header inclusions
- make code more compact in lots of cases

Committing some additional changes by myself:
- additional header cleanups
- cleanup DX11 initialization/shutdown process (hinted at by avindra)
- Remove the cgD3D9 stuff from Externals since it's no longer needed

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5903 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-18 10:11:34 +00:00
Soren Jorvang 3e383aa8eb Maintaining Leopard binary compatibility turns out be a a bit cumbersome.
For a typical OS X app, one only needs to specify the SDK version and the
target OS version range.

Because we use OpenCL which is new in 10.6, however, we must be somewhat
more verbose in order to make use of the forward compatibility facilities.

Unfortunately, the critical bit that is required to have binaries built
on 10.6 work on 10.5, namely disabling the new compact __LINKEDIT format,
causes stack alignment crashes at emulation time on 10.6, so for now
Leopard users still have to build Dolphin themselves.

Hopefully, this stack alignment problem will turn out to be coincident
with lingering alignment issues.

Include the OS X version of the Cg framework in Externals as with the
Windows one. The header files appear to be the same in the Windows and the
OS X builds of the February 2.2 Cg toolkit, although they are differently
munged by what appears to be some automatic process, so no new duplicates.

Any upgrades to the Cg libraries will of course need to be done in sync.

I do hope that Sonicadvance1's GLSL work will enable us to get rid of Cg.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5893 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-17 19:43:26 +00:00
Soren Jorvang aa998896ac Allow C code to use the Dolphin log manager so that Wiiuse text output
can go to the log window like with other subsystems.

Remove a Wiiuse dependency on libm from when it was a shared library.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5885 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-16 19:08:26 +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 addb89fecc Allow full-length Unix pathnames.
Move bits of HAVE_OPENCL/HAVE_WX for OS X from SConstruct to header files.

Use /usr/lib/libz on OS X now that we no longer have -L/opt/local/lib in
the library path. It is still possible that we could pick up a libz in
/usr/local/lib that would make the application non-redistributable, but
the danger is much less than previously.

Also bits of minor portability cleanup.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5868 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-10 21:17:08 +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
Glenn Rice c37bca75b6 Make the refresh button on the Wiimote New plugin add new wiimotes in linux, instead of disconnecting and reconnecting those that were already connected. This makes it possible to connect new wiimotes during a game by openning the wiimote configuration dialog and refreshing. You still need to tell dolphin that a new wiimote is connected using Ctrl+F5-F8 or the corresponding menu entries.
Also fixed a segmentation fault caused by the UDP Wiimote stuff when a thread was not properly ended.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5847 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-07 02:19:16 +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
Glenn Rice 6cacc52ebf Fix a bug in wiiuse that prevented a wiimote from being disconnected properly in linux. Also fixed a bug in wiiuse_set_leds on all platforms.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5819 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-02 15:48:42 +00:00
Shawn Hoffman 46b70bbaae eolz
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5814 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-29 22:44:09 +00:00
Orphis 685bae34e5 Dynamically load OpenCL on Windows with CLRun. There shouldn't be the need to make a separate build now or download a big SDK to link Dolphin.
If compilation fails, rebuild the whole solution as Visual Studio struggles with the not so complex project dependencies.
ATI users still need to install the Stream SDK as it's the only way to have an OpenCL driver.
NVidia users just have to install a recent driver (version 197 is tested and working).

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5808 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-29 02:23:09 +00:00
Soren Jorvang d18085c3ad Don't bother using autoconfiguration to find the OpenCL and Cg
frameworks on OS X.

Try to be a little clearer about which configuration options apply    
to which platform(s). Should pave the way slightly for win32 scons. 
 
We have accidentally been using LUA_USE_LINUX on OS X all along.
Turns out that LUA_USE_MACOSX is for an ancient version of OS X and
LUA_USE_LINUX is a reasonable set of defaults for modern Unices, so
just keep using that.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5804 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-26 19:17:43 +00:00
Soren Jorvang ebb49c28f7 Fix scons build.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5789 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-26 03:02:57 +00:00
snzgoo f6d844dac1 MAJOR and long ago overdue wiiuse and real wiimote sourcecode cleanup. Removed "recording" in old wiimote plugin and other not necessary functions(EEPROM reading, we 'll just do a reconnect instead to use default accel calibration data etc). Recording is not needed anymore(playback of recorded moves should be still working). Everything the recording feature offered, the new wiimote plugin does as well and even more. The cleanup will ease the port of the real wiimote feature into new wiimote plugin, which is still only offering emulated wiimote support. Billiard said he's now on it.:)
Wiimotes are now slighty more responsive and multiple wiimotes should harmonize now slighty better. This clean up was requested/inevitable and should have be done way more earlier. This "might" break osx/linux builds, so please test. If your aware of any "real wiimote" issues please post it in the comments as well(dont forget to state your OS).

Known wiimote issues:
1.) Possible wiimote disconnect on pressing the home button
2.) 1-2 Possible wiimote disconnects directly after starting a game
3.) Rumble causes lag. I don't think this is a wiimote plugin issue itself, I'm not sure tho. It would be interesting to know whether the lag still happens on emulated wiimotes as well, when the game tries to rumble.
4.) Connecting(pairing up and refreshing) a 2nd/3rd/4th real wiimote while having a game running/paused, might swap player slots and cause disconnects at that moment.
If u have more issues, feel free to post them, to have them all here collected once more to get a brief overview.
Apart from that, increase the wiimote read timeout @settings(20-200). If your  expecting frequent disconnects, restart dolphin, and don't open the wiimote gui before playing instead directly start games.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5788 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-26 02:08:30 +00:00
Soren Jorvang 05915922c5 Hopefully fix Windows build.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5726 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-16 14:55:21 +00:00
Soren Jorvang ce3eb2a13b Automatically detect and use shared library packages for
LZO/SFML/SOIL as already done for GLEW/SDL/zlib.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5723 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-16 12:42:49 +00:00
Soren Jorvang 980a2680be Trim down the SDL and GLEW libraries to just those files we use.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5720 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-16 09:11:29 +00:00
Soren Jorvang b0dff28539 Attempt to resolve the conflict between SDL/include and SDL/Include.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5717 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-16 01:14:18 +00:00
Soren Jorvang 494ba1eba2 Lint.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5716 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-16 00:58:34 +00:00
Soren Jorvang 391312641c Build GLEW, SDL and zlib as static libraries from Externals as with
LZO/SFML/SOIL and subject to the same shared_foo exception options.

This makes building a self-contained distribution package much easier.

TBD: Cg and wxWidgets 2.9.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5712 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-16 00:07:52 +00:00
Soren Jorvang 2db54798d7 Import SDL 1.2.14 and GLEW 1.5.4.
I am not replacing the following header files used by the Windows build,
as I don't have a Windows build setup to test. Please point the Windows
build at the header files inside these clean distribution packages and
garbage collect the duplicates: GLew/*.h and SDL/Include_1.2.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5711 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-15 23:31:13 +00:00
Soren Jorvang b560d2456e Integrate the standalone memcard manager into the main build.
Use 10.5 SDK header files in an attempt to keep us honest and
10.5 compatible. I'd do the same with system libraries, but
the linker gives strange errors when I try that. We also link
against third party libraries from Macports that haven't had
any magic 10.5 compat dust sprinkled over them, so maybe it
isn't very important anyway.

Move the OS X variable section in SConstruct upwards a bit to
have the settings apply to more of the config tests. SCons'
ParseConfig causes problems for the -arch tuples, though, so
the SDL check still isn't quite as comprehensive as it should
be.

Put the XCode project out of its misery.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5693 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-14 18:07:29 +00:00
Soren Jorvang d937b73d9c Cure some bit rot and allow building the standaline memcard manager on OS X.
The app appears broken though.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5650 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-11 15:18:36 +00:00
Soren Jorvang ce82c43bb7 Disable the Wiiuse banner and instead credit Michael Laforest,
the original author, in the About dialog. Ok'ed with him.

WX doesn't reflow text terribly well, so format it manually.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5646 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-10 14:39:08 +00:00
Soren Jorvang 404c625622 Simplify the SCons build:
On OS X, build all code as Objective-C(++).

Centralize framework handling.

Cleanup.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5645 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-10 14:18:21 +00:00
hrydgard 5845ff6728 build fixin', warning fixin'.
Thanks soren for the macosx fixes, this fixes the windows build and eliminates some warning from the same.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5643 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-09 21:19:23 +00:00
Soren Jorvang e648c6d68b Overhaul of OS X real Wiimote support.
Fixes a number of problems, including unreliable connection setup, 
frequent disconnections, busy-waiting and shutdown deadlocks.

Motion Plus and nunchuk hot swapping now work and Wiiuse does a small
amount of queueing to prevent occasional dropped packets. The OS X 
bluetooth stack has no internal input buffering and while a worker  
thread can easily keep up with data coming from the Wiimote, the rest
of Dolphin can easily get behind if it is blocked by disk I/O or 
similar. Mostly the Wiimote protocol recovers from dropped packets,   
but sometimes the Wiimote would get out of sync and send a disconnect.
I wonder if the other platforms might benefit from a bit of queueing
at this layer as well.
 
Still doesn't support multiple devices, as I kept changing my mind 
about how best to do it. I only have one Wiimote anyway..
 
One improvement to the Wiimote plugin that would be really nice would
be for the scan for new devices to operate continuously or periodically
like on a real Wii rather than just for 5 seconds at startup..   


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5640 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-09 19:36:08 +00:00
Shawn Hoffman 4a0c8fc0c9 Hg:
enable newline normalization
get revision number via `hg svn info` for svnrev.h
ignore incremental/generated binary files (windows/VS at least)
leave a comment if some files need native eol set in svnprops

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5637 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-09 01:37:08 +00:00
Soren Jorvang 30e437f9e3 Fix some cases of variables being used uninitialized. Also some unused
variables, writeable strings and dangerously shadowed variables.

index(), gamma(), exp() and y0() are POSIX functions and using those
names can cause namespace confusion.

A number of C files were missing the final newline required by ANSI C
and some versions of GCC are pedantic enough to complain about this.

These changes simply the scons build, allowing us to get rid of
filterWarnings which is simply more trouble than it's worth.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5574 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-02 20:35:12 +00:00
Soren Jorvang 03d1438be8 Cleanup after multi-level SVN rename.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5573 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-02 18:07:08 +00:00
Soren Jorvang 664cea45c7 Meta:
Using Unix tools to operate on a tree containing filename with spaces in them
is really annoying, so rename the handful of instances where there were spaces.

Host.cpp has never been used.

Games tend to lookup the following directories that we don't yet have anything
to put in, so prepopulate them in Data/User/Wii:

title/00010001
title/00010002
title/00010003
title/00010004
title/00010005
title/00010006
title/00010007
meta
shared2/title
 
Set eol-style native on a number of text files which didn't already have it.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5572 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-02 18:00:22 +00:00
Soren Jorvang 66c480c86b Don't print a bogus number of bluetooth devices found.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5559 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-31 16:54:21 +00:00
Soren Jorvang 774035d715 Always build a universal binary on OS X. This requires wxWidgets >= 2.9.
Enable -Werror (OS X only so far - please test and enable on other platforms).
Clean up library handling a bit.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5504 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-26 21:31:50 +00:00
Soren Jorvang 7215732bcd Don't assume writeable C strings.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5493 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-26 20:55:04 +00:00
NeoBrainX 655e3b3381 MSVC++ 2010 doesn't seem to like certain function declarations, fixed SOIL.h accordingly.
Thanks to xsacha for reporting.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5469 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-23 13:09:52 +00:00
snzgoo c59409b46a Introducing WM_DEVICECHANGE win32callback.
No need to press the "refresh wiimotes" button on pair up anymore, checking the extended pair up box(still experimental) allows u to pair and hook up the wiimote while being ingame. You still need to do the ALT+F5/F6/F7/F8 connect, but you wont need to press the pair up button + refresh button anymore, feel free to test it, its not perfect yes. Just press 1+2 on your Wiimote to pair it up ingame(you need to check the extended pair up box for that feature).
PS I hope I didnt break nonwin32 builds, I gave my best however.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5413 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-04-26 17:51:32 +00:00
snzgoo c344502524 wiiuse buildfix nonwin32, mea culpa.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5412 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-04-26 10:49:12 +00:00
snzgoo 06f0bc91ee Just a small WIIUSE[WIN32] update to avoid dependencies @wiimote_plugin in my next commit.
You can check whether WM_DEVICECHANGE got triggered by a Wiimote.(Pair-up arrival/removal)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5410 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-04-25 22:39:47 +00:00
Glenn Rice 9095b4d67f Link wiiuse statically in linux.
Fixes issue 2562


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5384 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-04-18 14:50:21 +00:00
nitsuja- b31042cb10 fixed a bug where events scheduled for the same time run in backwards order
simplified CoreTiming::AddEventToQueue
fixed emu.frameadvance and implemented emu.wait
fixed Lua script termination
brought over some luaconf customizations to fix issue 2245 in a better way and deal with certain other scripting problems

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5383 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-04-18 08:28:52 +00:00
Shawn Hoffman 50a4293d85 update zlib to 1.2.4
changelog is at http://www.zlib.net/ChangeLog.txt

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5318 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-04-10 17:10:32 +00:00