Serenity Operating System
at master 39 lines 818 B view raw
1/* 2 * Copyright (c) 2022, Undefine <undefine@undefine.pl> 3 * 4 * SPDX-License-Identifier: BSD-2-Clause 5 */ 6 7#include <AK/DOSPackedTime.h> 8 9namespace AK { 10 11Time time_from_packed_dos(DOSPackedDate date, DOSPackedTime time) 12{ 13 if (date.value == 0) 14 return Time(); 15 16 return Time::from_timestamp(first_dos_year + date.year, date.month, date.day, time.hour, time.minute, time.second * 2, 0); 17} 18 19DOSPackedDate to_packed_dos_date(unsigned year, unsigned month, unsigned day) 20{ 21 DOSPackedDate date; 22 date.year = year - first_dos_year; 23 date.month = month; 24 date.day = day; 25 26 return date; 27} 28 29DOSPackedTime to_packed_dos_time(unsigned hour, unsigned minute, unsigned second) 30{ 31 DOSPackedTime time; 32 time.hour = hour; 33 time.minute = minute; 34 time.second = second / 2; 35 36 return time; 37} 38 39}