Я на 51м (кейл) когда-то структуры времени через отдельные
переменные описал. Так он сука перетусовал все поля как ему
удобнее, чтобы каждое поле внутри байта оказывалось. typedef struct
{
unsigned Year: 7;
unsigned Month: 4;
unsigned Day: 5;
unsigned Hour: 5;
unsigned Minute: 6;
unsigned Second: 5;
} TDateTime;
А тут unsigned это 16 бит. Вышло черти что.
А всего-то надо было uint32_t и поля через запятую.