static uint32_t tstamp;
if (get_timer(0) > tstamp) {
- printf_P(PSTR("\b%c"), swirlchar[cnt]);
- cnt = (cnt+1) % ARRAY_SIZE(swirlchar);
tstamp = get_timer(0) + 250;
+ putchar('\b');
+ cnt = (cnt+1) & 3;
+ putchar(swirlchar[cnt]);
}
}
}
#endif
if (!res) {
- my_puts_P(PSTR("\nCounting... "));
statp.AccSize = statp.AccFiles = statp.AccDirs = 0;
strcpy(buf, path);
+ my_puts_P(PSTR("\nCounting... "));
res = scan_files(buf, &statp);
+ putchar('\r');
}
if (!res) {
- printf_P(PSTR("\r%u files, %lu bytes.\n%u folders.\n"
+ printf_P(PSTR("%u files, %lu bytes.\n%u folders.\n"
"%lu KB total disk space.\n%lu KB available.\n"),
statp.AccFiles, statp.AccSize, statp.AccDirs,
(fs->n_fatent - 2) * (fs->csize / 2), nfreeclst * (fs->csize / 2)
cmd_tbl_t cmd_tbl_fat[] = {
CMD_TBL_ITEM(
- stat, 2, CTBL_RPT, do_stat,
+ status, 2, CTBL_RPT, do_stat,
"Show logical drive status",
"dev"
),
CMD_TBL_ITEM(
- pwd, 2, CTBL_RPT, do_pwd,
+ pwd, 2, CTBL_RPT|CTBL_SUBCMDAUTO, do_pwd,
"Print name of current/working directory",
""
),
CMD_TBL_ITEM(
- cd, 2, 0, do_cd,
+ cd, 2, 0|CTBL_SUBCMDAUTO, do_cd,
"Change the current/working directory.",
"path"
),
CMD_TBL_ITEM(
- ls, 2, CTBL_RPT, do_ls,
+ ls, 2, CTBL_RPT|CTBL_SUBCMDAUTO, do_ls,
"Directory listing",
"path"
),
/* This does not use the CMD_TBL_ITEM macro as ? can't be used in symbol names */
{FSTR("?"), CONFIG_SYS_MAXARGS, 1, do_help,
- FSTR("Alias for 'help'"),
+ NULL,
#ifdef CONFIG_SYS_LONGHELP
FSTR(""),
#endif /* CONFIG_SYS_LONGHELP */