I need make similar interface also for SAM COUPE computer which use 100% compatible keyboard with rubber ZX model + use next new keys as expansion (on different port). ZX use keyboard matrix 5x8, SAM COUPE use keyboard matrix 8x9.
Here is matrix of SAM COUPE keyboard:
More info here:
http://velesoft.speccy.cz/samcoupe_keyboard-cz.htm
This keyboard is 100% compatible with ZX Spectrum and new keys are readable on different keyboard ports. You can implement sam coupe keyboard support (on ZX/clones can be connect only pins for zx matrix support and on sam coupe we can connect all pins for full keyboard support. You need add one pin for select mode (ZX / SAM COUPE) and interface will more universal.