]> cloudbase.mooo.com Git - z180-stamp.git/blobdiff - avr/cmd_loadcpm3.c
Remove extern declarations from command_tbl.c, create .h files for that.
[z180-stamp.git] / avr / cmd_loadcpm3.c
index 6b2f62fe320f9f4665e5b3fecb22d4a30697f411..39e3278eee9def269fd31e3892ee5438a70c0ae6 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * (C) Copyright 2015 Leo C. <erbl259-lmu@yahoo.de>
+ * (C) Copyright 2015,2016 Leo C. <erbl259-lmu@yahoo.de>
  *
  * SPDX-License-Identifier:    GPL-2.0
  */
@@ -8,15 +8,12 @@
  * See CP/M 3 System Manual, Appendix D: CPM3.SYS File Format
  */
 
-#include "common.h"
-#include <stdlib.h>
+#include "cmd_loadcpm3.h"
 #include <ctype.h>
-#include <string.h>
-#include <stdbool.h>
 
-#include "command.h"
 #include "env.h"
 #include "ff.h"
+#include "eval_arg.h"
 #include "con-utils.h"
 #include "z80-if.h"
 #include "debug.h"
@@ -63,7 +60,7 @@ int load(FIL *File, uint32_t addr, uint8_t len)
 
 #pragma GCC diagnostic ignored "-Wmaybe-uninitialized"
 
-command_ret_t do_loadcpm3(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
+command_ret_t do_loadcpm3(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[])
 {
        uint16_t mem_top;
        uint8_t res_len;
@@ -88,11 +85,11 @@ command_ret_t do_loadcpm3(cmd_tbl_t *cmdtp, int flag, int argc, char * const arg
                                                CONFIG_CPM3_BANKED_BASE);
 
        if (argc > 3)
-               banked_base = strtoul(argv[3], NULL, 16);
+               banked_base = eval_arg(argv[3], NULL);
        if (argc > 2)
-               common_base = strtoul(argv[2], NULL, 16);
+               common_base = eval_arg(argv[2], NULL);
 
-       fname = getenv_char(PSTR(ENV_CPM3_SYSFILE));
+       fname = getenv_str(PSTR(ENV_CPM3_SYSFILE));
        if (argc > 1) {
                fname = argv[1];
        }