From 0cea9de7df0debeecdfc0473796e912578ce9fc4 Mon Sep 17 00:00:00 2001 From: OBattler Date: Sat, 16 Jul 2022 02:48:59 +0200 Subject: [PATCH] VIA PIPC and ALi M1489 fix. --- src/chipset/ali1489.c | 2 ++ src/chipset/via_pipc.c | 4 +++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/chipset/ali1489.c b/src/chipset/ali1489.c index c8e07c657..9738baed3 100644 --- a/src/chipset/ali1489.c +++ b/src/chipset/ali1489.c @@ -197,7 +197,9 @@ ali1489_defaults(ali1489_t *dev) picintc(1 << 10); picintc(1 << 15); +#ifdef OLD_NMI_BEHAVIOR nmi = 0; +#endif smi_line = 0; in_smm = 0; diff --git a/src/chipset/via_pipc.c b/src/chipset/via_pipc.c index 076328a00..a415daa6f 100644 --- a/src/chipset/via_pipc.c +++ b/src/chipset/via_pipc.c @@ -728,8 +728,10 @@ pipc_fmnmi_read(uint16_t addr, void *priv) if (dev->ac97_regs[0][0x48] & 0x01) { if (dev->ac97_regs[0][0x48] & 0x04) smi_line = 0; +#ifdef OLD_NMI_BEHAVIOR else nmi = 0; +#endif } #endif @@ -790,7 +792,7 @@ pipc_fm_write(uint16_t addr, uint8_t val, void *priv) if (dev->ac97_regs[0][0x48] & 0x04) smi_line = 1; else - nmi = 1; + nmi_raise(); } } #else