←back to thread

156 points ChristopherDrum | 10 comments | | HN request time: 0.643s | source | bottom

I recently brought Infocom's original UNIX z-machine source code back to life on modern systems. The modified source code, instructions on usage, a build of the z-machine, and examples of embedded game executables are available.

There is also a detailed write-up about the state of the original source code, the porting process, and the invaluable role Justine Tunney's Cosmpolitan project played in bringing the Zork trilogy (and more) to Windows/Mac/Linux/bsd for arm/x86 machines over the course of a lazy Sunday.

1. hans_0l0 ◴[] No.43680032[source]
What is going on here?

[~/Downloads] $ chmod +x zork*

[~/Downloads] $ ./zork1

Cannot open assembly './zork1': File does not contain a valid CIL image.

replies(3): >>43680082 #>>43680218 #>>43682889 #
2. jchw ◴[] No.43680082[source]
Do you have some sort of binfmt_misc setup for Windows/.NET executables? You might be able to get it to work by running `sh ./zork1` instead.
replies(1): >>43686528 #
3. ChristopherDrum ◴[] No.43680218[source]
What setup are you running it on? That will help with troubleshooting. Or, if you prefer, feel free to file an issue on the project repo and we can hash it out there.

https://github.com/ChristopherDrum/pez/issues

replies(1): >>43686551 #
4. jart ◴[] No.43682889[source]
You probably have WINE or something installed. We have a workaround:

    sudo wget -O /usr/bin/ape https://cosmo.zip/pub/cosmos/bin/ape-$(uname -m).elf
    sudo chmod +x /usr/bin/ape
    sudo sh -c "echo ':APE:M::MZqFpD::/usr/bin/ape:' >/proc/sys/fs/binfmt_misc/register"
    sudo sh -c "echo ':APE-jart:M::jartsr::/usr/bin/ape:' >/proc/sys/fs/binfmt_misc/register"
For more help/information on the various gotchas and things that can go wrong running Actually Portable Executable (APE) binaries, please see this reference Mozilla put together: https://github.com/Mozilla-Ocho/llamafile/?tab=readme-ov-fil...
replies(1): >>43686521 #
5. hans_0l0 ◴[] No.43686521[source]
No wine... but something something .NET : mono
replies(1): >>43686757 #
6. hans_0l0 ◴[] No.43686528[source]
Yay, this works :-)

West of House You are standing in an open field west of a white house, with a boarded front door. There is a small mailbox here.

replies(1): >>43687116 #
7. hans_0l0 ◴[] No.43686551[source]
I run Arch Linux on an AMD Ryzen 5. I have mono installed, not sure why, i guess it is a depenency for sdrsharp or the like. However, the sh ./zork1 did the trick :-)
replies(1): >>43687111 #
8. jart ◴[] No.43686757{3}[source]
Oh. Then the workaround should still work I think. Did it help you?
9. ChristopherDrum ◴[] No.43687111{3}[source]
Great! Glad to hear we have a simple solution for this issue. It is interesting to note your trouble, because another player in this post is running Arch and says it worked flawlessly. I guess Mono gets in the way a little.
10. ChristopherDrum ◴[] No.43687116{3}[source]
Wonderful, thanks for playing!