/*
	time.c
*/

#include <ryosuke.h>
#include <dos.h>
#include <fcntl.h>
#include "usrlib.h"

int getftime(char *fname, TIME *timebuf)	// ★ファイルの作成日時を得る
	// → 成功すれば 0 を返す
	{
	int fd;  unsigned int date,time;
	if (_dos_open(fname, _O_RDONLY, &fd) == 0) {
		_dos_getftime(fd, &date, &time);
		timebuf->year = 1980 + (date >> 9);
		timebuf->mon  = (date >> 5) & 15;
		timebuf->day  = date & 31;
		timebuf->hour = (time >> 11);
		timebuf->min  = (time >> 5) & 63;
		timebuf->sec  = (time & 31) * 2;
		_dos_close(fd);
		return 0;
		}
	else
		return -1;
	}

void getnowtime(TIME *timebuf)				// ★現在の日時を得る
	{
	struct dosdate_t date;
	struct dostime_t time;
	_dos_getdate(&date);
	timebuf->year = date.year;
	timebuf->mon  = date.month;
	timebuf->day  = date.day;
	_dos_gettime(&time);
	timebuf->hour = time.hour;
	timebuf->min  = time.minute;
	timebuf->sec  = time.second;
	}

/* end of time.c */
