Is there a Z-machine interpreter for Famicom? Anyways, it has a keyboard (unlike GameBoy). What mapper is needed, or can it use FDS? But, since it has keyboard it means you can just type it in rather than how it is done in GameBoy and so on.
However, the Famicom keyboard has only ASCII codes $20 to $5F, not $60 to $7E. I can make a suggestion to allow working: SHIFT key already toggles bit4 of ASCII codes $20 to $3F. Therefore, make SHIFT key also toggles bit5 of ASCII codes $40 to $7F. (Actually, this is a useful idea if you make any program on Famicom that is using all ASCII codes; it is not specific to Z-machine interpreter!)
Alternative way is make a system for text adventure game which is compatible with Famicom and which can compiles into iNES format and into Z-machine format independently. For example, you might do: $00xx = Global variables. $6xyy = RAM properties (x) of objects (y). $8xyy = ROM properties (x) of rooms (y). $9xyy = ROM properties (x) of objects (y). $Axyy = Initial value of RAM properties (x) of objects (y). When compiling into Z-machine format, you can use the addresses of Z-machine instead.
However, the Famicom keyboard has only ASCII codes $20 to $5F, not $60 to $7E. I can make a suggestion to allow working: SHIFT key already toggles bit4 of ASCII codes $20 to $3F. Therefore, make SHIFT key also toggles bit5 of ASCII codes $40 to $7F. (Actually, this is a useful idea if you make any program on Famicom that is using all ASCII codes; it is not specific to Z-machine interpreter!)
Alternative way is make a system for text adventure game which is compatible with Famicom and which can compiles into iNES format and into Z-machine format independently. For example, you might do: $00xx = Global variables. $6xyy = RAM properties (x) of objects (y). $8xyy = ROM properties (x) of rooms (y). $9xyy = ROM properties (x) of objects (y). $Axyy = Initial value of RAM properties (x) of objects (y). When compiling into Z-machine format, you can use the addresses of Z-machine instead.