* run.c (sim_callback_write_stdout): New.

* interp.c (trap): Call sim_callback_write_stdout when needed.
This commit is contained in:
Steve Chamberlain 1995-09-20 16:52:52 +00:00
parent f69e888e4d
commit 5897a29e88
3 changed files with 17 additions and 1 deletions

View File

@ -1,3 +1,8 @@
Wed Sep 20 09:51:50 1995 steve chamberlain <sac@slash.cygnus.com>
* run.c (sim_callback_write_stdout): New.
* interp.c (trap): Call sim_callback_write_stdout when needed.
Mon Sep 18 18:42:27 1995 steve chamberlain <sac@slash.cygnus.com>
* interp.c (trap): Remove useless code.

View File

@ -506,7 +506,10 @@ trap (i, regs, memory, maskl, maskw, little_endian)
regs[0] = read (regs[5], ptr (regs[6]), regs[7]);
break;
case SYS_write:
regs[0] = write (regs[5], ptr (regs[6]), regs[7]);
if (regs[5] == 1)
regs[0] = sim_callback_write_stdout (ptr(regs[6]), regs[7]);
else
regs[0] = write (regs[5], ptr (regs[6]), regs[7]);
break;
case SYS_lseek:
regs[0] = lseek (regs[5], regs[6], regs[7]);

View File

@ -165,3 +165,11 @@ printf_filtered (va_alist)
vfprintf (stdout, format, args);
va_end (args);
}
int
sim_callback_write_stdout (arg, len)
char *arg;
int len;
{
return write (1, arg, len);
}