Commit Graph

68 Commits

Author SHA1 Message Date
skidau 9ff5e836eb Implemented MMU Demand Paging
* Emulated correct behaviour of DSI and ISI exceptions
* Added memory exception checks
* Added fast TLB cache implementation (written by booto)
* Added "Enable MMU" option in the game properties
* Renamed old TLBHack to "MMU speed hack"

Thanks to booto (PowerPC) and nash (testing) who spent many weeks of their time helping me make this work.  Also thanks to shuffle2 for finding and converting the map file of the original target.

There are two options for MMU emulation found under the game properties.  "Enable MMU" is the accurate emulation option.  "MMU speed hack" is the old TLBHack renamed. Most games will work with one or the other.  Some games can work with both options ticked.

Only the JIT recompiler and Interpreter work with the MMU code.  JITIL is not supported (too hard for me to add).

The speed optimised code still needs a lot more work and is disabled for now.

Fixes issue 2546
Fixes issue 2583
Fixes issue 2704



git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5994 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-29 12:17:47 +00:00
skidau f158ca82af Debugger enhancements:
* Added JIT breakpoints functionality
* Added a menu option to disable the JIT block cache
* Enabled single stepping in JIT mode as a run-time option (automatically enabled when the debugger is used)
* Enabled the missing JIT Off menu options
* Removed the JIT Unlimited Cache hack



git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5833 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-05 02:05:47 +00:00
hrydgard a3c96ac42c Warp back to 5578. Sorry for the lost changes, please re-apply. Reason: 5579 is a complete disaster.
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
2010-06-03 18:05:08 +00:00
Shawn Hoffman e4085f0f04 Merge GCPadNew into Dolphin. This takes place in three segments: Core, InputCommon, and InputUICommon. From now on it can be referred to just as "GCPad".
Switch to Billiard's IniFile implementation throughout Dolphin (it's faster!!).

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5579 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-03 04:55:39 +00:00
skidau 0ecdb7b83e Fixed the bug where JITIL could not be selected in debugger mode.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5292 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-04-08 09:18:42 +00:00
j4ck.fr0st ca3f4a6494 Fix game-specific dual-core checkbox
Fixes Issue 2438

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5256 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-03-31 16:41:30 +00:00
Shawn Hoffman e6efc4a611 remove wiimote led/speaker status from statusbar
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5187 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-03-11 17:20:32 +00:00
Glenn Rice feba09f7a3 Linux global build. At least the basic footwork is done here.
Basic usage:  "sudo scons install=global install"
Hopefully this doesn't break builds on Macs.  I have tested this on linux and windows.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4994 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-02 21:56:29 +00:00
hrydgard 576990c5a3 JitIL is no longer a separate .exe/binary - it's now a simple option, Dolphin.exe now contains both cores.
Advantages:
* Less confusion for users
* No need to build twice to make sure you didn't break something
* Easier to switch between the cores for testing

Disadvantages:
* None, as far as I can tell :) Maybe some extra code complexity, but not much.

Also break some include chains that caused <windows.h> to get included into everything, slowing down the build on Windows. There's more to do here though, there's still a lot of files that get it included that don't need it at all.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4891 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-19 19:28:27 +00:00
hrydgard 1848e93790 RIP "Optimize Quantizers" option. Now using the safe quantizer code from JITIL in all builds.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4854 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-16 19:00:09 +00:00
Shawn Hoffman ac157105c5 small code cleanup: rename "dual core" stuff to CPUThread, bOnThread, etc.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4455 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-23 15:26:35 +00:00
Shawn Hoffman 480b648ed5 change references to this strange "bios" thing to BS2 internally, IPL for gui stuff (figured it's easier...) :)
dolphin loads unmodified bootrom dumps now, instead of pre-descrambled ones.
-should we allow loading pre-descrambled dumps still?
yes, segher is a supercomputer!
also make it so we only display the "failed to load fonts" message when they are accessed, like bushing suggested

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4395 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-11 16:16:18 +00:00
Shawn Hoffman aff34e6789 revamp handling of wii sysconf. it's in Common lib so that plugins can (possibly) utilize it if they like
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4268 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-14 06:26:49 +00:00
hrydgard 512053fa5e Kill some horribly ugly hackery :( It's just not right to pass entire IniFile objects across DLLs. Only POD (plain-old-data, like int, float, char, char[] etc) are safe to pass across DLL boundaries.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4257 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-13 08:54:46 +00:00
Shawn Hoffman 3b76f6dc80 get rid of the '¯' chars in source code...non ascii chars are not really good to have floating around for no reason. http://google-styleguide.googlecode.com/svn/trunk/cppguide.xml?showone=Non-ASCII_Characters#Non-ASCII_Characters
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4231 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-08 16:07:13 +00:00
John Peterson 486798c580 GUI: Fixed boot settings
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4180 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-03 07:59:24 +00:00
Marcus Wanners 50593397f3 Got rid of all of jp's ////////////////////////////// lines (nearly 500 of them)!
Yes, I used a script :D

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4169 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-02 21:00:45 +00:00
sl1nk3.s 5ce5219e2c Fix Zelda TP Wii and Pikmin 1 Wii sound Thanks to LordMark ! (again :P)
Set fpAccurateFcmp to true and revert ini setting, this causes random issues in various games... and it's too hacky.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4067 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-08-26 16:58:45 +00:00
sl1nk3.s 944844bfba Fix Pikmin PAL not booting thanks to LordMark for figuring it out ! :D
Added "AccurateFCMP" ini setting which fixes Nights, Paper Mario games...

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4042 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-08-24 04:04:10 +00:00
XTra.KrazzY c86d2e5129 Now ALL copyright dates are fixed to the legally correct year: The year in which the project began. Now we don't have to change it every year :)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3898 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-28 21:32:10 +00:00
death2droid 73a7686044 Fix up all copyright dates.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3886 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-26 11:51:40 +00:00
Shawn Hoffman 7e8a2fc136 remove MusicMod
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3657 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-03 03:26:23 +00:00
John Peterson c66c54814c MusicMod: Fixed the build
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3507 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-20 11:05:52 +00:00
itsnotmailmail 232217c1cd Added the ability to install WADs (such as DLC WADs). Currently it just installs a WAD when booting it fails (when it's not bootable), I'm not sure whether there should be a menu option specially for installing WADS...
note: If you previously manually installed WADS by creating a *file* called "CONTENT", trying to reinstall that WAD automatically will fail unless you delete the file.

Added some empty log files that some games require for DLC to be recognized.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3474 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-17 02:50:54 +00:00
hrydgard 10442c8faa PowerPC: Fixed moronic bug in mcrfs - together with correctly computing FPRF (which is a new option, slows down slightly) in a few ops this fixes most remaining math errors in Super Monkey Ball and eliminates the need for the HLE hacks. Make sure to have up-to-date gameconfigs. Unfortunately, F-Zero still doesn't work. Misc other small changes. Indent some code.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3426 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-13 14:10:10 +00:00
Shawn Hoffman 36f5f6e3e7 remove dead code from MusicMod
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3182 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-05-08 16:00:16 +00:00
Shawn Hoffman 989f4fb6da Try to pass the wii "001" and "002" checks correctly
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3094 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-04-27 16:57:12 +00:00
hrydgard 4b8741d524 Add Fix002 gameini parameter (no ui yet). Hack to fix games that display "002 error" without having to manually patch the games. (yeah this is ugly).
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2952 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-04-10 21:09:49 +00:00
nakeee f22af37320 Trying to make gameini support some gl options
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2687 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-03-20 11:51:22 +00:00
John Peterson bd891cfff6 Paths: Made a WII_SYSCONF_FILE path for the Wii configuration, and removed an unused variable
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2444 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-26 08:12:40 +00:00
John Peterson 4beff606d7 Main Configuration: Fixed the game specific Wii settings so that they don't cause the global settings to be forgotten
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2389 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-23 09:34:28 +00:00
John Peterson 94583cbab0 DSP HLE: Fixed a sound problem with a new Setup.h option. For some reason all the SoundSyncEvent->Set() caused a lot of static for me in Wario Land.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2236 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-14 01:07:20 +00:00
John Peterson 3e53828406 MusicMod: Moved it from Branches to Externals, I guess there usually is no Branches dir in the trunk dir, so this may look a little better
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2174 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-09 15:29:35 +00:00
Shawn Hoffman 60b25def18 Allow changing of the debugger font and some cleanup
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2127 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-06 18:18:20 +00:00
John Peterson d39819c4b5 DebuggerWX: Added jit block linking option to the code window
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1958 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-01-20 16:52:46 +00:00
nakeee 015fc11baf Remember last iso (fix)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1937 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-01-19 20:06:03 +00:00
Shawn Hoffman 5708e14a0e don't fool with sysconf if you're booting a gc game, and add back ability to double click on initial gamelistitem in order to add a GCMPath.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1922 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-01-19 01:30:54 +00:00
John Peterson f9ffbd8c32 BootManager: Cosmetic changes
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1917 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-01-18 09:49:28 +00:00
nakeee a6447d1758 some clean up but there are too many references to g_CoreStartupParameter directly:(
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1912 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-01-18 01:45:53 +00:00
nakeee 8fdf439c9a Core now uses SConfig and not startup params
Please check everything is working well


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1911 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-01-18 00:45:48 +00:00
nakeee 4433e06447 Move Config.cpp to Core renamed it to ConfigManager
Todo: Use it from core.cpp instead of the params


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1905 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-01-17 23:41:21 +00:00
John Peterson ae9cfbd8e3 Common: Moved Windows console functions to common
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1887 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-01-17 14:28:09 +00:00
John Peterson f50746cf0e CodeWindow: Fixed the Unlimited JIT Cache option
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1816 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-01-07 07:35:12 +00:00
John Peterson fa27a97fbb Wiimote:
1) I fixed the emulated Nunchuck in Zelda - TP, however I chose the minimum workable delay time that worked in my PC, in fact it's so short that the Nunchuck still fails sometimes. If you have a very fast PC or something like that so that the Nunchuck still don't work please let me know.

2) I also made the Wiimote work after Stop and Start

3) I changed /Dev/USB to initialize the emulated Wiimote directly after ScanEnable, not wait for any countdown

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1814 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-01-07 02:59:19 +00:00
John Peterson 6c57f63280 CodeWindow: Made boot to pause optional, readded the tooltips in the Release build
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1784 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-01-05 02:52:55 +00:00
John Peterson 264056972d MusicMod: Added music modification, it currently only works in Windows
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1736 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-01-03 01:38:44 +00:00
John Peterson 8cc09ef74d Change disc: Warn the user if he's changing the disc to a completely different game
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1634 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-12-23 09:33:02 +00:00
hrydgard 64a74c2ba4 Only initialize the Wiimote plugin if booting in Wii mode.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1535 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-12-14 20:01:01 +00:00
Shawn Hoffman 66536235e6 compiletime warning fixes, possible wxw crashes fixed, disable build of njoy_test until it's more mature.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1502 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-12-12 03:38:50 +00:00
hrydgard e450578710 TLB hack plus some project changes. I only get a Konami logo though in MGS. Sonic1, plz fix :p
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1467 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-12-09 22:20:50 +00:00