Commit graph

88 commits

Author SHA1 Message Date
RipleyTom ad6b0ee122 Adds class type to controller options 2019-02-27 18:13:19 +00:00
Megamouse bb464b0b64 fix some warnings 2019-01-05 04:03:18 +01:00
Megamouse 6f7b25de90 implement CELL_PAD_INFO_INTERCEPTED 2019-01-02 15:45:51 +01:00
Megamouse 632b0f489c Qt/Input: add keyboard stick interpolation 2018-12-31 12:42:34 +01:00
Megamouse 2db16c2c04 Input: add config entries for mouse deadzones and acceleration 2018-12-31 12:42:34 +01:00
Megamouse 6dcf66b064 Qt/Input: add disconnected label to the devicenames 2018-12-23 04:13:27 +01:00
Megamouse f617e47152 Qt/Input: disable mapping for unconnected pads 2018-12-23 04:13:27 +01:00
eladash 8cbaa8627c Do not rely on cellPadInit in native ui 2018-12-15 13:51:16 +01:00
Nekotekina 96cabeadff Rewrite condition variables
Implement helper functions balanced_wait_until and balanced_awaken
They include new path for Windows 8.1+ (WaitOnAddress)

shared_mutex, cond_variable, cond_one, cond_x16 modified to use it
Added helper function utils::popcnt16
Replace most semaphore<> with shared_mutex
2018-11-29 01:30:05 +03:00
Lassi Hämäläinen 7aef811ff7 CMake: Refactor CMake build (#5032)
* CMake: Refactor build to multiple libraries

- Refactor CMake build system by creating separate libraries for
  different components
- Create interface libraries for most dependencies and add 3rdparty::*
  ALIAS targets for ease of use and use them to try specifying correct
  dependencies for each target
- Prefer 3rdparty:: ALIAS when linking dependencies
- Exclude xxHash subdirectory from ALL build target
- Add USE_SYSTEM_ZLIB option to select between using included ZLib and
  the ZLib in CMake search path

* Add cstring include to Log.cpp

* CMake: Add 3rdparty::glew interface target

* Add Visual Studio CMakeSettings.json to gitignore

* CMake: Move building and finding LLVM to 3rdparty/llvm.cmake script

- LLVM is now built under 3rdparty/ directory in the binary directory

* CMake: Move finding Qt5 to 3rdparty/qt5.cmake script

- Script has to be included in rpcs3/CMakeLists.txt because it defines
  Qt5::moc target which isn't available in that folder if it is
  included in 3rdparty directory
- Set AUTOMOC and AUTOUIC properties for targets requiring them (rpcs3
  and rpcs3_ui) instead of setting CMAKE_AUTOMOC and CMAKE_AUTOUIC so
  those properties are not defined for all targets under rpcs3 dir

* CMake: Remove redundant code from rpcs3/CMakeLists.txt

* CMake: Add BUILD_LLVM_SUBMODULE option instead of hardcoded check

- Add BUILD_LLVM_SUBMODULE option (defaults to ON) to allow controlling
  usage of the LLVM submodule.
- Move option definitions to root CMakeLists

* CMake: Remove separate Emu subtargets

- Based on discussion in pull request #5032, I decided to combine
  subtargets under Emu folder back to a single rpcs3_emu target

* CMake: Remove utilities, loader and crypto targets: merge them to Emu

- Removed separate targets and merged them into rpcs3_emu target as
  recommended in pull request (#5032) conversations. Separating targets
  probably later in a separate pull request

* Fix relative includes in pad_thread.cpp

* Fix Travis-CI cloning all submodules needlessly
2018-09-18 13:07:33 +03:00
Megamouse ed7012c9db cellKb/Qt: Improve basic keyboard
Sadly the shift in Qt is a bit counter productive.
You'll have to hack another key as shift until i figured it out
2018-09-13 22:01:30 +02:00
scribam 7724161c14 c++17: use std::clamp 2018-09-06 13:15:59 +03:00
Nekotekina ca5158a03e Cleanup semaphore<> (sema.h) and mutex.h (shared_mutex)
Remove semaphore_lock and writer_lock classes, replace with std::lock_guard
Change semaphore<> interface to Lockable (+ exotic try_unlock method)
2018-09-03 23:00:36 +03:00
Megamouse 57ba9d3939 basic mouse handler: multi monitor adjustments 2018-08-13 22:23:22 +02:00
Megamouse 1a5b950d8b fix cellMouse lag + fullscreen mouse 2018-08-13 22:23:22 +02:00
Megamouse f8c8a3a26c cellPad: improvements 2018-08-02 00:24:06 +02:00
Megamouse 27820f0371 cellMouse: improvements 2018-08-02 00:24:06 +02:00
Megamouse 6629983ca7 Fix alignment in KeyboardHandler.h 2018-08-02 00:24:06 +02:00
scribam 04ad49de4d typos 2018-05-14 21:14:39 +04:00
Megamouse bb5bdb2e8c improve cellKB keyreleases and autorepeat 2018-01-27 01:57:55 +04:00
Megamouse 7aa1707c2c Qt/Input: use name_string instead of hard coded strings
hopefully prevents any more need for fixups like this lol
+ tend to some warnings for rebase
2018-01-17 13:23:51 +00:00
Megamouse d6c4d8eec0 Qt/Input: enable XInput configs with disconnected devices 2018-01-17 00:43:08 +04:00
Unknown 51a2b43d81 Qt/Input: Introduce profiles 2018-01-10 03:17:02 +04:00
Unknown 106de04485 Input: Fix connection count
and some minor commenting
2017-12-21 18:42:53 +04:00
Unknown 114dd2a723 Input: improve evdev settings dialog / change threshold behaviour 2017-12-21 18:42:53 +04:00
Unknown 6891371a79 Input: improve MMJOY settings dialog / change threshold behaviour 2017-12-21 18:42:53 +04:00
Unknown 2ec4f66427 Input: improve evdev and mmjoy stick input 2017-12-01 20:28:06 +00:00
Unknown c870bbb885 Input/MMJOY: handle Axis and POV capabilities 2017-12-01 20:28:06 +00:00
Unknown 853c3f9e39 Qt/Input: implement blacklist to Filter Noise in pad dialog 2017-11-30 19:06:54 +04:00
Unknown 5810b29298 Input: Fallback in FindKeyCode to prevent crashes on incompatible config 2017-11-29 05:09:41 +04:00
Megamouse 662fe8cc95 [Qt/Input] Improve pad_settings_dialog a bit (#3611)
* Input: further work on remapping Xinput and begin work on remapping DS4

* Input: Improve pad_settings_dialog a bit and begin Remapping for XInput

* Input: begin evdev remapping and change all handlers to use cfg::string

* Input: finish work on remapping evdev

and some more crap

* Input: finish work on remapping Xinput and DS4

* Input: add DS4 Colors to DS4 config

* Input: Improve DS4 deadzone scaling

Jarves made some mistakes, so I'll fix them in the follow up commit

* Input: fix Jarves fixes on DS4 deadzone

and remove unnecessary usage of toUtf8

* Input: add primitive batterychecks to XInput and DS4

* Input: add mmjoystick remapping

* Input: Fix evdev and some Vibration issues

* Input: adjust capabilities to fix stick input for games like LoS 2

also fix threshold slider minimum
also add ps button to all the handlers

* Input: Further evdev work

based on danilaml code review and own debugging:
Fixed path issue, <= 0 issue, some captures, const, axis with same codes.
Adds a map to each device that differentiates negative and positive axis mappings.
adjusted rest of the file to tabs (ListDevices and beginning of threadProc)

* Input: use 20ms vibration update time for xbox one elite controllers.

* Input: Fix return type of Clamp()

* Input: Evdev Fix

* Input: Evdev Optional GetNextButtonPress

presumably better than the other

* Input: review changes

* Input: evdev: fix wrong index in axis handling

move bindpadtodevice down to keep consistency between handlers and not get crazy

* Input: evdev: fix expensive add_device in GetNextButtonPress

* cleanup

* Input: mmjoy: fix type

* Input: evdev: final fixes

* Input: evdev: exclude unnecessary buttons while mapping Xbox 360 or DS4

* Input: add deadzone preview by passing necessary values in callback

use 0.5 of max value for threshold in pad dialog

* Input: get rid of all-uppercase variables
2017-11-28 01:31:15 +04:00
RipleyTom 0457f23b13 Pad Refactoring
Adds a window to setup multiple input types as once
All controllers are now handled by a single thread
[hcorion] evdev refactor
2017-09-09 00:55:03 +01:00
scribam 9747ab61f9 Missing function names (HLE) and small fixes (#3038)
* Add sceNpScoreGetFriendsRanking and sceNpScoreGetFriendsRankingAsync functions

* Add sceNpSnsFbGetLongAccessToken function

* Add new functions for the sceNpTus module

* Add new functions for the cellSailRec module

* Stub cellCrossControllerInitialize

* Add sceNpAuth* functions for the sceNp2 module

* Remove unnecessary call to c_str()

* Add missing module id "CELL_SYSMODULE_ADEC_AT3MULTI"

* Add Turkish keyboard mapping constant

* Add cellOskDialogExtRegisterKeyboardEventHookCallbackEx function

* Update cellSubDisplay

* Update cotire version to 1.7.10

* Replace cellSubdisplay by cellSubDisplay

* Update cellSysutil.cpp with new functions stubbed
2017-07-21 18:41:11 +03:00
Jake 6bb32e4e80 DS4 Support. Supports sixaxis and vibrate 2017-05-04 23:35:09 +03:00
Nekotekina ead67d8e67 Minor changes
Fix psv loader
2017-02-07 16:37:30 +03:00
Nekotekina 766f1b2b01 Partial commit: IO 2016-04-15 19:22:39 +03:00
Nekotekina 3ed603074c Changes done by [DH] rewritten
Added rsx_program_decompiler submodule
Added fs::dir iterator
Added fmt::match
2015-12-22 23:11:20 +03:00
Nekotekina 3465106456 Shared PCH (experimental)
"Rebuild" is broken though.
2015-12-04 23:37:44 +03:00
Nekotekina 5f6caf33f0 MINGW64: Compilation fix 2015-11-16 19:12:51 +03:00
Danila Malyutin 009aa3dcb9 Fix crash on exit in some tests
It started occurring recently though the problem seems to be old.
Only KeyboardHandlerBase is the fix, the MouseHandler one is to be safe.
2015-11-14 19:34:20 +03:00
Raul Tambre fac9d74344 Lots of defect fixes 2015-11-09 07:39:50 +02:00
O1L c0255208cc Old ini-manager only partially used in VFS. Global configuration used as defualt. 2015-10-27 01:09:31 +04:00
Nekotekina a974ee009e vm::var improved, cleanup
Mostly vm::var initialization introduced.
Added vm::make_var function.
2015-10-14 18:17:37 +03:00
Nekotekina 8ae3401ffa Some things improved
shared_mutex_t implemented
GUI Emu Callbacks rewritten
fxm::import, fxm::import_always implemented
cellMsgDialog rewritten
Emu.CallAfter improved (returns std::future)
2015-09-22 16:48:21 +03:00
Raul Tambre 31b91c10ec Fix m_inited 2015-02-22 16:52:20 +02:00
Nekotekina b6ec618f97 Experimental template formatting with be_t<> support 2015-01-12 21:12:06 +03:00
Nekotekina fb1d7d3982 Some warnings fixed 2014-08-30 22:35:18 +04:00
Nekotekina 028ce2dd9f stdafx_gui.h created, wx removed from stdafx.h 2014-08-29 02:49:26 +04:00
Nekotekina 693e7a38fa Some std include moved 2014-08-28 20:29:05 +04:00
Nekotekina b37f3e1b93 mem_class_t eliminated
It didn't work for some reasons anyway,
2014-08-28 05:18:35 +04:00