Commit Graph

220 Commits

Author SHA1 Message Date
Gregory Hainaut 3096e94616 lilypad : plug a basic keyboard device
Add a reverse fifo to transfer event from core to plugin

Long story short, on linux there is only one event queue in core
2015-02-20 23:05:21 +01:00
Gregory Hainaut aec43f0bee lilypad: add x11 display pointer
If we move all window management hack into the core it would be useless (for input)
2015-02-20 23:05:21 +01:00
Gregory Hainaut 087f252909 lilypad: add plumbering config
Note: it miss interaction with any dialog
2015-02-20 23:05:21 +01:00
Gregory Hainaut 4f013a2960 lilypad: import common utility to manage config
Based work on spu2x equivalent file. Only convert the file to a CfgHelper object
2015-02-20 23:05:21 +01:00
Gregory Hainaut 156f66ef62 lilypad: make it compile on linux
* Ifdef windows code
* Add a windows crap to linux crap translation layer
2015-02-20 23:05:21 +01:00
Gregory Hainaut 3661f51bcb lilypad: minor c++ fixes
Must be checked on windows
2015-02-20 23:05:21 +01:00
Gregory Hainaut 147353a177 lilypad: add cmake file 2015-02-20 23:05:21 +01:00
Gregory Hainaut 76ff56a4e3 lilypad: add a linux fork
Yes it is bad!
2015-02-20 23:05:21 +01:00
Kingcom ce4dc4ae21 Allow hotplugging XInput devices in LilyPad 2014-07-16 11:18:20 +02:00
Avi Halachmi (:avih) 916d7502c8 Lilypad: Better focus/capture/uncapture handling.
1. After ALT-Tab to another window and back, now it accepts PCSX2
shortcuts properly (e.g. Esc or F6 etc) - focus changes were not
always recognized before.

2. If Lilypad is set to capture mouse, now it releases it on Escape. This
part is a small hack because the code looks as if it should handle it,
but in practice doesn't. This adds explicit uncapture on Escape.
2014-04-16 18:39:07 +03: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
gigaherz f7c1b6e060 Git-based versioning. 2014-03-25 13:31:36 +01:00
gigaherz 888f0a27da Remove vs2008 project files, since they have become outdated, and complicated to maintain.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5902 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-02-15 18:24:06 +00:00
gigaherz 01daa0b6fd Change the vs2012 project files to use the v110_xp platform toolset, and the vs2013 project files to use the v120_xp platform toolset, so that the resulting executables can be run in Windows XP/2003.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5822 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-24 15:30:34 +00:00
gigaherz 4173080028 Because vs2012==vs11 and vs2013==vs12, which is extremely confusing, I renamed the project files to use the full year as the name.
Also fixed some project references to the right filenames.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5764 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-11-27 16:53:36 +00:00
gigaherz 74378ce378 Created vs2013 files based on the vs2012 code, and fixed a small incompatibility between vs2013 and pthreads.
Removed some missing headers from the vs2010 and vs2012 project files that were causing vs to always claim the projects were out of date.
Also removed some other entries for c/cpp files that were disabled but also missing (I did not search exhaustively).


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5763 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-11-27 16:44:32 +00:00
gigaherz 31f685c490 [VS2012] For some reason when I made the conversion I totally forgot to copy these, and I didn't notice that until yesterday.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5403 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-09-05 18:04:09 +00:00
gigaherz a21c85266c Make PCSX2 compile with Visual Studio 2012 (3/3): Upgrade the project files and fix a few project names. Update the .sln to point to the right project files.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5384 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-08-19 19:54:12 +00:00
gigaherz 027b7a8b98 Make PCSX2 compile with Visual Studio 2012 (2/3): Copy project files and solution from their vs2010 originals. Not updated yet!
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5383 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-08-19 19:45:56 +00:00
refraction cabcc83ac5 Not sure if it was just me who had this issue but Lilypad didn't have the Directx SDK lib/include paths in the VC Directories, causing it not to build. Now it has :P
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5258 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-06-01 18:18:14 +00:00
ramapcsx2 52a54fda62 Null pointer protection and warning in LilyPad and SPU2-X savestates and a small init fix in SPU2-X.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5112 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-02-29 14:51:55 +00:00
ramapcsx2 c234e1f6dd Forum user ateste was so kind and found/fixed a savestate issue with Lilypad :)
The problem would cause lost controls or "Controller disconnected" messages in a few games.
This fix is temporary and only works with Lilypad, until we take care of the core issue.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4959 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-11-07 09:29:36 +00:00
ramapcsx2 2b3d5d0fa1 Lilypad: Fix wrong GUI description. Thanks bosit :p
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4939 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-10-14 10:17:19 +00:00
ramapcsx2 ae5ee1376c Lilypad:
Putting the tabulator keypress hack from r4916 on L3 instead of R3.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4929 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-10-09 16:20:13 +00: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
ramapcsx2 03e0e3dea6 Lilypad: Really hide the option. Sigh :p
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4795 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-07-05 23:26:14 +00:00
ramapcsx2 c03919eb18 Lilypad: Don't screw users which already had the problematic option set.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4794 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-07-05 23:09:31 +00:00
ramapcsx2 159f4a691f Lilypad: Disable a confusing control for now.
Also a small comment on GSdx's texture cache lookup.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4793 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-07-05 23:01:16 +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 116f9ec193 Plugins (MSW only): Removed the Image Randomization flag from most plugins' projects. They now default to the value specified by the PCSX2 properties sheet, which enables image randomization by default.
Technical details: Image randomization is a feature on Vista/7 that loads DLLs at random(-ish) addresses, improving security and reducing the amount of DLL relocation work required.  This option has no effect on WinXP.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3993 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-11-04 12:12:11 +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
ramapcsx2 7e8c22b4f5 Committing "blood's" work on building PCSX2 and plugins under msvc 2010.
Changes: Fixed all compile errors in VS 2010. Added support for new w32pthreads.v4. Fixed all MSB8012 warnings. Fixed LNK419 warnings with /DELAYLOAD. Fixed issues when compiling Devel before Release. Added GSdx Devel target. Minor cleanups.

Thanks a bunch, blood :)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2930 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-04-30 19:46:43 +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
gigaherz a3ca69a620 Made a special .props file for null plugins, since they seem to have a different folder structure than the rest.
Add a ton of missing .props
Tell me if anything else is missing >_<

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2846 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-04-14 19:57:33 +00:00
gigaherz 954847fca4 Initial work on vs2010 project files for PCSX2 and plugins.
The *null projects don't build, and neither do ZZOgl or ZeroSPU2.
Pcsx2 project has some issues with Resources' custom build steps not being run.
Only Debug target tested.
Needs work before it's usable.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2843 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-04-14 19:44:04 +00:00
MattMenke@gmail.com 32c7e80634 LilyPad: Yet another minor change to window hook cleanup that probably isn't really needed. "LilyHaxxor" property wasn't always being removed.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2591 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-02-12 23:28:42 +00:00
MattMenke@gmail.com cd5c262e7f LilyPad: Oops...Forgot to copy two lines. Don't think they're really needed, but can't hurt.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2590 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-02-12 23:09:27 +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 3dfdf5029c Lilypad: bugfix for crashes when used with pcsx2 0.9.6
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2278 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-12-01 05:13:38 +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
Jake.Stine 8102692d36 LilyPad: Fix for occasional loss of input when suspending/resuming emulation.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2132 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-11-05 00:30:48 +00:00
MattMenke b0b928d4f4 LilyPad: Minor fix for redundant initialization of critical section.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2088 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-27 07:06:19 +00:00
Jake.Stine 7e63cc820d LilyPad: Better fix for the stuck pad keys (Issue 458). Fully re-implemented the GS window message pump stuffs. :)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2087 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-27 06:52:18 +00:00
Jake.Stine 16be400a71 LilyPad: Bugfixed cause of occasional hangs and lost input. Also, I've implemented an experimental fix for Issue 458 (laggy/sticky controls every 10-20 seconds).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2082 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-26 07:36:04 +00:00
MattMenke 22d31831e6 LilyPad: Minor fixes to alt-F4 detection code.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2001 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-13 02:35:25 +00:00
Jake.Stine 5cf69e328d Minor cleanups -- removed unnecessary "using namespace std;" declares, etc.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1988 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-08 19:37:28 +00:00
mattmenke c252b0f4df LilyPad: Default deadzone increased. Note that will only apply to new bindings, or ones from inis made before I added deadzone support. Hope it's high enough for most cases, but not high enough to break anything...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1920 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-26 18:21:57 +00:00
mattmenke c82cb222d7 LilyPad: Less sensitive (Higher pre-set deadzone) for copying analog state to d-pad state when in digital mode.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1919 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-26 18:06:39 +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 ff60b3b882 LilyPad: Give "credit" where credit is due...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1915 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-25 10:20:32 +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 cd7f88aa73 LilyPad: Another pair of fixes for related bugs in the thread safety stuff. First could cause crashes when stopping/resuming/restarting emulation, second would cause devices to fail to restart properly (Or, more accurately, restart too early) when doing the same.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1906 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-23 05:19:17 +00:00
mattmenke cfaeb06c05 LilyPad: Quick fix to bug in the thread stuff from last update.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1905 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-23 04:37:15 +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
Jake.Stine 0f259e62d5 Implemented keyboard accelerator tables and a hashed global command table (should be ideal for eventual GUI extensions via plugin, and toolbars and other fanciness). Removed Pause menu and replaced it with a Suspend/Resume menu. Closing GS window behaves more nicely.
Projects: Removed FrameworkVersion descriptor, don't think it matters for C++ code.  Removed all translation files, since they're grossly out-dated and need to be remade anyway.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1894 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-20 20:54:45 +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 504082f52d wxWidgets: Clicking on the sliders on the hacks screen now works.
Scroll rate is very inconsistent, but that's just wxWidgets doing what it does best (worst?)...
Also fixed a minor bug in LilyPad version labeling.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1853 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-18 10:18:56 +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 0573f39157 LilyPad: DS3 tilt support. Why? Because it's there. Can't think of a sane use for it, though.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1822 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-14 11:34:53 +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 c1f8444fe1 LilyPad: DS3 no longer disconnects when vibrating. Partial workaround for a DirectInput threading issue when vibration is triggered at the same time devices are being added/removed - probably do something better at some point. Some other DS3 related changes - change names of some controls, increased sensitivity of boolean buttons values to more closely match the DS3 as well. Poorly calibrated analog axes bound to the d-pad (Or buttons) may cause issues.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1815 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-13 04:55:58 +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
Jake.Stine b638f52809 Re-ordered the MSVC folder structure to split PCSX2 into two definitive sections: [App]Host and [Emu]Core (the bracketed names indicate the "long" versions which are generally used in the code to differentiate the functions and classes). If the tentative layout is good then I'll sort the files on SVN to match that layout.
(note: Patch.cpp/Patch.h is still the odd child out in this commit, as it's destiny is to become a plugin)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1804 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-12 02:58:22 +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 b5264ca7c9 LilyPad: Added setupapi.lib to release build. Was already correctly linked in debug.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1681 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-08-26 01:49:43 +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 5558ceafb3 Some preliminary HID code that I may or may not build off of.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1673 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-08-23 03:15:42 +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
Jake.Stine b974b815ff Major Build System changes:
* Changed w32pthreads library into a DLL so that it can be used from plugins correctly. (NOTE: you will need to make sure to build and copy w32pthreads.dll into your pcsx2 folder).
 * Switched pcsx2 from static CRT to shared CRT linking (needed to ensure correct exception handling behavior in multithreaded DLL environments).
 * Switched all standard plugins in the Suite to the shared CRT, to match pcsx2's new style. :)
 * Renamed _DEBUG (depreciated) to PCSX2_DEBUG (excluding Gabest projects since the ATL still uses it).
 * Added intrin.h to Pcsx2Defs.h (so that it is included universally), and added intrin_x86.h for GCC compatibility.

Notes:
 * Current plugin version compatibility status should be unaffected.  The new shared-CRT plugins work fine with older versions of Pcsx2, and the older plugins should work fine with the new shared-CRT version of pcsx2; so long as the necessary CRT DLLs are available on the user's system.
 * All future packagings of pcsx2 will include w32pthreads.dll and the Common Runtimes (CRTs).
 * Existing users who do not have MSVC installed can obtain the CRTs by downloading the Microsoft Visual C++ 2008 Redistributable Package (anyone with msvc installed should already have all they need).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1388 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-06-18 08:20:19 +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 5fb6505e9d LilyPad: Oops.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1014 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-19 03:50:04 +00:00
mattmenke 1d2ae02c97 LilyPad: More minor fixes to failure detection in raw input initialization code. Gabest already fixed the big one.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1013 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-19 03:33:32 +00:00
gabest11 f51e6b7d91 LilyPad: fixed a crash under remote desktop, GetRawInputDeviceInfo may return -1, the buffer size it wants is around a megabyte and gets filled with junk, just ignoring it seems fine.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1004 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-18 09:31:16 +00:00
mattmenke b748068b38 LilyPad: Changed how device updates are handled to be more multithreaded friendly. Mutexes when "read input in GS thread" is disabled removed, as they should (hopefully) no longer be needed. May just ditch the option entirely in the future, since enabling it doesn't seem to make much difference, and slows things down for some people.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@975 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-14 13:40:28 +00:00
mattmenke 62d6c0f3e7 LilyPad: Debug line removed.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@930 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-09 02:07:45 +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
mattmenke f5f3ff97a5 LilyPad: Fixed a bug in list of bindings when go to config screen after running Pcsx2 for a bit, and some devices enabled on the config screen were not enabled in game (Either due to focus issues, or, more probably, due to mouse API not being disabled, but not running with mouse focus).
Also bug fix for cursor clipping rectangle not being reset after window resize.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@870 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-31 08:15:38 +00:00
mattmenke 99b0019d1b LilyPad: Fixed a binding bug due to old debug code still hanging around, added ability to swap pad bindings (Right-click context menu).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@859 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-29 18:03:42 +00:00
mattmenke 8661323a0a LilyPad: One more quick bug fix in mtap stuff.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@855 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-29 06:30:34 +00:00
mattmenke e3b40d1933 LilyPad, Plugin APIs: Slightly changed how multitap API additions work. Now enabling is handled completely by the pad plugin. If anyone ever really feels like adding support for more memcards, can move it over to PCSX2 itself.
Also add some documentation to PadApi.h.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@853 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-29 06:14:59 +00:00
mattmenke d1ac2a8700 LilyPad: Fixed bug detecting enabled multitap pads. Multitap support now seems to be working on the LilyPad side of things now. At least it seems to work with the one game I've tested, after modifying PCSX2. Necessary PCSX2 changes have *not* been committed.
Still need to hook it up to the PCSX2 GUI and figure out how to say the extra memcard slots are all empty.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@851 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-29 03:57:08 +00:00
mattmenke 1df68eca73 LilyPad: PADfreeze() now saves state of current poll, just in case it hasn't been completed. In practice, state never seems to be saved in the middle of a poll, but best to be safe.
Note that this "breaks" old LilyPad savestates, but that just means you'll need to wait for your pad to be initialized before loading older states for picky games, like you do when using states saved with other pad plugins.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@845 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-27 06:58:00 +00:00
mattmenke e0d7e180ac LilyPad: Fixed logging bug, log slightly more data.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@839 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-24 00:12:39 +00:00
mattmenke fd8a28543b LilyPad: Loading savestates made with other pad plugins should work a bit better.
Attempt to fix keyboard input sometimes not working until window is unfocused/refocused.  Happened to me once (And only once), when I was experimenting with disabling read input in GS thread.  There are a number of potential causes of this, and I've added workarounds for several of them.
Slightly updated code to determine when to update pad state - added both a timer, so read state less when fast forwarding, and Multitap support (to that particular chunk of code).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@838 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-23 23:29:27 +00:00
mattmenke 96bc118b1c LilyPad: Fixed PADfreeze bug. Also some stuff that shouldn't do much yet.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@824 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-20 01:27:24 +00:00
mattmenke e172d0e104 LilyPad: Svn release builds now have svn numbers, some configuration load/save/populate code cleanup. Two additional checkboxes that at the moment do absolutely nothing useful, so don't get too excited, probably be quite a while before I get around to hooking everything up...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@816 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-19 06:28:23 +00:00
mattmenke e5f8c7dbe9 LilyPad: Minor GUI rearrangements and attempts to beautify. Relabeled "Hacks" that aren't really all that hackish. To be released as 0.9.11.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@802 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-17 05:37:09 +00:00
gabest11 d2ef4099fc LilyPad: fix0red the save state reload crash (memset overflow randomly null'ed the global dm variable and other things).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@799 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-16 22:17:50 +00:00
mattmenke 80abd88a67 LilyPad: Couple GUI fixes and cleanups, with intention of releasing soon. Added mysteriously missing check for binding same control on different pads, fixed rearranged pad type stuff.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@796 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-16 02:58:38 +00:00
mattmenke 0c95bbc9fd LilyPad: Lots of new code that (ideally) makes absolutely no difference. And a fix for saving rumble settings in PADfreeze.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@794 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-15 15:00:22 +00:00
mattmenke 493ecaa206 LilyPad: Fixed some binding stuff that some incompetant person broke in his last release. PADfreeze fixed so should work when called twice (Once for pad 1, once for pad 2).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@790 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-15 09:20:53 +00:00
mattmenke bb47813a3c LilyPad: Removed "Axis" binding buttons. Try to autodetect full axis bindings instead, also a dropdown in case that fails. Experimental, untested PADFreeze() implemented.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@786 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-15 00:00:02 +00:00
mattmenke 93529360a2 Should warn when can't write to config files. Getting sick of repeated posts by the unwashed masses about this (Though also find it bizarre that Vista chooses to not allow an app to write to its own subdirectories). Also, included VC 2005 project now builds successfully as long as you have an svnrev.h.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@758 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-13 01:17:52 +00:00
mattmenke 004d559678 Added option to control PCSX2 volume only with volume keys, instead of global windows volume. Release shift, control, and alt on deactivate. Fix for changing skip mode on alt-F4 (Accidentally removed the old fix for it in 0.9.5)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@747 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-11 17:25:51 +00:00
mattmenke 0c9abd6765 LilyPad: GSDX10 + fullscreen + escape workaround that's lamer than the last one, but seems to work much better and should cause no issues with GSDX+DX9, other than a slight delay.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@722 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-09 04:22:37 +00:00
mattmenke d0703dd50f LilyPad: Safely exit fullscreen on escape hack now sends the escape back to PCSX2 as well after un-maximizing the GS window.
Minor changes to the general config screen's hack section.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@709 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-07 02:58:51 +00:00
mattmenke a4a7bf91dc LilyPad: fea...@yahoo.it's suggested changes for ICC compatibility
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@656 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-01 23:53:20 +00:00
mattmenke b66db6ffd3 LilyPad: Minor dialog updates. Display FF axis names, display version in config screen.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@630 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-27 23:29:48 +00:00
Jake.Stine 7ffd3d3aea Restructured the build system from the ground up. 3rdparty libs have been moved back into a /3rdparty folder, and are compiled as libraries. Most relevant plugins are part of the pcsx2_suite_2008.sln. Revision tagging of filenames is still there, but is now disabled by default. Pathnames with spaces shouldn't break the buildscripts anymore. Removed tons and tons of files in an effort to simplify the repository and build system management. So if a solution file you're used to using is missing, it's missing for a good reason (means the project can be built either from the Suite solution, or by double-clicking the project file from explorer, from which MSVC creates a new solution for you).
I'll put up a wiki soon which covers new compilation features and stuff, like how to re-enable revision tagging, and how you can direct compiled exe/dlls to be copied to any destination of your choice (yay!) -- plus many other compiling tips (if I can remember them all! >_<)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@581 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-24 02:08:37 +00:00
mattmenke 6ecd052079 LilyPad: Version number updated in rc copy. Refresh device list bug on device insertion/removal fixed. Attempt to resolve potential XInput/DirectInput infighting by deleting DirectInput interfaces to disabled/bindingless DirectInput devices.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@565 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-21 19:41:30 +00:00
mattmenke 77d57a78c7 VC 2008 release build no longer depends on ntdll.lib. VC 2005 still uses it to shrink dll size, as it comes with VC 2005 Pro. "GS Thread updates" disabled and grayed out for PSX emulators.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@520 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-17 22:45:29 +00:00
mattmenke d01a6ba874 Left axis bug with last commit fixed.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@516 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-17 05:02:26 +00:00
mattmenke 87a230f550 Fixed a pair of bugs with flipped controls and sensitivity > 1. "Ignore keyboard" removed from device list. Removed some unnecessary mouse capture code for mouse raw input. Renamed some options to be more user friendly.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@515 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-17 04:54:46 +00:00
mattmenke 2521bd2f1d LilyPad: Hack to put save state number in window title, can set sensitivity of multiple bindings at once, fixed issues with displaying disconnected devices, some random code cleanup.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@475 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-11 20:47:41 +00:00
mattmenke 3476172c49 LilyPad 0.9.9, more or less
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@472 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-11 09:24:56 +00:00