Commit Graph

5032 Commits

Author SHA1 Message Date
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
Soren Jorvang d18085c3ad Don't bother using autoconfiguration to find the OpenCL and Cg
frameworks on OS X.

Try to be a little clearer about which configuration options apply    
to which platform(s). Should pave the way slightly for win32 scons. 
 
We have accidentally been using LUA_USE_LINUX on OS X all along.
Turns out that LUA_USE_MACOSX is for an ancient version of OS X and
LUA_USE_LINUX is a reasonable set of defaults for modern Unices, so
just keep using that.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5804 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-26 19:17:43 +00:00
Soren Jorvang 9de9ec1fb6 It would appear that FindFocus() is (differently) broken on Windows.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5803 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-26 18:50:22 +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
Glenn Rice 8bfb17bba1 Config.h needs to be included in CommonPaths.h because CommonPaths.h is included in Common.h before Config.h is. If you want to find an alternate way to fix this so that Config.h is only included in Common.h watch for circular inclusions next time.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5801 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-26 14:54:43 +00:00
Soren Jorvang 20fd23752f Put back the store removed in r5790. JIT on OS X crashes without it.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5799 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-26 14:10:02 +00:00
Soren Jorvang 10b76db391 Link the OpenCL framework weakly on OS X, so that a binary built on 10.6
with OpenCL will also run on 10.5 without OpenCL.

Build with OpenCL by default now, but keep the opencl build option around
until Linux also links OpenCL weakly, at which point it can go away.

Start to merge in the actions required to make the OS X application bundle
redistributable into the main build and let bundle=true be concerned only
with the optional step of creating a dmg.

Some people are building binary snapshots for OS X without applying the
install_name_tool fixups and besides, osx_make_dmg.sh doesn't fully handle
the internal dependencies between the wx libraries, so we need to be rid
of any external dependencies by the time "scons bundle=false ." finishes.

Ideally we should just use static builds of the wx libraries, but the flat
namespace used by Objective-C for anything other than normally linked
dylibs (sadly not dlopen'ed dylibs) makes that difficult because both the
main binary and the plugins have wx linked in without any symbol ordering.

TBD: Either do automatic install_name_tool fixups for both the main binary
and the wx dylibs or find a workaround for the flat namespace problem.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5797 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-26 13:29:44 +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 a53d0cb6d5 The ControllerInterface API has the notion of an "id" which is presumably
meant as a ideally persistent device instance number.

In a dynamic environment such as when dealing with USB/bluetooth HID's,
I am not sure how much sense such an id can make and it would probably
be better to identify devices by an opaque blob (and a printable string).

In any case, the OS X HID manager does not offer the illusion of a
persistent integer instance identifier.

A string in the form of the device's own name is not sufficient as on
e.g. my Macbook Pro, there are three HID devices all bearing the name
"Apple Internal Keyboard / Trackpad".

For now, hijack the ControllerInterface id to mean the the HID usage
page number. This at least separates keyboards and pointing devices,
allowing the keyboard to be selected in the configuration dialog.

Also some minor cleanup.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5793 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-26 13:03:25 +00:00
Soren Jorvang ebbfba62a0 On OS X, add autorelease pools to the cpu and emu threads to avoid
leaking memory. This is necessary because the wxgl code called from
those threads relies on deferred release.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5792 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-26 12:52:57 +00:00
Marko Pusljar 67d5d89388 Starfox Adventures DTK audio loop fix (thanx to James333)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5791 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-26 10:46:13 +00:00
skidau e07a9b107a JIT fix. Brings back the speed lost in r5378. The memmap function was incorrectly marking virtual memory as real memory. Fixes issue 2653.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5790 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-26 03:07:07 +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
Marcos Vitali f94eed887b Uncomment Ayuanx patch, this was commented in my last commit by error, My apologize...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5784 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-25 00:13:06 +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
Glenn Rice e706ccc5d0 Hide OpenCL GUI option for non-OpenCL builds.
From now on if you create a GUI option specific to a particular build, do not gray it out.  Instead do as I have done here and make it not present on those builds.  It may add a few precompiler conditionals that developers have to look at, but that is considerably better than a completely useless option that the end user has to look at.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5774 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-23 12:57:59 +00:00
nodchip 5cf491af64 VideoCommon: A minor speed up.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5772 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-23 03:02:15 +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
j4ck.fr0st 58f42414ba Fix a copy+paste bug from r5768 (Fixes Issue 2853)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5770 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-22 19:35:54 +00:00
nakeee 454de392d7 compile fix
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5769 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-22 15:10:25 +00:00
xsacha 21fb4cb96c Add a toggle option for OpenCL in Config (in Advanced Settings). Default is off.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5768 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-22 13:17:01 +00:00
Jordan Woyak 25aca8cc4a GCPad/New Wiimote: Fixed issue 2848 (profiles not saving). Renamed DInput mouse axes to "Axis [XYZ][-+]" from "Mouse XYZ...". Minor cleanup/warning removal.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5767 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-22 08:30:33 +00:00
Orphis 2cc5b98f07 Added OpenCL texture decoding to RGBA usable by DX11 for formats RGB565, RGBA8, RGB5A3 and CMPR
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5765 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-22 03:10:43 +00:00
Orphis c2e32371f6 Refactor and prepare the OpenCL texture decoder for decoding textures to RGBA format required by DX11.
Fix the decoder codepath when OpenCL is enabled and the DX11 plugin is used.
Added the DX11 plugin to the Dolphin project dependencies.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5764 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-22 00:52:17 +00:00
XTra.KrazzY 1b5b57bff3 Windows/Linux/whatever build fix.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5762 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-21 18:25:49 +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
j4ck.fr0st 3650ee2fc5 OSX build fix
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5760 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-21 17:15:42 +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
Jordan Woyak 9e3b653688 GCPad/New Wiimote Plugin: Individual keyboard and mouse devices are now listed on Windows(2 player with 2 keyboards possible). Improved the ability to map multiple inputs to the same control. Inputs from different devices can be mapped to the same button (example: Mouse Left and XInput A). More advanced mappings such as "Button 1 or 2 and NOT button 3" are possible. I hope the GUI after right clicking a button isn't too confusing(may change it to be a bit more user friendly). Hopefully, I didn't break OSX stuff by 'const'ing a few functions.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5757 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-21 03:12:16 +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
hrydgard c51bb0b010 ppc: remove an assert and update some comments. Fixes games that would keep complaining about dcbtst not implemented (i've seen one, crash bandicoot for wii)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5752 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-20 14:53:29 +00:00
luisr142004 be3c06f326 Some more OCL changes : Gives 10x speedup for RGB5A3 on pre-DX11 hardware. Minor speedup for CMPR. (code by xsacha)
plus a segfault fix for issue 2779

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5751 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-20 05:02:26 +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
Rodolfo Osvaldo Bogado 8c6ae1f6f4 add a path to texture decoder to produce only rgba textures, this will make texture loading in dx11 a lot easier and give a little performance boost to.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5746 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-19 13:31:40 +00:00
NeoBrainX 64ffe0039a DX11:
Fix StateManager usage in ResetAPIState/RestoreAPIState.
Fix screenshots (finally).


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5745 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-19 12:48:09 +00:00
luisr142004 ab1e5f8537 apply a patch done by xsacha :) + some minor stuff :p
what changes do: cmpr decoding is fixed and rgb5a3 is re-enabled

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5744 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-19 07:59:53 +00:00
NeoBrainX d7bbddcbd3 DX11: Prefer DXGI_FORMAT_R8G8B8A8 to DXGI_FORMAT_B8G8R8A8 wherever appropriate.
Slightly modify the way we're doing screenshots once again, thanks to Orphis this time ;)


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5743 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-19 01:02:43 +00:00
NeoBrainX 08d7861578 Include the two files added in r5741 in the VC project file as well.
Improve the way we're saving screenshots, thanks to Billiard for spotting that ;)


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5742 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-18 23:55:28 +00:00
NeoBrainX 7b58e0b4e7 DX11: Add the two files which I meant to include in r5740 already.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5741 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-18 23:45:16 +00:00