Commit Graph

66 Commits

Author SHA1 Message Date
FlatOutPS2 de8d3fb1eb LilyPad: Add PS mouse support
Adds Playstation Mouse as a new pad type.

For use with PS1 games only.
2016-11-13 01:23:59 +01:00
FlatOutPS2 a3478e02f4 LilyPad: Add tooltips (#1653)
Adds informational tooltips to several UI options.
2016-11-12 23:52:56 +00:00
FlatOutPS2 5d90afe648 LilyPad: Add separate bindings for each pad type (#1609)
Adds separate bindings for each of the pad types (DualShock2,
Guitar,Pop'n Music). This allows the user to change the button
configuration to better suit the Guitar and Pop'n Music pads without
messing up the bindings already setup for the DS2.

Close #1576.
2016-11-06 21:59:19 +00:00
Clang Format 604d3bac3c clang format: set SpacesBeforeTrailingComments to 1 2016-10-16 21:42:31 +02:00
Clang Format d6ae5bfafa reformat lilypad
Note: I'm worried on the EXPORT/CALLBACK behavior on multiple OS
2016-09-08 21:54:49 +02:00
FlatOutPS2 896730ceda LilyPad: Fix regression in configure binding (#1426)
Fixes regression introduced by the pop'n music controller support PR.

When modifying the axis direction combo box in the Configure Binding
group, the modified binding's info would get deleted and replaced by the
next binding's info. This results in incorrect info being passed to
BindCommand().

This commit reverts the incorrect code so the binding info is backed up
before deletion takes place, therefore ensuring the correct info is
passed to BindCommand().
2016-06-21 22:54:52 +01:00
FlatOutPS2 60ece1ee72 LilyPad UI improvement
The layout of the buttons is improved to more closely resemble a modern analog controller/DualShock configuration, and the Device column of the list view has been reduced slighty so by default the horizontal scroll bar isn't visible.
2016-06-10 11:30:18 +02:00
Jonathan Li f888aa61fb lilypad: Remove local volume control
Windows Vista onwards provides application specific volume controls, and
the local volume feature only interferes with it. Any volume adjusting
stuff probably belongs in SPU2-X.

Closes #629
2016-05-27 23:55:45 +01:00
Jonathan Li 4f24d22a68 lilypad: Disable close hacks when loaded by PCSX2
The close hacks don't work with PCSX2 - the WM_CLOSE message can't
actually be triggered for the rendering window. The hacks were also
designed as a workaround for some PSX emulator close window bugs, which
don't affect us.
2016-05-27 00:36:11 +01:00
Jonathan Li 6fa7a8989c lilypad:windows: LoadLibrary is not required for Raw Input
It's been available since XP and it's not special like XInput (where we
might have SCP in the middle) so let's have the linker resolve the
functions at link time.
2016-02-25 23:36:11 +00:00
ekudritski e2c5236706 Just some cleaning 2016-02-12 09:57:08 +02:00
Elgar 8c5c4608d2 LilyPad: Add support for Pop'N Music Controller 2016-02-01 15:45:26 +02:00
KrossX 7493570a0d Default config file for xinput 2015-12-21 08:07:12 -03:00
Avi Halachmi (:avih) 7d6a73ab27 LilyPad: in PS2 mode - disable configs/hacks which PCSX2 doesn't need
Disable and overrides the following hacks at the config and dialog:
- Disable screensaver
- Safe fullscreen exit on escape
- save state in title

All of those are hacks which PCSX2 doesn't need anymore and therefore are just
confusing if enabled.

Note that we assume PCSX2 is synonym for PS2 mode in LilyPad, and while AFAIK it
is the case now, it might need a more fine grained override system.
2015-10-07 01:22:47 +03:00
Akash 1039df5077 Fix Vista volume control on Lilypad. 2015-08-20 21:41:05 +05:30
Pistachioman c6c7d99fd2 Add default extension to lilypad's save/load config dialog 2015-07-27 20:30:50 +02:00
Gregory Hainaut 75c64e12aa license: add missing header
Still miss lots of copyright header but we are better
2014-04-12 19:42:41 +02:00
ramapcsx2 45ae2cb4e8 LilyPad:
Added a new option to the hacks section that sends a tabulator key press to PCSX2.
This toggles the turbo mode of the emulator, so users with pads don't have to reach out to the keyboard anymore when they want to switch between normal and turbo gameplay :)

Note: 
I choose R3 for now since most games don't use that button. This could be made configurable in the future though.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4916 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-09-11 20:18:08 +00:00
avihal@gmail.com 6b809a5210 Lilypad: re-enable "Auto Analog" option, but only use it when not in PS2 mode (in PS2 mode this option is ignored). Tested with ICO - previously wouldn't accept control input when in autoAnalog mode, now always works.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4797 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-07-06 15:39:11 +00:00
avihal@gmail.com 1420318b04 GUI: BUGFIX: (Save)State in GS window title can get out of sync with actual current slot (after loading/saving state via the menu).
Details:
- It seems that due to legacy reasons, Lilypad is setting the current state at the GS window title, as a hack which is enabled by default (at Lilypad's main GUI tab). However, it's buggy because it only changes the display when (shift/)F2 is pressed, while the current slot actually also changes when loading/saving state via the PCSX2 main menu, so it can get out of sync (possibly with unpleasant results, especially when saving). Now it's disabled by default at Lilypad, and if enabled, displayed as "State(Lilypad)".

- PCSX2 itself now properly handles the current State slot at the GS title window.

Note: ZeroGS still changes its title independently (not via the "standard" PCSX2 mechanism) so Lilypad's title hack might still be useful for it. However, it's still buggy and can get still out of sync.

TODO: Remove this option completely from Lilypad because it's buggy? ZeroGS can still use it, but I think it can cause more harm than good. What do you think?

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4656 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-05-17 11:18:45 +00:00
sudonim1 7d75a5a53b Missed some SPU2-X and all zzogl code in the last commit.
Fixed assumption that all paths received from pcsx2 end in the path separator.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4484 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-25 01:09:18 +00:00
sudonim1 e26693f5d4 Changed plugin API back to system locale for paths since only two plugins (lilypad and spu2-x) were specifically expecting UTF-8 and handling it correctly and breaking them is easier than fixing all the others for now.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4483 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-25 00:45:43 +00:00
Jake.Stine 53ebbc0242 Lilypad: fix ini file support on non-english systems (unicode compliance issue).
Details: The "%S" directive in sprintf() only does a shallow wide char conversion from ASCII, it does not actually convert UTF8 to UTF16.  Replaced it with a call to MultiByteToWideChar.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3878 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-10-05 14:31:17 +00:00
sudonim1 4457fe40fc Removed all trailing whitespace in *.c *.cpp *.h because it irritates me.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2897 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-04-25 00:31:27 +00:00
sudonim1 a05e9c62be Set svn:eol-style=native on all *.c *.cpp *.h
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2894 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-04-24 21:37:39 +00:00
MattMenke@gmail.com 3a725ee6f6 LilyPad: Fix for testing rumble breaking test button. Jake was the one who broke it, not me. Honest. Should fix issue 531.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2589 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-02-12 23:07:07 +00:00
MattMenke@gmail.com 1fd51a635e LilyPad: Fix for detecting devices whose instance IDs have changed (Either due to to changing OS or USB port).
Modified unplugged device behavior to match PadNull.  May work better with unplugged pads, may not.  No clue, just know the old behavior didn't work that well.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2552 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-02-02 06:40:02 +00:00
Jake.Stine bb319266fc Lilypad and PCSX2 ini/config bugfixes.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2362 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-12-19 23:02:05 +00:00
Jake.Stine 9f41fc4793 (Most Plugins) Updated plugins to obey PCSX2's ini folder requests. This will fix problems with plugins failing to save settings on Vista/Win7 due to lack of Admin rights, and also ensures all the plugin inis show up where you would expect them to.
Fixed a couple UI bugs: FirstTime Wizard display bug and the "Configure..." button in the plugin control panel grays out when it should.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2361 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-12-19 18:30:56 +00:00
Jake.Stine 1ea29b0e62 Lilypad: Implemented full support for child-window GS viewports (fixes windows messaging being broken from the prev rev).
DevNotes: The main change here was to turn WndProcEater into a class and create multiple instances of it, so that it could manage the WndProcs for multiple windows concurrently.  The "frame" (top-level window) gets a WndProc that sets title and handles screensaver/alt-enter hacks.  The "viewport" (provided by PCSX2) gets the usual keyboard input handler WndProc.  Config buttons also have their own WndProc that avoid fuzzy logic conflicts with the other two.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2277 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-11-30 20:52:09 +00:00
mattmenke 2193e5aec6 LilyPad: Fix for non-pressure sensitive buttons with dead zone < 0.0625 or so.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1918 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-25 19:34:59 +00:00
mattmenke 3a0ad40159 LilyPad: Experimental deadzone code. Old pressure sensitive button bindings must be rebound (DS3 buttons, XInput triggers).
Currently anything below deadzone is mapped to 0.  deadzone and above are mapped as if the control's true zero is 0 and 1/sensitivity is fully down (As opposed to deadzone being zero).  May change in the future.
Modified precompiled header to fix no-CRT build.
List of bindings noew automatically jumps to new bindings.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1914 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-25 08:36:42 +00:00
mattmenke fc623d0719 LilyPad: Reverted keyboard messages back to windows messaging.
New method of ensuring thread safety.  Device update code should always run in GS thread, even if the emulator really doesn't want to let me (Basically ancient versions of Pcsx2...Or any 3rd party emulators with their own version of MTGS).  Updates on PADpoll, PADkeyEvent, or PADupdate, if one is called in the right thread.  Updates in thread's WndProc otherwise.  Overkill, perhaps, but I prefer to keep things compatible.
Removed "Update in GS thread" option.
Windows Messaging/Raw Input keyboard event queuing should work a little better.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1896 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-21 00:24:04 +00:00
mattmenke 705ca3d92a LilyPad: "WM Keyboard" now actually uses GetAsyncKeyState(). Just simplifies some dependencies on the window thread. Note that WM Mouse and raw input still have those dependencies, and they can't really be worked around, unfortunately.
Also, just for kicks, made pausing while pressing "escape" check the pause button in the menu.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1891 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-20 10:48:22 +00:00
mattmenke 3cd9c4f2e2 LilyPad: Fixed not adding manifests in debug builds, removed them from CRTless build.
Removed the keyboard disabled option, as using two different pad plugins is really just a bad idea.  Also finally got sick of people saying "I have keyboard disabled, and the keys don't work!  I urgently need help!"
Also will no longer let you enter config mode (And thus crash the program) when emulator is running.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1889 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-20 04:14:40 +00:00
mattmenke 8372c48285 LilyPad: Switched to using pre-compiled headers, just for kicks. Compiles significantly faster, though it's not exactly the limiting factor in batch builds.
Changed intermediate debug build directory, for consistency.
Added another LilyPad-only build option, to compile without CRT dependencies, as manifests are evil.
Finally nuked the VC 2005 project.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1850 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-18 06:58:48 +00:00
mattmenke 323489147a LilyPad: Fix for some bizarre issue with wxWidgets involving property sheets, Microsoft, spec violations, and gremlins.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1838 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-17 05:14:25 +00:00
mattmenke 5b628d5045 wxWidgets: Hooked up plugin config menus in main window.
LilyPad:  Couple very minor string/menu changes, no functionality changes.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1837 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-17 03:25:02 +00:00
mattmenke 77639783ea LilyPad: Minor improvement writing to DualShock 3 device - lights should generally be updated fairly promptly now, rather than depending on how/when the device is initialized. Also removed CRT dependencies, so the MSVC 2005 release build compiles again.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1826 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-15 00:38:50 +00:00
mattmenke 046e10b1a9 LilyPad: Force feedback threading fix. DualShock 3s initalize much more nicely.
Still have issues with DS3 rumble - looks like only one motor can be enabled per communication (Otherwise, always lose connection to the device and have to re-enable it), and enabling one kills the other.  Not sure what to do about this, currently just flip between the two.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1821 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-14 10:30:50 +00:00
mattmenke 3bb0846264 LilyPad: Fixed DS3 motors being flipped, setup default motor bindings on creation, and reduced delay to make sure pads have been initialized when testing force feedback (Probably get rid of it all together once I implement a workaround).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1811 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-12 13:23:16 +00:00
mattmenke 73cace2e54 Highly experimental DS3 support added. Use newly added features at your own risk. Requires libusb installed and DS3 set up as per instructions at http://forums.pcsx2.net/thread-7582.html. Doesn't require sixaxis64.exe/sixaxis.exe, but might have to fool around with starting/stopping Pcsx2 or LilyPad's test device screen and the PS button on your controller until the "1" light turns on.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1810 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-12 13:10:17 +00:00
mattmenke c6a33eb2f0 May or may not fix certain failure to bind issues. May or may not cause issues in canceling binding when using mouse/keyboard to navigate the bind window when the corresponding mode is set to disabled. May or may not result in Armageddon. Probably not. I hope.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1795 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-09 05:13:31 +00:00
mattmenke 143b2f63d3 LilyPad: bugfix that should (hopefully) make it more difficult to accidentally bind an entire axis. May make issues with devices incorrectly reporting initial state worse.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1679 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-08-25 12:05:08 +00:00
mattmenke 3cbd298cff LilyPad: A number of small fixups.
DirectInput devices corresponding XInput devices should be listed as "[Detached]" when XInput is enabled.  No idea if this works, as it requires an XBox 360 controller to fully test.
FF Axes now sorted, rather than being displayed in the order MS returns them.
Small motor DirectInput binding now correctly displays "Square" effect type in list when first created.
Attempt to more accurately model "soft" vs "hard" presses.  Don't have a game where this matters, so no idea if it works.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1607 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-08-06 04:50:55 +00:00
mattmenke cb57386d85 LilyPad, Sio.cpp both modified to never allow pads in first slot on either port to be unplugged, as it broke things. Unplugging pads from other slots seems to work fine, when using multitap (When not, obviously no such pads in the first place).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1034 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-20 23:14:32 +00:00
mattmenke 256d32037c LilyPad: Fixed a potential threading issue when read input in gs thread is disabled. Odds of the issue being a problem, while perhaps significantly greater than 1/<number of atoms in the universe>, weren't too high.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1025 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-19 23:04:21 +00:00
mattmenke 76b52a97a1 LilyPad: Small/large motor defaults should work for most devices, when creating new effect bindings.
Keyboard queue fixed up a bit, mainly to favor escape down when PCSX2 is dying.

Fix for ignore bindings being swapped with the swap pad bindings buttons.

Updated version number, thinking of releasing soon.  No known bugs, not that much more to do.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@929 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-09 02:02:49 +00:00
mattmenke 014b5c6671 LilyPad: Fixed "Swap with Pad 1"
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@914 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-05 18:37:06 +00:00
mattmenke a6d330448c Fixed a simple bug from one of arcum42's cleanups.
Cleaned up multitap code a little in both PCSX2 and LilyPad.

Some extra safety checks in LilyPad when loading state.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@906 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-04 11:21:35 +00:00