From 2c195d519f15ca49cbd1f9e92aa7583579727ef4 Mon Sep 17 00:00:00 2001 From: Philippe Simons Date: Tue, 14 Jan 2025 19:46:10 +0100 Subject: [PATCH] m8c: allow config mapping by devices --- packages/apps/m8c/config/H700/config.ini | 50 ++++++++++++++++++++++++ packages/apps/m8c/package.mk | 10 ++++- packages/apps/m8c/scripts/Start M8C.sh | 19 ++++++++- 3 files changed, 77 insertions(+), 2 deletions(-) create mode 100644 packages/apps/m8c/config/H700/config.ini diff --git a/packages/apps/m8c/config/H700/config.ini b/packages/apps/m8c/config/H700/config.ini new file mode 100644 index 0000000000..3a971910b4 --- /dev/null +++ b/packages/apps/m8c/config/H700/config.ini @@ -0,0 +1,50 @@ +[graphics] +fullscreen=true +use_gpu=true +idle_ms=10 +wait_for_device=true +wait_packets=1024 +[audio] +audio_enabled=true +audio_buffer_size=1024 +audio_device_name=Default +[keyboard] +;Ref: https://wiki.libsdl.org/SDL2/SDL_Scancode +key_up=82 +key_left=80 +key_down=81 +key_right=79 +key_select=225 +key_select_alt=29 +key_start=44 +key_start_alt=27 +key_opt=226 +key_opt_alt=4 +key_edit=224 +key_edit_alt=22 +key_delete=76 +key_reset=21 +key_jazz_inc_octave=85 +key_jazz_dec_octave=84 +key_jazz_inc_velocity=86 +key_jazz_dec_velocity=69 +key_toggle_audio=69 +[gamepad] +gamepad_up=11 +gamepad_left=13 +gamepad_down=12 +gamepad_right=14 +gamepad_select=9 ; L1 +gamepad_start=10 ; R1 +gamepad_opt=0 ; B +gamepad_edit=1 ; A +gamepad_quit=5 ; Menu/Guide +gamepad_reset=7 ; R2 +gamepad_analog_threshold=30000 +gamepad_analog_invert=false +gamepad_analog_axis_updown=1 +gamepad_analog_axis_leftright=0 +gamepad_analog_axis_select=4 +gamepad_analog_axis_start=5 +gamepad_analog_axis_opt=-1 +gamepad_analog_axis_edit=-1 diff --git a/packages/apps/m8c/package.mk b/packages/apps/m8c/package.mk index 0c38863d2f..1c3a57667b 100644 --- a/packages/apps/m8c/package.mk +++ b/packages/apps/m8c/package.mk @@ -11,11 +11,19 @@ PKG_LONGDESC="Cross-platform M8 tracker headless client" PKG_TOOLCHAIN="cmake" makeinstall_target(){ + # Create directories mkdir -p ${INSTALL}/usr/bin + mkdir -p ${INSTALL}/usr/config/m8c + mkdir -p ${INSTALL}/usr/config/modules + cp -f m8c ${INSTALL}/usr/bin chmod 0755 ${INSTALL}/usr/bin/m8c - mkdir -p ${INSTALL}/usr/config/modules cp -rf ${PKG_DIR}/scripts/* ${INSTALL}/usr/config/modules chmod 0755 ${INSTALL}/usr/config/modules/* + + if [ -d ${PKG_DIR}/config/${DEVICE} ] + then + cp -ra ${PKG_DIR}/config/${DEVICE}/* ${INSTALL}/usr/config/m8c/ + fi } diff --git a/packages/apps/m8c/scripts/Start M8C.sh b/packages/apps/m8c/scripts/Start M8C.sh index a20ac86abb..11be065d47 100755 --- a/packages/apps/m8c/scripts/Start M8C.sh +++ b/packages/apps/m8c/scripts/Start M8C.sh @@ -5,6 +5,23 @@ source /etc/profile -set_kill set "m8c" +set_kill set "-9 m8c" + +M8C_DIR="/storage/.local/share/m8c" +M8C_CONF_DIR="/usr/config/m8c" + +if [ ! -d ${M8C_DIR} ]; then + mkdir -p ${M8C_DIR} +fi + +if [ ! -f "${M8C_DIR}/config.ini" ]; then + if [ -f "${M8C_CONF_DIR}/${QUIRK_DEVICE}.ini" ]; then + cp "${M8C_CONF_DIR}/${QUIRK_DEVICE}" "${M8C_DIR}/config.ini" + else + if [ -f "${M8C_CONF_DIR}/config.ini" ]; then + cp "${M8C_CONF_DIR}/config.ini" "${M8C_DIR}/config.ini" + fi + fi +fi /usr/bin/m8c