|
@@ -58,8 +58,8 @@ static char *curchar;
|
|
|
|
|
|
/* Word lists */
|
|
|
static char command_words[] =
|
|
|
- "cd\0reset\0sreset\0dir\0ls\0test\0resume\0loadrom\0loadraw\0saveraw\0put\0rm\0mkdir\0d4\0vmode\0mapper\0settime\0time\0setfeature\0hexdump\0w8\0w16\0";
|
|
|
-enum { CMD_CD = 0, CMD_RESET, CMD_SRESET, CMD_DIR, CMD_LS, CMD_TEST, CMD_RESUME, CMD_LOADROM, CMD_LOADRAW, CMD_SAVERAW, CMD_PUT, CMD_RM, CMD_MKDIR, CMD_D4, CMD_VMODE, CMD_MAPPER, CMD_SETTIME, CMD_TIME, CMD_SETFEATURE, CMD_HEXDUMP, CMD_W8, CMD_W16 };
|
|
|
+ "cd\0reset\0sreset\0dir\0ls\0test\0exit\0loadrom\0loadraw\0saveraw\0put\0rm\0mkdir\0d4\0vmode\0mapper\0settime\0time\0setfeature\0hexdump\0w8\0w16\0memset\0";
|
|
|
+enum { CMD_CD = 0, CMD_RESET, CMD_SRESET, CMD_DIR, CMD_LS, CMD_TEST, CMD_EXIT, CMD_LOADROM, CMD_LOADRAW, CMD_SAVERAW, CMD_PUT, CMD_RM, CMD_MKDIR, CMD_D4, CMD_VMODE, CMD_MAPPER, CMD_SETTIME, CMD_TIME, CMD_SETFEATURE, CMD_HEXDUMP, CMD_W8, CMD_W16, CMD_MEMSET };
|
|
|
|
|
|
/* ------------------------------------------------------------------------- */
|
|
|
/* Parse functions */
|
|
@@ -420,6 +420,13 @@ void cmd_w16(void) {
|
|
|
sram_writeshort(val, offset);
|
|
|
}
|
|
|
|
|
|
+void cmd_memset(void) {
|
|
|
+ uint32_t offset = parse_unsigned(0, 16777215, 16);
|
|
|
+ uint32_t len = parse_unsigned(0, 16777216, 16);
|
|
|
+ uint8_t val = parse_unsigned(0, 255, 16);
|
|
|
+ sram_memset(offset, len, val);
|
|
|
+}
|
|
|
+
|
|
|
/* ------------------------------------------------------------------------- */
|
|
|
/* CLI interface functions */
|
|
|
/* ------------------------------------------------------------------------- */
|
|
@@ -502,7 +509,7 @@ void cli_loop(void) {
|
|
|
cmd_show_directory();
|
|
|
break;
|
|
|
|
|
|
- case CMD_RESUME:
|
|
|
+ case CMD_EXIT:
|
|
|
return;
|
|
|
break;
|
|
|
|
|
@@ -569,7 +576,11 @@ void cli_loop(void) {
|
|
|
case CMD_W16:
|
|
|
cmd_w16();
|
|
|
break;
|
|
|
- }
|
|
|
|
|
|
+ case CMD_MEMSET:
|
|
|
+ cmd_memset();
|
|
|
+ break;
|
|
|
+
|
|
|
+ }
|
|
|
}
|
|
|
}
|