extern void generic_mourn_inferior ();
extern struct target_ops nindy_ops;
-extern FILE *instream;
+extern GDB_FILE *instream;
extern struct ext_format ext_format_i960; /* i960-tdep.c */
extern char ninStopWhy ();
static void
nindy_files_info ()
{
- printf("\tAttached to %s at %d bps%s%s.\n", savename,
+ printf_unfiltered("\tAttached to %s at %d bps%s%s.\n", savename,
sr_get_baud_rate(),
nindy_old_protocol? " in old protocol": "",
nindy_initial_brk? " with initial break": "");
void
nindy_resume (pid, step, siggnal)
- int pid, step, siggnal;
+ int pid, step;
+ enum target_signal siggnal;
{
- if (siggnal != 0 && siggnal != stop_signal)
- error ("Can't send signals to remote NINDY targets.");
+ if (siggnal != TARGET_SIGNAL_0 && siggnal != stop_signal)
+ warning ("Can't send signals to remote NINDY targets.");
dcache_flush(nindy_dcache);
if ( regs_changed ){
}
/* Wait until the remote machine stops. While waiting, operate in passthrough
- * mode; i.e., pass everything NINDY sends to stdout, and everything from
+ * mode; i.e., pass everything NINDY sends to gdb_stdout, and everything from
* stdin to NINDY.
*
* Return to caller, storing status in 'status' just as `wait' would.
static int
nindy_wait( pid, status )
int pid;
- WAITTYPE *status;
+ struct target_waitstatus *status;
{
fd_set fds;
char buf[500]; /* FIXME, what is "500" here? */
struct cleanup *old_cleanups;
long ip_value, fp_value, sp_value; /* Reg values from stop */
- WSETEXIT( (*status), 0 );
+ status->kind = TARGET_WAITKIND_EXITED;
+ status->value.integer = 0;
/* OPERATE IN PASSTHROUGH MODE UNTIL NINDY SENDS A DLE CHARACTER */
if (stop_exit)
{
- /* User program exited */
- WSETEXIT ((*status), stop_code);
+ status->kind = TARGET_WAITKIND_EXITED;
+ status->value.integer = stop_code;
}
else
{
- /* Fault or trace */
- switch (stop_code)
- {
- case STOP_GDB_BPT:
- case TRACE_STEP:
- /* Breakpoint or single stepping. */
- stop_code = SIGTRAP;
- break;
- default:
- /* The target is not running Unix, and its faults/traces do
- not map nicely into Unix signals. Make sure they do not
- get confused with Unix signals by numbering them with
- values higher than the highest legal Unix signal. code
- in i960_print_fault(), called via PRINT_RANDOM_SIGNAL,
- will interpret the value. */
- stop_code += NSIG;
- break;
- }
- WSETSTOP ((*status), stop_code);
+ status->kind = TARGET_WAITKIND_STOPPED;
+ status->value.sig = i960_fault_to_signal (stop_code);
}
return inferior_pid;
}
while (current_target != &nindy_ops) { /* remote tty not specified yet */
if ( instream == stdin ){
- printf("\nAttach /dev/ttyNN -- specify NN, or \"quit\" to quit: ");
- fflush( stdout );
+ printf_unfiltered("\nAttach /dev/ttyNN -- specify NN, or \"quit\" to quit: ");
+ gdb_flush( gdb_stdout );
}
fgets( ttyname, sizeof(ttyname)-1, stdin );