# Z-code and the Z-Machine

When Infocom first began, the company decided that they wanted their games to run on as many different computers as possible. In order to achieve this they designed a "virtual" machine, called the Z-Machine. This virtual computer runs Z-code in the same way that the PC you are currently using runs Intel machine code programs.

This allowed Infocom to write their games for one format, Z-code. All that was needed to make their games run on different computers was an implementation of the Z-Machine for those computers.

After Infocom ceased to exist, many people (including the InfoTaskForce, Mark Howell and Stefan Jokisch) worked to decode the format of the Z-Machine. This led to reverse engineered implementations of the Z-Machine, and ultimately to Graham Nelson's Z-code compiler, Inform. Windows Frotz 2002 is the latest implementation of the Z-Machine for Windows.

Incidentally, it's no coincidence if this sounds at all like Java and the Java Virtual Machine (JVM). Sun may have made virtual machines popular, but they certainly didn't come up with the original idea.