Slashdot Mirror


Crowther's Original Adventure Source Code Found

drxenos writes "I don't know how many of you are fans of old-school text adventures (interactive fiction), but Will Crowther's original Fortran source code has been located in a backup of Don Woods's old student account. For fans like me, this is like finding the Holy Grail."

66 of 309 comments (clear)

  1. THIS IS A HOAX by Anonymous Coward · · Score: 3, Funny

    4chan is responsible. Who else would call FORTRAN a "text adventure"?

    1. Re:THIS IS A HOAX by pla · · Score: 5, Funny

      Who else would call FORTRAN a "text adventure"?

      Well, calling it a "programming language" certainly qualifies as "fantasy"... ;-)



      / Props to HPF, though
      // Still wouldn't use it unless forced to at gunpoint

  2. rogue for me by fifedrum · · Score: 2, Insightful

    yeah, can't say I'm anything other than a rogue, nethack, moria, umoria fan. the modern games with their "animation" and "pictures" and "sound" are just too easy.

  3. A good example of how coding has progressed by Anonymous Coward · · Score: 5, Interesting
    Increased memory (both RAM & Disc storage) availability has allowed us to make our code more readable.
    I looked at the various FORTRAN files and am amazed at the spaghetti GOTO maze which, although messy, was probably the only way to do things in FORTRAN at the time with no structuring capability.


    A random example:

    IF(K.NE.1) MASK1="177*M2(K)
            IF(((A(J).XOR."201004020100).AND.MASK1).EQ.0)GOTO 3
            IF(S.EQ.0) GOTO 2


    Wow! Is that the opposite of self-documenting code or what?

    1. Re:A good example of how coding has progressed by Anonymous Coward · · Score: 2, Funny

      Holy Grail? More like finding the Arc of the Covenant. As it's being opened.

      Looking upon this madness leads only to ruin!

    2. Re:A good example of how coding has progressed by SIGBUS · · Score: 5, Funny

      So maybe the inspiration for the "maze of twisty little passages, all alike" wasn't Mammoth Cave, it was the code itself.

      --
      Oh, no! You have walked into the slavering fangs of a lurking grue!
    3. Re:A good example of how coding has progressed by morgan_greywolf · · Score: 5, Funny

      Um, could you repost that please? It seems your original post got corrupted somehow. All I see is gibberish where the code should be.

    4. Re:A good example of how coding has progressed by LMacG · · Score: 5, Interesting

      Ah, the old computed GOTO. In the first line, the value of KQ is used as an index to the list of labels. If KQ=1, GOTO 5014, if KQ=2, GOTO 5000, etc. etc. If KQ is outside the range (0 or greater than 4), then no GOTO is performed, so you'd hit the PAUSE statement. Looks like it's essentially saying "this shouldn't happen".

      2027 is similar, there's just a lot more possible values. That rogue 1 is a continuation indicator, it would have been in column 6 on your punch card.

      --
      Slightly disreputable, albeit gregarious
    5. Re:A good example of how coding has progressed by Mr.+Underbridge · · Score: 2, Funny

      Wow! Is that the opposite of self-documenting code or what?

      Well...it doesn't *look* like Perl...

    6. Re:A good example of how coding has progressed by j00r0m4nc3r · · Score: 2, Funny

      Wow! Is that the opposite of self-documenting code or what?

      I would call it self-obfuscating.

    7. Re:A good example of how coding has progressed by fm6 · · Score: 5, Insightful

      Memory is not the issue here. Turbo Pascal was designed to run in a single 64K 8086 segment, and Pascal is the quintessential block-structured language. The real problem is that the designers of FORTRAN were totally ignorant of the principles of language design. They could hardly be otherwise: FORTRAN was the very first high-level language.

      But here's a sobering thought: Dijkstra launched his attack on the goto statement in 1968. Every programmer who's grown up with block structured languages would take it as a given that Dijkstra was right. But at the time, the concept was extremely controversial, and there was a lot of resistance — as evidenced by the fact that Crowther and Wood were still using computed gotos in 1976!

    8. Re:A good example of how coding has progressed by ajs318 · · Score: 2, Interesting

      British BASIC dialects had something even better.

      The TRULY calculated GOTO/GOSUB statement!

      On a Beeb or Speccy, you could quite happily write stuff like

      50 INPUT A
      55 IF A<1 OR A>5 THEN GOTO 50
      60 GOTO 900+100*A


      This sort of thing didn't work on machines running Microsoft BASIC (which even used to throw a hissy fit if you tried to GOTO a non-existent line number. Beebs and Speccies just carried on from the next higher line number. Meant you could aim GOTO statements at REM statements without fear that stripping them to free up RAM later on would break things). BBC BASIC had the usual ON num_expr GOTO num_expr,num_expr,num_expr ... and later versions introduced ON ... PROC.

      Neither the BBC nor the Spectrum, however, had the absolutely classic feature found on the Camputers Lynx ..... which actually supported fractions in line numbers! So the old "going up in tens" thing wasn't quite so necessary, as you could always squeeze in a line 10.5 between lines 10 and 11 if you had to.

      --
      Je fume. Tu fumes. Nous fûmes!
    9. Re:A good example of how coding has progressed by russotto · · Score: 4, Informative
      The code you're quoting isn't grossly messy because of the GOTO statements. It's grossly messy because PDP-10 Fortran didn't have a CHARACTER type -- instead, you could pack 5 characters to a 36-bit integer, with the low-bit unused. The M2 array contained integer masks with one bit set, the low bit of one of the characters. Multiplying that mask by octal 177 got you a mask which selected a single character, except for the first character where the multiplication would overflow. The octal constant 201004020100 is 5 space characters. The "S" flag indicated whether a space had been found yet.


      So the little snippet you posted goes to label 3 if the current character (selected by J for the integer and K for the character within the integer) is a space, and to 2 if no space has been found yet, and continues without branching if a space has been found but the current character is not a space.


      If A were, more sensibly, a character array, the above would be written as

                      IF(A(J:J).EQ.' ')GOTO 3
                      IF(S.EQ.0) GOTO 2

      which is no problem to read at all, despite the gotos.

    10. Re:A good example of how coding has progressed by fm6 · · Score: 2, Funny

      ...written by Woz...
      Please. It's "The Woz".
    11. Re:A good example of how coding has progressed by fm6 · · Score: 3, Interesting

      Yeah, Perl has gotos (computed and otherwise) but it also has block structure. Which is why few Perl programmers ever have occasion to write a goto. (I don't think I ever have.) Perl's readability problems are exactly the opposite of FORTRAN's. Where FORTRAN's designers knew too little about artificial language theory, Perl's designers know way too much! Indeed, Larry Wall started out as a linguist, and can't seem to stop dreaming up clever language constructs. The result is a language that has a nasty tendency to bring out the poet in the programmer. Why is that a bad thing? Because, as any English 101 student will tell you, reading poetry is hard work.

    12. Re:A good example of how coding has progressed by ajs318 · · Score: 2, Interesting

      The Lynx was very much the exception, even in the UK (where most people wrote their own BASIC rather than licence one from Microsoft). It had no concept at all of integers; every number was stored within the program as a floating-point number (and only rendered at display time). If you used "2.5E4" for a line number, it would show up in any LISTing as 25000, because 25000 has few enough digits not to need to be displayed in scientific notation. If you used PEEK, you'd see instead of the ASCII codes for the digits that make up the number an unprintable character meaning "number follows", and the number in internal representation. Non-printing character codes were also used as shorthand forms for BASIC keywords and functions.

      BBC BASIC used 32-bit integers (denoted in variable names by a trailing %) and 40-bit floating point numbers, but 16-bit line numbers. Spectrum BASIC used a 40-bit internal representation for all numbers (integers -65536..+65536 were represented specially, using an exponent of -128, and a "mantissa" formed from a "sign byte" of either 0 or 255, the units, the 256es and zero; the Spectrum's internal calculator respected this special representation as far as possible and only ever converted a specially-represented integer to its floating-point representation if a calculation step exceeded the representable range) except for line numbers, which were 16-bit. Also on the Spectrum, the "reserved word" characters weren't non-printing; they just shew up as the word in full.

      Anyway, integers are fixed-precision. They just go up in ones because that's convenient for people. If you want to have fractions to two places (e.g. if you're working with money), just multiply everything by 100 (and then think of it as pence as opposed to pounds). And be creative how you print it :) There's no reason (apart from convention) why it has to be 10, 100 or 1000, either ..... you could work in units of a third of an olde english fluid ounce, and divide by 60 to get pints. But that just would be silly.

      --
      Je fume. Tu fumes. Nous fûmes!
    13. Re: A good example of how coding has progressed by fm6 · · Score: 3, Funny

      You sound younger than me...
      Well, that's nice to know, but the fact is that I'm probably older than you. How old? Without being to specific, I'll just say that I once met Harpo Marx.

    14. Re:A good example of how coding has progressed by Fortran+IV · · Score: 2, Interesting

      The IBM 1130 had a FORTRAN compiler that could run in 4K "words" (8KB). It was somewhat limited—for instance, the arithmetic IF was the only branching statement available. But it could compile quite large programs, I was told; my school had a FORTRAN circuit-analysis program 20,000 cards long (5 full drawers in a card cabinet) that could allegedly be compiled successfully—over a period of several hours, presumably.

      --
      I figure by 2030 or so my 6-digit UID will be something to brag about.
  4. Found? When was it lost? by Smallpond · · Score: 4, Funny

    I once wrote a script to find and delete copies of this and the star trek game due to the limited disk space on our PDP-11/70. It had to compare file contents because the sneaky bastards would change the file names to something like TPSRPORT.DOC to hide them.

  5. I must not be old enough by ArcadeX · · Score: 3, Informative

    Had to go to wiki for this one...

    William ("Willie" or "Will") Crowther (born 1936) is a computer programmer and caver. He is best known as the co-creator of Colossal Cave Adventure, a seminal computer game that influenced the first decade of game design and created a new game genre, text adventures.

    [edit] Biography
    During the early 1970s Crowther worked at defense contractor and Internet pioneer Bolt, Beranek and Newman (BBN). Following his divorce from his wife Patricia, Crowther began using his spare time to develop a simple text-based adventure game in FORTRAN on BBN's PDP-10. He created it as a diversion his daughters Sandy and Laura could enjoy when they came to visit. (Montfort, 2003, pp. 85-87)

    In Adventure, the player moves around an imaginary cave system by entering simple, two-word commands and reading text describing the result. Crowther used his extensive knowledge of cave exploration as a basis for the game play, and there are many similarities between the locations in the game and those in Mammoth Cave, particularly its Bedquilt section. (Montfort, 2003, p. 88) In 1975 Crowther released the game on the early ARPANET system, of which BBN was a prime contractor. (Montfort, 2003, p. 89)

    In the Spring of 1976, he was contacted by Stanford researcher Don Woods, seeking his permission to enhance the game. Crowther agreed, and Woods developed several enhanced versions on a PDP-10 housed in the Stanford Artificial Intelligence Laboratory (SAIL) where he worked. (Montfort, 2003, p. 89) Over the following decade the game gained in popularity, being ported to many operating systems, including personal-computer platform CP/M.

    The basic game structure invented by Crowther (and based in part on the example of the ELIZA text parser) was carried forward by the designers of later adventure games. Marc Blank and the team that created the Zork adventures cite Adventure as the title that inspired them to create their game. They later founded Infocom and published a series of popular text adventures.

    The location of the game in Colossal Cave was not a coincidence. Will and his first wife Pat Crowther were active and dedicated cavers in the 1960s and early 1970s--both were part of many expeditions to connect the Mammoth and Flint Ridge cave systems. Pat played a key role in the September 9, 1972 expedition that finally made the connection. (Brucker, 1976, p. 299)

    Will has also played an important role in the development of rock climbing in the Shawangunks in New York State. He began climbing there in the 1950s and continues to climb today. He made the first ascent of several classic routes including Arrow, Hawk, Moonlight, and Senté. Some of these routes sparked controversy because protection bolts were placed on rappel; a new tactic that Crowther and a several others began to use at the time. The community reaction to this technique was an important part of the evolution of climbing ethics in the Shawangunks and beyond.

    --
    An I.T. motto in the hands of an idiot is a dangerous thing...
    1. Re:I must not be old enough by Mr.+Slippery · · Score: 5, Informative

      what the fuck does rock-climbing have to do with "ethics"?

      The same thing leaving a campsite better than you found it has to do with ethics, or not littering has to do with ethics. Altering the environment and depriving others of potential experiences is an ethical issue.

      A quick Googling will reveal that "climbing ethics" is not an invention of the Wikipedia author, but is an active area of discussion among climbers.

      --
      Tom Swiss | the infamous tms | my blog
      You cannot wash away blood with blood
  6. Holy Grail by biocute · · Score: 2, Insightful

    I digged out my Transformers toys when the movie was out, but playing with them doesn't give me the same thrill as they did 20 years ago.

    This, is probably the same.

    1. Re:Holy Grail by FauxPasIII · · Score: 2, Funny

      > I digged out my Transformers toys when the movie was out, but playing with them doesn't give me the same thrill as they did 20 years ago.

      Then your fandom is WEAK.
      /me cuddles his masterpiece edition Optimus Prime

      --
      25% Funny, 25% Insightful, 25% Informative, 25% Troll
  7. at last! by pbjones · · Score: 3, Funny

    I may print it out and use it for wall paper. or etch it on silicon.

    --
    There was an unknown error in the submission.
    1. Re:At Last! by Gregg.Baker · · Score: 2, Funny

      Does this mean the ESRB is going to retroactively give it an AO rating for ASCII boobies?

  8. Re:This sounds familiar by Barny · · Score: 4, Funny

    GIT OFFA MAH LAWN! /me waves a shotgun around menacingly

    --
    ...
    /me sighs
  9. I was at my wit's end by phunctor · · Score: 2, Funny

    but fortunately I had the source.

    --
    phunctor

  10. This is very important by Anonymous Coward · · Score: 2, Insightful

    Maybe a lot of today's nerds are too young to remember, but ADVENT was one of the most important computer games ever written. Its influence is still with us today, from mere hacker jargon to standard features of many modern games. Scoff if you want, but this discovery has historical significance. There has been a great deal of speculation and debate over the years about Crowther's and Woods's relative contributions to the game, and Crowther's source code puts numerous questions to rest. If the history of computers, and particularly of computer games, is at all a subject worthy of study, then this source code has to be considered a major find.

  11. Reversed causation by dazedNconfuzed · · Score: 4, Interesting

    Those interactive books came about because of Adventure.

    --
    Can we get a "-1 Wrong" moderation option?
  12. History - Looking for Scheme tarball 1986-87 era by scottsk · · Score: 3, Interesting

    The adventure source is a great find. I've been looking for the Scheme source tarball from the 1986-1987 period (i.e. when SICP was still new) for over a year, with no success. The changelog is online, and shows the work that was done in that period, but none of the tarballs still exists. Anyone have a Scheme distribution tarball from late 1987? I would like to run the code from that time along with the book to do screen captures, etc for something I'm working on.

  13. Re:Wow.... by PrescriptionWarning · · Score: 4, Funny

    Q: "What is your quest?"

    A> "To Seek the holy grail!"

    Q: "what is your favorite text base adventure game?"

    A> "Colossal Cave Adventure... NO wait, blue!"

    *Gets launched into the death pit*

       tttttt
      t      t
    t          t
    t   R I P  t
    t          t
    t          t
    tttttttttttt

  14. Fight the power by ShawnCplus · · Score: 2, Informative

    Even though they are obviously overtaken by Graphical MMOs like WoW, MUDs are still fairly prevalent. There are still thousands of active MUDs/MUSHs/MOOs/BBSs and (extremely hard to calculate accurately) roughly 15,000 active players in the community.

    --
    Excuse me while I gather the virgin sacrifice and assemble the pentagram required to solve your problem
    1. Re:Fight the power by ShawnCplus · · Score: 2, Interesting

      I wouldn't really be surprised even though Diku and SMAUG are the most prevalent there are a lot of PennMUSH servers out there. Though people have destroyed Richard Woolcock's Godwars codebase and flooded the proverbial market with them I'm continually amazed at innovations people make in new games and many times I come across some that are much more complex than any graphical MMO. Richard Woolcock's Godwars 2/Gladiator Pits 3 codebase is insanely complex and has a fighting system that's richer and deeper than 95% of the console fighting games. It's a bit sad that some people have forgone the license restrictions and decide to make a profit off their games.

      --
      Excuse me while I gather the virgin sacrifice and assemble the pentagram required to solve your problem
  15. Re:This sounds familiar by Xiaran · · Score: 3, Interesting

    My first expose to Collosal Cave was when I was about 10ish... my Dad was a programmer(mainframes... mostly IBM, sperry etc) and I played it on a Sperry mainframe terminal. It may be hard to imagine for someone like yourself that has probably grown up with high resolution, high powered desktop PCs... but playing it for me was eye opening in the extreme. I suspect Im not alone and many other got hooked on development and technology because of interactive stuff like the good old original adventure.

    xyzzy

  16. Re:he was meant to say by Ant+P. · · Score: 2, Insightful

    You know, I'd rather have other people see me as a nerd than as someone gratuitously illiterate and idiotic.

  17. Re:This sounds familiar by Targon · · Score: 3, Insightful

    In an era where there were no computer graphics at all, text was the only thing available. And it was a lot of fun as well.

    The original Zork games, as well as the rest of the Infocom games were inspired by Adventure to a large degree. It should be noted that because they were text based, some things that would be considered obvious were not necessarily obvious in those days, which added to the puzzle solving aspect of the game.

    These days, everything is made almost too obvious, because too many potential customers don't like a challenge(note that many games can be beaten straight out of the box in under 24 hours of playing). Back in those days, a game could take weeks of playing to figure out what to do, beating your head against a problem for several days before a solution would present itself wasn't uncommon.

    Then again, it seems that too many people never bother to pick up a book when movies are available, and never realize how horribly the film makers have screwed up a great story, so it's no wonder some people would never understand why text adventures were fun.

  18. Re:Wow.... by Anonymous Coward · · Score: 5, Funny

    "Someone mind finishing the work for me?"

    Fine, fine.

    For fans like me, this is like finding the Holy Grail.

    Drxenos! Drxenos, King of the Nerds! Oh, don't grovel! If there's one thing I can't stand, it's people groveling! ...
    [slightly later]

    Behold! Drxenos, this is the Holy Grail of Computer Games. Look well, drxenos, for it is your sacred task to seek this Grail. That is your purpose, drxenos -- the Quest for the Holy Grail of Computer Games: Adventure. And it is written in FORTRAN.

    Wait, FORTRAN? Lord, you're kidding right?

    [significantly later]

    He says they've already got one!

    Yes, it's-a verry nice-a. It is-a coded in C.

    [substantially later]

    We are the Knights Who Say ... IP! IP! IP!

    Augh!!!! Stop it!

    [much later]

    What is the net speed of an unladen TCP/IP data packet using PPP over a 1200 baud modem?
    What do you mean? With or without parity, 7 or 8 bits, with or without flow control?
    What? I don't know all that! Auuuuuugh!!!

    [slightly later but a little further that the previously-mentioned "slightly later"]

    The Castle Stanford. Once we brave its maze of twisty little passages, all alike, our quest is at an end!

  19. Re:This sounds familiar by 91degrees · · Score: 2, Informative

    The 70's era computers weren't so bad. You had a command line interface and generally human understandable commands.

    A few of the classics are available as free downloads. They became more sophisticated over time. Have a look at Zork for an example of one of the popular ones.

  20. At Last! by corby · · Score: 2, Funny

    Now, I will finally be able to unlock the Hot Coffee mod.

  21. Re:This sounds familiar by hateful+monkey · · Score: 2, Informative

    Hitchhikers Guide to the Galaxy. If you didn't pick up the mail that is casually mentioned in the first few moments of the game, you are essentially screwed once you get on the Vogon ship. If you didn't by the extra "hint" books some of these things where almost impossible.

  22. Re:Why it was special... by ian_mackereth · · Score: 5, Funny
    I encountered it as an engineering undergrad, on a university Cyber 204 or 205 mainframe, the first computer I'd ever used. I had to hack extra console time via various means to complete it, using a mega flowchart I drew up as I went.

    When I finally finished it, the screen cleared and an operator in the computer centre was typing to me and asking me to come over to the centre. I figured I'd been sprung for all the extra time I'd 'arranged', but instead they gave me printout and iducted me into the Order of Wizards!

    A nerdy proud moment... (I wish I hadn't lost that printout in the intervening decades and moves.)

  23. Re:A good example of how coding has progressed, by junge_m · · Score: 5, Interesting

    This is why the grandmaster of 'Literate Programming', Donald Knuth, has done a translation into his CWEB Language which is totaly devoid of jumps and other 'dirty' Fortan:
    http://www.literateprogramming.com/adventure.pdf

  24. EAMON!!!! by WED+Fan · · Score: 3, Interesting

    This was fun. I remember running it on a teletype terminal in programming class (damn, thats old) BANG BANG BANG BANG BANG. You couldn't do a quick CLS to hide the evidence when the instructor came by, "Do you think paper grows on trees?" he yell. Of course all was forgiven when we showed him our course work was done. Then, he made us write our own dungeon code.

    Much later, Don Brown(?) came out with EAMON, with a write your own framework. Fun fun fun.

    --
    Politics is the art of looking for trouble, finding it everywhere, diagnosing it incorrectly and applying the wrong fix.
  25. Re:Full source published by Mr2001 · · Score: 2, Informative

    I doubt it, as this version is before Woods turned it into a game (The original Crowther's version was just a simulation for his kids). Not true, RTFA! It explains that Crowther's original had puzzles and fantasy elements, intentionally changed parts of the map, and was designed with adults in mind.
    --
    Visual IRC: Fast. Powerful. Free.
  26. Re:I am hoping by drxenos · · Score: 2, Insightful

    I didn't wish to hammer the poor guy's site. The lazy will always click the link. Only those truly interested would take the time to look for it. The man is doing people a favorite, and now your going to punish him by slashdotting his site.

    --


    Anonymous Cowards suck.
  27. The Fortran gods shall smite thee by White+Yeti · · Score: 5, Funny

    program smite_em
    c-----
          IMPLICIT NONE      ! Catch typos and un-initialized variables.
          integer       IERR_smite
          character*200 ch_name
    c-----
          write(6,1)
    1     FORMAT(/,' This is one smiting program!',/,
         &   '   Enter name of smitee --> ',$)
          read(*,fmt='(A)') ch_name

          DO while(.TRUE.)   ! Endless smiting loop.
             call smite(ch_name, IERR_smite)
             if(IERR_smite.GT.0) goto 20
          End DO             ! smite loop.
    20    CONTINUE

          write(*,*)' Done smiting.'
          if(IERR_smite.LT.0) then
             write(6,2) IERR_smite
    2        FORMAT(' ***Possible smiting error, IERR_smite = ',I)
          endif
          STOP
          END
    c-----
    c End of Main.
    c-----

    1. Re:The Fortran gods shall smite thee by Frumious+Wombat · · Score: 3, Insightful

      How disappointing; you wrote that in modern Fortran. They were true gods in the day when they could smiteth without 'else' statements, and using computed gotos, arithmatic ifs, and the "EQUIVALENCE" statement.

      --
      the more accurate the calculations became, the more the concepts tended to vanish into thin air. R. S. Mulliken
  28. Re:Found? When was it lost? by ari_j · · Score: 3, Interesting

    I'm not sure about the PDP-11 era, but as early as the mid-80's it was common to use .doc to indicate that something was a general document as opposed to a .ltr, .mem, or the like. The word processor used was irrelevant. (We used XyWrite at the time.) MS Word commandeering .doc is a relatively new phenomenon - the .doc extension itself is not.

  29. Re:Full source published by Dennis+G.+Jerz · · Score: 2, Informative

    Crowther's original was a game, and you can play it for yourself. Matthew Russoto tweaked the recovered source code so that it will compile under g77.

    http://www.russotto.net/~russotto/ADVENT/ ... and David Kinder published a Windows executable.

    http://www.ifarchive.org/if-archive/unprocessed/ad v_crowther_win.zip

    That file will move eventually... you will probably be able to find it from here:

    http://www.wurb.com/if/person/2

    There are also photos of the inside of the real Colossal Cave, including photos of what's left of the famous brick building (just a foundation, sadly) the famous rock with a Y2 on it, and even a rusty axe head and an iron rod.

    http://brain.lis.uiuc.edu:2323/opencms/export/site s/default/dhq/vol/001/2/000009.html

    or

    http://www.digitalhumanities.org/dhq/vol/001/2/000 009.html

    --
    Literacy Weblog http://jerz.setonhill.edu/weblog
  30. Re:Full source published by Dennis+G.+Jerz · · Score: 2, Informative

    Crowther also had adult playtesters, including his sister (who asked for a cheat code, leading to the invention of "XYZZY") and his colleagues at BBN. One of the vocabulary words it recognizes is "f*ck". Woods added the scoring and reincarnation system, a timer, and the game's conclusion. But Crowther's version had treasures, simple puzzles, basic combat, and magic (the crystal bridge, teleportation). Crowther's version was definitely a game. It's all in the Digital Humanities Quarterly article.

    --
    Literacy Weblog http://jerz.setonhill.edu/weblog
  31. Original Zork source code in MDL by SimHacker · · Score: 5, Interesting

    Zork was the reason I got on the ARPANET, back around 1980 or so. I was using Bruce's Northstar BBS that had an adventure game that Bruce had written in Basic, and he told me how to play Zork: first, dial up the NBS TIP, connect to MIT-AI (the command was "@L 134", because the ARPANET had 8 bit host numbers, and AI was 134), and apply for an account to learn Lisp. Once that was granted, I connected to MIT-DM ("@L 70"), and logged in as URANUS, password RINGS, used :CHUNAME to change my user name, and waited until one of the two people playing Zork quit, to take their slot. Later somebody told me the magic words to use to get an account on DM, so I applied for my own account on DM, claiming that I wanted to "Learn MDL for calculus and algebraic applications". The source code to Zork was well hidden. DM ran a weird version of ITS that had some kind of file security or cloaking, it was rumored. I was always looking for the Zork sources, but never found it on DM.

    Years later I googled for a unique phrase that was only in the original DM version of Zork, and this URL popped up: http://retro.co.za/adventure/zork-mdl/

    The original MDL source to Zork is really beautiful code that's almost as fun to read as it was to play. I had discovered a bug in the InfoCom version of Zork, which turned out to be in the original sources. When you're fighting the troll who's wielding an Axe, you can give anything to the troll and he will eat it. So I tried "give axe to troll" and he ate his axe, then cowered in the corner! Better yet you can go "give troll to troll" and he will eat himself and disappear, unfortunately not clearing the troll flag that is required to leave the room, so if you try to leave it prints a message saying the troll fends you off with a menacing gesture, and stops you from leaving. Sure enough, in the original sources, there is a troll flag!

    -Don

    --
    Take a look and feel free: http://www.PieMenu.com
    1. Re:Original Zork source code in MDL by Just+Some+Guy · · Score: 4, Funny

      I wore an onion on my belt

      That was a great story the last time you told it, too.

      --
      Dewey, what part of this looks like authorities should be involved?
  32. ancient text-based games by smellsofbikes · · Score: 2, Interesting

    Along with Adventure, we spent a lot of time on a VAX 11/785 (I believe) playing a game called Hunt. It was multiplayer and each screen showed a top-down section of the maze you were in, like larn, only past that it was like a FPS -- you wandered around, finding ammo, then shooting at other players you saw, using different weapons. A certain amount of ammo let you shoot a bullet, somewhat more a grenade, somewhat more yet an enormous blast that blew up part of the maze, and a whole lot of ammo let you shoot napalm, that ran along corridors without destroying anything (but would pursue people who were running.) I've been trying to find the sourcecode for it for years but haven't even found anyone who has heard of it. Anyone here?

    --
    Nostalgia's not what it used to be.
  33. Stop picking on Fortran, and stop using PHP! by SimHacker · · Score: 2, Insightful

    Hey, stop picking on Fortran. Sure it's a lame language, but it has an excuse: it's very old now, and didn't know any better at the time, when computer science was young.

    PHP is MUCH WORSE than Fortran, yet it was written many years later. The foolish PHP implementors had no excuse to make such a horrible language. They could have learned from the mistakes of the past, but instead they repeated them much worse, and added many original mistakes that nobody had even been stupid enough to make before.

    -Don

    --
    Take a look and feel free: http://www.PieMenu.com
  34. Re:Wait for the Game... by spun · · Score: 4, Interesting

    You are in a debris room filled with stuff washed in from the surface. A low wide passage with cobbles becomes plugged with mud and debris here, but an awkward canyon leads upward and west. There is a PDP-10 with a card reader and terminal here. A box of punchcards sits nearby.
    > get box
    You now have the box of punchcards.
    > input cards
    You carefully feed the cards into the card reader.
    > look terminal
    The terminal says:
    YOU ARE STANDING AT THE END OF A ROAD BEFORE A SMALL BRICK
    BUILDING. AROUND YOU IS A FOREST. A SMALL
    STREAM FLOWS OUT OF THE BUILDING AND DOWN A GULLY.

    --
    - None can love freedom heartily, but good men; the rest love not freedom, but license. -- John Milton
  35. Re:Found? When was it lost? by Green+Light · · Score: 2, Funny

    Umm, I think you missed his joke. Did you get the memo about the TPSREPORT?

    --
    "Send an Instant Karma to me" - Yes
  36. Re:Full source published by slapout · · Score: 2, Informative

    The text of some issues of Creative Computing magazine: http://www.atarimagazines.com/creative/index/

    Not sure if they have the issue you mention though.

    --
    Coder's Stone: The programming language quick ref for iPad
  37. Re:Found? When was it lost? by dmpyron · · Score: 4, Funny

    I've got a box of cards (two, actually. Two and half, really. You could never get all the cards back into the box). All I need is a card reader and a 360/65 with OS 360 and TSO and I'm set for life.

    I've also got a programming card for an 029 and COBOL.

    We were the sneaky bastards that used to put random comments and unused character strings into the code to thwart people like you. Then I graduated and became a people like you. And was constantly thwarted by people like me.

    OS 360, RSX11D, RSX11M, VMS. RIP.

  38. Re:Is it just me...? by drxenos · · Score: 4, Insightful

    I think you are looking at it from the wrong perspective. Do not look at its merits as a program, especially when compared to modern day games. Imagine you were a coin collector, and happened across an old coin thought to not even exist anymore. Or a comic collector finding a MINT copy of Detective #27 (there are no known mint copies). That is what it is like for me as a collector. Granted it does not have the monetary value of my examples, but money is not the point. It the historical value, and nostalgia for me.

    --


    Anonymous Cowards suck.
  39. Re:Why it was special... by rk · · Score: 2, Insightful

    Things were so different even just 20 or so years ago. In 1985, I hacked my college's VAX 11/750 to give me all privs. The system manager found me out, and just reset the privs, locked my account for a week, and asked how I did it so he could fix the problem. Wound up doing a lot of work for him until he left for greener pastures. It formally never happened, even though it could certainly have been elevated up the disciplinary chain.

    If I did that today, no doubt I would've been kicked out of school, arrested, and depending on what research was being done on the box, been subjected to extraordinary rendition to flush out my Al Qaeda cell. :-/

  40. Re:1976?? by somersault · · Score: 2, Funny

    He was using an emulator, running on a binary abacus

    --
    which is totally what she said
  41. Re:movie by NickFitz · · Score: 2, Funny

    I think to stay true to the period though Adventure The Movie should be in b&w.

    To stay properly true to the original, it should just be a film of a roll of paper coming out of a Teletype.

    --
    Using HTML in email is like putting sound effects on your phone calls. Just say <strong>no</strong>.
  42. Re:Yes, the famous FORTRAN computed GOTO... by belmolis · · Score: 2, Informative

    In a way, it wasn't a dead end. The computed goto is the ancestor of the switch construct of languages like C. The difference is that with a switch the consequents are associated with the trigger values, whereas the computed goto keeps all the trigger values grouped together.

  43. Compiled binaries for Windows by Da+VinMan · · Score: 2, Informative

    This site is really slow right now, but at a mere 68 KB, this old gem is worth a look.

    Have a look:
    http://www.ifarchive.org/if-archive/unprocessed/ad v_crowther_win.zip

    Not my work BTW. Credit goes to the crew on rec.arts.int-fiction.

    --
    Please mod this post only if you think others should/n't read this. I have enough ego^H^H^Hkarma. Thanks!
  44. Now I REALLY feel old... by Mr.+Protocol · · Score: 2, Interesting

    This story mildly creeps me out.

    I worked down the hall from Willie Crowther when I was at BBN, and I asked him about why he wrote it ("I had some ideas on parsing response analysis I wanted to try"). I think I at least used to have a copy of the Fortran source code salted away on my account somewhere, though I'd probably have a problem laying my hands on it now. I just wasn't aware that anyone was looking for it.

  45. Re:Yes, the famous FORTRAN computed GOTO... by prockcore · · Score: 2, Interesting

    The computed goto is the ancestor of the switch construct of languages like C.


    In fact, a switch in Java gets compiled into a computed goto in jasmin.