/*
 * setdate — установить системную дату, не трогая время:
 * read-modify-write полного datetime_t через getdatetime/setdatetime.
 * Возврат 0 или -1 + errno (от setdatetime).
 */

#include <dos.h>
#include <time.h>

int setdate(const struct date *d)
{
    datetime_t dt;
    getdatetime(&dt);
    dt.year  = (uint16_t)d->da_year;
    dt.day   = (uint8_t)d->da_day;
    dt.month = (uint8_t)d->da_mon;
    return setdatetime(&dt);
}
