Of interest was that while the R register is exposed on the lower half of the address bus, the I register is exposed on A8-A15 when \RFSH is asserted. Despite not using DRAM, this undocumented feature was used by Sinclair in their ZX80 and/or ZX81 (I can't remember which one, it might have been both) as part of a crude CRTC:
Both ZX80 and ZX81 use almost the same system, but the ZX81 uses also the NMI for "multitasking", that is, it can do at same time display and your program, the ZX80 only can do user program OR display.
They do not use the IR for adressring, they EXECUTE the video memory, literally, but the circuitry stoles the opcodes (characters actually) and subtitutes with NOPs, and while the refresh period, the external circuitry puts the character code (6 bits), and a scanline counter (3 bits) in the address bus, and the remaining high bits (7) are from the I register, and then a shift register load the video bits from the character generator in the ROM. Very convoluted.
But in the "new" High Resolution Graphics" mode, I and R are used as the bitmapped graphics address, because some people discovered that the address modification made by the ULA does not work on external memory, and allowed for something not oficially possible.
In the ZX80-ZX81 the R register is used as a sort of timer or watchdog. The A6 line is directly connected to INT, that seems very bizarre, but the Z80 checks INT while refreshing, this way in every line the video routines load R with an apropiate number and when the time has elapsed, cut the video routine.
You have in the ZX80/81 expansion slot both, A6 and INT, but they are shorted
