Sunday, March 25, 2007

Adventures in CP/M on Windows XP


I've always enjoyed Mike Goetz' 1983 version of Adventure, the granddaddy game by Crowther & Woods that started it all. Goetz' version, though, requires a CP/M 2.2 emulator to run on today's computers. Unless you had a Z80-based Kaypro or an Osborne in your life back in the Eighties, you've probably never heard of Goetz' rendition — it's a classic.

On Windows XP, the best of the Z80 emulators seems to be Andreas Gerlich's YAZE. Daunting at first sight, it's actually pretty easy to set up.

  1. Download cpm-advent-b03.zip, Mike Goetz' 580-point version from 1983.
  2. Download the YAZE Windows binary here.
  3. Install YAZE and start it by running yaze.bat. (There's no other way.)
  4. Mysterious, ain't it? Screen after screen of helpful information... (*yawn*)
  5. Unzip your copy of Goetz' game into a folder named adventure (for purposes of illustration). Put it in the YAZE folder. You can put the YAZE folder anywhere.
  6. Enter these commands at the A> prompt (becomes $> within sys):
    sys
    umount c
    mount c ./adventure
    create ADV.DSK
    mount e ADV.DSK
    go
    This gets you out of sys mode and back to CP/M (or ZPM, more likely — same difference).

  7. The CP/M drive C now contains the Adventure game files:

    ADV.COM, ADVI.DAT, ADVI.PTR, ADVT.DAT, ADVT.PTR, DECODE.DAT

    Drive C is read-only because of the way it was mounted. You can't save games in progress there.

  8. Drive E contains nothing. Do this:
    pip e:*.* = c:*.*
    and all six game files are copied to a writable CP/M disk (which is ADV.DSK as far as Windows is concerned).

  9. Switch to drive E and start Adventure!

    A>E:
    E>ADV

    Copyright (c) 1983 Michael Goetz

    Welcome to the *new* Adventure! Say "NEWS" to get up-to-date game details.

    Would you like instructions?

  10. You may now discard the adventure folder from step 5. It was just a way to copy the game into a mountable, writable YAZE disk file. In this directory, you can save your games in progress! Keep the ADV.DSK file forever — it (now, anyway) contains Goetz' Adventure game — and mount it as needed.

Enjoy this still, small blast from the past.


By the way, if you'd like to edit Andreas' .yazerc initialization file, be sure to use Linux-style line endings, i.e., LF (0x0a) only, not CR (0x0d) or CRLF (0x0d 0x0a). Macintosh or MS-DOS line endings won't cut it — lots of file not found errors when you try to start up. If you need a text editor that can do the job under Windows XP, try Scintilla's SciTE and look under Options → Line End Characters.

Labels: , , ,

40 Comments:

Blogger Mike said...

I *did* port this version to MS-DOS, by the way.

Mike. Yes, that Mike.

3:08 PM  
Blogger Grikdog said...

Holy cow! I always wanted to try that phone number, but I heard it was disconnected :) Hi, Mike! After Jeff Beck and Tal Wilkenfeld, you're my hero :)

3:27 PM  
Anonymous Anonymous said...

Hello guyz!
I´m playing version B03 at the moment on a C128 in CP/M-Mode. Great compliment! That game is really wonderful. I haven´t ever played ADVENTURE before so Mikes´ version is my first attempt. And it´s also the first time I´m using the CP/M - Mode (Thanx Mike and greetinx from Austria!) Ok, I´ve to remove a poster now here in my study. Let´s see what happens...

Greetings,
Randall

5:43 AM  
Blogger Grikdog said...

Heh. Look for Rover on November 15th in the Village, again, if I'm up to date on my Coming Attractions (SciFi Channel, I think.)

11:44 PM  
Anonymous Anonymous said...

Thanx for the hint but SciFi-Channel here in Europe transmitted a completely different programm. Still batteling against the game. At the moment I´ve massive trouble on passing the ogre east to the Giant Room. Maybe it´s because of the useage of a very special english verb that I can´t find out. Let´s see... But the language and the descriptions of the different rooms are so lyrical and wonderful to read - the breathtaking view is really breath taking - and I´ve also learned a lot of new vocabulary. Ok, strugglin´on. Greetinx Mike, Greetinx Grikdog, Randall falling asleep at Bedquilt....now.

4:28 PM  
Blogger Grikdog said...

Throw the sword. Uhhh... you did GET the sword??! Oh my God, if you DIDN'T get the sword, YOU HAVE TO GET THE MUSHROOM!!!!!!!!

Actually, DON'T throw the sword. That fun only lasts for one turn. Instead, leave the sword lying around in various places in the cave, and whenever you stop by again, it'll be singing a different song. My favorite is Wuorinen's Time Encomium, but there are others. Yes, yes, you'll die because you ran out of batteries, but just start over, just like reincarnation.

4:45 PM  
Blogger Grikdog said...

Incidentally, Yaze works superfine on Linux, too.

http://www.mathematik.uni-ulm.de/users/ag/yaze-ag/

You have to compile it yourself (after a couple of simple steps -- read the README, it's essential), but after that the same setup applies, pretty much.

I run CP/M using Yaze on a Dell Inspiron 1525 with Ubuntu 9.04 (Jaunty).

4:54 PM  
Anonymous Anonymous said...

Thanx Grikdog! Nice from you to help me but I tried to find it out for myself. Nevertheless eating a mushroom and trying to remove the sword from the rock was definitely my plan for tonights caving-activity. I wish I clould play a whole day and not only a few hours in the evening. Next year we´re gonna produce 3 additional short movies for our project "REALLUSIONS Type 4 - Don´t Fear the Reaper" (similar to Twilight Zone). I think I will integrate the "Mirror Canyon"-effect with the shadowy figure that seems to attract my attention through the dusty window within the episode about the haunted motel.

Yaze sounds interesting, but I´m totally satisfied with CP/M+ running on my Commodore 128. Surely perfect for people who neither owe this machine nor have any transfer cables.

Ok, let´s get up to fetch that sword....

Thanx and have a nice DOS!
Randall

3:31 PM  
Blogger Mike said...

I suppose I could port the game engine to Java -- that would make it easy to port the game to, say, the Blackberry. Absolutely no reason this can't run on a smartphone; it was really hard making the game run on a tiny cp/m machine, but even a phone today has far more memory than those computers did.

What an ugly hack that would be, though -- Fortran ported to C ported to Java.

12:17 AM  
Anonymous Anonymous said...

Wow! The Master himself! Hi Mike! Great compliment again! When you made the game for CP/M machines in 1983 - how was it published? Is it possible to get an original boxed version of B03 on 5.25" floppy disk for CP/M? The game is running wonderful on the Commodore 128 in CP/M mode. Sure, YAZE is the direct way of emulation, but also WinVICE does a good job.

Fortran ported to C ported to Java... Ugly? I don´t think so. Running Adventure on a phone using the "old" spirit in its background is a wonderful idea I think. Ok, the time of textadventures is over. But during our rehearsals in the theatre I´m working we came to talk about how it feels about crawling through narrow tunnels. So I told my companions about "Colossal Cave Adventure" and some of them became really interested in your old game. Although they only played some "Jump and Runs" in their childhood and have never been interested in videogames.

So, I´ll return to the game now. I haven´t just finished it jet. (Actual position: Icy Tunnels)

May God be with you and your family,
Randall, your shadowy figure from Austria that is trying to attract your attention.

P.S.: NOSIDE SAMOHT is really a bad idea without dropping the lantern...

4:04 AM  
Blogger Grikdog said...

P.P.S. Shhhhhhhhhh... No more spoilers ;-)

1:45 PM  
Blogger Mike said...

Boxed version? LOL. It was never sold; it was distributed as public domain by various software libraries.

I certainly don't have a copy of the CP/M version around anymore.

1:59 PM  
Blogger Grikdog said...

I've always attributed my copy to SIGM011, a games collection from someone's special interest group back in the early 80's. But I think I actually downloaded from the old MIT archive, about 1984. It took awhile, at 300 baud.

Apparently, I attributed SIGM011 to the C User's Group at one time, but I think I was guessing. Stuff I wrote about this game long ago is repeated ad nauseam all over the net, especially a synopsis of what happens if you say PLUGH in just exactly the wrong place.

2:14 PM  
Anonymous Randall Flagg said...

Should I ever manage to cross the bridge over the gorge at breathtaking view I will invite both of you for a beer.... (please don´t tell me how until I´m praying on my knees to you)

Randall

1:38 PM  
Anonymous Anonymous said...

Hi grikdog! Hi Mike! One question: If I make use of the ****** to receive fresh ******* at the vendomat - is it impossible to finish the game after having done so?

P.S.: a tin of cold beer is waiting for both of you!

Greetinx,

Randall

2:51 PM  
Blogger Grikdog said...

<shake shake shake shake>

REPLY HAZY. TRY AGAIN.

3:32 PM  
Blogger Mike said...

Okay, my recollection is that you *must* do that in order to finish -- you just simply don't have enough time, otherwise. However, the obvious conundrum is that you just used up one of your treasures to do so.

You can finish the game if you do this -- the question is, can you do so and get the maximum points? I don't remember!!! I need to go take a look at the code.

5:20 PM  
Blogger Mike said...

Ok, I looked at the code. Unless I'm missing something, my first comment was incorrect -- you must have ALL the treasures, so if you do what you're asking you will not be able to complete the game.

5:46 PM  
Anonymous Anonymous said...

Ok! An encrypted question: There is a machine in a labyrinth where no path looks equal to another. May I feed it with the rare "tokens" that are placed in the west chamber of Edward Grieg´s "Peer Gynt"?
If I do so, can I finish the game after having spent the money?

Greetinx,

Randall

3:12 AM  
Blogger Grikdog said...

You will finish the game. Whether it's this particular instance of the game is up to you ;-)

Seriously, Mike is right. There is another way around the problem.

There is even a way to save and fork your path of play, but that involves thinking outside the box.

This problem (and its solution) is why all other adventures have a persistent SAVE and RESTORE feature.

7:15 AM  
Blogger Mike said...

Randall,

Isn't your second question the same as the first? If not, I'm confused. You could send me the question directly at mike {then an at sign} asgoodasitgoetz {followed by a dot} com.

As for saving, try using SAVE. I think even the CP/M version of the game had a functioning save verb. I'm CERTAIN the MS-DOS version does.

7:36 AM  
Anonymous Anonymous said...

Thanx, guys! Yeah, thought so. Ok, let´s try. Entering the building....again.

Greetinx and merry Xmas to you and your families,

Randall

P.S.: Cancel my last (encrypted) question!

9:02 AM  
Blogger Grikdog said...

The SAVE and REST(ore) verbs are there. When you REST, however, the ADVD.SAV file disappears.

In post-Adventure games, the save file does not go away. E.g., I'm playing Star Ocean Second Evolution on the PSP, and you may always simply reload your saved game if you get killed, or realize you've made a strategic error of some kind. ADV.COM is a very old game, remember.

If you think outside the box, what you could always do is PIP your ADVD.SAV file to SAVE.BAK (e.g.), and so have two copies of the same file. The next time ADVD.SAV vanishes when you REST, you can PIP it back. But you drop out of the game and do this manually on the CP/M command line.

It's an old, old trick.

9:40 AM  
Blogger Grikdog said...

Hmmmm... You could also SAVE DAVE (and REST DAVE), but the ADVDDAVE.SAV file still disappears. You could PIP it to ADVD.COM, though, and simply REST.

9:42 AM  
Blogger Grikdog said...

Ooops. ADVD.SAV, of course.

9:43 AM  
Anonymous Anonymous said...

Hello Mike!
Hello Grikdog!

Last night I reentered the cave. I don´t want to lose too many words. Let´s say it simply: I MADE IT! YEAH! Full Points! Playtime was approximately 2,5 months (ok, thanx for laughing). A big "THANK YOU" to both of you for giving me a wonderful time here in Vienna during the last cold and misty nights. I really couldn´t ever believe a textadventure to be so colossal! Also thanx for your patience and your advices that have accompanied me all the time.

Grikdog, thanx for this interesting blog, your comments, hints and your trials to help me dealing with the vanishing save-file.

Mike, also thanx for a wonderful videogame. I´ve never thought that the power of imagination could be set above the optical impressions of today´s videogame graphics and animations. (Although Colossal Cave Adventure would really look groovy on a XBOX-360 or a PS3 in an up-to-date graphic style). How long was your coding-time for version B03 in 1983?

During the Xmas holidays I´m gonna setup a soundtrack of Colossal Cave Adventure titled "Songs of the Singing Sword". I found a list of songs on this site. Is this list complete or do I have to test every room in the cave? I will also add the "Hail" song.
And I will record a video-longplay of the game on DVD. But both, soundtrack and video, are only for personal purposes and will never be put to youtube. (I´m recording every game I´ve finished, the last one was "Dino Crisis" from CAPCOM on PS1).

Saving during adventure...
Most of the mistakes in your trial-and-error process in the game force you back to the beginning. Of course, that takes a lot of time. But during the last 2 weeks I used another way for saving my actual position. I played ADVENT using WinVice-emulator. It´s primary used to run a Commodore 64 under Windows. But it also emulates the Commodore 128 machine which was, beside the C64 mode, able to boot CP/M+ (or better known as CP/M 3.0) as it´s third operating system via the integrated Zylog Z80. So I started to create disk-images of Adventure on C64 that I converted for CP/M to be readable. You only have to keep a copy of the Adventure disk-image with the actual save-state in a seperate folder. If you fall into a pit or sg else, you just have to insert the seperate file into the original folder and FOOF! - the actual position is again on the disk. You just have to reset the emulator and reload the game. The emulator can also be switched to warp-mode, so the whole process lasts only a few seconds and it also makes you really dash through the caverns. Finally I will transfer the disk-image to an original Commodore 1571 floppy on a 5.25" disk via serial transfer cable and make it executable on the original machine.

So, that´ll be my leisure time activity for the holidays.

Ok. Mike, thanx for your email address. (I promise I won´t stalk!)
Oh, I nearly forgot. I need an address from both of you where I can send a shiny brass tin of Austrian beer to. I prefer tins. Glass vials can be very dangerous. I don´t know if I´m allowed to publish my email address here, so I will send a message directly to Mike.

Ok. Time to go to bed(quilt) now.
Best wishes from Austria to you and your families,

Randall

Randall from

4:14 PM  
Blogger Grikdog said...

Mike is the codemaster, while Crowther & Woods are the demigods of interest. I'm just a humble fan of computer games, myself (^^;)

I don't think the songs vary by room. It always seemed random to me. The song is different when you come back to the same place after some time away, e.g.

"Hail"? Are you saying there's another song, and I missed it??! I wasn't counting the Rough Tenor Voice song, which is the sword's swan song.

9:49 AM  
Blogger Grikdog said...

Oh, btw... 2.5 months is a bit better than average, I think. I've played Mike's version of this game under CP/M emulation on every computer I've ever owned since 1986. My dream (someday) is to write (or fund) a huge JRPG-style game with full graphics, in which the antagonist enters a cave and discovers an abandoned computer laboratory with one workstation dimly glowing in the dark. If you press any key to continue, enormous brass leaves arise from the floor and surround you silently, sealing you off from your environment. You are engulfed in Adventure, HP and MP draining slowly away...

10:00 AM  
Blogger Mike said...

Lots to respond to...

Regarding text vs. graphics: That's like saying which is better, a book or a movie? They both have their place. If you liked this, you might like the multiplayer text based role playing games. Check out GemStone IV, an online text MMORPG I've been playing since 1995. http://www.gemstone.net/

As for graphical games in this genre, there's thousands to choose from, up to and including Blizzard's World of Warcraft.

Coding time? Hard to say as it was over 25 years ago. It also builds upon earlier works, so not all of the effort was mine.

Singing Sword: I believe it's random and not based on the room you're in. Here's the full list of songs:

Khumbu Ice-Fall
A Day in the Life
Cold Blue Steel and Sweet Fire
excerpts from Prokofiev's "Romeo and Juliet"
the march from Tchaikovsky's "Nutcracker Suite"
Tchaikovsky's "1812 Overture"
Rossini's "William Tell" overture
Handel's "Messiah"
Harry Partch's "Dafne of the Dunes"
Witchi-Tai-To
Charles Wuorinen's "Time Encomium"

10:07 AM  
Anonymous Anonymous said...

Hello friends!

Thanx for your fast replies (again). I´m collecting videogames since I was 8 years. (Now I´m 35). Collecting as many games as possible on every system games ever were created for. Unfortunately 99.9% of my collection consists of ROM-images. (They take only little space within the house, or even on DVDs or Harddrives. And you must not free them from dust. I´m really curious how many other people play games like Blizzard´s W.o.W. parallel to Colossal Cave Adventure. I think most of them are too graphics-oriented to go back to the roots. Mike, you´re right when you say text vs. graphics. But I, for myself, cannot compare ADVENTURE, or any other game with any other game. Ok, the genre can be equal. But the characters, locations objects and the whole story is completely different. If somebody could manage to convert the wonderful language and beautiful descriptions of Colossal Cave Adventure (B03) into full graphics in that special way that nothing of the originals idyllical atmosphere gets lost - I would be the first to buy that game. So I think Grikdogs dream is a wonderful idea. But hard to realize today when you work alone. I was always amused when playing "Day of the Tentacle" (Lucasfilm Games) that you find an old computer in the garage. When you turned it on you were able to play a complete version of it´s forerunner "Maniac Mansion". Would be cool if you find an old disk in the Ralph Witt Memorial Computer Center that contains a complete playable version of Mike´s B03. Ok. I´ll better stop it for now. Grikdog, I just wanted to send an email to you but your address doesn´t work. I took the address from your profile - mail returned as undeliverable.

I´m gonna have a look at GEMSTONE. Let´s see what it´s about. And maybe I will spend some time for the Zork-series. (Never played it). Games I could recommend are Cindy Pondillo´s "The Hauntings of Mystery Manor" and "Intrigue at Oakhaven Plantation". Also really good adventures.

And within the next years I´m gonna make a trip to Kentucky to visit the original Bedquilt Cavesystem. I will send you a photo when I´m having a break at Y2.

Ok, may CP/M be with you, always.

Greetings,
Randall

3:26 PM  
Blogger Grikdog said...

Randall, have you seen http://www.ifarchive.org/ yet? There is also a text adventure programming language called Inform that supports Infocom's old Zork format. You may also be interested in Douglas Adams' Hitchhiker's Guide to the Galaxy in the same format. I've been using Inform 6 for several years, as the spirit move, to write a mashup edition of Adventure meets Star Well (Alexei Panshin's masterpiece SF trilogy) meets Buck Rogers. Maybe someday...

Read my email address backwards (^^;) I don't give out my snail mail address, since I'm not a bachelor and others live here too.

3:49 PM  
Blogger Grikdog said...

Ooops, no my email address is ok, just remove the antispam part (delete the stuff between underscores, including underscores).

3:55 PM  
Anonymous Anonymous said...

Ok, I retry it now. Ah, yes I know that site. I found it when I was looking for CP/M software. I will have a look at the A02 Version of adventure. But I didn´t spend too much time on that site, because I couldn´t open the *.arc files. About Inform I don´t no anything, till now. I will have a look at it but the Zork-series runs also brilliant on C128 in CP/M-mode. The Hitchhikers Guide is a movie, isn´t it? Have never seen it. I will have a look.

Ok, bed(quilt) time now. I resend the email now.

Good nite, Randall

4:51 PM  
Blogger Grikdog said...

Adams wrote an Infocom adventure called, oddly enough, "Hitchhiker's Guide to the Galaxy." This is usually called hhgg.z5 or hitch.z5, something like that. The game is fairly difficult, iirc. It may need some ancillary stuff sold with the game, such as "peril sensitive sunglasses" — really a piece of black cardboard cut to shape — in order to solve the game. Adams had some very madcap puzzles, such as trying to get the babelfish into your ear. He had a second game, but I couldn't run it on my Mac or something, so never gave a try.

11:42 PM  
Anonymous Anonymous said...

Hello Friends !

Again I´ve spent a lot of time during the Xmas holidays on Adventure. The Video-longplay is finished (2:23) featuring 99 percent of all rooms in the cave. The "DVD-Cover" is designed, and the soundtrack is nearly done. "Time´s Encomium" is still missing but I´ll receive the original CD within the next days. I´ll send you some material when everything´s finished.

Greetinx from icy Austria,
Randall

3:34 PM  
Blogger Grikdog said...

Ha! I found a copy of Mike's original Sig/M volume 11 distribution here!

4:08 PM  
Anonymous Anonymous said...

Hi fellows!

Adventure DVD is finished. The original "silent" version is 2:23 and the "tuned" version lasts 2:42 (plays the entire songlist of the singing sword in the background). Ok. Now I´ll have a look at Sig/M volume 11. Thanx for that hint. Have a nice weekend! Greetinx to the USA from Austria!

Randall

7:08 AM  
Anonymous Anonymous said...

Hi friends!

Are there any games for CP/M 3.0 that used real graphics? Not like the game "Ladder" that used simple characters.

Greetinx, Randall

3:19 PM  
Blogger Grikdog said...

The only confuser I had that ran CP/M 3.0 was an Osborne, but I don't recall any graphics-oriented games for that one. It had a monochrome orange screen about as "easy on the eyes" as a slow merthiolate drip. There was something called Rogue (I think), and I wrote a backgammon game called The Peelgrunt Game of Gammon IV.6 which was a strong nod to Alexei Panshin's Star Well trilogy. I got letters from around the world with that one (two or three, anyway ^^;) It used extended ascii to draw the board. The real graphics machines were Atari and Apple ][+ (Apple had a hi-res screen you turn on by poking a specific memory location, then you could draw by pixel.) I never knew what the Atari had, but I remember that some of its games seemed awesome, for the times -- great sound, too, IIRC.

6:28 PM  
Blogger Grikdog said...

WordStar was ALMOST a game ;-) If you had access to Unix, or these days, Linux, you could have an inordinate amount of time-wasting fun with Emacs. It had its own proprietary adventure game called Dunnet, IIRC, which was maddening. I never knew anyone who played that one, but it has a cheat sheet and a complete walkthrough you can still find on the 'Tubes; Dunnet defined mind-bending.

6:37 PM  

Post a Comment

Subscribe to Post Comments [Atom]

<< Home