Merge pull request #1759 from brooksytech/dev

Bring back gpsp for arm32 supporting devices
This commit is contained in:
Brooksytech 2023-07-19 08:41:56 -07:00 committed by GitHub
commit 8ac54ecb25
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
8 changed files with 122 additions and 9 deletions

View file

@ -64,7 +64,7 @@ This document describes all available systems emulators and cores available for
|Nintendo|Game and Watch (gameandwatch)|1980|`gameandwatch`|.mgw .MGW .zip .ZIP .7z .7Z|**retroarch:** gw<br>|
|Nintendo|Game Boy (gb)|1989|`gb`|.gb .GB .gbc .GBC .zip .ZIP .7z .7Z|**retroarch:** gambatte (default)<br>**retroarch:** sameboy<br>**retroarch:** gearboy<br>**retroarch:** tgbdual<br>**retroarch:** mgba<br>**retroarch:** vbam<br>|
|Nintendo|Game Boy (Hacks) (gbh)|1989|`gbh`|.gb .GB .zip .ZIP .7z .7Z|**retroarch:** gambatte (default)<br>**retroarch:** sameboy<br>**retroarch:** gearboy<br>**retroarch:** tgbdual<br>**retroarch:** mgba<br>**retroarch:** vbam<br>|
|Nintendo|Game Boy Advance (gba)|2001|`gba`|.gba .GBA .zip .ZIP .7z .7Z|**retroarch:** mgba (default)<br>**retroarch:** gbsp<br>**retroarch:** vbam<br>**retroarch:** vba_next<br>**retroarch:** beetle_gba<br>|
|Nintendo|Game Boy Advance (gba)|2001|`gba`|.gba .GBA .zip .ZIP .7z .7Z|**retroarch:** mgba (default)<br>**retroarch:** gbsp<br>**retroarch:** vbam<br>**retroarch:** vba_next<br>**retroarch:** beetle_gba<br>**retroarch:** gpsp<br>|
|Nintendo|Game Boy Advance (Hacks) (gbah)|2001|`gbah`|.gba .GBA .zip .ZIP .7z .7Z|**retroarch:** mgba (default)<br>**retroarch:** gbsp<br>**retroarch:** vbam<br>**retroarch:** vba_next<br>**retroarch:** beetle_gba<br>|
|Nintendo|Game Boy Color (gbc)|1998|`gbc`|.gb .GB .gbc .GBC .zip .ZIP .7z .7Z|**retroarch:** gambatte (default)<br>**retroarch:** sameboy<br>**retroarch:** gearboy<br>**retroarch:** tgbdual<br>**retroarch:** mgba<br>**retroarch:** vbam<br>|
|Nintendo|Game Boy Color (Hacks) (gbch)|1998|`gbch`|.gb .GB .gbc .GBC .zip .ZIP .7z .7Z|**retroarch:** gambatte (default)<br>**retroarch:** sameboy<br>**retroarch:** gearboy<br>**retroarch:** tgbdual<br>**retroarch:** mgba<br>**retroarch:** vbam<br>|

View file

@ -64,7 +64,7 @@ This document describes all available systems emulators and cores available for
|Nintendo|Game and Watch (gameandwatch)|1980|`gameandwatch`|.mgw .MGW .zip .ZIP .7z .7Z|**retroarch:** gw<br>|
|Nintendo|Game Boy (gb)|1989|`gb`|.gb .GB .gbc .GBC .zip .ZIP .7z .7Z|**retroarch:** gambatte (default)<br>**retroarch:** sameboy<br>**retroarch:** gearboy<br>**retroarch:** tgbdual<br>**retroarch:** mgba<br>**retroarch:** vbam<br>|
|Nintendo|Game Boy (Hacks) (gbh)|1989|`gbh`|.gb .GB .zip .ZIP .7z .7Z|**retroarch:** gambatte (default)<br>**retroarch:** sameboy<br>**retroarch:** gearboy<br>**retroarch:** tgbdual<br>**retroarch:** mgba<br>**retroarch:** vbam<br>|
|Nintendo|Game Boy Advance (gba)|2001|`gba`|.gba .GBA .zip .ZIP .7z .7Z|**retroarch:** mgba (default)<br>**retroarch:** gbsp<br>**retroarch:** vbam<br>**retroarch:** vba_next<br>**retroarch:** beetle_gba<br>|
|Nintendo|Game Boy Advance (gba)|2001|`gba`|.gba .GBA .zip .ZIP .7z .7Z|**retroarch:** mgba (default)<br>**retroarch:** gbsp<br>**retroarch:** vbam<br>**retroarch:** vba_next<br>**retroarch:** beetle_gba<br>**retroarch:** gpsp<br>|
|Nintendo|Game Boy Advance (Hacks) (gbah)|2001|`gbah`|.gba .GBA .zip .ZIP .7z .7Z|**retroarch:** mgba (default)<br>**retroarch:** gbsp<br>**retroarch:** vbam<br>**retroarch:** vba_next<br>**retroarch:** beetle_gba<br>|
|Nintendo|Game Boy Color (gbc)|1998|`gbc`|.gb .GB .gbc .GBC .zip .ZIP .7z .7Z|**retroarch:** gambatte (default)<br>**retroarch:** sameboy<br>**retroarch:** gearboy<br>**retroarch:** tgbdual<br>**retroarch:** mgba<br>**retroarch:** vbam<br>|
|Nintendo|Game Boy Color (Hacks) (gbch)|1998|`gbch`|.gb .GB .gbc .GBC .zip .ZIP .7z .7Z|**retroarch:** gambatte (default)<br>**retroarch:** sameboy<br>**retroarch:** gearboy<br>**retroarch:** tgbdual<br>**retroarch:** mgba<br>**retroarch:** vbam<br>|

View file

@ -64,7 +64,7 @@ This document describes all available systems emulators and cores available for
|Nintendo|Game and Watch (gameandwatch)|1980|`gameandwatch`|.mgw .MGW .zip .ZIP .7z .7Z|**retroarch:** gw<br>|
|Nintendo|Game Boy (gb)|1989|`gb`|.gb .GB .gbc .GBC .zip .ZIP .7z .7Z|**retroarch:** gambatte (default)<br>**retroarch:** sameboy<br>**retroarch:** gearboy<br>**retroarch:** tgbdual<br>**retroarch:** mgba<br>**retroarch:** vbam<br>|
|Nintendo|Game Boy (Hacks) (gbh)|1989|`gbh`|.gb .GB .zip .ZIP .7z .7Z|**retroarch:** gambatte (default)<br>**retroarch:** sameboy<br>**retroarch:** gearboy<br>**retroarch:** tgbdual<br>**retroarch:** mgba<br>**retroarch:** vbam<br>|
|Nintendo|Game Boy Advance (gba)|2001|`gba`|.gba .GBA .zip .ZIP .7z .7Z|**retroarch:** mgba (default)<br>**retroarch:** gbsp<br>**retroarch:** vbam<br>**retroarch:** vba_next<br>**retroarch:** beetle_gba<br>|
|Nintendo|Game Boy Advance (gba)|2001|`gba`|.gba .GBA .zip .ZIP .7z .7Z|**retroarch:** mgba (default)<br>**retroarch:** gbsp<br>**retroarch:** vbam<br>**retroarch:** vba_next<br>**retroarch:** beetle_gba<br>**retroarch:** gpsp<br>|
|Nintendo|Game Boy Advance (Hacks) (gbah)|2001|`gbah`|.gba .GBA .zip .ZIP .7z .7Z|**retroarch:** mgba (default)<br>**retroarch:** gbsp<br>**retroarch:** vbam<br>**retroarch:** vba_next<br>**retroarch:** beetle_gba<br>|
|Nintendo|Game Boy Color (gbc)|1998|`gbc`|.gb .GB .gbc .GBC .zip .ZIP .7z .7Z|**retroarch:** gambatte (default)<br>**retroarch:** sameboy<br>**retroarch:** gearboy<br>**retroarch:** tgbdual<br>**retroarch:** mgba<br>**retroarch:** vbam<br>|
|Nintendo|Game Boy Color (Hacks) (gbch)|1998|`gbch`|.gb .GB .gbc .GBC .zip .ZIP .7z .7Z|**retroarch:** gambatte (default)<br>**retroarch:** sameboy<br>**retroarch:** gearboy<br>**retroarch:** tgbdual<br>**retroarch:** mgba<br>**retroarch:** vbam<br>|

View file

@ -64,7 +64,7 @@ This document describes all available systems emulators and cores available for
|Nintendo|Game and Watch (gameandwatch)|1980|`gameandwatch`|.mgw .MGW .zip .ZIP .7z .7Z|**retroarch:** gw<br>|
|Nintendo|Game Boy (gb)|1989|`gb`|.gb .GB .gbc .GBC .zip .ZIP .7z .7Z|**retroarch:** gambatte (default)<br>**retroarch:** sameboy<br>**retroarch:** gearboy<br>**retroarch:** tgbdual<br>**retroarch:** mgba<br>**retroarch:** vbam<br>|
|Nintendo|Game Boy (Hacks) (gbh)|1989|`gbh`|.gb .GB .zip .ZIP .7z .7Z|**retroarch:** gambatte (default)<br>**retroarch:** sameboy<br>**retroarch:** gearboy<br>**retroarch:** tgbdual<br>**retroarch:** mgba<br>**retroarch:** vbam<br>|
|Nintendo|Game Boy Advance (gba)|2001|`gba`|.gba .GBA .zip .ZIP .7z .7Z|**retroarch:** mgba (default)<br>**retroarch:** gbsp<br>**retroarch:** vbam<br>**retroarch:** vba_next<br>**retroarch:** beetle_gba<br>|
|Nintendo|Game Boy Advance (gba)|2001|`gba`|.gba .GBA .zip .ZIP .7z .7Z|**retroarch:** mgba (default)<br>**retroarch:** gbsp<br>**retroarch:** vbam<br>**retroarch:** vba_next<br>**retroarch:** beetle_gba<br>**retroarch:** gpsp<br>|
|Nintendo|Game Boy Advance (Hacks) (gbah)|2001|`gbah`|.gba .GBA .zip .ZIP .7z .7Z|**retroarch:** mgba (default)<br>**retroarch:** gbsp<br>**retroarch:** vbam<br>**retroarch:** vba_next<br>**retroarch:** beetle_gba<br>|
|Nintendo|Game Boy Color (gbc)|1998|`gbc`|.gb .GB .gbc .GBC .zip .ZIP .7z .7Z|**retroarch:** gambatte (default)<br>**retroarch:** sameboy<br>**retroarch:** gearboy<br>**retroarch:** tgbdual<br>**retroarch:** mgba<br>**retroarch:** vbam<br>|
|Nintendo|Game Boy Color (Hacks) (gbch)|1998|`gbch`|.gb .GB .gbc .GBC .zip .ZIP .7z .7Z|**retroarch:** gambatte (default)<br>**retroarch:** sameboy<br>**retroarch:** gearboy<br>**retroarch:** tgbdual<br>**retroarch:** mgba<br>**retroarch:** vbam<br>|

View file

@ -0,0 +1,53 @@
################################################################################
# This file is part of OpenELEC - http://www.openelec.tv
# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv)
# Copyright (C) 2020 351ELEC team (https://github.com/fewtarius/351ELEC)
# Copyright (C) 2022 Fewtarius
#
# This Program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2, or (at your option)
# any later version.
#
# This Program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with OpenELEC.tv; see the file COPYING. If not, write to
# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA.
# http://www.gnu.org/copyleft/gpl.html
################################################################################
PKG_NAME="gpsp-lr"
PKG_VERSION="1d972ec7ff26088a68bbc9a93978dae2d13ee5d4"
PKG_ARCH="arm aarch64"
PKG_LICENSE="GPLv2"
PKG_SITE="https://github.com/libretro/gpsp"
PKG_URL="${PKG_SITE}.git"
PKG_DEPENDS_TARGET="toolchain"
PKG_LONGDESC="gameplaySP is a Gameboy Advance emulator for Playstation Portable"
PKG_PATCH_DIRS+="${DEVICE}"
PKG_TOOLCHAIN="make"
if [ "${ARCH}" = "arm" ]
then
make_target() {
make CC=${CC} platform=${DEVICE}
}
else
make_target() {
:
}
fi
makeinstall_target() {
mkdir -p ${INSTALL}/usr/lib/libretro
if [ "${ARCH}" = "aarch64" ]
then
cp -vP ${ROOT}/build.${DISTRO}-${DEVICE}.arm/gpsp-*/.install_pkg/usr/lib/libretro/gpsp_libretro.so ${INSTALL}/usr/lib/libretro/
else
cp ${PKG_BUILD}/gpsp_libretro.so ${INSTALL}/usr/lib/libretro/
fi
}

View file

@ -0,0 +1,55 @@
diff --git a/Makefile b/Makefile
index c52b50b..5e7f2ec 100644
--- a/Makefile
+++ b/Makefile
@@ -289,6 +289,50 @@ else ifeq ($(platform), rpi1)
MMAP_JIT_CACHE = 1
HAVE_DYNAREC = 1
+# RK3326
+else ifeq ($(platform), RK3326)
+ CPUFLAGS := -marm -march=armv8-a+crc+simd -mtune=cortex-a35 -mfpu=neon-fp-armv8 -mfloat-abi=hard -flto
+ CFLAGS := $(CPUFLAGS) -fpic -ffast-math -fno-rtti -fno-exceptions
+ TARGET := $(TARGET_NAME)_libretro.so
+ fpic := -fPIC
+ SHARED := -shared -Wl,--version-script=link.T -Wl,--no-undefined
+ CPU_ARCH := arm
+ MMAP_JIT_CACHE = 1
+ HAVE_DYNAREC = 1
+
+# RK3566
+else ifeq ($(platform), RK3566)
+ CPUFLAGS := -marm -march=armv8-a+crc+simd -mtune=cortex-a55 -mfpu=neon-fp-armv8 -mfloat-abi=hard -flto
+ CFLAGS := $(CPUFLAGS) -fpic -ffast-math -fno-rtti -fno-exceptions
+ TARGET := $(TARGET_NAME)_libretro.so
+ fpic := -fPIC
+ SHARED := -shared -Wl,--version-script=link.T -Wl,--no-undefined
+ CPU_ARCH := arm
+ MMAP_JIT_CACHE = 1
+ HAVE_DYNAREC = 1
+
+# RK3399
+else ifeq ($(platform), RK3399)
+ CPUFLAGS := -marm -march=armv8-a -mfpu=neon-fp-armv8 -mfloat-abi=hard -flto
+ CFLAGS := $(CPUFLAGS) -fpic -ffast-math -fno-rtti -fno-exceptions
+ TARGET := $(TARGET_NAME)_libretro.so
+ fpic := -fPIC
+ SHARED := -shared -Wl,--version-script=link.T -Wl,--no-undefined
+ CPU_ARCH := arm
+ MMAP_JIT_CACHE = 1
+ HAVE_DYNAREC = 1
+
+# RK3588
+else ifeq ($(platform), RK3588)
+ CPUFLAGS := -marm -march=armv8-a -mfpu=neon-fp-armv8 -mfloat-abi=hard -flto
+ CFLAGS := $(CPUFLAGS) -fpic -ffast-math -fno-rtti -fno-exceptions
+ TARGET := $(TARGET_NAME)_libretro.so
+ fpic := -fPIC
+ SHARED := -shared -Wl,--version-script=link.T -Wl,--no-undefined
+ CPU_ARCH := arm
+ MMAP_JIT_CACHE = 1
+ HAVE_DYNAREC = 1
+
# Classic Platforms ####################
# Platform affix = classic_<ISA>_<µARCH>
# Help at https://modmyclassic.com/comp

View file

@ -27,4 +27,4 @@ if [ "${DISPLAYSERVER}" = "wl" ]; then
fi
### Emulators and Cores
PKG_DEPENDS_TARGET+=" retroarch pcsx_rearmed-lr flycast-lr box86"
PKG_DEPENDS_TARGET+=" retroarch pcsx_rearmed-lr gpsp-lr flycast-lr box86"

View file

@ -38,20 +38,20 @@ case "${DEVICE}" in
minivmac-lr play-lr"
;;
RK358*)
[ "${ENABLE_32BIT}" == "true" ] && EMUS_32BIT="box86 flycast-lr pcsx_rearmed-lr"
[ "${ENABLE_32BIT}" == "true" ] && EMUS_32BIT="box86 flycast-lr gpsp-lr pcsx_rearmed-lr"
PKG_EMUS+=" amiberry aethersx2-sa duckstation-sa pcsx_rearmed-lr box64 scummvmsa yabasanshiro-sa box64 portmaster"
LIBRETRO_CORES+=" uae4arm beetle-psx-lr bsnes-hd-lr citra-lr dolphin-lr mame-lr"
PKG_RETROARCH+=" retropie-shaders"
;;
RK3399)
[ "${ENABLE_32BIT}" == "true" ] && EMUS_32BIT="box86 pcsx_rearmed-lr"
[ "${ENABLE_32BIT}" == "true" ] && EMUS_32BIT="box86 gpsp-lr pcsx_rearmed-lr"
PKG_EMUS+=" amiberry aethersx2-sa dolphin-sa drastic-sa duckstation-sa melonds-sa mupen64plus-sa box64 scummvmsa \
yabasanshiro-sa portmaster"
LIBRETRO_CORES+=" uae4arm beetle-psx-lr bsnes-hd-lr dolphin-lr flycast-lr mame-lr pcsx_rearmed-lr"
PKG_RETROARCH+=" retropie-shaders"
;;
RK356*)
[ "${ENABLE_32BIT}" == "true" ] && EMUS_32BIT="box86 flycast-lr pcsx_rearmed-lr"
[ "${ENABLE_32BIT}" == "true" ] && EMUS_32BIT="box86 flycast-lr gpsp-lr pcsx_rearmed-lr"
PKG_DEPENDS_TARGET+=" common-shaders duckstation-sa glsl-shaders mupen64plus-sa scummvmsa box64 portmaster"
PKG_EMUS+=" amiberry dolphin-sa drastic-sa yabasanshiro-sa"
LIBRETRO_CORES+=" uae4arm"
@ -65,7 +65,7 @@ case "${DEVICE}" in
PKG_RETROARCH+=" retropie-shaders"
;;
RK3326*)
[ "${ENABLE_32BIT}" == "true" ] && EMUS_32BIT="flycast-lr pcsx_rearmed-lr"
[ "${ENABLE_32BIT}" == "true" ] && EMUS_32BIT="flycast-lr gpsp-lr pcsx_rearmed-lr"
PKG_DEPENDS_TARGET+=" common-shaders glsl-shaders"
PKG_EMUS+=" amiberry drastic-sa mupen64plus-sa scummvmsa yabasanshiro-sa portmaster"
LIBRETRO_CORES+=" uae4arm flycast-lr"
@ -367,6 +367,11 @@ makeinstall_target() {
add_emu_core gba retroarch vbam false
add_emu_core gba retroarch vba_next false
add_emu_core gba retroarch beetle_gba false
case ${DEVICE} in
RK3*)
add_emu_core gba retroarch gpsp false
;;
esac
add_es_system gba
### Nintendo GameBoy Advance Hacks