No, at least not unless the Videovideo runs way slower than the CPU. And even in that case it might need buffering and/or insert wait states in fringe cases.
- M1 cycles come in different intervals
- When using dynamic RAM, Refreshrefresh has to be provided by different means.
LetsLet’s do a quick back-of-the-envelop estimate for a 40x25 character display, equal to 320 pixel in B&W. On a 15 kHz screen this means reading 40 bytes per scan line within ~50 µs, or one byte every 1.25 µs. Since the maximum time between two M1 cycles on a Z80 is 20 clocks, such a display system would work fine with a CPU clock rate of 16 MHz.
So yes, a complete transparent display access can be done, but CPU clock speed requirements are rather harsh, even if it's just about a homecomputer likehome computer-like display (40x24 character or 320x240 in B&Wblack-and-white).
And like with a bigger cache, one could use a FIFO of for example 2 or 4 byte wide buffers, increasing buffer hit situations quite a lot. I seems plausible that with a 4 byte FIFO such a display could run bound to a 4 MHz CPU with no or only very little impact - not only because it smoothessmooths out the instruction length quite good, but it also increases access time as the FIFO will be filled during blanking, essentially building up a time buffer of 16 clocks.
Of course, all of this comes with increased chip count. It needs to be carefully checked when the effort needed for buffering gets higher thenthan adding a conditional dual port access. One which may only slow down the CPU if accessing during a displayed line, a rather rare occurrence (*3).
Now, if this is about a computer design intended to be sold in high numbers, a controller with an on chip FIFO could tip the scale again. Here buffer size can be much larger, maybe a whole scan line, which should allow 80 char (640 px) on a 4 MHz Z80 without much delay. KindaIt is kind of like the VIC, but without the slow downslowdown.
Or make all CPU access go thruthrough an access port instead.
This is in also the way all TI9918 compatible VDPVDPs are interfaced and a reason why the 9918 was so widely used with Z80 machines. Of course it only works with dedicated video memory.
*1 - From the PoVpoint of view of the video logic that is.
*2 - The third case can be ignored as it'sit appears as a combination of a type 1 followed by a type 2.
*4 - Assuming a timing lieklike a similar 6502 setup.