Commit Graph

4680 Commits

Author SHA1 Message Date
skidau 8ccdba7273 LLE JIT:
* Fixed a bug in the JCC instruction.
* Changed the cycle count from u32 to u16.
* Added cycle counting to the block linker.
* Optimised the branch exit slightly.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6681 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-29 04:34:33 +00:00
pierre fc1db5eaa0 Core/DSPCore: Reorganize register layout for accessing accumulators
(acc and ax) and product register with one read/write.

Gives a minuscule speedup of not more than 4%. In exchange, breaks all
your out-of-tree changes to dsp. Tests are not building again, yet.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6680 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-29 02:12:06 +00:00
Jordan Woyak 0059b0f44f Made wiimotes automatically connect on start based on their selected "Input Source" in the wiimote configuration.(fixes issue 2261) Made wiimotes 2-4 input source default to "None".
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6679 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-28 22:14:15 +00:00
NeoBrainX 9bf2705c2d Small fix in addition to r6669.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6676 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-28 01:10:40 +00:00
skidau 9cc19447a9 LLE JIT: Completed the remaining JIT DSP instructions (lrrn, srrn, ilrrn).
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6675 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-28 00:42:00 +00:00
skidau 677fd7c052 LLE JIT: Completed the JIT versions of the DSP Branch instructions (added ifcc, ret, rti and halt).
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6674 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-27 23:23:53 +00:00
Shawn Hoffman 9553aa0100 linux buildfix
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6673 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-27 22:51:20 +00:00
Shawn Hoffman 722b7db8f9 more WIP BBA crap...nothing nice to see.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6672 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-27 22:30:24 +00:00
Soren Jorvang 33506f5bdc All 64-bit capable Macs have the SSSE3 extension.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6671 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-27 22:17:19 +00:00
Shawn Hoffman b21c361a1a Make ARAM DMAs take time. Allows WWE Day of Reckoning 1 & 2 to go ingame...then they crash. Not entirely sure if the crash is related.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6670 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-27 22:14:33 +00:00
NeoBrainX a271bb8182 Implement pixel data reinterpretation on EFB format change.
Whatever that means, it fixes that stupid Super Mario Sunshine glitch and possibly lots of other stuff, so test as many glitchy games as possible with this ;)


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6669 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-27 21:56:20 +00:00
NeoBrainX 6e8df50fff Yet another ClearScreen fix, should be the last one now.
Should fix almost all regressions of the recent ClearScreen changes and keep the fixed stuff.
The Super Mario Sunshine glitch is caused by another issue and will be addressed in my next commit.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6668 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-27 18:09:03 +00:00
pierre c33f46406e Core/DSPCore: Improve Interpreter address register add/sub, convert to
assembler for JIT. Replace JIT ToMask() with a different variant. Remove
 superfluous zeroWriteBackLog calls(added by me).
Core/Common: Don't bother creating a string and calling into a Logs trigger()
 when there is noone listening. Change AtomicLoadAcquire for gcc to just
 make the compiler not reorder memory accesses around it instead of doing
 a full memory barrier, per the comment in the win32 variant.
Core/AudioCommon: Fix a use of uninitialized variable inside libalsa.

Microbenchmarking results for ToMask variants:(1 000 000 000 iterations):
             cpu\variant| shifts | bit scan
intel mobile C2D@2.5GHz | 5.5s   | 4.0s
amd athlon64x2@3GHz     | 6.1s   | 6.4s
(including some constant overhead identical to both variants)



git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6667 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-27 15:05:18 +00:00
Marcos Vitali d59b1e5e7a Ops! Little fix for my prior commit.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6665 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-27 03:46:17 +00:00
Rodolfo Osvaldo Bogado c2283ad6c0 Second Experimental commit:
corrected peek color and peek z to  correctly emulate real hardware formats.
implements native gamma correction.(i don't own any game that uses this functionality so i will appreciate feedback)
i need a lot of feedback in this changes please
enjoy

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6664 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-27 03:18:01 +00:00
Rodolfo Osvaldo Bogado f3336a84a1 First Experimental Commit:
make some changes to the Clear code. please test a lot , the point of this commit is to determine the correct behavior of the efb clearing so feedback is welcome

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6663 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-27 03:09:11 +00:00
Marcos Vitali 695010520f More FIFO work, HACK Solution for extreme overflow on breakpoints.
1) What is the FIFO? The fifo is a ring queue for write (CPU) and read (GPU) the graphics commands.
2) What is the Brakpoints? The breakpoint is the FIFO mark to allow parallel work (CPU-GPU) When the GPU reached the breakpoint must stop read immediately until this Breakpoint will be removed for the CPU.
3) What is an overflow? The CPU write all room FIFO possible, and like a ring overwrite commands not processed yet.
4) ¿Why you have an overflow? In theory should not have an overflow never because the fifo has another mark (High Watermark) When the CPU Write reach this mark raise a CP interruption and the FIFO CPU WRITES should stop write until distance between READ POINTER AND WRITE POINTER will be equal to another mark (LO Watemark to prevent and overflow.
5) ¡So if impossible why you have overflows? Simple, the CP interruption is processed later and the Overflow happens. (there is a lot of theories about this)
6) ¿Why is no so simple like when CPU WRITE POINTER is near to the end of the FIFO only process pending graphics command?
Because when this happens sometimes we are in BREAKPOINT and is IMPOSIBLE process the graphics commands.

- This HACK process the pending data when CPU WRITE POINTER is 32 bytes before the end of the fifo, and if there is a Breakpoint force the situation to process the commands and prevent an overflown.
In theory you have not see "FIFO is overflown by GatherPipe nCPU thread is too fast!" anymore. But if you have a hang in game where you had this please read the NOTICE LOG in user\logs, I've added this message "FIFO is almost in overflown, BreakPoint" when the hack is activated. (I will delete this message very soon)

Good Luck!! PD: Shuffle sorry for the large commit description :P

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6662 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-27 02:55:35 +00:00
Soren Jorvang 64d43211c9 Use the same code for populating user data directories one by one
on OS X as on other Unices so OS X initial installs aren't so easily
broken by files being created in constructors.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6661 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-27 00:26:52 +00:00
Jordan Woyak b4e0fe53af Copied some emulated motion plus stuff over from the old wiimote plugin. Not at all functional currently.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6660 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-26 22:54:02 +00:00
skidau 963ca6f963 LLE JIT: Added the loop instructions to the JIT. Added ASM version of HandleLoop. Both x86 and x64 versions have been added.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6659 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-26 12:34:38 +00:00
Jordan Woyak 7c5b12c5bc Made the "Download Gecko Codes" button not add already existing codes.(fixes issue 3732) Minor fix to gecko code handling. Added a "Show Shader Errors" setting to video config dialog.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6658 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-26 06:23:33 +00:00
skidau f2e54074f1 LLE JIT:
* Completed the JIT versions of the DSP Multiplier instructions (5 instructions added).
* Bug fixed the dec and lsr16 instructions.
* Minor code clean-up.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6657 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-26 03:12:29 +00:00
NeoBrainX 9938f806f1 Guess what, more ClearScreen fixes.
Additionally a small cleanup.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6656 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-25 00:25:15 +00:00
Shawn Hoffman 444854601c CMPR texel blocks are 8x8 in hardware, even though the source format says 4x4.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6655 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-24 11:15:51 +00:00
skidau b5d482a0d3 Added support for a wider number of VID/PID reported by Wiimotes. Patch by palsch.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6654 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-24 02:21:09 +00:00
skidau b9d4534a35 LLE JIT: Fixed the shift direction of the lsrnrx, asrnrx, lsrnr and asrnr instructions.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6653 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-23 22:42:10 +00:00
skidau ef96ab7d4f LLE JIT:
* Completed the JIT versions of the DSP arithmetic instructions (28 instructions added).
* Added JIT versions of maddx and msubx (thanks to LM1234).

x64 only


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6652 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-23 15:27:49 +00:00
NeoBrainX 86c46a9530 More ClearScreen fixes for PIXELFMT_RGB565_Z16...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6651 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-23 10:36:00 +00:00
Shawn Hoffman 750515ea79 some better default settings:
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
2010-12-23 06:00:17 +00:00
Soren Jorvang 055a056ddc Clarify comment about the use of event.Skip().
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6649 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-22 20:25:24 +00:00
Soren Jorvang edbc06bd18 Support for multiple wiimotes on OS X.
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
2010-12-22 20:24:25 +00:00
Shawn Hoffman e059587c1a Don't reset all of ARAM when DSPReset is sent. Fixes issue 3594
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6647 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-22 17:32:17 +00:00
LPFaint99 547c18fb55 Add the ability to Get / Set Array data from SysConf
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
2010-12-22 08:00:08 +00:00
Soren Jorvang 3d68608024 Fix Unix build.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6645 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-22 06:45:59 +00:00
LPFaint99 6c556786fb Move AES to common lib
move pch includes to vcproj file for discio

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6643 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-22 06:00:36 +00:00
Shawn Hoffman 9bbe7a9e1a Allow control of BT.SENS and BT.MOT sysconf values. Thought BT.SENS would fix issue 3362, I don't think it did though...
Feel free to revert if the options seem unneeded.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6642 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-22 05:59:58 +00:00
skidau 0d5480073f Added a game property for the "Enable CPU Access" video option. Patch by Link_to_the_past.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6641 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-22 01:05:29 +00:00
LPFaint99 9584b5b335 Update Wii save import / export to use the same replace list as FileIO
add a couple of country codes I found through redump.org database

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6640 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-22 00:48:59 +00:00
Glenn Rice c1c1f54c59 Implement free look on linux. Patch due to artart78.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6638 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-21 23:58:25 +00:00
Soren Jorvang e4269dcd65 AlphaMask and ColorMask were reversed.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6637 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-21 22:49:35 +00:00
LPFaint99 e9e86abed6 remove the remaining parts of the hack from r1327
the original issue was fixed some time ago
no functionality changes

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6636 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-21 22:27:38 +00:00
NeoBrainX 6087987f85 ClearScreen fixes:
- Clear alpha channel to 0xFF instead of 0x00 whenever we (re-)create the EFB texture
- Disable color/alpha channels whenever the actual EFB format doesn't use them

Fixes issue 2826.
Fixes issue 1879.

Please check if issue 3014 is fixed now, as well as any other games which might have broken due to ClearScreen changes.
For what it's worth, Super Mario Sunshine still shows a small glitch even with these changes.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6635 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-21 22:18:40 +00:00
blubberdiblub 38e80fe094 Fixes some file handling in IPC_HLE
* 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
2010-12-21 18:03:44 +00:00
skidau 6cb78515c6 LLE JIT:
* Added 21 Arithmetic instructions to the JIT
* Used the DSPAnalyser to identify arithmetic/multiplier instructions that precede a conditional branch.  This allows the JIT to skip updating the SR when nothing would read from it.  Marked all arithmetic/multiplier instructions in the DSPTable for this purpose.
* Converted CheckExternalInterrupt into ASM
* Fixed a couple instructions in DSP Load/Store


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6633 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-21 14:48:05 +00:00
Marcos Vitali 0030d55725 More FIFO works, Hopefully this commit can fix randoms hangs in Wii Music, Wii Sports, maybe in Wii Resort, etc. Please test your games now. This commit is not related with FIFO Overflown and Fifo linked desync.
Good luck! 

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6632 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-21 04:39:39 +00:00
gnick79 d9701a74c5 * 2nd attempt to fix Alpha channel on ClearScreen
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6631 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-21 01:04:53 +00:00
Soren Jorvang 0e466300dc On OS X, we claim all keyboard events while emulation is running to
avoid wxWidgets sounding the system beep for unhandled key events
when receiving pad/wiimote keypresses separately from HID devices.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6630 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-20 17:36:51 +00:00
Soren Jorvang f09fd080fb Avoid shadowing variables.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6628 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-20 17:06:39 +00:00
NeoBrainX 9ebf507a55 Various ClearScreen fixes.
Will fix some games and break some others.
Assist trophies in SSBB work fine now, Super Mario Sunshine is a little broken again.
Still needs some more work...

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6627 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-20 16:57:29 +00:00
NeoBrainX 83868566ea Forgot committing the changes to VideoConfigDiag.h in r6625...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6626 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-20 15:57:26 +00:00
NeoBrainX 60ed57b32a Add an option to toggle caching EFB->RAM copies.
skid_au had implemented this in a previous revision and enabled it by default, but it caused glitches if STC wasn't set to "safe" (which kinda defeated the purpose since it slowed down stuff again).

Also renamed the "safe texture cache" to "accurate texture cache", since setting the "safe" texture cache to "safe" sounds kind of silly..

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6625 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-20 14:48:46 +00:00
nitsuja- bb8918a2ca added/changed some graphics plugin tooltips, added some low-res framebuffer options for getting a speedup (in pixel-shader-limited situations) at the cost of quality but without needing to make the window tiny, and fixed a little crash with closing the dx9 settings window at a bad time
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6624 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-20 09:17:21 +00:00
Rodolfo Osvaldo Bogado 3749c3e57d update shader cache version to force regeneration
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6623 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-19 22:28:22 +00:00
Rodolfo Osvaldo Bogado 9d30d1348e fix Issue 3539
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6622 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-19 22:24:19 +00:00
gnick79 670192e568 * revert Clear Screen's stuff from r6604
reason : failure! (are needed more testing)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6621 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-19 22:00:25 +00:00
nitsuja- 6492b84ca5 this probably doesn't fix anything noticeable, but, it seems like a bug that C_COLORMATRIX+4 overlapped with C_PLIGHTS
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6620 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-19 21:09:29 +00:00
nitsuja- 60d2d42525 made texture conversion shaders use less instructions
this is mainly so they fit within ps_2_0 limits, but I made this separate from my last checkin to make it easier to test separately in case it somehow causes problems

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6619 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-19 21:05:41 +00:00
nitsuja- 98fe8437ae reduced frequency of dx9 ps_2_0 pixel generation errors, and made dx9 efb depth peek of 16-bit depth buffer not use 24-bit adjustment factor. shouldn't affect other the plugins.
(probably nobody else cares, but I need at least one video plugin that actually works on this computer)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6618 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-19 20:59:23 +00:00
NeoBrainX aef7f6c3f5 Win32-only:
- Merge the EmuWindow class to VideoCommon.
- Implement free look in the D3D plugins. Seems like it had broken before though; only rotating the view works..


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6616 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-19 19:43:18 +00:00
Soren Jorvang 98e89c9329 OS X std::locale only supports the "C" locale and will give an exception
on any other, including "" when a different one is specified through the
POSIX locale environment variables.

This is not normally a problem since these variables are stripped out from
the environment when an application is launched by the Finder. This is not
the case when running the binary directly from the command line, such as
when debugging.

I have temporarily disabled the use of std::locale("") on OS X while I try
to come up with a better solution.

Fixes issue 3598.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6615 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-19 16:11:55 +00:00
Soren Jorvang fe9e72d6dc Lock emulation while saving state on all platforms.
Fixes issue 2805. Fixes issue 3235.

If this causes problems on Windows, just use this intead:

#if defined(HAVE_X11) && HAVE_X11 || defined __APPLE__


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6614 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-19 16:07:05 +00:00
Soren Jorvang 38a46ddf94 Avoid shadowing variables.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6613 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-19 16:03:39 +00:00
gnick79 c68ae8e91e Related to CPUID detecting:
* fixed a bug on display info for AMD CPUs.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6612 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-19 15:06:30 +00:00
Glenn Rice 05ad8d01d3 Fix TextureDecoder.cl to work on both NVidia and ATI video cards.
To do so I had to re-add the casting bloat removed in revision 6102.  Also, for some odd reason the NVidia OpenCL drivers don't like 8 bit rotations, but are okay with 2, 4 bit rotations.  These are apparently bugs in the NVidia drivers that are hopefully fixed in future versions.
Also, on linux make sure the TextureDecoder.cl file is copied from the shared data directory to the users directory.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6611 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-19 14:59:57 +00:00
Glenn Rice d1631bec3f Build fix for linux. svnrev.h was not found when compiling OCLTextureDecoder.cpp as that include directory was only used in Core/Common.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6610 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-19 14:02:43 +00:00
skidau 0b72d34f6d Build fix for Linux x86
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6609 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-19 13:25:57 +00:00
skidau 9114c96c78 Cached the compiled OpenCL kernels to disk (User/OpenCL/kernel.bin). This reduces the start up delay in OpenCL mode. Added a 10 byte header to the file which contains the current svn rev string. This will recompile the OpenCL kernels with every new revision.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6608 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-19 11:03:09 +00:00
Glenn Rice ef0762c6a5 Apparently I missinterpreted that thing in tortoise svn.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6607 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-19 04:00:07 +00:00
Glenn Rice a91c86c4d9 git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6606 8ced0084-cf51-0410-be5f-012b33b47a6e 2010-12-19 03:46:20 +00:00
Glenn Rice 7236f114ff git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6605 8ced0084-cf51-0410-be5f-012b33b47a6e 2010-12-19 03:46:01 +00:00
gnick79 522746b2c2 **Changes**
* More formats recognition for "Clear Screen" step. Improved the ability handling the alpha channel (% color translucency).
* Related to CPUID detecting:
	- Added support displaying correct SysInfo for recent multicore Intel CPUs x86-64 with HT/SMT (Core i3/i5/i7 and Xeon) based on Nehalem architecture.

+ minor and passive changes.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6604 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-18 18:23:22 +00:00
Orphis 42e40b46c0 OpenCL: Fix error reporting when the build log is too long
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6603 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-18 04:54:16 +00:00
Glenn Rice d01542ee0a Fix another part of issue 3716 missed in the last revision.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6602 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-17 22:13:58 +00:00
Glenn Rice 22f19f6fdb Fix a segmentation fault that occurs when "Confirm on Stop" is enabled, the close button of the window is clicked, and the user answers No to the resulting confirmation. Fixes issue 3716.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6601 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-17 15:23:33 +00:00
skidau 77a36cf9cb ABI fix for Linux x64. ABI_CallFunctionCC16 was not calculating the jump distance on far calls.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6600 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-17 05:16:51 +00:00
skidau 2a54c445a0 LLE JIT: Added another 9 DSP Load/Store instructions to the JIT. Fixed a couple bugs in the 32bit and Linux builds.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6599 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-17 03:34:50 +00:00
skidau aecc4f67a1 Fixed the throttle (Tab) key so that it takes effect when the frame-limiter is used. Hold down Tab to run the emulator unthrottled (Windows only).
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6598 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-17 01:34:40 +00:00
skidau 9afb1dab41 Helps to add the new code to the repository.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6597 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-16 23:37:58 +00:00
skidau 93a09ee7b5 LLE JIT:
* Added jit versions of 5 DSP LoadStore instructions: srs, lrs, lr, sr, si
* Renamed MainOpFallback to Default for consistency in naming with JIT64
* Made ext_dmem_read and ext_dmem_write more generic for wider use
* Optimised dmem_read and dmem_write slightly
* Added dmem_read_imm and dmem_write_imm optimised versions


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6596 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-16 23:27:38 +00:00
pierre a82a61c53a Core/DSPCore: Fix more memory accesses for linux x64
Core/Common: Add more asserts for too large displacements


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6595 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-16 22:38:31 +00:00
Glenn Rice 4295f2f008 Fix an omission from the last commit.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6594 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-16 18:39:57 +00:00
NeoBrainX 4553699077 Merge some state loading stuff to VideoCommon and fixed a crash on Linux system when trying to save a state.
Credits go to miquelmartos from the forums for the patch ;)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6593 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-16 18:21:14 +00:00
NeoBrainX aa226aaf41 Revert most stuff from r6517 and revert r6501.
PixelShaderGen changes broke Mario Kart Wii, ClearScreen changes broke Super Mario Sunshine.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6592 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-16 17:40:45 +00:00
LPFaint99 b20858adb3 System Menu Region is now detected based on the Title Version in tmd
Title Version and region char of currently installed system menu are now listed in the menu as well

Which means disc channel will only show pal discs if it is a pal nand dump; ntsc nand dump will show ntsc discs, ntsc-j nand dump will show ntsc-j discs

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6591 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-16 07:36:26 +00:00
LPFaint99 06784d2869 sys menu now loads gamesettings from an ini file (as well as any other wad/nand title that does not have an ascii gamecode)
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
2010-12-15 23:18:08 +00:00
skidau a90d0e8985 LLE JIT: Used a reiterative approach to linking blocks. The JIT flags blocks that have calls to blocks which have not yet been compiled. After more blocks have been compiled, the JIT reattempts to link the flagged blocks. This is repeated until the minimum number of unlinked blocks are left. This increases the success rate of the block linker and resultant speed up. Based on an idea by nakee.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6589 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-15 22:13:31 +00:00
LPFaint99 aee96e12c6 Rename variable in WiiSaveCrypted for icc.
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
2010-12-15 21:23:42 +00:00
Glenn Rice 77837b8034 Make sure a few more directories exist when needed. Most package builders (including cmake/cpack) do not install the empty directories in the shared data, and so the paths need to be created at runtime.
Also set up cmake/cpack to create prebuilt binary packages and source packages.
Also change the vertex shader dump file name in the gfx debugger to something that makes more sense.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6587 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-15 14:47:13 +00:00
skidau 02a38baf7c Build fix for OSX.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6586 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-15 11:02:58 +00:00
skidau c584bd5333 LLE JIT: Added simple block linking at immediate CALL's and JUMP's. The code checks if the block being jump to has already been compiled and jumps there if it has, bypassing the dispatcher. This results in a speed-up of around 7 - 10%.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6585 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-15 07:08:36 +00:00
skidau e61133625a Fixed the "Locked threads to cores" option properly. Thanks to ernesto and xenofears.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6584 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-15 02:29:06 +00:00
Glenn Rice 85ec8d268d Linux build fix.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6583 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-15 02:17:19 +00:00
skidau f67afb4fca LLE JIT:
* 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
2010-12-15 01:42:32 +00:00
Glenn Rice 76d9209ad4 When the gfx debugger is saving shaders make sure the directory exists.
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
2010-12-14 23:19:34 +00:00
Glenn Rice 35fef1f173 Revert back to LogTypes. Fixes issue 3668.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6580 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-14 17:52:01 +00:00
skidau 7c0e08b0e7 Forced the video thread to the third core when "Lock threads to cores" is enabled. This should fix the slowdown that this option produced on CPU's with HyperThreading. Thanks to NaturalViolence for the tip.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6579 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-14 09:20:02 +00:00
Glenn Rice e4ed7dab22 Build fix for case sensitive platforms.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6578 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-14 02:44:27 +00:00
Shawn Hoffman 4780c8f6dd Remove LOGGING from the DSPCore vcproj. It isn't really used like that anymore. This commit doesn't really change anything...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6577 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-14 01:28:21 +00:00
LPFaint99 18e95ecdfa EXI: grab the FlashID from the memory card headers and update sram to include correct id and chksum
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
2010-12-14 01:25:50 +00:00
Marcos Vitali b5ba9b3479 I've fixed a beautiful bug in GPFifo the current Memory in some conditions was not assigned right. Pleaseee test again your games with FIFO hangs like WII music, WII sport, Wii resort, etc. May be this help :P
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6575 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-13 23:04:13 +00:00
NeoBrainX 7cf3ef6ddc DX9: Write a detailed description of the vertex position offset magic in drawShadedTexQuad. I hope this makes at least a bit sense to anyone but me, it's better than no documentation at all though.
DX9: Revert to the old EFB coordinate scaling. Glitches caused by higher EFB scales probably can't even be fixed properly in DX9, so let's not even mess with it...

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6573 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-13 17:49:21 +00:00
Marcos Vitali 5fd9951649 - I've implemented cache of interrupt states for PEFINISH and PETOKEN
- 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
2010-12-13 07:56:54 +00:00
Marcos Vitali dde2d1a117 Before my second part, little fixes :D 1) I was wrong the games can use also BP and BP int in multi buffer mode or or at least Pokemon XD can hehehe. Pokemon is booting again but this game also need accurate AbortFrame dont care about "GFX FIFO: Unknown Opcode" in this case 2) Fixed a stupid error in UpdateInterrupts (CUT&PASTE mistake)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6570 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-13 04:44:33 +00:00
Marko Pusljar b56dd2ad6e DSPLLE-int AR increase, decrease finally 100% (code by kiesel-stein/dolphin-forum, great work btw!!)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6569 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-12 17:09:40 +00:00
Glenn Rice 73da637a42 Rename wii wc24 system files to lower case as on the wii itself. These files are not detected on linux unless the case matches. This fixes an issue when Mario Kart Wii (and possible other games) is run with a clean user directory that renders the game unplayable.
Also fix some compiler warnings.
On linux don't install the license.txt file.  Most distributions handle license files via a package.  For example on debian based systems this gives a lintian warning.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6568 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-12 15:25:03 +00:00
NeoBrainX 3d0ec2f2f1 Remove the watermark tightness option since it's obsolete now.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6567 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-12 10:59:06 +00:00
skidau 38b3187e8a Changed the LogWindow background colour back to black for Linux and Windows.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6566 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-12 05:38:37 +00:00
skidau b926cb426e Disabled the paired single sum instruction (ps_sum) as it is causing
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
2010-12-12 04:53:18 +00:00
Shawn Hoffman 8e38b1a8a7 HLE_IPC_BuildFilename was actually ignoring the size argument. Fixes "/tmp/sys" error.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6564 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-12 00:38:36 +00:00
skidau ad82dd59b9 Disabled the paired single multiply instruction (ps_mul) in JIT as it is causing the black screen in Sonic Colours. JITIL has a different bug as disabling ps_mul in JITIL did not help the issue.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6563 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-11 22:47:04 +00:00
NeoBrainX 3b6b8b718c Fix some off-by-one errors in the EFB scaling stuff.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6559 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-11 21:07:07 +00:00
Shawn Hoffman c7b736bb56 Remove some debug stuff
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6558 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-11 20:53:10 +00:00
Shawn Hoffman 3528629d9a Use the /sys/replace file for defining char to replace and their corresponding replacement strings.
Method suggested by pune for compatibility across filesystems and nand tools.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6557 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-11 20:51:48 +00:00
Marcos Vitali a9ca9cfd9b BIG FIFO Commit PART 1! Sometimes you need to write everything from 0, so 10 days later Ive rewrited some parts of the FIFO in Dual Core mode. Is pending use the same code for SC mode.
- Improved the GP Register Status: now this is all the time from the fifo loop.
- Improved the Interrupts manage:
	1) Removed All UpdateInturrupts from CommandProcessor Writes and Read.
	2) now the CP interrupts are schedule from the video thread and the fifo loop waiting until this happens
	3) considering Inmediate mode for the CP interrupts
	3) Implemented Interrupt CP Cache State
	4) Implemented only Overflow interrupt in GatherPipeCheck because this need to be detected quickly.
- Implemented Overflow handling like a real HW, when Hiwatermark interrupt happens this write ClearRegister with True en HI and False in LO (FifoIntReset) after that a Control Register is writed and the FIFO is processed  to LO Watermark.
- Removed all ugly code from LO and HI watermark manage
- Removed all ugly code from BP manage
- Change >= by == in the BP clauses
- Removed speed hack (1024 chunk) for better GP Status Control.
- Commented GXSetGPFifo very soon hack
- Commented FackWatchDog hack
- Commented FIFO_RW_DISTANCE = WritePointer hack

This is the beginning and the base for the future., If this broke your favorite game my apologize, only report this and will try solve it. If you have a Overflown don't worry, I've implemented the real solution code using the Overflow Interruption only need continue working for a perfect protection. Why I did it? Because is preferable a accurate and clean fifo instead hack y fifo for improve that. Thanks to DONKO for you awesome Video Plug in and skid for the chatting. PD: I have 7-10 fps more in the star fox video. bye :P


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6554 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-11 12:42:55 +00:00
Glenn Rice 24569aca3d Fix a linkage issue on newer linux distributions created in revision 6544.
Also update the menu link to dolphin-emulator.com


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6553 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-11 01:09:28 +00:00
skidau 0447abef36 Changed the GC controller timer from a host based one to one based on the emulated hardware. This helps the emulator become more deterministic.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6552 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-10 21:24:25 +00:00
NeoBrainX 7473a0cf98 VideoCommon: Use integer arithmetic instead of floating point arithmetic when dealing with EFB scales.
Should fix problems caused by EFB scales other than Native (excluding fractional!). Test whether this fixes games which work fine with native EFB resolution but show glitches with higher internal resolutions.

Also fixed numerous warnings.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6549 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-10 15:54:14 +00:00
LPFaint99 1e0b0bf84d Fixes/Cleanup for the MemcardManager.
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
2010-12-10 07:11:05 +00:00
Shawn Hoffman 2ae7f7f01f Replace characters that NTFS and HFS can't handle with '-'. Should fix issue 3443.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6545 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-10 03:47:00 +00:00
Glenn Rice 06013d5eec Make the cmake check_lib macro more versatile. It first tries pkg-config, and if that fails it then check for libraries and required headers. Also cleaned up the output a little bit.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6544 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-10 02:00:05 +00:00
skidau c718d2e630 Fixed an issue where the emulator would remain paused when attempting to load a non-existent save-state.
Fixes issue 3665.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6543 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-09 12:04:03 +00:00
skidau f353f80302 LLE JIT: Implemented the addr, lsl and lsl16 instructions in the JIT (x64 only).
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6542 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-09 11:52:31 +00:00
LPFaint99 8fd825c18c change filename of isocache to always include extension and filesize.
Fixes issue 3669.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6541 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-08 06:46:59 +00:00
Soren Jorvang ef093a4d35 Use the proper type for printing the OpenAL default device name.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6540 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-07 22:38:03 +00:00
Shawn Hoffman 908273d5f4 Just rephrase something :)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6538 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-07 05:59:18 +00:00
Glenn Rice 2caa685c7f Fix a few more linkage issues in the cmake build.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6537 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-06 13:06:54 +00:00
Soren Jorvang 738e5e55ee Cast size_t to unsigned long for printf to deal with (32-bit)
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
2010-12-05 18:22:41 +00:00
Glenn Rice d171f7277b Fix the nogui build on linux. The software plugin config dialog should not be built.
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
2010-12-05 18:10:13 +00:00
Soren Jorvang c2f84fdccb CLRun is now used everywhere but OS X.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6532 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-05 16:57:32 +00:00
Soren Jorvang 4934cd29b3 Move NSAutoreleasePool handling into the proper entry/exit points
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
2010-12-05 16:18:09 +00:00
NeoBrainX 5910ef259c Fix building with BBOX_SUPPORT enabled.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6530 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-05 16:15:01 +00:00
Soren Jorvang f169def36f First pass at dealing with different size_t/off_t sizes in C90 environments.
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
2010-12-05 15:59:11 +00:00
Soren Jorvang e5311460a9 Earlier versions of wxWidgets do not implicitly include <wx/wx.h>.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6527 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-05 15:36:08 +00:00
Soren Jorvang a754f8e703 We effectively only have a single namespace for private header files,
so the recent addition of VideoCommon/Src/Debugger.h clashed with
DebuggerWX/Src/Debugger.h.

The latter had atrophied anyway, so just get rid of it to resolve the
conflict.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6526 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-05 15:28:31 +00:00
NeoBrainX 9dae1e9674 VideoUICommon: Add descriptive tooltips to many options, part 1.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6525 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-05 14:37:21 +00:00
NeoBrainX f3d6b42e83 Fix VideoCommon build configuration for DebugFast/x64.
VertexLoader: Align bounding box registers properly, the hardware reads them in 2x2 blocks.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6524 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-05 14:31:00 +00:00
NeoBrainX 7854bd7109 Merged the D3D9 debugger into VideoCommon/VideoUICommon:
Separated UI from debugger functionality. Generally cleaned up that stuff.
Most functionality needs to be reimplemented now, but will be available to D3D9, D3D11 as well as OpenGL then.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6523 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-05 14:15:36 +00:00
Shawn Hoffman 9da4fe086b allow gcc to check the format of args being passed to MsgAlert and GenericLog. Fixed nearly all warnings that arose from this, as well as some preexisting ones (some were actually crashes and/or bugs...)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6522 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-05 09:04:34 +00:00
Shawn Hoffman 3e4aa20601 fix a crash that could occur in CompressedBlob.cpp
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6521 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-05 04:07:44 +00:00
Rodolfo Osvaldo Bogado 6df84ddc31 little fix for r6517
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6520 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-05 03:36:37 +00:00
skidau 85d36e38c3 LLE JIT: Jitted another 8 DSP multiplier instructions (x64 only)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6519 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-04 23:20:31 +00:00
Rodolfo Osvaldo Bogado 379fa47b6a little fix for r6513 thank to metatheos for finding the error
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6518 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-04 22:04:46 +00:00
Rodolfo Osvaldo Bogado c8305a7b7d two fixes in this commit:
first fix for issues introduced in sms in r6501, please test for a regressions in The Calling
Second Fix for Issue 3539, by making pixel Dept calculation an option. in games with this issue Enabling pixel depth will solve the issue, in other games disabling the option will not cause speed lost
some cleanup in dlist cache

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6517 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-04 17:58:33 +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
Shawn Hoffman e70e623624 Second attempt at issue 3458. Fixes issue 3458.
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
2010-12-04 03:50:55 +00:00
Rodolfo Osvaldo Bogado 97e3a3ea6f remove fifowait flag, is not needed now as we execute all events that need to be executed even if the cpu is waiting for the fifo.
this way fifo will not avid other thread events to bi executed.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6514 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-04 03:44:56 +00:00
Marcos Vitali f5a28aecb7 Rodolfo and Me fixed ProcessFifoWaitEvents() in CoreTiming, now process the all events and not only the first :P
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6513 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-03 23:12:27 +00:00
Soren Jorvang 63d690e94c 4.4BSD derived OS'es always have 64-bit file sizes.
XXX This should probably be in CommonFuncs.h or something.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6512 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-03 14:56:55 +00:00
skidau 44285c2b30 LLE JIT: Implemented some of the DSP multiplier functions in the JIT compiler. Only the x64 version has been implemented so far.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6511 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-03 13:59:14 +00:00
Shawn Hoffman 3d441febda Attempt to fix issue r3458. I don't have a 32bit linux install, however I know it will at least fix compressing. Please test if uncompressed games run.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6510 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-03 12:42:01 +00:00
Marcos Vitali 08a3b60f8c I reverted my last commit 6508. I was wrong, sorry about that. It is 3am maybe need to rest of the FIFO for while. My Apologies.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6509 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-03 06:08:12 +00:00
Marcos Vitali ad8248cedd The STATUS_REGISTER should return the actual status HI (Overflow) and LO (underflow) watermark because this register can be polled by the game.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6508 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-03 04:58:28 +00:00
Marcos Vitali 9f6dd239b6 Possible FIX to randoms hangs, this correction in the clause fifo.bFF_Breakpoint=false fix hangs in WII Music, I don't have WII sport resort, etc. Please test games with fifo hangs (FPS:0 VPS:99) in yours PC again. :D
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6507 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-03 01:29:43 +00:00
donkopunchstania f91ac92895 Change comparison in specular light function. Fixes issue 1258.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6505 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-01 04:50:25 +00:00
donkopunchstania 1f660de7e5 Avoid repeatedly asserting in SWG plugin when matrix indices don't match. Small change to the transform unit to avoid some unnecessary work. Check if Q is zero before dividing UV coordinates by it. Fixes issue 3454.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6504 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-01 04:26:21 +00:00
Marcos Vitali 0718e1bd77 More fifo work and the Pokemon teaching us ;)
* I've fixed concurrency problem with fifo.bFF_GPReadEnable when the breakpoint is achieved
* I modified when fifo.bFF_Breakpoint is turn off to prevent that the  interruption happens
* I reverted r6483 
* I improved the commit r6495 adding another protection when the GPRead is enabled in CTRL_REGISTER

You can test Pokemon XD in dual core mode is more estable now :P This commit could solve others hangs fifo related in DKC, Sport Resorts, etc. I dont have these games.



git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6503 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-01 03:04:36 +00:00
Glenn Rice 63ec59f6c2 Fix a typo in the last revision.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6500 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-30 14:25:15 +00:00
Glenn Rice 2ac9accc85 More linkage fixing. Fixes issue 3596.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6499 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-30 05:20:36 +00:00
Glenn Rice b5863da915 Possible fix for the rdtsc call in JitIL.cpp on macosx (issue 3531). This also fixes issue 3595 (although that issue was invalid -- we don't suport scons on linux anymore).
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6498 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-30 02:56:44 +00:00
Glenn Rice eda716b164 Fix some linkage issues with the cmake build. This should fix issue 3596.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6497 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-30 01:20:05 +00:00
NeoBrainX 8d123adf64 DX9 debugger improvements:
- Fix "Pause at next" functionality for pixel/vertex shader changes, finished frames and texture changes.
- Implement dumping vertex declaration and vertex/index data.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6496 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-29 16:16:48 +00:00
Marcos Vitali 40c4e5f9a7 More FIFO work. I've implemented intelligent mechanism in GatherPipeBursted to prevent "FIFO is overflown by GatherPipe!". I commented HiWatermark_Tighter parameter. If Hopefully this patch fix this issue. I will delete this definitely. I tested StarFox for 20 minutes and works really fine. :) This patch also can help when the CPU go ahead the GPU and sync in better way.
Plus: I added a _assert_msg_ in FIFO loop when the WriteDistance is negative. Please if that happens report it, this can help to solve strange issues with wrong WriteDistances.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6495 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-28 20:12:41 +00:00
NeoBrainX c540995193 DX11: Fix two crashes. One occured when trying to run a game with D3D 10.0 level hardware, the other one when closing a game when MSAA was disabled.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6494 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-28 17:25:19 +00:00
Glenn Rice fb9387a38e Fix for linux screensaver inhibit caused by a misinterpretation of the window id.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6493 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-28 17:23:13 +00:00
pierre f370650660 Fix the ASM dispatcher to work with linux 64
ESI is not available as callee save register on linux 64, so use R12, which
is available on windows 64, too. The only callee save register still available on
all platforms is EBP, but i guess we don't want to fiddle with that one.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6492 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-28 16:29:58 +00:00
NeoBrainX fa5f206797 DX11: Disable MSAA when using a GPU which only supports D3D 10.0.
10.0 level hardware can't create multisampled depth buffers which can be bound as shader resources as well, but we need that for e.g. EFB access or EFB copies.
Only multisampling the color buffer doesn't work either since color and depth targets must be using the same sample count.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6491 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-28 15:23:51 +00:00
skidau c79f41d114 LLE JIT: Speed up the dispatcher by removing the compiled block check. Initialised the blocks with a stub which calls the compiler.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6490 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-28 13:06:52 +00:00
skidau 93a901dd1d LLE JIT: Speed up the dispatcher by removing one of the cycle checks. This results in the DSP executing cycles slightly above what it is supposed to. This is not a problem currently but might be later on.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6489 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-28 12:28:03 +00:00
skidau 9c1fb241c7 LLE JIT: Speed up the idle skip detection by moving the logic into the block and removing it from the dispatcher. This works because we can detect the idle skip blocks at compile time.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6488 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-28 11:04:50 +00:00
skidau 6a6fb9cce9 LLE JIT: Added an ASM dispatcher. Should help pave the way for future optimisation.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6486 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-28 05:28:21 +00:00
Marcos Vitali 88916a61da In the command processor when FIFO_READ_POINTER is reading Is better return fifo.CPWritePointer instead fifo.CPReadPointer.
In this way it prevents wrong fifo.CPReadWriteDistance in the future. That should fix RE0 Issue 2846 and others "Warning: GFX FIFO: Unknown Opcode (0x4d)" in dual core mode. 

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6485 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-28 03:20:20 +00:00
pierre 91eb729aaf Core/DSPCore: Implement jit emitters for lris and mrr.
Also add the mask for ADPCM predictor, like r6480 does.

Tested 64 bit linux/windows. At least compiles for 32 bit windows, but
with these binaries most of my guest software fails with
DSPLLE(interpreted and jit) when it gets to do actual work.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6484 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-27 23:40:09 +00:00
Marcos Vitali 762563a026 If there is a SetBreakPoint and the actual distance is enough to achieve the BP, we wait for the FIFO Loop in dual core mode. That fix Pokemon XD in game in dual core mode (also maybe this fix Issue 3452) and hopefully others FIFO hangs related with BP. I test games like SMG and don't produce slowdowns. If you have any slowdown about this commit. Please report it.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6483 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-27 19:36:18 +00:00
NeoBrainX 7698d85a8e DX11:
- Speed up MSAA by using custom resolve shaders instead of ID3D11DeviceContext::ResolveSubresource().
- Fix EFB access when MSAA is enabled.
- Implement the "force linear filtering" option.
- Compile shaders using shader model 4.1 or 5.0 if available.
- Some minor cleanups.

Who cares about DX9 and OGL anyway :P

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6481 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-27 11:11:05 +00:00
Jordan Woyak e6658d5339 Minor change to ease video plugin merging. Made static NativeVertexFormat::Create function into a virtual function of VertexManager. I believe this is the last bit of code which is only declared in VideoCommon and defined in each of the plugins.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6479 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-26 09:25:08 +00:00
gnick79 2e59d26133 Related to Texture's glitches:
* fixed a bug on QUAD-Vertex generator

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6478 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-25 20:39:54 +00:00
Glenn Rice fae12f43c2 Inhibit the screensaver while the emulator is running on linux. Fixes issue 3279. Uses the xdg-screensaver method suggested in that issue.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6477 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-25 02:26:46 +00:00
Marcos Vitali 7fe6a0b451 Corrected the FIFO breakpoint clause in Single Core mode too. That fix Pokemon XD (Only single core mode) Dual core mode suffer distances problems like RE0.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6476 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-25 02:25:27 +00:00
Jordan Woyak f0ac60935c Renamed the "Disable Copy to EFB" option in the game properties(and game ini) to "Enable Copy to EFB", as it is named in the global video settings. (fixes issue 3556)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6475 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-25 02:19:06 +00:00
Matt Callaghan 181f03551c Even tinier commit. I hope nobody around here has a problem with those.... :P
Just hiding the 3D Vision option for DX11 and OGL instead of greying it out.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6474 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-24 23:05:50 +00:00
NeoBrainX 76b9e975d5 DX11: Fix mipmaps. Someone forgot creating them at the proper time ;P
DX11: Fix a DX11 debug runtime error caused by the vertex shader output signature and the pixel shader input signature not matching if per-pixel lighting is disabled. Someone forgot disabling those pixel shader parameters ;P
DX11: Enable use of dynamic textures wherever possible.
DX9: Remove two unnecessary TODOs. Someone forgot removing those since they've been obsolete for a long time ;P

Anyway, at least working mipmaps and dynamic textures should increase DX11 performance a bit. And "a bit" is more than my usual "marginally" ;)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6473 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-24 19:13:19 +00:00
Glenn Rice 84a72e90b0 Migrate the opencl setting completely to the gfx config dialog.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6472 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-24 17:30:04 +00:00
Matt Callaghan ebe5472e1d Tiny commit. Just re-added 3D Vision to the config dialog. Hope nobody minds, I made sure it gets greyed out and all that. Sorry about my lack of commits, got another ongoing project that's gotten me a bit hooked.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6471 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-24 17:13:12 +00:00
skidau 2808f75f74 Corrected the FIFO breakpoint clause in the FIFO loop. This fixes Super Monkey Ball: Banana Blitz, Super Monkey Ball: Step & Roll and Pokemon XD.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6470 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-24 06:02:03 +00:00
NeoBrainX d36ede020c DX11:
Add multisampling support.
EFB access doesn't work with MSAA enabled, yet.

Additionally clean up some stuff, fix a memory leak, ...


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6468 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-23 19:58:02 +00:00
Glenn Rice 6d93a6b698 Linux build fix for the windows build fix in r6465. I tested this on both windows and linux.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6467 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-23 15:52:42 +00:00
gnick79 b197f8600c * Updating Linear DiskCache version in reflection with changes introduced in r6463
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6466 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-23 15:51:08 +00:00
nodchip 5647bcd869 JitIL: Fixed the compile error in r6462.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6465 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-23 14:50:25 +00:00
Glenn Rice f915509fff Linux build fix.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6464 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-23 14:00:40 +00:00
gnick79 4267adbd5e Related FOG changes:
* revert back to proper upscale mantissa of parameters A and C
* properly downscale magnitude to 0.24 bits instead than ≡0.23
* Z Eyespace conversion for projection by original patent concept

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6463 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-23 13:57:01 +00:00
nodchip b0c94a47f9 JitIL: Implemented JitIL IR Disassembler. If you want to use it, add "OutputIR = True" in the "Core" section of Dolphin.ini.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6462 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-23 13:35:44 +00:00
skidau 1830342d66 Quick FIFO fix for Donkey Kong Country Returns. Added a FIFO breakpoint check in the main FIFO loop. Aligned some of the FIFO registers to 32 byte boundaries, matching the VideoSoftware plug-in code.
Fixes issue 3536.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6461 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-23 10:51:14 +00:00
Jordan Woyak 49120d113f Reorganized some video config dialog related code. Deleted remnants of the old DX11 config window.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6460 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-22 22:17:35 +00:00
Glenn Rice cefaa393e6 Layout should not be called until after a sizer is inserted into its parent. This fixes the "gtk_widget_size_allocate(): attempt to allocate widget with width -5 and height 17" type console warnings that are annoying on linux. If there are issues with this on other platforms let me know, but there shouldn't be.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6459 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-22 15:25:59 +00:00
Jordan Woyak 3ebd09efc9 Fix "Virtual XFB" always being set when opening video config dialog. (Fixes issue 3537)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6458 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-22 10:39:24 +00:00
Glenn Rice a3c46990f6 Revert to gettimeofday on posix systems. I give up.
Temporary fix for OSX in JitIL.cpp
This revision should build on OSX again.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6457 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-22 02:42:53 +00:00
Glenn Rice 222c2d1297 Revert revision 6464. _POSIX_MONOTONIC_CLOCK is not used in that way.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6455 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-21 21:31:37 +00:00
Soren Jorvang 92fe490270 POSIX feature symbols can be defined even if not implemented.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6454 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-21 20:45:42 +00:00
Glenn Rice 39a4781a5f Check if CLOCK_MONOTONIC is supported before using clock_gettime.
Fix the cmake check to see if -Wno-unused-result is supported by the compiler.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6453 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-21 19:13:55 +00:00
NeoBrainX ee21237d6a Polish, fix and otherwise improve the video plugin configuration dialog:
- Add some info about a backend's feature set (MSAA, Real XFB, EFB to RAM, ..) to VideoConfig
- Gray out options if they aren't supported by the backend or if changing them doesn't affect anything (e.g. changing STC mode if STC is disabled)
- Allow signed bytes for D3D11. Not sure if this causes glitches, but it should work
- Call wxEvent.Skip() in the event function handlers, not sure if this fixes any bugs but the old code definitely caused bugs during development of this patch
- Fix a memory leak in the configuration dialog if D3D11 is used
- Other minor stuff that doesn't need to be mentioned or which I forgot

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6450 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-21 14:47:28 +00:00
Glenn Rice 86dc8d09fe For the cmake write generate the svnrev.h file in the build directory instead of in the source so that a proper out-of-source build can be done. Fixes issue 3528.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6449 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-20 20:20:12 +00:00
Glenn Rice 7788bac40c Fix ogl screenshots for windows.
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
2010-11-20 03:24:51 +00:00
Glenn Rice ef55177ed6 Implement JitIL profiling on linux. I also tried implementing __rdtsc using assembly and didn't really see a speed improvement so went with clock_gettime.
Also changed other gettimeofday calls to clock_gettime, which is supposedly more accurate.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6447 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-20 00:22:56 +00:00
Shawn Hoffman d1264b3258 JitIL Profiler needs time.h
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6446 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-19 17:43:12 +00:00
Glenn Rice c93aaae1d8 Linux build fix. When I have time later I will implement nodchip's JitIL profiling on linux.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6445 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-19 17:35:01 +00:00
nodchip b0c20fe643 JitIL: Improved the speed of JitIL time profiler.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6444 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-19 15:17:26 +00:00
nodchip 96cdb1ad07 JitIL: Removed ENABLE_JITIL_PROFILING macro and added an entry in setting file.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6443 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-19 07:48:48 +00:00
nodchip 13370ca6ca JitIL: Implemented a simple time profiler. Unfortunately, this is currently for windows only. Please fix it.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6442 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-19 06:24:59 +00:00
Soren Jorvang 63aae7e5e0 Build missing BPFunctions.cpp with SCons.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6440 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-18 23:25:40 +00:00
Glenn Rice f8fbcecad6 Encode framedumps in AVI format on linux as on windows. This adds the additional dependency of libavformat-dev. Remember if you want raw framedumps as before add -DENCODE_FRAMEDUMPS=OFF to the cmake command line.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6438 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-18 16:46:17 +00:00
Jordan Woyak 0816fa2629 Fixed RealXFB being enabled when XFB box is unchecked. Moved some shared code into VideoCommon. Renamed EFBCopyDisable setting to EFBCopy"Enable" in the code and inifile. Fix DX11 settings not loading. Fixed Issue 3378.(graphics settings dialog displaying gameini settings in game)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6435 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-18 03:50:50 +00:00
Jordan Woyak 159ed43f67 Move some shared gfx plugin code into VideoCommon. Changed "Renderer" class to use virtual functions. (setting stuff up for video plugin merging)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6433 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-18 02:21:26 +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
Glenn Rice 0644295f3d Build fix. Remove some obsolete code. Fix some compiler warnings.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6428 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-16 21:14:19 +00:00
Shawn Hoffman 9dd60c6115 make Audio Interface more clear. Should have no behavioral changes. The comment block in AudioInterface.cpp lays out how real hardware is...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6427 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-16 20:36:57 +00:00
Glenn Rice 4f81997c14 Fix the no gui cmake build.
Add a version check for avcodec and swscale libraries.
Fix a bug in the xlib wiimote emulation button configuration.  If you are using a mouse button for wiimote emulation you may need to adjust your settings.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6426 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-16 04:34:52 +00:00
Jordan Woyak 71f842e8c0 Cleaned up NetPlay a bit, fixed some UI text.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6425 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-16 01:55:29 +00:00
Glenn Rice d0e8d8a509 Linux cmake build fix. I fixed the scons build as well, so this might fix the macosx build also.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6424 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-16 00:13:33 +00:00
skidau 0c5ccf7156 Tweaked the VBeam logic enough to fix Endless Ocean 2. This might also fix a few other games that have been black screening on boot recently.
Fixes issue 3472.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6423 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-15 11:32:30 +00:00
Jordan Woyak db35fe4100 Made the graphics plugins use a shared configuration dialog. There are a few minor issues: unsupported settings are shown, dx9 3d settings are missing, tabs/groups could be organized better, could use tooltips, cmake and scons need to be fixed.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6422 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-15 09:54:07 +00:00
Jordan Woyak 73ed235fd1 Changed macro for disallowing copy-ctor and =operator into an inheritable class. Removed IrPointer.ini (no longer used)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6421 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-15 05:29:10 +00:00
Jordan Woyak b4ffd640b7 Made LinearDiskCache a template class. Keys are now some POD type (fixed size). Eliminates casting and key size checking.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6420 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-15 05:22:03 +00:00
nodchip b025752192 JitIL: Fixed the wrong constant value. It was lower than the actual number of registers.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6419 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-15 04:06:55 +00:00
Soren Jorvang 62a7f101a7 Some compiler warnings and eol-style.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6418 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-14 23:56:26 +00:00
Jordan Woyak 0da42fcca7 Merged some FramebufferManager code into VideoCommon.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6417 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-14 23:31:53 +00:00
Glenn Rice 2378b443c1 Build fix for windows.
Also a correction to the frame rate for the mpg encoding.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6416 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-14 22:07:52 +00:00
Glenn Rice 50882c8d30 On linux encode frame dumps in MPG format instead of writing raw frames. To enable this portion of the code you must have libavcodec-dev and libswscale-dev installed (package names for Ubuntu).
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6414 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-14 21:14:26 +00:00
Rodolfo Osvaldo Bogado a4fe774528 little bug fix for my last commit
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6413 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-14 18:25:01 +00:00
j4ck.fr0st b5e4f7f622 OSX buildfix
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6410 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-14 15:12:07 +00:00
Rodolfo Osvaldo Bogado c21f804c48 more work on dlist caching now should be a little faster
a little bugfix in vertex loading and some fixes.
not much time to work these days but  at least i can spend a little time fixing thing.
please test for regressions.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6409 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-14 14:42:11 +00:00
Soren Jorvang b2e1ea3279 UDPWiimote.cpp and UDPWrapper.cpp are now used again.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6408 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-14 14:02:16 +00:00
Shawn Hoffman 43778ac920 update wiiuse vcproj
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6407 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-14 13:36:21 +00:00
j4ck.fr0st 100ab9274f ...and the SCons/cmake stuff :)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6406 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-14 13:34:41 +00:00
j4ck.fr0st 01ac354e97 Move UDPConfigDiag into Dolphin, to allow building of UDP Wiimote again.
Please test this, I don't have any phones or whatever capable of communicating with it.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6405 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-14 13:30:57 +00:00
Soren Jorvang 8b9b66911f Clean up OS X wx library handling a bit.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6403 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-14 06:02:44 +00:00
nodchip d888f13bb9 VideoCommon: An experimental fix for Issue 3493. Changed _mm_load_si128 to _mm_loadu_si128. I could not test the bug because I don't have Sonic Colors.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6402 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-14 04:29:20 +00:00
Soren Jorvang 9b12ad6c94 Allow building on OS X with static wx libs.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6400 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-14 03:10:11 +00:00
Glenn Rice 17662d4ac6 Change the cmake check_lib routine to use REQUIRED/OPTIONAL instead of TRUE/FALSE.
Add a check to see if -Wno-unused-result is supported by the compiler.
Fix some compiler warnings in the wiiuse code.
Fix a bug in the wxGTK panic alert code.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6399 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-13 22:07:27 +00:00
Soren Jorvang 02edf66b49 Simplify OpenCL compile-time detection on OS X.
Turn wiiuse io_osx.m into Objective-C++.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6398 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-13 20:02:01 +00:00
NeoBrainX a913295d70 Apparently, that SConstruct file was correct already...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6397 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-13 19:53:24 +00:00
NeoBrainX e79fcce1d4 Fix compiling wiiuse on with CMake and SCons
Also fix confusing formatting in a SConscript file

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6395 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-13 19:36:33 +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
Soren Jorvang 146ddff550 Simplify GenericLog() for C/C++.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6391 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-13 00:10:00 +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 2a7886322d windows: don't bother trying to copy a wiiuse dll since it isn't created anymore
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6387 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-12 17:58:40 +00:00
Glenn Rice c0bdf4de81 Several little things.
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
2010-11-12 05:05:27 +00:00
Shawn Hoffman 7800d68fee add ProcessorInterface::Read16. wii64 uses this (by accident), but real hardware supports it, so why not.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6384 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-12 04:20:00 +00:00
mylek4 67f850dd37 DSPHLE: Added an option for 48khz output and supporting upsampling code.
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
2010-11-12 03:39:07 +00:00
Glenn Rice c6d95c9087 Remove my DESTDIR hack from the cmake build. It turns out this is built into cmake and works in the same way it does with the gnu autotools. Use it in the standard way with "make DESTDIR=/desired/location install".
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6382 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-11 15:50:52 +00:00
skidau d4b72eaae5 Added a projection hack for Metroid: Other M. This fixes the black screens that occur in cut-scenes. Patch by Trevor002.
Fixes issue 3477.
Fixes issue 3127.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6381 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-11 09:22:19 +00:00
skidau 45f1948d33 Fixed double game entries in the game list. This occurs when there are two or more games of the same name in different folders. Fix by Lostmoment.
Fixes issue 2857.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6380 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-11 09:17:57 +00:00
Glenn Rice adbd7fbd4a Fix StringFromFormat hopefully for the last time. This should be more efficient than before. Thanks to shuffle2 for the windows code.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6379 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-11 04:59:50 +00:00
Jordan Woyak 36d43365e6 Windows build fix
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6378 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-11 01:48:08 +00:00
Shawn Hoffman 33421457d6 Quietly log writes to 0xc0003030. Written to only by bs1, and we don't seem to really care about it.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6377 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-11 01:12:01 +00:00
Shawn Hoffman ce7c5099c7 make projection hack and emustate settings default to none/not set instead of -1
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6376 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-11 01:00:01 +00:00
Glenn Rice 5078f430c3 Make gui panic alerts thread safe in linux.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6375 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-11 00:55:06 +00:00
Glenn Rice 072a698856 The change to StringFromFormat was overwriting the last character with the NULL terminating character.
Also update a deprecated function call.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6374 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-10 23:23:12 +00:00
NeoBrainX 38d06e76d6 DX11: Add an option to choose the internal resolution.
DX9: When clearing the back buffer in Renderer::Swap(), use IDirect3DDevice9::Clear instead of a clear quad if possible. Should improve performance marginally.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6373 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-10 16:43:27 +00:00
mylek4 1991a4f3a5 Added XAudio2 backend.
Windows audio backend with lower latency.

Audio never glitches on my machine but the number of buffers may be set too aggressively. If you run into problems try turning up NUM_BUFFERS in the h file and leave some feedback.

From my tests games seem to prefer filling the buffer with smaller chunks. For this to work the callback that fills the buffer needs to either spin or run async so I went with async.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6371 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-10 08:28:26 +00:00
Jordan Woyak 6ece147568 StringUtil fix
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6370 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-10 06:10:43 +00:00
Glenn Rice 895f1500a5 Fix for my tweak in the last commit. I knew I had that working at one point.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6369 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-10 05:18:20 +00:00
Glenn Rice 92a5b72b42 Linux build fix. stricmp does not exist on linux. Also a small tweak to the StringFromFormat routine.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6368 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-10 04:44:25 +00:00
Jordan Woyak 26f84c1e74 StringUtil cleanup. Nothing seems broken.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6367 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-10 04:12:31 +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
Glenn Rice bee873a30c Fix the annoying gap in the OpenGL configuration dialog in the "General" tab between "Use Real XFB" and "Wide screen hack".
Also link the dolphin-emu executable against GL in the cmake build.  Why?  This seems to fix the segmentation fault on stop issue.  Although curiously enough, linking the dolhpin executable against the system shared library SOIL fixes the problem too.  It doesn't work with the static version of SOIL build in the externals.  The reason the problem disappeared with the scons build is that the executable is implicitly linked against GL since the linker flags are set up to be thrown in everywhere.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6364 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-09 03:08:20 +00:00
Glenn Rice e72ae04e5c Setup opencl to work like most of the other externals. Autodetect native shared libraries and if not found fall back to the static libs built from the externals.
Also some general clean up of the main CMakeLists.txt file.  I think it is nice to keep the checks and analysis of the results together.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6363 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-09 00:29:07 +00:00
Matt Callaghan 15d74b7461 General cleanup to 3D Vision hack, fits in more with the Dolphin coding style now. Also, fixed the crash that would occur when using a mouse button with 3D Vision enabled.
Not sure how to fix Dolphins hotkeys when 3D Vision is enabled (I do know a way, but it's messy and I don't want 3D Vision messing with Dolphin's cleanliness).

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6362 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-08 22:17:51 +00:00
pierre 2e0274dd1f Core/DSPCore: Implement Jit emitters for all extended operations.
May break things, although my testing didn't reveal any regressions.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6357 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-07 23:43:26 +00:00
pierre 874dab37f8 Core/DSPCore: Make Jit read from coefficient ROM when told to do so,
change the unit test to catch this bug if it turns up again and two more
zeroWriteBackLog() calls.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6356 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-07 23:15: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
NeoBrainX 58c8e7cb48 DX9/DX11: Remove some dead or obsolete code.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6354 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-07 10:11:58 +00:00
skidau 6666b400a3 Updated with a less aggressive optimisation to EFB copy to RAM. The destination texture now does not get invalidated if its hash is found in the texture cache. Fixes Metroid Prime 3.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6353 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-07 04:28:33 +00:00
skidau 8775abacc6 Optimised EFB copy to RAM.
The finding was that 99% of the time, textures are static in memory. However, Dolphin would pessimistically continue to decode and copy the same texture every time.  The optimisation is to check if the texture matches what is in the cache, and if it does, Dolphin should early exit.

The result is the speed in New Super Mario Bros Wii increased 35% with spinning coins.  Still not as fast as EFB copy to texture though.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6352 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-06 04:46:44 +00:00
Glenn Rice d0afc20596 Added checks for portaudio and opencl to the cmake build system.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6351 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-06 03:49:18 +00:00
skidau f2f0f373a6 Fixed GeckoCodes.org retrieval for WiiWare.
Fixes issue 3438.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6348 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-05 20:58:27 +00:00
Glenn Rice 2383e2b0f5 Improve the compiler flags for the cmake build system. -fPIC only needs to be specified for static libraries that are linked into shared libraries. cmake automatically uses -fPIC for shared libraries. Also ported several other needed compiler flags from the scons build. Set up the debug build, enabled with "-D CMAKE_BUILD_TYPE=Release", to work with wxWidgets debugging.
Note that most users will want to use the release build to get a -O3 optimized build.  This can be enabled by adding "-D CMAKE_BUILD_TYPE=Release".


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6344 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-05 02:23:24 +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
Glenn Rice 4ac40687ea Okay. Big (possible controversial changes) to the cmake build system.
I am officially killing the local/global build crap.  The "local" build thing should never have existed.  There is now only one build that is essentially what the "global" build was before.  This is the way a proper build system should work.  I will soon write a wiki page to describe how to properly use the cmake build system, and how you can still set things up to get the "local" build from before.  However, that type of build should be considered a developer tool, and not the way that dolphin-emu should be built.
Briefly, to use cmake now do the following from the toplevel of dolphin's source:
mkdir Builddir
cd Builddir
cmake ..
make
make install (you may need superuser privileges)

Note that the scons build is still building dolphin in the old way.



git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6341 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-04 13:47:17 +00:00
Shawn Hoffman 45c92d27f2 fix for r6337: don't restore cached settings if a gameconfig was not used.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6340 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-04 12:50:44 +00:00
skidau de62a190f1 Removed one of the extraneous conditions from JIT64 UnsafeLoadToEAX.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6339 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-04 11:43:44 +00:00
Glenn Rice 4b0d4ded98 More cmake work.
Added autodetection of shared libraries.
Added a check for Xrandr.
Fix OpenAL linkage.
Copy User and Sys directories to lower case in the binary directory.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6338 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-04 02:01:07 +00:00
Shawn Hoffman 7b23bf666f hackfix for per-game settings overriding the main settings. This quick and dirty hack goes out to billiard in return for his own generous hacks. fixes issue 3004. it's a hack, so it should be replaced with a more sane method...
also: hacks.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6337 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-03 07:37:13 +00:00
Shawn Hoffman e1549658a2 gray out ntsc-j option during emulation
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6336 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-03 07:16:03 +00:00
Shawn Hoffman 9df772ed89 Make NTSC-J setting an option. This allows games which use Japanese ROM fonts to work correctly. Unfortunately trying to autodetect when to enable this setting is not good enough.
Also move Progressive Scan option to main display settings, since it affects both GC and Wii.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6335 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-03 06:28:47 +00:00
Glenn Rice 381f92b151 Fix some linkage issues with the cmake build system.
Also X11 is required on *nix systems.
GTK2 is required for building the wxWidgets builds on *nix systems.
Added a check for pulseaudio.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6334 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-03 04:13:36 +00:00
Shawn Hoffman 95d9cb3a0f unbreak japanese rom font, broken by r6297
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6333 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-03 01:52:09 +00:00
skidau 785154b89f JIT fix for the lfs instruction in x64 builds. Fixes Ultimate Spider-man.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6332 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-02 10:27:57 +00:00
skidau d5c941a3ba Added NullSound to CMake without typo
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6331 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-02 03:35:44 +00:00
skidau 61c847eecc Added NullSound to CMake
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6330 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-02 00:39:52 +00:00
skidau 0af0929a88 Re-implemented the NullSound back-end. Allows Dolphin to be used on hosts with no sound hardware. Emulates strict DSP timing in the DSP HLE plugin.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6329 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-02 00:16:49 +00:00
skidau 13dda74946 Allow the game to set the DSP sample rate. Fixes Bomberman Generation.
Fixes issue 2523.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6328 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-01 23:41:20 +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
pierre 4b9831cdce Core/DSPCore: Extended opcode handling fixes
* Make writeToBackLog private to DSPIntExtOps.cpp 
  (JIT variants of 'l and 'ln are disabled and broken as is)
* Make zeroing of the backlog conditional on doing an interpreter fallback and
  do it at a few more places
* Fix selection of cleanup for extended opcodes.
* Fix the DSP unit tests to correctly emit the function prolog/epilog
  (else EBX wouldn't be saved)
* Add a few more DSP unit tests


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6325 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-31 23:26:18 +00:00
Jordan Woyak 2f2a76b28a Attempt to fix real wiimote delay issues experienced by some. (Issue 3428)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6324 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-31 19:22:31 +00:00
Soren Jorvang 922bb419f4 Remove vestiges of standalone memcard manager build.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6321 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-30 10:54:41 +00:00
NeoBrainX f7d1184d87 VideoCommon: Properly upscale the mantissa of some fog params.
Might fix games with minor gfx glitches, try e.g. Super Mario Sunshine or Super Mario Galaxy 2.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6319 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-29 21:37:20 +00:00
Soren Jorvang 8ba671f849 The wxProgressDialog delay bug has been fixed since 2.9.1.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6315 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-26 12:08:14 +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
NeoBrainX ab53c84dcf Properly emulate the alpha read pixel engine register function (used for EFB peeks).
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6313 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-24 19:52:52 +00:00
Nolan Check b71cd5f383 A couple minor things I have left over
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6312 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-24 19:41:10 +00:00
NeoBrainX 52cd3aee95 Fix a major speed regression from r6288:
Upon texture reloading, the cache entry hash wasn't updated and thus we effectively disabled any texture caching in that case.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6308 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-24 15:16:31 +00:00
skidau 56e79aa87d Added a safer OpenCL shutdown procedure.
Fixes issue 3015.
Fixes issue 3089.
Fixes issue 3099.
Fixes issue 3360.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6307 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-24 04:17:36 +00:00
Nolan Check 2ec3db44ed OpenGL plugin: Support for dual-source blending, CURRENTLY DISABLED. It doesn't work yet. To fix it, we may need to convert all our shaders to GLSL so that we can use glBindFragDataLocation.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6306 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-23 19:55:19 +00:00
skidau 7410056536 Added the wait/sync back in the video thread on XFB swaps. Fixes issue 3391.
Changed the VI interrupts to occur on writes instead of reads.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6304 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-23 12:26:57 +00:00
NeoBrainX ef75d96655 Main change: Implemented EFB pokes in DX9/DX11.
Games affected by this change: Mario Smash Football, Mario Strikers Charged Football, Monster Hunter Tri.
Other games possibly affected: Shaun White Snowboarding, Resident Evil Code: Veronica, Baten Kaitos.
This implementation will decrease performance if the game uses this feature, but the glitches will be gone. I'll add an option for this in a later commit. EFB pokes are somewhat slow in DX11 right now, speed should be okayish in DX9 though.

Other changes:
- SOMEWHAT cleaned up the EFB access code in DX9
- Fixed incompatible parameter list of AccessEFB and TVideo_AccessEFB.
- Fixed a theoretical bug in ReplaceRGBATexture2D, add support for STAGING textures
- Removed unused parameters in various DX9 functions


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6300 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-22 19:40:05 +00:00
nodchip e9d115a8b1 VideoCommon: Fixed the crash when the code cache of DLCache is full.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6299 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-22 03:50:44 +00:00
skidau e9734084ee VideoInterface and Progressive Scan fixes
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
2010-10-21 14:50:42 +00:00
Nolan Check 95cfca08e2 Put infrastructure in place so that other plugins may support dual-source blending.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6296 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-21 05:22:18 +00:00
Nolan Check cb453a0fb3 DX11 plugin: Do destination-alpha in a single pass. No more drawing the same geometry twice! SMG is faster now because it uses destination-alpha extensively. This uses dual-source color blending, a DirectX 10-level feature. The equivalent OpenGL function comes from the GL_ARB_blend_func_extended extension, which was made core in OpenGL 3.3.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6294 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-20 03:11:22 +00:00
Nolan Check 0e534dd033 Clarify texture cache code. Previously, there were THREE sets of texture dimensions, and it was hard to tell which set was for what purpose.
Now, there are two:
Real dimensions: Width and height of the original GameCube texture
Virtual dimensions: Width and height of the texture used by dolphin-emu's renderer

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6291 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-20 00:39:45 +00:00
Soren Jorvang 9a03484d64 Goto'ing past variable initializations is undefined behavior.
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
2010-10-20 00:12:41 +00:00
Jordan Woyak 7b45ac6e01 Made it easer to use mouse/keyboard and a gamepad together on the same emulated wiimote. Renamed mouse buttons from "Button N" to "Click N" so they do not conflict with gamepad buttons.(hopefully not too ugly, mouse buttons will need to be reconfigured) (Fixes issue 3363)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6289 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-19 23:11:22 +00:00
Jordan Woyak cf05cca7a6 Merged common texture cache code from video plugins into VideoCommon. (DX11 native mipmaps currently broken, disabled) Hopefully everything else should still be working.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6288 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-19 22:24:27 +00:00
Shawn Hoffman 16ff21b0d5 display fprs in the registerview as hex, and allow editing of the values
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6287 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-19 13:35:25 +00:00
j4ck.fr0st 8b49d5ccca Don't store Render window size when the window is minimized (Fixes Issue 2940)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6286 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-17 12:42:04 +00:00
skidau f444dd551b Quick FIFO fix to get NBA JAM working.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6285 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-16 10:16:05 +00:00
skidau c4c56d3146 Added Wii disc speed emulation
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
2010-10-15 21:46:51 +00:00
nodchip 8e6a866a5b JitIL: Fixed the folding rules. This was the underlying bug of the bad collision checking bug reported in Issue 3097.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6283 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-15 07:48:20 +00:00
nodchip 59381f8343 JitIL: Added an IR instruction. Fixed the NSMBW bug reported in Issue 3097.
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
2010-10-15 00:45:45 +00:00
pierre 6d2c35a332 Core/DSPCore: Jit: only end emitting the current block when hitting an
unconditional branch(or idle skip), emit check g_dsp.pc and return when
hitting a conditional branch.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6281 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-14 13:17:38 +00:00
pierre 47eb5c3416 Core/DSPCore: Only check for internal exceptions in DSPEmitter::checkException, but
call it for every instruction, like in DSPInterpreter::Step. Fix the analysis lookups
for DSP_IDLE_SKIP and DSP_LOOP_END.

After this patch, the block_size and the return value from the block always match,
except when an internal exception is detected. This will change in a later patch,
so we actually get some benefits from checking if we need to call HandleLoop().


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6280 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-14 11:37:59 +00:00
Shawn Hoffman 6e6a0be8c4 allow dumping of mem2 as well as aram. thanks Treeki
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6279 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-14 04:07:04 +00:00
pierre e9d91fb9f3 Core/DSPCore: Initialise all of the code blocks
It is pure luck that we did get a fresh (thus zeroed) memory area when not putting DSPLLE on thread. ClearIRAM() is supposed to only clear the non-static part.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6278 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-13 21:07:16 +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
Shawn Hoffman f8d8445805 buildfix for debug/debugfast x64
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6275 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-13 03:07:58 +00:00
Soren Jorvang f862ed4782 The --wiimote_plugin command-line option is no longer relevant.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6274 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-13 00:19:10 +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
Soren Jorvang e81a10fb44 Temporarily re-enable SDL pad input on OS X.
Placeholder SConscript for VideoMerge plugin.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6272 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-12 22:26:30 +00:00
Soren Jorvang a89b8f4a7d Fix scons build.
OS X real wiimote support not yet tested post-merge.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6271 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-12 20:14:09 +00:00
Jordan Woyak 7e08fc19fc Moved WiimoteNew into Dolphin and eliminated the old wiimote plugin. Removed wiimote plugin support. Moved input dialog related InputUICommon stuff into DolphinWX. Removed now unused InputCommon files. UDPWiimote stuff is temporarily disabled until it is reorganized so Core won't depend on wx. Real wiimotes are now initialized on first need(wiimote diag open or game start) and left initialized until Dolphin exit.(maybe this will work better for Linux/OS X) (scons probably needs some fixes)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6270 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-12 19:42:29 +00:00
Jordan Woyak de3ad37299 WiimoteNew: Made emulated wiimote return read error when motion plus register area is read.(Fixes "Sonic the Hedgehog 4" input, perhaps others) GCPad/WiimoteNew: Made DirectInput use the Dolphin window hwnd for SetCoopLevel instead of GetForegroundWindow.(attempt to fix issue where gamepads sometimes don't work until "Refresh" is pressed)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6269 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-11 22:19:47 +00:00
skidau 7733b84bc1 Added a game option to emulate the disc transfer rate. This is needed for some games like Mario Golf and Fire Emblem: Path of Radiance.
Fixes issue 1992.
Fixes issue 2519.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6268 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-11 12:38:17 +00:00
Rodolfo Osvaldo Bogado 7797b9d753 a little bugfix and a small optimization.
this should fix issue 3313 but i can't test it


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6267 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-10 14:35:31 +00:00
pierre 34909ecebc Core/DSPCore: Make the JIT blocks return the number of cycles executed.
The block_size seems to be not reliable, even after trying to more closely match
the interpreter by looking at the analysis for (addr+opcode->size-1) for detecting
the end of the block.

Since we need to "calculate" this number shortly before returning to
RunForCycles, it seemed logical to use the (up to now) unused return value
of the blocks.

Improves SMG2 here.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6266 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-09 21:43:57 +00:00
Jordan Woyak cf5639af54 GCPad/WiimoteNew: Reordered some stuff in DirectInput device enumeration.(makes certain gamepads work now, hopfully doesn't break other pads) (Thanks to YoD for helping debug) Also fixed something ridiculous in the input config dialog. :p
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6264 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-09 07:24:33 +00:00
pierre f3b144d563 Core/DSPCore: Fix register use in two (currently) unused functions, correct the
IsSameMemArea check in the rest of the file.

Looks like this is simply a copy-paste error, that i dutifully "fixed" for 64 bits.

No idea if this fixes anything, but it brings JIT more in line with the interpreter.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6263 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-07 18:36:08 +00:00
Jordan Woyak 31c7fb7a33 Fix wiimotes.(fixes issue 3195)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6261 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-06 02:28:52 +00:00
Jordan Woyak bfd04e380e WiimoteNew: Added button mappings for tables and crossfade slider on emulated turntable extension.(completely untested in game)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6260 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-05 21:43:51 +00:00
NeoBrainX 4153e6eee1 Fix building with --as-needed.
Fixes issue 3301.
Patch by Christian.Morales.Vega, thanks ;)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6258 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-05 18:10:06 +00:00
Marko Pusljar 6c8fc66698 small HandleLoop() optimization for dsplle-int
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6257 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-04 12:50:16 +00:00
NeoBrainX 9ffc071e34 Some stuff which was still lying around on my hard disk:
- Add a sanity check in CRenderFrame::MSWWindowProc. Possibly reduces the risk of a crash when starting a game and immediately closing the emulation window when using the DX9 plugin.
- DX11: Add the resource usage as a parameter to CreateQuadVertexBuffer, possibly to be used in the future.
- reduce the size of the EFB access buffers from 4x4 to 1x1 since they needn't be bigger anymore
- some fixes to the recent hires commit.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6256 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-04 11:09:32 +00:00
baby.lueshi d57b0a14d0 Fixed hires textures not scaling. Also increased max size of custom textures to 2048x2048.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6254 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-04 01:54:51 +00:00
sl1nk3.s ec648ed221 Fixes issue 3295.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6253 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-03 22:50:57 +00:00
Soren Jorvang 4b5b9ad05c Add Turntable.cpp to SCons build.
Set native eol-style on recently added files.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6252 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-03 08:20:24 +00:00
skidau c6fa5804de Added support for PAL-R (Russia) ISO detection. Fixes issue 2575.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6251 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-03 06:10:14 +00:00
Jordan Woyak aae0fa7909 InputCommon(GCPad/WiimoteNew): Fixed issue when inifile didn't exist, defaults were loaded, and input didn't work. Fixed prob in DirectInput(hopefully doesn't break any other gamepads): buffered data wasn't ever being used. WiimoteNew: Hopefully made emulated swinging better(please comment). Added (completely untested) incomplete emulated turntable(DJ Hero) extension support :p. Deleted some files that I meant to delete in my last commit.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6250 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-03 04:29:34 +00:00
Jordan Woyak 841583b8f3 Merged identical VertexManager code from DX9/DX11/OGL plugins into VideoCommon. Still need to merge VertexManager::Flush (will be easier after TextureCache is merged). Purposely using a class/virtualfuncs rather than a namespace so multiple VertexManager can be in one plugin (VideoMergeNew? :p).
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6249 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-03 00:41:06 +00:00
pierre aaeb21fe3b Core/Common: Automatically emit a MOV in ABI_CallFunction* when the function
pointer cannot be reached by 32bit displacement.

RAX is caller save and non-parameter in all 64 bit ABIs, so it should be safe
to clobber it on function call.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6248 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-02 20:04:03 +00:00
skidau 26c7a5303d Fixed a bug in JIT/JITIL. The size_of_merged_addresses variable was being used before it was initialised in certain cases (Rogue Leader).
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6246 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-02 02:04:44 +00:00
pierre b80e207a8a Core/DSPCore: Make JIT work on 64 bit hosts
This is the safe variant that does not assume other
functions use R11 for &g_dsp.r, which they actually do.
So there is a lot unnecessary reloading of the register
getting emitted.

There are a few small changes exploiting pointers known
at emission time and making use of MComplex math.

Also renames m_LLEplaying to m_AIplaying in Core/AudioCommon.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6245 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-01 23:23:13 +00:00
Soren Jorvang c8c805f720 Remove unnecessary shadow variables and signed/unsigned comparisons.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6244 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-01 12:38:31 +00:00
j4ck.fr0st 2a64643fdc Apply u-ra's patch to speed up CriticalSection on systems that use POSIX-threads (that is, not windows).
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6242 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-30 17:17:13 +00:00
skidau 719521eeeb Added EFB Scale option to the OpenGL plug-in.
Renamed EFB Scale to Internal Resolution.
Removed Auto Scale option (it is now always on).
Added on-the-fly changing of the Internal Resolution in the OpenGL and Direct3D9 plug-ins.
Further consolidated the code in the video plug-ins.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6240 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-30 15:24:34 +00:00
pierre ce1057f17d Core/AudioCommon: Feed bigger audio chunks to the output devices in case of underrun.
This should eliminate the crackling with alsa and pulseaudio backends and replace it
with much nicer pauses. This is only interesting for audio backends that do not
respect Mixer::GetNumSamples() and should not impact users able to run the DSPLLE at
full speed.

The cost of this is an added LLE audio latency of about 0.06 s in the continuous
playback case. If that is too much, lower the low watermark.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6239 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-28 21:43:38 +00:00
Shawn Hoffman 73f4bc4598 Some more cleanup which should've been in r6232. Thanks Billiard.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6234 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-27 05:16:11 +00:00
Shawn Hoffman 986939f31a Make the memcheck log INFO level.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6233 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-27 04:30:23 +00:00
Shawn Hoffman 18be8ffa6e Replace all bitfields which were only declared with "(un)signed" with their actual types. Let me know if I missed any. It would also be a good idea to test this commit in both x64 and x86.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6232 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-27 04:29:51 +00:00
Shawn Hoffman 6cf51dbd66 Allow SI AM_Baseboard to be selected correctly in GUI.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6231 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-27 02:22:53 +00:00
nodchip a5333f80d1 Gecko code: Fixed the thread-safe problem reported in r6227.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6230 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-27 01:18:25 +00:00
pierre bc1e0c24e8 Add an PanicAlert in case we try to do an >32 bit displacement
If you see this alert, dolphin will probably crash in a few moments.

Found in the course of fiddling with DSPLLEs JIT, which puts its data
structures and static code somewhere above 0x7fff00000000 on my machine, making
it unreachable via 32bit displacements from the created code at ~ 0x40000000.

Fixed all the offending places in DSPLLEs JIT to emit register indirect accesses,
only to find out that the generated code is slower than the interpreter and does
work just as good(or bad). Oh well, back to DSPHLE it is then.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6229 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-26 19:37:30 +00:00
nodchip 2f44464eef Fixed the build error in r6227.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6228 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-26 06:58:21 +00:00
nodchip 436a927566 Gecko codes: Implemented CT6 CST1 code type (insert asm code in the game). This function may need many tests.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6227 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-26 06:31:45 +00:00
nodchip e011b4a6a6 Jit64/JitIL: Removed a redundant MOV instruction. This commit suppresses alert windows of debug binary in windows.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6226 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-26 04:50:12 +00:00
pierre 91036ae160 Slightly adjust z-values calculated in the vertex shader so OGL does not clip the
final rendering of (at least) Sonic Unleashed.

This should be (nearly) invisible in Z16 depth copies and in games, but there is
some chance that it collides with other such border cases. There probably is some
room to decrease the adjustment but 9999999/10000000 is not enough. A static offset 
may be an option, too. I don't know if the game can/does set something like that.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6225 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-23 19:38:49 +00:00
Rodolfo Osvaldo Bogado e641323de2 i know still a lot to fix and much work to do but sometimes experiments are fun :)
for all the plugins implemented per pixel lighting, this will make games that uses lighting  a lot nice. (just look at mario sunshine and compare :))
for dx9: implemented temporal anaglyph stereo: just grab your red-cyan glasses  and enjoy.
stereo calibration: use stereo separation ( distance of the point from you are looking) and Focal Angle: the angle necessary to focus in one particular object.
this settings are different in every games as they use different depth ranges.
please for any regression and bug introduced by this commit.
if you ask why i did not implement stereo in dx11 and opengl the reason is one: they don't work right when i have more time will try to find a way to make them work.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6224 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-23 02:17:48 +00:00
nodchip 5e806eb7b2 Jit64/JitIL: Implemented simple function inlining for speedup.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6223 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-23 02:05:04 +00:00
nodchip 97a9c375f9 JitIL/Jit64: Removed std::vector for speed up.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6222 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-22 02:42:17 +00:00
Jordan Woyak 194493cc04 Some work on merging the video plugins: Added a new plugin to the solution(shouldn't build by default) which combines the DX9, DX11, and OGL plugins with their common code merged (and some things temporarily removed). In it's current state the plugin is hardly usable. Perhaps someone with knowledge of the video plugins will be able to fix the things I have broken more easily than me(or point me in the right direction). I will continue to work on it as well.
Main Issues:
DX11 is functional with a ~2MB/s mem leak.
OpenGL/DirectX9 have a black display while game runs. (DirectX 9 flashes good display on emulation stop)
Too many virtual function calls. (once everything is working, I will work on removing them)
Won't build on non-Windows in its current state. (mainly EmuWindow will need changes for Linux/OS X)
Probably other stuff.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6219 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-20 21:45:47 +00:00
Jordan Woyak eda652b7a0 New Wiimote Plugin: Fix Emulated Wiimote Problem.(fixes issue 3230) Made the "Connected to X Wiimotes" text update on all tabs when clicking "Refresh"/"Pair Up". Some other cleanup.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6216 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-18 16:43:43 +00:00
anusko 7216699fc4 Seems like I broke something in r6127. I'll fix it asap but for now l'll just revert it. Sorry :-(
This closes issue 3180.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6215 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-17 20:01:09 +00:00
Jordan Woyak 19a50b3c51 New Wiimote Plugin: Added a real wiimote "Pair Up" button on Windows for the Microsoft bluetooth stack, like the old plugin. The PairUp function was copied from the old plugin and cleaned up. (Mostly untested because I'm not using the MS stack) Please test. Other minor changes to emu-wiimote and DInput. (Perhaps the "Refresh" button should call PairUp() followed by Refresh() to make the dialog simpler.)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6213 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-16 22:50:18 +00:00
Jordan Woyak 2cddf48cde ControllerInterface: DirectInput: Added support for Ramp and various Periodic force types. Only Constant forces were supported prior. (only partially tested due to lack of hardware) This may improve performance for those experiencing emulated wiimote slowdowns when using DInput rumble.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6212 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-16 05:09:29 +00:00
Glenn Rice 7824855116 Silence some compiler warnings that have accumulated.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6211 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-16 04:22:27 +00:00
nodchip 72af7b3e5e Jit64/JitIL: Fixed the constant value used to control block merging.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6210 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-16 03:46:23 +00:00
nodchip 2774d4ffd4 Fxied the build error in r6207.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6209 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-16 02:38:28 +00:00
Glenn Rice b7ba3ffc84 Fix a segmentation fault if "Change Disc..." is selected and then the file chooser is cancelled.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6208 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-16 02:12:00 +00:00
nodchip 26ab958ffb Jit64/JitIL: Corrected address information used for speed hack. This commit will prevent slow down with block merging in some games.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6207 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-16 01:58:02 +00:00
skidau a3b59f6845 Change Disc functionality:
* 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
2010-09-15 12:30:56 +00:00
Rodolfo Osvaldo Bogado 73adab0ce1 Dlist Cache step 2:
include referenced array data in the hash to avoid problems in some games.
this version is a slower than the last version but is more stable, still much work to do but so little time to do it :)
Added Dlist Caching Option to the plugin configuration so anyone can compare the performance change.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6205 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-14 22:48:22 +00:00
nodchip 08b999dbfa VideoCommon: A minor optimization.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6204 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-14 13:52:17 +00:00
nodchip 412ce56f83 Added options to enable/disable Block Merging and DList Cache into game specific settings.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6203 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-14 13:50:25 +00:00
skidau 4ec8f97154 Fixed channel loading from the System Menu. Also gave the menu a speed up by increasing the IPC_HLE_PERIOD.
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
2010-09-14 12:32:02 +00:00
Shawn Hoffman 5c4c8ec07a bs2emu: load 32bytes of the disc header to memory instead of just 10bytes.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6201 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-12 13:27:37 +00:00
j4ck.fr0st 51cd032af3 Clear m_TitleIDs when opening Device_ES (Fixes Issue 3205)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6200 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-11 10:41:57 +00:00
skidau 9d57903065 Emulation accuracy improvements
* 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
2010-09-11 02:34:51 +00:00
Shawn Hoffman 18123251d1 allow multiple titles on sysmenu versions > 3.0
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6198 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-10 21:06:59 +00:00
nodchip ccb96be9b3 Jit64/JitIL: Enabled block merging to improved the performance. This improves the fps 4-5 faster in some games. However it decreases the fps 10 slower in other games, MP2 and etc. In this commit, the actual block merging is disabled. If you want to try block merging, please set FUNCTION_FOLLOWING_THRESHOLD to a positive integer.
Increased the size of code buffer to prevent cache clearing with block merging.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6193 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-09 02:14:03 +00:00
j4ck.fr0st bf4a18e08c Fix a few things in ES I had lying around.
Booting newer SysMenu versions still doesn't work, tho.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6192 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-08 17:08:01 +00:00
LPFaint99 a20483eedd Hackfix launching pal games from discchannel (cause was missing tik for ios required by game)
when sysmenu asks for tik of a ios give it its own tik

Update issue 3186
it should work now :)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6191 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-08 06:23:37 +00:00
LPFaint99 d422039f0a call DIVerify when a wii game is launched directly by dolphin (adds tmd+uid)
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
2010-09-08 00:20:19 +00:00
LPFaint99 e0383634d3 Implement parts of DIVerify that can be useful. (copy tmd to emulated nand for disc titles)
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
2010-09-07 06:06:08 +00:00
baby.lueshi dee24e5695 Added support for recording multiple GameCube controllers at once.
Fixed recording playback to automatically enable/disable the correct controllers.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6188 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-06 21:41:01 +00:00
skidau c710ae7529 Added a speed hack for the MMU games. The speed hack is enabled by default. "Enable BAT" in the game properties enables the old accurate emulation behaviour.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6187 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-06 14:43:28 +00:00
Shawn Hoffman 5948865bcc jiggle includes in hci.h/l2cap.h: msvc <= 9 doesn't provide stdint.h
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6186 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-06 13:47:18 +00:00
Glenn Rice c551a2ee51 Linux build fix.
Also fixed a couple of compiler warnings (one in SystemTimers.cpp that was an actual bug too!).


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6185 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-06 13:38:22 +00:00
Soren Jorvang d02dd6d3fa std::string needs <string> rather than <string.h>.
Also some minor cleanup.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6184 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-06 12:14:18 +00:00
skidau 34aebffff9 Added an option "Alternate RFI" to the Game Properties to enable alternate interrupt timing. Try enabling this option if a game hangs, works only in the Interpreter or Dolphin crashes. This option fixes Die Hard: Vendetta and Medabots Infinity.
Fixed the interpreter to execute instructions in the right number of cycles.  It used to execute all instructions in one cycle.

Added a trace function to the interpreter making it easier to determine differences between the interpreter and the recompilers.

Removed the "Enable self modifying code check" as it was not useful.

Fixes issue 2407.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6183 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-06 10:27:33 +00:00
LPFaint99 3bdeb923ef Some work towards launching by titleid rather than content path,
update some var names in WII_IPC_HLE_Device_fs, filter out some spam logs from VolumeCommon

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6182 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-06 04:36:58 +00:00
nodchip 402b1d83e2 JitIL: Implemented 64-bit access in StoreDouble for speed up.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6181 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-06 03:09:12 +00:00
nodchip 58ac6e541f Added PSRLD/PSRLQ/PSLLD/PSLLQ support to x64Emitter
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6180 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-06 03:03:33 +00:00
Shawn Hoffman 43c11a491a remove frivolous comments in WII_IPC_HLE_Device_usb.cpp which must've been there since the code was copy-pasta created ;p
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6179 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-05 20:54:24 +00:00
Shawn Hoffman eda6b2a23c remove an ERROR_LOG that was left in from r6177 which could be annoying
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6178 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-05 20:49:04 +00:00
Shawn Hoffman 92eedc9cd3 Fix wiimote in homebrew
Marginally speed up old wiimote plugin by doing less memcpys
A lot of changes went into the bt dongle emulation, so please test for regressions :)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6177 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-05 20:18:13 +00:00
LPFaint99 197202798d oops, left in some code and typo with the attempted ios reload fix
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6176 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-05 07:38:26 +00:00
LPFaint99 9e3dd4d2d4 Work towards implementing ES_LAUNCH
returning to installed wii menu from a disc based game is working
however wiimote does not work
launching title from the wii menu has a similar issue
only tested photo channel 1.1, channel loads but wiimote does not work
as before launching channels requires sysmenu < 3.0
and you can change between sys menus via extracted wads by installing any version
IE if 4.2 is installed, right click on 2.0 wad in the gamelist and install to wiimenu
and right click on 4.2 wad and install to go back to menu 4.2



git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6175 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-05 07:36:10 +00:00
j4ck.fr0st 80a9116c0d Fixed plugin selection/config dialogs (broken in r6168).
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6174 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-04 14:51:24 +00:00
nodchip 6dc16b7416 JitIL: Improved the compilation speed by fixing the bug that getNumberOfOperands() initializes the table each time it is called.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6173 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-04 14:25:39 +00:00
anusko f4a6e585be Rollback on a DSI exception, for the instructions that need it.
Not a good thing to say, but this isn't properly tested, since I don't know of any game that generates a DSI exception. I'll try to write some homebrew to test this, but I'm pretty confident it's ok. Anyway, please take a look at it and tell me if you find some mistake :-)


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6172 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-04 01:04:37 +00:00
Shawn Hoffman 9935fe2546 Create a stub device for ios hle, and use it for /dev/usb/hid. "Fixes" monster hunter tri, which was broken by r6164
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6170 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-03 17:03:06 +00:00
j4ck.fr0st c92ae1c915 I think it should be addr there, not address. Plus code-formatting.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6169 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-03 14:06:34 +00:00
dok.slade 76a5ca84d1 Removed the check on video plugin change in PluginManager::GetVideo() (Profiling shows lots of strings compare from this function).
Since plugins can't be changed when emulation is started, it's a waste of time to check if it has changed.

There may be cases where this check is needed. If so, the check should be done in another function (because GetVideo() is called very often while emulating).

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6168 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-03 09:08:33 +00:00
skidau c08144f893 Fixed F-Zero GX in JITIL 32bit builds by using a vmem mask for memory loads.
Enabled the lbzu instruction in JITIL.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6167 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-02 15:10:12 +00:00
nodchip 38d6d539d2 JitIL: Fixed the compile error reported in r6165. Sorry for inconvenience.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6166 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-02 11:12:45 +00:00
nodchip 26eac5d22a JitIL: Fixed a bug (hack?) that NaN is considered as -0.0 in fcmpx. Implemented Nan check routine in FDCmpCR.
The bug (hack?) was introduced in r3312. I could not determine whether it was a hack or not. 

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6165 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-02 09:36:19 +00:00
Shawn Hoffman efd9bae449 improve ios hle error handling.
remove stubbed devices. they now fall back to the base device class, which reports the device as not available.
fixes issue 3137.
start ios fd counting at 0 instead of 0x13370000. I know it's sad, but it fixes homebrew booting and such.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6164 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-02 04:17:23 +00:00
Shawn Hoffman baf82a0849 hackfix dsp reset: fixes zelda collector's edition and some other games which reset and hang (...are there any others?)
the problem was that the streaming audio interrupts were still being triggered, causing the game to try and jump to an invalid interrupt handler. The code for dsp lle looks like a hack :( (but it works)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6163 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-02 01:36:45 +00:00
Shawn Hoffman 9220ca1afc fake /dev/stm/eventhook ... makes libogc shutup a bit
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6162 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-02 01:23:28 +00:00
Shawn Hoffman 743641965a DVD Interface forces alignment, and rejects writes to DICFG
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6161 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-02 01:21:26 +00:00
Shawn Hoffman ab56cf9c1c stop trying to patch out OSProtectRange calls
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6160 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-02 01:20:27 +00:00
Jordan Woyak 7afd393acb GCPad/Wiimote New (ControllerInterface): Some tweaks to the DirectInput code. (fix for a random gamepad which didn't work)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6159 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-02 00:03:25 +00:00
dok.slade 9e17007c90 - Fixed TimeBase and Decrementer registers so that they are updated only when needed
- Fixed RTC for GC homebrews

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6158 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-01 23:44:03 +00:00
dok.slade 8d6f98439e Fixed some race conditions with PPC exceptions and external interrupts.
This may help fixing issues related to video interrupts handling.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6157 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-01 22:03:51 +00:00
Rodolfo Osvaldo Bogado 625d78fb59 fix for my last commit
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6156 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-30 15:33:37 +00:00
Rodolfo Osvaldo Bogado c9dd11c803 some fixes for dlist, now is configurable in the video config section, still not in the gui,
disabled by default till a fix for segfaults in linux and geometry problems in some games

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6155 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-30 15:18:43 +00:00
baby.lueshi c1cac331a0 Major overhaul to input recording, including fixing major desyncs during playback and a small bug in the .DTM file format. Like netplay, some emulator options (specifically dual core and idle skipping) can cause desyncs, and the more your plugin options are similar to the ones used during recording, the more likely playback will sync.
Also, input movies are now linked to savestates instead of just selecting a file to save to and running a game and are exported at a later time. This allows you to easily continue a recording across sessions and makes rerecording possible.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6154 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-30 07:05:47 +00:00
Nolan Check 6a695eff49 Remove more obsolete code
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6153 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-30 04:05:06 +00:00
nodchip 014e87157c JitIL: Modified "LoadDouble" with SSSE3 to improve the performance. The code is ported from Jit64.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6152 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-30 02:07:09 +00:00
nodchip baba7f54dc JitIL: Fixed the Issue 3114. The bug was introduced because the usage of MOVSD/MOVSS was wrong. MOVSD/MOVSS don't clear the upper bits when they are used to transfer between registers. But they clear the upper bits when they are used to transfer between a register and memory.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6151 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-30 01:24:14 +00:00
anusko e4f9b6a5f8 I'm an 100% scons noob but I think this fixes r6149, although it seems that the repository revision isn't appearing correctly (only happening with me?).
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6150 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-30 00:00:14 +00:00
Rodolfo Osvaldo Bogado 3e7dafbbd7 fully implemented display list cache with vertex data included and added in all the plugins.
still experimental, not totally optimized but must bring a nice speed up
please test for regressions an error. an please Linux people fix scons :)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6149 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-29 23:08:56 +00:00
Nolan Check 4229d9e01e Remove a bunch of freshly-obsolete code
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6148 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-29 19:34:54 +00:00
anusko 3058a926cf Implemented missing lswx and stswx instructions. Tested with Wii PES 2008 (PAL), which now works (OpenGL devs please take a look at this game).
Changed the scope of some variables introduced in my previous commit (r6132).

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6147 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-29 17:53:55 +00:00
nodchip a3df65bd02 JitIL: Added a new IR instruction, MulHighUnsigned, which computes the upper 32-bit of the multiplication of two unsigned 32-bit integers. Rewrote mulhwux with MulHighUnsigned.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6145 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-29 08:00:51 +00:00
Jordan Woyak 4e81cb4012 GCPad/Wiimote New: (OS X Config Dialog) Temporarily fix a crash when selecting an item in the device list (a current bug in wxWidgets with wxTE_PROCESS_ENTER). (Windows DirectInput) Hopefully made axis enumeration and the fall back to polled data(for drivers which don't support buffered data) simpler and more foolproof (a few users were having issues with a few specific gamepads).
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6143 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-29 03:45:56 +00:00
nodchip 6f6acf3970 JitIL: Improved the register usage and remove extra MOVAPD instructions. This is for the speed optimization.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6142 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-29 02:18:06 +00:00
Soren Jorvang 1d05290be7 Include "Hash.h" rather than "hash.h" for case-sensitive file systems.
Fix some compiler warnings.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6141 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-28 15:53:01 +00:00
nodchip ae802f0403 JitIL: Disabled the jitting of psq_l when inst.W == 1. This is a test commit to check Issue 3114.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6140 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-28 15:40:45 +00:00
Rodolfo Osvaldo Bogado 9b0357b5e2 sometimes to advance you have to make a step back.
use plain vertex arrays instead of VBOs to render in Opengl plugin as the nature of the data make VBOs slower. This must bring, depending on the implementation, a good speedup in opengl.
in my system now opengl and d3d9 have a difference of 1 to 5 fps depending of the game.
some cleanup and a little work pointing to future improvements in the way of rendering.
please test and check for any errors.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6139 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-28 15:09:42 +00:00
skidau eb40f765c2 Bugfix for the TLB cache used by the MMU. Thanks to drkIIRaziel for spotting it.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6138 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-28 00:37:27 +00:00
nodchip f8e8f25408 JitIL: Reverted r6135 again. Please refer r6110, r6131, r6135, and Issue 3097 about the problem. I will check the problem after I get MP2.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6137 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-27 11:17:58 +00:00
skidau eaa3371f92 Further optimised the JIT cache lookup. Attempted to fix the Wii games in ICC builds.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6136 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-27 09:41:48 +00:00
nodchip d5bae7e0ad JitIL: Restored some instruction handlers reverted in r6131. If this revision does not introduce the bugs reported in Issue 3097 and r6127, the cause of the bugs is the wrong implementation of "mtcrf" which was fixed in r6134. If not, there are other bugs. I will revert again. Any way, they were my fault. I'm sorry for all.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6135 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-27 07:40:22 +00:00
nodchip 47fa91250b JitIL: Fixed the wrong implementation of "mtcrf". (The bit order was reverse...) This commit may fix the bugs reported in Issue 3097 and r6127. (I could not test them because I don't have the games which are reported.)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6134 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-27 07:25:31 +00:00
PerfectInduction aae0e96682 Fix RTC to report the correct system time in Wii and GC titles as reported in Issue 1817
Modify GetLocalTimeSinceJan1970 to account for DST.
GetGCTime() returns only GC epoch time(used by most Wii titles.)
IPL-DEV subtracts Wii bias before copying to m_RTC(mostly used by homebrew.)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6133 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-26 19:24:47 +00:00
anusko d082f50c34 My first commit!
Done some refactoring around the PowerPC stuff. Main changes:

* Declared CPUCoreBase class
* Wrapped the interpreter into a class and made both it and JitBase inherit from CPUCoreBase
* Avoided reinitializing interpreter's and Jit's tables

A great deal of this work was done by nodchip, so kudos to him :-)
To finish, please forgive me for my not-so-great english.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6132 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-26 17:44:13 +00:00
nodchip 46e8ea8094 JitIL: Partially reverted r6110 (andcx, norx, orcx, nandx, and eqvx) to fix the bug reported in Issue 3097.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6131 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-26 12:52:35 +00:00
nodchip 60696ffe30 JitIL: Commented out folding rules which are not tested. This commit is for the check of the bug reported in Issue 3097. The bug was introduced in r6110 by myself. In r6110, I added a function to convert andx, nandx, andcx, orx, norx, orcx, xorx, and eqvx into IRs. It is clear that the function has the bug. However I could not find the bug in the function. Then I thought there may be bugs in folding rules in IRBuilder because there are some untested folding rules which fold and, or, xor, etc. (This is also written by myself. I'm sorry.) I tested some folding rules and commented out the other untested rules.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6130 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-26 11:32:30 +00:00
skidau ea7004ffa7 Optimised the JIT cache lookup in JIT and JITIL. Gives a <5% speed-up in GameCube games. Wii games and GC games+MMU get a smaller speed-up.
Cleaned up some code in the JIT and memory functions.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6129 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-26 11:06:47 +00:00
nodchip 9c98d0ab85 JitIL: Extracted local variables to prevent calling regLocForInst()/fregLocForInst() many times. It was pointed out in r6127.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6128 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-26 01:56:30 +00:00
nodchip c32cad999c JitIL: Improved the register usage of some IL instructions (SExt8, ICmp*, DupSingleToMReg, InsertDoubleInMReg) for the speed improvement.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6127 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-25 12:55:21 +00:00
Rodolfo Osvaldo Bogado 8e4df07353 sorry for the last one, please test this one :)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6125 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-25 11:18:46 +00:00
Rodolfo Osvaldo Bogado 3b30019fcb some experiments with lighting, please test an let me know if is a improvement or make things worst
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6124 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-25 03:42:57 +00:00
skidau 0f56f5076c Changed WII IPC HLE to continue execution after the game attempts to open unknown devices.
The allows Prince of Persia: The Forgotten Sands to be played.
Fixes issue 2684

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6123 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-25 01:45:23 +00:00
dapetcu21 b7ecd01686 9/10-bit accelerometer data interleaved with buttons
some useless IR pointer math... It still doesn't make rotation work
a sign fix when tilting along y axis (twisting the wiimote)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6121 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-24 08:48:09 +00:00
dok.slade cf5088c37e JIT compiler:
* Improved constants folding in load/store instructions
* Merged load instructions

This is almost the same commit as r6076/r6077 but x64 build has been fixed.
Thanks a lot to skidau and BHaaL!!


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6120 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-23 22:26:00 +00:00
nodchip bab7721124 JitIL: Reverted r6117 because I could not find the case js.downcountAmount == 0. I'm sorry for confusion.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6118 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-23 00:36:59 +00:00
nodchip e740c4caa8 JitIL: Omitted extra SUBs when js.downcountAmount == 0. (Though it is not very often.)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6117 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-22 08:38:56 +00:00
nodchip 43dc70eace JitIL: Omitted some extra MOVs when a next program counter is in a register.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6116 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-22 08:27:43 +00:00
nodchip 10a14d17d3 JitIL: Fixed a wrong implementation reported in r6111.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6115 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-21 10:53:17 +00:00
nodchip 62c4d439ce JitIL: Modified psq_l implementation. Reverted psq_st. Removed compile warnings.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6114 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-21 06:29:47 +00:00
skidau 20704fca3d Low level emulate the GC IPL (BIOS screen). The GC BIOS now correctly launches the game. JIT the IPL instead of interpreting it. Made LLE BIOS the default (which silently fails to HLE). Relabelled the "HLE the IPL" option to "Skip GC BIOS".
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6113 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-20 14:57:26 +00:00
nodchip 168136a219 JitIL: Implemented some instructions.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6111 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-20 05:05:11 +00:00
nodchip 7b9d0dbedc JitIL: Added some instruction handlers. They were ported from Jit64.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6110 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-19 14:10:22 +00:00
Ignacio Farias cf078067e7 Reverted change from r6100 to previous version. That thing broke some games audios. With audio throttle off, possessing audio was disabled. Now I'm working on a workaround, stay tunned.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6106 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-17 15:45:12 +00:00
Marko Pusljar 9080e09a45 dsplle - small mulx.. regression fix
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6105 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-17 12:42:14 +00:00
Glenn Rice 7866fade02 Add volume control for the pulse audio backend. Unfortunately that can not be done with the pulse-simple api, so I had to switch to the asynchronous pulse api.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6104 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-17 02:14:04 +00:00
Rodolfo Osvaldo Bogado fb1c14e2cc long time no commits :).
fixed one of the last graphic problems in smg, now the glow in the plants and planets must be correct.
the error was caused by a error in lighting calculations. so it must affect other games.
please test and let me know the results.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6103 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-16 22:37:04 +00:00
Ignacio Farias 56d916bf93 Corrected writing error on previous commit :). Now should compile correctly. Thanks God for the advise
"
/trunk/Source/Core/AudioCommon/Src/Mixer.cpp   r6100   line 145:
145: 	{
oops, wrong brace? "

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6101 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-16 15:45:18 +00:00
Ignacio Farias fd5f7ba6b4 Hy, this is my first commit, and i hope it is not bad xD.
- First change is for Mixer.cpp, I've just re-added the functionality lost in r4724, so, if you disable audio throttle, games like donkey kong jungle beat, will work properly.

- Second change points to a doubt comment on UCode_Zelda_Voice.cpp, where it did not know here PB.NeedsReset came from. Well, the answer is it came from line 03b2 of the dumped Ucode, so when PB.IsBlanck equals to zero, PB.NeedsReset is zero too.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6100 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-16 15:22:53 +00:00
Shawn Hoffman fec9234aca IPC HLE: don't automatically make all addresses the cached one, leave them as however they have been written.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6099 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-16 00:14:08 +00:00
Shawn Hoffman b83d3e8970 make memory breakpoints log the PC when hit.
if the PC makes no sense, it's probably because some HLE has done the access.
perhaps we should wrap accesses from IOS HLE, so that we can trace it? dunno if it presents that much of a problem anymore.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6098 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-16 00:13:23 +00:00
Jordan Woyak dac2666236 New Wiimote Plugin: Fix hang on close issue of my last commit.(thanks to glennrics) Made profile saving/deleting a bit more user friendly.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6097 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-15 23:03:15 +00:00
Jordan Woyak 7c7257b825 New Wiimote Plugin: Give each real wiimote an individual thread.(eliminates multi-wiimote delay)(fixes issue 3037 for the new plugin) Fix a mem-leak in the input config dialog.(GCPad/NewWiimote)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6096 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-15 20:33:07 +00:00
Marko Pusljar 0a606d7356 fixes for my previous commits
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6095 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-14 09:07:28 +00:00
NeoBrainX 1f9dbb5afe Warning fixes and some cleanups.
Correct me if I was wrong when changing those 0s to '\0's.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6093 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-13 19:07:59 +00:00
nodchip 0c1977dc45 JitIL: Added code which deal with psq_st/psq_l in the case of inst.W == 1.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6092 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-12 12:31:15 +00:00
skidau df8ffa69bb Used a less hacked way of making the multiboot games work. Instructions are now executed at their proper number of cycles. The timeslice has instead been increased to compensate. Increases VPS in some games.
Thanks to BhaaL for the tip.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6090 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-11 12:49:38 +00:00
skidau e82c128043 Applied the multiboot dol fix to JITIL too.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6089 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-11 11:15:59 +00:00
skidau 6918a9e1d6 Added support for multiboot dols. This allows demo discs, bonus discs etc to be played.
* Flushed the JIT cache on "ICFI" (Flush Instruction Cache)
* Made all instructions one cycle in duration

Fixes issue 233

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6088 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-11 10:45:27 +00:00
Soren Jorvang db072e1986 Add Common::AtomicDecrement for gcc to match win32.
Use the debug option for conf.CheckWXConfig on OS X as on Unix.

Take care of a few compiler warnings.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6084 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-10 08:29:15 +00:00
Marcos Vitali 3b7a6ce336 I've observed that "FIFO is overflown by GatherPipe" is not real overflow.
Really that happens because the fifo.CPReadWriteDistance is negative.
Example: CPReadWriteDistance: -864 CPEnd: 10092672 fifo.CPBase: 9568416
In SMG this is because  PI_FIFO_RESET is writing and after fifo.CPReadWriteDistance will be setted to 0.
To Prevent that, I've Implemented AbortFrame function in the CommmandProcessor. It should fix overflown because of that. 
Note: There is other issue (Issue 2846) where the fifo.CPReadWriteDistance is negative too but the effect is different.
I'm working to solve this.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6083 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-10 07:25:35 +00:00
Jordan Woyak 2b45e87b3e New Wiimote Plugin: Added a "Hybrid Wiimote" input source type. This allows a real wiimote to be used with an emulated extension.(and in the future, real wiimote with emulated motion plus) If the emulated extension is set to "None", a real extension can be used. Real/Emulated buttons are combined. Real acceleration data is used. Currently, emulated IR data is used.(might change this to allow both) Switching between an emulated and a real extension in-game is a bit testy right now, but if you switch the emu-extension to "None" before connecting a real extension, it usually works.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6082 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-10 04:12:32 +00:00
Glenn Rice a1daa636c2 Take care of some compiler warnings from unused variables, and a little code cleanup.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6081 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-10 01:08:22 +00:00
dok.slade 55d7f93e0c Revert r6076 and r6077 since they broke x64 builds
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6080 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-09 19:00:24 +00:00
pierre 468b9bfe68 Fix the OpenGL depth buffer values from the vertex shader.
I am not sure i am understanding what the pipeline really does, and more so what
the GC/WII expects here. If my comments are incorrect, please let me know.

This was tested with MP2:E, ZWW on r6075.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6078 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-08 22:27:35 +00:00
dok.slade 244191f18f Fixed some mistakes from r6076:
* Fixed missing UnlockAllX
* Fixed 64-bits compilation

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6077 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-08 18:53:00 +00:00
dok.slade 5a248b46a1 JIT compiler:
* Improved constants folding in load instructions
* Merged load instructions
* Fixed the register allocator so that it can restore the registers state after jumping to the dispatcher (in case of a conditional jump)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6076 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-08 18:12:58 +00:00
Marko Pusljar 95b0abb737 dsplle - another small fix
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6075 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-08 16:35:10 +00:00
Shawn Hoffman 2ac8691911 ok...svnrev crap finally under control? please?
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6074 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-08 16:34:32 +00:00
Shawn Hoffman 4ae77b2d70 revert last two commits. screw it.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6072 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-08 15:37:18 +00:00
Shawn Hoffman 78add0ca9b must've gotten too excited, forgot a file
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6071 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-08 15:22:25 +00:00
Shawn Hoffman 7823eddd4e kill that annoying relinking once and for all!
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6070 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-08 15:21:29 +00:00
skidau 208ecd698e Debugger enhancements:
* Added working Step Over function.
* Added hard-coded hotkeys for step into (F11), step over (F10) and toggle breakpoint (F9).  The hotkeys are only active when the debugger is enabled.  They function as before when the debugger is disabled.
* Added Debug menu item.
* Removed obsolete NotifyBreakpoint function from JIT and JITIL.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6069 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-08 06:00:22 +00:00
Shawn Hoffman 7b8863dc9c r6066, part two: learning to count
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6068 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-08 00:54:04 +00:00
Glenn Rice 957e7c415e Several little things:
Clean up of the input selected for the opengl x window in linux.
Fix a potential segfault when taking a screenshot (happens consistently when using "Save Targets" from the video debugger window).
Fix a memory corruption error that results from the wrong image size being passed when dumping textures.
Make the screenshot hotkey configurable.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6067 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-08 00:13:05 +00:00
Shawn Hoffman 105c05bb7e make_svnrev.h.vbs: look for "Last committed at revision [0-9]+" instead of "Updated to revision [0-9]+" for svn
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6066 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-07 23:18:43 +00:00
Shawn Hoffman 521c7558bc Change make_svnrev.h.vbs so that it won't cause svnrev.h to be regenerated if it's already at the current revision (saves re-linking all the time)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6065 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-07 21:22:15 +00:00
skidau b2791b2d79 Added code to unlock the reg in lwzux. Fixes issue 3017 (thanks j4ck.fr0st).
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6064 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-07 13:26:53 +00:00
dok.slade 1faff6aeb7 JIT compiler:
* Improved constant folding/propagation in integer instructions
* Merged boolean instructions

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6063 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-06 19:35:40 +00:00
Fircrestsk8 05401aeb0e Fixes NeobrainX's new method for toggling the ZTP Hack. The game properties is a much more appropriate place for the hack (I didn't even know about that menu:) ) Thanks to NeobrainX for the code cleanup, and to Mandrix999 for the fix. Also noticed a minor typo.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6062 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-06 02:53:09 +00:00
pierre 92b180b71f Opengl and D3D are doing the perspective division differently
Thanks to glennricster for catching this.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6061 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-05 23:04:34 +00:00
NeoBrainX d5d7beb6c7 Move the ZTP hack to the game properties (reverted all changes from r6057 to the video plugins) due to some obvious reasons. Also some fixes to the coding style.
Remove a member variable which I introduced in r5907 although it never actually got used. Restores binary compatibility (at least in that regard) to pre-r5907 video plugins, but breaks any binaries after that :P

Update FIFO watermark tightness recommendations. 1000 is quite a high value I guess, but some people seem to need it.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6060 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-05 18:41:02 +00:00
Marko Pusljar 8dc01b685f dsp stuff - the same ucode hash under lle and hle now (had to rename couple of dissasms), ucode dumping under hle (debug only), small dsp:read32 change (needed for some homebrew)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6059 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-05 17:00:32 +00:00
skidau ca9c174450 Stability fix for JIT load/stores
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6058 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-05 10:01:27 +00:00
Fircrestsk8 040a6e1eb3 This commit addresses the Hyrule field slowdown issue in Zelda: Twilight Princess, as discussed in Xtreme2damax's thread: http://forums.dolphin-emu.com/thread-10638.html. It can be activated in the DX9, DX11, and OpenGL plugin GUI's. Enabling the hack while playing other games besides ZTP will likely have either an undesirable or no(more likely) effect.
The code changes disable the usual pipeline flush for certain BP Writes that occur while the minimap is being drawn in Zelda: twilight princess. This significantly increases speed while in hyrule field. The way this is accomplished is described more in depth on page 42 of Xtreme's thread. Big thanks to Xtreme for doing a great job hosting that thread, and Kiesel-stein for initial work on the hack

Also, I used the resource editor in Visual studio to generate the GUI code for the DX11 plugin, and some code appeared to be removed, although the behavior of the GUI did not seem to change. Hopefully someone more experienced with resource files (forms?) can double check that no code was damaged


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6057 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-05 03:24:13 +00:00
pierre 9e4ff175ec Set z-position for opengl, too
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6056 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-05 00:09:33 +00:00
dok.slade 7a80e8e409 Added missing unlocks from r6053 (thanks mylek4)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6055 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-04 23:30:47 +00:00
pierre e5f629da37 Fix saving states on mesa3d and clean up the handling of asynchronous requests
(those originating from a thread other than the gpu thread)

glxMakeCurrent is supposed to error out when the context is
still current in another thread. NVIDIA handles that, but mesa3d errors.



git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6054 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-04 21:02:32 +00:00
dok.slade 9b6180ab27 Fixed JIT register allocator.
Now it only writes back dirty registers when flushed
	* Fixed KillImmediate
	* Renamed LoadToX64 and StoreFromX64 to BindToRegister and StoreFromRegister respectively (as suggested by ector)
	* Code cleanup in calls to the reg allocator


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6053 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-04 19:34:47 +00:00
Soren Jorvang 7ddf0aa711 Silence gcc warnings about empty statements and out-of-order initializers.
Increase ISO properties window size to make room for the new Gecko codes.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6050 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-04 14:00:59 +00:00
skidau dc0a67b53a Brings back any speed lost from r6040 while maintaining all speed gains.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6045 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-04 11:07:40 +00:00
NeoBrainX 552a535f6d Fix issue 2694.
Fix another dramatic spelling "mistake" in DX9 which I forgot to commit last time.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6042 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-03 18:57:59 +00:00
skidau fe0f25c737 MMMU Speed Optimisations:
* Optimised the memory bounds check in MMU and MMU speed hack games.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6040 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-03 10:52:02 +00:00
ayuanx ffef6affff Explicitly designate VB script engine, as it might not have been linked to any script host due to security concerns.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6038 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-03 09:41:26 +00:00
Glenn Rice 22872b383c Make toggling of word wrap for the log window nicer for linux. Unfortunately this method is only implemented for wxGTK (what not wxMSW? Shocker!).
Made it so that Source/Core/DolphinWX/Globals.h is only used for the wxWidgets build, and a little other file inclusion clean up.
Fix an issue where a user runs a game from the open menu or toolbar items with a clean user directory, and henceforth double clicking on the empty game list (where it says double click to browse for games), that game is run again.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6037 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-03 03:20:44 +00:00
skidau f7c4670c9f * Fixed a careless mistake of mine with SetJumpTarget
* Changed ABI_PARAM back to ECX/EDX.  Thanks for the tip, Soren
* Reverted r6035

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6036 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-02 14:06:27 +00:00
Soren Jorvang bbc69a64ad Revert parts of r6032 that break OS X and probably other non-Windows
platforms as well. It would seem that ABI_PARAMx will have to be
used more consistently elsewhere to match up with a change to use
them here.

Not sure yet why I still need the final section of Jit64::stX.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6035 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-02 10:36:33 +00:00
skidau fcf2fb2b9b MMU Speed Optimisations:
* Un-cleaned the Load/Store code.  I think this will fix the stability issues from r6032
* Added memory exception checking to a couple more JIT FPU instructions
* Optimised the 64bit fast memory access slightly
* Optimised the MMU speed hack.

The rest of the speed optimisations from r6032 have been retained.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6034 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-02 10:28:37 +00:00
Shawn Hoffman 7b83640a28 make "show pc" in dsp lle debugger actually work again
code cleanup in Hash.cpp

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6033 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-02 05:30:38 +00:00
skidau 9c36f0bc88 MMU Speed Optimisations:
* Added memory exception checking to JIT instructions
* Cleaned up Load/Store code (thanks dok.slade)
* Consolidated memory access routines
* Fixed graphics corruption in some games (dcbz instruction)
* F-Zero GX in 32bit JIT mode now works
* Removed temporary slow hack in JITIL (introduced in r4839)


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6032 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-02 04:22:04 +00:00
Glenn Rice 26aee8ff76 Create the log window after the menus. This fixes the font ugliness on windows.
Fix modality for the config dialogs on windows.
Fix the compress/decompress dialog wxString issues for MacOSX (hopefully).
Fix the DSP-LLE debugger for linux.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6031 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-02 01:52:00 +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 4bef335632 Remove duplicate instantiation of PNG wxImage handler.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6028 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-01 15:48:11 +00:00
Glenn Rice 2c6f851bba Clean up and fix some issues with the dialogs for compression and decompression of iso and gcm images. Also added a confirmation to overwrite existing files.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6024 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-01 04:09:59 +00:00
nodchip 949fec41ca JitIL: Reverted "lbzu" added in r6018.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6023 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-01 02:17:52 +00:00
nodchip f79eff00e4 JitIL: Fixed comment out style reviewed in r6017.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6022 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-01 01:23:14 +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
nodchip 0e83d52382 JitIL: Added "lbzu" instruction and "crXX" instructions. "crXX" are ported from Jit_SystemRegisteres.cpp. "lbzu" may cause crush in GFZP01 (F-Zero GX PAL). I could not test with GFZP01 because I don't have it. I tested "lbzu" with other games, though.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6018 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-31 15:43:54 +00:00
nodchip 2213d423bf JitIL: Commented out the code which cause bugs in STGJAF OP movie.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6017 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-31 15:32:02 +00:00
Soren Jorvang 453f7c67cd Newer versions of GCC's <tmmintrin.h> check for __SSSE3__ (-mssse3).
No matter. We don't actually need it for our purposes.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6016 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-31 15:26:46 +00:00
Glenn Rice 4d27ecf736 MaxOSX build fix. Thanks soren.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6015 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-31 14:45:35 +00:00
Soren Jorvang 824b509d2e Make the SSE3.1 VideoCommon code available in GCC builds.
The GCC model for extended instructions like these is that you compile
with -msse3 etc. These affect code generation for whole compilation units,
so the idea is that you have a separate .c file for each instruction set
class and then indirect to the desired one at runtime.

Without e.g. -msse4.1, the GCC built-ins used by <foointrin.h> are not
available. However, in our specific case of compiling with -msse2 and
wanting to use SSE3.1 code, enough built-ins are available that we only
need to provide a little hack for pshufb.

Upgrading this to also use SSE4.1 instructions doesn't appear feasible
without a lot of undesirable duplication of GCC built-in functions and
headers, so we'd probably have to move to the GCC model of separate
source files for that.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6014 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-31 14:40:01 +00:00
Glenn Rice 840bd3613f Use GetClientRect in the GameListCtrl OnSize function, but removed the +5 padding. This seems to look best on windows and linux. Unfortunately wxWidgets on linux doesn't account for visibility of the vertical scrollbar in this or any calculation I have found.
Also fixed an issue with the saving of the log/console window size.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6013 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-31 14:14:01 +00:00
dok.slade c88689381f Merged JIT crXXX instructions (thanks XTra.KrazzY)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6012 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-31 10:29:08 +00:00
nodchip d5a698f188 JitIL: Removed unused variables reviewed in r6010.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6011 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-31 10:12:11 +00:00
nodchip aaa083f8f0 JitIL: Added instruction combining rules for speed up.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6010 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-31 03:26:25 +00:00
skidau 432335cda5 Fixed some boundary issues in PPCAnalyst. This fixes Rogue Leader and other MMU games.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6009 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-31 02:29:11 +00:00
dok.slade 12be9952ab Implemented more JIT instructions
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6008 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-30 21:28:20 +00:00
j4ck.fr0st 6ed3357066 Experimental: Implement skid's MMU Demand Paging in JitIL.
This one needs a lot of testing, since I don't have any games that need it, except Rogue Leader (GSWP64) - and I didn't do more "testing" than watching the stormtroopers dance due to speed reasons (altho it seems twice as fast as JIT for me; it does spit out a lot more warnings too)

btw, ITS OVER 6000!!111

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6006 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-30 17:51:05 +00:00
skidau 1d2f4283d1 Added a self modifying code option in the game properties. Turn this on for Monster House and other games that hang or show memory errors. Turn it off for everything else. This fixes Legends of Wrestling.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6005 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-30 17:12:59 +00:00
skidau 84b5824670 Quick fix to get Monster Hunter Tri working.
Minor changes resulting from code review comments.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6004 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-30 16:54:16 +00:00
Soren Jorvang 1fb47e6393 Modal windows must be closed with EndModal(), not just Destroy()'ed.
wxFD_FILE_MUST_EXIST cannot be used with wxFD_SAVE.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6003 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-30 13:14:53 +00:00
Glenn Rice 2d108f8d57 Fix a mistake in the menu from revision 5999.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6002 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-30 12:52:35 +00:00
Soren Jorvang 72494a0363 Use the portable SLEEP() macro in place of Sleep().
r5998 fixes the Center() problem in plugins on OS X.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6001 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-30 11:58:18 +00:00
skidau bae8c6ed9c Fixed the crash that occurred while loading and saving states. This change freezes the system while a save state is being made or loaded, ensuring that the sub-systems (e.g. CPU and GPU) is in a consistent state when the save-state is created. Removed the clearing of the JIT cache as invalidated memory would sometimes be jumped to from the block descriptors, causing the crash. Removed the saving of the old JIT unlimited icache from the state as this now serves only as transient data to track what has been compiled in the JIT (and it took up a lot of space). The icache is now saved inside the PPCState.
Fixes issue 2964.  (I hope)

HAPPY 6000th!!!

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6000 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-30 09:24:23 +00:00
Glenn Rice 06fb0c292a Removed the hackery that was being done with the plugin configuration dialogs on windows. That was unnecessary and ugly. The HWND type is dead for non windows. Also cleaned up the gui a little.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5999 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-30 03:51:49 +00:00
Marcos Vitali 75bd5ed645 Add fifoWait property of Event Object to SaveStates.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5998 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-30 00:35:33 +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