OpenCores
URL https://opencores.org/ocsvn/openrisc_2011-10-31/openrisc_2011-10-31/trunk

Subversion Repositories openrisc_2011-10-31

[/] [openrisc/] [tags/] [gnu-src/] [newlib-1.18.0/] [newlib-1.18.0-or32-1.0rc1/] [libgloss/] [mep/] [read.c] - Diff between revs 207 and 345

Only display areas with differences | Details | Blame | View Log

Rev 207 Rev 345
/* read.c -- read characters from file, with hook.
/* read.c -- read characters from file, with hook.
 *
 *
 * Copyright (c) 2003  Red Hat, Inc. All rights reserved.
 * Copyright (c) 2003  Red Hat, Inc. All rights reserved.
 *
 *
 * This copyrighted material is made available to anyone wishing to use, modify,
 * This copyrighted material is made available to anyone wishing to use, modify,
 * copy, or redistribute it subject to the terms and conditions of the BSD
 * copy, or redistribute it subject to the terms and conditions of the BSD
 * License.  This program is distributed in the hope that it will be useful,
 * License.  This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY expressed or implied, including the implied
 * but WITHOUT ANY WARRANTY expressed or implied, including the implied
 * warranties of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  A copy
 * warranties of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  A copy
 * of this license is available at http://www.opensource.org/licenses. Any
 * of this license is available at http://www.opensource.org/licenses. Any
 * Red Hat trademarks that are incorporated in the source code or documentation
 * Red Hat trademarks that are incorporated in the source code or documentation
 * are not subject to the BSD License and may only be used or replicated with
 * are not subject to the BSD License and may only be used or replicated with
 * the express permission of Red Hat, Inc.
 * the express permission of Red Hat, Inc.
 */
 */
 
 
extern int __mep_read(int, unsigned char *, int);
extern int __mep_read(int, unsigned char *, int);
extern int _ioIn(void) __attribute__((weak));
extern int _ioIn(void) __attribute__((weak));
 
 
int
int
read(int fd, unsigned char *buf, int count)
read(int fd, unsigned char *buf, int count)
{
{
  if (fd == 0 && &_ioIn)
  if (fd == 0 && &_ioIn)
    {
    {
      int c = 0;
      int c = 0;
      while (c < count)
      while (c < count)
        {
        {
          int ch = _ioIn();
          int ch = _ioIn();
          *buf++ = ch;
          *buf++ = ch;
          if (ch == -1)
          if (ch == -1)
            break;
            break;
          c ++;
          c ++;
        }
        }
      return c;
      return c;
    }
    }
  return __mep_read(fd, buf, count);
  return __mep_read(fd, buf, count);
}
}
 
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.