The basic idea is that Remem implements in CPLD a memory management
unit dividing the 64K address space into 64 1K blocks (actually more
than that since the option ROM is emulated). So you can map any 1K
block from anywhere in RAM or flash into the 64K address space any way
you like.
For compatibility it also emulates a 256K "Rampac" which is a vintage
external device that hooks to the I/O bus port on a T102.
There are multiple MMU maps selectable via an I/O instruction for
fast-switching of virtual Model 100 environments. So for example you
can have one map with a native Forth-in-ROM, and a couple of maps with
the standard ROM but distinct RAM portions (the latter much like the
"banks" in a T200 or NEC 8300 laptop)
Each block in the map can be marked read-only so that if you are
emulating ROM with RAM or flash you get a perfect emulation, i.e. any
writes against ROM don't get applied.
Also remem allows running any option ROM by loading the image to flash
or RAM and mapping it into the option ROM bank.
-- John.