1
0
mirror of https://github.com/simh/simh.git synced 2026-04-25 19:51:25 +00:00

Remote Console: Fixed logic to enter Multi-Command mode (i.e. HALT execution) when input data is queued.

This commit is contained in:
Mark Pizzolato
2015-02-15 11:54:48 -08:00
parent 335def0d32
commit 8789172e4a

View File

@@ -908,6 +908,8 @@ for (i=(was_active_command ? sim_rem_cmd_active_line : 0);
strcpy (cbuf, sim_rem_buf[i]); strcpy (cbuf, sim_rem_buf[i]);
sim_rem_buf_ptr[i] = 0; sim_rem_buf_ptr[i] = 0;
sim_rem_buf[i][sim_rem_buf_ptr[i]] = '\0'; sim_rem_buf[i][sim_rem_buf_ptr[i]] = '\0';
while (isspace(cbuf[0]))
memmove (cbuf, cbuf+1, strlen(cbuf+1)+1); /* skip leading whitespace */
if (cbuf[0] == '\0') { if (cbuf[0] == '\0') {
if (sim_rem_single_mode[i]) { if (sim_rem_single_mode[i]) {
sim_rem_single_mode[i] = FALSE; sim_rem_single_mode[i] = FALSE;
@@ -916,8 +918,6 @@ for (i=(was_active_command ? sim_rem_cmd_active_line : 0);
else else
continue; continue;
} }
while (isspace(cbuf[0]))
memmove (cbuf, cbuf+1, strlen(cbuf+1)+1); /* skip leading whitespace */
strcpy (sim_rem_command_buf, cbuf); strcpy (sim_rem_command_buf, cbuf);
sim_sub_args (cbuf, sizeof(cbuf), argv); sim_sub_args (cbuf, sizeof(cbuf), argv);
cptr = cbuf; cptr = cbuf;
@@ -936,8 +936,13 @@ for (i=(was_active_command ? sim_rem_cmd_active_line : 0);
sim_rem_cmd_log_start = sim_ftell (sim_log); sim_rem_cmd_log_start = sim_ftell (sim_log);
basecmdp = find_cmd (gbuf); /* validate basic command */ basecmdp = find_cmd (gbuf); /* validate basic command */
if (basecmdp == NULL) { if (basecmdp == NULL) {
if ((gbuf[0] == ';') || (gbuf[0] == '#')) /* ignore comment */ if ((gbuf[0] == ';') || (gbuf[0] == '#')) { /* ignore comment */
stat = SCPE_OK; sim_rem_cmd_active_line = i;
was_active_command = TRUE;
sim_rem_active_command = &allowed_single_remote_cmds[0];/* Dummy */
i = i - 1;
break;
}
else else
stat = SCPE_UNK; stat = SCPE_UNK;
} }