From 9f97137872846d5e3ce76776e8adf2a19b4b2528 Mon Sep 17 00:00:00 2001 From: Toni Wilen Date: Tue, 4 Jul 2017 12:17:19 +0300 Subject: [PATCH] Support also non-shifted rom images. --- a2091.cpp | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/a2091.cpp b/a2091.cpp index f915878f..6d9aeacd 100644 --- a/a2091.cpp +++ b/a2091.cpp @@ -4009,7 +4009,21 @@ bool a2091_init (struct autoconfig_info *aci) wd->rom[i * 2 + 1] = 0xff; } } else { - for (int i = 1; i < slotsize / wd->rom_size; i++) + int i; + if (wd->rom_size == 16384) { + for (i = 1; i <= 256; i++) { + if (wd->rom[wd->rom_size - i] != 0x00 && wd->rom[wd->rom_size - i] != 0xff) + break; + } + if (i > 256) { + // soft dumped rom without 0x2000 offset, fix it + uae_u8 tmp[0x2000]; + memcpy(tmp, wd->rom + 0x2000, 0x2000); + memcpy(wd->rom + 0x2000, wd->rom, 0x2000); + memcpy(wd->rom, tmp, 0x2000); + } + } + for (i = 1; i < slotsize / wd->rom_size; i++) memcpy (wd->rom + i * wd->rom_size, wd->rom, wd->rom_size); } wd->rom_mask = wd->rom_size - 1; -- 2.47.3