Commit graph

8017 commits

Author SHA1 Message Date
Jools Wills
ca32411399
Merge pull request #3207 from cmitu/sdl2trs
sdltrs: switch to an active fork, build with SDL2
2020-08-06 05:05:53 +01:00
cmitu
60f22a5c1c sdltrs: switch to the SDL2 version, enable for KMS
Switched SDLTRS to be built from https://gitlab.com/jengun/sdltrs, which is an active fork of the original SDLTRS emulator.

* use the SDL2 branch, which should be more portable (KMS/Odroid/etc.)
* create a minimum configuration for $HOME/.sdltrs.t8c
* although not explicitely specified, the main license seems to be BSD-2-Clause (https://opensource.org/licenses/BSD-2-Clause)
* simplify a bit the emulator starting commands
2020-08-06 04:42:08 +01:00
Jools Wills
74b9ffe46f
Merge pull request #3208 from cmitu/speak_and_spell
spelling: use 'rp_module_licence' in all scriptmodules
2020-08-04 13:13:49 +01:00
cmitu
db87783424 spelling: use 'rp_module_licence' in all scriptmodules 2020-08-04 13:01:07 +01:00
Jools Wills
b46ea881a5 opentyrian - fix building due to upstream Makefile changes conflicting with our patch
* upstream Makefile now respects CFLAGS environment variables so we can drop out patch for that
 * just include fullscreen patch (now renamed)
2020-08-03 04:20:11 +01:00
Jools Wills
25314f7503 retropie-setup - bump version to 4.6.5 2020-08-01 04:47:14 +01:00
Jools Wills
7f4cddc752
Merge pull request #3206 from joolswills/lr-flycast_fix
lr-flycast - restore makefile patch and fix logic
2020-08-01 04:42:13 +01:00
Jools Wills
dec340625a lr-flycast - restore makefile patch and fix logic
* makefile patch is still needed for our compiler flags
 * CPU_FLAGS isn't used so not sure what happened here - mistake or I missed out something.
 * use CXXFLAGS for the additional videocore flags, to override makefile logic
 * re-add make clean
2020-08-01 04:36:52 +01:00
Jools Wills
b7293ff6f2
Merge pull request #3184 from joolswills/rpi_aarch64
Improved aarch64 support including RPI3/4
2020-08-01 03:28:32 +01:00
Jools Wills
7c8c888a39 setup - added a warning regarding 64bit support on the RPI not being officially supported 2020-07-30 04:28:30 +01:00
Jools Wills
ee58bdcf6d splashscreen - disable for rpi/aarch64 due to non working omxiv (no openmaxil library available) 2020-07-30 04:28:30 +01:00
Jools Wills
dd28f158fe splashscreen - include omxplayer dependency only on 32bit
* video playback won't work on rpi aarch64 but the splashscreen module can be installed
2020-07-30 04:28:30 +01:00
Jools Wills
e3cd002b74 mame - binary name is "mame" on aarch64 2020-07-30 04:28:30 +01:00
Jools Wills
1e848fe2a0 lr-kronos - disable for aarch64 2020-07-30 04:28:30 +01:00
Jools Wills
3843424708 lr-desmume / lr-desmume2015 - disable jit code on aarch64 and de-duplicate logic
* use lr-demume dependencies for lr-desmume2015
 * split out parameter logic in lr-desmume and re-utilise in lr-desmume2015
2020-07-30 04:28:30 +01:00
Jools Wills
009aa226c6 np2pi - adjust flags for rpi only excluding aarch64 2020-07-30 04:28:30 +01:00
Jools Wills
187029ab53 lr-flycast - override some Makefile logic with our own, adding aarch64
Makefile for lr-flycast has a lot of copy and paste and unneeded compiler parameters. Although moving the
logic to the module could still break with Makefile changes, it gives us more control over both
compiler parameters, as well as adding other platforms without having to upstream changes.

Removed !mali flag but this will need testing still. Current changes are tested on rpi+videocore, rpi+mesa,
and rpi4(aarch64)+mesa

Also removed DISTCC workaround as this is now built without Link Time Optimisation. The Makefile patch is also
dropped, as this is no longer needed.
2020-07-30 04:28:30 +01:00
Jools Wills
31e941cacc lr-mame2010 - fix building on aarch64 and logic changes
* set PTR64=1 for 64bit platforms without relying on Makefile logic (eg aarch64)
 * added missing zlib1g-dev dependency
 * rework parameter logic
2020-07-30 04:28:30 +01:00
Jools Wills
a352aab2ee lr-mame2000 - add parameter IS_X86=0 on aarch64 to override broken makefile logic
* Makefile sets IS_X86=1 for aarch64 and then -Dasm="__asm__ __volatile__" which fails on aarch64
2020-07-30 04:28:30 +01:00
Jools Wills
c7fc7ea5c9 ppsspp / lr-ppsspp - fix building on aarch64
* ppsspp includes ffmpeg from aarch64 folder, not arm64
 * enable lr-ppsspp for aarch64
2020-07-30 04:28:30 +01:00
Jools Wills
c4147511b4 sdl2 - workaround error moving/renaming vc headers on Raspberry Pi OS 64bit
* headers no longer live at /opt/vc/include - needs to check how this will affect our SDL2 build
2020-07-30 04:28:30 +01:00
Jools Wills
e0a1df95d2 scummvm - fix building on rpi/aarch64
* also replace vero4k check for gles configure parameter with more generic gles check
2020-07-30 04:28:30 +01:00
Jools Wills
cb6fd3bca9 reicast - fix building on rpi4/aarch64 2020-07-30 04:28:30 +01:00
Jools Wills
ee92968efe jzintv - remove references to sys/io.h on aarch64
* header doesn't exist on this arcg and isn't needed
2020-07-30 04:28:30 +01:00
Jools Wills
85ce62b3e5 daphne - force configure --build to satisfy old configure code that doesn't recognise aarch64 2020-07-30 04:28:30 +01:00
Jools Wills
9e3d011bd2 basilisk - force configure --build to satisfy old configure code that doesn't recognise aarch64 2020-07-30 04:28:30 +01:00
Jools Wills
67b1a6a833 sdl1 - fix package naming on aarch64/arm64 2020-07-30 04:28:30 +01:00
Jools Wills
eefc89505a lr-picodrive - disable sh2 drc on aarch64 2020-07-30 04:28:30 +01:00
Jools Wills
6780ffa015 lr-mupen64plus-next - fix building on aarch64
* wrap existing logic for using retroarch "platform=" in arm only block
2020-07-30 04:28:30 +01:00
Jools Wills
4da99cd1e1 mupen64plus - rework logic including rpi aarch64 support and merging vero4k/mali
There has been a lot of contributions to this module, and unfortunately some of the logic has become rather obfuscated,
with a lot of duplication. This is a combination of an earlier changeset I had, but adding aarch64 needed enough logic
changes, it made sense to include it all. There are more improvements needed, but this de-duplicates some of the logic.
Vero4k may need a revisit.

Changes include:
 * temporarily disable rice and gles2n64 for aarch64 due to build errors (just HOST checking errors so may well be easily fixed)
 * remove a lot of vero4k specific blocks in favour of the mali flag
 * enable mali for module (builds ok on odroid xu)
2020-07-30 04:28:30 +01:00
Jools Wills
c2b616a87b emulationstation - omxplayer is not currently installable on 64bit Raspberry Pi OS
* This is due to dependency issues
2020-07-30 04:28:30 +01:00
Jools Wills
faa14f44e6 system / setup - added __arch global with system architecture and include in retropie-setup
* include in logging and retropie-setup main menu heading, with some reformatting changes
2020-07-30 04:28:30 +01:00
Jools Wills
29daf7b77a system - make Raspberry Pi OS for aarch64 identify as Raspbian for now for compatibility 2020-07-30 04:28:30 +01:00
Jools Wills
3bfbef58cb system - add aarch64 config for the rpi3/rpi4
* check for 32bit to enable binaries for rpi
 * use -mcpu only for rpi3/rpi4 aarch targets - but we need to revisit and simplify gcc params for 32bit targets also
2020-07-30 04:28:30 +01:00
Jools Wills
62cbe817b8 system / helpers - use an array for __platforn_flags
* set 32/64bit flag early to be used in platform configuration
 * add __platform to platform flags early on rather in isPlatform check
2020-07-30 04:28:30 +01:00
Jools Wills
f00ddc772f inifuncs - quote [ and ] for sed - fixes removal of mupen64plus emulator.cfg entries that contain them 2020-07-30 03:57:58 +01:00
Jools Wills
58e7496338
Merge pull request #3204 from EricFromCanada/master
Reword wiki references to docs site
2020-07-30 03:40:36 +01:00
Jools Wills
7408b10d88
Merge pull request #3205 from muldjord/master
Added '--onlymissing' option to GATHER options
2020-07-30 03:39:52 +01:00
Lars Muldjord
698ebe0be5 Added '--onlymissing' option to GATHER options 2020-07-29 22:30:26 +02:00
EricFromCanada
c623eae161 Grammar fixes 2020-07-28 11:17:53 -04:00
EricFromCanada
9739bd1594 Reword wiki references to docs site 2020-07-28 11:09:39 -04:00
Jools Wills
719d7022d0 steamlink - adjust configure logic and fix missing config directory on installation
* config file symlinking should be done only as part of install
 * makeUserDir $md_conf_root/$md_id is needed as the config directory won't be created until addPort otherwise
2020-07-21 16:31:05 +01:00
Jools Wills
6a4a9c7279
Merge pull request #3201 from joolswills/gpsp_buster_fix
gpsp / lr-gpsp - use gcc-6 to workaround segfault with gcc-8 on buster
2020-07-21 05:16:42 +01:00
Jools Wills
3456036c17 gpsp / lr-gpsp - use gcc-6 to workaround segfault with gcc-8 on buster
lr-gpsp:

cpu_threaded.c built with -O2 on gcc 8 produces a non working binary. This source already had
a different optimisation level from the rest of the code (O2 vs O3). However, on gcc-8 it causes
a non working binary when built with anything other than O0, but this could have some performance
issues (would need testing on a rpi1).

I compared all the different optimisation flags enabled by O1 and also with any changes from gcc-6,
but not all GCC optimisations are controllable from flags. It was not possible to produce a working
binary with O1 - even disabling all the configurable optimisations enabled by O1.

The issue is most likely undefined behaviour in this file (which has a lot of large macros), and it
probably needs some fixes. However it could be a bug in the gcc-8 optimiser code.

As the issue isn't present with gcc-6, and as gcc-6 is available on Debian buster, the easiest
workaround is to just force the code to be build with gcc-6.

Also adjusted the makefile to pass parameters for the make clean, as some platform specific objects
are not removed otherwise.

gpsp:

Forced gcc-6 as with lr-gpsp.

Simplified the module flags to just include videocore platforms.
2020-07-21 05:01:51 +01:00
Jools Wills
26327948a3
Merge pull request #3200 from cmitu/runcommand-video-validate
runcommand: validate the CrtcId/ModeId values for SDL2 env vars
2020-07-21 00:17:17 +01:00
cmitu
3a0dca1d0a runcommand: validate the CrtcId/ModeId values for SDL2 env vars
Before setting the SDL2 env variables that configure the modesetting for DRM/KMS, validate the CrtcId/ModeId tuple against the current list reported by `modetest`. Changes in the kernel DRM driver could make the existing modesetting configuration (stored in `videomodes.cfg`) invalid because of different CrtcId and/or ModeId in new versions of the driver.
2020-07-20 16:14:03 +01:00
Jools Wills
8dec4ccd7c
Merge pull request #3199 from cmitu/nestopia-3
nestopia: don't try to copy the NstDatabase.xml on configuration.
2020-07-19 16:24:39 +01:00
cmitu
3b1327fa16 nestopia: don't try to copy the NstDatabase.xml on configuration, it's built-in and not part of the binary. 2020-07-19 16:20:16 +01:00
Jools Wills
68a2a2b1c5
Merge pull request #3133 from joolswills/reicast_python3
reicast - use python3 for reicast-joyconfig
2020-07-17 04:35:16 +01:00
Jools Wills
fb44d7557e lr-vice - adjust configure logic to not try and copy data on removal 2020-07-17 03:07:26 +01:00