Commit graph

1001 commits

Author SHA1 Message Date
Sebastian Krzyszkowiak
79be91d474
emscripten update WIP 2022-07-29 14:22:09 +02:00
Sebastian Krzyszkowiak
70c81c77ec
cmake: vita: Make sure the generated icon has 8-bit color pallete
pngquant detects when the image has less colors and can save smaller
palletes. Vita strictly requires 8-bit though.
2021-08-06 20:19:49 +02:00
Sebastian Krzyszkowiak
80e0237636
Update Allegro submodule to a 5.2.7-based branch 2021-07-26 04:32:07 +02:00
Sebastian Krzyszkowiak
26f8a187fc
mainloop: Replace ALLEGRO_WITH_XWINDOWS usage with al_get_system_id()
This should make the binaries platform agnostic.
2021-07-26 04:29:26 +02:00
Sebastian Krzyszkowiak
e6ee232759
libsuperderpy.h: Include <psp2/power.h> on Vita
This is used by libsuperderpy itself and bunch of games will want to use
it as well in order to set CPU/GPU clocks, so let's make it simpler.
2021-07-26 01:12:10 +02:00
Sebastian Krzyszkowiak
398527918e
cmake: Automatically generate icon file for Vita as a fallback 2021-07-25 05:43:20 +02:00
Sebastian Krzyszkowiak
0833e66402
cmake: Add targets for easy Vita deploy over network 2021-07-25 01:56:27 +02:00
Sebastian Krzyszkowiak
dcc4f3a2de
cmake: Make Vita's heap size configurable 2021-07-25 00:52:35 +02:00
Sebastian Krzyszkowiak
dd74c2cc2d
cmake: Clean up vita data dir before copying 2021-07-25 00:51:50 +02:00
Sebastian Krzyszkowiak
6486103517
mainloop: Switch Vita's CPU and bus to max frequency during loading 2021-07-24 04:08:40 +02:00
Sebastian Krzyszkowiak
b84e0af41f
cmake: VPK packaging for PS Vita with VitaSDK 2021-07-24 03:58:46 +02:00
Sebastian Krzyszkowiak
8a9e838c9f
libsuperderpy_init: Make "connected joysticks" log better when there's none 2021-07-24 03:25:11 +02:00
Sebastian Krzyszkowiak
1ed4c73025
libsuperderpy_init: Print the app name in logs 2021-07-24 03:24:15 +02:00
Sebastian Krzyszkowiak
61797d2c0d
libsuperderpy_init: Fix Allegro version handling
Allegro release number equals 0 for unreleased builds, 1 for first release
(x.x.x.0), 2 for second release (x.x.x.1) etc.
2021-07-24 02:21:26 +02:00
Sebastian Krzyszkowiak
35bd8aa2a2
Style fix 2021-07-24 02:20:01 +02:00
Sebastian Krzyszkowiak
18885f62e5
shader: Don't prepend GLSL #version directive on PS Vita
Vita uses Cg shaders.
2021-07-24 00:56:46 +02:00
Sebastian Krzyszkowiak
49795745cf
vita: Set the required heap sizes 2021-07-22 20:59:23 +02:00
Sebastian Krzyszkowiak
f20a097b59
FindDataFilePath: Add overlay directory for PS Vita assets 2021-07-22 16:51:25 +02:00
Sebastian Krzyszkowiak
e74d01f671
cmake: Don't set POSITION_INDEPENDENT_CODE on PS Vita
VitaSDK linker does not support PIC.
2021-07-22 16:46:06 +02:00
Sebastian Krzyszkowiak
30022f1c5c
cmake: Use LIBSUPERDERPY_SINGLE_THREAD on PS Vita
Having the loading thread appears to cause some corruption there.
2021-07-22 16:45:12 +02:00
Sebastian Krzyszkowiak
f9176ce1f5
cmake: Disable sanitizers on PS Vita 2021-07-22 16:08:07 +02:00
Sebastian Krzyszkowiak
1ec6ce7550
cmake: Don't use stack protector on PS Vita 2021-07-22 16:04:32 +02:00
Sebastian Krzyszkowiak
b0aeadbf6b
cmake: Define LIBSUPERDERPY_NO_RESTART on PS Vita 2021-07-21 01:45:49 +02:00
Sebastian Krzyszkowiak
f42fca2606
android: Target API 30 2021-07-19 01:57:31 +02:00
Sebastian Krzyszkowiak
ca023d6296
android: Update Gradle to 5.0
This brings OpenJDK 11 support in.
2021-07-19 01:56:54 +02:00
Sebastian Krzyszkowiak
446a63693a
Allow to set game window's background (clear) color 2021-07-18 02:11:02 +02:00
Sebastian Krzyszkowiak
d26adecc8e
SetFramebufferAsTarget: Avoid re-setting the same target bitmap 2020-11-11 02:07:28 +01:00
Sebastian Krzyszkowiak
86fef86257
ClearToColor: Avoid re-setting the same target bitmap 2020-11-07 21:38:05 +01:00
Sebastian Krzyszkowiak
4eb91e2f32
params: Add a param to force disable autopause
Useful if a game doesn't work well with autopause, of if it's not wanted
due to its nature.
2020-11-07 06:27:11 +01:00
Sebastian Krzyszkowiak
c235d53f1d
Enable autopause by default
...and disable live reload, which depends on autopause to work.
2020-11-07 06:26:10 +01:00
Sebastian Krzyszkowiak
ef22a0931f
params: Improve comments and member names 2020-11-07 06:25:25 +01:00
Sebastian Krzyszkowiak
6f22f54f5d
mainloop: React to expose events when the engine is paused
When the engine is paused, it doesn't redraw the window content anymore.
On uncomposited environments, this means that the window content can be
lost. Enable expose events and react to them when the engine is paused
(if it's not, the whole window will be repainted soon anyway, so we can
ignore them).
2020-11-07 06:24:28 +01:00
Sebastian Krzyszkowiak
f5eb7b088b
PauseExecution: Redraw the screen after pausing
This makes the final console messages visible in the window.
2020-11-07 06:24:27 +01:00
Sebastian Krzyszkowiak
c94acb7fc3
internal: Add RedrawScreen function 2020-11-07 06:24:27 +01:00
Sebastian Krzyszkowiak
d25d7ee5b9 cmake: Fix Allegro include path in embedded Allegro mode 2020-08-18 01:34:37 +02:00
Sebastian Krzyszkowiak
80044b91e3
emscripten: Attach the blur event to window, not document
Fixes blur event handling in Blink.
2020-05-11 16:53:04 +02:00
Sebastian Krzyszkowiak
7f8e3b9641
emscripten: Add _main to the list of emterpreted functions
This allows to use emscripten_sleep from main.

This also disables an infinite loop emulation in the mainloop, as
emterpreter doesn't catch its exception and we don't really need it
anyway.
2020-05-10 20:56:41 +02:00
Sebastian Krzyszkowiak
55692916e3
emscripten: Check whether window has focus at engine start 2020-05-10 18:52:28 +02:00
Sebastian Krzyszkowiak
8b9c9e5541
emscripten: Listen to "blur" instead of "visibilitychange" event to react to focus change 2020-05-10 18:52:01 +02:00
Sebastian Krzyszkowiak
92d9f1c1bf
cmake: Rework LTO support under emscripten 2020-05-10 18:06:58 +02:00
Sebastian Krzyszkowiak
6b6566d7e4
emscripten: Fix and re-enable dead code elimination by default 2020-05-10 16:57:38 +02:00
Sebastian Krzyszkowiak
bf73da41e6
Update README 2020-05-10 16:55:58 +02:00
Sebastian Krzyszkowiak
6c56bb36b9
emscripten: Destroy and recreate audio voice when in loading routines
This prevents awful audio stuttering in Blink based browsers.
2020-05-10 03:01:33 +02:00
Sebastian Krzyszkowiak
e4925f2ecb
cmake: emscripten: Remove --lz4 option
It doesn't do anything anyway - it should be -s LZ4=1. However, enabling
lz4 compression breaks preload plugins, which we rely on for asynchronous
WebAssembly compilation of gamestate modules.
2020-05-09 04:37:46 +02:00
Sebastian Krzyszkowiak
c78fead9c5
cmake: emscripten: Enable LTO across modules
Appears to work fine from initial testing.
2020-05-09 03:59:13 +02:00
Sebastian Krzyszkowiak
f45abe337c
cmake: emscripten: Pass --emit-symbol-map to the compiler 2020-05-09 03:57:55 +02:00
Sebastian Krzyszkowiak
d71f892140
cmake: emscripten: Use -O3 instead of -Oz in release builds
Oz can cause performance hits, and the size savings aren't that big in our
case to be worth it.
2020-05-09 03:57:18 +02:00
Sebastian Krzyszkowiak
50c8049c13
cmake: emscripten: Enable assertions in debug builds 2020-05-09 03:56:26 +02:00
Sebastian Krzyszkowiak
31de1a7d08
cmake: Don't look for Allegro addons on Emscripten
We're putting all addons into one object file there.
2020-04-25 19:40:25 +02:00
Sebastian Krzyszkowiak
312ff915f6
Fix warnings reported by clang-tidy 2020-04-25 19:28:47 +02:00