Commit Graph
5211 Commits
Author SHA1 Message Date
Miro Kropacek 212dd1655f Revert "BACKENDS: ATARI: Remove move16 code"
This reverts commit 0f85939bc5.

Embarrassingly, my benchmark code was broken. move16 very much does
help, both in VRAM<->TT RAM and TT RAM<->TT RAM copying.
2025-04-25 23:27:19 +02:00
Miro Kropacek 84be8c5407 BACKENDS: ATARI: Update readme.txt.in 2025-04-20 21:42:36 +02:00
Miro Kropacek 5680536655 BACKENDS: ATARI: Additional fixes for cursor background
- leftovers after highlighted dirty rectangle

- not updating _surface if moving to fast left/right from screen borders
  (_width == _srcRect.width())

- not drawing cursor if repeatedly intersecting with a refreshing dirty
  rect

- leftover rectangle when leaving game overlay to the launcher

- massive simplification
2025-04-20 21:33:15 +02:00
Miro Kropacek 3eb17e58e3 BACKENDS: ATARI: Don't attempt direct rendering with unsupported engines
If sprites with implicit pitch % 16 == 0 are corrupted in single/triple
buffering, it doesn't make sense to try them unaligned in direct
rendering.
2025-04-20 21:33:15 +02:00
Miro Kropacek 564c503c3d BACKENDS: ATARI: Allow width non-divisible by 16 if not direct rendering
This fixes Phantasmagoria demo which uses 630x450.
2025-04-20 21:33:15 +02:00
Miro Kropacek cca60feaca BACKENDS: ATARI: Fix isOverlayDirectRendering()
When leaving the overlay, ConfMan.getActiveDomain() is already set. Use
OSystem::engineInit and OSystem::engineDone in your favour.
2025-04-20 21:33:15 +02:00
Miro Kropacek e53fc61ceb BACKENDS: ATARI: Move g_unalignedPitch check into OSystem::engineInit() 2025-04-20 21:33:15 +02:00
Miro Kropacek c2310979b1 BACKENDS: ATARI: Fix packaging of symbols
The executable is now stripped so we have to take the original.
2025-04-20 21:33:15 +02:00
Le Philousophe 038a13b0f9 ANDROID: Allow users to backup and restore their configuration and saves
This also try to restore the SAF authorizations registered in the
backup.
With this, a user can wipe the application and reinstall it without too
much hassle.
2025-04-17 17:33:31 +02:00
Le Philousophe 97cf96532f ANDROID: Preserve entries order in Java INI parser
This will make sure every domain is always enumerated in the same order.
2025-04-17 17:33:31 +02:00
Le Philousophe b3531434d7 ANDROID: Improve selectWithNativeUI
Allow to specify a MIME type and a default file name.
Also use the proper Inten action to save a file.
2025-04-17 17:33:31 +02:00
Le Philousophe 37104bb601 ANDROID: Various SAFFSTree improvements
These new functions will be needed soon.
The loadSAFTrees function could be dangerous and should not be used from
outside SAFFSTree.
2025-04-17 17:33:31 +02:00
Le Philousophe bbfb504b69 ANDROID: Refactor virtual path resolution
Makes it available to other uses as this will avoid code duplication.
2025-04-17 17:33:31 +02:00
Le Philousophe e1391b03d2 ANDROID: Don't close the inner inflater stream
Closing it makes an error when trying to recycle the Inflater.
2025-04-17 17:33:31 +02:00
Le Philousophe ddfe04e035 ANDROID: Check API version before using EXTRA_INITIAL_URI 2025-04-17 17:33:31 +02:00
Le Philousophe 5356618bac ANDROID: Remove superfluous argument
As getNewSAFTree always returns a tree, asking for a file makes no
sense.
2025-04-17 17:33:31 +02:00
Michael Ball 8bebc6ff48 3DS: Fix top screen not fully rendering in some cases
When only the top screen is set to be used, the overlay must have a width of 400.
2025-04-15 08:15:10 +03:00
Giovanni Cascione 9d31b31c17 LIBRETRO: drop unsupported features flags 2025-04-05 20:21:50 +02:00
Daniel Nylander 93a4af58d9 I18N: Rename "se" to "sv", which is the correct Swedish language code 2025-03-30 22:19:13 +03:00
Giovanni Cascione b179e3bca0 LIBRETRO: update in-laucher playlist generator help 2025-03-30 10:42:33 +02:00
Giovanni Cascione 34c7bcb070 LIBRETRO: update README.md 2025-03-30 10:42:16 +02:00
Giovanni Cascione 5ef493824a LIBRETRO: JANITORIAL: fix typo 2025-03-30 10:41:59 +02:00
Giovanni Cascione 92597f2996 LIBRETRO: BUILD: drop third party db supported extensions 2025-03-30 10:41:43 +02:00
Giovanni Cascione 746cc04b8d LIBRETRO: add kFeatureShadersForGame flag 2025-03-30 10:41:25 +02:00
Giovanni Cascione 17e399b480 LIBRETRO: add kFeatureOpenGLForGame 2025-03-30 10:41:05 +02:00
Filippos Karapetis ce51fd937f BACKENDS: Use C++ 11 range-based for loops 2025-03-27 13:47:57 +08:00
Giovanni Cascione 8e9d265d81 LIBRETRO: BUILD: re-enable MT32 by default 2025-03-09 00:33:33 +01:00
Giovanni Cascione f2be482cd0 LIBRETRO: BUILD: fix ctr defines 2025-02-23 17:08:47 +01:00
Giovanni Cascione efae51003f LIBRETRO: BUILD: disable opengl for osx 2025-02-23 17:08:31 +01:00
Giovanni Cascione 25a65e555b LIBRETRO: fix mapper_get_mapper_key_index loop 2025-02-23 17:08:11 +01:00
Le Philousophe f4c9ddf78a BACKENDS: SDL: Now fix build for older SDL... 2025-02-23 12:23:54 +01:00
Le Philousophe 42cfd6fbef BACKENDS: SDL: Fix build for SDL3 2025-02-23 09:23:47 +01:00
Le Philousophe 93d9504798 BACKENDS: SDL: Let the user prevent resizing of the window
This adds a new shortcut (Ctrl+R) which toggles the resizable state of
the window and allows the user to lock the window size and prevents
resizing.

Closes bug:15124.
2025-02-23 01:10:03 +02:00
Le Philousophe 2d1b05bf17 BACKENDS: SDL: Fix sdlGetAttribute shim on SDL2
sdlGetAttribute returns true on success (like SDL_GL_GetAttribute on
SDL3), but SDL_GL_GetAttribute on SDL2 return 0 on success.
2025-02-22 10:57:49 +01:00
scemino 8afb2c1f62 BACKENDS: Add SDL3 backend + update imgui 2025-02-18 22:13:56 +01:00
Michael Ball 97129b9f96 3DS: Fix improper memory freeing (Sprite.vertices) 2025-02-16 11:31:41 +01:00
Le Philousophe 106f9caa89 ANDROID: Improve emulated gamepad buttons handling
When triggering buttons on the virtual gamepad, the down and up events
are sent on release. That's a leftover from the previous virtual gamepad
which didn't allow to select the buttons easily.
On the new virtual gamepad, the button choice is better so we can
trigger a button down as soon as the finger is on it.
This fixes a bug in some AGS games which missed the button press because
the release was sent too soon.
Fixes Trac#15444.
2025-02-09 14:00:19 +01:00
Giovanni Cascione 3b17472f7d TETRAEDGE: BUILD: remove obb_archive.o from DETECT_OBJS 2025-02-05 13:12:52 +01:00
Giovanni Cascione fd66964efd LIBRETRO: BUILD: fix gcw0 PRId64 / PRIu64 missing defines 2025-02-05 11:01:24 +01:00
Giovanni Cascione 72550dec75 LIBRETRO: BUILD: add workaround for android 2025-02-05 11:01:13 +01:00
Giovanni Cascione e0046d539e LIBRETRO: BUILD: fix new module.mk rules depending on config.mk 2025-02-05 11:01:01 +01:00
Giovanni Cascione 60bdbf8255 LIBRETRO: BUILD: add components handling 2025-02-05 11:00:51 +01:00
Le Philousophe dc13fcf633 ANDROID: Use the proper USAGE category
We are more game than movies.
2025-02-02 12:22:36 +01:00
Le Philousophe ddfccef675 ANDROID: Add a LED widget and use it to indicate IO activity in SAF
This will notify the user of IOs by blinking the LED. This indicates
that ScummVM is busy and not hung.
2025-01-26 18:17:05 +01:00
Le Philousophe b82bfc006b ANDROID: Track time spent in SAF queries
This allows to monitor times where we are busy because of I/Os and we
will be able to notify the user.
2025-01-26 18:17:05 +01:00
Le Philousophe 402f31122c ANDROID: Don't track SAFFSNode using JNI global references anymore
The JNI global references are limited in count and we overflow it for
games with a huge number of files (like Zork Nemesis).
Instead, track all the nodes from Java side using a unique identifier
generated using an atomic counter.
Then, all JNI calls either use a temporary local reference to access
node data or use the unique identifier.
2025-01-26 18:17:05 +01:00
Le Philousophe 8ae47f50e2 ANDROID: Store the main activity layout in XML
This lightens the code a bit and make it simpler to understand.
In addition, migrate the buttons layout to GridLayout for future
additions.
2025-01-26 18:17:05 +01:00
Le Philousophe 57c4599dcd ANDROID: Make assets installation depend on config.mk
This makes sure new needed files following a reconfigure are copied.
This does not do the cleanup though.
2025-01-26 18:17:05 +01:00
Le Philousophe 2efc9dd830 ANDROID: Don't use a 0 API level
That doesn't exist, use 1 instead.
2025-01-26 18:17:05 +01:00
Le Philousophe d0909e102d ANDROID: Allocate enough stack
Default stack allocation for Java thread is 1MB which is shared with
Java side.
On a traditional Linux, the main thread is often up to 8MB.
2025-01-22 19:14:15 +01:00