
#include "stdio.h"

main(argc, argv)
int argc;
char ** argv;
{
  FILE * f;
  int i, ch;

  f = fopen("direct.dat", "rb+");
  for(i = 0 ; i < 100 ; i++)
	{
	ch = fgetc(f);
	if (ch != i)
		fputs("err\n", stderr);
	}
  if (fseek(f, 1000, 0))
	fputs("couldn't seek\n", stderr);
  if (ftell(f) != 1000)
	fputs("seek error\n", stderr);
  for (i = 1000 ; i < 1100 ; i++)
	{
	ch = fgetc(f);
	if (ch != (i & 0xFF))
		fputs("err\n", stderr);
	}
  if (fseek(f, 10000, 0))
	fputs("couldn't seek\n", stderr);
  if (ftell(f) != 10000)
	fputs("seek error\n", stderr);
  for (i = 10000 ; i < 10100 ; i++)
	{
	ch = fgetc(f);
	if (ch != (i & 0xFF))
		fputs("err\n", stderr);
	}
/* seek backwards */
  for (i = 9999 ; i > 0 ; i--)
	{
	fseek(f, i, 0);
	if (fgetc(f) != (i & 0xFF))
		fputs("backwards error\n", stderr);
	}
  fclose(f);
}

