Commit Graph

3359 Commits

Author SHA1 Message Date
Soren Jorvang c9564405d9 Some wxWidgets features, like wxProgressDialog used when updating the
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
2010-06-01 21:03:02 +00:00
Soren Jorvang 4ffdba7b92 Only warn about unknown magic words if none of the known ones are found.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5563 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-01 20:47:07 +00:00
Soren Jorvang 9d7b569ccb Now that Core Audio works, reduce the number of build permutations a bit
by not linking in other Unix audio modules.
 
Use kAudioUnitSubType_DefaultOutput instead of kAudioUnitSubType_HALOutput
so that a runtime switch to another audio device is automatically handled.
 
Use ERROR_LOG for audio errors.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5562 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-01 20:45:30 +00:00
Soren Jorvang 95edef2e0d Avoid printing garbage numbers in the status line when the process
becomes blocked. This was most readily apparent when first starting
programs from a high-latency filesystem.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5558 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-31 16:23:13 +00:00
Soren Jorvang 220c3ae829 Identify OS X application bundle with SVN version number.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5557 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-31 16:18:40 +00:00
Soren Jorvang fdd532356a Have the AudioUnit callback drive the internal mixer directly instead
of going through an intermediate thread and buffer. This seems to be
how Core Audio is meant to be used, although I still haven't read the
manual.

Indeed, sound on OS X works perfectly now.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5555 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-31 05:05:53 +00:00
donkopunchstania 33566b5c07 Limit buffer size required to extract files. This helps avoid out of memory errors.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5553 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-30 17:57:56 +00:00
Soren Jorvang c2daee96cc Consider 'X' as region-free.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5552 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-30 17:31:52 +00:00
Soren Jorvang 997ab4ada1 Mark 'A' as being region-free, but still explicitly default it to
European settings. Also try to add sensible defaults for [LMNTQ]      
taken from http://wiibrew.org/wiki/Title_database#Region_Codes .


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5551 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-30 17:16:06 +00:00
Soren Jorvang 20eda8551a 'A' appears to be another country code for Europe.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5550 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-30 16:33:01 +00:00
Soren Jorvang c48aca7c37 De-inline StripTailDirSlashes() to work around a weird code generation bug.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5549 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-30 09:41:38 +00:00
Jordan Woyak 5070a59799 Made the Dolphin config dialog shorter with an added "Display" tab. Removed code that toggled fullscreen on double-click in gamecube games because GCPad New allows mouse input (maybe double-click fullscreen toggling should be an option though). Changed the label in the toolbar from "GC Pad" to "GCPad" (all other labels on the toolbar are single words and we call the plugin "GCPad" everywhere else). Made game properties dialog open centered on screen.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5548 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-30 08:22:04 +00:00
Soren Jorvang 9cd3c70b02 The rendering codepath doesn't currently quite recover from an OpenCL
initialization failure, so help it along a little by also considering
the CPU as an OpenCL device.

Use CL_DEVICE_TYPE_DEFAULT rather than CL_DEVICE_TYPE_ALL as that will
give preference to the spiffy GPU if one is present. Implementations
of OpenCL are likely to put a GPU as the first device in the list, but
there is no guarantee of this and this code currently only picks the
first device in the list.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5547 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-30 08:08:26 +00:00
Soren Jorvang 2245b1040f Another creeping wx dependency via NetPlay.
Is nowx worth maintaining?


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5546 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-30 07:09:09 +00:00
Soren Jorvang 7f50bb5579 Get the audio unit output buffer size and use that as the rendering
quantum, as the callback wants us to provide exactly the amount of
samples needed.

This is incomplete because core audio may ask for less than the full
buffer size (for me, typically 1484 or 1488 bytes of a 2048 byte
buffer). As a quick hack until I read the rather impenetrable core
audio documentation, assume that each callback request will want
about the same number of samples as the preceeding one.

This makes sound bearable.

Also various cleanup.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5543 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-30 04:21:01 +00:00
hrydgard a88e09edc2 DSPLLE: followup to last change: bugfix + remove extraneous exception checks
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5542 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-29 21:43:46 +00:00
hrydgard 1d1b08a091 Core audio system work (Watch for regressions please!):
* Restore Audio Throttle to function properly, broken by Ayuanx many hundreds of revisions back. 
* Simplify DSPLLE JIT dispatcher in preparation for an asm rewrite
* Remove hack that made DSPLLE JIT seem faster than it was by running fewer cycles, but resulting in bad sound. This shows off how mysteriously slow it is - I don't understand why it's not faster. Use the DSPLLE interpreter for now if you want to use DSPLLE.
* Made "DSPLLE on Thread" work properly with correct-ish timing - although the speed benefit is really small now.

If it seems like this change slows anything non-LLE down, try turning off Audio Throttle and use the frame limiter in options instead.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5541 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-29 21:34:34 +00:00
Soren Jorvang 6ea0d50872 Make this work with debug builds again.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5540 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-29 21:28:27 +00:00
donkopunchstania 55fd46de26 Add some safety to file names. This fixes a buffer overrun when extracting everything from an ISO.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5537 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-29 19:37:29 +00:00
hrydgard 659d5705c9 DSPLLE: Some cleanup. Possibly very small speed increase.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5535 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-29 18:22:50 +00:00
hrydgard 926f96daf0 Revert 5533, removing the misleading TODO and commenting it properly.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5534 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-29 15:35:31 +00:00
XTra.KrazzY bcfc688140 Get disk cache revision from SVN_REV.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5533 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-29 14:24:55 +00:00
Jordan Woyak 05ef8231b8 Changed both video plugins to save PNG screenshots. Made GCPad New default in trunk (it already is in stable). Fixed a hack in new wiimote plugin. Other minor changes.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5532 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-29 10:09:24 +00:00
Jordan Woyak ceabf90bda Improve iterator usage.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5528 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-28 23:14:16 +00:00
Soren Jorvang 0d75190af9 wxFileSelector with wxWidgets 2.9 on OS X allows only very simple glob
patterns like "*.foo".


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5527 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-28 17:23:51 +00:00
Soren Jorvang 270fe2a997 In r5448 the CSharedContent and cUIDsys constructors create the Wii/shared1
and Wii/sys directories if they do not already exist. This conflicts with
DolphinApp::OnInit (run after constructors) which populates the User tree
only if there isn't already something there.

Instead, set up the two directories in the Data tree.

With this change, sys/uid.sys still won't be created until the _second_ run
after a fresh install, so these file initializations should be moved out of
constructors so that they will be run after OnInit().


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5526 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-28 14:45:07 +00:00
nakeee 6687f3e791 Linux compile fix
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5525 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-28 09:33:31 +00:00
LPFaint99 ffc0c37365 GameListCtrl: fixes progress bar for extracting multiple files (cant mix ascii with unicode wxstring:format)
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
2010-05-28 05:30:03 +00:00
Rodolfo Osvaldo Bogado 66914c7ae4 lets apply some mathematical magic:
* optimize may last commit to make it faster
* reorder the code to make it more readable
please test and enjoy


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5520 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-27 21:43:07 +00:00
Soren Jorvang e960cf1ce6 Fix another piece of cleanup fallout which appears to have been the cause
of the file save bug.
(_dbg_*() should really get the same treatment as *_LOG() to remove this
whole class of #ifdef hell.)


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5519 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-27 21:28:48 +00:00
Soren Jorvang f8b159eb90 One more case of 64-bit code outside _M_X64, pointed out by omegadox.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5518 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-27 12:37:24 +00:00
Soren Jorvang 60c0d2efda Revert previous.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5517 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-27 12:36:51 +00:00
Rodolfo Osvaldo Bogado 253573ea02 ultra experimental commit. fixed tev functionality, now it must be almost perfect emulating native hardware.
please test as many games as you can this should impact a lot of games.
enjoy

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5511 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-27 03:05:43 +00:00
Soren Jorvang 1dacd1ac1b Put back call to ScanDirectoryTree() while FindValidTitleIDs() is still in use.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5510 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-27 02:08:18 +00:00
Soren Jorvang d18253fe33 Don't assume writeable C strings.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5508 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-26 22:40:06 +00:00
Soren Jorvang 5f9cdad7cd Unbreak nowx build.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5503 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-26 21:23:44 +00:00
Soren Jorvang 86f89cce92 Move 64-bit specific variables into proper scope.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5502 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-26 21:21:12 +00:00
Soren Jorvang 00758fcafb Uninitialized variables.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5501 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-26 21:16:03 +00:00
Soren Jorvang 03e01872b0 Unbreak nowx build.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5500 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-26 21:13:43 +00:00
bztdlinux b524af8fb9 NEWLINE
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5498 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-26 21:07:49 +00:00
Soren Jorvang 39a014353e Simplify logging a bit.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5497 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-26 21:07:13 +00:00
Soren Jorvang 810e6d53f0 For these assertions to trip, enums in CPMemory.h which seem pretty much set
in stone would have to change.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5496 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-26 21:05:42 +00:00
Soren Jorvang 8949c1e309 If the format is not one of the expected ones, just return rather than
proceeding with uninitialized data.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5495 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-26 21:03:42 +00:00
Soren Jorvang 208a4f5646 [Connection defaultConnection] and NewString are deprecated in OS X 10.6.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5492 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-26 20:54:48 +00:00
Soren Jorvang d391c59519 Exceptions are not allowed.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5491 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-26 20:54:20 +00:00
Soren Jorvang a94c7fc534 #pragma warning is specific to the MS compiler.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5490 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-26 20:53:37 +00:00
Soren Jorvang 47af7bd8b1 WriteDual32() is only used in 64-bit builds.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5489 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-26 20:53:18 +00:00
Soren Jorvang f2609d1af3 #if 0 work-in-progress code.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5488 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-26 20:52:44 +00:00
Soren Jorvang 3edae70ea0 Hack this dodgy compile-time assert so it works with gcc.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5486 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-26 20:47:56 +00:00
Soren Jorvang 57a22f670f Remove unused variables.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5480 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-26 20:43:16 +00:00