summaryrefslogtreecommitdiff
path: root/apps
diff options
context:
space:
mode:
authorWilliam Wilgus <wilgus.william@gmail.com>2022-03-03 22:08:28 -0500
committerWilliam Wilgus <wilgus.william@gmail.com>2022-03-03 22:08:28 -0500
commitc9857098ac0a3173d5d03baa3c32d9a8e29faec8 (patch)
tree3b3baeb89a9bb6440ad4518f5363338ca820cf29 /apps
parentc7bbd5b0902d7efc2fd204f2aa4ac8881c5a97be (diff)
downloadrockbox-c9857098ac0a3173d5d03baa3c32d9a8e29faec8.tar.gz
rockbox-c9857098ac0a3173d5d03baa3c32d9a8e29faec8.zip
Multiboot Firmware Root Redirect - WIP
Loads external drive into root namespace Root Redirects can now be put into different folders For instance placing '/_test' into SD1/rockbox_main.<playername> will redirect to /<1>/_test/.rockbox Debug menu>Bootdata now has root directory listed in addition to RAW Bootdata Redirect root work from Michael Sevakis g#1556, RESTORED -> g#4256 Change-Id: Ia97cf50ff5f5b440877f9c005da6f12c53af931e
Diffstat (limited to 'apps')
-rw-r--r--apps/debug_menu.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/apps/debug_menu.c b/apps/debug_menu.c
index 3a9218bc84..1b341a96e4 100644
--- a/apps/debug_menu.c
+++ b/apps/debug_menu.c
@@ -128,6 +128,9 @@
128 128
129#if defined(HAVE_BOOTDATA) && !defined(SIMULATOR) 129#if defined(HAVE_BOOTDATA) && !defined(SIMULATOR)
130#include "bootdata.h" 130#include "bootdata.h"
131#include "rbpaths.h"
132#include "pathfuncs.h"
133#include "rb-loader.h"
131#endif 134#endif
132 135
133static const char* threads_getname(int selected_item, void *data, 136static const char* threads_getname(int selected_item, void *data,
@@ -2530,12 +2533,17 @@ static bool dbg_boot_data(void)
2530 simplelist_set_line_count(0); 2533 simplelist_set_line_count(0);
2531 crc = crc_32(boot_data.payload, boot_data.length, 0xffffffff); 2534 crc = crc_32(boot_data.payload, boot_data.length, 0xffffffff);
2532#if defined(HAVE_MULTIBOOT) 2535#if defined(HAVE_MULTIBOOT)
2536 char rootpath[VOL_MAX_LEN+2] = RB_ROOT_CONTENTS_DIR;
2533 int boot_volume = 0; 2537 int boot_volume = 0;
2534 if(crc == boot_data.crc) 2538 if(crc == boot_data.crc)
2535 { 2539 {
2536 boot_volume = boot_data.boot_volume; /* boot volume contained in uint8_t payload */ 2540 boot_volume = boot_data.boot_volume; /* boot volume contained in uint8_t payload */
2541 get_redirect_dir(rootpath, sizeof(rootpath), boot_volume, "", "");
2542 rootpath[path_strip_trailing_separators(rootpath,NULL)] = '\0';
2537 } 2543 }
2538 simplelist_addline("Boot Volume: <%lu>", boot_volume); 2544 simplelist_addline("Boot Volume: <%lu>", boot_volume);
2545 simplelist_addline("Root:");
2546 simplelist_addline("%s", rootpath);
2539 simplelist_addline(""); 2547 simplelist_addline("");
2540#endif 2548#endif
2541 simplelist_addline("Bootdata RAW:"); 2549 simplelist_addline("Bootdata RAW:");