I've used Borland C++ 3.1 for mt.cpp and TASM 3.2 for mtmem.asm. Linking is
done with TLINK 5.1. I think mtmem.asm should assemble okay with MASM. mt.cpp
will probably need some modification to compile with something else. I've
supplied my Borland IDE .dsk and .prj files, for what they're worth.

In addition to a compiler and assembler, you'll also need AMIS - Ralf Brown's
Alternate Multiplex Interrupt Specification. The latest version is available
at, for example:

ftp://ftp.simtel.net/pub/simtelnet/msdos/asmutl/amisl092.zip

I had to patch amis.asm so that MTMem can load low if there is no high memory.
Change lines 421 and 462 to "cs:__psp" (you could also comment the pop/push ds
around line 462). I don't know if this is a technically correct change, but it
works.

You need to assemble amis.asm first, then assemble mtmem.asm (you'll need
amis.mac available), and finally link it:

tasm/t/z /d__TINY__ amis
tasm/t/z mtmem
tlink/t/x mtmem amis

Hopefully you'll end up with mtmem.com.
