- 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:
+10
-6
@@ -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;
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user