summaryrefslogtreecommitdiffstats
path: root/firmware/export
diff options
context:
space:
mode:
Diffstat (limited to 'firmware/export')
-rw-r--r--firmware/export/config/sansae200.h11
-rw-r--r--firmware/export/mi4-loader.h19
2 files changed, 27 insertions, 3 deletions
diff --git a/firmware/export/config/sansae200.h b/firmware/export/config/sansae200.h
index e03784a204..59e531241f 100644
--- a/firmware/export/config/sansae200.h
+++ b/firmware/export/config/sansae200.h
@@ -8,6 +8,12 @@
#define HW_SAMPR_CAPS (SAMPR_CAP_48 | SAMPR_CAP_44 | SAMPR_CAP_32)
+/* Define if boot data from bootloader has been enabled for the target */
+#define HAVE_BOOTDATA
+
+/* define boot redirect file name allows booting from external drives */
+#define BOOT_REDIR "rockbox_main.e200"
+
/* define this if you have recording possibility */
#define HAVE_RECORDING
@@ -178,11 +184,10 @@
#define FIRMWARE_OFFSET_FILE_CRC 0x0
#define FIRMWARE_OFFSET_FILE_DATA 0x8
-#ifndef BOOTLOADER
#define HAVE_MULTIDRIVE
+//#define HAVE_MULTIVOLUME
#define NUM_DRIVES 2
-#define HAVE_HOTSWAP
-#endif
+#define HAVE_HOTSWAP /* required to access sd from bootloader */
/* USB On-the-go */
#define CONFIG_USBOTG USBOTG_ARC
diff --git a/firmware/export/mi4-loader.h b/firmware/export/mi4-loader.h
index 1b4a4b93b2..f66164ec2c 100644
--- a/firmware/export/mi4-loader.h
+++ b/firmware/export/mi4-loader.h
@@ -49,3 +49,22 @@ struct tea_key {
int load_mi4(unsigned char* buf, const char* firmware, unsigned int buffer_size);
const char *mi4_strerror(int8_t errno);
+
+#ifdef HAVE_MULTIBOOT /* defined by config.h */
+/* Check in root of this <volume> for rockbox_main.<playername>
+ * if this file empty or there is a single slash '/'
+ * buf = '<volume#>/<rootdir>/<firmware(name)>\0'
+ * If instead '/<*DIRECTORY*>' is supplied
+ * addpath will be set to this DIRECTORY buf =
+ * '/<volume#>/addpath/<rootdir>/<firmware(name)>\0'
+ * On error returns Negative number or 0
+ * On success returns bytes from snprintf
+ * and generated path will be placed in buf
+ * note: if supplied buffer is too small return will be
+ * the number of bytes that would have been written
+ */
+
+/* TODO needs mapped back to debug_menu if root redirect ever becomes a reality */
+int get_redirect_dir(char* buf, int buffer_size, int volume,
+ const char* rootdir, const char* firmware);
+#endif