BOARD: separate miyoo packages + concentrate RetroArch/libretro (#129)

MENU->Target packages ---> Miyoo Packages ---> ...
This commit is contained in:
Apaczer
2024-10-15 20:07:21 +02:00
committed by GitHub
parent 81270d9968
commit 59d7586ca6
217 changed files with 328 additions and 298 deletions

View File

@@ -0,0 +1,29 @@
diff --git a/Makefile.miyoo b/Makefile.miyoo
index 751cdf2639..df9c37fc33 100644
--- a/Makefile.miyoo
+++ b/Makefile.miyoo
@@ -3,7 +3,7 @@
#########################
# Default toolchain directory
-TOOLCHAIN_DIR=/opt/miyoo
+TOOLCHAIN_DIR="$(STAGING_DIR)"
# All toolchain-related variables may be
# overridden via the command line
@@ -26,11 +26,11 @@ else
STRIP = $(TOOLCHAIN_DIR)/usr/bin/arm-linux-strip
endif
-GCW0_SDL_CONFIG ?= $(TOOLCHAIN_DIR)/usr/arm-miyoo-linux-uclibcgnueabi/sysroot/usr/bin/sdl-config
-GCW0_FREETYPE_CONFIG ?= $(TOOLCHAIN_DIR)/usr/arm-miyoo-linux-uclibcgnueabi/sysroot/usr/bin/freetype-config
+GCW0_SDL_CONFIG ?= $(TOOLCHAIN_DIR)/usr/bin/sdl-config
+GCW0_FREETYPE_CONFIG ?= $(TOOLCHAIN_DIR)/usr/bin/freetype-config
-GCW0_INC_DIR ?= $(TOOLCHAIN_DIR)/usr/arm-miyoo-linux-uclibcgnueabi/sysroot/usr/include
-GCW0_LIB_DIR ?= $(TOOLCHAIN_DIR)/usr/arm-miyoo-linux-uclibcgnueabi/sysroot/usr/lib
+GCW0_INC_DIR ?= $(TOOLCHAIN_DIR)/usr/include
+GCW0_LIB_DIR ?= $(TOOLCHAIN_DIR)/usr/lib
#########################
#########################

View File

@@ -0,0 +1,35 @@
diff --git a/Makefile.miyoo b/Makefile.miyoo
index 2880af10ad..f1a785f818 100644
--- a/Makefile.miyoo
+++ b/Makefile.miyoo
@@ -124,7 +124,7 @@ DEF_FLAGS += -I. -Ideps -Ideps/stb -DMIYOO=1 -DDINGUX -MMD
DEF_FLAGS += -Wall -Wno-unused-variable -flto
DEF_FLAGS += -std=gnu99 -D_GNU_SOURCE
LIBS := -ldl -lz -lrt -pthread -lasound
-CFLAGS :=
+CFLAGS := -Ofast -fdata-sections -ffunction-sections -fsingle-precision-constant -fno-PIC -flto
CXXFLAGS := -fno-exceptions -fno-rtti -std=c++11 -D__STDC_CONSTANT_MACROS
ASFLAGS :=
LDFLAGS := -Wl,--gc-sections
diff --git a/config.def.h b/config.def.h
index 25f0dbe463..a53076361c 100644
--- a/config.def.h
+++ b/config.def.h
@@ -356,7 +356,7 @@
#define DEFAULT_DISABLE_COMPOSITION false
/* Video VSYNC (recommended) */
-#define DEFAULT_VSYNC true
+#define DEFAULT_VSYNC false
/* Vulkan specific */
#define DEFAULT_MAX_SWAPCHAIN_IMAGES 3
@@ -513,7 +513,7 @@
#if defined(DINGUX)
/* Enables aspect ratio correction (1:1 PAR) when
* using the IPU hardware scaler in Dingux devices */
-#define DEFAULT_DINGUX_IPU_KEEP_ASPECT true
+#define DEFAULT_DINGUX_IPU_KEEP_ASPECT false
/* Sets image filtering method when using the
* IPU hardware scaler in Dingux devices */
#if defined(RETROFW)

View File

@@ -0,0 +1,304 @@
Subject: [PATCH] change sdl_dingux gamepad to sdl & add joypad bind
Signed-off-by: Apaczer <94932128+Apaczer@users.noreply.github.com>
---
Makefile.miyoo | 2 +-
config.def.h | 4 ++-
config.def.keybinds.h | 60 +++++++++++++++++++++----------------------
configuration.c | 12 ++++-----
input/input_driver.c | 4 +--
5 files changed, 42 insertions(+), 40 deletions(-)
diff --git a/Makefile.miyoo b/Makefile.miyoo
index 2880af10ad..b343697d2d 100644
--- a/Makefile.miyoo
+++ b/Makefile.miyoo
@@ -120,7 +120,7 @@ OBJ :=
LINK := $(CXX)
DEF_FLAGS := -march=armv5te -mtune=arm926ej-s -ffast-math -fomit-frame-pointer
DEF_FLAGS += -ffunction-sections -fdata-sections
-DEF_FLAGS += -I. -Ideps -Ideps/stb -DMIYOO=1 -DDINGUX -MMD
+DEF_FLAGS += -I. -Ideps -Ideps/stb -DMIYOO=1 -DMIYOO -DDINGUX -MMD
DEF_FLAGS += -Wall -Wno-unused-variable -flto
DEF_FLAGS += -std=gnu99 -D_GNU_SOURCE
LIBS := -ldl -lz -lrt -pthread -lasound
diff --git a/config.def.h b/config.def.h
index 73d09d3b6b..6795278dc7 100644
--- a/config.def.h
+++ b/config.def.h
@@ -1546,8 +1546,10 @@
#define DEFAULT_INPUT_DESCRIPTOR_LABEL_SHOW true
#define DEFAULT_INPUT_DESCRIPTOR_HIDE_UNBOUND false
-#if defined(DINGUX)
+#if defined(DINGUX) && !defined(MIYOO)
#define DEFAULT_INPUT_MAX_USERS 1
+#elif (DINGUX) && defined(MIYOO)
+#define DEFAULT_INPUT_MAX_USERS 2
#else
#define DEFAULT_INPUT_MAX_USERS 8
#endif
diff --git a/config.def.keybinds.h b/config.def.keybinds.h
index d86c8b6413..6be1e223ad 100644
--- a/config.def.keybinds.h
+++ b/config.def.keybinds.h
@@ -661,167 +661,167 @@ static const struct retro_keybind retro_keybinds_1[] = {
{
NULL, NULL,
AXIS_NONE, AXIS_NONE, AXIS_NONE,
- MENU_ENUM_LABEL_VALUE_INPUT_JOYPAD_B, RETROK_LALT,
- RETRO_DEVICE_ID_JOYPAD_B, NO_BTN, NO_BTN, 0,
+ MENU_ENUM_LABEL_VALUE_INPUT_JOYPAD_B, RETROK_LCTRL,
+ RETRO_DEVICE_ID_JOYPAD_B, NO_BTN, 2, 0,
true
},
{
NULL, NULL,
AXIS_NONE, AXIS_NONE, AXIS_NONE,
MENU_ENUM_LABEL_VALUE_INPUT_JOYPAD_Y, RETROK_LSHIFT,
- RETRO_DEVICE_ID_JOYPAD_Y, NO_BTN, NO_BTN, 0,
+ RETRO_DEVICE_ID_JOYPAD_Y, NO_BTN, 0, 0,
true
},
{
NULL, NULL,
AXIS_NONE, AXIS_NONE, AXIS_NONE,
MENU_ENUM_LABEL_VALUE_INPUT_JOYPAD_SELECT, RETROK_ESCAPE,
- RETRO_DEVICE_ID_JOYPAD_SELECT, NO_BTN, NO_BTN, 0,
+ RETRO_DEVICE_ID_JOYPAD_SELECT, NO_BTN, 8, 0,
true
},
{
NULL, NULL,
AXIS_NONE, AXIS_NONE, AXIS_NONE,
MENU_ENUM_LABEL_VALUE_INPUT_JOYPAD_START, RETROK_RETURN,
- RETRO_DEVICE_ID_JOYPAD_START, NO_BTN, NO_BTN, 0,
+ RETRO_DEVICE_ID_JOYPAD_START, NO_BTN, 9, 0,
true
},
{
NULL, NULL,
AXIS_NONE, AXIS_NONE, AXIS_NONE,
MENU_ENUM_LABEL_VALUE_INPUT_JOYPAD_UP, RETROK_UP,
- RETRO_DEVICE_ID_JOYPAD_UP, NO_BTN, NO_BTN, 0,
+ RETRO_DEVICE_ID_JOYPAD_UP, NO_BTN, HAT_UP_MASK, 0,
true
},
{
NULL, NULL,
AXIS_NONE, AXIS_NONE, AXIS_NONE,
MENU_ENUM_LABEL_VALUE_INPUT_JOYPAD_DOWN, RETROK_DOWN,
- RETRO_DEVICE_ID_JOYPAD_DOWN, NO_BTN, NO_BTN, 0,
+ RETRO_DEVICE_ID_JOYPAD_DOWN, NO_BTN, HAT_DOWN_MASK, 0,
true
},
{
NULL, NULL,
AXIS_NONE, AXIS_NONE, AXIS_NONE,
MENU_ENUM_LABEL_VALUE_INPUT_JOYPAD_LEFT, RETROK_LEFT,
- RETRO_DEVICE_ID_JOYPAD_LEFT, NO_BTN, NO_BTN, 0,
+ RETRO_DEVICE_ID_JOYPAD_LEFT, NO_BTN, HAT_LEFT_MASK, 0,
true
},
{
NULL, NULL,
AXIS_NONE, AXIS_NONE, AXIS_NONE,
MENU_ENUM_LABEL_VALUE_INPUT_JOYPAD_RIGHT, RETROK_RIGHT,
- RETRO_DEVICE_ID_JOYPAD_RIGHT, NO_BTN, NO_BTN, 0,
+ RETRO_DEVICE_ID_JOYPAD_RIGHT, NO_BTN, HAT_RIGHT_MASK, 0,
true
},
{
NULL, NULL,
AXIS_NONE, AXIS_NONE, AXIS_NONE,
- MENU_ENUM_LABEL_VALUE_INPUT_JOYPAD_A, RETROK_LCTRL,
- RETRO_DEVICE_ID_JOYPAD_A, NO_BTN, NO_BTN, 0,
+ MENU_ENUM_LABEL_VALUE_INPUT_JOYPAD_A, RETROK_LALT,
+ RETRO_DEVICE_ID_JOYPAD_A, NO_BTN, 1, 0,
true
},
{
NULL, NULL,
AXIS_NONE, AXIS_NONE, AXIS_NONE,
MENU_ENUM_LABEL_VALUE_INPUT_JOYPAD_X, RETROK_SPACE,
- RETRO_DEVICE_ID_JOYPAD_X, NO_BTN, NO_BTN, 0,
+ RETRO_DEVICE_ID_JOYPAD_X, NO_BTN, 3, 0,
true
},
{
NULL, NULL,
AXIS_NONE, AXIS_NONE, AXIS_NONE,
MENU_ENUM_LABEL_VALUE_INPUT_JOYPAD_L, RETROK_TAB,
- RETRO_DEVICE_ID_JOYPAD_L, NO_BTN, NO_BTN, 0,
+ RETRO_DEVICE_ID_JOYPAD_L, NO_BTN, 4, 0,
true
},
{
NULL, NULL,
AXIS_NONE, AXIS_NONE, AXIS_NONE,
MENU_ENUM_LABEL_VALUE_INPUT_JOYPAD_R, RETROK_BACKSPACE,
- RETRO_DEVICE_ID_JOYPAD_R, NO_BTN, NO_BTN, 0,
+ RETRO_DEVICE_ID_JOYPAD_R, NO_BTN, 5, 0,
true
},
{
NULL, NULL,
AXIS_NONE, AXIS_NONE, AXIS_NONE,
MENU_ENUM_LABEL_VALUE_INPUT_JOYPAD_L2, RETROK_PAGEUP,
- RETRO_DEVICE_ID_JOYPAD_L2, NO_BTN, NO_BTN, 0,
+ RETRO_DEVICE_ID_JOYPAD_L2, NO_BTN, 6, 0,
true
},
{
NULL, NULL,
AXIS_NONE, AXIS_NONE, AXIS_NONE,
MENU_ENUM_LABEL_VALUE_INPUT_JOYPAD_R2, RETROK_PAGEDOWN,
- RETRO_DEVICE_ID_JOYPAD_R2, NO_BTN, NO_BTN, 0,
+ RETRO_DEVICE_ID_JOYPAD_R2, NO_BTN, 7, 0,
true
},
{
NULL, NULL,
AXIS_NONE, AXIS_NONE, AXIS_NONE,
- MENU_ENUM_LABEL_VALUE_INPUT_JOYPAD_L3, RETROK_KP_DIVIDE,
- RETRO_DEVICE_ID_JOYPAD_L3, NO_BTN, NO_BTN, 0,
+ MENU_ENUM_LABEL_VALUE_INPUT_JOYPAD_L3, RETROK_RALT,
+ RETRO_DEVICE_ID_JOYPAD_L3, NO_BTN, 10, 0,
true
},
{
NULL, NULL,
AXIS_NONE, AXIS_NONE, AXIS_NONE,
- MENU_ENUM_LABEL_VALUE_INPUT_JOYPAD_R3, RETROK_KP_PERIOD,
- RETRO_DEVICE_ID_JOYPAD_R3, NO_BTN, NO_BTN, 0,
+ MENU_ENUM_LABEL_VALUE_INPUT_JOYPAD_R3, RETROK_RSHIFT,
+ RETRO_DEVICE_ID_JOYPAD_R3, NO_BTN, 11, 0,
true
},
{
NULL, NULL,
- AXIS_NONE, AXIS_NONE, AXIS_NONE,
+ AXIS_POS(0), AXIS_NONE, AXIS_NONE,
MENU_ENUM_LABEL_VALUE_INPUT_ANALOG_LEFT_X_PLUS, RETROK_UNKNOWN,
RARCH_ANALOG_LEFT_X_PLUS, NO_BTN, NO_BTN, 0,
true
},
{
NULL, NULL,
- AXIS_NONE, AXIS_NONE, AXIS_NONE,
+ AXIS_NEG(0), AXIS_NONE, AXIS_NONE,
MENU_ENUM_LABEL_VALUE_INPUT_ANALOG_LEFT_X_MINUS, RETROK_UNKNOWN,
RARCH_ANALOG_LEFT_X_MINUS, NO_BTN, NO_BTN, 0,
true
},
{
NULL, NULL,
- AXIS_NONE, AXIS_NONE, AXIS_NONE,
+ AXIS_POS(1), AXIS_NONE, AXIS_NONE,
MENU_ENUM_LABEL_VALUE_INPUT_ANALOG_LEFT_Y_PLUS, RETROK_UNKNOWN,
RARCH_ANALOG_LEFT_Y_PLUS, NO_BTN, NO_BTN, 0,
true
},
{
NULL, NULL,
- AXIS_NONE, AXIS_NONE, AXIS_NONE,
+ AXIS_NEG(1), AXIS_NONE, AXIS_NONE,
MENU_ENUM_LABEL_VALUE_INPUT_ANALOG_LEFT_Y_MINUS, RETROK_UNKNOWN,
RARCH_ANALOG_LEFT_Y_MINUS, NO_BTN, NO_BTN, 0,
true
},
{
NULL, NULL,
- AXIS_NONE, AXIS_NONE, AXIS_NONE,
+ AXIS_POS(2), AXIS_NONE, AXIS_NONE,
MENU_ENUM_LABEL_VALUE_INPUT_ANALOG_RIGHT_X_PLUS, RETROK_UNKNOWN,
RARCH_ANALOG_RIGHT_X_PLUS, NO_BTN, NO_BTN, 0,
true
},
{
NULL, NULL,
- AXIS_NONE, AXIS_NONE, AXIS_NONE,
+ AXIS_NEG(2), AXIS_NONE, AXIS_NONE,
MENU_ENUM_LABEL_VALUE_INPUT_ANALOG_RIGHT_X_MINUS, RETROK_UNKNOWN,
RARCH_ANALOG_RIGHT_X_MINUS, NO_BTN, NO_BTN, 0,
true
},
{
NULL, NULL,
- AXIS_NONE, AXIS_NONE, AXIS_NONE,
+ AXIS_POS(3), AXIS_NONE, AXIS_NONE,
MENU_ENUM_LABEL_VALUE_INPUT_ANALOG_RIGHT_Y_PLUS, RETROK_UNKNOWN,
RARCH_ANALOG_RIGHT_Y_PLUS, NO_BTN, NO_BTN, 0,
true
},
{
NULL, NULL,
- AXIS_NONE, AXIS_NONE, AXIS_NONE,
+ AXIS_NEG(3), AXIS_NONE, AXIS_NONE,
MENU_ENUM_LABEL_VALUE_INPUT_ANALOG_RIGHT_Y_MINUS, RETROK_UNKNOWN,
RARCH_ANALOG_RIGHT_Y_MINUS, NO_BTN, NO_BTN, 0,
true
@@ -921,8 +921,8 @@ static const struct retro_keybind retro_keybinds_1[] = {
{
NULL, NULL,
AXIS_NONE, AXIS_NONE, AXIS_NONE,
- MENU_ENUM_LABEL_VALUE_INPUT_META_MENU_TOGGLE, RETROK_HOME,
- RARCH_MENU_TOGGLE, NO_BTN, NO_BTN, 0,
+ MENU_ENUM_LABEL_VALUE_INPUT_META_MENU_TOGGLE, RETROK_RCTRL,
+ RARCH_MENU_TOGGLE, NO_BTN, 12, 0,
true
},
{
diff --git a/configuration.c b/configuration.c
index 01f3229baf..9b0eca87e5 100644
--- a/configuration.c
+++ b/configuration.c
@@ -621,13 +621,13 @@ static const enum input_driver_enum INPUT_DEFAULT_DRIVER = INPUT_SWITCH;
static const enum input_driver_enum INPUT_DEFAULT_DRIVER = INPUT_WII;
#elif defined(WIIU)
static const enum input_driver_enum INPUT_DEFAULT_DRIVER = INPUT_WIIU;
-#elif defined(DINGUX) && defined(HAVE_SDL_DINGUX)
+#elif defined(DINGUX) && defined(HAVE_SDL_DINGUX) && !defined(MIYOO)
static const enum input_driver_enum INPUT_DEFAULT_DRIVER = INPUT_SDL_DINGUX;
#elif defined(HAVE_X11)
static const enum input_driver_enum INPUT_DEFAULT_DRIVER = INPUT_X;
#elif defined(HAVE_UDEV)
static const enum input_driver_enum INPUT_DEFAULT_DRIVER = INPUT_UDEV;
-#elif defined(__linux__) && !defined(ANDROID)
+#elif defined(__linux__) && !defined(ANDROID) && !defined(MIYOO)
static const enum input_driver_enum INPUT_DEFAULT_DRIVER = INPUT_LINUXRAW;
#elif defined(HAVE_WAYLAND)
static const enum input_driver_enum INPUT_DEFAULT_DRIVER = INPUT_WAYLAND;
@@ -635,7 +635,7 @@ static const enum input_driver_enum INPUT_DEFAULT_DRIVER = INPUT_WAYLAND;
static const enum input_driver_enum INPUT_DEFAULT_DRIVER = INPUT_COCOA;
#elif defined(__QNX__)
static const enum input_driver_enum INPUT_DEFAULT_DRIVER = INPUT_QNX;
-#elif defined(HAVE_SDL)
+#elif defined(HAVE_SDL) || defined(MIYOO)
static const enum input_driver_enum INPUT_DEFAULT_DRIVER = INPUT_SDL;
#elif defined(HAVE_SDL2)
static const enum input_driver_enum INPUT_DEFAULT_DRIVER = INPUT_SDL2;
@@ -669,17 +669,17 @@ static const enum joypad_driver_enum JOYPAD_DEFAULT_DRIVER = JOYPAD_PSP;
static const enum joypad_driver_enum JOYPAD_DEFAULT_DRIVER = JOYPAD_CTR;
#elif defined(SWITCH)
static const enum joypad_driver_enum JOYPAD_DEFAULT_DRIVER = JOYPAD_SWITCH;
-#elif defined(DINGUX) && defined(HAVE_SDL_DINGUX)
+#elif defined(DINGUX) && defined(HAVE_SDL_DINGUX) && !defined(MIYOO)
static const enum joypad_driver_enum JOYPAD_DEFAULT_DRIVER = JOYPAD_SDL_DINGUX;
#elif defined(HAVE_DINPUT)
static const enum joypad_driver_enum JOYPAD_DEFAULT_DRIVER = JOYPAD_DINPUT;
#elif defined(HAVE_UDEV)
static const enum joypad_driver_enum JOYPAD_DEFAULT_DRIVER = JOYPAD_UDEV;
-#elif defined(__linux) && !defined(ANDROID)
+#elif defined(__linux) && !defined(ANDROID) && !defined(MIYOO)
static const enum joypad_driver_enum JOYPAD_DEFAULT_DRIVER = JOYPAD_LINUXRAW;
#elif defined(ANDROID)
static const enum joypad_driver_enum JOYPAD_DEFAULT_DRIVER = JOYPAD_ANDROID;
-#elif defined(HAVE_SDL) || defined(HAVE_SDL2)
+#elif defined(HAVE_SDL) || defined(HAVE_SDL2) || defined(MIYOO)
static const enum joypad_driver_enum JOYPAD_DEFAULT_DRIVER = JOYPAD_SDL;
#elif defined(DJGPP)
static const enum joypad_driver_enum JOYPAD_DEFAULT_DRIVER = JOYPAD_DOS;
--
2.43.0.windows.1

View File

@@ -0,0 +1,13 @@
diff --git a/config.def.h b/config.def.h
index 25f0dbe463..a4aa1cc802 100644
--- a/config.def.h
+++ b/config.def.h
@@ -1112,7 +1112,7 @@
/* Desired audio latency in milliseconds. Might not be honored
* if driver can't provide given latency. */
-#if defined(ANDROID) || defined(EMSCRIPTEN) || defined(RETROFW) || defined(MIYOO)
+#if defined(ANDROID) || defined(EMSCRIPTEN) || defined(RETROFW)
/* For most Android devices, 64ms is way too low. */
#define DEFAULT_OUT_LATENCY 128
#define DEFAULT_IN_LATENCY 128

View File

@@ -0,0 +1,119 @@
Subject: [PATCH] remove input polling from sdl_input.c
fix double events register in e.g. on screen keyboard (osk)
correct Miyoo mapping in MENU
Signed-off-by: Apaczer <94932128+Apaczer@users.noreply.github.com>
---
input/drivers/sdl_input.c | 2 ++
input/input_driver.c | 42 ++++++++++++++++++++++++++++++++++++++-
2 files changed, 43 insertions(+), 1 deletion(-)
diff --git a/input/drivers/sdl_input.c b/input/drivers/sdl_input.c
index 3774c82421..c0b7ec5111 100644
--- a/input/drivers/sdl_input.c
+++ b/input/drivers/sdl_input.c
@@ -370,6 +370,7 @@ static void sdl_input_poll(void *data)
sdl_poll_mouse(sdl);
+#ifndef MIYOO
#ifdef HAVE_SDL2
while (SDL_PeepEvents(&event, 1,
SDL_GETEVENT, SDL_KEYDOWN, SDL_MOUSEWHEEL) > 0)
@@ -445,6 +446,7 @@ static void sdl_input_poll(void *data)
}
#endif
}
+#endif
}
static uint64_t sdl_get_capabilities(void *data)
diff --git a/input/input_driver.c b/input/input_driver.c
index 177d5df2b8..459aabb6e3 100644
--- a/input/input_driver.c
+++ b/input/input_driver.c
@@ -6298,6 +6298,22 @@ void input_driver_collect_system_input(input_driver_state_t *input_st,
unsigned i;
unsigned ids[][2] =
{
+#ifdef MIYOO
+ {RETROK_LALT, RETRO_DEVICE_ID_JOYPAD_A },
+ {RETROK_LCTRL, RETRO_DEVICE_ID_JOYPAD_B },
+ {RETROK_SPACE, RETRO_DEVICE_ID_JOYPAD_Y },
+ {RETROK_LSHIFT, RETRO_DEVICE_ID_JOYPAD_X },
+ {RETROK_RETURN, RETRO_DEVICE_ID_JOYPAD_START },
+ {RETROK_ESCAPE, RETRO_DEVICE_ID_JOYPAD_SELECT },
+ {RETROK_UP, RETRO_DEVICE_ID_JOYPAD_UP },
+ {RETROK_DOWN, RETRO_DEVICE_ID_JOYPAD_DOWN },
+ {RETROK_LEFT, RETRO_DEVICE_ID_JOYPAD_LEFT },
+ {RETROK_RIGHT, RETRO_DEVICE_ID_JOYPAD_RIGHT },
+ {RETROK_TAB, RETRO_DEVICE_ID_JOYPAD_L },
+ {RETROK_BACKSPACE, RETRO_DEVICE_ID_JOYPAD_R },
+ {RETROK_RALT, RETRO_DEVICE_ID_JOYPAD_L3 },
+ {RETROK_RSHIFT, RETRO_DEVICE_ID_JOYPAD_R3 },
+#else
{RETROK_RETURN, RETRO_DEVICE_ID_JOYPAD_A },
{RETROK_BACKSPACE, RETRO_DEVICE_ID_JOYPAD_B },
{RETROK_DELETE, RETRO_DEVICE_ID_JOYPAD_Y },
@@ -6312,6 +6328,7 @@ void input_driver_collect_system_input(input_driver_state_t *input_st,
{RETROK_PAGEDOWN, RETRO_DEVICE_ID_JOYPAD_R },
{RETROK_HOME, RETRO_DEVICE_ID_JOYPAD_L3 },
{RETROK_END, RETRO_DEVICE_ID_JOYPAD_R3 },
+#endif
{0, RARCH_QUIT_KEY }, /* 14 */
{0, RARCH_FULLSCREEN_TOGGLE_KEY },
{0, RARCH_UI_COMPANION_TOGGLE },
@@ -6357,7 +6374,11 @@ void input_driver_collect_system_input(input_driver_state_t *input_st,
unsigned i;
unsigned ids[][2] =
{
+#ifdef MIYOO
+ {RETROK_LALT, RETRO_DEVICE_ID_JOYPAD_A },
+#else
{RETROK_LCTRL, RETRO_DEVICE_ID_JOYPAD_A },
+#endif
{RETROK_UP, RETRO_DEVICE_ID_JOYPAD_UP },
{RETROK_DOWN, RETRO_DEVICE_ID_JOYPAD_DOWN },
{RETROK_LEFT, RETRO_DEVICE_ID_JOYPAD_LEFT },
@@ -6523,10 +6544,28 @@ void input_keyboard_event(bool down, unsigned code,
* is active */
if (menu_st->flags & MENU_ST_FLAG_SCREENSAVER_ACTIVE)
{
+#ifdef MIYOO
if ( (down)
&& (code != RETROK_UNKNOWN)
&& (menu_input_dialog_get_display_kb() ||
- !((code == RETROK_SPACE) || /* RETRO_DEVICE_ID_JOYPAD_START */
+ !((code == RETROK_RETURN) || /* RETRO_DEVICE_ID_JOYPAD_START */
+ (code == RETROK_ESCAPE) || /* RETRO_DEVICE_ID_JOYPAD_SELECT */
+ (code == RETROK_TAB) || /* RETRO_DEVICE_ID_JOYPAD_L */
+ (code == RETROK_BACKSPACE)|| /* RETRO_DEVICE_ID_JOYPAD_R */
+ (code == RETROK_LCTRL) || /* RETRO_DEVICE_ID_JOYPAD_B */
+ (code == RETROK_LALT) || /* RETRO_DEVICE_ID_JOYPAD_A */
+ (code == RETROK_SPACE) || /* RETRO_DEVICE_ID_JOYPAD_Y */
+ (code == RETROK_LSHIFT) || /* RETRO_DEVICE_ID_JOYPAD_X */
+ (code == RETROK_RIGHT) || /* RETRO_DEVICE_ID_JOYPAD_RIGHT */
+ (code == RETROK_LEFT) || /* RETRO_DEVICE_ID_JOYPAD_LEFT */
+ (code == RETROK_DOWN) || /* RETRO_DEVICE_ID_JOYPAD_DOWN */
+ (code == RETROK_UP) || /* RETRO_DEVICE_ID_JOYPAD_UP */
+ BIT512_GET(input_st->keyboard_mapping_bits, code))))
+#else
+ if ( (down)
+ && (code != RETROK_UNKNOWN)
+ && (menu_input_dialog_get_display_kb() ||
+ !((code == RETROK_SPACE) || /* RETRO_DEVICE_ID_JOYPAD_START */
(code == RETROK_SLASH) || /* RETRO_DEVICE_ID_JOYPAD_X */
(code == RETROK_RSHIFT) || /* RETRO_DEVICE_ID_JOYPAD_SELECT */
(code == RETROK_RIGHT) || /* RETRO_DEVICE_ID_JOYPAD_RIGHT */
@@ -6539,6 +6578,7 @@ void input_keyboard_event(bool down, unsigned code,
(code == RETROK_RETURN) || /* RETRO_DEVICE_ID_JOYPAD_A */
(code == RETROK_DELETE) || /* RETRO_DEVICE_ID_JOYPAD_Y */
BIT512_GET(input_st->keyboard_mapping_bits, code))))
+#endif
{
struct menu_state *menu_st = menu_state_get_ptr();
menu_st->flags &= ~MENU_ST_FLAG_SCREENSAVER_ACTIVE;
--
2.34.1

View File

@@ -0,0 +1,13 @@
diff --git a/Makefile.miyoo b/Makefile.miyoo
index 2880af10ad..1762d23e72 100644
--- a/Makefile.miyoo
+++ b/Makefile.miyoo
@@ -112,7 +112,7 @@ HAVE_LIBSHAKE = 0
HAVE_CORE_INFO_CACHE = 1
#HAVE_TINYALSA = 1
HAVE_NEAREST_RESAMPLER = 1
-
+HAVE_NETWORKING = 1
OS = Linux
TARGET = retroarch

View File

@@ -0,0 +1,15 @@
config BR2_PACKAGE_LIBRETRO_RETROARCH
bool "libretro-retroarch"
depends on BR2_PACKAGE_RETROARCH
select BR2_PACKAGE_LIBRETRO_DATABASE
select BR2_PACKAGE_LIBRETRO_ASSETS
help
RetroArch is the reference frontend for the libretro API.
Popular examples of implementations for this API includes
video game system emulators and game engines as well as
more generalized 3D programs. These programs are
instantiated as dynamic libraries.
We refer to these as "libretro cores".
https://github.com/libretro/RetroArch

View File

@@ -0,0 +1,23 @@
LIBRETRO_RETROARCH_VERSION = 0792144fe3a7b59908b0afdb2c01722e79040360
LIBRETRO_RETROARCH_SITE = https://github.com/libretro/RetroArch/archive/$(LIBRETRO_RETROARCH_VERSION)
LIBRETRO_RETROARCH_SOURCE = libretro-retroarch-$(LIBRETRO_RETROARCH_VERSION).tar.gz
LIBRETRO_RETROARCH_LICENSE = GPL-3.0
LIBRETRO_RETROARCH_LICENSE_FILES = COPYING
LIBRETRO_RETROARCH_DEPENDENCIES = host-pkgconf sdl sdl_image sdl_mixer sdl_sound sdl_ttf freetype
RETROARCH_LIBRETRO_PLATFORM = miyoo
define RETROARCH_BUILD_CMDS
$(MAKE) CC="$(TARGET_CC)" CXX="$(TARGET_CXX)" -C $(@D) -f Makefile.miyoo
$(TARGET_STRIP) --strip-unneeded $(@D)/retroarch
endef
define RETROARCH_INSTALL_TARGET_CMDS
mkdir -p "${BINARIES_DIR}/emus/retroarch"
$(INSTALL) -D -m 0755 $(@D)/retroarch "${BINARIES_DIR}/emus/retroarch"
mkdir -p "${BINARIES_DIR}/retroarch/filters/audio"
mkdir -p "${BINARIES_DIR}/retroarch/filters/video"
$(INSTALL) -D -m 0644 $(@D)/libretro-common/audio/dsp_filters/*.dsp "${BINARIES_DIR}/retroarch/filters/audio"
$(INSTALL) -D -m 0644 $(@D)/gfx/video_filters/*.filt "${BINARIES_DIR}/retroarch/filters/video"
endef
$(eval $(generic-package))