Fix / Update Duckstation SA

This commit is contained in:
mason 2023-10-02 02:03:08 +00:00
parent 850a67c0cb
commit 09cd236fdb
No known key found for this signature in database
GPG key ID: 84D9278A11FA112B
10 changed files with 80 additions and 36 deletions

View file

@ -321,7 +321,7 @@ Rewind = SDL-0/Back & SDL-0/+LeftTrigger
WindowX = 0
WindowY = 0
WindowWidth = 1920
WindowHeight = 1152
WindowHeight = 1080
[GameList]

View file

@ -9,15 +9,23 @@ PKG_URL="${PKG_SITE}.git"
PKG_SHORTDESC="Fast PlayStation 1 emulator for x86-64/AArch32/AArch64 "
PKG_TOOLCHAIN="cmake"
case ${DEVICE} in
RK356*)
PKG_VERSION="5ab5070d73f1acc51e064bd96be4ba6ce3c06f5c"
PKG_PATCH_DIRS+=" legacy"
PKG_CMAKE_OPTS_TARGET+=" -DUSE_DRMKMS=ON -DENABLE_EGL=ON -DUSE_MALI=OFF"
;;
*)
PKG_VERSION="0798292"
PKG_PATCH_DIRS+=" wayland"
case ${TARGET_ARCH} in
aarch64)
case ${DEVICE} in
RK356*)
PKG_VERSION="5ab5070d73f1acc51e064bd96be4ba6ce3c06f5c"
PKG_PATCH_DIRS+=" legacy"
PKG_CMAKE_OPTS_TARGET+=" -DUSE_DRMKMS=ON -DENABLE_EGL=ON -DUSE_MALI=OFF"
;;
*)
PKG_VERSION="bfa792ddbff11c102521124f235ccb310cac6e6a"
PKG_PATCH_DIRS+=" wayland/${TARGET_ARCH}"
;;
esac
;;
x86_64)
PKG_VERSION="a45b50c3e996af823d35a6a193458532c4f4316d"
PKG_PATCH_DIRS+=" wayland/${TARGET_ARCH}"
;;
esac
@ -37,6 +45,7 @@ fi
if [ "${VULKAN_SUPPORT}" = "yes" ]; then
PKG_DEPENDS_TARGET+=" vulkan-loader vulkan-headers"
PKG_CMAKE_OPTS_TARGET+=" -DENABLE_VULKAN=ON"
else PKG_CMAKE_OPTS_TARGET+=" -DENABLE_VULKAN=OFF"
fi
pre_configure_target() {

View file

@ -1,23 +0,0 @@
diff --git a/src/frontend-common/evdev_input_source.cpp b/src/frontend-common/evdev_input_source.cpp
index 970e0ca4..480fb0ba 100644
--- a/src/frontend-common/evdev_input_source.cpp
+++ b/src/frontend-common/evdev_input_source.cpp
@@ -328,7 +328,7 @@ std::optional<InputBindingKey> EvdevInputSource::ParseKeyString(const std::strin
if (abinding == axis.name)
{
key.source_subtype = InputSubclass::ControllerAxis;
- key.negative = (binding[0] == '-');
+ // key.negative = (binding[0] == '-');
key.data = axis.id;
return key;
}
@@ -365,7 +365,8 @@ std::string EvdevInputSource::ConvertKeyToString(InputBindingKey key)
{
if (static_cast<u32>(axis.id) == key.data)
{
- ret = fmt::format("{}/{}{}", cd->uniq, key.negative ? "-" : "+", axis.name);
+ //ret = fmt::format("{}/{}{}", cd->uniq, key.negative ? "-" : "+", axis.name);
+ ret = fmt::format("{}/{}{}", cd->uniq, axis.name);
break;
}
}

View file

@ -1,10 +1,10 @@
# SPDX-License-Identifier: GPL-2.0-or-later
# Copyright (C) 2022-present BrooksyTech (https://github.com/brooksytech)
diff --git a/src/frontend-common/platform_misc_unix.cpp b/src/frontend-common/platform_misc_unix.cpp
diff --git a/src/util/platform_misc_unix.cpp b/src/util/platform_misc_unix.cpp
index 1f7ae9ec..e0487476 100644
--- a/src/frontend-common/platform_misc_unix.cpp
+++ b/src/frontend-common/platform_misc_unix.cpp
--- a/src/util/platform_misc_unix.cpp
+++ b/src/util/platform_misc_unix.cpp
@@ -24,12 +24,12 @@ static bool SetScreensaverInhibitX11(bool inhibit, const WindowInfo& wi)
char* argv[4] = {command.GetWriteableCharArray(), operation.GetWriteableCharArray(), id.GetWriteableCharArray(),
nullptr};

View file

@ -0,0 +1,22 @@
diff -rupN duckstation-sa.orig/src/duckstation-nogui/wayland_nogui_platform.cpp duckstation-sa/src/duckstation-nogui/wayland_nogui_platform.cpp
--- duckstation-sa.orig/src/duckstation-nogui/wayland_nogui_platform.cpp 2023-09-28 19:52:20.630654047 +0000
+++ duckstation-sa/src/duckstation-nogui/wayland_nogui_platform.cpp 2023-09-28 19:52:43.891283524 +0000
@@ -7,7 +7,6 @@
#include "common/string_util.h"
#include "common/threading.h"
#include "core/host.h"
-#include "core/host_settings.h"
#include "nogui_host.h"
#include "nogui_platform.h"
diff -rupN duckstation-sa.orig/src/duckstation-nogui/x11_nogui_platform.h duckstation-sa/src/duckstation-nogui/x11_nogui_platform.h
--- duckstation-sa.orig/src/duckstation-nogui/x11_nogui_platform.h 2023-09-28 19:52:20.630654047 +0000
+++ duckstation-sa/src/duckstation-nogui/x11_nogui_platform.h 2023-09-28 19:53:51.529094295 +0000
@@ -12,7 +12,6 @@
#include "common/string_util.h"
#include "common/threading.h"
#include "core/host.h"
-#include "core/host_settings.h"
#include "nogui_host.h"
#include "nogui_platform.h"

View file

@ -0,0 +1,22 @@
diff --git a/src/common/file_system.cpp b/src/common/file_system.cpp
index b22db26e..092fa9ee 100644
--- a/src/common/file_system.cpp
+++ b/src/common/file_system.cpp
@@ -1308,6 +1308,8 @@ bool FileSystem::DeleteDirectory(const char* path)
std::string FileSystem::GetProgramPath()
{
+ return "/storage/.config/duckstation";
+
std::wstring buffer;
buffer.resize(MAX_PATH);
@@ -1789,6 +1791,8 @@ bool FileSystem::DeleteDirectory(const char* path)
std::string FileSystem::GetProgramPath()
{
+ return "/storage/.config/duckstation";
+
#if defined(__linux__)
static const char* exeFileName = "/proc/self/exe";

View file

@ -0,0 +1,14 @@
diff --git a/src/common/file_system.cpp b/src/common/file_system.cpp
index b22db26e..ad856d93 100644
--- a/src/common/file_system.cpp
+++ b/src/common/file_system.cpp
@@ -315,6 +315,9 @@ std::string FileSystem::GetDisplayNameFromPath(const std::string_view& path)
std::string_view Path::GetDirectory(const std::string_view& path)
{
+
+return "/storage/.config/duckstation";
+
const std::string::size_type pos = GetLastSeperatorPosition(path, false);
if (pos == std::string_view::npos)
return {};