Z-machine specification, future revisions?

David Fillmore (@Marvin) has been maintaining the specification source on Github, though it hasn’t been updated for three years. But it’s still a useful place for tracking errors in the spec, which have been filed as issues.

There have been two attempts at expanding the Z-Machine into a version 1.2:

  1. My fairly minimalistic extension to include a gestalt opcode: The Z-Machine Standard 1.2 (draft) | Dannii’s IF Pages
  2. David Fillmore’s larger expansion: Z-Machine 1.2 Proposal (again)

My version has been shipping in Parchment for at least 10 years, and was used by Vorple (though Vorple games were always distributed as stand-alone websites, and Vorple isn’t useable in the standard Parchment on iplayif.com). David Fillmore’s version never reached the stage of being implemented AFAIK.

Despite the gestalt opcode being around for 10 years and giving authors a way of safely extending the Z-Machine even for just a single game, no one has, except for Vorple. I think there really just isn’t actually a desire to do so. Glulx has now taken over the Z-Machine as the current target for Inform or Inform-like development, and the Z-Machine is generally only targeted by modern authors who have to some extent a retro-computing bent. But extending the Z-Machine is anthetical to retro-computing because new features won’t be available on old platforms. That would be my explanation for why there’s almost no desire to extend the Z-Machine anymore.

4 Likes