]> gitweb.unchartedbackwaters.co.uk Git - francis/winuae.git/commit
od-unix: mirror Windows GUI option gating in Qt launcher
authorStefan Reinauer <stefan.reinauer@coreboot.org>
Fri, 12 Jun 2026 04:08:17 +0000 (21:08 -0700)
committerStefan Reinauer <stefan.reinauer@coreboot.org>
Tue, 7 Jul 2026 20:57:57 +0000 (13:57 -0700)
commit3fa6d248242a9b65b9e3d5f15a54c7de58f5821d
treee5f9aa3f6595d04694e143f64185e24c6aa289b8
parent7b6e57df6cdc3f41c6b67bd80fe6a204aabaf5ab
od-unix: mirror Windows GUI option gating in Qt launcher

Bring the Qt launcher's control enablement to parity with the Windows
GUI's enable_for_*dlg/values_from_cpudlg logic, with the constraining
option always acting as master:

- Gate Z3 Fast, Z3 Chip, processor slot RAM and Z3 mapping mode by the
  24-bit addressing checkbox (enable_for_memorydlg). Previously a 68000
  could be combined with Z3 RAM and the config booted with it.
- Stop force-unchecking 24-bit addressing when a Z3 RTG board is
  selected, and stop writing cpu_24bit_addressing=false into the config
  whenever a Z3 RTG board is present.
- Apply CPU selection side effects: 68000/68010 force 24-bit addressing
  on, 68030+ force it off; FPU selection is remapped on user-driven CPU
  changes (external to internal at 68040+, internal to 68881 below,
  None on 68000/68010 with More compatible or memory cycle-exact).
- Enable FPU radios per Windows rules; block JIT while an MMU is
  selected; disable More compatible under memory cycle-exact; disable
  the CPU speed slider under full cycle-exact; gate the CPU frequency
  controls.
- Chipset page: clear and disable Wait for Blitter under Immediate
  Blitter or memory cycle-exact with 68000/68010; force NKRO on for UAE
  and A2000-8039 keyboard modes; disable the DMA/memory cycle-exact
  checkbox below 68020.
- Advanced chipset page: disable all manual controls while Compatible
  Settings is checked (enable_for_chipsetdlg2); 1M chip jumper also
  requires 512 KB chip RAM.
- Display page: disable resolution and line-mode controls while
  autoresolution is active, keep interlaced modes tied to the line-mode
  split, gate VGA autoswitch by hires or better with line doubling, and
  disable frame skipping under memory cycle-exact.
- Re-run all gating after loading a configuration file.

The sound page and accelerator board controls already follow the same
Windows gating rules, so leave them unchanged.
od-unix/qt/launcher.cpp