X-Git-Url: http://cloudbase.mooo.com/gitweb/z180-stamp.git/blobdiff_plain/d684c21619905153eff68c43927207248925f6c2..4bc81323e51ac138e733c14eeb6f283ae706e904:/avr/command_tbl.c diff --git a/avr/command_tbl.c b/avr/command_tbl.c index c0579bc..69f6273 100644 --- a/avr/command_tbl.c +++ b/avr/command_tbl.c @@ -2,17 +2,47 @@ #include "common.h" #include "command.h" - +#include "cmd_mem.h" extern int do_help(cmd_tbl_t *, int, int, char * const []); extern int do_echo(cmd_tbl_t *, int, int, char * const []); extern int do_env_print(cmd_tbl_t *, int, int, char * const []); extern int do_env_set(cmd_tbl_t *, int, int, char * const []); +extern int do_env_save(cmd_tbl_t *, int, int, char * const []); +extern int do_loadf(cmd_tbl_t *, int, int, char * const []); +extern int do_go(cmd_tbl_t *, int, int, char * const []); +extern int do_restart(cmd_tbl_t *, int, int, char * const []); +extern int do_dump_mem(cmd_tbl_t *, int, int, char * const []); +extern int do_eep_cp(cmd_tbl_t *, int, int, char * const []); +extern int do_busreq_pulse(cmd_tbl_t *, int, int, char * const []); cmd_tbl_t cmd_tbl[] = { +#ifdef DEBUG +CMD_TBL_ITEM( + !mdr, 3, 1, do_dump_mem, + "RAM dump", + "address [count]" +), +CMD_TBL_ITEM( + !mde, 3, 1, do_dump_mem, + "EEPROM dump", + "address [count]" +), +CMD_TBL_ITEM( + !cpe, 4, 0, do_eep_cp, + "EEPROM copy", + "source target count" +), +#endif +CMD_TBL_ITEM( + mstep, 2, 1, do_busreq_pulse, + "execute one M cycle", + "[count]\n" + " - repeat count times" +), CMD_TBL_ITEM( echo, CONFIG_SYS_MAXARGS, 1, do_echo, "echo args to console", @@ -29,7 +59,8 @@ CMD_TBL_ITEM_COMPLETE( CMD_TBL_ITEM_COMPLETE( printenv, CONFIG_SYS_MAXARGS, 1, do_env_print, "print environment variables", - "\n - print [all] values of all environment variables\n" + "\n" + " - print values of all environment variables\n" "printenv name ...\n" " - print value of environment variable 'name'", var_complete @@ -37,12 +68,115 @@ CMD_TBL_ITEM_COMPLETE( CMD_TBL_ITEM_COMPLETE( setenv, CONFIG_SYS_MAXARGS, 0, do_env_set, "set environment variables", - "[-f] name value ...\n" - " - [forcibly] set environment variable 'name' to 'value ...'\n" - "setenv [-f] name\n" - " - [forcibly] delete environment variable 'name'", + "name value ...\n" + " - set environment variable 'name' to 'value ...'\n" + "setenv name\n" + " - delete environment variable 'name'", var_complete ), +CMD_TBL_ITEM( + saveenv, 1, 0, do_env_save, + "save environment variables to persistent storage", + "" +), + +CMD_TBL_ITEM( + loadf, 1, 0, do_loadf, + "load srec_cat prepared image from controller flash", + "" +), +CMD_TBL_ITEM( + go, 2, 0, do_go, + "start application at address 'addr'", + "addr\n" + " - start application at address 'addr'" +// "\n" +// " passing 'arg' as arguments" +), +CMD_TBL_ITEM( + reset, 1, 0, do_reset, + "Keep CPU in RESET state", + "" +), +CMD_TBL_ITEM( + restart, 1, 0, do_restart, + "Perform RESET of the CPU", + "" +), + +CMD_TBL_ITEM( + md, 3, 1, do_mem_md, + "memory display", + "address [# of objects]" +), +CMD_TBL_ITEM( + mm, 2, 1, do_mem_mm, + "memory modify (auto-incrementing address)", + "address" +), +CMD_TBL_ITEM( + nm, 2, 1, do_mem_nm, + "memory modify (constant address)", + "address" +), +CMD_TBL_ITEM( + mw, 4, 1, do_mem_mw, + "memory write (fill)", + "address value [count]" +), +CMD_TBL_ITEM( + cp, 4, 1, do_mem_cp, + "memory copy", + "source target count" +), +CMD_TBL_ITEM( + cmp, 4, 1, do_mem_cmp, + "memory compare", + "addr1 addr2 count" +), +CMD_TBL_ITEM( + base, 2, 1, do_mem_base, + "print or set address offset", + "\n" + " - print address offset for memory commands\n" + "base offset\n" + " - set address offset for memory commands to 'offset'" +), +CMD_TBL_ITEM( + loop, 3, 1, do_mem_loop, + "infinite loop on address range", + "address number_of_bytes" +), +#ifdef CONFIG_LOOPW +CMD_TBL_ITEM( + loopw, 4, 1, do_mem_loopw, + "infinite write loop on address range", + "address number_of_bytes data_to_write" +), +#endif /* CONFIG_LOOPW */ + +#ifdef CONFIG_CMD_MEMTEST +CMD_TBL_ITEM( + mtest, 5, 1, do_mem_mtest, + "simple RAM read/write test", + "[start [end [pattern [iterations]]]]" +), +#endif /* CONFIG_CMD_MEMTEST */ + +#ifdef CONFIG_MX_CYCLIC +CMD_TBL_ITEM( + mdc, 4, 1, do_mem_mdc, + "memory display cyclic", + "address count delay(ms)" +), +CMD_TBL_ITEM( + mwc, 4, 1, do_mem_mwc, + "memory write cyclic", + "address value delay(ms)" +), +#endif /* CONFIG_MX_CYCLIC */ + + CMD_TBL_ITEM( help, CONFIG_SYS_MAXARGS, 1, do_help, "print command description/usage", @@ -52,7 +186,7 @@ CMD_TBL_ITEM( " - print detailed usage of 'command'" ), -/* This does not use the U_BOOT_CMD macro as ? can't be used in symbol names */ +/* 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'"), #ifdef CONFIG_SYS_LONGHELP @@ -65,12 +199,3 @@ CMD_TBL_ITEM( /* Mark end of table */ { 0 }, }; - - - - - - - - -