From 576243126036618b987924b2c4b4e57b0826d922 Mon Sep 17 00:00:00 2001 From: SarahW Date: Mon, 12 Mar 2018 20:52:07 +0000 Subject: [PATCH] Don't add ROM waitstates on slow CPUs (<= 8 MHz). Fixes IBM AT. --- src/cpu.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/cpu.c b/src/cpu.c index 64a9702..1e62d9b 100644 --- a/src/cpu.c +++ b/src/cpu.c @@ -520,7 +520,10 @@ void cpu_set() isa_cycles = cpu_s->atclk_div; - cpu_rom_prefetch_cycles = cpu_s->rspeed / 1000000; + if (cpu_s->rspeed <= 8000000) + cpu_rom_prefetch_cycles = cpu_mem_prefetch_cycles; + else + cpu_rom_prefetch_cycles = cpu_s->rspeed / 1000000; if (cpu_s->pci_speed) { @@ -1680,6 +1683,8 @@ void cpu_update_waitstates() if (is486) cpu_prefetch_cycles *= 4; cpu_mem_prefetch_cycles = cpu_prefetch_cycles; + if (cpu_s->rspeed <= 8000000) + cpu_rom_prefetch_cycles = cpu_mem_prefetch_cycles; } void cpu_set_turbo(int turbo)