]> git.sesse.net Git - pistorm/commitdiff
Fix Z3 Fast autoconf on Kickstart 2.0
authorbeeanyew <beeanyew@gmail.com>
Thu, 22 Apr 2021 00:22:42 +0000 (02:22 +0200)
committerbeeanyew <beeanyew@gmail.com>
Thu, 22 Apr 2021 00:22:42 +0000 (02:22 +0200)
Managed to forget to stage one line of code for the last commit...
Also fixes the Z3 Autoconf memory range staying active after being configured, prevents some rare memory wraparounds.

platforms/amiga/amiga-autoconf.c
platforms/amiga/amiga-platform.c

index 3da54adc267f284ac1140113abc391e8b066273b..ed958ea951968a54019085c29160ef779c83732d 100644 (file)
@@ -238,8 +238,10 @@ void autoconfig_write_memory_z3_16(struct emulator_config *cfg, unsigned int add
     cfg->map_high[index] = cfg->map_offset[index] + cfg->map_size[index];
     m68k_add_ram_range(cfg->map_offset[index], cfg->map_high[index], cfg->map_data[index]);
     ac_z3_current_pic++;
-    if (ac_z3_current_pic == ac_z3_pic_count)
+    if (ac_z3_current_pic == ac_z3_pic_count) {
       ac_z3_done = 1;
+      adjust_ranges_amiga(cfg);
+    }
   }
 
   return;
index 819dd0fdc1da7c7ded00f26818677ae3fee3eefc..e3e1a072726ec8b76bae27e78ff255ce6bea97ea 100644 (file)
@@ -187,20 +187,20 @@ void adjust_ranges_amiga(struct emulator_config *cfg) {
         }
     }
 
-    if (ac_z2_pic_count && (!ac_z2_done || !ac_z3_done)) {
+    if ((ac_z2_pic_count || ac_z3_pic_count) && (!ac_z2_done || !ac_z3_done)) {
         if (cfg->custom_low == 0)
             cfg->custom_low = AC_Z2_BASE;
         else
             cfg->custom_low = min(cfg->custom_low, AC_Z2_BASE);
         cfg->custom_high = max(cfg->custom_high, AC_Z2_BASE + AC_SIZE);
     }
-    if (ac_z3_pic_count && !ac_z3_done) {
+    /*if (ac_z3_pic_count && !ac_z3_done) {
         if (cfg->custom_low == 0)
             cfg->custom_low = AC_Z3_BASE;
         else
             cfg->custom_low = min(cfg->custom_low, AC_Z3_BASE);
         cfg->custom_high = max(cfg->custom_high, AC_Z3_BASE + AC_SIZE);
-    }
+    }*/
     if (rtg_enabled) {
         if (cfg->custom_low == 0)
             cfg->custom_low = PIGFX_RTG_BASE;