Re: "an impressive (for the time) 3.6MHz"
3ish Mhz was the norm but I guess you can claim some credit for the Sord based on its video chip.
The ZX80/81 famously use the processor for screen painting — if memory serves then to paint the display it runs through a series of NOP instructions, which gives a reliable deterministic rate for the z80-generated refresh signal and when the video circuits spot a NOP in ROM they make a note to use the next thing on the bus, which is the value the RAM kicks out on account of the refresh cycle, for video output. The RAM doesn't actually need a real refresh cycle because it's static. But the net effect is that the CPU is occupied for the entire pixel region, doing work that otherwise produces nothing.
The Spectrum has a ULA that can generate addressed and read cycles all of its own volition but shares the same memory (at least, the lower 16kb) between CPU and ULA so the CPU has to wait if accessing that area when the ULA needs it. It's also a fully bitmapped display so the CPU has to write every byte of a graphic for it to appear or move.
Conversely the TMS9929A has 16kb all of its own that operates entirely separately from the CPU's memory pool. You write to it via port IO and there are still some wait cycles involved but the whole setup is designed around the idea that most of the time you don't write much data. It's sprites and a tile map, so for text and most games you spend time uploading the block graphic set and then the drawing isn't much more than updating the map and possibly a few sprite registers, so you get almost all of that 3.6Mhz free.
Games are still likely to work better on the Spectrum though as the TMS9929A completely overlooks scrolling. You can do the block scroll alluded to in the article by rewriting the entire map but that's almost the end of it as you don't have time to rewrite every pixel. The MSX 1 and the ColecoVision have the same chip and the same problem.