guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

43/46: gnu: ppsspp: Update to 1.11.3-1.69fa207.


From: guix-commits
Subject: 43/46: gnu: ppsspp: Update to 1.11.3-1.69fa207.
Date: Sun, 6 Jun 2021 02:40:19 -0400 (EDT)

apteryx pushed a commit to branch master
in repository guix.

commit a18079288f8b26b32e1388350f5d55240b1a6381
Author: Maxim Cournoyer <maxim.cournoyer@gmail.com>
AuthorDate: Sat Jun 5 23:16:07 2021 -0400

    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.
---
 gnu/packages/emulators.scm                         | 396 +++++++++++----------
 .../patches/ppsspp-disable-upgrade-and-gold.patch  | 148 ++++----
 2 files changed, 289 insertions(+), 255 deletions(-)

diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm
index 716d117..c25a45b 100644
--- a/gnu/packages/emulators.scm
+++ b/gnu/packages/emulators.scm
@@ -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 @@ framework based on QEMU.")
       (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+))))
diff --git a/gnu/packages/patches/ppsspp-disable-upgrade-and-gold.patch 
b/gnu/packages/patches/ppsspp-disable-upgrade-and-gold.patch
index 760ab97..155ba35 100644
--- a/gnu/packages/patches/ppsspp-disable-upgrade-and-gold.patch
+++ b/gnu/packages/patches/ppsspp-disable-upgrade-and-gold.patch
@@ -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
 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]