home *** CD-ROM | disk | FTP | other *** search
- /* INPUT_(ss, n, filenum) -- reads n bytes from filenum into a string
-
- Copyright (c) 1983, 1984 by JMI Software Consultants, Inc.
- */
- #include "bio.h"
- #include "host.h"
-
- TEXT *INPUT_(ss, n, filenum)
- TEXT **ss;
- COUNT n, filenum;
- {
- IMPORT BF **bfiles;
- IMPORT INT rr_input, strlpfx;
- EXFUNC TEXT *s_new();
- IMPORT TEXT brd_get();
- IMPORT COUNT brd_slot;
- TEXT *s;
- BF *b;
-
- if (n < 0)
- {
- xerror(12, "INPUT_");
- return (NULLSTR);
- }
- *ss = s_new(*ss, n);
- s = *ss + strlpfx;
- if (filenum == -1)
- rawread(sf_IN, s, n, rr_input);
- else
- {
- brd_slot = fset(filenum);
- b = bfiles[brd_slot];
- if (b->bf_flags & bf_KYBD)
- rawread(b->bf_fd, s, n, rr_input);
- else
- while (n--)
- *s++ = brd_get();
- }
- return (*ss);
- }