Commit Graph
4365 Commits
Author SHA1 Message Date
rsn8887 bd1b346e08 BACKENDS: strip psp2 executable to reduce size 2020-03-14 00:46:46 -05:00
Cameron Cawley d95e7504ed BUILD: Convert the NEWS.md file if pandoc is installed 2020-03-12 11:28:00 +00:00
Bastien Bouclet a155061ee4 KEYMAPPER: Set the default virtual mouse settings
Fixes the 3DS mouse cursor drifting.
2020-03-11 06:15:46 +01:00
Cameron Cawley f2db412ba5 GUI: Store the shader name in the config file instead of the ID 2020-03-09 18:01:14 -05:00
Cameron Cawley 5fd8aed047 SDL: Move the compatibility functions into SurfaceSdlGraphicsManager 2020-03-09 22:15:45 +02:00
Bastien Bouclet cd173c8739 3DS: Use the shared virtual mouse 2020-03-09 20:00:31 +01:00
Bastien Bouclet 568d882e80 KEYMAPPER: Introduce a Virtual Mouse event source
The Virtual Mouse is meant to provide a way to control the mouse cursor
on system without a physical mouse. It provides keymapper actions that
are expected to be bound to game controller axes or buttons.
2020-03-09 20:00:31 +01:00
Bastien Bouclet d94c7c3bcc SDL: Move the keyboard mouse to a subclass of SdlEventSource
And deprecate it. The new Virtual Mouse system is expected to replace
it.
2020-03-09 20:00:31 +01:00
Eugene Sandulenko 75ba54aa3e BACKENDS: Remove LinuxMoto port.
This was a relatively short-lived port. We have it broken and
disabled on the buildbot since 2016. Also, the last builds
were provided in 2011. Thus, it makes a little sense to continue
to keep the code in the repository, as it gets bitrot.
2020-03-09 14:31:14 +01:00
Dries Harnie 8a01b028fb TRAVIS: Base ANDROID_VERSIONCODE on Travis build number 2020-03-07 15:13:23 +01:00
Dries Harnie 51d4e1b66d ANDROID: Sign package using $KEYSTORE 2020-03-07 15:13:23 +01:00
Dries Harnie eac71426c2 TRAVIS: Build APK for both architectures at once 2020-03-07 15:13:23 +01:00
rsn8887 32807393c5 SWITCH: Update platform readme 2020-03-06 23:25:18 -06:00
Bastien Bouclet 606a68172d 3DS: Set a translation context for the 3DS screen strings
So they can have dedicated translations.

Fixes #11371.
2020-02-28 05:46:36 +01:00
Thanasis Antoniou bd1e2b8b87 ANDROID: Notes on superseded swap_menu_and_back_buttons conf key 2020-02-27 08:23:09 +02:00
Cameron Cawley fffb25a47a ANDROID: Add basic keymapper support (#2026)
* ANDROID: Remove hard-coded key mappings

* ANDROID: Add default key bindings
2020-02-26 10:23:47 +02:00
Cameron Cawley a730e8775b SDL: Clean up keycode usage 2020-02-22 22:11:34 +02:00
Cameron Cawley e41832141c RISCOS: Fix missing include 2020-02-21 07:12:31 +01:00
Bastien Bouclet e1358b966a 3DS: Defer texture updates when the palette changes
Fixes a performance issue with the Gob engine where the palette is
updated a large number of times during a single frame.
2020-02-14 06:21:46 +01:00
Bastien Bouclet 6218028f02 3DS: Add a note in the readme about using an older version of freetype2 2020-02-13 07:57:02 +01:00
Bastien Bouclet 2177e685b7 KEYMAPPER: Allow joystick half axes to be remapped 2020-02-09 08:34:16 -06:00
rsn8887 eea70a3c8c BACKEND: Allow SDL2 mapping of L2/R2, fix psp2/switch mapping 2020-02-09 08:34:16 -06:00
Bastien Bouclet e4d17f881c 3DS: Convert RGB555 pixels to RGBA5551 when copying to the texture
It's faster than using Graphics::Surface::convertTo
2020-02-07 18:33:56 +01:00
Michael Ball b08ab0e130 3DS: Implement dynamic graphics modes to improve performance
When launching a game, switch the graphics mode if necessary
(and by extension the pixel formats used for Graphics::Surfaces
and Sprites) to the one that most closely matches the pixel format
used in-game.

Additional Fixes:
- Fix to prevent cursor position from changing when exiting a menu.
- Fix to prevent updating of Magnification viewport position when
virtual keyboard is open.
- Cosmetic code fixes for improper whitespace and missing curly brackets.
- Remove RGB8 as a mode option because:
  1) It was already commented out in the master 3DS backend.
  2) There are currently no games that explicitly require it.

Notes:
- As these graphics modes are automatically implemented on a per-game basis, they
are meant for backend use only and are purposefully not accessible through the
Options menu.
- RGBA8 (aka RGBA8888) remains the default pixel format, being used for the launcher
menu, CLUT8, and for games which do not specify a particular format.
2020-02-07 18:33:56 +01:00
Bastien Bouclet 99b9db456a 3DS: Disable newlib buffered io and use ScummVM's implementation
Fixes #11342.
2020-02-07 18:33:56 +01:00
Thierry Crozat 98b7095527 IOS7: Fix implementation of getMillis()
The documentation indicates that it should return the number of
milliseconds since the application started. It was however using
a different reference (last boot of the device minus the sleep time)
resulting in a much bigger value than expected.
2020-02-01 22:56:25 +00:00
Bastien Bouclet 81aedefad0 3DS: Fix libcurl detection 2020-02-01 09:36:10 +01:00
Bastien Bouclet a13ce39538 3DS: Fix keymap defaults to match documentation 2020-02-01 09:36:10 +01:00
Thanasis Antoniou 3c9741a4c3 ANDROID: Early fix for Android 9+ crash and config/save path issues 2020-01-31 17:23:15 +02:00
Eugene Sandulenko 6817478967 BACKENDS: SDL: Add override keywords 2020-01-31 12:39:23 +01:00
Bastien Bouclet 161ca5285d PS3: Fix controller button name
Geometrically accurate is not good enough.
2020-01-29 16:28:36 +01:00
Bastien Bouclet 05a7ca7b76 PS3: Use the appropriate gamepad button names for the keymapper 2020-01-29 08:51:30 +01:00
Bastien Bouclet 78ab571519 3DS: Update the port to take advantage of the new keymapper 2020-01-29 08:51:30 +01:00
Bastien Bouclet 2ef7365401 KEYMAPPER: Change backend default bindings to replace keymap defaults
Previously backend defaults where added to the keymap defaults.
However, it became apparent backends need to change the default bindings
to resolve conflicts.
2020-01-29 08:51:30 +01:00
Bastien Bouclet 43184657e9 EVENTS: Disable ScummVM's source of keyboard repeat events by default
Backends can still (and do) generate such events. This works around an
issue with the keymapper where the "DOWN" event would be mapped to a
key, but the corresponding "UP" event would be mapped to another one due
to a keymap change. The keyboard repeat generation system would believe
the key to be still pressed and send a continuous stream of repeat
events.
Ideally the keymapper should be fixed to always generate matching event
pairs. However this source of an infinite stream of events still looks
like trouble waiting to happen to me. Hence disabling it by default.
2020-01-29 08:51:30 +01:00
Bastien Bouclet e973092aef KEYMAPPER: Enable remapping of the mouse buttons 2020-01-29 08:51:29 +01:00
Bastien Bouclet 426867f4bc KEYMAPPER: Give human readable descriptions to the keymaps 2020-01-29 08:51:29 +01:00
Bastien Bouclet 32174c9067 KEYMAPPER: Actions can now be bound to joystick buttons 2020-01-29 08:51:29 +01:00
Bastien Bouclet df7ce0c55f KEYMAPPER: Rework HardwareInputSet not to allocate all possible inputs 2020-01-29 08:51:29 +01:00
Bastien Bouclet df4bf6556c KEYMAPPER: Introduce custom engine actions
Custom engine actions are a new type of event the Keymapper can produce.
When an engine declares its keymap, it can declare it wants to receive
custom action events when the corresponding key is pressed, instead of
the originating hardware input events.

This system allows:
* Key bindings to be specified only once when declaring the keymap,
  instead of twice (when handling the events).
* To truly rebind keys in the keymaps dialog. When using traditional
  event mapping, the keymapper remaps the user keypress to the keypress
  expected by the game engine to perform the action. However, the engine
  still accepts the original keys.

The new concept of 'standard actions' defines a set of engine actions
that are commonly available in the games supported by ScummVM. Backends
can define default bindings for the standard actions to hardware
specific input devices.
2020-01-29 08:51:29 +01:00
Bastien Bouclet be49fc4b9a SDL: Add a keymap for the graphics manager 2020-01-29 08:51:29 +01:00
Bastien Bouclet 7617723ab5 KEYMAPPER: Allow backends to register multiple keymaps 2020-01-29 08:51:29 +01:00
Bastien Bouclet 14663c4790 KEYMAPPER: Make the keymapper mandatory 2020-01-29 08:51:29 +01:00
Bastien Bouclet cc336635a1 KEYMAPPER: Change custom backend action events not to be instant
Allows action consumers to choose if they want to react on the start or
on the end of an user interaction.
2020-01-29 08:51:29 +01:00
Bastien Bouclet 19de568e24 KEYMAPPER: Untangle the dependencies between Action and Keymap 2020-01-26 23:09:08 +02:00
Bastien Bouclet 3d48b54288 KEYMAPPER: Remove the ascii value from the hardware keys
The ascii value is for text input, which is not related to hotkeys.
2020-01-26 19:07:53 +01:00
Bastien Bouclet 5a62837f04 MAEMO: Adapt to the new keymapper API 2020-01-26 19:07:53 +01:00
Thierry Crozat ea53202de9 IPHONE: Disable idle timer while an engine is running 2020-01-23 20:33:37 +00:00
Cameron Cawley 9fc24522d7 BACKENDS: Add more keycodes 2020-01-21 03:28:22 +02:00
rsn8887 12977d07d6 SWITCH: Update platform readme and include it in zip 2020-01-20 18:37:06 -06:00