Merge pull request #1511 from JustEnoughLinuxOS/dev

PR for release
This commit is contained in:
fewtarius 2023-06-03 10:49:55 -04:00 committed by GitHub
commit 739092d5c6
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
158 changed files with 4692 additions and 1453 deletions

View file

@ -117,8 +117,9 @@ Building JELOS is easy, the fastest and most recommended method is to instruct t
> Devices that list a dependency require the dependency to be built first as that build will be used as the root of the device you are building. This will be done automatically by the build tooling when you start a build for your device.
### Building Manually
To build JELOS manually, you will need several prerequisite packages installed.
To build JELOS manually, you will need several prerequisite host packages installed.
#### Distribution Packages
```
sudo apt install gcc make git unzip wget \
xz-utils libsdl2-dev libsdl2-mixer-dev libfreeimage-dev libfreetype6-dev libcurl4-openssl-dev \
@ -127,9 +128,24 @@ sudo apt install gcc make git unzip wget \
xmlstarlet patchutils gawk gperf xfonts-utils default-jre python-is-python3 xsltproc libjson-perl \
lzop libncurses5-dev device-tree-compiler u-boot-tools rsync p7zip libparse-yapp-perl \
zip binutils-aarch64-linux-gnu dos2unix p7zip-full libvpx-dev bsdmainutils bc meson p7zip-full \
qemu-user-binfmt zstd parted imagemagick docker.io
qemu-user-binfmt zstd parted imagemagick qemu-user-static ca-certificates curl gnupg
```
### Docker
```
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
echo \
"deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
"$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
```
> Docker installation reference (source): https://docs.docker.com/engine/install/ubuntu/
Next, build the version of JELOS for your device. See the table above for dependencies.
```

View file

@ -74,6 +74,9 @@ docker-%: DOCKER_WORK_DIR := $(shell if [ -n "${DOCKER_WORK_DIR}" ]; then echo $
# DEVELOPER_SETTINGS is a file containing developer speicific settings. This will be mounted into the container if it exists
docker-%: DEVELOPER_SETTINGS := $(shell if [ -f "${HOME}/developer_settings.conf" ]; then echo "-v \"${HOME}/developer_settings.conf:${HOME}/developer_settings.conf\""; else echo ""; fi)
# LOCAL_SSH_KEYS_FILE is a variable that contains the location of the authorized keys file for development build use. It will be mounted into the container if it exists.
docker-%: LOCAL_SSH_KEYS_FILE := $(shell if [ -n "${LOCAL_SSH_KEYS_FILE}" ]; then echo "-v \"${LOCAL_SSH_KEYS_FILE}:${LOCAL_SSH_KEYS_FILE}\""; else echo ""; fi)
# UID is the user ID of current user - ensures docker sets file permissions properly
docker-%: UID := $(shell id -u)
@ -89,9 +92,6 @@ docker-%: DOCKER_CMD:= $(shell if which docker 2>/dev/null 1>/dev/null; then ech
# Podman requires some extra args (`--userns=keep-id` and `--security-opt=label=disable`). Set those args if using podman
docker-%: PODMAN_ARGS:= $(shell if ! which docker 2>/dev/null 1>/dev/null && which podman 2> /dev/null 1> /dev/null; then echo "--userns=keep-id --security-opt=label=disable -v /proc/mounts:/etc/mtab"; fi)
# Use 'sudo' if docker ps doesn't work. In theory, other things than missing sudo could cause this. But sudo needed is a common issue and easy to fix.
docker-%: SUDO := $(shell if which docker 2> /dev/null 1> /dev/null && ! docker ps -q 2> /dev/null 1> /dev/null ; then echo "sudo"; fi)
# Launch docker as interactive if this is an interactive shell (allows ctrl-c for manual and running non-interactive - aka: build server)
docker-%: INTERACTIVE=$(shell [ -t 0 ] && echo "-it")
@ -104,22 +104,17 @@ docker-%: $(shell env | grep "=" > .env)
# If the user issues a `make docker-shell` just start up bash as the shell to run commands
docker-shell: COMMAND=bash
# Command: builds docker image locally from Dockerfile
# Command: builds and pushes a hybrid docker image to dockerhub
# You must login with: docker login --username <username> and provide either a password or token (from user settings -> security in dockerhub) before this will work. The build user must also be a member of the "docker" group.
docker-image-build:
$(SUDO) $(DOCKER_CMD) build . -t $(DOCKER_IMAGE)
$(DOCKER_CMD) buildx create --use
$(DOCKER_CMD) buildx build --tag $(DOCKER_IMAGE) --platform linux/amd64,linux/arm64 --push .
# Command: pulls latest docker image from dockerhub. This will *replace* locally built version.
docker-image-pull:
$(SUDO) $(DOCKER_CMD) pull $(DOCKER_IMAGE)
# Command: pushes the latest Docker image to dockerhub. This is *not* needed to build. It updates the latest build image in dockerhub for everyone.
# Only JELOS admins in dockerhub can do this.
#
# You must login with: docker login --username <username> and provide either a password or token (from user settings -> security in dockerhub) before this will work.
docker-image-push:
$(SUDO) $(DOCKER_CMD) push $(DOCKER_IMAGE)
$(DOCKER_CMD) pull $(DOCKER_IMAGE)
# Wire up docker to call equivalent make files using % to match and $* to pass the value matched by %
docker-%:
$(SUDO) BUILD_DIR=$(DOCKER_WORK_DIR) $(DOCKER_CMD) run $(PODMAN_ARGS) $(INTERACTIVE) --init --env-file .env --rm --user $(UID):$(GID) $(DEVELOPER_SETTINGS) -v $(PWD):$(DOCKER_WORK_DIR) -w $(DOCKER_WORK_DIR) $(DOCKER_EXTRA_OPTS) $(DOCKER_IMAGE) $(COMMAND)
BUILD_DIR=$(DOCKER_WORK_DIR) $(DOCKER_CMD) run $(PODMAN_ARGS) $(INTERACTIVE) --init --env-file .env --rm --user $(UID):$(GID) $(DEVELOPER_SETTINGS) $(LOCAL_SSH_KEYS_FILE) -v $(PWD):$(DOCKER_WORK_DIR) -w $(DOCKER_WORK_DIR) $(DOCKER_EXTRA_OPTS) $(DOCKER_IMAGE) $(COMMAND)

View file

@ -3,4 +3,5 @@ vice-sa # Doesn't support updating with the script.
dolphin-sa # Wayland patch is now broken upstream
melonds-sa # Needs patch updates.
duckstation-lr #Libretro support removed from upstream.
duckstation-sa #Need to fix the patch first.
rpcs3-sa #Need to update to llvm 16

View file

@ -3,7 +3,7 @@
# Copyright (C) 2022-present Fewtarius
PKG_NAME="fileman"
PKG_VERSION="3bbc55a40651af7ef559c600ee6159e8f3c57459"
PKG_VERSION="8c6f35d"
PKG_ARCH="any"
PKG_LICENSE="GPL"
PKG_SITE="https://github.com/JustEnoughLinuxOS/fileman"
@ -15,7 +15,8 @@ PKG_SHORTDESC="A Single panel file Manager."
PKG_PATCH_DIRS="${DEVICE}"
make_target() {
make DEVICE=${DEVICE^^} RES_PATH=/usr/share/fileman/res START_PATH=/storage/roms SDL2_CONFIG=${SYSROOT_PREFIX}/usr/bin/sdl2-config CC=${CXX}
MAKEDEVICE=$(echo ${DEVICE^^} | sed "s#-#_##g")
make DEVICE=${MAKEDEVICE^^} RES_PATH=/usr/share/fileman/res START_PATH=/storage/roms SDL2_CONFIG=${SYSROOT_PREFIX}/usr/bin/sdl2-config CC=${CXX}
}
makeinstall_target() {

View file

@ -2,7 +2,7 @@
# Copyright (C) 2023-present BrooksyTech (https://github.com/brooksytech)
PKG_NAME="portmaster"
PKG_VERSION="b817dcd13c4486284874c13b2732d876a96e70b9"
PKG_VERSION="e0dcefc4fc2df80821b167b1bb8f50dedac2f3c5"
PKG_SITE="https://github.com/christianhaitian/PortMaster"
PKG_LICENSE="MIT"
PKG_ARCH="arm aarch64"

View file

@ -2,7 +2,7 @@
# Copyright (C) 2023-present Fewtarius
PKG_NAME="box64"
PKG_VERSION="1d98aa54d5e462e2d13a2bd6795d587e4c523caf"
PKG_VERSION="2bdf3088a6b09d2e5212b35e1160863eb64134c7"
PKG_ARCH="aarch64"
PKG_LICENSE="MIT"
PKG_SITE="https://github.com/ptitSeb/box64"

View file

@ -2,7 +2,7 @@
# Copyright (C) 2023-present Fewtarius
PKG_NAME="box86"
PKG_VERSION="bcb19dbe5dad09f2e4c969794bcb08f3f78929e7"
PKG_VERSION="1988eb0366d34d4dbb4bcbc7ba32ac3b579ba2ea"
PKG_ARCH="arm aarch64"
PKG_LICENSE="MIT"
PKG_SITE="https://github.com/ptitSeb/box86"

View file

@ -0,0 +1,28 @@
# SPDX-License-Identifier: Apache-2.0
# Copyright (C) 2023-present Fewtarius
PKG_NAME="libtraceevent"
PKG_VERSION="1.7.2"
PKG_LICENSE="GPL"
PKG_SITE="https://git.kernel.org/pub/scm/libs/libtrace/${PKG_NAME}.git/log/"
PKG_URL="https://git.kernel.org/pub/scm/libs/libtrace/${PKG_NAME}.git/snapshot/${PKG_NAME}-${PKG_VERSION}.tar.gz"
PKG_DEPENDS_HOST="ccache:host"
PKG_DEPENDS_TARGET="toolchain linux"
PKG_LONGDESC="Provides APIs to access kernel tracepoint events."
PKG_BUILD_FLAGS="+pic"
makeinstall_host() {
mkdir -p ${TOOLCHAIN}/lib
cp lib/${PKG_NAME}.a ${TOOLCHAIN}/lib
mkdir -p ${TOOLCHAIN}/lib/pkgconfig
cp ${PKG_NAME}.pc ${TOOLCHAIN}/lib/pkgconfig
}
makeinstall_target() {
mkdir -p ${SYSROOT_PREFIX}/usr/lib
cp lib/${PKG_NAME}.a ${SYSROOT_PREFIX}/usr/lib
mkdir -p ${SYSROOT_PREFIX}/usr/lib/pkgconfig
cp ${PKG_NAME}.pc ${SYSROOT_PREFIX}/usr/lib/pkgconfig
}

View file

@ -0,0 +1,34 @@
# SPDX-License-Identifier: Apache-2.0
# Copyright (C) 2023-present Fewtarius
PKG_NAME="libtracefs"
PKG_VERSION="1.6.4"
PKG_LICENSE="GPL"
PKG_SITE="https://git.kernel.org/pub/scm/libs/libtrace/${PKG_NAME}.git/log/"
PKG_URL="https://git.kernel.org/pub/scm/libs/libtrace/${PKG_NAME}.git/snapshot/${PKG_NAME}-${PKG_VERSION}.tar.gz"
PKG_DEPENDS_HOST="ccache:host libtraceevent:host"
PKG_DEPENDS_TARGET="toolchain libtraceevent"
PKG_LONGDESC="Provides APIs to access kernel trace file system."
PKG_BUILD_FLAGS="+pic"
makeinstall_host() {
mkdir -p ${TOOLCHAIN}/lib
cp lib/${PKG_NAME}.a ${TOOLCHAIN}/lib
mkdir -p ${TOOLCHAIN}/include
cp include/* ${TOOLCHAIN}/include
mkdir -p ${TOOLCHAIN}/lib/pkgconfig
cp ${PKG_NAME}.pc ${TOOLCHAIN}/lib/pkgconfig
}
makeinstall_target() {
mkdir -p ${SYSROOT_PREFIX}/usr/lib
cp lib/${PKG_NAME}.a ${SYSROOT_PREFIX}/usr/lib
mkdir -p ${SYSROOT_PREFIX}/usr/include
cp include/* ${SYSROOT_PREFIX}/usr/include
mkdir -p ${SYSROOT_PREFIX}/usr/lib/pkgconfig
cp ${PKG_NAME}.pc ${SYSROOT_PREFIX}/usr/lib/pkgconfig
}

View file

@ -45,6 +45,15 @@ configure_package() {
if [ "${DISPLAYSERVER}" = "wl" ]; then
PKG_DEPENDS_TARGET+=" wayland xcb-util xcb-util-image xcb-util-keysyms xcb-util-renderutil xcb-util-wm"
fi
# Vulkan support
if [ "${VULKAN_SUPPORT}" = "yes" ]
then
PKG_DEPENDS_TARGET+=" vulkan-loader vulkan-headers"
else
PKG_CONFIGURE_OPTS_TARGET+=" -no-feature-vulkan"
fi
}
pre_configure_target() {
@ -86,7 +95,6 @@ pre_configure_target() {
-no-tiff
-no-tslib
-no-feature-linuxfb
-no-feature-vulkan
-no-feature-openal
-no-feature-qml-debug
-no-feature-printer

View file

@ -19,7 +19,7 @@
################################################################################
PKG_NAME="81-lr"
PKG_VERSION="340a51b250fb8fbf1a9e5d3ad3924044250064e0"
PKG_VERSION="6d1b4d26aa9870133616fcfb5a763ca138ae25d1"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="GPLv3"

View file

@ -20,7 +20,7 @@
################################################################################
PKG_NAME="a5200-lr"
PKG_VERSION="44455983830bb19513bf531388ba8f7cde9e50ab"
PKG_VERSION="27141a4328cfc41112655de03c55275f1c246062"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="GPL"

View file

@ -20,7 +20,7 @@
################################################################################
PKG_NAME="beetle-lynx-lr"
PKG_VERSION="75c2fedc537df9774eb94e8da5f7642177d21a50"
PKG_VERSION="60371739b9f162c54225dc203a25ee7fc72be9a3"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="GPLv2"

View file

@ -20,7 +20,7 @@
################################################################################
PKG_NAME="beetle-pce-fast-lr"
PKG_VERSION="1f48fe2a8a63625ae4df93bcbe0b0b2d6a326402"
PKG_VERSION="daecc614f6cdbfa1cd754c39f31c4b3f2c658f98"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="GPLv2"

View file

@ -20,7 +20,7 @@
################################################################################
PKG_NAME="beetle-pce-lr"
PKG_VERSION="d3ebc8c7bfdd9e9fb773899c3c53a80560b5f846"
PKG_VERSION="df307b982c39efc5cc611bae5eb4849e1700d36e"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="GPLv2"

View file

@ -20,7 +20,7 @@
################################################################################
PKG_NAME="beetle-pcfx-lr"
PKG_VERSION="7fb33e0250c17382b10140e45bf2b38c36bb6091"
PKG_VERSION="47c355b6a515aef6dc57f57df1535570108a0e21"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="GPLv2"

View file

@ -2,7 +2,7 @@
# Copyright (C) 2022-present BrooksyTech (https://github.com/brooksytech)
PKG_NAME="beetle-saturn-lr"
PKG_VERSION="6625d33005fa9aebd7f13883a6a3a16118a467cc"
PKG_VERSION="cd395e9e3ee407608450ebc565e871b24e7ffed6"
PKG_LICENSE="GPLv2"
PKG_SITE="https://github.com/libretro/beetle-saturn-libretro"
PKG_URL="${PKG_SITE}.git"

View file

@ -20,7 +20,7 @@
################################################################################
PKG_NAME="beetle-supergrafx-lr"
PKG_VERSION="7abadb62e1fb2bda1574429a3f0eb94f3dbd27a4"
PKG_VERSION="bd92ec794552b16b9864f0ce0b1a0a1918a3f40e"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="GPLv2"

View file

@ -20,7 +20,7 @@
################################################################################
PKG_NAME="beetle-vb-lr"
PKG_VERSION="dd6393f76ff781df0f4e8c953f5b053b1e61b313"
PKG_VERSION="732a8f701e671bf032165730fdf8bd96fb5ca7bb"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="GPLv2"

View file

@ -20,7 +20,7 @@
################################################################################
PKG_NAME="beetle-wswan-lr"
PKG_VERSION="248a2fd0f11a0bff29b99b6940811ec66b324d8f"
PKG_VERSION="a0ddcd3f084f5b4eb06acb6e03b8c4707a2f6123"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="GPLv2"

View file

@ -2,7 +2,7 @@
# Copyright (C) 2022-present BrooksyTech (https://github.com/brooksytech)
PKG_NAME="bsnes-lr"
PKG_VERSION="9ba020d1c845aeafee53db60fa244ac25d64d9eb"
PKG_VERSION="3c1868250b90f5961eccd044a780489c29e4c40f"
PKG_LICENSE="GPLv2"
PKG_SITE="https://github.com/libretro/bsnes-libretro"
PKG_URL="${PKG_SITE}/archive/${PKG_VERSION}.tar.gz"

View file

@ -21,7 +21,7 @@
################################################################################
PKG_NAME="cannonball-lr"
PKG_VERSION="8fb0d9561ee110f31f45610661649f0c1ff068ee"
PKG_VERSION="93ca14d7074b400fc3ed9ba8cefe0622f8d76176"
PKG_ARCH="any"
PKG_LICENSE="GPLv3"
PKG_SITE="https://github.com/libretro/cannonball"

View file

@ -20,7 +20,7 @@
################################################################################
PKG_NAME="core-info"
PKG_VERSION="48d7973978e6482de116ebad35b1c0096b3a7288"
PKG_VERSION="53cf9b264a8d04e491cef2d6f61b3cfd0803bd70"
PKG_LICENSE="GPL"
PKG_SITE="https://github.com/libretro/libretro-core-info"
PKG_URL="https://github.com/libretro/libretro-core-info/archive/${PKG_VERSION}.tar.gz"

View file

@ -19,7 +19,7 @@
################################################################################
PKG_NAME="dosbox-pure-lr"
PKG_VERSION="e5b3057d885f9f4d68e6391c31ac0d967a775eac"
PKG_VERSION="b400e6cdc076310393750489ae3f682663f27400"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="GPLv2"

View file

@ -20,7 +20,7 @@
################################################################################
PKG_NAME="fceumm-lr"
PKG_VERSION="154ee559c0d5c592d2f5fc06380b94b7516ab899"
PKG_VERSION="ad2c71d8b6ce1f7b99b2d4cade3bd139b67f3efa"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="GPLv2"

View file

@ -3,7 +3,7 @@
# Copyright (C) 2022-present Fewtarius
PKG_NAME="flycast-lr"
PKG_VERSION="76af42ae6e1a67ef8e00ca96cf2d226407d2618a"
PKG_VERSION="a21b79c"
PKG_SITE="https://github.com/flyinghead/flycast"
PKG_URL="${PKG_SITE}.git"
PKG_DEPENDS_TARGET="toolchain zlib libzip"

View file

@ -20,7 +20,7 @@
################################################################################
PKG_NAME="gambatte-lr"
PKG_VERSION="e9b80131892f619d6b89c13582b18221d77ab4db"
PKG_VERSION="90701d6e5d68d31ead49f92f222c144c44a2645c"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="GPLv2"

View file

@ -21,7 +21,7 @@
################################################################################
PKG_NAME="genesis-plus-gx-lr"
PKG_VERSION="4c5209168fa17adc51dbd7f1063aa083c2564a8d"
PKG_VERSION="61a1ec920ecfeec1b38e3787d92f916f06b7eea6"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="Non-commercial"

View file

@ -21,7 +21,7 @@
################################################################################
PKG_NAME="glsl-shaders"
PKG_VERSION="a7855c81fefe32bb68d1412614284ff95625a217"
PKG_VERSION="fab96d2faa56131f098e811e30ee48a187bc1b47"
PKG_REV="1"
PKG_ARCH="aarch64"
PKG_LICENSE="GPL"

View file

@ -20,7 +20,7 @@
################################################################################
PKG_NAME="gme-lr"
PKG_VERSION="635b1e9124195eeb44d8a865f258cc2c92846694"
PKG_VERSION="40d8b3bf4f0bd4f713f65e08c62d30b1ae8b2282"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="GPLv3"

View file

@ -20,7 +20,7 @@
################################################################################
PKG_NAME="gw-lr"
PKG_VERSION="19a1cb3105ca4a82139fb4994e7995fd956f6f8d"
PKG_VERSION="0ecff52b11c327af52b22ea94b268c90472b6732"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="GPLv3"

View file

@ -20,7 +20,7 @@
################################################################################
PKG_NAME="hatari-lr"
PKG_VERSION="fa3eadba1c61035d3f339a20a97a42a2d6ca20bc"
PKG_VERSION="00a46e1ed216e3b51b1cd829e04a36caf30a0338"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="GPLv2"

View file

@ -21,7 +21,7 @@
################################################################################
PKG_NAME="mame2003-plus-lr"
PKG_VERSION="48b7cd0522a728b530aed73f9d015fe5e0fcfd23"
PKG_VERSION="a2f76b2c4e99e2ce2589cb430c417501ecebd7be"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="MAME"

View file

@ -19,7 +19,7 @@
################################################################################
PKG_NAME="meowpc98-lr"
PKG_VERSION="cd389b3490d5048873c40edd949a1b0631e0606d"
PKG_VERSION="bee2e243b0c68f787d0d360c2d4c289e581620ef"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="Unknown"

View file

@ -19,7 +19,7 @@
################################################################################
PKG_NAME="mgba-lr"
PKG_VERSION="a69c3434afe8b26cb8f9463077794edfa7d5efad"
PKG_VERSION="314bf7b676f5b820f396209eb0c7d6fbe8103486"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="MPLv2.0"

View file

@ -26,7 +26,7 @@ fi
pre_configure_target() {
sed -e "s|^GIT_VERSION ?.*$|GIT_VERSION := \" ${PKG_VERSION:0:7}\"|" -i Makefile
case ${DEVICE} in
RK35*)
RK3*|S922X*)
PKG_MAKE_OPTS_TARGET=" platform=${DEVICE}"
;;
esac

View file

@ -0,0 +1,58 @@
diff --git a/Makefile b/Makefile
index c7c20ed..13017e5 100644
--- a/Makefile
+++ b/Makefile
@@ -356,34 +356,29 @@ else ifneq (,$(findstring arm64_cortex_a53_gles3,$(platform)))
COREFLAGS += -DOS_LINUX
ASFLAGS = -f elf64 -d ELF_TYPE
-# Rockchip RK3288 e.g. Asus Tinker Board / RK3328 e.g. PINE64 Rock64 / RK3399 e.g. PINE64 RockPro64 - 32-bit userspace
-else ifneq (,$(findstring RK,$(platform)))
+# Amlogic S922X
+else ifneq (,$(findstring S922X,$(platform)))
TARGET := $(TARGET_NAME)_libretro.so
LDFLAGS += -shared -Wl,--version-script=$(LIBRETRO_DIR)/link.T -Wl,--no-undefined -ldl
+ CPUFLAGS += -march=armv8-a -mtune=@TARGET_CPU@
+ GL_LIB := -lGLESv2
+ WITH_DYNAREC := aarch64
+ GLES3 = 1
+ HAVE_PARALLEL_RSP = 1
+ HAVE_PARALLEL_RDP = 1
+ COREFLAGS += -DOS_LINUX
+ ASFLAGS = -f elf64 -d ELF_TYPE
- ifneq (,$(findstring RK33,$(platform)))
- CPUFLAGS += -march=armv8-a+crc -mfloat-abi=hard -mfpu=neon-fp-armv8
- ifneq (,$(findstring RK3399,$(platform)))
- CPUFLAGS += -mtune=cortex-a72.cortex-a53
- GLES3 = 1
- else ifneq (,$(findstring RK3328,$(platform)))
- CPUFLAGS += -mtune=cortex-a53
- GLES = 1
- endif
- else ifneq (,$(findstring RK3288,$(platform)))
- CPUFLAGS += -march=armv7ve -mtune=cortex-a17 -mfloat-abi=hard -mfpu=neon-vfpv4
- GLES3 = 1
- endif
-
- ifneq (,$(findstring mesa,$(platform)))
- COREFLAGS += -DEGL_NO_X11
- endif
-
+# Rockchip RK3326, RK3566, RK3588
+else ifneq (,$(findstring RK3,$(platform)))
+ TARGET := $(TARGET_NAME)_libretro.so
+ LDFLAGS += -shared -Wl,--version-script=$(LIBRETRO_DIR)/link.T -Wl,--no-undefined -ldl
+ CPUFLAGS += -march=armv8-a -mtune=@TARGET_CPU@
GL_LIB := -lGLESv2
- HAVE_NEON = 1
- WITH_DYNAREC=arm
- COREFLAGS += -DUSE_GENERIC_GLESV2 -DOS_LINUX
- ASFLAGS = -f elf -d ELF_TYPE
+ WITH_DYNAREC := aarch64
+ GLES3 = 1
+ COREFLAGS += -DOS_LINUX
+ ASFLAGS = -f elf64 -d ELF_TYPE
# OS X
else ifneq (,$(findstring osx,$(platform)))

View file

@ -1,689 +0,0 @@
diff -rupN mupen64plus.orig/Makefile mupen64plus/Makefile
--- mupen64plus.orig/Makefile 2022-09-23 07:01:22.758058025 -0400
+++ mupen64plus/Makefile 2022-09-23 07:05:08.886138368 -0400
@@ -319,7 +319,7 @@ else ifneq (,$(findstring AMLG,$(platfor
HAVE_NEON = 1
WITH_DYNAREC=arm
- COREFLAGS += -DUSE_GENERIC_GLESV2 -DOS_LINUX
+ #COREFLAGS += -DUSE_GENERIC_GLESV2 -DOS_LINUX
ASFLAGS = -f elf -d ELF_TYPE
# Amlogic S905/S912
@@ -362,13 +362,10 @@ else ifneq (,$(findstring RK,$(platform)
LDFLAGS += -shared -Wl,--version-script=$(LIBRETRO_DIR)/link.T -Wl,--no-undefined -ldl
ifneq (,$(findstring RK33,$(platform)))
- CPUFLAGS += -march=armv8-a+crc -mfloat-abi=hard -mfpu=neon-fp-armv8
ifneq (,$(findstring RK3399,$(platform)))
- CPUFLAGS += -mtune=cortex-a72.cortex-a53
- GLES3 = 1
- else ifneq (,$(findstring RK3328,$(platform)))
- CPUFLAGS += -mtune=cortex-a53
- GLES = 1
+ CPUFLAGS += -march=armv8-a -mtune=cortex-a72.cortex-a53
+ else ifneq (,$(findstring @DEVICE@,$(platform)))
+ CPUFLAGS += -march=armv8-a -mtune=@TARGET_CPU@
endif
else ifneq (,$(findstring RK3288,$(platform)))
CPUFLAGS += -march=armv7ve -mtune=cortex-a17 -mfloat-abi=hard -mfpu=neon-vfpv4
@@ -380,10 +377,10 @@ else ifneq (,$(findstring RK,$(platform)
endif
GL_LIB := -lGLESv2
- HAVE_NEON = 1
- WITH_DYNAREC=arm
- COREFLAGS += -DUSE_GENERIC_GLESV2 -DOS_LINUX
- ASFLAGS = -f elf -d ELF_TYPE
+ WITH_DYNAREC := aarch64
+ GLES3 = 1
+ COREFLAGS += -DOS_LINUX
+ ASFLAGS = -f elf64 -d ELF_TYPE
# OS X
else ifneq (,$(findstring osx,$(platform)))
diff -rupN mupen64plus.orig/Makefile.orig mupen64plus/Makefile.orig
--- mupen64plus.orig/Makefile.orig 1969-12-31 19:00:00.000000000 -0500
+++ mupen64plus/Makefile.orig 2022-09-23 07:01:25.158078690 -0400
@@ -0,0 +1,641 @@
+DEBUG = 0
+FORCE_GLES ?= 0
+FORCE_GLES3 ?= 0
+LLE ?= 0
+HAVE_PARALLEL_RSP ?= 0
+HAVE_PARALLEL_RDP ?= 0
+
+SYSTEM_MINIZIP ?= 0
+SYSTEM_LIBPNG ?= 0
+SYSTEM_XXHASH ?= 0
+SYSTEM_ZLIB ?= 0
+
+HAVE_LTCG ?= 0
+DYNAFLAGS :=
+INCFLAGS :=
+COREFLAGS :=
+CPUFLAGS :=
+GLFLAGS :=
+AWK ?= awk
+STRINGS ?= strings
+TR ?= tr
+
+UNAME=$(shell uname -a)
+
+# Dirs
+ROOT_DIR := .
+LIBRETRO_DIR := $(ROOT_DIR)/libretro
+DEPSDIR := $(CURDIR)/
+
+ifeq ($(platform),)
+ platform = unix
+ ifeq ($(UNAME),)
+ platform = win
+ else ifneq ($(findstring MINGW,$(UNAME)),)
+ platform = win
+ else ifneq ($(findstring Darwin,$(UNAME)),)
+ platform = osx
+ else ifneq ($(findstring win,$(UNAME)),)
+ platform = win
+ endif
+else ifneq (,$(findstring armv,$(platform)))
+ override platform += unix
+endif
+
+# system platform
+system_platform = unix
+ifeq ($(shell uname -a),)
+ EXE_EXT = .exe
+ system_platform = win
+else ifneq ($(findstring Darwin,$(shell uname -a)),)
+ system_platform = osx
+ arch = intel
+ifeq ($(shell uname -p),powerpc)
+ arch = ppc
+endif
+else ifneq ($(findstring MINGW,$(shell uname -a)),)
+ system_platform = win
+endif
+
+# Cross compile ?
+
+ifeq (,$(ARCH))
+ ARCH = $(shell uname -m)
+endif
+
+# Target Dynarec
+WITH_DYNAREC ?= $(ARCH)
+
+PIC = 1
+# on 32bit Haiku the output of "uname -m" is "BePC"
+ifeq ($(ARCH), $(filter $(ARCH), i386 i686 BePC))
+ WITH_DYNAREC = x86
+ PIC = 0
+else ifeq ($(ARCH), $(filter $(ARCH), arm))
+ WITH_DYNAREC = arm
+endif
+
+TARGET_NAME := mupen64plus_next
+CC_AS ?= $(CC)
+NASM ?= nasm
+
+GIT_VERSION ?= " $(shell git rev-parse --short HEAD || echo unknown)"
+ifneq ($(GIT_VERSION)," unknown")
+ COREFLAGS += -DGIT_VERSION=\"$(GIT_VERSION)\"
+endif
+
+ifneq ($(CORE_NAME),)
+ COREFLAGS += -DCORE_NAME=\""$(CORE_NAME)"\"
+endif
+
+# Linux
+ifneq (,$(findstring unix,$(platform)))
+ TARGET := $(TARGET_NAME)_libretro.so
+ LDFLAGS += -shared -Wl,--version-script=$(LIBRETRO_DIR)/link.T -Wl,--no-undefined
+
+ ifeq ($(FORCE_GLES),1)
+ GLES = 1
+ GL_LIB := -lGLESv2
+ else ifeq ($(FORCE_GLES3),1)
+ GLES3 = 1
+ GL_LIB := -lGLESv2
+ else
+ GL_LIB := -lGL
+ endif
+
+ COREFLAGS += -DOS_LINUX
+ ifeq ($(ARCH), x86_64)
+ ASFLAGS = -f elf64 -d ELF_TYPE
+ else
+ ASFLAGS = -f elf -d ELF_TYPE
+ endif
+
+ ifneq (,$(findstring armv,$(platform)))
+ ARCH = arm
+ WITH_DYNAREC = arm
+ CPUFLAGS += -DARM -marm
+ ifneq (,$(findstring cortexa8,$(platform)))
+ CPUFLAGS += -mcpu=cortex-a8
+ else ifneq (,$(findstring cortexa9,$(platform)))
+ CPUFLAGS += -mcpu=cortex-a9
+ else
+ CPUFLAGS += -mcpu=cortex-a7
+ endif
+ ifneq (,$(findstring neon,$(platform)))
+ CPUFLAGS += -mfpu=neon
+ HAVE_NEON = 1
+ endif
+ ifneq (,$(findstring softfloat,$(platform)))
+ CPUFLAGS += -mfloat-abi=softfp
+ else ifneq (,$(findstring hardfloat,$(platform)))
+ CPUFLAGS += -mfloat-abi=hard
+ endif
+ endif
+
+# Raspberry Pi
+else ifneq (,$(findstring rpi,$(platform)))
+ TARGET := $(TARGET_NAME)_libretro.so
+ LDFLAGS += -shared -Wl,--version-script=$(LIBRETRO_DIR)/link.T -Wl,--no-undefined -ldl
+ ifeq ($(FORCE_GLES3),1)
+ GLES3 = 1
+ else
+ GLES = 1
+ endif
+ ifneq (,$(findstring mesa,$(platform)))
+ MESA = 1
+ endif
+ ifneq (,$(findstring rpi4,$(platform)))
+ GLES3 = 1
+ MESA = 1
+ endif
+ ifeq ($(MESA), 1)
+ GL_LIB := -lGLESv2
+ else
+ LLE = 0
+ COREFLAGS += -DVC -DGL_USE_DLSYM
+ GL_LIB := -L/opt/vc/lib -lbrcmGLESv2
+ EGL_LIB := -lbrcmEGL
+ INCFLAGS += -I/opt/vc/include -I/opt/vc/include/interface/vcos -I/opt/vc/include/interface/vcos/pthreads
+ endif
+ HAVE_NEON = 1
+ ifneq (,$(findstring rpi2,$(platform)))
+ CPUFLAGS += -mcpu=cortex-a7
+ ARM_CPUFLAGS = -mfpu=neon-vfpv4
+ else ifneq (,$(findstring rpi3,$(platform)))
+ ifneq (,$(findstring rpi3_64,$(platform)))
+ CPUFLAGS += -mcpu=cortex-a53 -mtune=cortex-a53
+ else
+ CPUFLAGS += -march=armv8-a+crc -mtune=cortex-a53
+ ARM_CPUFLAGS = -mfpu=neon-fp-armv8
+ endif
+ else ifneq (,$(findstring rpi4,$(platform)))
+ ifneq (,$(findstring rpi4_64,$(platform)))
+ CPUFLAGS += -mcpu=cortex-a72 -mtune=cortex-a72
+ else
+ CPUFLAGS += -march=armv8-a+crc -mtune=cortex-a72
+ ARM_CPUFLAGS = -mfpu=neon-fp-armv8
+ endif
+ else ifneq (,$(findstring rpi,$(platform)))
+ CPUFLAGS += -mcpu=arm1176jzf-s
+ ARM_CPUFLAGS = -mfpu=vfp
+ HAVE_NEON = 0
+ endif
+ ifeq ($(ARCH), aarch64)
+ WITH_DYNAREC=aarch64
+ HAVE_NEON = 0
+ else
+ WITH_DYNAREC=arm
+ CPUFLAGS += $(ARM_CPUFLAGS) -mfloat-abi=hard
+ endif
+ COREFLAGS += -DOS_LINUX
+ ASFLAGS = -f elf -d ELF_TYPE
+
+# Nintendo Switch
+else ifeq ($(platform), libnx)
+ include $(DEVKITPRO)/devkitA64/base_tools
+ PORTLIBS := $(PORTLIBS_PATH)/switch
+ PATH := $(PORTLIBS)/bin:$(PATH)
+ LIBNX ?= $(DEVKITPRO)/libnx
+ STRINGS := $(PREFIX)$(STRINGS)
+ EGL := 1
+ PIC = 1
+ TARGET := $(TARGET_NAME)_libretro_$(platform).a
+ CPUOPTS := -g -march=armv8-a+crc -mtune=cortex-a57 -mtp=soft -mcpu=cortex-a57+crc+fp+simd
+ PLATCFLAGS = -O3 -ffast-math -funsafe-math-optimizations -fPIE -I$(PORTLIBS)/include/ -I$(LIBNX)/include/ -ffunction-sections -fdata-sections -ftls-model=local-exec -specs=$(LIBNX)/switch.specs
+ PLATCFLAGS += $(INCLUDE) -D__SWITCH__=1 -DSWITCH -DHAVE_LIBNX -D_GLIBCXX_USE_C99_MATH_TR1 -D_LDBL_EQ_DBL -funroll-loops #-DM64P_NETPLAY
+ CXXFLAGS += -fno-rtti -std=gnu++11
+ COREFLAGS += -DOS_LINUX -DEGL
+ GLES = 0
+ WITH_DYNAREC = aarch64
+ STATIC_LINKING = 1
+
+# Jetson Xavier NX
+else ifeq ($(platform), jetson-xavier)
+ TARGET := $(TARGET_NAME)_libretro.so
+ LDFLAGS += -shared -Wl,--version-script=$(LIBRETRO_DIR)/link.T -Wl,--no-undefined
+ GL_LIB := -lGL
+ CPUOPTS := -march=armv8.2-a+crc -mtune=cortex-a75 -mcpu=cortex-a75+crc+fp+simd
+ PLATCFLAGS = -O3 -ffast-math -funsafe-math-optimizations
+ CXXFLAGS += -std=gnu++11
+ COREFLAGS += -DOS_LINUX
+ WITH_DYNAREC = aarch64
+ HAVE_PARALLEL_RSP = 1
+ HAVE_PARALLEL_RDP = 1
+ HAVE_THR_AL = 1
+ LLE = 1
+ COREFLAGS += -ftree-vectorize -ftree-vectorizer-verbose=2 -funsafe-math-optimizations -fno-finite-math-only
+
+# 64 bit ODROIDs
+else ifneq (,$(findstring odroid64,$(platform)))
+ TARGET := $(TARGET_NAME)_libretro.so
+ LDFLAGS += -shared -Wl,--version-script=$(LIBRETRO_DIR)/link.T -Wl,--no-undefined
+ BOARD ?= $(shell cat /proc/cpuinfo | grep -i odroid | awk '{print $$3}')
+ GLES = 1
+ GL_LIB := -lGLESv2
+ WITH_DYNAREC := aarch64
+ ifneq (,$(findstring C2,$(BOARD)))
+ # ODROID-C2
+ CPUFLAGS += -mcpu=cortex-a53
+ else ifneq (,$(findstring C4,$(BOARD)))
+ # ODROID-C4
+ CPUFLAGS += -mcpu=cortex-a55
+ GLES3 = 1
+ else ifneq (,$(findstring N1,$(BOARD)))
+ # ODROID-N1
+ CPUFLAGS += -mcpu=cortex-a72.cortex-a53
+ else ifneq (,$(findstring N2,$(BOARD)))
+ # ODROID-N2
+ CPUFLAGS += -mcpu=cortex-a73.cortex-a53
+ GLES = 0
+ GLES3= 1
+ GL_LIB := -lGLESv3
+ endif
+
+ COREFLAGS += -DOS_LINUX
+ ASFLAGS = -f elf -d ELF_TYPE
+
+# ODROIDs
+else ifneq (,$(findstring odroid,$(platform)))
+ TARGET := $(TARGET_NAME)_libretro.so
+ LDFLAGS += -shared -Wl,--version-script=$(LIBRETRO_DIR)/link.T -Wl,--no-undefined
+ BOARD ?= $(shell cat /proc/cpuinfo | grep -i odroid | awk '{print $$3}')
+ GLES = 1
+ GL_LIB := -lGLESv2
+ CPUFLAGS += -marm -mfloat-abi=hard
+ HAVE_NEON = 1
+ WITH_DYNAREC=arm
+ ifneq (,$(findstring ODROIDC,$(BOARD)))
+ # ODROID-C1
+ CPUFLAGS += -mcpu=cortex-a5 -mfpu=neon
+ else ifneq (,$(findstring ODROID-XU,$(BOARD)))
+ # ODROID-XU3 & -XU3 Lite and -XU4
+ ifeq "$(shell expr `gcc -dumpversion` \>= 4.9)" "1"
+ CPUFLAGS += -mcpu=cortex-a15 -mtune=cortex-a15.cortex-a7 -mfpu=neon-vfpv4 -mvectorize-with-neon-quad
+ else
+ CPUFLAGS += -mcpu=cortex-a9 -mfpu=neon
+ endif
+ # ODROIDGOA
+ else ifneq (,$(findstring ODROIDGOA,$(BOARD)))
+ CPUFLAGS += -march=armv8-a+crc -mfpu=neon-fp-armv8 -mcpu=cortex-a35 -mtune=cortex-a35
+ else
+ # ODROID-U2, -U3, -X & -X2
+ CPUFLAGS += -mcpu=cortex-a9 -mfpu=neon
+ endif
+
+ COREFLAGS += -DOS_LINUX
+ ASFLAGS = -f elf -d ELF_TYPE
+
+# Amlogic S905/S905X/S912 (AMLGXBB/AMLGXL/AMLGXM) e.g. Khadas VIM1/2 / S905X2 (AMLG12A) & S922X/A311D (AMLG12B) e.g. Khadas VIM3 - 32-bit userspace
+else ifneq (,$(findstring AMLG,$(platform)))
+ TARGET := $(TARGET_NAME)_libretro.so
+ LDFLAGS += -shared -Wl,--version-script=$(LIBRETRO_DIR)/link.T -Wl,--no-undefined -ldl
+ CPUFLAGS += -march=armv8-a+crc -mfloat-abi=hard -mfpu=neon-fp-armv8
+
+ ifneq (,$(findstring AMLG12,$(platform)))
+ ifneq (,$(findstring AMLG12B,$(platform)))
+ CPUFLAGS += -mtune=cortex-a73.cortex-a53
+ else
+ CPUFLAGS += -mtune=cortex-a53
+ endif
+ GLES3 = 1
+ else ifneq (,$(findstring AMLGX,$(platform)))
+ CPUFLAGS += -mtune=cortex-a53
+ ifneq (,$(findstring AMLGXM,$(platform)))
+ GLES3 = 1
+ else
+ GLES = 1
+ endif
+ endif
+
+ ifneq (,$(findstring mesa,$(platform)))
+ COREFLAGS += -DEGL_NO_X11
+ endif
+
+ ifneq (,$(findstring mali,$(platform)))
+ GL_LIB := -lGLESv3
+ else
+ GL_LIB := -lGLESv2
+ endif
+
+ HAVE_NEON = 1
+ WITH_DYNAREC=arm
+ COREFLAGS += -DUSE_GENERIC_GLESV2 -DOS_LINUX
+ ASFLAGS = -f elf -d ELF_TYPE
+
+# Amlogic S905/S912
+else ifneq (,$(findstring amlogic,$(platform)))
+ TARGET := $(TARGET_NAME)_libretro.so
+ LDFLAGS += -shared -Wl,--version-script=$(LIBRETRO_DIR)/link.T -Wl,--no-undefined -ldl
+ GLES = 1
+ GL_LIB := -lGLESv2
+ CPUFLAGS += -marm -mfloat-abi=hard -mfpu=neon
+ HAVE_NEON = 1
+ WITH_DYNAREC=arm
+ COREFLAGS += -DUSE_GENERIC_GLESV2 -DOS_LINUX
+ CPUFLAGS += -march=armv8-a -mcpu=cortex-a53 -mtune=cortex-a53
+
+# Generic AArch64 Cortex-A53 GLES 2.0 target
+else ifneq (,$(findstring arm64_cortex_a53_gles2,$(platform)))
+ TARGET := $(TARGET_NAME)_libretro.so
+ LDFLAGS += -shared -Wl,--version-script=$(LIBRETRO_DIR)/link.T -Wl,--no-undefined -ldl
+ GL_LIB := -lGLESv2
+ WITH_DYNAREC := aarch64
+ CPUFLAGS += -mcpu=cortex-a53 -mtune=cortex-a53
+ GLES = 1
+ COREFLAGS += -DOS_LINUX
+ ASFLAGS = -f elf64 -d ELF_TYPE
+
+# Generic AArch64 Cortex-A53 GLES 3.0 target
+else ifneq (,$(findstring arm64_cortex_a53_gles3,$(platform)))
+ TARGET := $(TARGET_NAME)_libretro.so
+ LDFLAGS += -shared -Wl,--version-script=$(LIBRETRO_DIR)/link.T -Wl,--no-undefined -ldl
+ GL_LIB := -lGLESv2
+ WITH_DYNAREC := aarch64
+ CPUFLAGS += -mcpu=cortex-a53 -mtune=cortex-a53
+ GLES3 = 1
+ COREFLAGS += -DOS_LINUX
+ ASFLAGS = -f elf64 -d ELF_TYPE
+
+# Rockchip RK3288 e.g. Asus Tinker Board / RK3328 e.g. PINE64 Rock64 / RK3399 e.g. PINE64 RockPro64 - 32-bit userspace
+else ifneq (,$(findstring RK,$(platform)))
+ TARGET := $(TARGET_NAME)_libretro.so
+ LDFLAGS += -shared -Wl,--version-script=$(LIBRETRO_DIR)/link.T -Wl,--no-undefined -ldl
+
+ ifneq (,$(findstring RK33,$(platform)))
+ CPUFLAGS += -march=armv8-a+crc -mfloat-abi=hard -mfpu=neon-fp-armv8
+ ifneq (,$(findstring RK3399,$(platform)))
+ CPUFLAGS += -mtune=cortex-a72.cortex-a53
+ GLES3 = 1
+ else ifneq (,$(findstring RK3328,$(platform)))
+ CPUFLAGS += -mtune=cortex-a53
+ GLES = 1
+ endif
+ else ifneq (,$(findstring RK3288,$(platform)))
+ CPUFLAGS += -march=armv7ve -mtune=cortex-a17 -mfloat-abi=hard -mfpu=neon-vfpv4
+ GLES3 = 1
+ endif
+
+ ifneq (,$(findstring mesa,$(platform)))
+ COREFLAGS += -DEGL_NO_X11
+ endif
+
+ GL_LIB := -lGLESv2
+ HAVE_NEON = 1
+ WITH_DYNAREC=arm
+ COREFLAGS += -DUSE_GENERIC_GLESV2 -DOS_LINUX
+ ASFLAGS = -f elf -d ELF_TYPE
+
+# OS X
+else ifneq (,$(findstring osx,$(platform)))
+ TARGET := $(TARGET_NAME)_libretro.dylib
+ LDFLAGS += -dynamiclib
+ OSXVER = `sw_vers -productVersion | cut -d. -f 2`
+ OSX_LT_MAVERICKS = `(( $(OSXVER) <= 9)) && echo "YES"`
+ LDFLAGS += -mmacosx-version-min=10.7
+ LDFLAGS += -stdlib=libc++
+
+ PLATCFLAGS += -D__MACOSX__ -DOSX -DOS_MAC_OS_X
+ GL_LIB := -framework OpenGL
+
+ # Target Dynarec
+ ifeq ($(ARCH), $(filter $(ARCH), ppc))
+ WITH_DYNAREC =
+ endif
+
+ COREFLAGS += -DOS_LINUX
+ ASFLAGS = -f elf -d ELF_TYPE
+# iOS
+else ifneq (,$(findstring ios,$(platform)))
+ ifeq ($(IOSSDK),)
+ IOSSDK := $(shell xcodebuild -version -sdk iphoneos Path)
+ endif
+
+ TARGET := $(TARGET_NAME)_libretro_ios.dylib
+ DEFINES += -DIOS
+ GLES = 1
+ ifeq ($(platform),ios-arm64)
+ WITH_DYNAREC=
+ GLES=1
+ GLES3=1
+ FORCE_GLES3=1
+ EGL := 0
+ PLATCFLAGS += -DHAVE_POSIX_MEMALIGN -DNO_ASM
+ PLATCFLAGS += -DIOS -marm -DOS_IOS -DDONT_WANT_ARM_OPTIMIZATIONS
+ CPUFLAGS += -marm -mfpu=neon -mfloat-abi=softfp
+ HAVE_NEON=0
+ CC += -miphoneos-version-min=8.0
+ CC_AS += -miphoneos-version-min=8.0
+ CXX += -miphoneos-version-min=8.0
+ PLATCFLAGS += -miphoneos-version-min=8.0 -Wno-error=implicit-function-declaration
+ CC = clang -arch arm64 -isysroot $(IOSSDK)
+ CXX = clang++ -arch arm64 -isysroot $(IOSSDK)
+ else
+ PLATCFLAGS += -DOS_MAC_OS_X
+ PLATCFLAGS += -DHAVE_POSIX_MEMALIGN -DNO_ASM
+ PLATCFLAGS += -DIOS -marm
+ CPUFLAGS += -DNO_ASM -DARM -D__arm__ -DARM_ASM -D__NEON_OPT
+ CPUFLAGS += -marm -mcpu=cortex-a8 -mfpu=neon -mfloat-abi=softfp
+ WITH_DYNAREC=arm
+ HAVE_NEON=1
+ CC += -miphoneos-version-min=5.0
+ CC_AS += -miphoneos-version-min=5.0
+ CXX += -miphoneos-version-min=5.0
+ PLATCFLAGS += -miphoneos-version-min=5.0
+ CC = clang -arch armv7 -isysroot $(IOSSDK)
+ CC_AS = perl ./custom/tools/gas-preprocessor.pl $(CC)
+ CXX = clang++ -arch armv7 -isysroot $(IOSSDK)
+ endif
+ LDFLAGS += -dynamiclib
+ GL_LIB := -framework OpenGLES
+# Android
+else ifneq (,$(findstring android,$(platform)))
+ ANDROID = 1
+ LDFLAGS += -shared -Wl,--version-script=$(LIBRETRO_DIR)/link.T -Wl,--no-undefined -Wl,--warn-common -llog
+ INCFLAGS += -I$(ROOT_DIR)/GLideN64/src/GLideNHQ/inc
+ ifneq (,$(findstring x86,$(platform)))
+ CC = i686-linux-android-gcc
+ CXX = i686-linux-android-g++
+ WITH_DYNAREC = x86
+ LDFLAGS += -L$(ROOT_DIR)/custom/android/x86
+ else
+ CC = arm-linux-androideabi-gcc
+ CXX = arm-linux-androideabi-g++
+ WITH_DYNAREC = arm
+ HAVE_NEON = 1
+ CPUFLAGS += -march=armv7-a -mfloat-abi=softfp -mfpu=neon
+ LDFLAGS += -march=armv7-a -L$(ROOT_DIR)/custom/android/arm
+ endif
+ ifneq (,$(findstring gles3,$(platform)))
+ GL_LIB := -lGLESv3
+ GLES3 = 1
+ TARGET := $(TARGET_NAME)_gles3_libretro_android.so
+ else
+ GL_LIB := -lGLESv2
+ GLES = 1
+ TARGET := $(TARGET_NAME)_gles2_libretro_android.so
+ endif
+ CPUFLAGS += -DANDROID -DEGL_EGLEXT_PROTOTYPES
+ COREFLAGS += -DOS_LINUX
+ ASFLAGS = -f elf -d ELF_TYPE
+# emscripten
+else ifeq ($(platform), emscripten)
+ TARGET := $(TARGET_NAME)_libretro_emscripten.bc
+ GLES := 1
+ WITH_DYNAREC :=
+ CPUFLAGS += -DEMSCRIPTEN -DNO_ASM -s USE_ZLIB=1
+ PLATCFLAGS += \
+ -Dsinc_resampler=glupen_sinc_resampler \
+ -DCC_resampler=glupen_CC_resampler \
+ -Drglgen_symbol_map=glupen_rglgen_symbol_map \
+ -Drglgen_resolve_symbols_custom=glupen_rglgen_resolve_symbols_custom \
+ -Drglgen_resolve_symbols=glupen_rglgen_resolve_symbols \
+ -Dmemalign_alloc=glupen_memalign_alloc \
+ -Dmemalign_free=glupen_memalign_free \
+ -Dmemalign_alloc_aligned=glupen_memalign_alloc_aligned \
+ -Daudio_resampler_driver_find_handle=glupen_audio_resampler_driver_find_handle \
+ -Daudio_resampler_driver_find_ident=glupen_audio_resampler_driver_find_ident \
+ -Drarch_resampler_realloc=glupen_rarch_resampler_realloc \
+ -Dconvert_float_to_s16_C=glupen_convert_float_to_s16_C \
+ -Dconvert_float_to_s16_init_simd=glupen_convert_float_to_s16_init_simd \
+ -Dconvert_s16_to_float_C=glupen_convert_s16_to_float_C \
+ -Dconvert_s16_to_float_init_simd=glupen_convert_s16_to_float_init_simd \
+ -Dcpu_features_get_perf_counter=glupen_cpu_features_get_perf_counter \
+ -Dcpu_features_get_time_usec=glupen_cpu_features_get_time_usec \
+ -Dcpu_features_get_core_amount=glupen_cpu_features_get_core_amount \
+ -Dcpu_features_get=glupen_cpu_features_get \
+ -Dffs=glupen_ffs \
+ -Dstrlcpy_retro__=glupen_strlcpy_retro__ \
+ -Dstrlcat_retro__=glupen_strlcat_retro__
+ CC = emcc
+ CXX = em++
+ HAVE_NEON = 0
+
+ COREFLAGS += -DOS_LINUX
+ ASFLAGS = -f elf -d ELF_TYPE
+# Windows
+else
+ TARGET := $(TARGET_NAME)_libretro.dll
+ LDFLAGS += -shared -static-libgcc -static-libstdc++ -Wl,--version-script=$(LIBRETRO_DIR)/link.T #-static -lmingw32 -lSDL2main -lSDL2 -mwindows -lm -ldinput8 -ldxguid -ldxerr8 -luser32 -lgdi32 -lwinmm -limm32 -lole32 -loleaut32 -lshell32 -lversion -luuid -lsdl2_net -lsdl2 -lws2_32 -lSetupapi -lIPHLPAPI
+ GL_LIB := -lopengl32
+
+ ifeq ($(MSYSTEM),MINGW64)
+ CC ?= x86_64-w64-mingw32-gcc
+ CXX ?= x86_64-w64-mingw32-g++
+ WITH_DYNAREC = x86_64
+ COREFLAGS += -DWIN64 #-DM64P_NETPLAY
+ ASFLAGS = -f win64 -d WIN64
+ PIC = 1
+ else ifeq ($(MSYSTEM),MINGW32)
+ CC ?= i686-w64-mingw32-gcc
+ CXX ?= i686-w64-mingw32-g++
+ WITH_DYNAREC = x86
+ COREFLAGS += -DWIN32
+ PIC = 1
+ ASFLAGS = -f win32 -d WIN32 -d LEADING_UNDERSCORE
+ endif
+
+ HAVE_PARALLEL_RSP = 1
+ HAVE_PARALLEL_RDP = 1
+ HAVE_THR_AL = 1
+ LLE = 1
+ COREFLAGS += -DOS_WINDOWS -DMINGW -DUNICODE
+ CXXFLAGS += -fpermissive
+endif
+
+ifeq ($(STATIC_LINKING), 1)
+ ifneq (,$(findstring win,$(platform)))
+ TARGET := $(TARGET:.dll=.lib)
+ else ifneq ($(platform), $(filter $(platform), osx ios))
+ TARGET := $(TARGET:.dylib=.a)
+ else
+ TARGET := $(TARGET:.so=.a)
+ endif
+endif
+
+include Makefile.common
+
+ifeq ($(HAVE_NEON), 1)
+ COREFLAGS += -DHAVE_NEON -D__ARM_NEON__ -D__NEON_OPT -ftree-vectorize -mvectorize-with-neon-quad -ftree-vectorizer-verbose=2 -funsafe-math-optimizations -fno-finite-math-only
+endif
+
+ifeq ($(LLE), 1)
+ COREFLAGS += -DHAVE_LLE
+endif
+
+COREFLAGS += -D__STDC_CONSTANT_MACROS -D__STDC_LIMIT_MACROS -D__LIBRETRO__ -DUSE_FILE32API -DM64P_PLUGIN_API -DM64P_CORE_PROTOTYPES -D_ENDUSER_RELEASE -DSINC_LOWER_QUALITY -DTXFILTER_LIB -D__VEC4_OPT -DMUPENPLUSAPI
+
+ifeq ($(DEBUG), 1)
+ CPUOPTS += -O0 -g
+ CPUOPTS += -DOPENGL_DEBUG
+else
+ CPUOPTS += -DNDEBUG -fsigned-char -ffast-math -fno-strict-aliasing -fomit-frame-pointer -fvisibility=hidden
+ifneq ($(platform), libnx)
+ CPUOPTS := -O3 $(CPUOPTS)
+endif
+ CXXFLAGS += -fvisibility-inlines-hidden
+endif
+
+# Use -fcommon
+CPUOPTS += -fcommon
+
+# set C/C++ standard to use
+CFLAGS += -std=gnu11 -D_CRT_SECURE_NO_WARNINGS -Wno-discarded-qualifiers
+CXXFLAGS += -std=gnu++11 -D_CRT_SECURE_NO_WARNINGS
+
+ifeq ($(HAVE_LTCG),1)
+ CPUFLAGS += -flto
+endif
+
+ifeq ($(PIC), 1)
+ fpic = -fPIC
+else
+ fpic = -fno-PIC
+endif
+
+OBJECTS += $(SOURCES_CXX:.cpp=.o) $(SOURCES_C:.c=.o) $(SOURCES_ASM:.S=.o) $(SOURCES_NASM:.asm=.o)
+CXXFLAGS += $(CPUOPTS) $(COREFLAGS) $(INCFLAGS) $(PLATCFLAGS) $(fpic) $(CPUFLAGS) $(GLFLAGS) $(DYNAFLAGS)
+CFLAGS += $(CPUOPTS) $(COREFLAGS) $(INCFLAGS) $(PLATCFLAGS) $(fpic) $(CPUFLAGS) $(GLFLAGS) $(DYNAFLAGS)
+
+ifeq (,$(findstring android,$(platform)))
+ LDFLAGS += -lpthread
+endif
+
+ifeq ($(platform), ios-arm64)
+ LDFLAGS += $(fpic) -O3 $(CPUOPTS) $(PLATCFLAGS) $(CPUFLAGS)
+else
+ LDFLAGS += $(fpic) -O3 $(CPUOPTS) $(PLATCFLAGS) $(CPUFLAGS)
+endif
+
+-include $(OBJECTS:.o=.d)
+all: $(TARGET)
+$(TARGET): $(OBJECTS)
+
+ifeq ($(STATIC_LINKING), 1)
+ $(AR) rcs $@ $(OBJECTS)
+else
+ $(CXX) -o $@ $(OBJECTS) $(LDFLAGS) $(GL_LIB)
+endif
+
+# Script hackery fll or generating ASM include files for the new dynarec assembly code
+$(AWK_DEST_DIR)/asm_defines_gas.h: $(AWK_DEST_DIR)/asm_defines_nasm.h
+$(AWK_DEST_DIR)/asm_defines_nasm.h: $(ASM_DEFINES_OBJ)
+ $(STRINGS) "$<" | $(TR) -d '\r' | $(AWK) -v dest_dir="$(AWK_DEST_DIR)" -f $(CORE_DIR)/tools/gen_asm_defines.awk
+
+%.o: %.asm $(AWK_DEST_DIR)/asm_defines_gas.h
+ $(NASM) -i$(AWK_DEST_DIR)/ $(ASFLAGS) $< -o $@
+
+%.o: %.S $(AWK_DEST_DIR)/asm_defines_gas.h
+ $(CC_AS) $(CFLAGS) -c $< -o $@
+
+%.o: %.c
+ $(CC) $(CPPFLAGS) $(CFLAGS) -c $< -o $@
+
+%.o: %.cpp
+ $(CXX) $(CPPFLAGS) $(CXXFLAGS) -c $< -o $@
+
+clean:
+ find -name "*.o" -type f -delete
+ find -name "*.d" -type f -delete
+ rm -f $(TARGET)
+
+.PHONY: clean

View file

@ -19,7 +19,7 @@
################################################################################
PKG_NAME="nestopia-lr"
PKG_VERSION="de6b65261cae9aa11d2c88543174e98e65fca818"
PKG_VERSION="3dcbec4682e079312d6943e1357487645ec608c7"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="GPLv2"

View file

@ -19,7 +19,7 @@
################################################################################
PKG_NAME="pokemini-lr"
PKG_VERSION="9ba2c2d98bef98794095f3ef50e22f1a3cbc6166"
PKG_VERSION="9bf450887026d9b92d4f9432b5d2a5ed749a35e2"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="GPLv3"

View file

@ -1,5 +1,5 @@
PKG_NAME="potator-lr"
PKG_VERSION="06ec3b724b6fccda6805e3baa76c00c3bc024f23"
PKG_VERSION="aed31f9254cada9826c65ff4528cc8bdda338275"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="GPLv2"

View file

@ -20,7 +20,7 @@
################################################################################
PKG_NAME="ppsspp-lr"
PKG_VERSION="44513e6eff1813f253bed9a2b17c394e0c33f0f4"
PKG_VERSION="eb872b7a875e4d168a8b6387920478125a661130"
PKG_LICENSE="GPLv2"
PKG_SITE="https://github.com/hrydgard/ppsspp"
PKG_URL="https://github.com/hrydgard/ppsspp.git"

View file

@ -19,7 +19,7 @@
################################################################################
PKG_NAME="prboom-lr"
PKG_VERSION="47a95e921e9f1e5928730b7369d14129769fa475"
PKG_VERSION="6ec854969fd9dec33bb2cab350f05675d1158969"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="GPLv2"

View file

@ -19,7 +19,7 @@
################################################################################
PKG_NAME="prosystem-lr"
PKG_VERSION="763ad22c7de51c8f06d6be0d49c554ce6a94a29b"
PKG_VERSION="3db33d880ba78f3be0178e6ce651623731598137"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="GPLv2"

View file

@ -19,7 +19,7 @@
################################################################################
PKG_NAME="quicknes-lr"
PKG_VERSION="75d501a87ec2074e8d2f7256fb0359513c263c29"
PKG_VERSION="058d66516ed3f1260b69e5b71cd454eb7e9234a3"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="LGPLv2.1+"

View file

@ -20,7 +20,7 @@
################################################################################
PKG_NAME="race-lr"
PKG_VERSION="cb002043c65276dac592ed0214ae8a6bba82e2b1"
PKG_VERSION="f65011e6639ccbbbb44b6ffa63ca50c070475df4"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="GPLv2"

View file

@ -20,7 +20,7 @@
################################################################################
PKG_NAME="slang-shaders"
PKG_VERSION="5e55a8aadbc7ab9b46e99498c30ebbf0dba60508"
PKG_VERSION="584f18b1c66cf0aaa176d70ea3264d4d91233f1e"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="GPL"

View file

@ -20,7 +20,7 @@
################################################################################
PKG_NAME="tic80-lr"
PKG_VERSION="687fb340653f5314ba22928296d325aeadb74b3e"
PKG_VERSION="5dd72cf0eac7a98f9f35982cd09332165c70ff20"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="GPLv3"

View file

@ -19,7 +19,7 @@
################################################################################
PKG_NAME="tyrquake-lr"
PKG_VERSION="b3fcc43e57543ef499df91b5c5d931680addf070"
PKG_VERSION="77217664a09afe893a06be8e3e8f9611184636f8"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="GPLv2"

View file

@ -19,7 +19,7 @@
################################################################################
PKG_NAME="vecx-lr"
PKG_VERSION="8e932c1d585ae9e467186dea9e73ce38fe1490f7"
PKG_VERSION="7295df1b5aef39461271b5d5508c880077f8ee42"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="GPLv2|LGPLv2.1"

View file

@ -19,7 +19,7 @@
################################################################################
PKG_NAME="xrick-lr"
PKG_VERSION="57e69cafce3c9ca32070d673f4fc0e2e3226234e"
PKG_VERSION="c433c1080409fefcfb69d66dc6416967ff5f6735"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="GPLv3"

View file

@ -3,7 +3,7 @@
# Copyright (C) 2022-present Fewtarius
PKG_NAME="cemu-sa"
PKG_VERSION="eda4cf4b241d56c5c16f6aa4d135b8a269676a76"
PKG_VERSION="4ae5b4f8b82f42a60350edfb7ca9e7c80f751126"
PKG_ARCH="x86_64"
PKG_LICENSE="MPL-2.0"
PKG_SITE="https://github.com/cemu-project/Cemu"

View file

@ -2,7 +2,7 @@
# Copyright (C) 2022-present BrooksyTech (https://github.com/brooksytech)
PKG_NAME="citra-sa"
PKG_VERSION="e8bfb9991add79d2f47810f8d9a8f3a03318f038"
PKG_VERSION="2fd5b184814034eb5cff474b54900e59cc884af6"
PKG_LICENSE="MPLv2"
PKG_SITE="https://github.com/citra-emu/citra-canary"
PKG_URL="${PKG_SITE}.git"

View file

@ -0,0 +1,29 @@
[GCPad1]
Device = evdev/0/Microsoft X-Box 360 pad
Buttons/A = Button 0
Buttons/B = Button 2
Buttons/Start = Button 6
Buttons/X = Button 1
Buttons/Y = Button 3
Buttons/Z = Button 5
Buttons/Hotkey = Button 7
C-Stick/Dead Zone = 25.000000000000000
C-Stick/Down = Axis 4+
C-Stick/Left = Axis 3-
C-Stick/Modifier = Control_L
C-Stick/Modifier/Range = 50.000000000000000
C-Stick/Right = Axis 3+
C-Stick/Up = Axis 4-
D-Pad/Down = Axis 7+
D-Pad/Left = Axis 6-
D-Pad/Right = Axis 6+
D-Pad/Up = Axis 7-
Main Stick/Dead Zone = 25.000000000000000
Main Stick/Down = Axis 1+
Main Stick/Left = Axis 0-
Main Stick/Modifier = Shift_L
Main Stick/Modifier/Range = 50.000000000000000
Main Stick/Right = Axis 0+
Main Stick/Up = Axis 1-
Triggers/L = Axis 2+
Triggers/R = Axis 5+

View file

@ -1,9 +1,9 @@
[GCPad1]
Device = evdev/0/retrogame_joypad
Buttons/A = Button 0
Buttons/B = Button 1
Buttons/B = Button 3
Buttons/Start = Button 9
Buttons/X = Button 3
Buttons/X = Button 1
Buttons/Y = Button 2
Buttons/Z = Button 7
Buttons/Hotkey = Button 8

View file

@ -0,0 +1,29 @@
[GCPad1]
Device = evdev/0/retrogame_joypad
Buttons/A = Button 1
Buttons/B = Button 0
Buttons/Start = Button 9
Buttons/X = Button 2
Buttons/Y = Button 3
Buttons/Z = Button 7
Buttons/Hotkey = Button 8
C-Stick/Dead Zone = 25.000000000000000
C-Stick/Down = Axis 3+
C-Stick/Left = Axis 2-
C-Stick/Modifier = Control_L
C-Stick/Modifier/Range = 50.000000000000000
C-Stick/Right = Axis 2+
C-Stick/Up = Axis 3-
D-Pad/Down = Button 14
D-Pad/Left = Button 15
D-Pad/Right = Button 16
D-Pad/Up = Button 13
Main Stick/Dead Zone = 25.000000000000000
Main Stick/Down = Axis 1+
Main Stick/Left = Axis 0-
Main Stick/Modifier = Shift_L
Main Stick/Modifier/Range = 50.000000000000000
Main Stick/Right = Axis 0+
Main Stick/Up = Axis 1-
Triggers/L = Button 4
Triggers/R = Button 5

View file

@ -0,0 +1,29 @@
[GCPad1]
Device = evdev/0/GO-Ultra Gamepad
Buttons/A = Button 1
Buttons/B = Button 0
Buttons/Start = Button 12
Buttons/X = Button 2
Buttons/Y = Button 3
Buttons/Z = Button 7
Buttons/Hotkey = Button 17
C-Stick/Dead Zone = 25.000000000000000
C-Stick/Down = Axis 3+
C-Stick/Left = Axis 2-
C-Stick/Modifier = Control_L
C-Stick/Modifier/Range = 50.000000000000000
C-Stick/Right = Axis 2+
C-Stick/Up = Axis 3-
D-Pad/Down = Button 9
D-Pad/Left = Button 10
D-Pad/Right = Button 11
D-Pad/Up = Button 8
Main Stick/Dead Zone = 25.000000000000000
Main Stick/Down = Axis 1+
Main Stick/Left = Axis 0-
Main Stick/Modifier = Shift_L
Main Stick/Modifier/Range = 50.000000000000000
Main Stick/Right = Axis 0+
Main Stick/Up = Axis 1-
Triggers/L = Button 4
Triggers/R = Button 5

View file

@ -11,7 +11,7 @@ case ${DEVICE} in
RK3588|AMD64|S922X)
PKG_SITE="https://github.com/dolphin-emu/dolphin"
PKG_URL="${PKG_SITE}.git"
PKG_VERSION="4d164fcb77487b0cb732e0423961fd042c3e7e3b"
PKG_VERSION="e6583f8bec814d8f3748f1d7738457600ce0de56"
PKG_PATCH_DIRS+=" wayland"
;;
*)

View file

@ -171,9 +171,13 @@ fi
fi
#GC Controller Profile
if [ "$CON" = "gcpad" ]
if [ "$CON" = "south" ]
then
cp -r /usr/config/dolphin-emu/GCPadNew.ini /storage/.config/dolphin-emu/GCPadNew.ini
cp -r /usr/config/dolphin-emu/GCPadNew.ini.south /storage/.config/dolphin-emu/GCPadNew.ini
fi
if [ "$CON" = "west" ]
then
cp -r /usr/config/dolphin-emu/GCPadNew.ini.west /storage/.config/dolphin-emu/GCPadNew.ini
fi
if [ "$CON" = "custom" ]
then

View file

@ -4,7 +4,7 @@
# Copyright (C) 2022-present Fewtarius
PKG_NAME="flycast-sa"
PKG_VERSION="76af42ae6e1a67ef8e00ca96cf2d226407d2618a"
PKG_VERSION="b92b7a3ece1b0e083f2b7e4193610f0d161b3387"
PKG_LICENSE="GPLv2"
PKG_SITE="https://github.com/flyinghead/flycast"
PKG_URL="${PKG_SITE}.git"

View file

@ -2,7 +2,7 @@
# Copyright (C) 2018-present 5schatten (https://github.com/5schatten)
PKG_NAME="hatarisa"
PKG_VERSION="e8a902a524d30749bc521664d3bd164b4375a9de"
PKG_VERSION="510557e89a4c1e9dbe34225a66def0a523077c32"
PKG_LICENSE="GPL"
PKG_SITE="https://github.com/hatari/hatari"
PKG_URL="https://github.com/hatari/hatari/archive/${PKG_VERSION}.tar.gz"

View file

@ -3,7 +3,7 @@
# Copyright (C) 2022-present Fewtarius
PKG_NAME="hypseus-singe"
PKG_VERSION="65d965a79a822fb9051a7f4a11db3643d11f925a"
PKG_VERSION="88e27c57927f0549419b653404d410fb62112c2c"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="GPL3"

View file

@ -17,15 +17,17 @@ fi
if [ "${OPENGLES_SUPPORT}" = yes ]; then
PKG_DEPENDS_TARGET+=" ${OPENGLES}"
PKG_MAKE_OPTS_TARGET+="USE_GLES=1"
fi
make_target() {
case ${ARCH} in
arm|aarch64)
export HOST_CPU=aarch64
export USE_GLES=1
BINUTILS="$(get_build_dir binutils)/.aarch64-libreelec-linux-gnueabi"
export USE_GLES=1
;;
x86_64)
PKG_MAKE_OPTS_TARGET+="USE_GLES=0"
;;
esac
export APIDIR=$(get_build_dir mupen64plus-sa-core)/.install_pkg/usr/local/include/mupen64plus

View file

@ -12,7 +12,7 @@ PKG_LONGDESC="Mupen64Plus Standalone"
PKG_TOOLCHAIN="manual"
if [ ! "${OPENGL}" = "no" ]; then
PKG_DEPENDS_TARGET+=" ${OPENGL} glu"
PKG_DEPENDS_TARGET+=" ${OPENGL} glu libglvnd"
fi
if [ "${OPENGLES_SUPPORT}" = yes ]; then
@ -23,16 +23,18 @@ make_target() {
case ${ARCH} in
arm|aarch64)
export HOST_CPU=aarch64
export VC=0
export CROSS_COMPILE="${TARGET_PREFIX}"
BINUTILS="$(get_build_dir binutils)/.aarch64-libreelec-linux-gnueabi"
export USE_GLES=1
;;
x86_64)
PKG_MAKE_OPTS_TARGET+="USE_GLES=0"
;;
esac
export SDL_CFLAGS="-I${SYSROOT_PREFIX}/usr/include/SDL2 -pthread"
export SDL_LDLIBS="-lSDL2_net -lSDL2"
export CROSS_COMPILE="${TARGET_PREFIX}"
export V=1
export VC=0
export OSD=0
make -C projects/unix clean
make -C projects/unix all ${PKG_MAKE_OPTS_TARGET}

View file

@ -39,6 +39,16 @@ fi
rm -rf $TMP
mkdir -p $TMP
# Unzip or copy the rom to the working directory
if [ $(echo $2 | grep -i .zip | wc -l) -eq 1 ]; then
#unpack the zip file
unzip -q -o "$2" -d $TMP
ROM=$(unzip -Zl -1 "$2")
else
cp "$2" $TMP
ROM="$GAME"
fi
cp $M64PCONF $TMP
SET_PARAMS="--set Core[SharedDataPath]=$TMP --set Video-Rice[ResolutionWidth]=$SCREENWIDTH"
@ -110,15 +120,15 @@ echo ${SET_PARAMS}
case $1 in
"m64p_gliden64")
${EMUPERF} /usr/local/bin/mupen64plus --configdir $TMP --gfx mupen64plus-video-GLideN64 $SET_PARAMS "$2"
${EMUPERF} /usr/local/bin/mupen64plus --configdir $TMP --gfx mupen64plus-video-GLideN64 $SET_PARAMS "$TMP/$ROM"
;;
"m64p_gl64mk2")
${EMUPERF} /usr/local/bin/mupen64plus --configdir $TMP --gfx mupen64plus-video-glide64mk2 $SET_PARAMS "$2"
${EMUPERF} /usr/local/bin/mupen64plus --configdir $TMP --gfx mupen64plus-video-glide64mk2 $SET_PARAMS "$TMP/$ROM"
;;
"m64p_rice")
${EMUPERF} /usr/local/bin/mupen64plus --configdir $TMP --gfx mupen64plus-video-rice $SET_PARAMS "$2"
${EMUPERF} /usr/local/bin/mupen64plus --configdir $TMP --gfx mupen64plus-video-rice $SET_PARAMS "$TMP/$ROM"
;;
*)
${EMUPERF} /usr/local/bin/mupen64plus --configdir $TMP --gfx mupen64plus-video-rice $SET_PARAMS "$2"
${EMUPERF} /usr/local/bin/mupen64plus --configdir $TMP --gfx mupen64plus-video-rice $SET_PARAMS "$TMP/$ROM"
;;
esac

View file

@ -17,15 +17,17 @@ fi
if [ "${OPENGLES_SUPPORT}" = yes ]; then
PKG_DEPENDS_TARGET+=" ${OPENGLES}"
PKG_MAKE_OPTS_TARGET+="USE_GLES=1"
fi
make_target() {
case ${ARCH} in
arm|aarch64)
export HOST_CPU=aarch64
export USE_GLES=1
BINUTILS="$(get_build_dir binutils)/.aarch64-libreelec-linux-gnueabi"
export USE_GLES=1
;;
x86_64)
PKG_MAKE_OPTS_TARGET+="USE_GLES=0"
;;
esac
export APIDIR=$(get_build_dir mupen64plus-sa-core)/.install_pkg/usr/local/include/mupen64plus

View file

@ -1,6 +1,5 @@
PKG_NAME="mupen64plus-sa-rsp-cxd4"
PKG_VERSION="b69e7de60c634619c27aa785e9f59f7b1602818e"
PKG_ARCH="aarch64"
PKG_LICENSE="GPLv2"
PKG_SITE="https://github.com/mupen64plus/mupen64plus-rsp-cxd4"
PKG_URL="${PKG_SITE}.git"
@ -17,20 +16,26 @@ if [ "${OPENGLES_SUPPORT}" = yes ]; then
PKG_DEPENDS_TARGET+=" ${OPENGLES}"
fi
if [ "${VULKAN_SUPPORT}" = "no" ]; then
PKG_MAKE_OPTS_TARGET+="HLEVIDEO=1"
else
PKG_MAKE_OPTS_TARGET+="HLEVIDEO=0"
fi
PKG_MAKE_OPTS_TARGET+="HLEVIDEO=1"
# Temporary until we get a vulkan core or simple64
#
# if [ "${VULKAN_SUPPORT}" = "no" ]; then
# PKG_MAKE_OPTS_TARGET+="HLEVIDEO=1"
# else
# PKG_MAKE_OPTS_TARGET+="HLEVIDEO=0"
# fi
make_target() {
case ${ARCH} in
arm|aarch64)
export HOST_CPU=aarch64
export USE_GLES=1
BINUTILS="$(get_build_dir binutils)/.aarch64-libreelec-linux-gnueabi"
export USE_GLES=1
CPPFLAGS="-DUSE_SSE2NEON"
;;
x86_64)
PKG_MAKE_OPTS_TARGET+="USE_GLES=0"
;;
esac
export APIDIR=$(get_build_dir mupen64plus-sa-core)/.install_pkg/usr/local/include/mupen64plus
export SDL_CFLAGS="-I${SYSROOT_PREFIX}/usr/include/SDL2 -pthread"
@ -47,7 +52,11 @@ makeinstall_target() {
ULIBDIR=${UPREFIX}/lib
UPLUGINDIR=${ULIBDIR}/mupen64plus
mkdir -p ${UPLUGINDIR}
cp ${PKG_BUILD}/projects/unix/mupen64plus-rsp-cxd4.so ${UPLUGINDIR}
if [ "${DEVICE}" = "AMD64" ]; then
cp ${PKG_BUILD}/projects/unix/mupen64plus-rsp-cxd4-sse2.so ${UPLUGINDIR}/mupen64plus-rsp-cxd4.so
else
cp ${PKG_BUILD}/projects/unix/mupen64plus-rsp-cxd4.so ${UPLUGINDIR}
fi
#${STRIP} ${UPLUGINDIR}/mupen64plus-rsp-cxd4.so
chmod 0644 ${UPLUGINDIR}/mupen64plus-rsp-cxd4.so
}

View file

@ -17,15 +17,17 @@ fi
if [ "${OPENGLES_SUPPORT}" = yes ]; then
PKG_DEPENDS_TARGET+=" ${OPENGLES}"
PKG_MAKE_OPTS_TARGET+="USE_GLES=1"
fi
make_target() {
case ${ARCH} in
arm|aarch64)
export HOST_CPU=aarch64
export USE_GLES=1
BINUTILS="$(get_build_dir binutils)/.aarch64-libreelec-linux-gnueabi"
export USE_GLES=1
;;
x86_64)
PKG_MAKE_OPTS_TARGET+="USE_GLES=0"
;;
esac
export APIDIR=$(get_build_dir mupen64plus-sa-core)/.install_pkg/usr/local/include/mupen64plus

View file

@ -17,15 +17,17 @@ fi
if [ "${OPENGLES_SUPPORT}" = yes ]; then
PKG_DEPENDS_TARGET+=" ${OPENGLES}"
PKG_MAKE_OPTS_TARGET+="USE_GLES=1"
fi
make_target() {
case ${ARCH} in
arm|aarch64)
export HOST_CPU=aarch64
export USE_GLES=1
BINUTILS="$(get_build_dir binutils)/.aarch64-libreelec-linux-gnueabi"
export USE_GLES=1
;;
x86_64)
PKG_MAKE_OPTS_TARGET+="USE_GLES=0"
;;
esac
export APIDIR=$(get_build_dir mupen64plus-sa-core)/.install_pkg/usr/local/include/mupen64plus

View file

@ -17,15 +17,17 @@ fi
if [ "${OPENGLES_SUPPORT}" = yes ]; then
PKG_DEPENDS_TARGET+=" ${OPENGLES}"
PKG_MAKE_OPTS_TARGET+="USE_GLES=1"
fi
make_target() {
case ${ARCH} in
arm|aarch64)
export HOST_CPU=aarch64
export USE_GLES=1
BINUTILS="$(get_build_dir binutils)/.aarch64-libreelec-linux-gnueabi"
export USE_GLES=1
;;
x86_64)
PKG_MAKE_OPTS_TARGET+="USE_GLES=0"
;;
esac
export APIDIR=$(get_build_dir mupen64plus-sa-core)/.install_pkg/usr/local/include/mupen64plus

View file

@ -14,7 +14,6 @@ PKG_TOOLCHAIN="manual"
if [ ! "${OPENGL}" = "no" ]; then
PKG_DEPENDS_TARGET+=" ${OPENGL} glu libglvnd"
fi
if [ "${OPENGLES_SUPPORT}" = yes ]; then
PKG_DEPENDS_TARGET+=" ${OPENGLES}"
fi
@ -27,6 +26,9 @@ make_target() {
export USE_GLES=1
PKG_MAKE_OPTS_TARGET+="-DNOHQ=On -DCRC_ARMV8=On -DEGL=On -DNEON_OPT=On"
;;
x86_64)
PKG_MAKE_OPTS_TARGET+="USE_GLES=0"
;;
esac
export APIDIR=$(get_build_dir mupen64plus-sa-core)/.install_pkg/usr/local/include/mupen64plus
export SDL_CFLAGS="-I${SYSROOT_PREFIX}/usr/include/SDL2 -pthread"

View file

@ -17,15 +17,17 @@ fi
if [ "${OPENGLES_SUPPORT}" = yes ]; then
PKG_DEPENDS_TARGET+=" ${OPENGLES}"
PKG_MAKE_OPTS_TARGET+="USE_GLES=1"
fi
make_target() {
case ${ARCH} in
arm|aarch64)
export HOST_CPU=aarch64
export USE_GLES=1
BINUTILS="$(get_build_dir binutils)/.aarch64-libreelec-linux-gnueabi"
export USE_GLES=1
;;
x86_64)
PKG_MAKE_OPTS_TARGET+="USE_GLES=0"
;;
esac
export APIDIR=$(get_build_dir mupen64plus-sa-core)/.install_pkg/usr/local/include/mupen64plus

View file

@ -7,7 +7,7 @@ PKG_REV="1"
PKG_ARCH="any"
PKG_SITE="https://github.com/hrydgard/ppsspp"
PKG_URL="${PKG_SITE}.git"
PKG_VERSION="05ddd77d90ce9e911639d623e59d51c4b2d2cab8"
PKG_VERSION="eb872b7a875e4d168a8b6387920478125a661130"
PKG_LICENSE="GPLv2"
PKG_DEPENDS_TARGET="toolchain ffmpeg libzip SDL2 zlib zip"
PKG_SHORTDESC="PPSSPPDL"

View file

@ -3,7 +3,7 @@
# Copyright (C) 2023-present Fewtarius
PKG_NAME="retroarch"
PKG_VERSION="274f6f8aaa5d2751d156702e78bc5200d35ccaa1"
PKG_VERSION="7f55153457065703f42bda51c27413ba58f45940"
PKG_SITE="https://github.com/libretro/RetroArch"
PKG_URL="${PKG_SITE}.git"
PKG_LICENSE="GPLv3"

View file

@ -3,7 +3,7 @@
# Copyright (C) 2020-present Fewtarius
PKG_NAME="scummvmsa"
PKG_VERSION="53551733c68ab7af3a8592312d4a62afd22fd055"
PKG_VERSION="b9664ba4b4a066770c362bff883235fc5f31fcc7"
PKG_REV="1"
PKG_LICENSE="GPL2"
PKG_SITE="https://github.com/scummvm/scummvm"

View file

@ -0,0 +1,24 @@
# SPDX-License-Identifier: GPL-2.0-or-later
# Copyright (C) 2023-present RiShooty (https://github.com/rishooty)
PKG_NAME="simple64-sa"
PKG_VERSION="23107ed09a091b890c008fa71a69fc0a0ccc54cc"
PKG_LICENSE="GPLv3"
PKG_SITE="https://github.com/simple64/simple64"
PKG_URL="${PKG_SITE}.git"
PKG_DEPENDS_TARGET="toolchain qt5"
PKG_LONGDESC="Simple64, a N64 Emulator"
PKG_TOOLCHAIN="manual"
pre_configure_target() {
case ${TARGET_ARCH} in
aarch64|arm)
find . -type f -name CMakeLists.txt -exec sed -i 's/x86-64-v3/armv8-a/g' {} \;
;;
esac
}
make_target() {
cd ${PKG_BUILD}
./build.sh
}

View file

@ -0,0 +1,39 @@
diff --git a/simple64-gui/CMakeLists.txt b/simple64-gui/CMakeLists.txt
index a5d3ccb..8096e76 100644
--- a/simple64-gui/CMakeLists.txt
+++ b/simple64-gui/CMakeLists.txt
@@ -25,12 +25,12 @@ endif()
find_package(SDL2 REQUIRED)
include_directories(${SDL2_INCLUDE_DIRS})
-find_package(Qt6 REQUIRED COMPONENTS Widgets WebSockets)
+find_package(Qt5 5.15 REQUIRED COMPONENTS Widgets WebSockets)
if (UNIX)
- find_package(Qt6 REQUIRED COMPONENTS DBus)
+ find_package(Qt5 5.15 REQUIRED COMPONENTS DBus)
endif (UNIX)
-
-qt_standard_project_setup()
+set(CMAKE_AUTOUIC ON)
+set(CMAKE_AUTOMOC ON)
qt_add_resources(simple64-gui imageresources
FILES icons/simple64.svg
@@ -68,7 +68,7 @@ if (UNIX)
target_sources(simple64-gui PRIVATE
osal/osal_dynamiclib_unix.c
)
- target_link_libraries(simple64-gui PRIVATE Qt6::DBus)
+ target_link_libraries(simple64-gui PRIVATE Qt::DBus)
endif (UNIX)
set_property(TARGET simple64-gui PROPERTY C_VISIBILITY_PRESET hidden)
@@ -86,7 +86,7 @@ endif()
if (NOT APPLE)
target_link_options(simple64-gui PRIVATE -Wl,-Bsymbolic -Wl,-Bsymbolic-functions)
endif (NOT APPLE)
-target_link_libraries(simple64-gui PRIVATE Qt6::Widgets Qt6::WebSockets ${CMAKE_DL_LIBS})
+target_link_libraries(simple64-gui PRIVATE Qt::Widgets Qt::WebSockets ${CMAKE_DL_LIBS})
set_target_properties(simple64-gui PROPERTIES
WIN32_EXECUTABLE ON

View file

@ -0,0 +1,31 @@
diff --git a/build.sh b/build.sh
index 24d073d..52c41cf 100755
--- a/build.sh
+++ b/build.sh
@@ -1,7 +1,6 @@
#!/usr/bin/env bash
set -e
-set -o pipefail
RELEASE_TYPE="Release"
@@ -34,18 +33,6 @@ VERBOSE=1 cmake --build .
cp ./*mupen64plus"${suffix}" "${install_dir}"
cp "${base_dir}/mupen64plus-core/data/"* "${install_dir}"
-mkdir -p "${base_dir}/simple64-input-raphnetraw/build"
-cd "${base_dir}/simple64-input-raphnetraw/build"
-cmake -G Ninja -DCMAKE_BUILD_TYPE="${RELEASE_TYPE}" ..
-VERBOSE=1 cmake --build .
-cp simple64-input-raphnetraw.* "${install_dir}"
-
-mkdir -p "${base_dir}/simple64-input-qt/build"
-cd "${base_dir}/simple64-input-qt/build"
-cmake -G Ninja -DCMAKE_BUILD_TYPE="${RELEASE_TYPE}" ..
-VERBOSE=1 cmake --build .
-cp simple64-input-qt.* "${install_dir}"
-
mkdir -p "${base_dir}/simple64-audio-sdl2/build"
cd "${base_dir}/simple64-audio-sdl2/build"
cmake -G Ninja -DCMAKE_BUILD_TYPE="${RELEASE_TYPE}" ..

View file

@ -2,7 +2,7 @@
# Copyright (C) 2022-present BrooksyTech (https://github.com/brooksytech)
PKG_NAME="yuzu-sa"
PKG_VERSION="47c5c37bed53c4dd67842cd7e87e3d8bf5adb291"
PKG_VERSION="e931bb8c44742026c05e772c29e3f1d8b987734a"
PKG_ARCH="x86_64"
PKG_LICENSE="GPLv3"
PKG_SITE="https://github.com/yuzu-emu/yuzu"

View file

@ -20,4 +20,7 @@ pre_make_target() {
makeinstall_target() {
mkdir -p ${INSTALL}/usr/bin
cp ${PKG_BUILD}/gptokeyb ${INSTALL}/usr/bin
mkdir -p ${INSTALL}/usr/config/gptokeyb/
cp ${PKG_BUILD}/configs/default.gptk ${INSTALL}/usr/config/gptokeyb/
}

View file

@ -1,16 +1,26 @@
diff --git a/gptokeyb.cpp b/gptokeyb.cpp
index d604f37..a00ce50 100644
old mode 100644
new mode 100755
index aa4c0b0..0d62f28
--- a/gptokeyb.cpp
+++ b/gptokeyb.cpp
@@ -42,8 +42,8 @@
#include <linux/input.h>
#include <linux/uinput.h>
-#include <libevdev-1.0/libevdev/libevdev-uinput.h>
-#include <libevdev-1.0/libevdev/libevdev.h>
+#include <libevdev/libevdev-uinput.h>
+#include <libevdev/libevdev.h>
#include <fcntl.h>
#include <sstream>
@@ -2284,7 +2284,7 @@ int main(int argc, char* argv[])
const char* config_file = nullptr;
config_mode = true;
- config_file = "/emuelec/configs/gptokeyb/default.gptk";
+ config_file = "/usr/config/gptokeyb/default.gptk";
// Add hotkey environment variable if available
if (char* env_hotkey = SDL_getenv("HOTKEY")) {

View file

@ -0,0 +1,8 @@
DEVICE_VOLUMECTL=true
DEVICE_AUDIO_MIXER="Master"
DEVICE_PLAYBACK_PATH_SPK="SPK"
DEVICE_PLAYBACK_PATH_HP="HP"
DEVICE_VOL_MODIFIER="ABS_RZ"
UI_SERVICE="weston.service"
DEVICE_BRIGHTNESS="hardware"

View file

@ -0,0 +1,11 @@
#!/bin/bash
# SPDX-License-Identifier: Apache-2.0
# Copyright (C) 2021-present Fewtarius (https://github.com/fewtarius)
. /etc/profile
MYSLEEPMODE=$(get_setting system.suspendmode)
if [ -z "${MYSLEEPMODE}" ]
then
/usr/bin/setsuspendmode mem
fi

View file

@ -0,0 +1,8 @@
DEVICE_VOLUMECTL=true
DEVICE_AUDIO_MIXER="Master"
DEVICE_PLAYBACK_PATH_SPK="SPK"
DEVICE_PLAYBACK_PATH_HP="HP"
DEVICE_VOL_MODIFIER="ABS_RZ"
UI_SERVICE="weston.service"
DEVICE_BRIGHTNESS="hardware"

View file

@ -4,9 +4,8 @@
. /etc/profile
# S3 sleep does not work on this device yet.
cat <<EOF >/storage/.config/sleep.conf.d/sleep.conf
[Sleep]
AllowSuspend=yes
SuspendState=freeze
EOF
MYSLEEPMODE=$(get_setting system.suspendmode)
if [ -z "${MYSLEEPMODE}" ]
then
/usr/bin/setsuspendmode mem
fi

View file

@ -0,0 +1,8 @@
DEVICE_VOLUMECTL=true
DEVICE_AUDIO_MIXER="Master"
DEVICE_PLAYBACK_PATH_SPK="SPK"
DEVICE_PLAYBACK_PATH_HP="HP"
DEVICE_VOL_MODIFIER="ABS_RZ"
UI_SERVICE="weston.service"
DEVICE_BRIGHTNESS="hardware"

View file

@ -0,0 +1,11 @@
#!/bin/bash
# SPDX-License-Identifier: Apache-2.0
# Copyright (C) 2021-present Fewtarius (https://github.com/fewtarius)
. /etc/profile
MYSLEEPMODE=$(get_setting system.suspendmode)
if [ -z "${MYSLEEPMODE}" ]
then
/usr/bin/setsuspendmode mem
fi

View file

@ -4,8 +4,8 @@
. /etc/profile
cat <<EOF >/storage/.config/sleep.conf.d/sleep.conf
[Sleep]
AllowSuspend=yes
SuspendState=freeze
EOF
MYSLEEPMODE=$(get_setting system.suspendmode)
if [ -z "${MYSLEEPMODE}" ]
then
/usr/bin/setsuspendmode freeze
fi

View file

@ -0,0 +1 @@
Anbernic RG353P

View file

@ -1,17 +0,0 @@
#!/bin/bash
# SPDX-License-Identifier: Apache-2.0
# Copyright (C) 2021-present Fewtarius (https://github.com/fewtarius)
. /etc/profile
# Enable PWM for rumble and turn rumble off during startup.
echo 0 > /sys/class/pwm/${DEVICE_PWM_MOTOR}/export
echo 1000000 > /sys/class/pwm/${DEVICE_PWM_MOTOR}/pwm0/period
echo 1 > /sys/class/pwm/${DEVICE_PWM_MOTOR}/pwm0/enable
echo 1000000 > /sys/class/pwm/${DEVICE_PWM_MOTOR}/pwm0/duty_cycle
cat <<EOF >/storage/.config/sleep.conf.d/sleep.conf
[Sleep]
AllowSuspend=yes
SuspendState=freeze
EOF

View file

@ -1,146 +0,0 @@
#!/bin/bash
# SPDX-License-Identifier: Apache-2.0
# Copyright (C) 2021-present Fewtarius (https://github.com/fewtarius)
. /etc/profile
### Set a custom device so we don't clobber it.
set-audio set "CUSTOM (UNMANAGED)"
set-audio esset "Master"
cat <<EOF >/storage/.config/asound.conf
pcm.!default {
type plug
slave.pcm "softvol"
}
ctl.!default {
type hw
card 0
}
pcm.ddmix {
ipc_key 1024
type dmix
slave {
pcm "hw:0,0"
period_time 0
period_size 1024
buffer_size 4096
rate 44100
}
}
pcm.softvol {
type softvol
slave {
pcm "ddmix"
}
control {
name "Master"
card 0
}
}
EOF
if [ ! -e "/storage/.config/asound.state" ]
then
cat <<EOF >/storage/.config/asound.state
state.rockchiprk817co {
control.1 {
iface MIXER
name 'Playback Path'
value HP
comment {
access 'read write'
type ENUMERATED
count 1
item.0 OFF
item.1 RCV
item.2 SPK
item.3 HP
item.4 HP_NO_MIC
item.5 BT
item.6 SPK_HP
item.7 RING_SPK
item.8 RING_HP
item.9 RING_HP_NO_MIC
item.10 RING_SPK_HP
}
}
control.2 {
iface MIXER
name 'Capture MIC Path'
value 'MIC OFF'
comment {
access 'read write'
type ENUMERATED
count 1
item.0 'MIC OFF'
item.1 'Main Mic'
item.2 'Hands Free Mic'
item.3 'BT Sco Mic'
}
}
control.3 {
iface MIXER
name Master
value.0 109
value.1 109
comment {
access 'read write user'
type INTEGER
count 2
range '0 - 255'
tlv '0000000100000008ffffec1400000014'
dbmin -5100
dbmax 0
dbvalue.0 -2920
dbvalue.1 -2920
}
}
}
state.rockchiphdmi {
control.1 {
iface PCM
name 'Playback Channel Map'
value.0 0
value.1 0
value.2 0
value.3 0
value.4 0
value.5 0
value.6 0
value.7 0
comment {
access read
type INTEGER
count 8
range '0 - 36'
}
}
control.2 {
iface PCM
name ELD
value '0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'
comment {
access 'read volatile'
type BYTES
count 128
}
}
control.3 {
iface PCM
name 'AUDIO MODE'
value 0
comment {
access 'read write volatile'
type INTEGER
count 1
range '0 - 2'
}
}
}
EOF
alsactl restore -f /storage/.config/asound.state
fi

View file

@ -1,16 +0,0 @@
#!/bin/bash
# SPDX-License-Identifier: Apache-2.0
# Copyright (C) 2021-present Fewtarius (https://github.com/fewtarius)
. /etc/profile
# Configure default contrast saturation and hue values
for PROPERTY in brightness contrast saturation hue
do
MYVAL=$(get_setting display.${PROPERTY})
if [ -z "${MYVAL}" ]
then
MYVAL=$(drm_tool list | sed -n '/Connector: 133/,$p' | awk '/'${PROPERTY}'/ {print $5}')
fi
paneladj ${PROPERTY} ${MYVAL}
done

View file

@ -10,8 +10,10 @@ echo 1000000 > /sys/class/pwm/${DEVICE_PWM_MOTOR}/pwm0/period
echo 1 > /sys/class/pwm/${DEVICE_PWM_MOTOR}/pwm0/enable
echo 1000000 > /sys/class/pwm/${DEVICE_PWM_MOTOR}/pwm0/duty_cycle
cat <<EOF >/storage/.config/sleep.conf.d/sleep.conf
[Sleep]
AllowSuspend=yes
SuspendState=freeze
EOF
MYSLEEPMODE=$(get_setting system.suspendmode)
if [ -z "${MYSLEEPMODE}" ]
then
/usr/bin/setsuspendmode freeze
fi
echo s2idle >/sys/power/mem_sleep

View file

@ -0,0 +1,18 @@
#!/bin/sh
ID=$(dmesg | grep "panel id:" | sed "s#^.*panel id: ##g")
case ${ID} in
"30 52")
ID="v1 (${ID})"
;;
"38 21")
ID="v2 (${ID})"
;;
*)
ID="Unknown"
;;
esac
if [ -n "${ID}" ]
then
echo "PANEL VERSION: ${ID}"
fi

View file

@ -23,7 +23,7 @@ DEVICE_WIFI_MODULE="MT7601U"
# GPIOS
DEVICE_WIFI="5"
DEVICE_LED="77"
DEVICE_PWM_MOTOR="pwmchip0"
DEVICE_PWM_MOTOR="pwmchip1"
#DEVICE_PWM_FAN=""
DEVICE_JACK="86"

Some files were not shown because too many files have changed in this diff Show more