Commit Graph

318 Commits

Author SHA1 Message Date
Glenn Rice 5e6eecf0af Ok, this really does it.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5052 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-13 21:19:41 +00:00
Glenn Rice 24a4d1a1e0 Ok, now the mac build should be fixed
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5051 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-13 21:12:16 +00:00
Glenn Rice 47609c4524 Mac build fix to the issue caused by my last commit.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5050 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-13 21:06:19 +00:00
Glenn Rice c2e0c75c93 EXPERIMENTAL
Removed X event loops from GCPad and Wiimote plugins, and implemented an asynchronous check for keyboard and mouse buttons.
Also added an X event loop in core that handles events while the emulator is paused.  Prevents unexpected behavior from events that occur while the emulator is paused.
Now there is only one event loop running at a time (besides those hidden in SDL).
I will revert this commit if other devs are unhappy with it.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5048 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-13 20:47:23 +00:00
Glenn Rice 78f8fe2e85 Implement wiimote IR emulation with the mouse without using the pointer motion events. Hopefully this removes some of the overhead from the X event loops. One downside is that the IR emulation will not work until another event on the window has occured. Although this is minor, usually an event happens before you need the IR pointer.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5040 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-12 02:53:45 +00:00
Glenn Rice 13437c1f6b Fix segfault in linux if user clicks on the window manager close button of the
emulator.  Also added the ability to close the emulator with the escape key.
Fixed an issue that caused a segmentation fault when trying to close the
emulator when running in fullscreen mode, which can also be done using the
escape key.  This makes fullscreen mode useable in linux!


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5023 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-07 02:41:02 +00:00
Glenn Rice feba09f7a3 Linux global build. At least the basic footwork is done here.
Basic usage:  "sudo scons install=global install"
Hopefully this doesn't break builds on Macs.  I have tested this on linux and windows.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4994 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-02 21:56:29 +00:00
ayuanx 6d309751d5 This fixes some of the crash-on-stop when your joypad is plugged in.
The problem is that there is no cheap method to do communications between two DLLs that employ the same device.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4992 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-02 13:09:07 +00:00
luisr142004 c28ef357f5 Fixes issue 1777.
plus a fix for wiimote detection on win32 when using the default MS stack

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4989 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-01 18:22:58 +00:00
ayuanx fdaa0e8d4c Fixes Issue 2164
Conflicts are due to same file name when omitting full path

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4982 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-29 04:42:19 +00:00
ayuanx f9dd509459 Fixes Issue 2180
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4981 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-29 03:11:29 +00:00
Glenn Rice f32fc9667c In linux the controller plugins need to put back some events for the video plugin
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4972 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-28 00:35:35 +00:00
Glenn Rice 10192a9a4b Change default wiimote emulation key settings to lowercase in linux
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4969 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-27 13:46:30 +00:00
Glenn Rice 36a5015bc0 Make arrow and home keys work in wiimote emulator.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4967 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-27 02:39:59 +00:00
Glenn Rice 20704509bf Fix a compile issue on platforms other than windows and linux
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4962 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-26 03:05:23 +00:00
Glenn Rice 727283c4de Added mouse support for linux. It is still rather crude, but it works.
Unfortunately the mouse pointer doesn't match up very well with the IR pointer yet.
Also, I had to add the PointerMotionMask to XSelectInput which adds overhead to the already stressed X event loops.  Five event loops by my count, really?


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4961 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-26 00:11:45 +00:00
Glenn Rice b17c5f3cf3 Fix the linux keyboard.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4951 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-24 18:23:47 +00:00
Glenn Rice cb47eb27cc Don't delete dialogs. Let wxWidgets take care of this.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4950 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-24 16:39:47 +00:00
j4ck.fr0st 225d691bcc Make sure configuration can only be opened once
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4949 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-24 15:13:35 +00:00
Glenn Rice afb82b1d8c Fix the PadSimple and GCPad plugins so their dialogs close properly.
Get rid of g_FrameOpen variable in Wiimote plugin.  It isn't needed anymore.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4948 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-24 14:41:53 +00:00
Glenn Rice 3be00e102c Fix wiimote config dialog.
In linux if the dialog is opened and then the program is closed without running a game the program hangs and has to be killed because the dialog was never destroyed.
In both windows and linux if the dialog is opened and then a game is run, the program hangs or segfaults (for the respective os's) when the game is stopped.
This will also need to be done with the pad plugin as the same issue is there.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4940 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-24 03:50:40 +00:00
ayuanx 135b1a33cc Fixes Rumble Strength for XInput
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4933 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-23 13:34:18 +00:00
ayuanx 1ecbcb39ea Added support for X360pad rumble
Need someone who has a X360pad to test.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4929 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-23 12:36:30 +00:00
ayuanx 68a4eacb62 Merged PadSimple with nJoy
(Linux build could be broken, X360Pad support could be broken)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4924 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-22 23:19:16 +00:00
ayuanx 6cdf13e6a7 Fixes Issue 2085
Fixes Issue 2042
Fixes Issue 1982

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4912 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-21 06:29:31 +00:00
ayuanx 1426a5c768 This should fix Issue 1982 & Issue 2042
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4908 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-20 17:01:38 +00:00
Sonicadvance1 40ac160f37 Some clean up in io_osx.m, the if not confused me in the SConscript. I made the frames work with WX 2.9. Disabled rumble in Wiimote in OSX. Wiimote MAY work in Dolphin in OSX, not 100% sure. Made a test app and it works in that. Couldn't build a WX build of Dolphin in OSX because Macports doesn't compile in AUI apparently
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4904 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-20 11:49:11 +00:00
ayuanx f60c3e8445 Fixes Issue 1910
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4886 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-19 09:54:21 +00:00
j4ck.fr0st 16f71a77e7 Revised r4853, config default settings will be used for games that do not have IR Pointer settings yet (falling back to hardcoded values if even those are missing)
Fixes issue 2045

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4882 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-18 20:46:23 +00:00
ayuanx 734b0f5dd4 Fixed a stupid error left by me.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4860 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-16 22:37:38 +00:00
fgfemperor 1a25dfe279 Load IR Pointer settings on every game boot, because that's a per-game setting (each game has it's own IR calibration)...
Please ignore previous revision, which is a proof of why late-night coding isn't always a good idea...

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4853 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-16 15:02:01 +00:00
fgfemperor e203c80c5d Fix an Issue that made the IR Pointer values sometimes not to be loaded from the config.
More precisely, if you booted a game before opening the config panel, they'd all go to the default values...

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4852 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-16 13:07:03 +00:00
tmator 4172928b14 coreaudio backend make sound now
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4814 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-12 22:35:28 +00:00
ayuanx 60a2d20fda Minor GUI rearrangement
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4805 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-11 13:56:11 +00:00
Shawn Hoffman 1a5817f6fd from BhaaL: linux compile fix for r4794, Event::Wait now supports a timeout (default to INFINITE), and it returns true when the timeout expired. fixes issue 1974
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4799 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-09 19:06:23 +00:00
ayuanx f472e2904d Now Progressive Scan actually works for those games that really depend on this setting (Try Mario Kart Wii)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4798 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-09 17:11:59 +00:00
ayuanx 81afdbe4f4 Compilation fix for r4795
Nunchuck gravity fix for r4794 (as sanchez instructed)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4797 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-08 22:56:27 +00:00
fgfemperor 69fdb7ae5c Added Nunchuk to the Wiimote Recording window. Now you can know if your Nunchuk is working as it should =P
Also fixed the crash when clicking OK while having one WiiMote active.

Nunchuck's gravity is kinda wrong, don't know why though, We don't know if it's Wiiuse's fault or if the nunchuk has different vars...
Punchout @ingame the nunchuk gravity also doesn't work...

All the work done by sanchez!

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4794 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-08 20:27:54 +00:00
fgfemperor 64167bcb60 Now you can switch between Emulated and Real WiiMotes, connect more Real Wiimotes and even pair them up (if you have MS BT Stack) during gameplay!
All you gotta do is Pause the emulation! That's useful for when your batteries run out during gameplay, for example...

But if you change the WiiMote source (between Emulated, Real or Inactive) you must disconnect and reconnect (Menu Tools -> Connect WiiMote) the WiiMotes affected by the change...

Thanks to jack.fr0st who did all the emulation state notification work!

Now every plugin has a way to know the current emulation state (paused, stopped or playing)

@ayuanx: I thought about doing a PostMessage(g_WiimoteInitialize.hWnd, WM_USER, WIIMOTE_DISCONNECT, current_number); so that the user gets asked to reconnect that WiiMote, trying to avoid having to disconnect and reconnect, but it didn't work because shooting that message only asks to reconnect, doesn't do a disconnect... Do you have any ideas on how to accomplish that?

Also, if anyone could check if Issue 1916 is finally fixed... Or at least when is the cursor being hidden or not...

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4789 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-06 19:26:52 +00:00
ayuanx 623a09b5a5 It looks like MotionPlus and other Extensions are actually sharing the same register storage space.
So maybe we should replace "g_RegMotionPlus" with "g_RegExt" instead.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4788 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-05 18:07:23 +00:00
ayuanx 516f7a4ca1 An attempt to fix Issue 1919 (Multi-Wiimote Freezing)
Please test.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4787 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-05 17:39:06 +00:00
fgfemperor 6500db254f Now you can pair up your Real WiiMotes on the Wiimote config panel!
It's really helpful since pairing up using Microsoft's Stack is a real pain!

Thanks to jack.fr0st and sanchez who did most of the work!

Note: IT ONLY WORKS WITH MICROSOFT BLUETOOTH STACK!

Also you should press the Refresh Real WiiMotes button after everything is paired up! (Because it takes a while for the drivers to get installed)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4786 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-05 17:38:37 +00:00
ayuanx 72b1570e08 Fixed Issue 1928
Fixed Issue 1917
(Since wxWidgets is not allowed in core, so I moved the popup window to CFrame)

*Maybe* this could also fix Issue 1919?

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4780 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-03 23:05:52 +00:00
ayuanx 92ef4f1156 1. Fixed the freeze issue in "Super Mario Galaxy" and other games, which was introduced since r4762
2. Fixed Issue 1909
   Multi-Nunchuck control problem

3. Updated SYSCONF, which should enable games that require MotionPlus, such as "Wii Sports Resort"

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4773 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-02 05:15:36 +00:00
fgfemperor 492e44dcb1 Re-worked multiple reall wiimotes... Now it looks a lot better! :P
Fixes a crash when the slot selected to use Real WiiMote is greater than the number of Reall WiiMotes connected...

For example: We have 1 Real WiiMote connected, and the user selects the 4th WiiMote as Real WiiMote...

Also Let's you choose between Inactive and Emulated when the game is running... But you must disconnect and connect the wiimote for the emulated to start working (Via Menu -> Tools -> Connect)

I'm trying to figure out a way of allowing change to Real WiiMote while the game is running... It can be done when the game is paused, but I can't find a way of detecting if the game is paused =\

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4771 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-01 16:50:11 +00:00
ayuanx 25abd0f944 Small code cleanup
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4768 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-01 03:19:46 +00:00
Shawn Hoffman eb16c51d5f fix crash when switching to real wiimote with "connect real wiimote" already enabled.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4767 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-01 02:19:19 +00:00
fgfemperor 195f734054 Ooops, forgot to save one file before commiting! =\
Really sorry about that...

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4766 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-01 00:46:52 +00:00
fgfemperor 7359b3b2a6 Now Dolphin officially supports multiple REAL WiiMotes!
Only downside: You can't change between Real and Emulated WiiMotes while the game is running anymore... This is due to the way the Real WiiMotes are assigned to the slots...

I've tested it with 2 real WiiMotes, but I can't see why it wouldn't work with 4!
Also, you can assign Real or Emulated WiiMotes to any one of the four slots that it will be respected!

Happy New Year everybody!

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4765 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-01 00:38:24 +00:00
ayuanx 7ad2f5087a Fixed an issue that stick mappings for Nunchuck / Classic Controller / Guitar Hero are not saved
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4764 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-12-31 22:12:32 +00:00