X-Git-Url: http://cloudbase.mooo.com/gitweb/z180-stamp.git/blobdiff_plain/16af58eaba93819b09becadf7caae0df890baed0..3d8c1907ca892b69c101e168c14b5161e25d4471:/avr/cmd_boot.c diff --git a/avr/cmd_boot.c b/avr/cmd_boot.c index 14fbab3..a83968f 100644 --- a/avr/cmd_boot.c +++ b/avr/cmd_boot.c @@ -11,7 +11,6 @@ * Misc boot support */ #include "common.h" -#include #include #include @@ -19,6 +18,7 @@ #include "cli_readline.h" /* console_buffer[] */ #include "cli.h" /* run_command() */ #include "env.h" +#include "eval_arg.h" #include "con-utils.h" #include "getopt-min.h" #include "z80-if.h" @@ -156,7 +156,7 @@ command_ret_t do_bootcf(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[ boot_param.stages--; break; case 'a': - val = strtoul(optarg, NULL, 16); + val = eval_arg(optarg, NULL); if (val < 0x100 || val > 0xFE00) { printf_P(PSTR("Address out of range: 0x%.4lX\n"), val); return CMD_RET_FAILURE; @@ -164,7 +164,7 @@ command_ret_t do_bootcf(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[ boot_param.loadaddr = val; break; case 's': - val = strtoul(optarg, NULL, 16); + val = eval_arg(optarg, NULL); if (val > 255) { printf_P(PSTR("Start sector out of range: 0x%lX\n"), val); return CMD_RET_FAILURE; @@ -172,7 +172,7 @@ command_ret_t do_bootcf(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[ boot_param.sec_start = val; break; case 'c': - val = strtoul(optarg, NULL, 16); + val = eval_arg(optarg, NULL); if (val > 127) { printf_P(PSTR("Sector count out of range: 0x%lX\n"), val); return CMD_RET_FAILURE; @@ -180,7 +180,7 @@ command_ret_t do_bootcf(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[ boot_param.sec_cnt = val; break; case 't': - val = strtoul(optarg, NULL, 10); + val = eval_arg(optarg, NULL); if (val < 0x1 || val > 0xFFFF) { printf_P(PSTR("Timeout value out of range: 0x%lX\n"), val); return CMD_RET_FAILURE; @@ -188,7 +188,7 @@ command_ret_t do_bootcf(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[ boot_param.timeout = val; break; case 'i': - val = strtoul(optarg, NULL, 16); + val = eval_arg(optarg, NULL); if (val < 0x01 || val > 0xFF) { printf_P(PSTR("Partition id out of range: 0x%lX\n"), val); return CMD_RET_FAILURE; @@ -286,7 +286,7 @@ command_ret_t do_busreq_pulse(cmd_tbl_t *cmdtp, int flag, int argc, char * const } if (argc > 1) - count = (uint16_t) strtoul(argv[1], NULL, 16); + count = (uint16_t) eval_arg(argv[1], NULL); z80_bus_cmd(Request); while (count--) @@ -304,7 +304,7 @@ command_ret_t do_go(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) if (argc < 2) return CMD_RET_USAGE; - addr = strtoul(argv[1], NULL, 16); + addr = eval_arg(argv[1], NULL); if (addr >= (1UL<<16)) { printf_P(PSTR("## Startaddress 0x%05lx too high.\n" " (Out of logical address space (0x00000-0x0ffff))\n"),