#include <stdio.h>
int fputc(int c,FILE* file)
{
	dword res;

	if ((file->mode & 3)==FILE_OPEN_READ) return EOF;

	file->buffer[0]=c;
	if ((file->mode & 3)==FILE_OPEN_APPEND)
	{
		file->filepos=file->filesize;
		file->filesize++;
		res=_ksys_appendtofile(file->filename,file->filepos,1,file->buffer);
		if (res!=0) return(res);
		file->filepos++;
		return(0);
	}
	if ((file->mode & 3)==FILE_OPEN_WRITE)
	{
		if (file->filepos==0)
		{	//file not craeted 
			res=_ksys_rewritefile(file->filename,1,file->buffer);
			if (res!=0) return(res);
			file->filepos++;
			return 0;
		}
		else
		{	//file craeted and need append one byte 
			res=_ksys_appendtofile(file->filename,file->filepos,1,file->buffer);
			if (res!=0) return(res);
			file->filepos++;
			return 0;
		}
	}
}