AUSAM/source/S/unload.c

Compare this file to the similar file:
Show the results in this format:

#define	HTTC	0172472
#define	HTCS1	0172440

char rderr[] "read";
char skerr[] "seek";
char wrerr[] "write";
char t[] "/dev/rmt0";

int slave 0;
int rewoff 3;	/* rewind offline */ 

main(argc, argv)
int argc;
char *argv[];
{
	register int kmem, tape;

	nice(-64);	/* get some service */ 
	if(argc > 1)
		if((argv[1][0] >= '0') && (argv[1][0] <= '7'))
		{
			t[8] = argv[1][0];
			slave = t[8]-'0';
		}
		else
		{
			printf("illegal slave number '%c'\n", argv[1][0]);
			exit(1);
		}

	if((tape = open(t, 0)) < 0)
	{
		perror(t);
		exit(1);
	}
	if((kmem = open("/dev/kmem", 2)) < 0)
	{
		perror("/dev/kmem");
		exit(1);
	}
	close(tape);

	if(seek(kmem, HTTC, 0) == -1)
		perror(skerr);
	if(write(kmem, &slave, 2) != 2)
		perror(wrerr);

	if(seek(kmem, HTCS1, 0) == -1)
		perror(skerr);
	if(write(kmem, &rewoff, 2) != 2)
		perror(wrerr);
}