> On Dec 3, 2025, at 8:09 AM, Justin Poirier <[email protected]> wrote: > [...] was there ever an option to run the Z Machine in a floppy-interactive > mode? I know that 32k max RAM is just not enough to hold the interpreter and > an adventure, so external storage is a must, but not everyone has a REX.
Plenty of small and limited machines have Z Machine interpreters that use peripheral storage but as far as I'm aware they all implement their own I/O stack because of the wide variety of differences across micros. How rooms are overlaid into memory is probably implementation-specific, too. I'm not aware of work on this for the 100/102 but there's no reason it can't be done other than the risk of memory limitations: TPDDs support seeking and clearly Z data is meant to be swapped in from disk on a small micro. A CP/M interpreter, if it exists, would probably be a fair place to start: it's going to be in 8080 and the I/O is going to be funneled through well-documented BDOS calls. Those could probably be turned into DOS-ON calls with (possibly more than a little) effort. The actual interpreter isn't exactly hard to come by: we just saw the asm source for one. The released Infocom source is at https://github.com/erkyrath/infocom-zcode-terps/tree/master/cpm80 I have waaaaay too many projects to take it on but it certainly seems doable. The source for an interpreter for a disk-based Model I exists; poking very briefly at the I/O and paging routines—which are in Z80 and for LDOS—gives a bit of an idea on how to managed the banks and cache. The ZVM for this version also seems to support Z Machine up to z8, which is pretty cool. Obviously, it can't be ported without work but it's the result of porting work from the CPC Amstrad and ZX Next, so some degree of portability is there: https://gitlab.com/sijnstra1/m1zvm Hilariously, I also by pure chance ran into a Z interpreter *for awk,* which is one of the oddest things I've seen all year https://www.ifwiki.org/Zawk And another *in PostScript*: https://www.ifwiki.org/PSZM
