In addition to the ZXN_READ_MMU<NUM>() and ZXN_WRITE_MMU<NUM>() macros/functions, it would be quite convenient to have the following functions:
unsigned char zxn_read_mmu(unsigned char mmu);
void zxn_write_mmu(unsigned char mmu, unsigned char page);
They are easy to roll on your own but I think they are handy to have in the library