From: Robert Pengelly Date: Sun, 18 Oct 2026 08:18:27 +0000 (+0100) Subject: Implement DOS INT 21h AH=2Ah get system date X-Git-Url: https://git.candlhat.org/?a=commitdiff_plain;h=df16f3b64b24e8fd6d8c2a409d69371121dc9233;p=dosemu.git Implement DOS INT 21h AH=2Ah get system date --- diff --git a/interrupts.c b/interrupts.c index f5009ac..d990a5d 100644 --- a/interrupts.c +++ b/interrupts.c @@ -3800,6 +3800,24 @@ static void int_21 (CPU8086 *cpu) { } + case 0x2A: { /* Get System Date */ + + time_t now = time (NULL); + const struct tm *local = localtime (&now); + + if (local != NULL) { + + set_reg8 (cpu, REG_AX, (uint8_t) local->tm_wday); + + cpu->regs[REG_CX] = (uint16_t) (local->tm_year + 1900); + cpu->regs[REG_DX] = (uint16_t) (((uint16_t) (local->tm_mon + 1) << 8) | (uint16_t) local->tm_mday); + + } + + break; + + } + case 0x2F: { /* Get DTA address */ uint16_t dta_seg;