Hacker News

Playing Zork 1 on a CP/M emulator on Linux (2021)

43 points by linuxkernal ago | 20 comments

stevekemp |next [-]

There's a simpler way now, I wrote a golang based CP/M emulator which uses the local filesystem, instead of "disks".

You can clone the repository, or run the docker image, and be playing zork in minutes - I even put together a repository containing a collection of vintage CP/M software (which includes Turbo Pascal, and Zork 1, 2, & 3).

Quick start:

     docker run --pull=always -t -i ghcr.io/skx/cpmulator:master
     ..
     A>
     A>G:
     G>ZORK1
The emulator lives here https://github.com/skx/cpmulator

Collection of software, grouped by theme, here: https://github.com/skx/cpm-dist

musicale |root |parent |next [-]

What is the rationale for packaging it as a container? Isn't the point of golang that you can have a static executable that just works, so you could just distribute a zip archive with the executable and software folders? Or is it to provide some degree of isolation from possibly malicious CP/M software?

stevekemp |root |parent [-]

The source is available, and you can "go get", and "go install" it in the standard way.

I've merely configured a docker container to be generated on every push as an optional additional installation method - that way I can paste in instructions for those who have docker available, but don't necessarily have a go compiler installed.

Use the container if you like, use the repository source in the typical way if you prefer.

musicale |root |parent |previous [-]

Reminds me of RunCPM, which also uses folders rather than disk images:

https://github.com/MockbaTheBorg/RunCPM/

RunCPM also provides a link to the author's CP/M software archive.

anthk |root |parent [-]

RunCPM will bog the CPU like crazy, it emulates the machine at 100% with no throttling at all.

musicale |root |parent [-]

That sounds like something that would be completely impossible to fix, I am sure.

It's too bad, because most modern machines only have single-core CPUs, and I've never heard of any operating system that has the ability to throttle a process by lowering its priority or reducing its timeslice. Someone should implement that, maybe calling it "process control groups" or something.

lrvick |next |previous [-]

I still keep a Kaypro II hooked up in my garage mostly just to show people Zork on a tiny green display in a suitcase sized luggable computer as God intended.

DonHopkins |root |parent [-]

It is pitch dark. You are likely to be eaten by a Grue.

https://www.youtube.com/watch?v=4nigRT2KmCE

ahazred8ta |root |parent [-]

Kill dragon

With what? Your bare hands?

Yes

Congratulations! You have just vanquished a dragon with your bare hands!

beej71 |root |parent [-]

This was a childhood highlight moment for me. I'd been playing Adventure for ages just having fun without realizing there was a huge world beyond the snake.

bogometer |next |previous [-]

Heh. Cool. I still remember playing Zork as an undergrad in MDL running under TOPS-20 on a DECSYSTEM-2060 at NE43. So much better than hack or rogue when I was stuck on a problem.

rprouse |next |previous [-]

The most fun thing that I do with the RC2014 computer I built is play Zork.

linuxkernal |next |previous [-]

I played this in both ms-dos and dosbox.

Kevin_Flynn |root |parent [-]

We have web based AI illustrated versions now

https://zork.coze.org/

vunderba |root |parent [-]

Was this vibe-coded project ever actually tested?

Head north from the house, and then head north again so that you're on the path winding through the forest where there's a large tree. Climb the tree. Observe the picture which inexplicably shows you back at the house.

And not only that, it's a completely different architecture than the house shown at the beginning of the game.

Description:

  >climb 
  Up a Tree
  You are about 10 feet above the ground nestled among some large branches. The nearest branch above you is above your reach. Beside you on the branch is a small bird's nest. In the bird's nest is a large egg encrusted with precious jewels, apparently scavenged by a childless songbird. The egg is covered with fine gold inlay, and ornamented in lapis lazuli and mother-of-pearl. Unlike most eggs, this one is hinged and closed with a delicate looking clasp. The egg appears extremely fragile.
Image shown when climbing the tree:

https://zork.coze.org/zork1/assets/images/ink_engraving/up-a...

Image shown when you first start the game:

https://zork.coze.org/zork1/assets/images/ink_engraving/west...

Kevin_Flynn |root |parent [-]

I dunno.

I played a different one with AI generated graphics that was posted on here a few weeks back.

I didn't play through this one.

Although its been decades, the one I did play through seemed original.

brightball |next |previous [-]

Chuck Bartowski would be proud

DonHopkins |next |previous [-]

Try "GIVE TROLL TO TROLL"!

Spoiler:

https://news.ycombinator.com/item?id=31846457

anthk |next |previous [-]

Tristam Island, a Z3 game, will run fine under CP/M.

I rebuilt the full version (full texts) for old machines:

https://caja.texto-plano.xyz/anthk/zgames/eng/tristam.zip

Just rename the Z3 file to ZORK1.DAT... or try getting some 'modern' ZMachine emulator elsewhere.

jmclnx |next |previous [-]

Very nice.

FWIW, frotz can be used to play these games on Linux and *BSD. See for these type games:

https://news.ycombinator.com/item?id=45392164

The article from the link above is below. You should be able to get some games from it.

https://web.archive.org/web/20261019201930/https://eblong.co...

productsrip |next |previous [-]

[flagged]

|previous [-]