Commit Graph

192 Commits

Author SHA1 Message Date
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