fix all build targets (they've all built here - you may have to manually delete the intermediate directories if you have conflicts after this commit).
set the debug path to $(TargetDir)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7022 8ced0084-cf51-0410-be5f-012b33b47a6e
Added SSE optimizations to JIT LLE, up to 136% speedup observed in Resident Evil games.
Rewrote the GUI to make it more user friendly, added a User friendly Setup.
Also Billiard please: learn to merge.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7000 8ced0084-cf51-0410-be5f-012b33b47a6e
Properly pause the core when saving/loading savestates, previously we used PowerPC::Pause() and Start() which only update the state but doesn't properly set m_StepEvent and caused random hangs.
Fixed hang when creating a savestate while the game was paused or in Frame Advance mode, now the thing works (just remember to press play duh).
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6992 8ced0084-cf51-0410-be5f-012b33b47a6e
and use wxGetKeyState on platforms other than Windows.
I am not sure if wxGetKeyState is unreliable on Windows or if
the use of GetAsyncKeyState() is simply historical, but for now
I've left the Windows call in there just in case.
This does mean that Host_GetKeyState() is currently only valid
for the small set of keycodes that overlap between wx and Win32,
one of which is VK_TAB/WXK_TAB.
Anyway, please test wxGetKeyState on Windows and remove the
ifdef if it works, so we can extend it to the remaining hotkeys.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6988 8ced0084-cf51-0410-be5f-012b33b47a6e
- Reimplemented AbortFrame. Now the Write Gather Pipe buffer is reseted and Read Write Distances is reseted before the game do it instead the process all GP CPRWDistance for prevent CP wrong pointers.
This fifo reset should be more accurate, efficient and smooth the FPS when happens. Please, test regresion of SMG1 and SMG2 or others games with FIFO RESETS.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6971 8ced0084-cf51-0410-be5f-012b33b47a6e
assumption on the part of many linkers that static libraries make
up a DAG, so merge libdspcore into libcore.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6967 8ced0084-cf51-0410-be5f-012b33b47a6e
This makes the OS X build more robust and should help pave the
way for the integration of the video plugins as well as LTO.
There are now no more global class level namespace conflicts left,
as evidenced by the fact that Dolphin can be linked with -all_load,
not that you would want to.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6958 8ced0084-cf51-0410-be5f-012b33b47a6e
This WILL temporarily break the Linux and MacOSX builds but should be easy to fix.
Things left to do:
* The UI on the new Audio tab for the LLE/HLE choice is ugly
* At times the code still look "plugin-y" and needs cleanup
* The two plugins should be merged further. DSPHLE should use the emulated memory etc of DSPLLE as much as possible, so that simply saving the DSPLLE state is enough. This would also bring the possibility of savestate compatibility between the two plugins.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6947 8ced0084-cf51-0410-be5f-012b33b47a6e
Updated several of the other language translations thanks to the growing Dolphin translation team.
Make it easier for translators to deal with a few strings in the code by not concatenating strings.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6922 8ced0084-cf51-0410-be5f-012b33b47a6e
add some nice messages for SE LED commands.
allow exi communication even if there is no tcp client.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6879 8ced0084-cf51-0410-be5f-012b33b47a6e
'#' is a fairly accepted comment character for .ini files along with
the more official ';', but '//' isn't.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6872 8ced0084-cf51-0410-be5f-012b33b47a6e
Mark a couple of strings for translation that were missed before.
Update some of the languages from the translators.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6856 8ced0084-cf51-0410-be5f-012b33b47a6e
Set up an exit(3) task to shut down real wiimotes. This shouldn't
really be necessary, but we do currently handle a number of error
conditions by calling exit(3).
Retire the inputuicommon library.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6852 8ced0084-cf51-0410-be5f-012b33b47a6e
Use wxS to get the right string type on either 2.8 or 2.9.
Default to cmd-f for the fullscreen toggle hotkey on OS X.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6820 8ced0084-cf51-0410-be5f-012b33b47a6e
in the title bar. It is more usefully displayed using the overlay
and long pathnames are not suitable for title bars and probably not
even safe depending on the underlying windowing system.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6817 8ced0084-cf51-0410-be5f-012b33b47a6e
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
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
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
It will now decode entities of unsupported FAT32/NTSC/etc characters in filenames to be returned, so that games such as HP:HBP won't fail to find files containing such unsupported characters.
Unless there are still parts of code waiting for file name replacements, this should completely fix issue 3443...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6791 8ced0084-cf51-0410-be5f-012b33b47a6e
As side-effect, changed GameListCtrl sorting to use the configured IPL/GC language instead of the UI language, which is misleading with missing translations, and possibly wrong if we ever get translations that are not part of the GC ones.
In case we want the old behavior back, revert GameListCtrl.cpp and ISOProperties.cpp.
For translators: use either "<System>" if your operating system is the same language as the one you're translating for, or replace one of the others. Someone will add them to the list when they are committed.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6785 8ced0084-cf51-0410-be5f-012b33b47a6e
Fix the number of connected wiimotes in the configuration dialog so it works with translations, and update translations accordingly.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6771 8ced0084-cf51-0410-be5f-012b33b47a6e
the occasional HLE wiimote disconnection, although nowhere it was at
near the level before both the recent wiiuse integration and adding
the queue in the first place.
The callback-based bluetooth input method on OS X really requires
that packets be accepted immediately and the 1ms polling done by the
wiimote worker threads isn't quite good enough.
So just play along with the native OS X model and send the packet up
our stack directly from the callback. With our current API, this is
kind of a layering violation, but it seems less messy than either
putting back internal queueing in IOdarwin.mm or adding the platform
support for higher-frequency polling than what usleep(3) offers.
Perhaps we should just change our own API to a callback model. While
this makes no real difference right now, it would make it a fair bit
cleaner to accept new wiimotes at any time instead of having to click
Refresh, although with the recent realmote changes, that feature can
probably just be hacked in by looping around FindWiimotes().
For other platforms having problems with HLE disconnections caused by
dropped bluetooth packets, as a first stop I would suggest trying to
do more than just one wiimote->Read() per iteration in the thread.
This change also conveniently sidesteps another new IOdarwin.mm bug
where the discovery and I/O code would clash during a refresh because
they use the same default CFRunLoop, so if we switch back to using a
run loop for I/O, must remember to create a separate one.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6743 8ced0084-cf51-0410-be5f-012b33b47a6e
reads the high bits from the mailbox registers. It is probably waiting for
the dsp to read the data from the cpu-to-dsp mailbox or for the dsp to
write to the dsp-to-cpu mailbox.
This about removes DSP::Read16 from lle profiles where it previously used
up to 2% of all system time. Also speeds up games quiet a bit.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6719 8ced0084-cf51-0410-be5f-012b33b47a6e
additional input queueing in IOdarwin appears to be unnecessary.
IOBluetoothDeviceInquiry does not find already connected devices,
so no need to filter those out.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6710 8ced0084-cf51-0410-be5f-012b33b47a6e
Avoid sending the Wii OS bluetooth packets with uninitialized data
past the nominal length of the report.
XXX IOWin.cpp still always returns MAX_PAYLOAD because I don't have
a Windows environment to test with.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6708 8ced0084-cf51-0410-be5f-012b33b47a6e
A lot of tests are failing right now, not sure yet if this is caused by the recent reg changes or other stuff (at least broken according to tests: iar, subarn, addarn, 'ir, 'nr, 'l, 's, 'sn, 'ln, 'lsn, 'lsm, 'lsnm, 'sl etc - err, most/all that use increase/decrease)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6683 8ced0084-cf51-0410-be5f-012b33b47a6e
logging: turn off write to file
core: don't insert anything in memcard b slot
video: efb scale to integral, AF to 1x
audio: 100% volume, 48KHz sample rate
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6650 8ced0084-cf51-0410-be5f-012b33b47a6e
Fixes issue 3703.
Note that HLE wiimote activation is currently a little broken, so to
use multiple wiimotes you need to open the wiimote configuration window,
refresh (connect to) the real wiimotes, start the emulation and then
select Connect Wiimote 2/3/4 from the Tools menu or with hotkeys.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6648 8ced0084-cf51-0410-be5f-012b33b47a6e
wiimote bd's are now read from (or added to if < 4 exist) SysConf
in theory you should be able to use any valid sysconf file now,
but i would advise against using a dolphin edited SysConf on a wii
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6646 8ced0084-cf51-0410-be5f-012b33b47a6e
* change File::GetSize to fetch the size directly from the open file instead
of stat'ing it when challed with a FILE*
* use changed File::GetSize(FILE *f) instead of calling with file name in two
places
* remove "seek_pos % file_size" hack for ZTP, so one can seek to the end of
file again. Please check Zelda: Twilight Princess for regressions
* return error codes when reading or writing from/to a file
A lot of those changes are from j4ck.fr0st, so kudos to him.
I did not change the file open mode for ISFS_OPEN_WRITE to "wb". While that
would probably be more correct, it says in the comment that it might affect
Mario Kart Wii. I would prefer somebody with that game try that change
locally first.
Please check your games for regressions (or even improvement). Some games that
may be affected are Zelda - Twilight Princess and Metroid Prime 3.
Fixes issue 1749
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6634 8ced0084-cf51-0410-be5f-012b33b47a6e
fixes system menu loading the ini file from the last run game
also check for all countries when setting bntsc for wad/nand titles
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6590 8ced0084-cf51-0410-be5f-012b33b47a6e
Changes file dialog to show *.bin for wii save import instead of data.bin
Move Sram dumps to Sram.cpp and change default FlashID
Fixes issue 3711.
Fixes issue 3042.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6588 8ced0084-cf51-0410-be5f-012b33b47a6e
* Optimised the updating of g_dsp.pc in the compile loop (code by kiesel-stein)
* Added JIT version of LRI (code by kiesel-stein)
* Added JIT versions of the branch instructions (code by Jack Frost)
* DSP_SendAIBuffer fix (code by Mylek)
* Marked instructions that update g_dsp.pc in the DSP table and updated PC based on the table (speed up)
* Fixed the signed bits not being set properly in the addr instruction
* Created a MainOpFallback function to use interpreted versions of the instructions if necessary (code by kiesel-stein)
* Disabled the jit versions of subarn and addarn as they are slowing down NSMBW
The above work in both x86 and x64 modes.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6582 8ced0084-cf51-0410-be5f-012b33b47a6e
Make sure the gfx debugger unpauses when the emulator is stopped.
When a wad is installed make sure directories exist.
For the cmake build if a header is not provided in the check_lib macro don't check for it, and assume pkg-config was supposed to work.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6581 8ced0084-cf51-0410-be5f-012b33b47a6e
allows using any (valid) memorycard.raw in any slot (including real memcard dumps)
Fixes issue 684.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6576 8ced0084-cf51-0410-be5f-012b33b47a6e
- I've implemented calling to ProcessFifoEvents when is there is a pending event in the main queue from CP, PE & GP
- I've implemented FifoIntReset(TRUE, TRUE) in write Clear Register.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6572 8ced0084-cf51-0410-be5f-012b33b47a6e
the black screen in Sonic Colours. Both JIT and JITIL have this work-around.
Re-enabled ps_mul as that instruction was not the root cause.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6565 8ced0084-cf51-0410-be5f-012b33b47a6e
Notable Changes:
Fixes right click menu in linux.
Fixes Issue 2412.
sram.raw file is no longer required to format a memcard
Update to use new ini sections, automatically remove default settings from ini file
enable pages setting no longer requires memcard manager to be reopened to take effect
it is no longer possible to switch to a negative page number
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6546 8ced0084-cf51-0410-be5f-012b33b47a6e
systems where size_t is typedef int.
It's either this or use the C99 %zu but while we can probably
safely assume C99 compilers, I am not at all sure that that's the
case for stdio libraries and this solution is fairly low-impact.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6535 8ced0084-cf51-0410-be5f-012b33b47a6e
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
for the real wiimote thread as for the other threads.
Turns out we use OS X bluetooth API's that were introduced in 10.5.4.
Remove vestiges of previously removed wiiuse_set_bluetooth_stack().
XXX We should probably have a Common equivalent of htonl and friends.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6531 8ced0084-cf51-0410-be5f-012b33b47a6e
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
Replaces all occurrences of ftell and fseek with ftello and fseeko, respectively. This matters on non-win32 where only these names are altered by the _FILE_OFFSET_BITS define. Win32 still just maps the funcs to ftelli64/fseeki64.
Also add some File::GetSize I had skipped in my last commit.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6515 8ced0084-cf51-0410-be5f-012b33b47a6e
Fix the macosx build (perhaps).
This changes the JitIL timed profiling to using assembly language to obtain the time. It does seem to be faster. Not sure if it will work on macosx, but if it does it has the necessary precision that gettimeofday does not have.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6448 8ced0084-cf51-0410-be5f-012b33b47a6e
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
The C version of the GenericLog was being used in both C and C++ branches of the code.
Parent panic alerts by the main_frame so that those windows get the icon too.
Fix a couple of compiler warnings.
Added some checks for libraries in the cmake build.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6385 8ced0084-cf51-0410-be5f-012b33b47a6e
Games that have higher frequency sounds and music should sound a bit better using 48k.
I don't have any games that use DTKMusic so that upsampling code untested. If you get strange sounds only at 48k try toggling dtk music to see if that isolates the problem and let me know.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6383 8ced0084-cf51-0410-be5f-012b33b47a6e
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
The "Enable Progressive Scan" option in the Wii menu now controls whether the Wii/GC will detect a progressive scan display. This affects the timing of some games (both GC and Wii). Usually, the checkbox should be unticked as progressive scan displays require higher bandwidth.
This fixes the slow speed in NBA JAM. This also fixes the hang in Megaman Network Transmission. This should fix Deadly Creatures (turn off progressive scan).
Fixes issue 3314.
Fixes issue 3066.
Fixes issue 2571.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6297 8ced0084-cf51-0410-be5f-012b33b47a6e
Work around different gcc versions giving conflicting warnings
about signed/unsigned comparisons involving bit fields.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6290 8ced0084-cf51-0410-be5f-012b33b47a6e
Added disc access time emulation
Enabled the disc transfer speed by default
Changed the system timing back to the pre-r6090 default (thanks to tsilibourditsas for testing)
Changed the game property to "Speed up disc transfer rate". Leave this disabled for the most compatible setting.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6284 8ced0084-cf51-0410-be5f-012b33b47a6e
In Issue 3097, two bugs are reported (The bad collision checking in NSMBW and MP2 collision issue). In this commit, the bug in NSMBW is fixed.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6282 8ced0084-cf51-0410-be5f-012b33b47a6e
* Fixed the "Change disc..." command. The filename of the disc was being lost between functions.
* Split the ChangeDisc function into two functions: EjectDisc and InsertDisc
* Moved the "Change disc..." command to the File menu.
* Removed some log messages that caused the debug build to crash when loaded with release build plug-ins.
Fixes issue 3036.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6206 8ced0084-cf51-0410-be5f-012b33b47a6e
After launching a channel, the wiimote has to be disconnected and reconnected for it to work. The same also has to be done when returning back to the menu.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6202 8ced0084-cf51-0410-be5f-012b33b47a6e
* Implemented HID4.SBE flag
* Implemented but disabled MSR[IR] and MSR[DR]
* In-lined ISI exception calls
* Fixed and verified exception handling according to docs
* Code clean-up in the memory functions
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6199 8ced0084-cf51-0410-be5f-012b33b47a6e
after this revision, wii save manager (< 3.0) should show any saves on the emulated nand
fixes an old issue with GetTitleID
fixes issue 1716.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6190 8ced0084-cf51-0410-be5f-012b33b47a6e
correct some parts of uid.sys as disc title ids are included
title in uid + tmd on nand is how the sysmenu knows which save files to look for.
IE games that are displayed in the disc channel at least once and have a save file will be
viewable in the sysmenu save manager
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6189 8ced0084-cf51-0410-be5f-012b33b47a6e