aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorneonloop2023-07-24 22:07:02 +0000
committerneonloop2023-07-24 22:07:02 +0000
commit694af47e2b3dc8c24dac704f293f4bcf9ab67858 (patch)
tree381e226413736125f116696671bbc58d61cc2981
parentecb3c7bf765a84413ac0a53ffca7c8bf470c821f (diff)
downloadpicoarch-694af47e2b3dc8c24dac704f293f4bcf9ab67858.tar.gz
picoarch-694af47e2b3dc8c24dac704f293f4bcf9ab67858.tar.bz2
picoarch-694af47e2b3dc8c24dac704f293f4bcf9ab67858.zip
Changes funkey-s platform to unix-armv7-hardfloat-neon
More generic platform is supported by more cores, fewer patches needed to get cores to build. Adding new cores is easier. unix-armv7-cortexa7-hardfloat-neon causes warnings, maybe SDK bug? Generic platform may not be as optimized, but speed difference can be fixed with patches if discovered.
-rw-r--r--Makefile10
-rw-r--r--patches/dosbox-pure/0001-add-auto-cycle-limit.patch17
-rw-r--r--patches/dosbox-pure/0002-avoid-armv7-buggy-assembly.patch13
-rw-r--r--patches/dosbox-pure/1000-funkey-s-support.patch30
-rw-r--r--patches/fake-08/0002-arm-generic-target.patch42
-rw-r--r--patches/fake-08/1000-funkey-s-build.patch17
-rw-r--r--patches/mame2000/0002-arm-generic-target.patch43
-rw-r--r--patches/snes9x2005/0001-frameskip-interval.patc_107
-rw-r--r--patches/snes9x2005/1000-trimui-support.patc_46
-rw-r--r--patches/snes9x2005/1001-funkey-s-support.patch93
-rw-r--r--patches/snes9x2005_plus/1001-funkey-s-support.patch93
11 files changed, 122 insertions, 389 deletions
diff --git a/Makefile b/Makefile
index 82d3556..b742eb9 100644
--- a/Makefile
+++ b/Makefile
@@ -11,6 +11,7 @@ SOURCES = libpicofe/input.c libpicofe/in_sdl.c libpicofe/linux/in_evdev.c libp
BIN = picoarch
+unexport CFLAGS
CFLAGS += -Wall
CFLAGS += -fdata-sections -ffunction-sections -DPICO_HOME_DIR='"/.picoarch/"' -flto
CFLAGS += -I./ -I./libretro-common/include/ $(shell $(SYSROOT)/usr/bin/sdl-config --cflags)
@@ -38,6 +39,11 @@ bluemsx_TYPES = rom,ri,mx1,mx2,dsk,col,sg,sc,cas,m3u
dosbox-pure_REPO = https://github.com/schellingb/dosbox-pure
dosbox-pure_CORE = dosbox_pure_libretro.so
dosbox-pure_TYPES = zip,dosz,exe,com,bat,iso,cue,ins,img,ima,vhd,jrc,tc,m3u,m3u8,conf
+dosbox-pure_FLAGS = STRIPCMD="$(CROSS_COMPILE)strip"
+ifeq ($(platform), funkey-s)
+dosbox-pure_FLAGS += CYCLE_LIMIT=8200
+endif
+
fake-08_REPO = https://github.com/jtothebell/fake-08
fake-08_BUILD_PATH = fake-08/platform/libretro
@@ -113,7 +119,7 @@ else ifeq ($(platform), funkey-s)
CFLAGS += -DCONTENT_DIR='"/mnt"' -DFUNKEY_S
LDFLAGS += -fPIC
LDFLAGS += -lSDL_image -lSDL_ttf # For fk_menu
- core_platform = classic_armv7_a7
+ core_platform = unix-armv7-hardfloat-neon
else ifeq ($(platform), unix)
SOURCES += plat_linux.c
LDFLAGS += -fPIE
@@ -188,7 +194,7 @@ $1_REPO ?= https://github.com/libretro/$(1)/
$1_BUILD_PATH ?= $(1)
-$1_MAKE = make $(and $($1_MAKEFILE),-f $($1_MAKEFILE)) platform=$(core_platform) $(and $(DEBUG),DEBUG=$(DEBUG)) $(and $(PROFILE),PROFILE=$(PROFILE)) $($(1)_FLAGS)
+$1_MAKE = make $(and $($1_MAKEFILE),-f $($1_MAKEFILE)) platform=$(core_platform) $(and $(DEBUG),DEBUG=$(DEBUG)) $(and $(PROFILE),PROFILE=$(PROFILE)) CC=$(CC) CXX=$(CXX) $($(1)_FLAGS)
$(1):
git clone $(if $($1_REVISION),,--depth 1) --recursive $$($(1)_REPO) $(1)
diff --git a/patches/dosbox-pure/0001-add-auto-cycle-limit.patch b/patches/dosbox-pure/0001-add-auto-cycle-limit.patch
index f524ee6..44a7711 100644
--- a/patches/dosbox-pure/0001-add-auto-cycle-limit.patch
+++ b/patches/dosbox-pure/0001-add-auto-cycle-limit.patch
@@ -1,5 +1,20 @@
+diff --git a/Makefile b/Makefile
+index 3e7941c..8c54b71 100644
+--- a/Makefile
++++ b/Makefile
+@@ -181,6 +181,10 @@ else
+ endif
+ endif
+
++ifneq (,$(CYCLE_LIMIT))
++ COMMONFLAGS += -DCYCLE_LIMIT=$(CYCLE_LIMIT)
++endif
++
+ ifeq ($(BUILD),DEBUG)
+ BUILDDIR := debug
+ CFLAGS := -DDEBUG -D_DEBUG -g -O0
diff --git a/dosbox_pure_libretro.cpp b/dosbox_pure_libretro.cpp
-index af4c66f..bd59842 100644
+index 4f4ca7e..40ddef3 100644
--- a/dosbox_pure_libretro.cpp
+++ b/dosbox_pure_libretro.cpp
@@ -544,15 +544,30 @@ void DBP_SetRealModeCycles()
diff --git a/patches/dosbox-pure/0002-avoid-armv7-buggy-assembly.patch b/patches/dosbox-pure/0002-avoid-armv7-buggy-assembly.patch
new file mode 100644
index 0000000..3ec7acb
--- /dev/null
+++ b/patches/dosbox-pure/0002-avoid-armv7-buggy-assembly.patch
@@ -0,0 +1,13 @@
+diff --git a/Makefile b/Makefile
+index 3e7941c..104d457 100644
+--- a/Makefile
++++ b/Makefile
+@@ -200,6 +200,8 @@ else
+ BUILDDIR := release
+ ifeq ($(platform),vita)
+ CFLAGS := -DNDEBUG -O3 -fno-ident -fno-partial-inlining
++ else ifneq (,$(findstring armv7,$(platform)))
++ CFLAGS := -DNDEBUG -Ofast -fno-ident
+ else
+ CFLAGS := -DNDEBUG -O2 -fno-ident
+ endif
diff --git a/patches/dosbox-pure/1000-funkey-s-support.patch b/patches/dosbox-pure/1000-funkey-s-support.patch
deleted file mode 100644
index 59f7888..0000000
--- a/patches/dosbox-pure/1000-funkey-s-support.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-diff --git a/Makefile b/Makefile
-index f0acd51..7b42e9b 100644
---- a/Makefile
-+++ b/Makefile
-@@ -104,6 +104,16 @@ else ifeq ($(platform),ctr)
- COMMONFLAGS += -fomit-frame-pointer -fstrict-aliasing -ffast-math -fpermissive
- COMMONFLAGS += -I$(DEVKITPRO)/libctru/include
- STATIC_LINKING = 1
-+else ifeq ($(platform),classic_armv7_a7)
-+ OUTNAME := dosbox_pure_libretro.so
-+ CXX := $(CROSS_COMPILE)g++
-+ LDFLAGS := -Wl,--gc-sections -fno-ident
-+ COMMONFLAGS += -pthread -DCYCLE_LIMIT=8200
-+ CPUFLAGS += -marm -mtune=cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard -march=armv7ve
-+ STRIPCMD := $(CROSS_COMPILE)strip --strip-all
-+ ifeq ($(DEBUG), 1)
-+ BUILD = DEBUG
-+ endif
- else ifeq ($(platform),ngc)
- OUTNAME := dosbox_pure_libretro_ngc.a
- CXX := $(DEVKITPPC)/bin/powerpc-eabi-g++
-@@ -200,6 +210,8 @@ else
- BUILDDIR := release
- ifeq ($(platform),vita)
- CFLAGS := -DNDEBUG -O3 -fno-ident -fno-partial-inlining
-+ else ifeq ($(platform),classic_armv7_a7)
-+ CFLAGS := -DNDEBUG -Ofast -fno-ident
- else
- CFLAGS := -DNDEBUG -O2 -fno-ident
- endif
diff --git a/patches/fake-08/0002-arm-generic-target.patch b/patches/fake-08/0002-arm-generic-target.patch
new file mode 100644
index 0000000..2ca8831
--- /dev/null
+++ b/patches/fake-08/0002-arm-generic-target.patch
@@ -0,0 +1,42 @@
+diff --git a/platform/libretro/Makefile b/platform/libretro/Makefile
+index 40805b8..d890e0c 100644
+--- a/platform/libretro/Makefile
++++ b/platform/libretro/Makefile
+@@ -123,7 +123,36 @@ else ifeq ($(platform), miyoomini)
+ CXXFLAGS += -marm -mtune=cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard -march=armv7ve -D_NEED_FULL_PATH_
+ fpic := -fPIC
+ SHARED := -shared -Wl,--version-script=link.T
+-
++else ifneq (,$(findstring armv,$(platform)))
++ TARGET := $(TARGET_NAME)_libretro.so
++ SHARED := -shared -Wl,--no-undefined,-Bsymbolic
++ fpic := -fPIC
++ ifneq (,$(findstring cortexa5,$(platform)))
++ CFLAGS += -marm -mcpu=cortex-a5
++ ASFLAGS += -mcpu=cortex-a5
++ else ifneq (,$(findstring cortexa8,$(platform)))
++ CFLAGS += -marm -mcpu=cortex-a8
++ ASFLAGS += -mcpu=cortex-a8
++ else ifneq (,$(findstring cortexa9,$(platform)))
++ CFLAGS += -marm -mcpu=cortex-a9
++ ASFLAGS += -mcpu=cortex-a9
++ else ifneq (,$(findstring cortexa15a7,$(platform)))
++ CFLAGS += -marm -mcpu=cortex-a15.cortex-a7
++ ASFLAGS += -mcpu=cortex-a15.cortex-a7
++ else
++ CFLAGS += -marm
++ endif
++ ifneq (,$(findstring neon,$(platform)))
++ CFLAGS += -mfpu=neon
++ ASFLAGS += -mfpu=neon
++ endif
++ ifneq (,$(findstring softfloat,$(platform)))
++ CFLAGS += -mfloat-abi=softfp
++ ASFLAGS += -mfloat-abi=softfp
++ else ifneq (,$(findstring hardfloat,$(platform)))
++ CFLAGS += -mfloat-abi=hard
++ ASFLAGS += -mfloat-abi=hard
++ endif
+ else ifeq ($(platform), gcw0)
+ TARGET := $(TARGET_NAME)_libretro_gcw0.so
+ CC = /opt/gcw0-toolchain/usr/bin/mipsel-linux-gcc
diff --git a/patches/fake-08/1000-funkey-s-build.patch b/patches/fake-08/1000-funkey-s-build.patch
deleted file mode 100644
index e5f5046..0000000
--- a/patches/fake-08/1000-funkey-s-build.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-diff --git a/platform/libretro/Makefile b/platform/libretro/Makefile
-index 420f9b7..b247ec0 100644
---- a/platform/libretro/Makefile
-+++ b/platform/libretro/Makefile
-@@ -123,7 +123,11 @@ else ifeq ($(platform), miyoomini)
- CXXFLAGS += -marm -mtune=cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard -march=armv7ve
- fpic := -fPIC
- SHARED := -shared -Wl,--version-script=link.T
--
-+else ifeq ($(platform), classic_armv7_a7)
-+ TARGET := $(TARGET_NAME)_libretro.so
-+ CXXFLAGS += -marm -mtune=cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard -march=armv7ve
-+ fpic := -fPIC
-+ SHARED := -shared -Wl,--version-script=link.T
- else ifeq ($(platform), gcw0)
- TARGET := $(TARGET_NAME)_libretro_gcw0.so
- CC = /opt/gcw0-toolchain/usr/bin/mipsel-linux-gcc
diff --git a/patches/mame2000/0002-arm-generic-target.patch b/patches/mame2000/0002-arm-generic-target.patch
new file mode 100644
index 0000000..c1a76a3
--- /dev/null
+++ b/patches/mame2000/0002-arm-generic-target.patch
@@ -0,0 +1,43 @@
+diff --git a/Makefile b/Makefile
+index 57163e4..647eaaf 100644
+--- a/Makefile
++++ b/Makefile
+@@ -269,6 +269,38 @@ else ifeq ($(platform), classic_armv7_a7)
+ endif
+ #######################################
+
++# ARM
++else ifneq (,$(findstring armv,$(platform)))
++ TARGET := $(TARGET_NAME)_libretro.so
++ SHARED := -shared -Wl,--no-undefined,-Bsymbolic
++ fpic := -fPIC
++ ifneq (,$(findstring cortexa5,$(platform)))
++ CFLAGS += -marm -mcpu=cortex-a5
++ ASFLAGS += -mcpu=cortex-a5
++ else ifneq (,$(findstring cortexa8,$(platform)))
++ CFLAGS += -marm -mcpu=cortex-a8
++ ASFLAGS += -mcpu=cortex-a8
++ else ifneq (,$(findstring cortexa9,$(platform)))
++ CFLAGS += -marm -mcpu=cortex-a9
++ ASFLAGS += -mcpu=cortex-a9
++ else ifneq (,$(findstring cortexa15a7,$(platform)))
++ CFLAGS += -marm -mcpu=cortex-a15.cortex-a7
++ ASFLAGS += -mcpu=cortex-a15.cortex-a7
++ else
++ CFLAGS += -marm
++ endif
++ ifneq (,$(findstring neon,$(platform)))
++ CFLAGS += -mfpu=neon
++ ASFLAGS += -mfpu=neon
++ endif
++ ifneq (,$(findstring softfloat,$(platform)))
++ CFLAGS += -mfloat-abi=softfp
++ ASFLAGS += -mfloat-abi=softfp
++ else ifneq (,$(findstring hardfloat,$(platform)))
++ CFLAGS += -mfloat-abi=hard
++ ASFLAGS += -mfloat-abi=hard
++ endif
++ ARM = 1
+
+ # CTR(3DS)
+ else ifeq ($(platform), ctr)
diff --git a/patches/snes9x2005/0001-frameskip-interval.patc_ b/patches/snes9x2005/0001-frameskip-interval.patc_
deleted file mode 100644
index f1c431d..0000000
--- a/patches/snes9x2005/0001-frameskip-interval.patc_
+++ /dev/null
@@ -1,107 +0,0 @@
-diff --git a/libretro.c b/libretro.c
-index 9b4599e..c768c42 100644
---- a/libretro.c
-+++ b/libretro.c
-@@ -58,13 +58,11 @@ static int32_t samplerate = (((SNES_CLOCK_SPEED * 6) / (32 * ONE_APU_CYCLE)));
- static unsigned frameskip_type = 0;
- static unsigned frameskip_threshold = 0;
- static uint16_t frameskip_counter = 0;
-+static unsigned frameskip_interval = 0;
-
- static bool retro_audio_buff_active = false;
- static unsigned retro_audio_buff_occupancy = 0;
- static bool retro_audio_buff_underrun = false;
--/* Maximum number of consecutive frames that
-- * can be skipped */
--#define FRAMESKIP_MAX 30
-
- static unsigned retro_audio_latency = 0;
- static bool update_audio_latency = false;
-@@ -345,6 +343,7 @@ void retro_deinit(void)
- frameskip_type = 0;
- frameskip_threshold = 0;
- frameskip_counter = 0;
-+ frameskip_interval = 0;
- retro_audio_buff_active = false;
- retro_audio_buff_occupancy = 0;
- retro_audio_buff_underrun = false;
-@@ -418,7 +417,7 @@ static void check_variables(bool first_run)
- {
- if (strcmp(var.value, "auto") == 0)
- frameskip_type = 1;
-- else if (strcmp(var.value, "manual") == 0)
-+ else if (strcmp(var.value, "auto_threshold") == 0)
- frameskip_type = 2;
- }
-
-@@ -430,6 +429,14 @@ static void check_variables(bool first_run)
- if (environ_cb(RETRO_ENVIRONMENT_GET_VARIABLE, &var) && var.value)
- frameskip_threshold = strtol(var.value, NULL, 10);
-
-+ var.key = "snes9x_2005_frameskip_interval";
-+ var.value = NULL;
-+
-+ frameskip_interval = 4;
-+
-+ if (environ_cb(RETRO_ENVIRONMENT_GET_VARIABLE, &var) && var.value)
-+ frameskip_interval = strtol(var.value, NULL, 10);
-+
- var.key = "snes9x_2005_overclock_cycles";
- var.value = NULL;
-
-@@ -535,7 +542,7 @@ void retro_run(void)
-
- if (skip_frame)
- {
-- if(frameskip_counter < FRAMESKIP_MAX)
-+ if(frameskip_counter < frameskip_interval)
- {
- IPPU.RenderThisFrame = false;
- frameskip_counter++;
-diff --git a/libretro_core_options.h b/libretro_core_options.h
-index 9b89154..41d5ff1 100644
---- a/libretro_core_options.h
-+++ b/libretro_core_options.h
-@@ -87,9 +87,9 @@ struct retro_core_option_v2_definition option_defs_us[] = {
- NULL,
- NULL,
- {
-- { "disabled", NULL },
-- { "auto", "Auto" },
-- { "manual", "Manual" },
-+ { "disabled", NULL },
-+ { "auto", "Auto" },
-+ { "auto_threshold", "Threshold" },
- { NULL, NULL },
- },
- "disabled"
-@@ -122,6 +122,29 @@ struct retro_core_option_v2_definition option_defs_us[] = {
- },
- "33"
- },
-+ {
-+ "snes9x_2005_frameskip_interval",
-+ "Frameskip Interval",
-+ NULL,
-+ "The maximum number of frames that can be skipped before a new frame is rendered.",
-+ NULL,
-+ NULL,
-+ {
-+ { "0", NULL },
-+ { "1", NULL },
-+ { "2", NULL },
-+ { "3", NULL },
-+ { "4", NULL },
-+ { "5", NULL },
-+ { "6", NULL },
-+ { "7", NULL },
-+ { "8", NULL },
-+ { "9", NULL },
-+ { "10", NULL },
-+ { NULL, NULL },
-+ },
-+ "4"
-+ },
- {
- "snes9x_2005_overclock_cycles",
- "Reduce Slowdown (Hack, Unsafe, Restart)",
diff --git a/patches/snes9x2005/1000-trimui-support.patc_ b/patches/snes9x2005/1000-trimui-support.patc_
deleted file mode 100644
index 96dcb78..0000000
--- a/patches/snes9x2005/1000-trimui-support.patc_
+++ /dev/null
@@ -1,46 +0,0 @@
-diff --git a/Makefile b/Makefile
-index b293853..bc220bd 100644
---- a/Makefile
-+++ b/Makefile
-@@ -282,6 +282,20 @@ else ifeq ($(platform), gcw0)
- FLAGS += -fomit-frame-pointer -ffast-math -march=mips32 -mtune=mips32r2 -mhard-float
- FLAGS += -DFAST_LSB_WORD_ACCESS
-
-+else ifeq ($(platform), trimui)
-+ TARGET := $(TARGET_NAME)_libretro.so
-+ CC = $(CROSS_COMPILE)gcc
-+ AR = $(CROSS_COMPILE)ar
-+ SHARED := -shared -Wl,--version-script=link.T -Wl,--no-undefined
-+ CFLAGS += -fsingle-precision-constant -fno-PIC -flto
-+ CFLAGS += -DLSB_FIRST -DFAST_ALIGNED_LSB_WORD_ACCESS -DRIGHTSHIFT_IS_SAR
-+ CFLAGS += -std=c99 -fomit-frame-pointer -ffast-math -mcpu=arm926ej-s -mtune=arm926ej-s
-+ LDFLAGS += -flto
-+ OPTIMIZE += -Ofast -DNDEBUG=1
-+ ifeq (,$(DEBUG))
-+ LDFLAGS += -s
-+ endif
-+
- # (armv7 a7, hard point, neon based) ###
- # NESC, SNESC, C64 mini
- else ifeq ($(platform), classic_armv7_a7)
-@@ -570,10 +584,20 @@ endif
-
- ifeq ($(DEBUG),1)
- FLAGS += -O0 -g
-+else ifneq (,$(OPTIMIZE))
-+ FLAGS += $(OPTIMIZE)
- else
- FLAGS += -O2 -DNDEBUG
- endif
-
-+
-+ifeq ($(PROFILE), GENERATE)
-+ CFLAGS += -fprofile-generate=./profile/snes9x2005
-+ LIBS += -lgcov
-+else ifeq ($(PROFILE), APPLY)
-+ CFLAGS += -fprofile-use -fprofile-dir=../profile/snes9x2005 -fbranch-probabilities
-+endif
-+
- ifneq (,$(findstring msvc,$(platform)))
- ifeq ($(DEBUG),1)
- FLAGS += -MTd
diff --git a/patches/snes9x2005/1001-funkey-s-support.patch b/patches/snes9x2005/1001-funkey-s-support.patch
deleted file mode 100644
index 1825917..0000000
--- a/patches/snes9x2005/1001-funkey-s-support.patch
+++ /dev/null
@@ -1,93 +0,0 @@
-diff --git a/Makefile b/Makefile
-index 23b8979..0a09e85 100644
---- a/Makefile
-+++ b/Makefile
-@@ -74,13 +74,46 @@ ifeq ($(platform), unix)
- fpic := -fPIC
- SHARED := -shared -Wl,--no-undefined -Wl,--version-script=link.T
- CFLAGS += -fno-builtin -fno-exceptions -ffunction-sections
--# ARM
-+# (armv7 a7, hard point, neon based) ###
-+# NESC, SNESC, C64 mini
-+else ifeq ($(platform), classic_armv7_a7)
-+ TARGET := $(TARGET_NAME)_libretro.so
-+ fpic := -fPIC
-+ SHARED := -shared -Wl,--version-script=link.T -Wl,--no-undefined
-+ CFLAGS += -Ofast \
-+ -flto=4 -fwhole-program -fuse-linker-plugin \
-+ -fdata-sections -ffunction-sections -Wl,--gc-sections \
-+ -fno-stack-protector -fno-ident -fomit-frame-pointer \
-+ -falign-functions=1 -falign-jumps=1 -falign-loops=1 \
-+ -fno-unwind-tables -fno-asynchronous-unwind-tables -fno-unroll-loops \
-+ -fmerge-all-constants -fno-math-errno \
-+ -marm -mtune=cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard
-+ CC = $(CROSS_COMPILE)gcc
-+ AR = $(CROSS_COMPILE)ar
-+ CXXFLAGS += $(CFLAGS)
-+ CPPFLAGS += $(CFLAGS)
-+ ASFLAGS += $(CFLAGS)
-+ HAVE_NEON = 1
-+ ARCH = arm
-+ BUILTIN_GPU = neon
-+ USE_DYNAREC = 1
-+ ifeq ($(shell echo `$(CC) -dumpversion` "< 4.9" | bc -l), 1)
-+ CFLAGS += -march=armv7-a
-+ else
-+ CFLAGS += -march=armv7ve
-+ # If gcc is 5.0 or later
-+ ifeq ($(shell echo `$(CC) -dumpversion` ">= 5" | bc -l), 1)
-+ LDFLAGS += -static-libgcc -static-libstdc++
-+ endif
-+ endif
-+#######################################
-+# generic ARM
- else ifneq (,$(findstring armv,$(platform)))
- TARGET := $(TARGET_NAME)_libretro.so
- fpic := -fPIC
- SHARED := -shared -Wl,--no-undefined -Wl,--version-script=link.T
-- CC = gcc
-- CXX = g++
-+ CC = $(CROSS_COMPILE)gcc
-+ CXX = $(CROSS_COMPILE)g++
- PLATFORM_DEFINES += -marm
- ifneq (,$(findstring softfloat,$(platform)))
- PLATFORM_DEFINES += -mfloat-abi=softfp
-@@ -306,38 +339,6 @@ else
- endif
- OPTIMIZE += -Ofast -DNDEBUG=1
-
--# (armv7 a7, hard point, neon based) ###
--# NESC, SNESC, C64 mini
--else ifeq ($(platform), classic_armv7_a7)
-- TARGET := $(TARGET_NAME)_libretro.so
-- fpic := -fPIC
-- SHARED := -shared -Wl,--version-script=link.T -Wl,--no-undefined
-- CFLAGS += -Ofast \
-- -flto=4 -fwhole-program -fuse-linker-plugin \
-- -fdata-sections -ffunction-sections -Wl,--gc-sections \
-- -fno-stack-protector -fno-ident -fomit-frame-pointer \
-- -falign-functions=1 -falign-jumps=1 -falign-loops=1 \
-- -fno-unwind-tables -fno-asynchronous-unwind-tables -fno-unroll-loops \
-- -fmerge-all-constants -fno-math-errno \
-- -marm -mtune=cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard
-- CXXFLAGS += $(CFLAGS)
-- CPPFLAGS += $(CFLAGS)
-- ASFLAGS += $(CFLAGS)
-- HAVE_NEON = 1
-- ARCH = arm
-- BUILTIN_GPU = neon
-- USE_DYNAREC = 1
-- ifeq ($(shell echo `$(CC) -dumpversion` "< 4.9" | bc -l), 1)
-- CFLAGS += -march=armv7-a
-- else
-- CFLAGS += -march=armv7ve
-- # If gcc is 5.0 or later
-- ifeq ($(shell echo `$(CC) -dumpversion` ">= 5" | bc -l), 1)
-- LDFLAGS += -static-libgcc -static-libstdc++
-- endif
-- endif
--#######################################
--
- # Windows MSVC 2010 x64
- else ifeq ($(platform), windows_msvc2010_x64)
- CC = cl.exe
diff --git a/patches/snes9x2005_plus/1001-funkey-s-support.patch b/patches/snes9x2005_plus/1001-funkey-s-support.patch
deleted file mode 100644
index 1825917..0000000
--- a/patches/snes9x2005_plus/1001-funkey-s-support.patch
+++ /dev/null
@@ -1,93 +0,0 @@
-diff --git a/Makefile b/Makefile
-index 23b8979..0a09e85 100644
---- a/Makefile
-+++ b/Makefile
-@@ -74,13 +74,46 @@ ifeq ($(platform), unix)
- fpic := -fPIC
- SHARED := -shared -Wl,--no-undefined -Wl,--version-script=link.T
- CFLAGS += -fno-builtin -fno-exceptions -ffunction-sections
--# ARM
-+# (armv7 a7, hard point, neon based) ###
-+# NESC, SNESC, C64 mini
-+else ifeq ($(platform), classic_armv7_a7)
-+ TARGET := $(TARGET_NAME)_libretro.so
-+ fpic := -fPIC
-+ SHARED := -shared -Wl,--version-script=link.T -Wl,--no-undefined
-+ CFLAGS += -Ofast \
-+ -flto=4 -fwhole-program -fuse-linker-plugin \
-+ -fdata-sections -ffunction-sections -Wl,--gc-sections \
-+ -fno-stack-protector -fno-ident -fomit-frame-pointer \
-+ -falign-functions=1 -falign-jumps=1 -falign-loops=1 \
-+ -fno-unwind-tables -fno-asynchronous-unwind-tables -fno-unroll-loops \
-+ -fmerge-all-constants -fno-math-errno \
-+ -marm -mtune=cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard
-+ CC = $(CROSS_COMPILE)gcc
-+ AR = $(CROSS_COMPILE)ar
-+ CXXFLAGS += $(CFLAGS)
-+ CPPFLAGS += $(CFLAGS)
-+ ASFLAGS += $(CFLAGS)
-+ HAVE_NEON = 1
-+ ARCH = arm
-+ BUILTIN_GPU = neon
-+ USE_DYNAREC = 1
-+ ifeq ($(shell echo `$(CC) -dumpversion` "< 4.9" | bc -l), 1)
-+ CFLAGS += -march=armv7-a
-+ else
-+ CFLAGS += -march=armv7ve
-+ # If gcc is 5.0 or later
-+ ifeq ($(shell echo `$(CC) -dumpversion` ">= 5" | bc -l), 1)
-+ LDFLAGS += -static-libgcc -static-libstdc++
-+ endif
-+ endif
-+#######################################
-+# generic ARM
- else ifneq (,$(findstring armv,$(platform)))
- TARGET := $(TARGET_NAME)_libretro.so
- fpic := -fPIC
- SHARED := -shared -Wl,--no-undefined -Wl,--version-script=link.T
-- CC = gcc
-- CXX = g++
-+ CC = $(CROSS_COMPILE)gcc
-+ CXX = $(CROSS_COMPILE)g++
- PLATFORM_DEFINES += -marm
- ifneq (,$(findstring softfloat,$(platform)))
- PLATFORM_DEFINES += -mfloat-abi=softfp
-@@ -306,38 +339,6 @@ else
- endif
- OPTIMIZE += -Ofast -DNDEBUG=1
-
--# (armv7 a7, hard point, neon based) ###
--# NESC, SNESC, C64 mini
--else ifeq ($(platform), classic_armv7_a7)
-- TARGET := $(TARGET_NAME)_libretro.so
-- fpic := -fPIC
-- SHARED := -shared -Wl,--version-script=link.T -Wl,--no-undefined
-- CFLAGS += -Ofast \
-- -flto=4 -fwhole-program -fuse-linker-plugin \
-- -fdata-sections -ffunction-sections -Wl,--gc-sections \
-- -fno-stack-protector -fno-ident -fomit-frame-pointer \
-- -falign-functions=1 -falign-jumps=1 -falign-loops=1 \
-- -fno-unwind-tables -fno-asynchronous-unwind-tables -fno-unroll-loops \
-- -fmerge-all-constants -fno-math-errno \
-- -marm -mtune=cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard
-- CXXFLAGS += $(CFLAGS)
-- CPPFLAGS += $(CFLAGS)
-- ASFLAGS += $(CFLAGS)
-- HAVE_NEON = 1
-- ARCH = arm
-- BUILTIN_GPU = neon
-- USE_DYNAREC = 1
-- ifeq ($(shell echo `$(CC) -dumpversion` "< 4.9" | bc -l), 1)
-- CFLAGS += -march=armv7-a
-- else
-- CFLAGS += -march=armv7ve
-- # If gcc is 5.0 or later
-- ifeq ($(shell echo `$(CC) -dumpversion` ">= 5" | bc -l), 1)
-- LDFLAGS += -static-libgcc -static-libstdc++
-- endif
-- endif
--#######################################
--
- # Windows MSVC 2010 x64
- else ifeq ($(platform), windows_msvc2010_x64)
- CC = cl.exe