Commit graph

2810 commits

Author SHA1 Message Date
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
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
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
NeoBrainX
6fe343df61 Silently remove Plugin_VideoMerge again...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6404 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-14 13:11:28 +00:00
Nolan Check
3d866bd35d DX11 plugin: Fix a small oversight
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6389 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-13 00:05:14 +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
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
a4d06f4b71 Missed one file.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6372 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-10 08:41:10 +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
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
NeoBrainX
4782a8fc5a More CMake work:
- various fixes for using CMake on Windows
- support building external SDL, zlib, CLRun, wxWidgets
- support using precompiled GLew and WiiUse libs on Windows

For what it's worth, I'm not quite sure if I got all the wx files right...
Building with MSVC2008 still doesn't work yet, but is a lot closer now.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6361 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-08 14:04:56 +00:00
skidau
b565618442 Removed the wait for swap when XFB is used. This fixes flickering in "Fragile Dreams" and "Another Code R".
Fixes issue 3466.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6360 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-08 08:51:30 +00:00
Glenn Rice
57f01776ef Fix cmake so it is possible to build without bluetooth support, and the typo that tells you bluetooth is enabled when it is not.
Fixes issue 3464.
Also make the check for portaudio really check the version of portaudio.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6359 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-08 02:51:31 +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
5436bef30b Added NVIDIA 3D Vision support. Patch by Uhyve.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6347 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-05 11:24:46 +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
NeoBrainX
48859da6e3 DX9/DX11: Fix and simplify ClearScreen. At least fixes a small glitch in Super Mario Sunshine with DX11, might fix several other things as well in both plugins though (so test this, please!)
Explanation of this commit: We only have to care about four BP registers in ClearScreen, the remaining API state should be reset. The colorEnable and alphaEnable parameters are obsolete, for some reason directly using them caused the SMS glitch with DX11 (because of that bpmem.zcontrol.pixel_format == PIXELFMT_RGBA6_Z24 check in BPFunctions.cpp, is this one actually correct?)

The comment in BPFunctions.cpp was at least misleading (if not even wrong), so I removed it.

For what it's worth, someone needs to port this to the OpenGL and Software plugins (unless they're doing this properly already)


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6327 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-01 19:13:50 +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
NeoBrainX
765d1823fb Only enable shader dumping in Debug/DebugFast builds since the required information isn't available in Release builds due to performance reasons.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6323 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-31 15:32:04 +00:00
NeoBrainX
6b0ac026bc DX9, Debugger: Implement pixel/vertex shader and texture dumping.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6322 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-31 11:38:06 +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
Nolan Check
61c6d4fe59 OpenGL plugin: Should fix building with earlier versions of GLEW. You'll still need the latest GLEW if you want to try dual-source blending.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6311 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-24 18:26:28 +00:00
NeoBrainX
5be617c129 Fix an off-by-one error introduced in r6309.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6310 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-24 17:04:20 +00:00
NeoBrainX
5cdda90182 DX11: Fix ClearScreen properly this time. Should fix quite a few games (or break them :P)
Fixes issue 3399.

Also remove unnecessary stateman/gfxstate applies:
- gfxstate->ApplyState/Reset only need to be called by VertexManager
- stateman->Apply only needs to be called before any Draw/DrawIndexed call

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6309 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-24 16:53:33 +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
NeoBrainX
91186d2b8a DX11: If the virtual XFB list overflows, replace the oldest XFB with a new one instead of just failing.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6305 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-23 18:44:01 +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
5ebc9c97db Fix another bug introduced by r6301: Using observer variables now to check for ring buffer wraps.
Small performance improvements by increasing the ring buffer size and using a better offset algorithm.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6303 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-23 09:59:33 +00:00
NeoBrainX
ae07f24b98 Fix a small but severe and stupid bug introduced by r6301...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6302 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-22 20:58:42 +00:00
NeoBrainX
f9187ab508 DX11: Use a ring buffer in the utility functions for speedup.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6301 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-22 20:48:20 +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
skidau
4c4348a0a7 Applied the change from r6297 to the DX11 plug-in.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6298 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-21 15:06:01 +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
479eea6ad2 DX11 plugin: Fix numerous Metroid Prime glitches. The "techno energy ball lighting" glitch is remains, however.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6293 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-20 02:29:20 +00:00
Nolan Check
b1d6417f13 DX11 plugin: Use a better mechanism to load vertex and index buffers; prevent a potential bug where triangles, lines, and points could fight over the same buffers
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6292 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-20 02:17:16 +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
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
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
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
NeoBrainX
ccb4645f24 Fix a bug introduced by r6240.
Fixes issue 3320.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6265 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-09 13:47:56 +00:00
Rodolfo Osvaldo Bogado
c203cd5dae little commit for developers:
patch/hack to make dolphin work under virtual box using Linux guest
tested under gentoo and virtualbox 3.2.8 with 3d acceleration on

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6262 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-06 18:03:31 +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
Soren Jorvang
0830e74d55 Only need one copy of Turntable.o.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6259 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-05 18:15:10 +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
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
NeoBrainX
4907e6b6d2 DX11: Add texture dumping and hires texture loading support.
Not sure if hires textures are working perfectly, yet, so test this, please.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6255 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-04 11:02:35 +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
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
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
NeoBrainX
c0e90d4b39 DX11: Clean up AccessEFB and fix a crash. Thanks to pico554 for hinting at the wrong part ;)
Should fix SMG for NVIDIA users. Slightly changes behavior of the AccessEFB function, so test this for regressions, please (esp. in HD resolutions).

I tried to apply the same changes to Video_DX9, but for some reason EFB access didn't work anymore then. Might look into that later.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6247 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-02 11:50:50 +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
skidau
23f8da4bf7 Fixed the glitches when an internal resolution other than Native was used in the OpenGL plug-in.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6243 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-01 11:03:37 +00:00
skidau
1450385a53 Undid the merges made to the OpenGL plug-in's Init and Shutdown functions as these changes broke non-Windows builds.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6241 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-30 16:11:31 +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
skidau
7eb99b9088 Fixed r6235 for the Mac and Linux builds. Thanks, glennricster.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6238 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-28 21:28:49 +00:00
skidau
88cd9f3df1 Minor code formatting:
First step to bring a level of consistency between the video plug-ins - variable names, spacing, function names, function order, comments, file names.  This will help us identify common code for VideoMerge.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6235 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-28 02:15:02 +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
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
Jordan Woyak
073899cb26 Forget about something. :p
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6221 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-20 23:24:05 +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
pierre
6583a3f1e2 Plugin_VideoOGL: X11: Add another display connection to keep the two threads from
eating each others events.

Manifests itself in GPU thread waiting forever for a reply in GL library code(and thus 
a frozen emulation). Most of the time, this can be resolved by creating more events 
(clicking, changing focus), but sometimes it stays stuck.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6218 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-19 23:40:03 +00:00
pierre
236f75aac3 Make shader for copying from depth buffer to texture more resilent against precision loss.
The theoretical result is slightly different to the original shader because the
final adjustment is to the range [0/255..255/255] instead of 
[0/16777215..16777215/16777215].

The real result is vastly different on some gpus that were giving incorrect results
of bits 23..16 (y-component) wrapping around while bits 31..24 (z-component)
stayed the same, and bits 31..24 changing while in the middle of the value range
for bits 23..16 for large depth values.

This should fix issue #3123.



git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6217 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-19 20:01:17 +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
Jordan Woyak
bac3eac629 New Wiimote Plugin: buildfix and minor tweak.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6214 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-17 00:27:37 +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
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
Shawn Hoffman
ecb4d6d2f8 addendum to last commit: forgot files outside the /Externals/GLew directory...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6197 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-09 17:52:52 +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
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
NeoBrainX
ae309405a5 DX9/DX11: Missing breaks are just as evil as static variables.
This commit might fix some issues when colors were drawn slightly wrong in the DX plugins but correct in OpenGL. So please test this ;)
Thanks to Billiard for spotting.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6171 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-03 22:31:52 +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
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
dapetcu21
ad6ddfa18c IR pointer rotation finally working... Added a low-pass filter over sin and cos, but I still get some jittering... I suspect it's the numeric values... Billiard? Can you please help me on this?
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6146 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-29 17:51:55 +00:00
Nolan Check
e1d1a1eba0 Fix EFB Scaled Copy in OpenGL plugin.
It no longer uses the TEXTURE_RECTANGLE extension for GameCube textures. Since GameCube always uses normalized texture coordinates, it's an unnecessary burden.

Please test hi-res textures.

Wow, it's been a while.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6144 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-29 04:56:53 +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
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
dapetcu21
752afe178b Fixed wiimote shaking
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6126 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-25 11:44:01 +00:00
dapetcu21
153b019fcd small number mistake
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6122 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-24 08:51:54 +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
dapetcu21
430380eac6 Reverted r6112... The iPhone client was submitted to Cydia with the apropiate patches
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6119 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-23 19:19:10 +00:00
dapetcu21
d5647ce997 Just got my iPhone back from repairs and noticed something was not quite right... The Z axis from UDPWii were inverted... oops... X_X ...hopefully I got it right this time... Homebrew doesn't work and I don't have any way to test it... I did some improvements on the IR pointer math, but they are on my desktop and I'm away on vacation for a few weeks... X_X ... next time... WOL
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6112 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-20 14:14:27 +00:00
snzgoo
7703ae0477 Fixes a couple of issues, like wiimotes not found ingame(not all of them of course) and wiimote plugin not accessible under xp (old wiimote plugin).
sorry for that inconvenience.
BTW Im gonna take a break for a few weeks for health reasons, cya.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6109 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-18 09:02:44 +00:00
Glenn Rice
4a61432f14 Fix the shared data dir for the global build on linux.
Also silence some compiler warnings.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6108 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-18 02:24:02 +00:00
Jordan Woyak
84152919dc Wiiuse: Hopefully fix the Windows real wiimote connecting issues caused by r5940. An "index = 0;" line was accidentally removed.(uninitialized value being used) Hopefully this fixes issue 3067, issue 3058, issue 3057, issue 3054, issue 3012, and issue 2975. Some other minor cleanup to Wiiuse.(recreated the vcprog because it had hard coded include paths and it sucked)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6107 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-18 00:22:08 +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
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
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
Glenn Rice
9f57345c11 Fix the wiimote refresh button in the new wiimote plugin on linux.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6087 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-11 04:00:27 +00:00
Glenn Rice
97f894ffbd Fix a problem in the old wiimote plugin in which a bitmap could be created with size 0x0. This fails an assertion in wxWidgets. wxWidgets complains about it in the debug build.
Also cleaned that file up.  That is probably an exercise in futility though.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6086 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-11 02:28:40 +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
NeoBrainX
ecec048f0f DX9/OGL: Remove some superfluous checks (this is already done in VideoCommon).
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6073 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-08 16:28:03 +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
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
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
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
Marko Pusljar
a8f6904ec7 dsphle - improved ax/axwii hle ucode switching (needed for Nintendo Puzzle Collection <-> GBA, ...)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6052 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-04 16:50:52 +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
Shawn Hoffman
e9424bcafa small optimization for gba ucode hle
hopefully quiet gcc about IUCode ctor...

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6049 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-04 13:22:29 +00:00
nakeee
46bd0db43d small scons fix
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6048 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-04 11:56:25 +00:00
Shawn Hoffman
3c3228b6dd I said DEBUG_LOG!!
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6047 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-04 11:46:49 +00:00
Shawn Hoffman
0a3c150f69 allow "swapping" of hle'd ucodes
hle the gba ucode

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6046 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-04 11:44:06 +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
mylek4
340912dc1e DSP HLE
* Some fixes to linear interpolation
* Adds interpolation to ADPCM samples
* Relaxed a volume limit in ADPCM_Vol






Fixed:
- Frac rolls over one iteration before samplePos advances. Can introduce noise similar to flipping samples (1234 => 1214). Introduced oldFrac to fix this. This isn't as noticeable as it probably should be because of below.

- When samplePos doesn't advance it interpolates between two copies of the same sample which actually does nothing. Changed it to always use the current and next sample.

- When frac is 0 you should get 100% of yn2 instead of ~99% added a +yn2 to balance it.


Other changes:
- Added linear interpolation for ADPCM. Sounds like a good idea.

- Set ADPCM_Vol to clamp to x8000 instead of x4e20. Some games will play some sounds at x8000 volume anyways since the volume is applied before this. Lower limit can result in quiet music (x4e20) but some loud ambient sounds (0x8000).


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6041 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-03 15:30:33 +00:00
skidau
c76ba17ff4 Stub out glGetError() calls from the release build of the OpenGL plug-in (found by ector, code by LordMark). Gives a speed-up in the OpenGL plug-in.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6039 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-03 10:48:49 +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
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
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
NeoBrainX
c765127f0d Spelling fixes, etc
Fixes issue 2954.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6027 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-01 14:46:10 +00:00
NeoBrainX
d411924eee Marginally improve FPS counting logic in the video plugins.
Should fix DX11 peaking at 59 FPS instead of 60 FPS.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6026 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-01 14:43:07 +00:00
NeoBrainX
910d543536 DX9: Create textures needed for CPU->EFB access even if it's disabled.
That way, one can toggle that option during emulation.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6025 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-01 14:20:50 +00:00
Shawn Hoffman
76ca439bdf fix small bug with dsp lle debugger: now it will highlight regs which just changed, instead of the ones which changed last step.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6021 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-01 00:47: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
Glenn Rice
87043879f8 Fix a hang in linux with the wiimote new plugin caused by a critical section not being exited. Also removed the original wiiuse_find function and replaced it with my wiiuse_find_more function with a little tweak to speed up wiimote discovery.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6007 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-30 18:55:36 +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
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
Jordan Woyak
8223dcd32c New Wiimote Plugin: Keep track of the io_write report sizes instead of just sending MAX_PAYLOAD bytes. (Should fix the issues of my last commit)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5997 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-29 20:11:55 +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
Jordan Woyak
b70f134c88 New Wiimote Plugin: Added a real wiimote io_write queue like the old plugin. A combination of locks and lack of a write queue were the cause of the real wiimote slowdown. - new plugin should work as good as the old one with real wiimotes now.(but still lacking a pairup button) Other stuff: Disabled execution of Gecko Codes when Dolphin has cheats disabled.(fixes issue 2971) Allow the range of an input to be increased to 500% (will make ps3 controller's tilt more usable)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5993 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-29 10:21:48 +00:00
Glenn Rice
71d4ece44e Fix an issue that caused the DSP-LLE window to be openned twice in windows. (Thanks shuffle2).
Fix an issue that prevented the code window settings from taking effect on application start.  (Thanks shuffle2, skid_au, and sanchez).
Fix a potential segmentation fault with the DSP-LLE debugger window.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5988 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-28 15:22:27 +00:00
Jordan Woyak
5be58c6772 Gecko codes: Added parenthesis where they were needed.(thanks to glennrics and soren) Fixed a copy paste error with write & fill 8bit codes. Also forgot to remove a return false;.(some more codes should work (fixed issue 2968)) New Wiimote Plugin: Added emulated swinging.(seems to work) Changed the emulated calibration data to some nice values. ControllerInterface: moved and constified some stuff.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5980 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-26 05:30:50 +00:00
snzgoo
37217d7857 Fixes a crash in the new wiimote plugin when using real wiimotes plus making real wiimotes work again.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5978 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-25 20:56:48 +00:00
Soren Jorvang
f99a36ccfa Some refinements to (r5955+r5962+r5964):
Don't rely on trailing /'s in directory names.

Destdir only works for global builds.

Only tar up global builds if they are in a destdir to
avoid SCons eating all available memory indexing /usr.

Print current status of shared_foo in 'scons -h'.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5966 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-24 17:39:17 +00:00
snzgoo
ad99d2a4eb Just a small thing that I forgot to change earlier.
The new default wiiuse wiimote read timeout of 30ms has been overridden previously by the default 10ms from the wiimoteplugin.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5965 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-24 17:00:31 +00:00
Soren Jorvang
53f5bc682d Make Cg conditional on those platforms for which it is available.
Of course, this doesn't do much good without another shader compiler..

WIP of OS X application bundle building.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5961 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-24 10:24:16 +00:00
Soren Jorvang
669de4890a abs() works on ints, not floats. Use fabsf() to avoid the double conversions.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5956 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-23 23:48:04 +00:00
snzgoo
919ccb469a Merging Externals/WiiUse/Src and Externals/WiiUseSrc as requested.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5952 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-23 18:19:38 +00:00
snzgoo
27665e5bbd Buildfix for wiiuse/windows (broken since r5944) and more wiiuse clean up, plus merging external and internal wiiuse.h as requested.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5951 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-23 15:03:49 +00:00
Soren Jorvang
09b5dfbd53 Prevent Python from stripping off the final newline of the main(){}
autoconfiguration tests. Some versions of gcc care enough about ANSI C
to complain about this.
 
Use the Linux install hierarchy conventions on other Unices as well.
 
XKeysymToString returns NULL on unknown keysyms, which is not a valid
std::string initializer.
 
There appears to be some disagreement regarding the second parameter
to iconv(). Some versions/installations have it as const, others don't.
Unfortunately, due to wonderful C++ brain damage, implicit conversion 
from const to non-const doesn't work here.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5945 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-22 07:55:35 +00:00
Soren Jorvang
6c7e666a75 Report on the bluetooth queue depth watermark to help diagnose cases
where Dolphin blocks long enough to lose packets.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5944 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-22 06:05:08 +00:00
Jordan Woyak
637e5e542a Double warning fix! Thanks to Nakeeeee and BhaaL! :p
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5943 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-22 05:39:57 +00:00
Glenn Rice
6795551a8c Linux build fix ... again.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5941 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-22 04:38:45 +00:00
snzgoo
987832cbb0 External/wiiuse clean up, part 2.
- More removal of unnecessary code
- Windows: Modification of Wiiuse_Find under windows,
  instead of always deleting and recreating the whole wiimote_t struct, we do maintain the old one,
  adding/removing new wiimotes to/from it
- some wiimote bugfixes, see below for details

Windows related stuff:
Fixed most of the disconnection issues (single and mulitple real wiimotes, both wiimote plugins) (I haven't had a disconnect msg in hours anymore(ms stack)).
Rumble bug should be fixed now(both plugins,pls verify).
Fixed some pair up issues( sometimes you had to press the pair up button up to 3 times, till it paired up your wiimote).
More dongles might be now supported via ms stack, pls try and report back!
Fixed a problem where multiple wiimotes would swap slots on pair-up/addition of a real wiimote (2-4 real wiimotes) (both plugins, but not integrated into new plugin).
Improved ingame auto-pairup for real wiimotes(thx to the new wiiuse_find routine).
Fixed a bug on setting wiimote timeouts, which means changing the timeout was just a dummy earlier.
Most of the stuff concerns stuff in the old wiimote plugin, dont worry, in the end it's important for both plugins. It will get ported to the new plugin sooner or later.:')
Some minor stuff.
This might break osx/linux build and maybe the new plugin realwiimote-wise only. Thx to glennrics to pointing me to some breakings on linux, I didn't fix them all. 
PS I hope i haven't forgotten anything, enjoy.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5940 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-22 04:31:36 +00:00
Soren Jorvang
83883cee45 Port to *BSD. It runs but isn't terribly useful without Cg.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5934 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-22 03:29:35 +00:00
Glenn Rice
3859a7dce2 Lots more work on making the frame aui stuff functional.
Also added a DSPCORE_STOP state.  The DSP-LLE debugger window segmentation faults if it is openned when a game is not running.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5931 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-22 02:05:28 +00:00
Glenn Rice
a103576a54 Add an option for EFB scaled copy to the OpenGL configuration dialog.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5929 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-21 12:07:24 +00:00
Rodolfo Osvaldo Bogado
666ff28f80 fix for mii faces in mkwii. efb scaled copy still not fixed. working on it.
please test

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5928 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-21 02:34:59 +00:00
Glenn Rice
8c7bdebf1e Fix the global build on linux.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5923 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-20 04:19:25 +00:00
Soren Jorvang
244448014a Prevent double inclusion of CommonPaths.h as pointed out by Glenn.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5922 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-20 03:23:25 +00:00
Soren Jorvang
6813a75ab2 Some pathnames are used both by SCons and cpp which can be a bit tricky.
Should revisit and make the distinction more explicit.

Put the Data and Sys directories under Resources in the OS X app bundle.

Construct config.h (now lower-case to avoid confusion with other Config.h
instances in the tree) in the root. One tiny step towards a read-only
and cross-buildable source tree.

Some minor bits of non-Linux Unix portability.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5921 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-20 02:45:31 +00:00
Marko Pusljar
b08230512b dsphle - small mail protocol fix for zelda light type
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5917 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-19 12:34:11 +00:00
Soren Jorvang
a2b1f829cb Get rid of a number of unnecessary env.Clones.
Use SCons' convenient # shorthand for the root of our tree.
 
Also various minor cleanup of SConscripts.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5915 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-19 03:42:37 +00:00
Glenn Rice
b175397cb7 Some work on cleaning up the FrameAui code. Primarily this fixes the debugger windows for the audio and video plugins. They are now all subclasses of a wxPanel, instead of a mix of wxFrames and wxDialogs. This makes them work correctly in linux, windows (they really didn't before), and most likely on MacOSX too!
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5913 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-19 02:09:34 +00:00
dapetcu21
e1cc37d825 Workaround a bug on Mac OS in witch dolphin would crash whenthe OpenGL config window would be opened. It seems that wxDialog::Center() is completely useless on Mac OS X, and not only useless, but it crashes when the window is bigger than the screen.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5911 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-18 20:06:24 +00:00
Marko Pusljar
66d2bc477a Plugin_VideoSoftware fix
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5910 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-18 16:53:49 +00:00
NeoBrainX
a2e39a84f3 Delete various unused files.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5909 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-18 16:15:43 +00:00
NeoBrainX
e8ed50854a Remove code which got obsoleted by r5890.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5906 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-18 15:19:24 +00:00
NeoBrainX
da4c3a5f29 Committing some cleanups by avindra:
- fix numerous warnings
- make some variables unsigned
- remove redundant code and header inclusions
- make code more compact in lots of cases

Committing some additional changes by myself:
- additional header cleanups
- cleanup DX11 initialization/shutdown process (hinted at by avindra)
- Remove the cgD3D9 stuff from Externals since it's no longer needed

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5903 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-18 10:11:34 +00:00
Rodolfo Osvaldo Bogado
60e3a17d0d little bug fix for my last commit
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5897 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-18 00:49:08 +00:00
Rodolfo Osvaldo Bogado
f78133f261 big changes here:
- Eliminate the useless check for cpu modifications option from efb to ram as it must be enabled always
- use constant names in dx11 for buffer length calculation instead to simplify code reading
- implemented scaled efb copy in opengl, still bugy in some games, the option is not in the gui but will add it when it works perfect
- Change the depth calculation behavior:
if the game use z textures is exactly the same as before.
if the game do not use z texture calculate z values in the vertex shader. the advantage id this approach is that early z culling is applied,
improving fill rate. this mus speed up things, even with ssaa and msaa enabled.
please test for regression and enjoy.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5896 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-18 00:18:31 +00:00
Soren Jorvang
4b1a3152b6 Plugin_VideoOGL has been using an old duplicate of VertexLoaderManager.cpp.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5895 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-17 23:36:03 +00:00
Soren Jorvang
3e383aa8eb Maintaining Leopard binary compatibility turns out be a a bit cumbersome.
For a typical OS X app, one only needs to specify the SDK version and the
target OS version range.

Because we use OpenCL which is new in 10.6, however, we must be somewhat
more verbose in order to make use of the forward compatibility facilities.

Unfortunately, the critical bit that is required to have binaries built
on 10.6 work on 10.5, namely disabling the new compact __LINKEDIT format,
causes stack alignment crashes at emulation time on 10.6, so for now
Leopard users still have to build Dolphin themselves.

Hopefully, this stack alignment problem will turn out to be coincident
with lingering alignment issues.

Include the OS X version of the Cg framework in Externals as with the
Windows one. The header files appear to be the same in the Windows and the
OS X builds of the February 2.2 Cg toolkit, although they are differently
munged by what appears to be some automatic process, so no new duplicates.

Any upgrades to the Cg libraries will of course need to be done in sync.

I do hope that Sonicadvance1's GLSL work will enable us to get rid of Cg.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5893 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-17 19:43:26 +00:00
NeoBrainX
11d34fa964 Fix issue 2836: static local variables are evil.
If you want to celebrate this commit, what about playing _TWO_ rounds smg or something? ;P


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5892 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-17 16:13:37 +00:00
NeoBrainX
15eb779c01 Move sampler state setting outside the drawQuad utility functions.
Use linear filtering for various buffer copies, improves visual quality a lot.

Some other tiny changes as well.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5891 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-17 15:18:52 +00:00
NeoBrainX
5abed9d5a4 Dependency cleanup in DX9.
Dynamically load a d3dx9 dll at runtime (I tested Dolphin with the first d3dx9 dll and it even worked fine there).
Should fix the flood of users asking why they can't select the DX9 plugin :P

Compilers should be able to stop bundling cgD3D9.dll now.

Minor changes in DX11.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5890 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-17 11:42:28 +00:00
Glenn Rice
25efe443ea Fix an issue that made it so that the emulator could not be resized in the nowx build on linux. Also some code cleanup in the OpenGL and Software plugins.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5889 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-16 21:56:40 +00:00
NeoBrainX
aa88d8b790 Since apparently no one feels like fixing SMG FIFO overflows, commit iceman4love77's fix. No idea if it works or what it does, he seemed pretty confident that it works though.
Only fail once if EFB pokes are requested in DX9/DX11.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5888 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-16 21:51:35 +00:00
Glenn Rice
ec9871e2bc Fix an undefined symbol in the WiimoteNew plugin on linux. The inputuicommon lib must be earlier in the list than inputcommon and common.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5887 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-16 20:08:38 +00:00
Soren Jorvang
697480f5cc Remove long-rotted vestiges of SDL video output.
Use SDL for input devices only on Windows and Linux. 
(Still globally enabled for the legacy Wiimote plugin.)


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5886 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-16 19:17:35 +00:00
Glenn Rice
02ce753b76 This is basicall linux code cleanup. We don not need to pass the X display handle from the video plugin anymore. The wiimote plugins now open their own display handles, and the GUI uses the display handle of the main window frame. Only the window handle from the video plugin is needed. The pWindowHandle variable now passes this instead of the display handle.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5884 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-16 14:14:57 +00:00
Rodolfo Osvaldo Bogado
665d83ed45 some more minor optimizations introduced by aavindraa, i only corrected evaluation order using some ().
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5883 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-16 12:36:55 +00:00
luisr142004
c2ee89b170 include the MP compiler option, which will allow for faster compiling + some minorly stuff :p
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5882 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-16 09:22:53 +00:00
luisr142004
ddaf442e9e DX11: fix mem leak on closing a game (Fixes issue #2836, thanks to aavindra)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5881 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-16 06:16:03 +00:00
Jordan Woyak
deffc95794 New Wiimote Plugin: Moved Linux cursor position code into ControllerInterface/Xlib. (absolute cursor position can be mapped to something other than IR camera) (code fixed by Glennrics) Put the UDP Wiimote dialog's Update Buttons,Update IR,Update Nunchuk... checkboxes in an "Update" group box. Fixed some Linux config dialog problems. (thanks Glennrics again) Some other minor cleanup in ControllerInterface. (changed some std::string/stringstream to char[] where possible) Removed a warning in DX11 plugin.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5880 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-16 03:43:11 +00:00
dapetcu21
bbb48603be Added nunchuck acceleration support to UDPWii . Moved some UDPWii stuff to the nunchuck attachment because I needed calibration data for the nunchuck...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5878 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-14 17:33:14 +00:00
Soren Jorvang
61bd545f80 A little iterator bug and a compiler warning in the OpenGL code.
Use -fvisibility-inlines-hidden on OS X as well.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5875 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-12 20:11:19 +00:00
Rodolfo Osvaldo Bogado
9cb41e7c70 hopefully fixed zww issue with new efb to ram.
implemented new efb to ram in opengl
modified TextureConversionShader preparing the implementation of new efb to ram in dx11
please test for regressions

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5874 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-12 19:30:25 +00:00
NeoBrainX
dcc51e0ef8 DX9/DX11, improvement to r5870: Instead of skipping SetViewport(), fix the viewport to match the old EFB dimensions.
Should reduce or even fix most graphical glitches caused by huge viewports in HD resolutions.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5873 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-12 15:10:27 +00:00
NeoBrainX
ff917cb0c9 DX9/DX11: Workaround the viewpoint/EFB creation issues in e.g. SMG2 on NVIDIA hardware or when using HD. Will most likely cause glitches, but prevents crashing. Correct behavior can't be implemented in Direct3D, so this is the best option we have.
Also two little changes which don't affect functionality or performance:
Change an IUnknown* cast to a T* cast.
Improve some error messages.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5870 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-11 16:26:46 +00:00
Jordan Woyak
91dafccd27 Oops, I disabled tilting.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5866 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-10 06:54:42 +00:00
Jordan Woyak
a0aa506453 GCPad/Wiimote New: Added a set defaults button to the config dialog. (gave new wiimote plugin a few default buttons, not done) Moved MSWindows cursor position code to ControllerInterface/DInput (plan on moving Linux's cursor code to Xlib as well). IR Up,Down,L,R now must have Cursor X/Y/-+ mapped for regular mouse control on Windows. (hopefully this isn't too confusing, the reset to default button automatically sets this up). Renamed One,Two,Minus,Plus to 12-+ (you will have to reconfigure these buttons, sorry). Added text labels for the button and trigger preview bitmaps. -other minor stuff.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5865 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-10 06:48:24 +00:00
Soren Jorvang
2bcdf4f5a4 Remove NSAutoreleasePools that are no longer necessary now that pools
are properly declared at thread entry/exit. I am leaving the ones in
Wiiuse while there's still a small hope that it may be used outside of
Dolphin, though.

Move the fixed MAP_32BIT definition for OS X to Common.h.

UDPNunchuk.cpp was deleted, so update the scons build.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5864 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-09 22:31:04 +00:00
Jordan Woyak
1e4f3c589d New Wiimote Plugin: Made UDPWiimote use the regular "Nunchuk" extension setting. Having a separate "UDPNunchuk" was really ugly. -some other minor changes.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5863 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-09 22:11:12 +00:00
Rodolfo Osvaldo Bogado
d0c9a38681 2 commits in one:
fix frame dumping and screenshots in d3d9 and opengl
some improvements to the new efb to ram
please test to see if the issues introduced by the new efb to ram are solved by this commit

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5862 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-09 20:56:16 +00:00
Glenn Rice
df32603ba4 When refreshing real wiimotes in linux, make sure that real wiimotes have been initialized first. Thanks Billiard.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5861 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-09 04:02:36 +00:00
Soren Jorvang
0284a7a1df Some more attempts at cleaning up the scons build and more clearly
identifying which options and parameters go with which platforms etc.

OS X, like Windows, now no longer uses Config.h. Configure() is still
used for the wx-config parameters, but that is a temporary measure.

Globals.cpp has never been used.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5860 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-09 01:26:53 +00:00
Soren Jorvang
a4a61ae95c Restore a line deleted by accident.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5854 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-08 15:56:09 +00:00
Soren Jorvang
39ae36398f Copy the version string obtained from svnversion at runtime instead of
using it as a constant in several places. Saves a few bytes and the time
it takes to recompile a bunch of files whenever svnversion twitches.

Using the SVN version string as an integer is not portable as the Unix
svnversion always includes e.g. the "M" suffix for a modified tree.

Windows people, please check my change to Plugin_VideoDX9/Src/main.cpp
as I don't really understand how _T() and the %hs format string work.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5852 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-08 15:25:01 +00:00
Glenn Rice
75be9ce40d Fix the nowx build. Do we still want to keep the nowx build? If you do speak up now because soren wants to remove it.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5851 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-08 00:52:46 +00:00
Rodolfo Osvaldo Bogado
0cdfef4056 fix for msaa in opengl
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5850 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-07 22:09:52 +00:00
Glenn Rice
c37bca75b6 Make the refresh button on the Wiimote New plugin add new wiimotes in linux, instead of disconnecting and reconnecting those that were already connected. This makes it possible to connect new wiimotes during a game by openning the wiimote configuration dialog and refreshing. You still need to tell dolphin that a new wiimote is connected using Ctrl+F5-F8 or the corresponding menu entries.
Also fixed a segmentation fault caused by the UDP Wiimote stuff when a thread was not properly ended.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5847 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-07 02:19:16 +00:00
Rodolfo Osvaldo Bogado
539f63b58b ok, here goes a really experimental commit:
replace efb to ram implementation by a hybrid approach.
explanation:
when copying from efb to texture, instead of make a copy to a texture or to the ram, copy the data to both, in hi quality to the texture and in native quality to the ram.
then instead of re-decoding the data from ram (very slow) use the data in the texture.
to improve this even more, test if the cpu has modified the data in the ram copy, if so, update the texture in memory and mark it as dynamic to avoid redundant work in future frames.
having all this implemented this is what is archived:
sms: full quality with scaled efb copies and fully functional goop cleaning :)
ztp: efb to texture speed with full map support.
nsmbw: this is a hard to emulate game, as it make a lot of shading and texture modification in cpu. it only have 35 fps in my system with new efb to ram but is 10 fps faster than normal efb to ram.
this game also show me another unimplemented feature, copy efb to multiple textures at the same time (is used to animate coins and other things in the world).
this is a remaining todo in efb to texture.
a lot of games should improve, so please test and let me know any regresion caused by this commit. 
if everyone likes this the next step is, implement efb to multilpe textures and merge efb to ram and efb to texture.
then port to the other plugins.
enjoy.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5846 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-06 22:27:13 +00:00
Rodolfo Osvaldo Bogado
464bac82ff somo improvements in vertex manager in dx11, may spedd up things a little.
i made this changes trying to found the origin of the sps in zww and sms but no look so far.
the code is looking nice so commit it

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5845 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-06 22:10:15 +00:00
Glenn Rice
0e2b4d8306 Implement proper thread naming on linux. This fixes a segmentation fault with thte wiimote new configuration dialog when a thread was named without first calling ThreadInit.
Also take care of some more eols.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5843 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-06 16:16:07 +00:00
luisr142004
e9e12ff100 cleanup + some eolz
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5842 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-06 13:14:51 +00:00
Glenn Rice
3e08208f42 Linux build fix, code cleanup, and compiler warning removal.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5840 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-06 01:37:34 +00:00
Rodolfo Osvaldo Bogado
19cdaaae89 little fx to solve issue 2897
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5839 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-05 19:27:08 +00:00
dapetcu21
bd4d583ea9 Non-intrusive nunchuk stick. The received stick only kicks in when the stick configured in settings is untouched.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5837 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-05 14:57:25 +00:00
dapetcu21
c8ddcb9df1 Added nunchuck through UDP support in the new plugin.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5836 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-05 13:51:01 +00:00
dapetcu21
ca827b9930 Added UDPWii support to the new plugin. Hopefully I didn't made a mess... Nunchuck support not implemented yet. I want to make it a separate extension.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5835 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-05 10:46:32 +00:00
j4ck.fr0st
8e4ef9b9e5 Slightly change my last commit with sorens idea of using CG_VERSION_NUM instead.
For everyone having black screens on Windows: Try switching off MSAA, it seems to be broken (at least for me)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5832 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-03 21:21:28 +00:00
Jordan Woyak
2e6a9f9805 New Wiimote/GCPad: Fix segfault prob in Linux.(thanks glennrics) Some minor changes to real wiimote: force continuous reporting off, since only the last data report is used currently.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5831 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-03 20:14:57 +00:00
j4ck.fr0st
6cc3e4ba14 Add the patch from Dragonlord for broken Cg 2.1 on Linux with ATI cards (Fixes Issue 2508). Shouldn't affect anything else than Linux, please test it there.
Update Issue 2508
This should take care about the black screen. Please open a new issue for other problems that may arise.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5830 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-03 19:10:23 +00:00
Glenn Rice
2074b2ef8e Fix the undefined symbol in the new wiimote plugin on linux.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5829 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-03 17:08:41 +00:00
snzgoo
2ed8a4331e Fixing delayed input issues in new and old wiimote plugin for real wiimotes. Having more than 1 real wiimote connected but not connected all of them also ingame it, caused heavy delays of active wiimote input.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5827 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-03 13:05:55 +00:00
Jordan Woyak
a054cc71b6 Fix some fail logic and a lil prob with UI when changing source and clicking "Refresh".
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5826 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-03 11:20:38 +00:00
Soren Jorvang
dc8778e2d9 On Windows, wiiuse_find implicitly does the equivalent of wiiuse_connect
as an accident of implementation. On other platforms, an explicit call
to wiiuse_connect is required.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5825 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-03 10:54:55 +00:00
Soren Jorvang
10e625a11a PluginWiimoteNew now needs libwiiuse.
Treat external data (configuration file and device names) as 8-bit data.
Character set mapping is not ideal, but at least such names can be used.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5824 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-03 10:34:13 +00:00
Jordan Woyak
0bf3dfda03 New Wiimote Plugin: Added real wiimote support.(only tested on Windows, still a few probs: after refresh alt+F{5..8} x2 is needed) New Wiimote/GCPad: Re-merged Keyboard+Mouse for easier kb+mouse configuration, like before.(DirectInput doesn't support individual kb/mice anymore like I thought it did) Fixed some bugs and maybe leaks in GUI.(got rid of evil dynamic_cast) Renamed stuff from DirectInput to DInput, cause it's shorter and rhymes with XInput, I guess. (I remembered eol-style native, shuffle lost his job :P)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5822 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-03 08:04:10 +00:00
dapetcu21
0dc8833396 A multi-interface listener, threaded approach to UDPWii
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5821 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-03 04:56:37 +00:00
Rodolfo Osvaldo Bogado
12a676c273 this is a pure optimization commit:
return to the  old values in constants in pixelshader, the old values give mi 3 or 4 fps more,(maybe some kind of compiler optimization) in some games and with the current algorithm i notice no difference with this values, please report any problem.
optimizes SSAA to make it a little faster and, the quality should be the same but with a little speedup.
change the way the frame is processed depending is xfb is enabled or not to make this a little faster.
please test and report any problem

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5820 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-07-02 17:09:53 +00:00
Rodolfo Osvaldo Bogado
d511b50612 this commit is divided in 4 parts:
1 - Optimize pixelshadergen to avoid redundant register overflow math, with this if a game don't need this will be not applied.
this must bring some fill rate back and improve speed a little in fill rate limited systems.
2- some corrections to vertexshadergen to avoid uninitialized texture coordinates, dono if is the correct way to fix it but t least it will make house of the dead overkill playable in dx11.
the bad thing: still missing geometri in dx9, in dx11 it works exactly as on opengl.
3 - some optimization made to improve fps a little wih the latests changes made to fifo.
* back to the original code in beginfield as now it will work right.
* check for efb access more often as a lot of time is lost waiting for efb access
4 - apply a little fix for missing textures in nvidia opengl tanks to  Wagnard28 for finding that nvidia does not like invalid shader id :)
please test for any regression

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5812 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-29 14:40:37 +00:00
Orphis
8315aa1432 Fix some projects to include CLRun/include to find the OpenCL headers.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5809 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-29 09:15:29 +00:00
NeoBrainX
d256dd2083 Drop d3dcompiler_xx.dll dependence, using D3DX11CompileFromMemory instead.
Hopefully solves the remaining issues from r5805.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5806 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-27 16:08:54 +00:00
NeoBrainX
18ccffdb64 Load the d3dx11 dll at runtime instead of linking directly against it. Should make DX11 usuable again if the DX SDK used for compiling is newer than the runtime dlls used.
Various little tweaks and fixes, mostly to fix D3D11 debug layer warnings.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5805 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-27 14:04:49 +00:00
Glenn Rice
b372fe4329 Set g_Config.bNumberRealWiimotes as volatile. Otherwise connected real wiimotes are not acted on.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5802 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-26 16:48:57 +00:00
Soren Jorvang
8c3ed5dc46 Lint.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5796 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-26 13:12:28 +00:00
Soren Jorvang
7ce5e5d1bd Config.h should never be included directly, but rather through Common.h
for portability.

(It is a bit unfortunate that some of the plugins have a Config.h of
their own, which can confuse this matter.)


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5795 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-26 13:11:34 +00:00
Soren Jorvang
2be444965a When checking to see if the rendering window has focus, there are a
few different variations that can be true depending on circumstances.

This would likely cover the _WIN32 case as well, but since I don't
pretend to fully understand just what is going on with wxWidgets
here, I can't really call this any less of a hack..


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5794 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-26 13:07:33 +00:00
Soren Jorvang
ebb49c28f7 Fix scons build.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5789 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-26 03:02:57 +00:00
snzgoo
f6d844dac1 MAJOR and long ago overdue wiiuse and real wiimote sourcecode cleanup. Removed "recording" in old wiimote plugin and other not necessary functions(EEPROM reading, we 'll just do a reconnect instead to use default accel calibration data etc). Recording is not needed anymore(playback of recorded moves should be still working). Everything the recording feature offered, the new wiimote plugin does as well and even more. The cleanup will ease the port of the real wiimote feature into new wiimote plugin, which is still only offering emulated wiimote support. Billiard said he's now on it.:)
Wiimotes are now slighty more responsive and multiple wiimotes should harmonize now slighty better. This clean up was requested/inevitable and should have be done way more earlier. This "might" break osx/linux builds, so please test. If your aware of any "real wiimote" issues please post it in the comments as well(dont forget to state your OS).

Known wiimote issues:
1.) Possible wiimote disconnect on pressing the home button
2.) 1-2 Possible wiimote disconnects directly after starting a game
3.) Rumble causes lag. I don't think this is a wiimote plugin issue itself, I'm not sure tho. It would be interesting to know whether the lag still happens on emulated wiimotes as well, when the game tries to rumble.
4.) Connecting(pairing up and refreshing) a 2nd/3rd/4th real wiimote while having a game running/paused, might swap player slots and cause disconnects at that moment.
If u have more issues, feel free to post them, to have them all here collected once more to get a brief overview.
Apart from that, increase the wiimote read timeout @settings(20-200). If your  expecting frequent disconnects, restart dolphin, and don't open the wiimote gui before playing instead directly start games.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5788 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-26 02:08:30 +00:00
XTra.KrazzY
5abc698000 Build fix fix.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5786 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-25 01:20:25 +00:00
XTra.KrazzY
1133c02660 Build fix.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5780 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-24 20:54:03 +00:00
Rodolfo Osvaldo Bogado
3435c0f647 fixed blending in dx9 and dx11
fixed fps counter in all the plugins
enjoy

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5778 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-24 15:58:06 +00:00
Marcos Vitali
10b5d2371c My first commit :D
Dual Core sync fix.
When the FIFO is processing data we must not advance the cpu cycles in CoreTiming because in this way the VI will be desynchronized. So, We are waiting until the FIFO finish and while we process only the events required by the FIFO.
This should fix Issue 2072 .
This affect to all games in dual core mode.
Please, You can test all games with VPS limiter auto, 60, 50 depending of the game and compare with prev revision.
For example now NSMB in the video Intro has 60 fps (prev 30 fps) :D or SMG does't need anymore FPS Limitter Hack to get 55-60 fps
Beside the slowdowns now are more softly and the fps more stables because the VI sync is almost perfect.
The Core Timing and Fifo modifications are delicated. Please report if this hang any game. Don't forget check with prev revision.
Enjoy it! Thanks to Rodolfo for teach me all about dolphin.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5777 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-24 13:28:54 +00:00
Shawn Hoffman
5e81298ef0 boring svn:eol-style native again...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5771 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-22 23:45:56 +00:00
NeoBrainX
d0f00cedff DX11:
Cleanups, documentation, ...
Theoretically enable anisotropic filtering if selected in the config, not sure if it works though.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5761 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-21 17:54:13 +00:00
Glenn Rice
11ac672730 Revert a hack that snzgoo committed that should not have been commited. That hack prevents the X loop in GLUtil.cpp from properly detecting events that it should detect.
I don't know if issue 2792 is a valid issue for dolphin.  I think that is a bug in the X server implementation on those distributions of those affected.  I can not replicate it.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5758 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-21 12:29:32 +00:00
Rodolfo Osvaldo Bogado
fde15c1bc6 some fixes to depth test and screen clearing in dx11, now a lot of the remaining graphic errors should be fixed
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5756 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-21 02:40:09 +00:00
NeoBrainX
a450fd45d8 DX11:
Make font rendering a lot prettier.
Fix constant buffers in EmuGfxState::ApplyState() to really have a size which is a multiple of 16 instead of 65536.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5755 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-20 23:10:55 +00:00
hrydgard
6a88241e64 D3D9: Delete some long dead code. Also add one more statistic: number of compiled shaders that actually have unique code (not accurate unless you delete the shader cache before running). This stat clearly shows that in f-zero we create 5x as many pixel shaders as we should, so there's clearly a problem with the shader ID generation.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5754 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-20 22:23:34 +00:00
snzgoo
6e83fe2416 win32: Some more work on real wiimote automatic ingame pairup (automatic paired up wiimotes get connected now ingame as well, but it's not completely working yet, we're almost there tho:P) and changed the automatic unpair real wiimotes routine, so it won't get loaded via dll_detach anymore.
minor code changes and adding comments.
And issue fix 2792 with credits to Karloathian for finding and fixing it.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5750 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-20 02:17:53 +00:00
Rodolfo Osvaldo Bogado
4ab0e4b8a0 fix for rbga8 decoding that causes problems in nsmbw
fix for screen clearing in opengl and d3d

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5749 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-19 21:12:09 +00:00
NeoBrainX
208c33f09c Use the new texture decoder path to speed up texture loading in DX11.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5748 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-19 18:14:05 +00:00
hrydgard
ccbc1feb0b D3D9: Fix issue where the shader caches were lost whenever the render window was resized. Add some error logging to LinearDiskCache. + some minor cleanup.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5747 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-19 16:22:24 +00:00