static int
es1800_wait PARAMS ((WAITTYPE *));
-static void
-es1800_resume PARAMS ((int, int, int));
+static void es1800_resume PARAMS ((int, int, enum target_signal));
static void
es1800_detach PARAMS ((char *, int));
es1800_resume (pid, step, siggnal)
int pid;
int step;
- int siggnal;
+ enum target_signal siggnal;
{
char buf[PBUFSIZ];
static int
es1800_wait (status)
- WAITTYPE *status;
+ struct target_waitstatus *status;
{
unsigned char buf[PBUFSIZ];
int old_timeout = timeout;
- WSETEXIT ((*status), 0);
+ status->kind = TARGET_WAITKIND_EXITED;
+ status->value.integer = 0;
+
timeout = 0; /* Don't time out -- user program is running. */
if (!setjmp (interrupt))
{
getmessage (buf, sizeof(buf));
if (strncmp ( buf, "\r\n* BREAK *", 11) == 0)
{
- WSETSTOP ((*status), SIGTRAP);
+ status->kind = TARGET_WAITKIND_STOPPED;
+ status->value.sig = TARGET_SIGNAL_TRAP;
send_command ("STP"); /* Restore stack and PC and such */
if (m68020)
{
}
if (strncmp (buf, "STP\r\n ", 6) == 0)
{
- WSETSTOP ((*status), SIGTRAP);
+ status->kind = TARGET_WAITKIND_STOPPED;
+ status->value.sig = TARGET_SIGNAL_TRAP;
break;
}
if (buf[strlen (buf) - 2] == 'R')
else
{
printf ("Unexpected stop: \n%s\n", buf);
- WSETSTOP ((*status), SIGQUIT);
+ status->kind = TARGET_WAITKIND_STOPPED;
+ status->value.sig = TARGET_SIGNAL_QUIT;
break;
}
}
old_sigint = signal (SIGINT, es1800_request_quit);
send_command ("STP");
printf (" emulator stopped\n");
- WSETSTOP ((*status), SIGINT);
+ status->kind = TARGET_WAITKIND_STOPPED;
+ status->value.sig = TARGET_SIGNAL_INT;
}
else
{