Hi Michael,
New version is released as 2022.08. MemoryPkg is now a generic package.
Instance MemoryPkg (and MemoryPkg_X) support any number of bits. If there is an X or U in a bit in the data word, only that bit will read back as an X or U (respectively).
Instance MemoryPkg_NoX supports any number of bits. All meta values (UXZW-) are mapped to 0. For bits greater than 16, this will reduce the storage by upto half.
I tested with a 39 bit memory and did file read and write of 10 digit hex characters.
Best Regards,
Jim