summaryrefslogtreecommitdiff
path: root/src/openocd.c
diff options
context:
space:
mode:
authoroharboe <oharboe@b42882b7-edfa-0310-969c-e2dbd0fdcd60>2008-07-17 08:34:14 +0000
committeroharboe <oharboe@b42882b7-edfa-0310-969c-e2dbd0fdcd60>2008-07-17 08:34:14 +0000
commit44928321e6d4d67bcb3da7022ff9d23e0c8ee78b (patch)
treeea659ff38e179ee9b2513664a7dbf4958ba37e56 /src/openocd.c
parent6af107855dd590a054b7bd610dadf3f7210c352c (diff)
downloadopenocd+libswd-44928321e6d4d67bcb3da7022ff9d23e0c8ee78b.tar.gz
openocd+libswd-44928321e6d4d67bcb3da7022ff9d23e0c8ee78b.tar.bz2
openocd+libswd-44928321e6d4d67bcb3da7022ff9d23e0c8ee78b.tar.xz
openocd+libswd-44928321e6d4d67bcb3da7022ff9d23e0c8ee78b.zip
Charles Hardin <ckhardin@gmail.com> and Øyvind Harboe
This patch just uses the command.c interface to create tcl commands for the root level commands and avoids a bit of the "TCL" bleed into the rest of the openocd code. Multilevel commands also supported. git-svn-id: svn://svn.berlios.de/openocd/trunk@818 b42882b7-edfa-0310-969c-e2dbd0fdcd60
Diffstat (limited to 'src/openocd.c')
-rw-r--r--src/openocd.c52
1 files changed, 0 insertions, 52 deletions
diff --git a/src/openocd.c b/src/openocd.c
index 3090bc44..1a3adc61 100644
--- a/src/openocd.c
+++ b/src/openocd.c
@@ -486,12 +486,6 @@ static int Jim_Command_array2mem(Jim_Interp *interp, int argc, Jim_Obj *const *a
return JIM_OK;
}
-static void tcl_output(void *privData, const char *file, int line, const char *function, const char *string)
-{
- Jim_Obj *tclOutput=(Jim_Obj *)privData;
-
- Jim_AppendString(interp, tclOutput, string, strlen(string));
-}
static int openocd_retval;
@@ -547,48 +541,6 @@ int jim_command(command_context_t *context, char *line)
return retval;
}
-int startLoop = 0;
-
-static int Jim_Command_openocd_ignore(Jim_Interp *interp, int argc, Jim_Obj *const *argv, int ignore)
-{
- int retval;
- char *cmd = (char*)Jim_GetString(argv[1], NULL);
-
- Jim_Obj *tclOutput = Jim_NewStringObj(interp, "", 0);
-
- if (startLoop)
- {
- /* We don't know whether or not the telnet/gdb server is running... */
- target_call_timer_callbacks_now();
- }
-
- log_add_callback(tcl_output, tclOutput);
- retval=command_run_line_internal(active_cmd_ctx, cmd);
-
- /* we need to be able to get at the retval, so we store in a global variable */
- openocd_retval=retval;
-
- if (startLoop)
- {
- target_call_timer_callbacks_now();
- }
- log_remove_callback(tcl_output, tclOutput);
-
- Jim_SetResult(interp, tclOutput);
-
- return (ignore||(retval==ERROR_OK))?JIM_OK:JIM_ERR;
-}
-
-static int Jim_Command_openocd(Jim_Interp *interp, int argc, Jim_Obj *const *argv)
-{
- return Jim_Command_openocd_ignore(interp, argc, argv, 1);
-}
-
-static int Jim_Command_openocd_throw(Jim_Interp *interp, int argc, Jim_Obj *const *argv)
-{
- return Jim_Command_openocd_ignore(interp, argc, argv, 0);
-}
-
/* find full path to file */
static int Jim_Command_find(Jim_Interp *interp, int argc, Jim_Obj *const *argv)
{
@@ -722,8 +674,6 @@ extern unsigned const char startup_tcl[];
void initJim(void)
{
- Jim_CreateCommand(interp, "openocd", Jim_Command_openocd, NULL, NULL);
- Jim_CreateCommand(interp, "openocd_throw", Jim_Command_openocd_throw, NULL, NULL);
Jim_CreateCommand(interp, "openocd_find", Jim_Command_find, NULL, NULL);
Jim_CreateCommand(interp, "echo", Jim_Command_echo, NULL, NULL);
Jim_CreateCommand(interp, "mem2array", Jim_Command_mem2array, NULL, NULL );
@@ -843,8 +793,6 @@ int openocd_main(int argc, char *argv[])
if (daemon_startup)
command_run_line(cmd_ctx, "reset");
- startLoop=1;
-
/* handle network connections */
server_loop(cmd_ctx);