gnu: ppsspp: Update to 1.11.3-1.69fa207.

This fixes the build with ffmpeg 4.4.

* gnu/packages/patches/ppsspp-disable-upgrade-and-gold.patch: Rebase patch.
* gnu/packages/emulators.scm (ppsspp): Update to 1.11.3-1.69fa207.
[source]: Adjust origin snippet to unbundle the newly added zstd library.
This commit is contained in:
Maxim Cournoyer 2021-06-05 23:16:07 -04:00
parent 6a0d0c3c47
commit a18079288f
No known key found for this signature in database
GPG key ID: 1260E46482E63562
2 changed files with 289 additions and 255 deletions

View file

@ -15,6 +15,7 @@
;;; Copyright © 2020 Christopher Howard <christopher@librehacker.com>
;;; Copyright © 2021 Felipe Balbi <balbi@kernel.org>
;;; Copyright © 2021 Felix Gruber <felgru@posteo.net>
;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -2134,200 +2135,211 @@ (define-public unicorn
(license license:gpl2+))))
(define-public ppsspp
(package
(name "ppsspp")
(version "1.11.3")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/hrydgard/ppsspp")
(commit (string-append "v" version))))
(sha256
(base32 "1dpxnwvl6jq7z67lbjws4lqc1bxc31xi6ddlmg5n3aig008yi2fp"))
(file-name (git-file-name name version))
(patches
(search-patches "ppsspp-disable-upgrade-and-gold.patch"))
(modules '((guix build utils)))
(snippet
`(begin
;; The following is quite a heavy-handed way of unbundling PPSSPP.
;; There are still a number of external sources, that we don't
;; remove here. Some may be packaged, others are not.
;; First, we patch existing sources to include the right headers.
(substitute* (append (find-files "Common" ".*\\.(h|cpp)")
(find-files "Core" ".*\\.(h|cpp)")
(find-files "GPU" ".*\\.(h|cpp)")
(find-files "SDL" ".*\\.(h|cpp)")
(find-files "UI" ".*\\.(h|cpp)"))
;; These headers are all hard-coded in the original source.
(("ext/cityhash/") "")
(("ext/glslang/glslang/") "glslang/")
(("ext/glslang/") "glslang/")
(("ext/miniupnp/") "")
(("ext/SPIRV-Cross/") "spirv_cross/")
(("ext/vulkan/") "vulkan/")
(("ext/xxhash.h") "xxhash.h")
;; These definitions do not actually exist in the Vulkan headers,
;; but PPSSPP defines them in ext/vulkan.
(("VK_FORMAT_BEGIN_RANGE") "VK_FORMAT_UNDEFINED")
(("VK_FORMAT_END_RANGE") "VK_FORMAT_ASTC_12x12_SRGB_BLOCK"))
;; Next, we patch CMakeLists.
(substitute* "CMakeLists.txt"
;; Drop unnecessary includes and targets.
(("include_directories\\(ext/glslang\\)") "")
(("include_directories\\(ext/xxhash\\)") "")
(("include_directories\\(ext/cityhash\\)") "")
(("set_target_properties\\(cityhash .*\\)") "")
;; Fix linking to GLEW.
(("TARGET Ext::GLEW") "true")
(("target_link_libraries\\(native Ext::GLEW\\)")
"find_package(GLEW)\ntarget_link_libraries(native GLEW::GLEW)")
(("Ext::Snappy") "snappy")
;; Don't search for cityhash/xxhash, we already have them.
(("add_library\\((city|xx)hash STATIC") "if()\nendif(")
(("ext/xxhash\\.[ch]") "")
(("ext/cityhash/.*\\.(cpp|h)") "")
(("if\\(USE_MINIUPNPC\\)" all)
(string-append all "
;; Use a recent commit as fixes for ffmpeg 4.4 haven't been released as of
;; 1.11.3.
(let ((commit "69fa20744958aef8da9ca052ba7675fdc1636e46")
(revision "1"))
(package
(name "ppsspp")
(version (git-version "1.11.3" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/hrydgard/ppsspp")
(commit commit)))
(sha256
(base32 "0r8w4hllhn6zsfxlajxw3sn3f8vsri45srr4mdwsffzcb4hvl0cr"))
(file-name (git-file-name name version))
(patches
(search-patches "ppsspp-disable-upgrade-and-gold.patch"))
(modules '((guix build utils)))
(snippet
`(begin
;; The following is quite a heavy-handed way of unbundling PPSSPP.
;; There are still a number of external sources, that we don't
;; remove here. Some may be packaged, others are not.
;; First, we patch existing sources to include the right headers.
(substitute* (append (find-files "Common" ".*\\.(h|cpp)")
(find-files "Core" ".*\\.(h|cpp)")
(find-files "GPU" ".*\\.(h|cpp)")
(find-files "SDL" ".*\\.(h|cpp)")
(find-files "UI" ".*\\.(h|cpp)"))
;; These headers are all hard-coded in the original source.
(("ext/cityhash/") "")
(("ext/glslang/glslang/") "glslang/")
(("ext/glslang/") "glslang/")
(("ext/miniupnp/") "")
(("ext/SPIRV-Cross/") "spirv_cross/")
(("ext/vulkan/") "vulkan/")
(("ext/xxhash.h") "xxhash.h")
;; These definitions do not actually exist in the Vulkan headers,
;; but PPSSPP defines them in ext/vulkan.
(("VK_FORMAT_BEGIN_RANGE") "VK_FORMAT_UNDEFINED")
(("VK_FORMAT_END_RANGE") "VK_FORMAT_ASTC_12x12_SRGB_BLOCK"))
;; Next, we patch CMakeLists.
(substitute* "CMakeLists.txt"
;; Drop unnecessary includes and targets.
(("include_directories\\(ext/glslang\\)") "")
(("include_directories\\(ext/xxhash\\)") "")
(("include_directories\\(ext/cityhash\\)") "")
(("include_directories\\(ext/zstd.*") "")
(("libzstd_static") "zstd")
(("set_target_properties\\(cityhash .*\\)") "")
;; Fix linking to GLEW.
(("TARGET Ext::GLEW") "true")
(("target_link_libraries\\(native Ext::GLEW\\)")
"find_package(GLEW)\ntarget_link_libraries(native GLEW::GLEW)")
(("Ext::Snappy") "snappy")
;; Don't search for cityhash/xxhash, we already have them.
(("add_library\\((city|xx)hash STATIC") "if()\nendif(")
(("ext/xxhash\\.[ch]") "")
(("ext/cityhash/.*\\.(cpp|h)") "")
(("if\\(USE_MINIUPNPC\\)" all)
(string-append all "
find_package(miniupnpc)
target_link_libraries(${CoreLibName} miniupnpc ${LDLIBS})
elseif(FALSE)"))
;; Link all of spirv-cross.
(("spirv-cross-glsl" all)
(string-append all
" spirv-cross-core spirv-cross-cpp"
" spirv-cross-reflect spirv-cross-util")))
(substitute* "ext/CMakeLists.txt"
(("add_subdirectory\\(glew\\)") "")
(("add_subdirectory\\(glslang( [A-Z_]*)*\\)") "")
(("add_subdirectory\\(snappy\\)") "")
(("add_subdirectory\\(SPIRV-Cross-build\\)") ""))
;; Finally, we can delete the bundled sources.
(for-each delete-file-recursively
'("MoltenVK"
"ext/cmake"
"ext/glew"
"ext/glslang" "ext/glslang-build"
"ext/miniupnp" "ext/miniupnp-build"
"ext/native"
"ext/snappy"
"ext/SPIRV-Cross" "ext/SPIRV-Cross-build"
"ext/vulkan"
"ext/xxhash.c"
"ext/xxhash.h"
"ext/zlib"))
;; Since we are not including git as an input, PPSSPP is confused
;; about its version. Let's fix that here.
(substitute* "git-version.cmake"
(("unknown") ,version))))))
(build-system cmake-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
("python" ,python)))
(inputs
`(("cityhash" ,cityhash)
("ffmpeg" ,ffmpeg)
("glew" ,glew)
("glslang" ,glslang)
("libpng" ,libpng)
("libzip" ,libzip)
("mesa" ,mesa)
("miniupnpc" ,miniupnpc)
("sdl2" ,sdl2)
("snappy" ,snappy)
("spirv-cross" ,spirv-cross)
("vulkan-headers" ,vulkan-headers)
("vulkan-loader" ,vulkan-loader)
("xxhash" ,xxhash)
("zlib" ,zlib)
;; TODO: unbundle armips.
("armips-source" ,(package-source armips))
("lang"
,(let ((commit "6bd5b4bc983917ea8402f73c726b46e36f3de0b4"))
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/hrydgard/ppsspp-lang")
(commit commit)))
(sha256
(base32 "08npr3a4xskf85gnlxidl4ksc3rhc7m5rgnj7vsbjvhvw5ap02qx"))
(file-name (git-file-name "ppsspp-lang" commit)))))
("tests"
,(let ((commit "1047400eaec6bcbdb2a64d326375ef6a6617c4ac"))
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/hrydgard/pspautotests")
(commit commit)))
(sha256
(base32 "0nxv1lskcr8zbg6nrfai21mxsw0n5vaqhbsa41c3cxfyx5c4w2pg"))
(file-name (git-file-name "pspautotests" commit)))))))
(arguments
`(#:out-of-source? #f
#:configure-flags (list "-DUSE_DISCORD=OFF"
"-DUSE_SYSTEM_FFMPEG=ON"
"-DUSE_SYSTEM_LIBZIP=ON"
;; for testing
"-DUNITTEST=ON" "-DHEADLESS=ON")
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'add-external-sources
(lambda* (#:key inputs #:allow-other-keys)
;; TODO: unbundle armips.
(copy-recursively (assoc-ref inputs "armips-source")
"ext/armips")
;; Some tests are externalised, so we add them here.
(copy-recursively (assoc-ref inputs "tests")
"pspautotests")
;; i18n is externalised, so we add it here.
(copy-recursively (assoc-ref inputs "lang")
"assets/lang")
#t))
(add-after 'unpack 'fix-unittest-build
(lambda _
(substitute* "CMakeLists.txt"
(("unittest/TestVertexJit.cpp" all)
(string-append all " unittest/TestShaderGenerators.cpp")))
(substitute* "unittest/TestVertexJit.cpp"
(("#include \"unittest/UnitTest.h\"" all)
(string-append all "\n#include <cmath>")))
#t))
(replace 'check
(lambda _
(for-each
(lambda (t) (invoke "./unitTest" t))
'("Arm64Emitter" "ArmEmitter" "X64Emitter" "VertexJit" "Asin"
"SinCos" #|"VFPUSinCos" SIGSEGV|# "MathUtil" "Parsers" "Jit"
"MatrixTranspose" "ParseLBN" "QuickTexHash" "CLZ"
#|"ShaderGenerators"|#))
(invoke "python3" "test.py" "-g")
#t))
(replace 'install
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin/ppsspp (string-append out "/bin/ppsspp"))
(share (string-append out "/share/ppsspp")))
(copy-recursively "icons/hicolor"
(string-append out "/share/icons/hicolor"))
(install-file "PPSSPPSDL" share)
(copy-recursively "assets" (string-append share "/assets"))
;; Link all of spirv-cross.
(("spirv-cross-glsl" all)
(string-append all
" spirv-cross-core spirv-cross-cpp"
" spirv-cross-reflect spirv-cross-util")))
(substitute* "ext/CMakeLists.txt"
(("add_subdirectory\\(glew.*") "")
(("add_subdirectory\\(glslang.*") "")
(("add_subdirectory\\(snappy.*") "")
(("add_subdirectory\\(SPIRV-Cross-build.*") "")
(("add_subdirectory\\(zstd.*") ""))
;; Finally, we can delete the bundled sources.
(for-each delete-file-recursively
'("MoltenVK"
"ext/cmake"
"ext/glew"
"ext/glslang" "ext/glslang-build"
"ext/miniupnp" "ext/miniupnp-build"
"ext/native"
"ext/snappy"
"ext/SPIRV-Cross" "ext/SPIRV-Cross-build"
"ext/vulkan"
"ext/xxhash.c"
"ext/xxhash.h"
"ext/zlib"
"ext/zstd"))
;; Since we are not including git as an input, PPSSPP is confused
;; about its version. Let's fix that here.
(substitute* "git-version.cmake"
(("unknown") ,version))))))
(build-system cmake-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
("python" ,python)))
(inputs
`(("cityhash" ,cityhash)
;; ppsspp doesn't yet build with ffmpeg 4.4 (see:
("ffmpeg" ,ffmpeg)
("glew" ,glew)
("glslang" ,glslang)
("libpng" ,libpng)
("libzip" ,libzip)
("mesa" ,mesa)
("miniupnpc" ,miniupnpc)
("sdl2" ,sdl2)
("snappy" ,snappy)
("spirv-cross" ,spirv-cross)
("vulkan-headers" ,vulkan-headers)
("vulkan-loader" ,vulkan-loader)
("xxhash" ,xxhash)
("zlib" ,zlib)
("zstd" ,zstd "lib")
; ("zstd" ,zstd "static")
;; TODO: unbundle armips.
("armips-source" ,(package-source armips))
("lang"
,(let ((commit "6bd5b4bc983917ea8402f73c726b46e36f3de0b4"))
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/hrydgard/ppsspp-lang")
(commit commit)))
(sha256
(base32 "08npr3a4xskf85gnlxidl4ksc3rhc7m5rgnj7vsbjvhvw5ap02qx"))
(file-name (git-file-name "ppsspp-lang" commit)))))
("tests"
,(let ((commit "1047400eaec6bcbdb2a64d326375ef6a6617c4ac"))
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/hrydgard/pspautotests")
(commit commit)))
(sha256
(base32 "0nxv1lskcr8zbg6nrfai21mxsw0n5vaqhbsa41c3cxfyx5c4w2pg"))
(file-name (git-file-name "pspautotests" commit)))))))
(arguments
`(#:out-of-source? #f
#:configure-flags (list "-DUSE_DISCORD=OFF"
"-DUSE_SYSTEM_FFMPEG=ON"
"-DUSE_SYSTEM_LIBZIP=ON"
;; for testing
"-DUNITTEST=ON" "-DHEADLESS=ON")
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'add-external-sources
(lambda* (#:key inputs #:allow-other-keys)
;; TODO: unbundle armips.
(copy-recursively (assoc-ref inputs "armips-source")
"ext/armips")
;; Some tests are externalised, so we add them here.
(copy-recursively (assoc-ref inputs "tests")
"pspautotests")
;; i18n is externalised, so we add it here.
(copy-recursively (assoc-ref inputs "lang")
"assets/lang")
#t))
(add-after 'unpack 'fix-unittest-build
(lambda _
(substitute* "CMakeLists.txt"
(("unittest/TestVertexJit.cpp" all)
(string-append all " unittest/TestShaderGenerators.cpp")))
(substitute* "unittest/TestVertexJit.cpp"
(("#include \"unittest/UnitTest.h\"" all)
(string-append all "\n#include <cmath>")))
#t))
(replace 'check
(lambda _
(for-each
(lambda (t) (invoke "./unitTest" t))
'("Arm64Emitter" "ArmEmitter" "X64Emitter" "VertexJit" "Asin"
"SinCos" #|"VFPUSinCos" SIGSEGV|# "MathUtil" "Parsers" "Jit"
"MatrixTranspose" "ParseLBN" "QuickTexHash" "CLZ"
#|"ShaderGenerators"|#))
(invoke "python3" "test.py" "-g")
#t))
(replace 'install
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin/ppsspp (string-append out "/bin/ppsspp"))
(share (string-append out "/share/ppsspp")))
(copy-recursively "icons/hicolor"
(string-append out "/share/icons/hicolor"))
(install-file "PPSSPPSDL" share)
(copy-recursively "assets" (string-append share "/assets"))
(make-desktop-entry-file
(string-append out "/share/applications/ppsspp.desktop")
#:name "PPSSPP"
#:exec (string-append share "/PPSSPPSDL")
#:icon "ppsspp")
(mkdir-p (string-append out "/bin"))
(with-output-to-file bin/ppsspp
(lambda ()
(format #t "#!~a~%exec ~a/PPSSPPSDL \"$@\""
(which "sh") share)))
(chmod bin/ppsspp #o755)
#t))))))
(home-page "https://www.ppsspp.org/")
(synopsis "PSP emulator")
(description
"PPSSPP is a ``high-level'' emulator simulating the PSP operating
(make-desktop-entry-file
(string-append out "/share/applications/ppsspp.desktop")
#:name "PPSSPP"
#:exec (string-append share "/PPSSPPSDL")
#:icon "ppsspp")
(mkdir-p (string-append out "/bin"))
(with-output-to-file bin/ppsspp
(lambda ()
(format #t "#!~a~%exec ~a/PPSSPPSDL \"$@\""
(which "sh") share)))
(chmod bin/ppsspp #o755)
#t))))))
(home-page "https://www.ppsspp.org/")
(synopsis "PSP emulator")
(description
"PPSSPP is a ``high-level'' emulator simulating the PSP operating
system.")
(license license:gpl2+)))
(license license:gpl2+))))

View file

@ -1,28 +1,32 @@
From 0c57874ebb5982154da127ae338f9190b1581804 Mon Sep 17 00:00:00 2001
From 942730ce7148cd54a30d4a606ce71a2654c8a2e0 Mon Sep 17 00:00:00 2001
From: Leo Prikler <leo.prikler@student.tugraz.at>
Date: Fri, 26 Jun 2020 18:20:04 +0200
Subject: [PATCH] ppsspp: disable upgrade and gold
Date: Sat, 5 Jun 2021 22:47:00 -0400
Subject: [PATCH] ppsspp: Remove upgrade code and gold support.
Original patch from Leo Prikler.
Rebased on master (commit 69fa20744958aef8da9ca052ba7675fdc1636e46) by
Maxim Cournoyer.
---
Core/Config.cpp | 11 ------
Core/Config.h | 2 --
Qt/QtMain.cpp | 6 ----
SDL/SDLMain.cpp | 6 ----
UI/DevScreens.cpp | 3 --
UI/GameSettingsScreen.cpp | 1 -
UI/GameSettingsScreen.cpp | 2 --
UI/MainScreen.cpp | 70 +------------------------------------
UI/MiscScreens.cpp | 31 ++--------------
UWP/PPSSPP_UWPMain.cpp | 6 ----
Windows/MainWindowMenu.cpp | 2 +-
Windows/main.cpp | 6 ----
android/jni/app-android.cpp | 6 ----
12 files changed, 5 insertions(+), 145 deletions(-)
ios/main.mm | 6 ----
13 files changed, 5 insertions(+), 152 deletions(-)
diff --git a/Core/Config.cpp b/Core/Config.cpp
index 1c53e8e57..2fa74a6b8 100644
index 74be99d75..b14aa22c7 100644
--- a/Core/Config.cpp
+++ b/Core/Config.cpp
@@ -439,7 +439,6 @@ static ConfigSetting generalSettings[] = {
@@ -467,7 +467,6 @@ static ConfigSetting generalSettings[] = {
ConfigSetting("IgnoreBadMemAccess", &g_Config.bIgnoreBadMemAccess, true, true),
ConfigSetting("CurrentDirectory", &g_Config.currentDirectory, ""),
ConfigSetting("ShowDebuggerOnLoad", &g_Config.bShowDebuggerOnLoad, false),
@ -30,7 +34,7 @@ index 1c53e8e57..2fa74a6b8 100644
ConfigSetting("Language", &g_Config.sLanguageIni, &DefaultLangRegion),
ConfigSetting("ForceLagSync2", &g_Config.bForceLagSync, false, true, true),
ConfigSetting("DiscordPresence", &g_Config.bDiscordPresence, true, true, false), // Or maybe it makes sense to have it per-game? Race conditions abound...
@@ -1293,16 +1292,6 @@ void Config::Load(const char *iniFileName, const char *controllerIniFilename) {
@@ -1323,16 +1322,6 @@ void Config::Load(const char *iniFileName, const char *controllerIniFilename) {
upgradeMessage = "";
}
@ -40,7 +44,7 @@ index 1c53e8e57..2fa74a6b8 100644
- // upgrade number in the ini.
- if (iRunCount % 10 == 0 && bCheckForNewVersion) {
- std::shared_ptr<http::Download> dl = g_DownloadManager.StartDownloadWithCallback(
- "http://www.ppsspp.org/version.json", "", &DownloadCompletedCallback);
- "http://www.ppsspp.org/version.json", Path(), &DownloadCompletedCallback);
- dl->SetHidden(true);
- }
-
@ -48,10 +52,10 @@ index 1c53e8e57..2fa74a6b8 100644
bSaveSettings = true;
diff --git a/Core/Config.h b/Core/Config.h
index 13bce8a36..70d6c8aaf 100644
index 79323eefc..d47bec0c7 100644
--- a/Core/Config.h
+++ b/Core/Config.h
@@ -101,7 +101,6 @@ struct Config {
@@ -103,7 +103,6 @@ struct Config {
bool bFastMemory;
int iCpuCore;
@ -59,16 +63,16 @@ index 13bce8a36..70d6c8aaf 100644
bool bForceLagSync;
bool bFuncReplacements;
bool bHideSlowWarnings;
@@ -540,4 +539,3 @@ std::string CreateRandMAC();
@@ -542,4 +541,3 @@ std::string CreateRandMAC();
// TODO: Find a better place for this.
extern http::Downloader g_DownloadManager;
extern Config g_Config;
-
diff --git a/Qt/QtMain.cpp b/Qt/QtMain.cpp
index 5be0cefa0..b11cb1c64 100644
index b642f7442..a880d7c94 100644
--- a/Qt/QtMain.cpp
+++ b/Qt/QtMain.cpp
@@ -218,12 +218,6 @@ bool System_GetPropertyBool(SystemProperty prop) {
@@ -219,12 +219,6 @@ bool System_GetPropertyBool(SystemProperty prop) {
case SYSPROP_HAS_FILE_BROWSER:
case SYSPROP_HAS_FOLDER_BROWSER:
return true;
@ -78,14 +82,14 @@ index 5be0cefa0..b11cb1c64 100644
-#else
- return false;
-#endif
case SYSPROP_CAN_JIT:
return true;
default:
return false;
}
diff --git a/SDL/SDLMain.cpp b/SDL/SDLMain.cpp
index 98b56fe91..6af0fcb1a 100644
index f0f74f979..f963f36e9 100644
--- a/SDL/SDLMain.cpp
+++ b/SDL/SDLMain.cpp
@@ -380,12 +380,6 @@ bool System_GetPropertyBool(SystemProperty prop) {
@@ -381,12 +381,6 @@ bool System_GetPropertyBool(SystemProperty prop) {
switch (prop) {
case SYSPROP_HAS_BACK_BUTTON:
return true;
@ -95,14 +99,14 @@ index 98b56fe91..6af0fcb1a 100644
-#else
- return false;
-#endif
case SYSPROP_CAN_JIT:
return true;
default:
return false;
}
diff --git a/UI/DevScreens.cpp b/UI/DevScreens.cpp
index 8daac5bc8..c0c09ce79 100644
index 29baf2f2e..926692363 100644
--- a/UI/DevScreens.cpp
+++ b/UI/DevScreens.cpp
@@ -605,9 +605,6 @@ void SystemInfoScreen::CreateViews() {
@@ -635,9 +635,6 @@ void SystemInfoScreen::CreateViews() {
#ifdef _M_SSE
buildConfig->Add(new InfoItem("_M_SSE", StringFromFormat("0x%x", _M_SSE)));
#endif
@ -113,35 +117,36 @@ index 8daac5bc8..c0c09ce79 100644
ViewGroup *cpuExtensionsScroll = new ScrollView(ORIENT_VERTICAL, new LinearLayoutParams(FILL_PARENT, FILL_PARENT));
cpuExtensionsScroll->SetTag("DevSystemInfoCPUExt");
diff --git a/UI/GameSettingsScreen.cpp b/UI/GameSettingsScreen.cpp
index 2f1e157ee..38c586b06 100644
index 393e33cd9..d07d00d45 100644
--- a/UI/GameSettingsScreen.cpp
+++ b/UI/GameSettingsScreen.cpp
@@ -914,7 +914,6 @@ void GameSettingsScreen::CreateViews() {
@@ -922,8 +922,6 @@ void GameSettingsScreen::CreateViews() {
}
}
#endif
- systemSettings->Add(new CheckBox(&g_Config.bCheckForNewVersion, sy->T("VersionCheck", "Check for new versions of PPSSPP")));
const std::string bgPng = GetSysDirectory(DIRECTORY_SYSTEM) + "background.png";
const std::string bgJpg = GetSysDirectory(DIRECTORY_SYSTEM) + "background.jpg";
if (File::Exists(bgPng) || File::Exists(bgJpg)) {
-
systemSettings->Add(new Choice(sy->T("Restore Default Settings")))->OnClick.Handle(this, &GameSettingsScreen::OnRestoreDefaultSettings);
systemSettings->Add(new CheckBox(&g_Config.bEnableStateUndo, sy->T("Savestate slot backups")));
static const char *autoLoadSaveStateChoices[] = { "Off", "Oldest Save", "Newest Save", "Slot 1", "Slot 2", "Slot 3", "Slot 4", "Slot 5" };
diff --git a/UI/MainScreen.cpp b/UI/MainScreen.cpp
index ca870ab8f..84cde88ac 100644
index f88509276..51b21b640 100644
--- a/UI/MainScreen.cpp
+++ b/UI/MainScreen.cpp
@@ -1064,11 +1064,7 @@ void MainScreen::CreateViews() {
@@ -1080,11 +1080,7 @@ void MainScreen::CreateViews() {
sprintf(versionString, "%s", PPSSPP_GIT_VERSION);
rightColumnItems->SetSpacing(0.0f);
AnchorLayout *logos = new AnchorLayout(new AnchorLayoutParams(FILL_PARENT, 60.0f, false));
- if (System_GetPropertyBool(SYSPROP_APP_GOLD)) {
- logos->Add(new ImageView(ImageID("I_ICONGOLD"), IS_DEFAULT, new AnchorLayoutParams(64, 64, 0, 0, NONE, NONE, false)));
- logos->Add(new ImageView(ImageID("I_ICONGOLD"), "", IS_DEFAULT, new AnchorLayoutParams(64, 64, 0, 0, NONE, NONE, false)));
- } else {
- logos->Add(new ImageView(ImageID("I_ICON"), IS_DEFAULT, new AnchorLayoutParams(64, 64, 0, 0, NONE, NONE, false)));
- logos->Add(new ImageView(ImageID("I_ICON"), "", IS_DEFAULT, new AnchorLayoutParams(64, 64, 0, 0, NONE, NONE, false)));
- }
+ logos->Add(new ImageView(ImageID("I_ICON"), IS_DEFAULT, new AnchorLayoutParams(64, 64, 0, 0, NONE, NONE, false)));
logos->Add(new ImageView(ImageID("I_LOGO"), IS_DEFAULT, new AnchorLayoutParams(180, 64, 64, -5.0f, NONE, NONE, false)));
+ logos->Add(new ImageView(ImageID("I_ICON"), "", IS_DEFAULT, new AnchorLayoutParams(64, 64, 0, 0, NONE, NONE, false)));
logos->Add(new ImageView(ImageID("I_LOGO"), "PPSSPP", IS_DEFAULT, new AnchorLayoutParams(180, 64, 64, -5.0f, NONE, NONE, false)));
#if !defined(MOBILE_DEVICE)
@@ -1089,11 +1085,6 @@ void MainScreen::CreateViews() {
@@ -1107,11 +1103,6 @@ void MainScreen::CreateViews() {
rightColumnItems->Add(new Choice(mm->T("Game Settings", "Settings")))->OnClick.Handle(this, &MainScreen::OnGameSettings);
rightColumnItems->Add(new Choice(mm->T("Credits")))->OnClick.Handle(this, &MainScreen::OnCredits);
rightColumnItems->Add(new Choice(mm->T("www.ppsspp.org")))->OnClick.Handle(this, &MainScreen::OnPPSSPPOrg);
@ -153,7 +158,7 @@ index ca870ab8f..84cde88ac 100644
#if !PPSSPP_PLATFORM(UWP)
// Having an exit button is against UWP guidelines.
@@ -1118,32 +1109,6 @@ void MainScreen::CreateViews() {
@@ -1136,32 +1127,6 @@ void MainScreen::CreateViews() {
} else if (tabHolder_->GetVisibility() != V_GONE) {
root_->SetDefaultFocusView(tabHolder_);
}
@ -186,7 +191,7 @@ index ca870ab8f..84cde88ac 100644
}
UI::EventReturn MainScreen::OnAllowStorage(UI::EventParams &e) {
@@ -1151,30 +1116,6 @@ UI::EventReturn MainScreen::OnAllowStorage(UI::EventParams &e) {
@@ -1169,30 +1134,6 @@ UI::EventReturn MainScreen::OnAllowStorage(UI::EventParams &e) {
return UI::EVENT_DONE;
}
@ -217,7 +222,7 @@ index ca870ab8f..84cde88ac 100644
void MainScreen::sendMessage(const char *message, const char *value) {
// Always call the base class method first to handle the most common messages.
UIScreenWithBackground::sendMessage(message, value);
@@ -1390,15 +1331,6 @@ UI::EventReturn MainScreen::OnCredits(UI::EventParams &e) {
@@ -1396,15 +1337,6 @@ UI::EventReturn MainScreen::OnCredits(UI::EventParams &e) {
return UI::EVENT_DONE;
}
@ -234,10 +239,10 @@ index ca870ab8f..84cde88ac 100644
LaunchBrowser("https://www.ppsspp.org");
return UI::EVENT_DONE;
diff --git a/UI/MiscScreens.cpp b/UI/MiscScreens.cpp
index a7284654b..2413d6c89 100644
index 901a5fb09..9d067aee6 100644
--- a/UI/MiscScreens.cpp
+++ b/UI/MiscScreens.cpp
@@ -539,11 +539,7 @@ void LogoScreen::render() {
@@ -661,11 +661,7 @@ void LogoScreen::render() {
char temp[256];
// Manually formatting UTF-8 is fun. \xXX doesn't work everywhere.
snprintf(temp, sizeof(temp), "%s Henrik Rydg%c%crd", cr->T("created", "Created by"), 0xC3, 0xA5);
@ -248,9 +253,9 @@ index a7284654b..2413d6c89 100644
- }
+ dc.Draw()->DrawImage(ImageID("I_ICON"), bounds.centerX() - 120, bounds.centerY() - 30, 1.2f, textColor, ALIGN_CENTER);
dc.Draw()->DrawImage(ImageID("I_LOGO"), bounds.centerX() + 40, bounds.centerY() - 30, 1.5f, textColor, ALIGN_CENTER);
//dc.Draw()->DrawTextShadow(UBUNTU48, "PPSSPP", xres / 2, yres / 2 - 30, textColor, ALIGN_CENTER);
//dc.Draw()->DrawTextShadow(UBUNTU48, "PPSSPP", bounds.w / 2, bounds.h / 2 - 30, textColor, ALIGN_CENTER);
dc.SetFontScale(1.0f, 1.0f);
@@ -579,10 +575,6 @@ void CreditsScreen::CreateViews() {
@@ -701,10 +697,6 @@ void CreditsScreen::CreateViews() {
// Really need to redo this whole layout with some linear layouts...
int rightYOffset = 0;
@ -261,14 +266,14 @@ index a7284654b..2413d6c89 100644
root_->Add(new Button(cr->T("PPSSPP Forums"), new AnchorLayoutParams(260, 64, 10, NONE, NONE, 158, false)))->OnClick.Handle(this, &CreditsScreen::OnForums);
root_->Add(new Button(cr->T("Discord"), new AnchorLayoutParams(260, 64, 10, NONE, NONE, 232, false)))->OnClick.Handle(this, &CreditsScreen::OnDiscord);
root_->Add(new Button("www.ppsspp.org", new AnchorLayoutParams(260, 64, 10, NONE, NONE, 10, false)))->OnClick.Handle(this, &CreditsScreen::OnPPSSPPOrg);
@@ -591,20 +583,7 @@ void CreditsScreen::CreateViews() {
@@ -713,20 +705,7 @@ void CreditsScreen::CreateViews() {
#if PPSSPP_PLATFORM(ANDROID) || PPSSPP_PLATFORM(IOS)
root_->Add(new Button(cr->T("Share PPSSPP"), new AnchorLayoutParams(260, 64, NONE, NONE, 10, rightYOffset + 158, false)))->OnClick.Handle(this, &CreditsScreen::OnShare);
#endif
- if (System_GetPropertyBool(SYSPROP_APP_GOLD)) {
- root_->Add(new ImageView(ImageID("I_ICONGOLD"), IS_DEFAULT, new AnchorLayoutParams(100, 64, 10, 10, NONE, NONE, false)));
- root_->Add(new ImageView(ImageID("I_ICONGOLD"), "", IS_DEFAULT, new AnchorLayoutParams(100, 64, 10, 10, NONE, NONE, false)));
- } else {
- root_->Add(new ImageView(ImageID("I_ICON"), IS_DEFAULT, new AnchorLayoutParams(100, 64, 10, 10, NONE, NONE, false)));
- root_->Add(new ImageView(ImageID("I_ICON"), "", IS_DEFAULT, new AnchorLayoutParams(100, 64, 10, 10, NONE, NONE, false)));
- }
-}
-
@ -279,11 +284,11 @@ index a7284654b..2413d6c89 100644
- LaunchBrowser("https://central.ppsspp.org/buygold");
-#endif
- return UI::EVENT_DONE;
+ root_->Add(new ImageView(ImageID("I_ICON"), IS_DEFAULT, new AnchorLayoutParams(100, 64, 10, 10, NONE, NONE, false)));
+ root_->Add(new ImageView(ImageID("I_ICON"), "", IS_DEFAULT, new AnchorLayoutParams(100, 64, 10, 10, NONE, NONE, false)));
}
UI::EventReturn CreditsScreen::OnTwitter(UI::EventParams &e) {
@@ -794,11 +773,7 @@ void CreditsScreen::render() {
@@ -916,11 +895,7 @@ void CreditsScreen::render() {
// TODO: This is kinda ugly, done on every frame...
char temp[256];
@ -297,10 +302,10 @@ index a7284654b..2413d6c89 100644
UIContext &dc = *screenManager()->getUIContext();
diff --git a/UWP/PPSSPP_UWPMain.cpp b/UWP/PPSSPP_UWPMain.cpp
index 0ba7fac4b..d1b687c47 100644
index 29afda806..b7028fc0c 100644
--- a/UWP/PPSSPP_UWPMain.cpp
+++ b/UWP/PPSSPP_UWPMain.cpp
@@ -433,12 +433,6 @@ bool System_GetPropertyBool(SystemProperty prop) {
@@ -426,12 +426,6 @@ bool System_GetPropertyBool(SystemProperty prop) {
return false;
case SYSPROP_HAS_BACK_BUTTON:
return true;
@ -310,14 +315,14 @@ index 0ba7fac4b..d1b687c47 100644
-#else
- return false;
-#endif
case SYSPROP_CAN_JIT:
return true;
default:
return false;
}
diff --git a/Windows/MainWindowMenu.cpp b/Windows/MainWindowMenu.cpp
index 979a60ecb..a57927544 100644
index c0d790e06..e8de4f956 100644
--- a/Windows/MainWindowMenu.cpp
+++ b/Windows/MainWindowMenu.cpp
@@ -1393,7 +1393,7 @@ namespace MainWindow {
@@ -1395,7 +1395,7 @@ namespace MainWindow {
{
W32Util::CenterWindow(hDlg);
HWND versionBox = GetDlgItem(hDlg, IDC_VERSION);
@ -327,10 +332,10 @@ index 979a60ecb..a57927544 100644
SetWindowText(versionBox, ConvertUTF8ToWString(windowText).c_str());
}
diff --git a/Windows/main.cpp b/Windows/main.cpp
index 4d948cfe5..e609cc1e0 100644
index ecfe18fa4..3261151d2 100644
--- a/Windows/main.cpp
+++ b/Windows/main.cpp
@@ -301,12 +301,6 @@ bool System_GetPropertyBool(SystemProperty prop) {
@@ -304,12 +304,6 @@ bool System_GetPropertyBool(SystemProperty prop) {
return true;
case SYSPROP_HAS_BACK_BUTTON:
return true;
@ -340,26 +345,43 @@ index 4d948cfe5..e609cc1e0 100644
-#else
- return false;
-#endif
case SYSPROP_CAN_JIT:
return true;
default:
return false;
}
diff --git a/android/jni/app-android.cpp b/android/jni/app-android.cpp
index 10fdf97e5..736b1fa66 100644
index 2fad16224..8ed6dd9cd 100644
--- a/android/jni/app-android.cpp
+++ b/android/jni/app-android.cpp
@@ -437,12 +437,6 @@ bool System_GetPropertyBool(SystemProperty prop) {
@@ -490,12 +490,6 @@ bool System_GetPropertyBool(SystemProperty prop) {
case SYSPROP_HAS_FOLDER_BROWSER:
// Uses OPEN_DOCUMENT_TREE to let you select a folder.
return androidVersion >= 21;
return androidVersion >= 21; // when ACTION_OPEN_DOCUMENT_TREE was added
- case SYSPROP_APP_GOLD:
-#ifdef GOLD
- return true;
-#else
- return false;
-#endif
default:
return false;
}
case SYSPROP_CAN_JIT:
return true;
case SYSPROP_ANDROID_SCOPED_STORAGE:
diff --git a/ios/main.mm b/ios/main.mm
index e53b7c7ab..fe69647ed 100644
--- a/ios/main.mm
+++ b/ios/main.mm
@@ -148,12 +148,6 @@ bool System_GetPropertyBool(SystemProperty prop) {
switch (prop) {
case SYSPROP_HAS_BACK_BUTTON:
return false;
- case SYSPROP_APP_GOLD:
-#ifdef GOLD
- return true;
-#else
- return false;
-#endif
case SYSPROP_CAN_JIT:
return g_jitAvailable;
--
2.30.1
2.31.1