- fixed file descriptor table

- abstract I/O to mips_dbg



git-svn-id: http://moon:8086/svn/mips@73 a8ebac50-d88d-4704-bea3-6648445a41b3
This commit is contained in:
2017-01-11 22:23:45 +00:00
parent f9eb889616
commit 06f7be107b
7 changed files with 230 additions and 103 deletions
+10 -6
View File
@@ -331,10 +331,14 @@ int read(int file, char *ptr, int len)
{
int i;
char c;
// sputs("read (file="); print_word(file); sputs(", len ="); print_word(len); sputs(")\n");
i = 0;
int fd_out = file;
if (file == 0)
{
fd_out = 1;
}
i = 0;
while (i < len)
{
c = readchar(file);
@@ -344,14 +348,14 @@ int read(int file, char *ptr, int len)
if ((c == 0x0D) || (c == 0x0A))
{
writechar(file, 0x0D);
writechar(fd_out, 0x0D);
ptr[i++] = 0x0D;
writechar(file, 0x0A);
writechar(fd_out, 0x0A);
ptr[i++] = 0x0A;
break;
}
writechar(file, c);
writechar(fd_out, c);
ptr[i++] = c;
}