FreeCalypso > hg > freecalypso-tools
diff rvinterf/tmsh/audiocmd.c @ 69:2159f260ed13
fc-tmsh: all commands internally return values
in preparation for adding one-shot mode of operation
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Wed, 26 Oct 2016 23:17:03 +0000 |
parents | ea061975c883 |
children | 86e4d8aea021 |
line wrap: on
line diff
--- a/rvinterf/tmsh/audiocmd.c Wed Oct 26 22:56:29 2016 +0000 +++ b/rvinterf/tmsh/audiocmd.c Wed Oct 26 23:17:03 2016 +0000 @@ -10,8 +10,8 @@ #include "limits.h" #include "localtypes.h" #include "etm.h" +#include "exitcodes.h" -void cmd_audio_load(argc, argv) char **argv; { @@ -21,7 +21,7 @@ slen = strlen(argv[1]); if (slen > 9) { printf("error: audio config name is limited to 9 chars\n"); - return; + return(ERROR_USAGE); } dp = cmdpkt + 1; *dp++ = ETM_AUDIO; @@ -29,9 +29,9 @@ strcpy(dp, argv[1]); dp += slen + 1; send_etm_cmd(cmdpkt, dp - cmdpkt - 1); + return(0); } -void cmd_audio_save(argc, argv) char **argv; { @@ -41,7 +41,7 @@ slen = strlen(argv[1]); if (slen > 9) { printf("error: audio config name is limited to 9 chars\n"); - return; + return(ERROR_USAGE); } dp = cmdpkt + 1; *dp++ = ETM_AUDIO; @@ -49,20 +49,20 @@ strcpy(dp, argv[1]); dp += slen + 1; send_etm_cmd(cmdpkt, dp - cmdpkt - 1); + return(0); } static struct cmdtab { char *cmd; int minargs; int maxargs; - void (*func)(); + int (*func)(); } audio_cmds[] = { {"load", 1, 1, cmd_audio_load}, {"save", 1, 1, cmd_audio_save}, {0, 0, 0, 0} }; -void cmd_audio(argc, argv) char **argv; { @@ -74,16 +74,16 @@ break; if (!tp->func) { printf("error: no such audio command\n"); - return; + return(ERROR_USAGE); } extargs = argc - 2; if (extargs > tp->maxargs) { printf("error: too many arguments\n"); - return; + return(ERROR_USAGE); } if (extargs < tp->minargs) { printf("error: too few arguments\n"); - return; + return(ERROR_USAGE); } - tp->func(argc - 1, argv + 1); + return tp->func(argc - 1, argv + 1); }