* newer version has an osdialog - which requires gtk and a newer cmake than stretch has - we can revisit this but this module doesn't need to be bleeding edge
* replace manual invocations of "xinit" with XINIT: command prefix
* build a custom xinitrc that handles modesetting (via xrandr, setting
a mode matching the resolution and refresh instead of the mode id)
and launch of content.
* if we are already in an Xorg context, the xinitrc will be bypassed,
allowing content prefixed with XINIT: to work in all contexts without
any problem (and still supporting modesetting).
As of version 2:18.4-4~buster, pipplware's Kodi package ships with
kodi-rbpi_v8 built to target Mesa/KMS for RPI4, but also works on
RPI3 in fkms mode.
The v7 binary is still present, so the packages will work for older
board revisions with the legacy graphics drivers.
Thanks to Rascas for providing the packages & updating the launcher
script to support RPI3 in fkms mode, and popcornmix (built from his
leia_pi4 Kodi branch).
eduke32:
* Updated to r8090 with patches for:
- startup delay on ARM devices (r6918)
- fix skybox render error with r_useindexedcolortextures disabled and don't
explicitly force-enable this setting for the commercial release (r7424)
- glTexImage2D/glTexSubImage2D uses internal format incompatible with VC4/VC6 (r6776)
- disabled netcode due to r7242 introducing a major bump in memory
requirements for the executable to even dynamically link on RPI3; will
investigate later, or worst case scenario perhaps we can provide an alternate
port launcher with revision r7241 or earlier for netplay only. (r7242)
* enforce vsync for KMS targets
* Set r_useindexedcolortextures for Mesa devices to avoid palette corruption
on startup splash.
* Disable GTK support for non-X11 targets
* Ensure GL support is really enabled for non-X11 GL targets
* Enable GL support for Mesa targets (tested on RPI3 & 4)
* Add full support for official Megaton addons:
- to install base game, place duke3d.grp and DUKE.RTS in roms/ports/eduke32.
- to install addons, simply place the "addon" folder from the Megaton edition
to roms/ports/eduke32 and reinstall the module to generate the launcher items.
- note: case sensitivity didn't appear to matter when copying the files directly
from my Steam installation.
ionfury:
* written as a skeleton script that defers to eduke32 functions when possible.
* all generic improvements to eduke32 also apply
* note: performance is not yet satisfactory on RPI3 or RPI4; it's possible to
launch and play, albeit running at ~10-15fps. This doesn't appear to be an issue
with Pi drivers per se, as people with older spec PCs complain about performance on
the eduke32 forums. Optimization may hopefully improve in future builds.
* Installation:
- Copy fury.def, fury.grp and fury.grpinfo to roms/ports/ionfury