Commit Graph

298 Commits

Author SHA1 Message Date
iota97
80effb6b68 Let's wait 5 frames 2020-03-05 16:36:26 +01:00
iota97
b8ce079829 Fix wheel up/down and additional mouse button 2020-03-05 15:57:45 +01:00
Unknown W. Brackets
cb1b7b1e43 Core: Bring over some file related Switch changes.
Reducing the distance from the Switch port code.
2020-03-03 22:53:03 -08:00
iota97
b0307301e3 Better smoothing and added missing break on MOUSE_WHEEL 2020-03-03 17:17:58 +01:00
iota97
fc1b83fd93 Fixes 2020-02-04 09:54:01 +01:00
iota97
3248d58c4d Switch mode only if needed 2020-02-04 07:47:02 +01:00
iota97
4b28482479 SDL analog mouse input 2020-02-04 05:11:07 +01:00
李通洲
55bb58e13e
NativeApp: add System_GetPropertyFloat all the places 2020-02-04 09:20:34 +08:00
Florin9doi
c824fabd53 Update macOS system name 2020-01-25 16:54:45 +02:00
Henrik Rydgård
1d6d66ac43
Merge pull request #12582 from Florin9doi/sdl_app_icon
SDL app icon
2020-01-24 15:27:10 +01:00
李通洲
a34d35d705
Add support for iOS ( completely untested ) 2020-01-20 14:43:08 +08:00
李通洲
7cd60549dd
Initial support for vulkan on macOS ( MoltenVK ) 2020-01-20 14:42:40 +08:00
Florin9doi
24a8077616 SDL app icon 2020-01-17 21:05:59 +02:00
Unknown W. Brackets
9989c51f21 SDL: Ignore audio switch events in first second.
We get new device events right on start, which makes auto switch away from
the preferred / most recent device otherwise.  Fixes #12536.
2020-01-01 07:47:26 -08:00
Unknown W. Brackets
a1ee226c39 SDL: Switch audio device when plugged in. 2019-10-07 20:16:20 -07:00
Unknown W. Brackets
c30bc4ee7d SDL: Add UI to reset audio device at runtime. 2019-10-07 20:16:19 -07:00
Unknown W. Brackets
8751316051 SDL: Use a configurable output device. 2019-10-07 20:15:25 -07:00
Unknown W. Brackets
141258c366 SDL: Use SDL2 audio API for output. 2019-10-07 20:15:25 -07:00
Unknown W. Brackets
daf07032a6 cmake: Ignore if madbundle.sh fails. 2019-10-07 20:15:25 -07:00
Conn O'Griofa
18edfefa0a SDL: ensure swap interval is set correctly for SDL2 kmsdrm driver
It appears that SDL2's kmsdrm driver ignores the swap interval setting
if the SDL context has not yet been created. Moving the call to after context
creation allows it to work as expected.

Fixes vsync when running ppsspp in a KMS context using the SDL2 kmsdrm driver
(which is especially useful for Raspberry Pi 4 B, but is also needed for other
systems including Raspberry Pi 3B via firmware KMS & Intel Haswell i965 via
KMS on x64).
2019-10-03 07:40:19 +01:00
Henrik Rydgård
63305d5248 SDL: Add back a couple of lines that should have been copied, not deleted. Thanks [Unknown] 2019-09-01 23:00:53 +02:00
Henrik Rydgård
7610220b30 Vulkan: Prepare for adding a second init path for VulkanContext.
Will eventually be used for libretro.
2019-09-01 22:21:19 +02:00
Henrik Rydgård
1d46f40634 SDL/Vulkan: Fix scale problems when maximizing/restoring the window. 2019-09-01 16:22:29 +02:00
Cameron Cawley
ba7ea39a1c Move NKCodeFrom*.h into the relevant platform folders 2019-08-06 16:12:19 +01:00
Unknown W. Brackets
54a393386f SDL: Use whatever display SDL gives us for EGL. 2019-07-06 12:33:37 -07:00
hissingshark
58b473a64c Fix build error 2019-06-11 12:52:05 +01:00
Unknown W. Brackets
edbefa8ee2 SDL: Adjust EGL config choice heuristics.
See #12049:
 * Require EGL_WINDOW_BIT more strongly.
 * Allow EGL_NON_CONFORMANT_CONFIG (but still not EGL_SLOW_CONFIG.)
2019-06-10 17:43:16 -07:00
Silent
bb2ba8086b
Improved Show in Folder:
- Not spawning cmd.exe anymore, rather using the same way Chromium does to spawn a shell window with a file focused
- Hid a nonfunctional "Show In Folder" button for UWP builds
2019-05-23 19:59:08 +02:00
Cameron Cawley
427d5f821e SDL: Implement clipboard support 2019-05-15 22:29:40 +01:00
Unknown W. Brackets
f042dc1773 SDL: Make it clear Vulkan check is not an error. 2019-03-23 08:32:51 -07:00
Unknown W. Brackets
3e4faea6ad cmake: Automatically disable Wayland for Raspbian.
Also add a shortcut to b.sh since it has its own toolchain file.
2019-03-23 08:25:39 -07:00
Unknown W. Brackets
ff9911deb5 SDL: Fix compile error when not using FBDEV. 2019-03-23 07:26:47 -07:00
Henrik Rydgård
d7f3f15b85 Add missing line to SDL EGL init (no way this path could have worked anywhere?) 2019-02-27 11:26:31 +01:00
Henrik Rydgård
e715fe0382 EGL errors should cause us to bail. Also downweight alpha in the EGL config chooser. See #11839 2019-02-27 10:33:36 +01:00
Henrik Rydgård
b8e56b361e EGL: Avoid HDR mode. Uses unknownbrackets' changes from #11839. 2019-02-26 08:57:51 +01:00
Henrik Rydgård
58c240045e Make window resize work with Vulkan. Seems more stable now. 2019-02-23 15:53:05 +01:00
Henrik Rydgård
4c83d30b59
Merge pull request #11831 from vit9696/macbuild
Bundle libSDL inside app on macOS, fixes #11830
2019-02-23 14:32:56 +01:00
vit9696
2ccd0156f5 Bundle libSDL inside app on macOS, fixes #11830 2019-02-23 14:15:17 +03:00
Henrik Rydgård
24510b8187 SDL/Qt: At least quit properly when switching backends 2019-02-23 11:55:34 +01:00
Unknown W. Brackets
556b17503b SDL: Allow PauseWhenMinimized to work.
Essentially fixes #6276, see also #10445 and its fix.
2019-02-18 05:29:38 -08:00
Unknown W. Brackets
bba008f162 Qt: Cleanup indentation.
Also some NULL -> nullptr.  No actual code changes.
2019-02-18 05:00:28 -08:00
Henrik Rydgård
aa47db846c
Merge pull request #11806 from unknownbrackets/sdl-fbdev
SDL: Force fullscreen desktop for USING_FBDEV
2019-02-17 17:14:14 +00:00
Unknown W. Brackets
555a8db335 SDL: Force fullscreen desktop for USING_FBDEV. 2019-02-17 06:27:41 -08:00
Unknown W. Brackets
dfc75e8c34 SDL: Prevent mouse capture on macbook trackpad. 2019-02-17 04:54:21 -08:00
Henrik Rydgård
7ccf23542d Fix SDL build 2019-01-26 12:03:20 +01:00
Unknown W. Brackets
adeca2c3ba GLES: Move some vendor bug checks to Draw. 2018-12-23 20:27:22 -08:00
orbea
2bbe0d7e65 SDL: Allow toggling fullscreen for GLES2 on desktops.
Fixes https://github.com/hrydgard/ppsspp/issues/11627
2018-12-02 20:03:54 -08:00
AreaScout
57bf9e3048 Add: allow touch screen events on fullscreen 2018-09-16 07:11:15 +00:00
AreaScout
1fb111c2bb Add: Touchscreen event support for SDL2 2018-09-08 07:15:31 +00:00
AreaScout
c6c66e7608 Add: Get user-preferred locale from OS (linux only) 2018-09-01 16:43:37 +00:00
Unknown W. Brackets
b4496f1975 Core: Move config enums to separate file.
These are a bit strewn about and there are constants that aren't
consistently used, which just adds confusion.
2018-06-23 10:59:18 -07:00
Unknown W. Brackets
1b41759051 SDL: Avoid alpha on Mali/ARM devices using GLES.
See #10534.
2018-06-16 16:19:17 -07:00
hissingshark
84273ff5eb SDL: Buildfixes for EGL lookup. 2018-06-16 16:12:43 -07:00
Unknown W. Brackets
3b8a847654 SDL: Allow more EGL configs.
This attempts to choose the "best" config using weights.
2018-06-16 16:12:43 -07:00
Unknown W. Brackets
9be20323ef SDL: Start with window hidden.
This fixes start in fullscreen on Mac.  Otherwise, it animates to
fullscreen and back for every GL init attempt.
2018-06-09 16:57:00 -07:00
Unknown W. Brackets
34cef82ea3 SDL: Use UpdateScreenScale(). 2018-06-09 16:50:31 -07:00
Unknown W. Brackets
0345750500 SDL: Fix EGL build. 2018-06-06 05:36:01 -07:00
Unknown W. Brackets
a7023ac542 SDL: Move EGL init code into SDLGLGraphicsContext.
It should really be cleaned up, but I'm not sure if EGL_Open can be
moved later and don't currently have a setup to test, so I'm just
cargo culting.
2018-06-05 23:02:50 -07:00
Unknown W. Brackets
78a41980df SDL: Use fullscreen for mobile/GLES.
Also, allow resize for Vulkan outside mobile.

Thanks go to hissingshark.
2018-06-05 20:40:58 -07:00
Unknown W. Brackets
f2a75719d8 SDL: Properly try multiple GL versions.
Thanks go to hissingshark.
2018-06-05 20:40:50 -07:00
vnctdj
3f4bfddafc Allow showing version only for SDL 2018-05-09 21:22:47 +02:00
Henrik Rydgård
0130e75852
Merge pull request #10801 from unknownbrackets/sdl-shutdown
Fix shutdown segfault in SDL, fix headless
2018-03-26 21:10:48 +02:00
Unknown W. Brackets
0d10bb8515 SDL: Fix shutdown ordering.
This fixes the segfault on quit.
2018-03-25 14:19:02 -07:00
Unknown W. Brackets
7abf9baf38 SDL: Use wstrings in Windows API calls. 2018-03-25 14:18:31 -07:00
Henrik Rydgård
043ba41b08 PPSSPPSDL: Throttle refresh rate when in menu. Fixes #10445 2018-03-25 15:34:01 +02:00
aliaspider
54d9406713 fix mingw and msvc cmake builds. 2018-03-23 03:18:13 +01:00
Henrik Rydgård
4b4a2a4096 Buildfixes 2018-02-25 11:25:16 +01:00
Unknown W. Brackets
cdf378d20c GLES: Prevent race condition on shutdown.
emuThreadState might become STOPPED before the last frame has been run,
which can cause WaitUntilQueueIdle to hang.

It's simpler just to wait until StopThread() is called, since it now is.
This will line up properly with run_.
2018-02-11 11:40:11 -08:00
Unknown W. Brackets
a85a88e112 SDL: Apply shutdown race condition fix. 2018-02-10 16:55:50 -08:00
Henrik Rydgård
d9af90e016 SDL: Fix issue with vulkan-to-opengl fallback 2018-02-10 09:09:13 +01:00
Henrik Rydgård
4d6c0cfb32 Buildfix 2018-02-08 01:11:51 +01:00
Henrik Rydgård
ae19c48138 Cleanup the Windows thread stuff to work like the other platforms. Not quite perfect yet. 2018-02-07 16:00:29 +01:00
Henrik Rydgård
b3a09791b1 SDL: Fix emuthread management to exit cleanly without hanging. 2018-02-07 12:22:19 +01:00
Henrik Rydgård
020eb9d86c Fix further memory leaks 2018-02-04 13:42:04 +01:00
Henrik Rydgård
79d1610148 Move SDLGLGraphicsContext.h to the correct location. Minor cleanup 2018-02-04 13:42:04 +01:00
Henrik Rydgård
99386da01e Minor cleanups 2018-02-04 13:42:04 +01:00
Henrik Rydgård
85446d6c51 Split the SDL graphics contexts into their own files. 2018-02-04 13:42:04 +01:00
Henrik Rydgård
c16e397fc6 SDL: NativeInitGraphics/NativeShutdownGraphics should run on the emu thread. 2018-02-04 13:42:04 +01:00
Henrik Rydgård
583c20991f Qt: Some cleanup and fixes. Still not working correctly with gl-render-manager. 2018-02-04 13:42:04 +01:00
Unknown W. Brackets
56a18907dd SDL: Oops, only start the emu thread for GLES.
Probably would've caused issues (at least weird vsync) for Vulkan.
2018-01-27 15:10:17 +01:00
Unknown W. Brackets
062566b67c Core: Set thread names when possible.
This doesn't seem to be working for lldb, though.
2018-01-27 15:10:17 +01:00
Unknown W. Brackets
59904c316b SDL: Allow running GL on thread.
Tested on a Mac.
2018-01-27 15:10:17 +01:00
Unknown W. Brackets
766b40aad8 GPU: Reset GPUBackend on graphics init.
This way, when using a port that doesn't support Vulkan, it doesn't just
silently use upside down GL, etc.
2017-12-26 16:02:55 -08:00
Unknown W. Brackets
d6da758ed3 GPU: Remove duplicate BACKEND constants. 2017-12-26 15:55:24 -08:00
Greg V
f3783bdb44 Add support for Vulkan on Wayland 2017-12-26 16:09:27 +03:00
Jan Beich
d4984ab991 SDL: unbreak on more non-Vulkan platforms
SDL/SDLMain.cpp:160:2: error: unknown type name 'SDL_SysWMinfo'; did you mean 'SDL_SysWMmsg'?
        SDL_SysWMinfo sysInfo; //Will hold our Window information
        ^~~~~~~~~~~~~
        SDL_SysWMmsg

SDL/SDLMain.cpp:433:2: error: unknown type name 'SDL_SysWMinfo'; did you mean 'SDL_SysWMmsg'?
        SDL_SysWMinfo sys_info{};
        ^~~~~~~~~~~~~
        SDL_SysWMmsg

SDL/SDLMain.cpp:440:2: warning: expression result unused [-Wunused-value]
        Window x11_window = sys_info.info.x11.window;
        ^~~~~~
2017-12-21 21:31:26 +00:00
Henrik Rydgård
fe45a059b5 SDL: Fix OpenGL init again. Fixes #10424 2017-12-21 17:36:00 +01:00
Henrik Rydgård
f73ec4608e Build Vulkan on all platforms, won't be used if not supported. 2017-12-21 14:13:55 +01:00
Henrik Rydgård
9007abddbf Get Vulkan going on Linux 2017-12-21 11:02:11 +01:00
Henrik Rydgård
7f758d52dc Statically link a vulkan loader on Linux. Use to to init vulkan on X11. Unfortunately, it's broken. 2017-12-21 11:02:11 +01:00
Henrik Rydgård
6d6ad3ed14 Cleanups in PCMain.cpp 2017-12-21 10:52:48 +01:00
Henrik Rydgård
ea387b2a48 WIP vulkan on linux stuff 2017-12-21 10:48:00 +01:00
Conn O'Griofa
d67d201681 SDL: really try lower GL profiles & add GLES context support
* When compiled with USING_GLES2, attempt to use only valid ES context
  versions.
* Ensure that lower profiles are attempted correctly rather than
  prematurely returning from the function after the first failure.

Needed for Raspberry Pi to successfully launch.
2017-12-20 16:28:53 +00:00
Henrik Rydgård
740d0504ad Move QtMain.cpp and PCMain.cpp to more sensible locations. Native isn't standalone anymore... 2017-12-19 18:04:26 +01:00
Neil Munday
ac0052c6af Added default control pad mapping for control pads not found in SDL's game controller database file. 2017-10-03 22:08:29 +01:00
Henrik Rydgård
4491c7e2ca Quick hack to enable analog stick sensitivity on non-windows platforms.
See #8028
2017-05-18 15:15:10 +02:00
Henrik Rydgård
1b699363ca Load SDL's gamecontrollerdb from assets directory, not relative to exe. Fixes #9460.
Also remove support for that env variable.
2017-03-21 15:54:39 +01:00
ASL97
14187f9311 Allow background joystick input on SDL 2017-02-23 05:18:21 +08:00
zhyk
0629054783 Do not create thread to handle SDL joystick events in Qt build.
Caused crashes on MacOS Sierra (10.12).
2017-02-01 14:37:36 +08:00
Henrik Rydgård
052660bc8c Merge pull request #9260 from neilmunday/master
Added ability for the user to override the location of the SDL game controller db file
2017-01-31 08:52:55 +01:00
Neil Munday
b058b987ad Added ability for the user to override the location of the SDL game controller db file. 2017-01-30 20:26:24 +00:00
Bigpet
d6b8123662 add left and right thumbstick button handling in SDL gamepad. 2016-11-20 18:50:06 +01:00
Neil Munday
182b9e0fda Various improvements including finding the assets directory properly. 2016-09-20 21:50:45 +01:00
Neil Munday
e4a0a3cea3 Updated SDL2 game controller mods following feedback from PPSSPP authors. 2016-09-20 00:28:28 +01:00
Neil Munday
db2cc49e0d Modified SDL2 code to make full use of SDL2's Game Controller API. 2016-09-18 23:23:36 +01:00
Neil Munday
67425d7d47 Initial attempt at adding SDL's game controller database to PPSSPP. 2016-09-18 00:33:28 +01:00
Kelly Youngblood
5adaa12260 Adds auto-detection for PS3 cocntroller. 2016-09-03 21:14:44 -05:00
Kelly Youngblood
06d594b3ff Code cleanup 2016-09-03 00:20:18 -05:00
Kelly Youngblood
7d191ccc11 Adds --PS3 flag for PS3 controllr support on SDL. 2016-09-03 00:15:25 -05:00
chrisbrasington
988e082478 fix indentation 2015-12-21 16:27:33 -07:00
chrisbrasington
ea809425b6 split SDLJoyButtonMap for MacOSX and linux. Mapping in else statement was tested on linux with a X360 and wii-u pro controller 2015-12-21 15:48:22 -07:00
chrisbrasington
cbda8cf957 adds missing button for wii-u pro gamepad, right-DPAD. NKCODEs are still mismatched in linux (360 controller and wii-u pro gamepad), but they were not changed to so that a user's controls.ini will load correctly. 2015-12-21 15:03:14 -07:00
oscdis
8f11555226 Insert a space between parens and curlies. 2015-06-28 16:44:48 +09:00
oscdis
76e9a03f5b Joystick hot-plugging for SDL. 2015-06-23 23:13:23 +09:00
Henrik Rydgård
e6af3cf2f4 Try workaround for SDL joystick dpad problems as mentioned in #7428 2015-02-05 09:49:31 +01:00
Daniel Nagel
afefac86ad Update to SDL2 2014-09-01 16:35:19 +02:00
Sacha
73aa17a2de Misc fixes. CMake: Don't compile neon on armv6 (rpi). Qt: Correct path for lrelease. SDL: Fix a warning. 2014-06-18 03:28:33 +10:00
Peter Tissen
b7eeaf412e multiple SDL joystick support, initial commit untested 2014-05-31 02:35:10 +02:00
sven
7cbca3dff6 using Tabs instead of spaces 2014-04-05 16:16:21 +02:00
sven
372a7a4027 Add another Button to the Button map for Controllers ( like DS3) with 16
Buttons. Fixes Square button not being recognised by PPSSPP when using a
Dual Shock 3 Controller.
2014-04-05 15:43:48 +02:00
Tomoaki Hayasaka
69ed995437 fix "unknown SDL joystick axes mapped to 'pad.X Axis-'" bug. 2014-03-29 01:16:44 +09:00
Bigpet
0d50f78705 initialize values correctly for older compilers 2013-11-24 06:32:19 +01:00
Peter Tissen
746a88c23d enable SDL Joystick support to Qt
Cmake file update add new SDL joystick files
2013-11-22 02:37:52 +01:00
Sacha
c7778765ae Move blackberry files in to their own directory as it is unrelated to SDL 2013-01-23 11:14:23 +10:00
Sacha
c3e50e8b4c Update Blackberry/Symbian packaging to v0.5 2012-12-31 17:55:53 +10:00
Sacha
14f201793b Unified assets/ dir for icons/images 2012-12-17 01:47:39 +10:00
Sacha
5316f856d1 Blackberry 10 Port
* Replace SDL with asound backend (removes the only dependency)
* Remove all references to SDL in bar-descriptor.xml, blackberry_build.sh
* Greatly simplify blackberry_build.sh
* Modify CMakeLists.txt to account for removal of SDL
* Remove redundancy in CMakeLists.txt (EGLv2)
* Refactor nativeExtra's and setting targets
* Remove android/CMakeLists.txt (unrelated file)
* Update for latest Blackberry NDK (1088)
* Handle bug with VSync in latest NDK
* Update bar-descriptor.xml to version 0.4
* Fix define on iOS in FragmentShaderGenerator.cpp
* Specify NDK used in Credits by target platform, add contributor, remove redundancy
2012-12-02 14:48:00 +10:00
Henrik Rydgård
fc453c979f MacOSX buildfix. Doesn't run right yet though. 2012-11-25 12:25:07 +01:00
Sacha
7a98ed79ae Change Blackberry build process (removed package script and integrated in to build). Removed old CMakeLists.txt. Added Blackberry build instrucions to README.md 2012-11-23 10:45:14 +10:00
Sacha
c14331b7f1 More blackberry build cleanup 2012-11-22 19:59:30 +10:00
Sacha
975b8000fc Adjust blackberry build script for new CMakeLists (redundancies, build dir). 2012-11-22 19:25:37 +10:00
Kovensky
1654eb7f8d Update bar-descriptor.xml and blackberry_package.sh
The binary that the cmake script produces is PPSSPPBlackberry,
not ppsspp like the old system.
2012-11-21 14:59:50 -03:00
Sacha
d914c394ae Version update for Blackberry 2012-11-21 23:04:21 +10:00
Henrik Rydgard
45d42f09a1 Remove x86disasm, experiment with build order 2012-11-20 00:48:13 +01:00
Henrik Rydgard
e37a1fb1d3 Add internal 2D drawing library that goes through the Ge emulation for portability.
To be used for things like sceUtility* and other overlays like FPS and stats.
2012-11-18 13:04:49 +01:00
Sacha
4aed48d29f Fix for file UI on Blackberry 2012-11-15 01:40:44 +10:00
Sacha
8c9f9ae1cf Clean up SDL/CMakeLists, clean up Blackberry build process, further reduce memory allocation (needed for Dev Alpha) 2012-11-14 02:20:01 +10:00
Sacha
44ae67413a Blackberry: Update version to 0.2, update icon, simply build and package script 2012-11-11 21:45:48 +10:00
Sacha
df5fd2bfe6 Changes to Blackberry build system. Now simpler and detects BB2.1/10 2012-11-08 15:25:38 +10:00
Sacha
e02b45fd8e An icon for the Blackberry packaging 2012-11-08 03:40:14 +10:00
Sacha
27ea6823c7 Blackberry 10 fully supported with working video, input and sound on Playbook, Dev Alpha and beyond.
Video: http://www.youtube.com/watch?v=CdUL1DalYrw
2012-11-08 03:22:10 +10:00
Arthur Blot
5b5618d32d Added ~PSP decryption system using kirk-engine 2012-11-05 14:59:38 +01:00
Sacha
41f5abab31 PPSSPP ported to Blackberry10
Now builds on Playbook and Dev Alpha
Make emulator more compatible with other OS (case sensitivity, defines, includes)
Uses Android's code paths and backend
2012-11-05 23:09:49 +10:00
Henrik Rydgård
63beeb5030 Add command line flag to set log level to debug. Cleanup. 2012-11-04 11:31:06 +01:00
Henrik Rydgård
a54dcbedc1 Add a reminder about the submodule to the README, and some other minor
stuff (permissions etc), fixing the build for MacOSX again
2012-11-03 22:42:15 +01:00
MrOrdinaire
1ab9943643 fix missing #include's and missing CMake linking directives 2012-11-03 10:33:24 +08:00
Henrik Rydgard
16f5a874a3 Readme fixing. 2012-11-02 07:48:45 +01:00
Henrik Rydgard
4f7ad15758 Add snapshot of the whole source code. 2012-11-01 16:19:01 +01:00