mirror of
https://github.com/simh/simh.git
synced 2026-04-29 21:16:46 +00:00
FRONTPANEL: Fix support for DEBUG command to allow switches
This commit is contained in:
@@ -804,8 +804,14 @@ while (1) {
|
|||||||
printf("%s\n", history);
|
printf("%s\n", history);
|
||||||
}
|
}
|
||||||
else if (match_command ("DEBUG ", cmd, &arg)) {
|
else if (match_command ("DEBUG ", cmd, &arg)) {
|
||||||
if (sim_panel_device_debug_mode (panel, arg, 1, NULL))
|
if (arg[0] == '-') {
|
||||||
printf("Error setting debug mode: %s\n", sim_panel_get_error ());
|
if (sim_panel_device_debug_mode (panel, NULL, 1, arg))
|
||||||
|
printf("Error setting debug mode: %s\n", sim_panel_get_error ());
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
if (sim_panel_device_debug_mode (panel, arg, 1, NULL))
|
||||||
|
printf("Error setting debug mode: %s\n", sim_panel_get_error ());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else if ((match_command ("EXIT", cmd, NULL)) || (match_command ("QUIT", cmd, NULL)))
|
else if ((match_command ("EXIT", cmd, NULL)) || (match_command ("QUIT", cmd, NULL)))
|
||||||
goto Done;
|
goto Done;
|
||||||
|
|||||||
@@ -1792,8 +1792,9 @@ if (!panel || (panel->State == Error)) {
|
|||||||
sim_panel_set_error (NULL, "Invalid Panel");
|
sim_panel_set_error (NULL, "Invalid Panel");
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
if (_panel_sendf (panel, &cmd_stat, &response, "SHOW %s", device) ||
|
if ((device != NULL) &&
|
||||||
(cmd_stat)) {
|
((_panel_sendf (panel, &cmd_stat, &response, "SHOW %s", device) ||
|
||||||
|
(cmd_stat)))) {
|
||||||
sim_panel_set_error (NULL, "Can't %s Debug Mode: '%s' on Device '%s': %s",
|
sim_panel_set_error (NULL, "Can't %s Debug Mode: '%s' on Device '%s': %s",
|
||||||
set_unset ? "Enable" : "Disable", mode_bits ? mode_bits : "", device, response);
|
set_unset ? "Enable" : "Disable", mode_bits ? mode_bits : "", device, response);
|
||||||
free (response);
|
free (response);
|
||||||
@@ -1802,7 +1803,7 @@ if (_panel_sendf (panel, &cmd_stat, &response, "SHOW %s", device) ||
|
|||||||
free (response);
|
free (response);
|
||||||
response = NULL;
|
response = NULL;
|
||||||
if (_panel_sendf (panel, &cmd_stat, &response, "%sDEBUG %s %s",
|
if (_panel_sendf (panel, &cmd_stat, &response, "%sDEBUG %s %s",
|
||||||
set_unset ? "" : "NO", device, mode_bits ? mode_bits : "") ||
|
set_unset ? "" : "NO", device ? device : "", mode_bits ? mode_bits : "") ||
|
||||||
(cmd_stat)) {
|
(cmd_stat)) {
|
||||||
sim_panel_set_error (NULL, "Can't %s Debug Mode: '%s' on Device '%s': %s",
|
sim_panel_set_error (NULL, "Can't %s Debug Mode: '%s' on Device '%s': %s",
|
||||||
set_unset ? "Enable" : "Disable", mode_bits ? mode_bits : "", device, response);
|
set_unset ? "Enable" : "Disable", mode_bits ? mode_bits : "", device, response);
|
||||||
|
|||||||
Reference in New Issue
Block a user