Originally Posted by Leandro Jardim
One thing that I always wanted to know about the amazing 8-bit computers like the SAM Coupé, is how they got a 512x192 framebuffer on a 8-bit machine with 64kb, mapped into 4 x 16kb banks...
My guess is that the VRAM memory is accessed indirectly by memory mapped I/O registers. Because if it be mapped in a very big memory bank, will lack memory for standard RAM and a 4 MB expansion for the CPU.
But I am not sure is this is correct, someone have the correct answer for this doubt?
The 512x192 mode (mode 3) is only 2 bits per pixel. It needs just a 24KB frame buffer you can place anywhere you like in available RAM, taking up one and half pages. All the memory, including whatever you assign to the frame buffer can be paged in and out at will, you only need the frame buffer paged in to update it, once done, page it out and you have use the memory space for something else.
SAM doesn't use I/O registers for writing to video ram. It is all part of that 64KB memory block addressable to the Z80.