b2 icon indicating copy to clipboard operation
b2 copied to clipboard

Accuracy: emulate XOR of CRTC MA6 with 1MHz monotonic clock in TTX VDU mode

Open VectorEyes opened this issue 4 years ago • 1 comments

As described here: https://beebwiki.mdfs.net/Address_translation ... if you enable 'TTX mode' address translation by setting the CRTC start address to &2800 (corresponding to memory address &7C00) but you use a high-frequency CRTC mode instead of MODE7 (e.g. MODE1) then every address sent from the CRTC to the video ULA has the 6th MSB EORd with the 1MHz clock. To put it another way, of the 80 byte addresses that are drawn on a line, 40 of them are EOR 64.

This is important for people who need to use 2MHz CRTC modes with 'linear' screen layout by turning on TTX Video mode. And probably totally unimportant to everyone else.

VectorEyes avatar Oct 02 '21 23:10 VectorEyes

It might be possible to detect this from the CPU, allowing an automated test: https://github.com/tom-seddon/b2/blob/2255133ceb3eeae529ebc8465901008d2988f6c3/src/beeb/src/BBCMicro_Update.inl#L498

tom-seddon avatar Jul 05 '25 22:07 tom-seddon