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
with OpenCL will also run on 10.5 without OpenCL.
Build with OpenCL by default now, but keep the opencl build option around
until Linux also links OpenCL weakly, at which point it can go away.
Start to merge in the actions required to make the OS X application bundle
redistributable into the main build and let bundle=true be concerned only
with the optional step of creating a dmg.
Some people are building binary snapshots for OS X without applying the
install_name_tool fixups and besides, osx_make_dmg.sh doesn't fully handle
the internal dependencies between the wx libraries, so we need to be rid
of any external dependencies by the time "scons bundle=false ." finishes.
Ideally we should just use static builds of the wx libraries, but the flat
namespace used by Objective-C for anything other than normally linked
dylibs (sadly not dlopen'ed dylibs) makes that difficult because both the
main binary and the plugins have wx linked in without any symbol ordering.
TBD: Either do automatic install_name_tool fixups for both the main binary
and the wx dylibs or find a workaround for the flat namespace problem.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5797 8ced0084-cf51-0410-be5f-012b33b47a6e
for portability.
(It is a bit unfortunate that some of the plugins have a Config.h of
their own, which can confuse this matter.)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5795 8ced0084-cf51-0410-be5f-012b33b47a6e
few different variations that can be true depending on circumstances.
This would likely cover the _WIN32 case as well, but since I don't
pretend to fully understand just what is going on with wxWidgets
here, I can't really call this any less of a hack..
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5794 8ced0084-cf51-0410-be5f-012b33b47a6e
From now on if you create a GUI option specific to a particular build, do not gray it out. Instead do as I have done here and make it not present on those builds. It may add a few precompiler conditionals that developers have to look at, but that is considerably better than a completely useless option that the end user has to look at.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5774 8ced0084-cf51-0410-be5f-012b33b47a6e
minor code changes and adding comments.
And issue fix 2792 with credits to Karloathian for finding and fixing it.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5750 8ced0084-cf51-0410-be5f-012b33b47a6e
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
the properties window so that a large ISO directory doesn't cause
the window to take up the full height of the display.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5700 8ced0084-cf51-0410-be5f-012b33b47a6e
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
In the future if we merge wiimote too, this will bring the advantage that the two will be able to cooperate, to no longer fight over control of input devices which can sometimes cause problems.
Thanks shuffle2 for the patience.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5670 8ced0084-cf51-0410-be5f-012b33b47a6e
Ideally we should be more character set aware, but at the moment we
use anonymous 7/8-bit strings in too many places.
Fix use of AddGrowable{Col,Row}. Any (non-zero) rows/columns must
have been created first by adding an item to it.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5648 8ced0084-cf51-0410-be5f-012b33b47a6e
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
Patch from user gamepromcompany on the MacOSX_Build wiki page.
Add support for the Mac command key as a hotkey modifier in
WXKeyToString but present it as Control. WXKeyToString is used for
both hotkeys and menu accelerators, the latter only supporting
Shift/Alt/Control with wxWidgets.
wxSpinCtrl on wx 2.9 has a very small default size, so give the
window size ones a reasonable size.
Use wxFULLSCREEN_ALL when switching to fullscreen, which gets rid
of window decorations like the title bar. Note that to actually
be rid of it with wx 2.9 on OS X, you'll need this patch:
http://trac.wxwidgets.org/ticket/11701
Also remove a couple of files I had accidentally duplicated.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5642 8ced0084-cf51-0410-be5f-012b33b47a6e
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
hotkey configuration working with wx 2.9, but it turned out to be
too tempting to use it to hack up OS X keyboard support using wx
key events in the "old" input plugins.
It was with some reluctance that I used PAD_Input (and copied it
for Wiimote as well) as that is clearly a deprecated interface,
but this way the hack is contained within the old plugins for when
the switchover to ControllerInterface happens.
The idea is to provide stable keyboard support on OS X for both
GCPad and Wiimote while we debug HID keyboard and real 'mote code.
It works pretty well, although the wx approach does impose a few
limitations like no arrow keys and left/right side modifier keys
are considered equivalent.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5622 8ced0084-cf51-0410-be5f-012b33b47a6e
Have lint mean -Werror at least until the issue with
-Warray-bounds and -Wunused-result can be resolved.
Avoid producing empty object files:
CoreRecording.cpp is not configured through the build system,
so just give it a dummy symbol when it's not compiled in.
ChunkFile.cpp and DSPBreakpoints.cpp are no longer used.
ExtendedTrace.cpp is Windows-only.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5592 8ced0084-cf51-0410-be5f-012b33b47a6e
Not only does it change tons of files to switch to a new and non-working (it doesn't parse my ini files, at least) ini parser, it also reshuffles a lot of code and removes a plugin. The latter part is fine, but doing these two major switches in one revision, one of which is broken, is completely unacceptable. I said to merge tiny changes, not massive reworkings.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5589 8ced0084-cf51-0410-be5f-012b33b47a6e
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
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
game list, rely on the main event handler already running, which isn't
the case until after OnInit(). This is a problem when an ISO directory
is already set at startup.
To deal with such actions that can only properly be done after the wx
environment is fully functional, schedule AfterInit() where the initial
game list scan is done.
The underlying icon object for wxIcon on OS X didn't work with our
(non-square?) 96x32 game list graphics, but we weren't using any wxIcon
properties such as transparency anyhow, so just skip the wxBitmap to
wxIcon back to wxBitmap conversions.
Use wxID_ABOUT and wxID_PREFERENCES so that those menu items are
automagically teleported to their canonincal locations on each platform.
USE_XPM_BITMAPS has been implicit on all platforms for some time now.
AddGrowableCol() causes problems in a couple of inessential places for
some unknown reason, even though the same pattern works fine elsewhere.
These changes make us play a lot nicer with wxWidgets 2.9.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5564 8ced0084-cf51-0410-be5f-012b33b47a6e
use appropriate extensions extracting compressed wii discs
check for tmd+tik for each title and list titles correctly for sysmenu versions <=0xE0
this will allow viewing of installed channels but they will not launch until ES_Launch is emulated
so far I have not been able to determine why later sysmenu versions do not display channels correctly
switching between system menu versions is as simple as rightclicking a system menu wad in the gamelist and installing to wiimenu than restarting
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5524 8ced0084-cf51-0410-be5f-012b33b47a6e
disable install wii menu item after installation (restart required still for NANDContentLoader to find it
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5456 8ced0084-cf51-0410-be5f-012b33b47a6e
The error was caused by trying to set the text for a status bar field whose index was equal to the actual number of fields.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5449 8ced0084-cf51-0410-be5f-012b33b47a6e
allows (among other things) installing the wiimenu from a wad extracted from the update partition of a game
currently you can choose Tools > Install Wii Menu or right click wad from the gamelist and install
restart required to have the Tools > Load Wii Menu work
I thought I had already commit this, I guess I forgot and it's just been sitting on my hdd :p
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5448 8ced0084-cf51-0410-be5f-012b33b47a6e
For some reason something in (or included in) Frame.h messes up the SFML inclusion in NetPlay.cpp.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5426 8ced0084-cf51-0410-be5f-012b33b47a6e
Also added a window size setting for windowed mode.
Also pulled some X11 specific code out into a separate file.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5395 8ced0084-cf51-0410-be5f-012b33b47a6e
add an option to limit fps instead of vps for games with bad synchronization
some minor fixes in d3d gui
enjoy :)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5394 8ced0084-cf51-0410-be5f-012b33b47a6e
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
made Lua run on the CPU thread to fix unreliable script execution issues
several fixes so the Lua savestate functions can actually work
added Lua function savestate.verify to help with catching desyncs
implemented FailVerifyAtFrameBoundary in Lua interface
added a Clear button to the LuaWindow
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5382 8ced0084-cf51-0410-be5f-012b33b47a6e
Also fix an issue with the DX9 plugin not being the correct size when starting the game in fullscreen at a higher resolution than the desktop resolution.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5375 8ced0084-cf51-0410-be5f-012b33b47a6e
Also improve the visual appearance in linux. I think I have done so without hurting the appearance in windows.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5348 8ced0084-cf51-0410-be5f-012b33b47a6e
Disabled game-specific Wii/Progressive Scan checkbox, since its never used by Dolphin; it would cause side-effects to global configuration if we did write to SysConf in that place.
Fixes Issue 2518
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5283 8ced0084-cf51-0410-be5f-012b33b47a6e
Removed the obsolete projection hacks:
* Final Fantasy CC Echo of Time
* Harvest Moon Magical Melody
* Baten Kaitos
* Baten Kaitos Origin
* Skies of Arcadia
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5271 8ced0084-cf51-0410-be5f-012b33b47a6e
This still requires more work, like making the option only per Wiimote then rather the first one counting for them all.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5241 8ced0084-cf51-0410-be5f-012b33b47a6e
Changed the default font for the log window to the local font (why was a Japanese font the default?). Also fixed an issue that prevented the log windows settings from being saved properly. Lots more needs to be done with the AUI manager. That stuff doesn't work.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5213 8ced0084-cf51-0410-be5f-012b33b47a6e
Fixed a segfault in linux when a cd/dvd drive is empty or invalid and "Boot from DVD" or "Show Drives" are selected.
On all platforms if a game fails to load show the game list again.
The other things here are essentially code cleanup and won't be noticeable by most users.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5204 8ced0084-cf51-0410-be5f-012b33b47a6e
If you are having trouble with segmentation faults in linux try "shared_soil=true". That seems to fix the problem. How do we fix this for the static build?
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5182 8ced0084-cf51-0410-be5f-012b33b47a6e
SysConf: removed the Save call in the dtor, this crashes on linux trying to read m_Filename (which might be already freed).
Common: set eol-style native, again.
Fixes Issue 2332
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5082 8ced0084-cf51-0410-be5f-012b33b47a6e