Commit Graph

108 Commits

Author SHA1 Message Date
kust2708 823a37aed7 OnePad : New GUI based on gwWidget
Buttons done, configuration initialization done.
Still need to add Gamepad and Joysticks configuration frames.
Require png file for the moment (the embedded picture will be fixed after).

New Onepad GUI based on wxWidget (Main frame almost finish)
Background picture is now embedded
Button binding works
Loading and saving works
Need to add feedback and gamepad, joysticks configuration frame

Modification of the onepad CMakeList.txt
Automatic generation of images headers using perl script

Modification of the test feedback function
2016-02-14 17:26:31 +01:00
kust2708 5b287deca2 Onepad : Add GUI images 2016-02-14 17:25:28 +01:00
Gregory Hainaut ab962bf5c6 Merge pull request #994 from KrossX/master
Fix for odd DualShock rumble (Untested)
2015-12-04 10:01:19 +01:00
Gregory Hainaut cfc8fc4e9b onepad: remove image of the new GUI
Some images aren't GPL compatibles
2015-11-28 09:48:04 +01:00
KrossX f7a8ec7ee9 Fix for odd DualShock rumble
Only bit0 matters for the small motor. Fixes RE4 rumble on movies / map.
Was already fixed on xpad.
2015-11-22 19:18:02 -03:00
Gregory Hainaut 9f2fa79fe3 forget to remove a debug message 2015-11-21 18:34:59 +01:00
Gregory Hainaut 80bdbb5f24 onepad: add an option to workaround DS3 issue with SDL2
I don't understand the magic but sometimes pad buttons are detected as buttons
sometimes as axis. Create an option so people can test both and hopefully find a working solution

Note: you need to restart the plugin to take the option into account
Note2: fix dual pad init too

Related issue #938 and #414
2015-11-21 18:33:51 +01:00
Gregory Hainaut ac0e40a2b7 onepad: safely dispatch rumble action
Fix onepad crashes
2015-11-10 08:12:20 +01:00
Gregory Hainaut e5f9923f76 onepad: fix the reset screen saver commit...
Thanks @olegv11 for the review
2015-11-07 13:19:46 +01:00
Gregory Hainaut 2b02a7433f onepad: reset the screen saver every 4096 Vsync
I didn't put the code in PCSX2 because it requires the display pointer.
And I'm afraid of multithread issue.

Related to issue #942
2015-11-07 11:03:39 +01:00
Gregory Hainaut 83d578f39a onepad: release shift when losing the focus 2015-11-07 10:45:10 +01:00
Gregory Hainaut 43390ec240 onepad: remove remaining XAutoRepeat* call 2015-11-07 10:42:15 +01:00
Gregory Hainaut 6a38e1d06e onepad: init sigaction struct 2015-11-02 07:36:17 +01:00
Gregory Hainaut a9af374be6 onepad: don't touch autorepeat setup
When X autorepeat is enabled, it will generate down/up, down/up, ... sequences

So it was decided to disable it. Unfortunately the configuration is for
the full system which is very annoying (state isn't restored after an
ASSERT or EXCEPTION)

Initially the plugin handles the event from the X loop. However since
the GSopen2 switch events are already intercepted by the WX core GUI.
The core will route them back to the input plugin.

Wx filters automatically generated event so initial sequence is now
down, down, down/up. No more autorepeat issue, so no need to screw up
the system.

Close #945
2015-11-01 10:48:54 +01:00
Gregory Hainaut 96fc260488 linux: restore default INT/TERM signal handler
Allow to use CTRL-C to quit PCSX2 ("regression" of SDL2)
2015-10-29 15:04:55 +01:00
Gregory Hainaut d81481a974 Merge pull request #926 from kust2708/onepad-gui-images
Onepad GUI for Linux - New wxWidget interface (Images)
2015-10-26 21:21:12 +01:00
kust2708 9dff864de8 onepad:
Add images for the new GUI

Onepad : wxWidget GUI
Replace headers by png files.

OnePad: wxWidget HUI (Images)
Fix l2.png file (white background instead to a transparent one).
2015-10-26 14:28:32 +01:00
Gregory Hainaut eb387e16f4 onepad: fix compilation on SDL1 2015-10-17 14:38:46 +02:00
3kinox d7155f839f onepad:
+ Implement and activate rumble.
2015-10-16 23:55:18 +02:00
3kinox fb0d7139f2 onepad:
+ Isolate every SDL code paths and replace any call to them by call to a generic class "GamePad" of which JoystickInfo is now a child.
+ Now backends can be added by inheriting GamePad generic class.
+ There is just one function change which is redundant with next commits but otherwise commit will not compile(which is more evil).
2015-10-16 23:53:51 +02:00
3kinox 9ab554af5b onepad:
+ Objectify conf class.
+ Make some members private as they need to have their range checked before being set
+ Change "options" variables into an union contraining bitfield representation of it. Allows to make code more expressive/readable.
2015-10-16 23:47:55 +02:00
Gregory Hainaut 8928c3e7f1 onepad: be sure pad variable is 0 or 1
CID 146918 (#1 of 1): Use of untrusted scalar value (TAINTED_SCALAR)
tainted_data: Passing tainted variable pad to a tainted sink
2015-09-11 09:18:49 +02:00
Gregory Hainaut b082147c4d onepad: avoid potential resource leak 2015-09-10 14:21:27 +02:00
nE0sIghT e1272dc2f9 Use global compiler optimization flags instead of defining them for every plugin/binary 2015-08-08 16:25:17 +03:00
Maxxus c0f85de17f onepad: Minimum code needed to get Dualshock 3 working on recent linux and evdev releases.
Commit message edited by Gregory.
Comment below from Jonathan Li

On my system, /dev/input/event13 (evdev interface) and /dev/input/js0 (joystick interface) correspond to the DS3 on my system. User/group ownership are both root.

With /dev/input/event13 at 0640 and /dev/input/js0 at 0644 - SDL2 detects no pad, SDL1 detects a 19 button, 27 axis pad

With /dev/input/event13 at 0666 and /dev/input/js0 at 0644 - Both SDL1 and SDL2 report a 19 button, 4 axis pad.

SDL2 only uses the evdev interface, SDL1 uses the evdev interface but if that fails, it uses the joystick interface.
2015-08-03 19:34:08 +02:00
Jonathan Li b96609cb51 onepad: fix possible dereference of deleted pointer
onepad will dereference conf after it has been deleted if a PADinit,
PADshutdown, PADinit sequence takes place.
2015-06-29 20:53:00 +01:00
Gregory Hainaut e16cb9a00e onepad: add stdcall convention 2015-04-17 18:31:44 +02:00
Gregory Hainaut c456764342 spu2x: declare exported function as stdcall
* Fix a stack buffer overflow on address sanitizer
* Might explain an old clang crash
2015-04-17 18:24:23 +02:00
Gregory Hainaut 1655055f61 onepad: update old comment 2015-02-20 23:05:21 +01:00
Gregory Hainaut 66d7aa75e2 cmake: move -DNDEBUG to global option 2014-12-20 13:43:25 +01:00
Gregory Hainaut a99f3ea321 cmake: remove duplicate flags
also use the lighter elseif structure to reduce a bit the size of cmakefile
2014-12-20 13:43:25 +01:00
Gregory Hainaut 4f957feacd onepad: use union instead of stange cast
Nicer this way. Beside it removes the strict aliasing issue.
2014-12-20 10:54:18 +01:00
Gregory Hainaut 5d8b2d8044 gtk2: GtkNotebookPage is useless
And not supported by gtk3
2014-12-10 22:09:21 +01:00
Gregory Hainaut e9233f4698 gtk2: use text rather than image
Require by GTK3
2014-12-10 22:09:21 +01:00
Gregory Hainaut 7fb548d7c5 gtk2: GTK_OBJECT is useless 2014-12-10 22:09:21 +01:00
Gregory Hainaut d1389db2f4 gtk2: keyboard macro update 2014-12-10 22:09:21 +01:00
Gregory Hainaut ba9e998ff5 gtk2: port gtk_combo_box to gtk_combo_box_text
The former was deprecated on gtk2.24 (and removed from gtk3)
2014-12-10 22:09:21 +01:00
Gregory Hainaut 0a4f9e43d9 cmake: clean sdl management
* sdl is mandatory for spu2x
* cmake will include either /usr/include/SDL or /usr/include/SDL2 so no
  need to add extra ifdef
2014-12-07 21:06:21 +01:00
Gregory Hainaut c945aead54 cmake: better support of SDL2
Description: Building with SDL2_API=TRUE is incomplete
 SDL_FOUND does not imply SDL2_FOUND
 Use check_libs for detection
 Only include ${SDL_INCLUDE_DIR} when needed
 Use SDL2_LIBRARIES
Author: Miguel A. Colón Vélez

Gregory: add back SDL_BUILDING_LIBRARY
2014-12-07 12:19:14 +01:00
uyjulian f3a50a01a7 cmake: Use previous macros in CMakeLists.txt files
Gregory: add a c lib for zzogl-pg-cg replayer
2014-09-05 20:16:23 +02:00
Ryan Houdek 3d37a6ce27 Removes the usage of __LINUX__ define
This is defined and set it a ton of different places.
It's checked in a whole lot more
Instead just use __linux__ like a real project should
2014-08-03 13:20:36 -05:00
Gregory Hainaut 37b1d3ae42 codeblock: remove build file => linux is cmake only
They are completely out-dated. And nobody have time to update them.
2014-04-11 09:18:31 +02:00
Gregory Hainaut 4496093cf8 cmake version:
Use same version as window based on git
drop subversion code
use lld on onepad
2014-03-25 17:29:47 +01:00
gregory.hainaut 5df7af9bc5 cmake:
* new option SDL2_API
* drop GLSL_SHADER_DIR. Useless, shaders are embedded in .h file
* use some hardening flags (for the moment only basic one)
onepad:
* port the code to SDL2 (Note only SDL1 is supported for the moment)
* improve detection of button vs axis (long-standing issue)
* avoid potential overflow on mouse mouvement detection


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5756 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-11-01 21:05:59 +00:00
gregory.hainaut 452cf72ddf onepad: fix a bug to handle multiple button (fix #1271)
zzogl: fix memory leak (fix #1431, #1432)
GSdx ogl: disable geometry shader on Nvidia/Windows (I will wait a 3rd implementation to find which one is correct)


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5724 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-08-25 12:11:32 +00:00
gregory.hainaut d9af23c946 plugin: restore sprintf_s on windows and hopefully fix vs201n compilation
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5684 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-06-28 17:11:16 +00:00
gregory.hainaut 3c7167be50 clean (some) gdb warning: round 1
* use svnrev.h on linux too
* replace sprintf_s with snprintf (hope it still compile on Windows)
* init integer with 0 instead of NULL
* various int -> u32/uint32/uint on for loop index
* remove a couple of unused variable
* init few variable
* disable unused warning results


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5683 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-06-28 10:43:50 +00:00
gregory.hainaut 8ec0275a96 onepad: Don't try to acquire the lock when it wasn't initialized. Avoid
the freezing of the window when a plugin failed to open.


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5660 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-06-15 07:20:02 +00:00
gregory.hainaut b1541f4ab7 onepad: reduce dialogs of another 25 pixels for small screen.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5405 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-09-05 20:53:03 +00:00
gregory.hainaut 8f4ceea43a onepad: reduce a bit (75 pixels) the heigh of the dialog for NNNNx768 displays
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5395 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-08-31 20:08:20 +00:00