/* (c) Copyright 1987 Michael Goetz																				*/
/*																				*/
/*				File:		endins											*/
/*				Returns:	  	void											*/
/*				Parameters:													*/
/*																				*/
/*																				*/

#include <stdio.h>

#include "advm.h"
#include "units.h"
#include "insbuf.h"


void endins()

{
	static int pad = 0;

	k1[kptr] = k2[kptr] = -1;
	if (fwrite((char *)k1,1,sizeof(k1),instkeyfi) != sizeof(k1) ||
		 fwrite((char *)k2,1,sizeof(k2),instkeyfi) != sizeof(k2) ||
		 fwrite((char *)krec,1,sizeof(krec),instkeyfi) != sizeof(krec) ||
		 fwrite(kbyte,1,sizeof(kbyte),instkeyfi) != sizeof(kbyte) ||
			/* write out 0x0000 to be compatible with CPM 128 byte sectors */
		 fwrite((char *)&pad,2,1,instkeyfi) != 1 ||
		 (bptr && (fwrite((char *)buff,1,sizeof(buff),instfi) != sizeof(buff))) ||
		 fclose(instkeyfi))
		{
		printf("\n\n****Output error while closing instruction file.\n\n");
		exit(1);
		}
	}


