TomHarte / CLK

A latency-hating emulator of: the Acorn Electron and Archimedes, Amstrad CPC, Apple II/II+/IIe and early Macintosh, Atari 2600 and ST, ColecoVision, Enterprise 64/128, Commodore Vic-20 and Amiga, MSX 1/2, Oric 1/Atmos, early PC compatibles, Sega Master System, Sinclair ZX80/81 and ZX Spectrum.
MIT License
911 stars 50 forks source link

Be consistent in shadowing IIgs *physical* addresses. #1302

Closed TomHarte closed 6 months ago

TomHarte commented 6 months ago

Indecision had led to a mild contradiction here:

Some titles seem to: (i) enable auxiliary memory; (ii) enable super-high-resolution shadowing; and (iii) write all graphics via bank 0. I am therefore doubling down on physical addresses being the things that are shadowed — i.e. the process is:

  1. map from logical to physical address;
  2. shadow from physical address to second physical address if enabled.

This seems to resolve the issue where many pieces of super-high-resolution software were missing the bottom half of their display.

E.g.

Clock Signal Screen Shot 03-01-2024, 15 12 40 GMT-5