#ifdef	ournix
#include "ournix.h"
#endif
char sccsID[] = "@(#) cat.c V0.0 Copyright http://www.berklix.com (pjc) 1987\n" ;
#include <stdio.h>

typedef char FLAG ;
FLAG	slow = 0 ;
char	**ARGV ;
main(argc, argv)
	int argc ;
	char	**argv;

	{
	FILE	*fp;
	char	*p;

	ARGV = argv ;
#ifdef	VSL	/* { */
#include	"../../include/vsl.h"
#endif		/* } */
	if(argc	== 1) copyfile(stdin);
	else	{
		for(argc--, argv++; argc > 0 ; argv++, argc--)
			{
			if(**argv == '-')
				{
				p = *argv + 1;
				if(*p == '\0')
					{
					clearerr(stdin);
					copyfile(stdin);
					continue;
					}
				switch(*p)
					{
					case 'u':
					case 'U':
						break;
					case 'S': slow=1 ;
						break;
					default:
						fprintf(stderr,
							"Unknown flag %c\n",*p);
						break;
					}
				continue;
				}
			fp = fopen(*argv, "r");
			if(fp == NULL)
				{
				fprintf(stderr,	"Cannot	open %s\n", *argv);
				continue;
				}
			copyfile(fp);
			(void) fclose(fp);
			}
		}
	(void) fflush(stdout);
	exit(0);
	}

copyfile(fp)
register FILE	*fp;

	{
	register int	c;
	int delay ;

	while((c = getc(fp)) !=	EOF)
		{
		if (slow!=0) 
			{
			for (delay = 10000; delay--;) ;
			sync() ;
			}
		putchar(c);
		}

	}
