commit 92f45432e0633e93a01fee6ef4ee5a37cad46572 Author: historicalsource Date: Thu Apr 18 22:28:40 2019 -0400 Solid-Gold Edition diff --git a/actions.zil b/actions.zil new file mode 100644 index 0000000..64e091e --- /dev/null +++ b/actions.zil @@ -0,0 +1,4179 @@ +"1ACTIONS for + Zork I: The Great Underground Empire + (c) Copyright 1983 Infocom, Inc. All Rights Reserved. + + -- CHEAPO EDITION" + +"SUBTITLE THE WHITE HOUSE" + + + + )> + )>> + + + + + ) + (T )> + )>> + + + + >) + (T + + )> + ) + ( + + + + T) + (T >)> + )>> + + + )>> + + + > + + > + ) + ( + ) + (T + )>)>> + + + + ) + ( + )>) + ( + + ) + ( + )>) + ( + + ) + (T )>) + (T + )>> + + + ) + ( + ) + ( + ) + (T + )>> + + + + ) + ( + + T)>) + ( + >> + + + ) + (T + )>) + (T )>) + ( + ) + ( + + T) + ( + ) + ( + + + ) + (T + + )>) + (T + )>) + ( + )>> + +;"0 -> no next, 1 -> success, 2 -> failed move" + +> + > 2) + (T 1)>)>> + + + + > + )> + ) + ( + ) + ( + ) + ( + )>> + + + )>> + + ) + ( + CR> + ) + ( ;"fill bottle with water =>" + ;"put water in bottle" + + + + >) + ( + > + + >) + (ELSE + + )>)> + + + )>)> + ) + (T )> + > + > >)> + > + + + >>>> + + + ) + (>> + + ) + ( + > + + ) + (> + + ) + (T + + )>) + ( + + > + ) + (T + )>) + (.PI? + + > + ) + (ELSE + )> + ) + ( + + + >> + + )> + + + ) + (T + + )>) + ( + + )>> + +> + + + + ) + ( + > + ) + ( + + ) + (T + )> + ) + ( + + + ) + (T + )>)>> + + + + >) + ( + ) + ( > + ) + (T + )>> + + + + + CR>) + (T + + + + + )>) + ( + + CR>) + (T + + + + + > + >>> + )> + T)>) + ( + > + ) + ( + > + )>> + + + + >) + ( + ,WINNER ,HERE> + ) + (T )>)>> + + + + <>> + > + )> + T> + +> 1> ) + (T )>> + > + +> + + + + > + ) + (T + )>)>> + + + ) + ( ,PRSI>> + + > + )> + + + ) + ( + ) + (T + )>) + ( + + + + ) + ( + )>> + + + ) + ( + )>> + + + )>> + + + )>> + + + + + ) + (T + )>) + (<==? .RARG ,M-BEG> + > + ) + ( > + )>)>> + + + + + > + + >>> + + 8> 0> + ) + (T + )> + )>> + + + )>> + + + )>> + +\ + + > + )>> + +> + + + + ) + (T + )> + + + > + ) + (.RUG? + ) + ( + ) + (T + )> + + T) + ( + + + >> + + )> + >> + + )>)>> + +> + ) + (T + + )>)> + >>> + +> + )> + >> + )> + >>> + + + + ) + ( + > + ) + ( > + + ) + (T )>) + ( + + >> + ) + ( >> + + + ) + ( + CR>)>)>> + + + ) + ( + + >> + + + )>)>> + + + + + ) + (T )> + )>> + +>> + + ) + (>> + >> + ; + > + )> + ) + (T + + )>> + + + ) + (T + + + )>) + (T + + )>> + + + + ) + (T + )>) + ( + ) + (T + + + + )>) + ( + ) + ( + + >> + ) + ( + + >> + ) + (ELSE + )>)>> + +\ + +"SUBTITLE TROLL" + +) + (T )>> + +> + +> ) + ( + + ) + (T + )> + T)>> + +)) + + > + ) + ( + <>) + ( > + + + + + + > + T) + ( + + + T)>) + ( + + + + )> + ) + ( + + + + + )> + + ) + ( + + + )> + + ) + ( + + + + ) + (T + )> + >) + ( + + + > + T)>) + ( + + CR>) + ( + ,PRSO + > + > + + + + > + + + + ) + ( + + )> + + ) + (T + )> + + > + + + + ,F-DEAD> + ) + ( + + + ) + (T + + )>) + ( + ) + ( + )>) + ( + ) + (> + )>)>> + +\ + +"SUBTITLE GRATING/MAZE" + +;> ;"no longer used?" +> +> + +> + > + + ) + (T )> + + )> + <>> + + + ) + ( + + + + ) + (T + )>) + ( + + + ) + ( + + )> + )> + + ) + (T )>) + ( + > + )>> + + + + )>) + ( + + + + ) + (,GRATE-REVEALED + + )> + )>> + + + ) + ( + + + ) + (,GRUNLOCK + ) + (T + )> + )>> + + > + + ) + ( + + > + ) + ( + )>) + ( > + > + + ) + ( + > + ) + (T + )>) + ( + ) + ( + + "The grating opens.") + (T +"The grating opens to reveal trees above you.")> + "The grating is closed."> + + > + > + + + )> + ) + (T )>) + (T )>) + ( > + 20> + ) + (T + + )>)>> + + + ,MAZE-4) + ( ,DEAD-END-1) + ( ,MAZE-11) + ( ,MAZE-5)>> + + + + > + <>) + ( + > + + + ,PRSI>> + + )>> + + + + )>> + + + + + + T)>> + +\ + + + ) + ( + > + ) + ( > + )>> + +\ + +"SUBTITLE MIRROR, MIRROR, ON THE WALL" + + + + )>)>> + +> + + + > + >> + + )> + + )> + > + > + )> + > + + > + )> + > + + > + > + ) + ( + ) + (T + )> + ) + ( + ) + ( + ) + (T + + > + )>)>> + +\ + +"SUBTITLE THE DOME" + + + + )>)>> + + + + )>) + ( + + + > + + ) + ( + )>)>> + +;> ;"no longer used?" + +\ + +"SUBTITLE LAND OF THE DEAD" + + + + > + )>) + ( + + + + + > + ) + (T + )>)>) + ( + + > + + + + + + + + + + >)> + > + >) + ( + + > + + + + >)>) + ( + + + > + + + > + >)>)>> + +> + +> + + + >> + >> + +> + > + + + + + )>> + +\ + +"SUBTITLE FLOOD CONTROL DAM #3" + +> +> + + + + + ) + (,GATES-OPEN + ) + (,LOW-TIDE + ) + (T + )> + + )> + )>> + + + + + > + + + > + + T) + (T + + + > + + T)>) + (T )>) + (ELSE + )>) + ( + ) + ( + )>> + + + )>> + +> + + + + ;"next two from jeff" + ; + ; + + + + > + > + + ,VEHBIT> + ) + (T + )>) + ( + ) + ( + + >) + ( + )> + T> + +> + + + + ;"next two from jeff" + ; + ; + + + + + + ,VEHBIT>> + ) + ( + ) + ( + )> + T> + +> + + + + + + ) + ( + + + + + + > + T) + (T + )>) + ( + + + + ) + (T + + )>) + ( + + > + ) + ( + + + )>)>> + + + ) + ( + +) + ( + )>> + +> + >> )> + > + > + + + )>) + ( + > + )> + > + + + + > + ) + ( + + ) + (T )>)>)>> + + + + > + + + > + + >> + )>> + + + > + ) + ( + + > + + ) + ( + ) + (T + )>)>> + + + ) + ( + + ) + (T + )>)>> + +> + + + + ) + (,GATES-OPEN + ) + (,LOW-TIDE + ) + (T + )> + + )>> + + + ,VEHBIT>> + + ,LOW-TIDE> + ) + ( + ) + (T + )> + )>> + + + + ) + (,GATES-OPEN + ) + (,LOW-TIDE + ) + (T + )> + + )>> + +\ + +"SUBTITLE WATER, WATER EVERYWHERE..." + +)) + <==? ,PRSO ,BOTTLE>> + + + ) + ( + + + ) + ( + > + )>)> + > + + + T) + (.E? )>> + +\ + +"SUBTITLE CYCLOPS" + + + + + + ) + ( + + + ) + (ELSE + )>) + (,CYCLOPS-FLAG + + ) + ( + + > + + + >) + (T + )>)>) + ( + ) + ( > + + > + + + >>)> + >) + ( + + >> + + + + + + + ) + (T + )>) + ( + ) + (T + )>) + ( + > + + ) + (T + + + )> + )>) + ( + ) + ( + ) + ( + )>> + + ) + (> + >) + (T + 5> + > + ) + (T + + >) + (T + >)> + + 1>> + CR>)>)>)>> + + + + > + ) + (,MAGIC-FLAG + ) + (<0? ,CYCLOWRATH> + ) + ( + ) + ( + )>) + ( + >>)>> + +> + +\ + +"SUBTITLE LOUD LOUD LOUD" + +> + + + + ,LOW-TIDE>> + ) + (T + )> + ) + ( ,GATES-OPEN > + + > + ) + ( + ,LOW-TIDE>> + ) + (> + ) + (T + + + >)> + )> + "> + + + > + + )> + > + + >) + ( + >)> + + ) + ( + > + ) + ( + ) + ( + >) + ( + >) + ( + >) + ( + ) + ( + + + + )> + ) + ;(,DEAD ) + (T + )>>)>)>> + + + + > + ) + ( ,LOW-TIDE> + + ) + (T + )> + )>> + + +> + +\ + +"SUBTITLE A SEEDY LOOKING GENTLEMAN..." + +> + +;"I-THIEF moved to DEMONS" + +\ + +"SUBTITLE THINGS THIEF MIGHT DO" + +"INTERACTION WITH ADVENTURER -- RETURNS T IF THIEF FINISHED." + +)) + >) + ( + > + + + + + ) + ;( + + + + + + )>) + ( + >> + + + + + ) + ( > + ) + (> + + + + ) + ( ) + ( + + ) + ( + )> + + > + + + ) + (ELSE + )> + + ) + (.HERE? + + + + ) + (T + )> + + ) + (T + )> + + > + ) + (T + + )>)>) + (T + + + ) + ( + )> + + + ) + (T + )> + + ) + (T + )> + + > + )>)>)> + > + + + > + .OLD-LIT> + )> + > + +"SNARF STILETTO IF DROPPED IT" + +;"RECOVER-STILETTO moved to DEMONS" + +"PUT HIS BOOTY IN TREASURE ROOM" + + + + > + ) + (T )> + >>> + +)) + > + )> + > + ) + ( 0> + + + + + )>)> + >> + +"TAKE ALL OF THE VALUABLES SOMEWHERE AND PUT THEM SOMEWHERE ELSE" + +"MOVED TO DEMONS" + +"ROB MAZE" + +> + )> + > + + > + > + + + + + )> + )> + >> + +"STEAL SOME JUNK - moved to DEMONS" + +"DROP SOME JUNK - moved to DEMONS" + + + +\ + +"ROBBER-FUNCTION -- more prosaic thiefly occupations" + +> + +) "AUX" (FLG <>) X N) + + + >) + ( + + ,ROBBER-U-DESC>> + ) + ( + + >> + + + + + > + + + )> + + + ) + (T + )> + + )> + + ) + (T + + )>) + ( + ,PRSO + > + > + 0> + >> + > + + + )> + + + ) + ( 0> + + ) + (T + )>) + ( + ) + ( + ) + ( + )>) + ( + <>) + (> + + + + )> + T)>) + ( + + + > + + > + + + ) + (> + + + + )> + + + > + + )> + )> + >>) + (.X + )> + >) + ( + > + > + + > + T)>) + ( + > + + + + ) + ( + ,HERE> + + )> + > + + )>> + + + + + + + ,ROBBER-U-DESC> + ) + (T + )>) + ( + > + ) + ( + ) + ( + )>> + +> + )> + > + + + >)>> + + + + + + > + + ,ROBBER-U-DESC>>> + )>) + ( > + ) + (T )>> + + + <1? ,C-ENABLED?>> + > + > + + )> + + + )>> + +> + > + )> + ) + (> + )> + >>> + + + ) + ( + ) + ( + ) + ( + )>> + +\ + +"SUBTITLE RANDOM FUNCTIONS" + + + ) + ( + )>> + + + ) + ( + ) + ( + + + >>> + ) + ( + + )>> + + + + + )>> + +\ + +"SUBTITLE LET THERE BE LIGHT SOURCES" + +> + + + + > + + ) + ( + + ) + (T + > + <>)>) + ( + + ) + (T + > + <>)>) + ( + + + ) + ( + ) + (T + )> + )>> + + > + )>> + + + + > + + >)> + > + ) + ( + ) + (T + + + > + + + + )> + )>) + ( > + + + + > + )> + + ) + ( + + > + > ) + (T )> + + > ) (T )> + ) + ( + + ) + (T + )> + )>> + + + + + > + > + +)) + >>> + + > + >)>> + +)) + + >>> + + > + >)>> + + + + )> + > + + ) + (T + CR>)>)>> + + .N1) + (T .N2)>> + +> + >)> + ) + (T + + + ) + ( + + + + ) + (T + + )>) + ( + > + + + ) + (T + + + >)>) + ( + + ) + (T + + )>) + (T + )>) + ( + ) + ( + > + + + + + > + + )> + + ) + (T )>) + ( > + ) + ( + + + ) + (T )> + )>)>> + +> + + + + + > + > + + + >> + )>)>)>> + +\ + +"SUBTITLE ASSORTED WEAPONS" + + > + > + <>) + ( + > 1> + ) + ( + )>)>> + +"SUBTITLE COAL MINE" + +) FLAME) + + + + > + )> + + > + + > + + >> + ) + (T + )> + )>)>> + + ,WINNER ,HERE> + ) + (T + )>> + + + ) + ( > + ,WINNER ,HERE>> + + + )>)>> + + + + + ) + (T )> + )>> + + > + ) + ( + + CR>) + ( + + + + ) + (T + + )>) + ( + + + + T) + (T + CR>)>) + ( + + ) + (T + + )>)>> + + + + + ) + (T + + + ) + (T + > + ) + (T )>> + )>)>) + (T + )>)>> + + + > + + + > + + ) + ( 4> + > + )> + >> + ,LIT> + + )> + )>> + + + >> + )>> + + + + +\ + +"SUBTITLE OLD MAN RIVER, THAT OLD MAN RIVER..." + + + + >) + (T + )>)>> + + + + > + + + + + > + )> + ) + (T + + + > + )>) + ( + > + ) + (T + )>)>> + + + + ) + (T + )> + )>> + + + + + )> + + ) + ( + ) + (T + )>) + (T + )>) + ( + )>> + + + > + ) + ( + ) + ( + + ) + (T )>)>> + + + > + > + + + + + ) + ( + ) + ( + + ) + (T + + )>)>) + ( + )>> + +> + +> + +> + +> + >> + >) + (> + + + >>) + (T + )>> + +) "AUX" TMP) + <>) + ( + + + ) + ( + > + ) + ( + > + ) + (T + + )>) + ( + + > + + + ) + ( + ) + (T )> + ) + (> 1> + >> + ) + (> + + ) + (T )>) + ( + > + + + > + + >> + + + + > + + + ) + (T )> + + + + + ) + (T + )>)> + ) + ( + )>) + ( + + + + + + > + + + + + T)>) + ( + ) + ( + ,INFLATED-BOAT> + ) + (> + ) + (T + + + + )>)>> + +> + + + > + ) + ( + + > + )> + > + + + ) + ( + ) + (T + )>)>> + + + + + ,BUOY-FLAG> + + >)>)>> + + + + + + <==? ,PRSI ,SHOVEL>> + > + + + > + ) + ( + + + + )>) + (T + CR>)>)>> + +> + +\ + +"SUBTITLE TOITY POIPLE BOIDS A CHOIPIN' AN' A BOIPIN' ... " + + + + > + > + + + )>) + ( + > + ) + ( + > + ) + ( + > ) + ( > + + + ) + ( + + + + ) + (> + + ) + ( + )>)>) + ( >)>> + + > + + ) + ( + ) + ( + ) + ( + + > + + + ) + ( + ) + (T + + )>) + ( + + + ) + ( + )> + + + )>> + + + >) + (T )> + > + + > + +> + + + + > + + + ,PATH) + (T ,HERE)>>) + (T + )>) + (T + )>)>> + + + >> + +> + > + ) + ( + )>> + + >) + ( + + > + )>)>> + + + )>> + + + >> + ) + ( + + + )>)>> + +\ + +"SUBTITLE CHUTES AND LADDERS" + +> + > + + )>) + ( + + ) + (T + + + + > + + >> + )> + T)>)>) + ( ,DOME-FLAG> + ) + ( + > + + 0> + + ) + (T + )>) + (T + )>) + ( + > + + ) + (T + )>) + ( + + > + + ) + ( + )>)>> + + + >> + ) + (T )>> + + + >> + + + ) + (T + + )>) + ( + )>> + + + + ) + (T + )>) + (T CR>)>> + + + > + )>> + +"MORE RANDOMNESS" + +) "AUX" M) + + + > + )>) + ( + <>) + ( + ) + ( + ) + ( + ) + ( + ) + ( + ) + ( + ) + ( + ) + ( + ) + ( + + > + ) + (T + )> + + > + )> + + <>) + ( + + + + ;> + > + > + + >)> + + ) + (T + )>) + (T + + > + )>> + +;"Pseudo-object routines" + +) + ( + ) + ( + )>> + + + ) + ( + )>> + + + >> + ) + ( + ) + ( > + + )>> + + + )>> + + + + ) + (T + )>> + + + ) + ( + )>> + + + )>> + + ;"REALLY BLOW" + ) + ( + )>> + +"SUBTITLE MELEE" + +;"melee actions (object functions for villains called with these) " + + ;"busy recovering weapon?" + ;"mistah kurtz, he dead." + ;"into dreamland" + ;"rise and shine" + ;"strike first?" + +"blow results" + + ;"attacker misses" + ;"defender unconscious" + ;"defender dead" + ;"defender lightly wounded" + ;"defender seriously wounded" + ;"defender staggered (miss turn)" + ;"defender loses weapon" + ;"hesitates (miss on free swing)" + ;"sitting duck (crunch!)" + +"tables of melee results" + +> + +> + +> + +> + +> + +> + + + 0 ;>> + + + 0; >> + + + DEF3B + 0 ; + DEF3C>> + +\ + +"useful constants" + + + + + + +"I-FIGHT moved to DEMONS" + +)) + + > + + + )> + > + > + >) + ( + ,F-BUSY?>) + (>> + > + ) + ( + >>)>> + ) + (T + > + )>)>) + (T )>>> + + +;"takes a remark, defender, and good-guy's weapon" + +) (CNT 0) STR) + > .LEN> )> + > + ) + ( ) + (T )>> + > + +;"Strength of the player is a basic value (S) adjusted by his P?STRENGTH +property, which is normally 0" + +>>>> + >)(T .S)>> + +) + OD TMP) + > + > + ,THIEF-ENGROSSED> + )> + >)> + + ,PRSI>> + >> + )> + )>)> + .OD> + +"find a weapon (if any) in possession of argument" + +> + + )> + + > + ) + (>> )>>> + +) + (REMARKS ) + DWEAPON ATT DEF OA OD TBL RES NWEAPON) + + + + + )> + >> + > 0>> )> + >> + > + ) + (T + + )> + >>) + ( + )> + >>) + ( + > + ) + ( )> + >>)> + 1>>> + ) + (T )>)> + + .DWEAPON + >> + )> + >> + ,WINNER + .DWEAPON>)> + >) + () + ( + > + ) + ( + > + )> + + >)>) + ( + > + )> + + >)>) + ( ) + (T + ; .DWEAPON> + + > + )>)> + > + +) DWEAPON ATT DEF (CNT 0) + OA OD TBL RES NWEAPON (LEN )) + > + )> + > + ,PRSO> + )>> + + + + + )> + > + )> + + > + >>> + + >)> + + )> + > + > + + ) + (T )> + + ) + (T + + )> + >>) + ( + )> + >>) + ( + > + ) + ( )> + >>)> + 1>>> + ) + (T )>)> + .DWEAPON > + )> + >> + ,PRSO + ,PRSI>)> + >) + ( >) + ( > + ) + ( + > + )>) + ( + > + )>) + ( ) + (T + ; .DWEAPON> + + + + )> + > + +\ + + -10000)(T <- .DEF .OD>)>> + 0> + >)> + 0>> + >>>> + + <>) + (T .RES)>> + + + + + + + ,F-DEAD> + .RES) + ( + ,F-UNCONSCIOUS> + .RES) + (T .RES)>> + +\ + +> + >> + ) + ( ) + (<0? .PS> ) + ( ) + (T )>> + +)) + ) + ( > )> + + + >)> + >) + (T + + >)>> + +"FIGHTS" + +"messages for winner" + + ;"means print weapon name" + ;"means print defender name (villain, e.g.)" + + + + + + + > + + + + + > + + + > + + + + > + + + + > + + + + + > + + >>> + + +"messages for cyclops (note that he has no weapon" + + + > + > + > + + > + + > + + > + + > + > + >>> + + +"messages for troll" + + + + + > + > + + + > + + + + > + + + > + + + + > + + + > + + > + >>> + + +"messages for thief" + + + + + > + + > + + + > + + + + > + + + + > + + + > + + + > + + + > + + >>> + + +"each table entry is:" + + ;"villain" + ;"best weapon" + ;"advantage it confers" + ;"prob of waking if unconscious" + ;"messages for that villain" + +"This table must be after TROLL-MELEE, THIEF-MELEE, CYCLOPS-MELEE defined!" + + +
0 0 CYCLOPS-MELEE>>> + +"DEMONS" + +"Fighting demon" + +) (LEN ) + CNT OO O P) + )> + + > + )> + > + > ,HERE> + >> + ,THIEF-ENGROSSED> + >) + ( 0> + > + > > + + ) + (T + >)>) + ( + ,F-FIRST?>> + )>) + (T + + ,F-BUSY?>)> + >)> + + + + )>> + )> + > + +)) + + > + ,F-CONSCIOUS>)> + T> + +"SWORD demon" + +) (G ) + (NG 0) P T L) + + ) + (T + + >> + ) + (> + > + > + + > + + )>)>)>>)> + ) + ( + ) + (<1? .NG> + ) + (<0? .NG> + )> + + ) + (T + + )>> + +)) + ) + ( >> + ) + (>> )>>> + +"THIEF demon" + +) ROBJ HERE? (ONCE <>) (FLG <>)) + >> + >)> + >> + >)> + ;"silent") + ( + > + >> + )> + >)>) + (T + + >> ;"Leave if victim left" + + >)> + ;"Hack the adventurer's belongings" + + + > + ) + (T )>>)>)> + > > + ;"Move to next room, and hack." + + >>) + (T >)> + > + > + + + + > + )>> + )>> + > + )> + .FLG> + +)) + > + )> + > + ) + (> > + + + > + + )>)> + >> + +> + + )>> + +> + )> + > + > + + > + > + + >> + + + + >)> + + + ) + (ELSE )>)> + >> + +) "AUX" N X (ROBBED? <>)) + > + )> + > + > + > + 0> + >> + + + )> + )> + >> + +;"special-cased routines" + +>) + (WD ) (RS <+ .MS .WD>)) + #DECL ((MS WD RS) FIX) + ,C-ENABLED?>> ) + (ELSE >)> + ) + (T + + ) + ( ) + ( ) + ( )>)> + > + + > + ,C-TICK>>> + )> + + + ) + (<1? .RS> ) + ( ) + ( ) + ( + )> + + > + + ) + (T )> + )>> + +) + + + + + ) (ELSE )> + + + ) + ( ) + ( ) + ( ) + ( ) + ( ) + ( ) + (T )> + + ,SCORE> + +)) + + + )> + + + )> + + + ,VEHBIT> + > + )> + > + + ) + (T + > + + > + + + + + ; + + + ) + (T + + )> + + > + + + )>>> + +) F N L) + + )> + + )> + + > + > + + )> + > + 0> + >)> + + > + > + + ) + (ELSE >)>>) + (ELSE + >>)>>> + +> + > + > + > + > + > + > + > + + > + +> + +> + + + ) + ( + ) + ( > + )>> + + + ) + ( + )>> + + + + )>> + + + ) + ( + ) + ( + )>> + + + > + )>> \ No newline at end of file diff --git a/clock.zil b/clock.zil new file mode 100644 index 0000000..7347f54 --- /dev/null +++ b/clock.zil @@ -0,0 +1,64 @@ +"GCLOCK for + The Zork Trilogy + (c) Copyright 1983 Infocom, Inc. All Rights Reserved + + -- CHEAPO EDITION" + + + +> + + + + + + + + + + + + + +) + > ,C-TICK .TICK> + ;"added per RAGER" + ; + .CINT> + +) E C INT) + #DECL ((RTN) ATOM (DEMON) (E C INT) ) + > + > + + > + >> + > + + ) + ( .RTN> )> + >>> + +> + +)) + #DECL ((C E) (TICK) FIX (FLG) ) + > )> + >> + > + + > + ) + (>> + > + ) + (T + > + > + >> + )>)>)> + >>> diff --git a/dungeon.zil b/dungeon.zil new file mode 100644 index 0000000..984e16e --- /dev/null +++ b/dungeon.zil @@ -0,0 +1,2730 @@ +"1DUNGEON for + Zork I: The Great Underground Empire + (c) Copyright 1983 Infocom, Inc. All Rights Reserved. + -- CHEAPO EDITION" + + + +> + +"SUBTITLE OBJECTS" + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + )>> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Frobozz Magic Gunk Company <---| + All-Purpose Gunk")> + + + + + + + + + + + + + + + + + + + + + + + + + + + + +"SUBTITLE ROOMS" + +"SUBTITLE CONDITIONAL EXIT FLAGS" + +> +> +> +> +> +> +> +> +> +> +> + +"SUBTITLE FOREST AND OUTSIDE OF HOUSE" + + + + + + + + + + + + + + + + + + + + + + + + + + + ,GRATING-ROOM) + (T + + + )>) + (T )>> + + + + +"SUBTITLE HOUSE" + + + + + + + + + +"SUBTITLE CELLAR AND VICINITY" + + + + + + + + + + + + + + + + + +"SUBTITLE MAZE" + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +; + ) + (T + )>> + + + + + + + + + + + + + + +"SUBTITLE CYCLOPS AND HIDEAWAY" + + + + + + + + +"SUBTITLE RESERVOIR AREA" + + + + + + + + + + + + + + + + +"SUBTITLE MIRROR ROOMS AND VICINITY" + + + + + + + + + + + + + + + + + + + + +"SUBTITLE ROUND ROOM AND VICINITY" + + + + + + + + + + + + + + + + +"SUBTITLE HADES ET AL" + + + + + + + + +"SUBTITLE DOME, TEMPLE, EGYPT" + + + + + + + + + + + + + + + + +"SUBTITLE FLOOD CONTROL DAM #3" + + + + + + + + +"SUBTITLE RIVER AREA" + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + > + + )>> + + + +"SUBTITLE COAL MINE AREA" + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +"SUBTITLE COAL MINE" + + + + + + + + + + + +;"RANDOM TABLES FOR WALK-AROUND" + +> + +> + +> + +> + +;"The GO routine must live here." + +> ;"ints now as in orig." + + ;> + > + + ;> + + ;> + + > + > + > + > + > + > + + + + + + > + + )> + + + + + + + > \ No newline at end of file diff --git a/file.txt b/file.txt new file mode 100644 index 0000000..80c4d11 --- /dev/null +++ b/file.txt @@ -0,0 +1,7 @@ + + > + + > + + > \ No newline at end of file diff --git a/globals.zil b/globals.zil new file mode 100644 index 0000000..b16ba2a --- /dev/null +++ b/globals.zil @@ -0,0 +1,465 @@ + "Generic GLOBALS file for + The ZORK Trilogy + started on 7/28/83 by MARC + + -- CHEAPO EDITION" + +"SUBTITLE GLOBAL OBJECTS" + + + + + +;"Yes, this synonym for LOCAL-GLOBALS needs to exist... sigh" + + + + + + + +; + + + + + + + > + + ) + ( + ) + (T + + >)> + ;"Here is the default 'cant see any' printer" + > + > + + + + ) + (T + + + )> + > + +; returns + number of matches. If 1, then P-MOBY-FOUND is it. One may treat + the 0 and >1 cases alike or different. It doesn't matter. Always + return RFALSE (not handled) if you have resolved the problem." + > + ;)> + + ,P?GLOBAL>>> + + )> + + ;)> + ) + (T )> + ) + ( + + + + ) + (T ,NOT-HERE-OBJECT)>> + +;>)> + > + > + + ) + (T )> + > + +)> + )>) + (.PRSO? + <>>) + (T + <>>)>> + +> + +/^L + +"Objects shared by all three Zorks go here" + + + + + + + + + + + )>> + + + + + > + > + ) + ( + % + '> + + )>) + (ELSE T)> + ) + ( + > + % + '> + + + ) + (<==? ,HERE ,FLATHEAD-OCEAN> + ) + (T + )>) + (T )>) + (T + '> + ) + (<0? > + ) + (T + )>)>)>> + + + + + > + + ) + % + '( + )) + (T + '( + ))> + ( + )>> + + + + + ) + ( + ) + ( + )>> + + + + + + + > + > + ) + ( + > + + ) + ( + ) + ( + ) + ( + ) + ( + > + ) + (T + )>) + ( + + )>) + ( + ) + ( + + '( > + )) + (<==? ,ZORK-NUMBER 3> + '(,INVIS + )) + (T + '( ))> + (T + % + ') + (ELSE + ')>)>)>> + + + + + + + ) + ( + ) + ( + )>> + + + + + ) + ( + )>> + + + +;"status line stuff" + + + + + + + + + + + + + + + + + + + "Host machine." + "Width of screen in chars." +; "Center of screen." +; "Pixel width of characters." +; "Pixel height of characters." + +> + ;> + ; ,CWIDTH>> + > + + + )> + ; 1>> + ;> + + > + + ;> + + + ;> + + + ; ;"This semi by Jeff" + ;> + + + + + + )> + ; + + + > + +> "status line constructed here" +> + + +; + + + ;> + + + > + + ; ; "Screen off." + ; "Table on." + + ; "Table off." + ; ; "Screen on." + + ; "Erase old HERE desc" + > ; "Print new HERE desc." + + )> + + + + + ) + (T + + + + 2 ;1>>> + )> + + ;"Back to main screen." + > + +> 0> + ) + (T + )>> + > + + + ) + (T + + + >> + >)>)> + > \ No newline at end of file diff --git a/hint-txt.txt b/hint-txt.txt new file mode 100644 index 0000000..fed2af2 --- /dev/null +++ b/hint-txt.txt @@ -0,0 +1,392 @@ +;"longest hint topic can be 17 chars" + + + + + + + + + + + + + + + + + > + + + + + > + + + + + + > + + + + + + + > + + + + + + + + > + + + + + + + + + > + + + + + + + + + + + > + + > + + + + + + + + + + > + + + + + + + + + + + + >>> \ No newline at end of file diff --git a/hints.zil b/hints.zil new file mode 100644 index 0000000..b6a2b04 --- /dev/null +++ b/hints.zil @@ -0,0 +1,741 @@ +"HINTS for CHEAPO ZORK - (VIA SHERLOCK) +(c) Copyright 1987 Infocom, Inc. All Rights Reserved." + + + +> + +> + +) Q WHO) + + ) + ( + + + )> + > + + + + > ;"ie, 0" + ; + ; + + ;"> + > + %> + + ) + ( %> + + + + + + ) + (T ;> + + > + > + + )>) + ( %> + + + + > + + ) + (T ;> + + > + > + + )>) + ( + ; + + )>> + + ;"AGAIN does whole routine?")> + ; + ; + ; + + + + > + +)) + > + > + > + 0> 1>> + + + > + ; + ; + + ;"> + > + %> + + ) + ( %> + + + + + ) + (T ;> + + > + > + )>) + ( %> + + + + > + ) + (T + + > + > + )>) + ( + + )>> + + )>> + +;"zeroth (first) element is 5" +> + +;"zeroth (first) element is 4" +> + +;"four and nineteen are where the text of questions start" + + ;"determines where to place the highlight cursor + Can go up to 34, that is 17 slots in each row" + + ;"shows in HINT-TBL ltable which QUESTION it's on" + + ;"shows in HINT-TBL ltable which CHAPTER it's on" + + + <- 2 ;1>> + ;"erase previous highlight cursor"> + +;"go back 2 spaces from question text, print cursor and flash is between +the cursor and text" + + + <- 2 ;1>> + "> ;"print the new cursor"> + +)) + + > + > + +;"cnt (3) is where in table answers begin. (2) in table is # of hints-seen" + + + + + + + > + + + ;)> + + > + + + + <+ ,QUEST-NUM 1>>> + > + + > + ; ;"instead of CRLF" + + + > + ) + (T + CR CR> + >)>> + > + > + ) + (.FLG + 1>> ;"added +1 - Jeff" + + > + )> + "> + >)> + > + %> + + ;> + ) + ( + > + ;".cnt starts as 3 ;2" + > + + + > + ; 1> 2> + ;"3rd = line 7, 4th = line 9, ect" + + > + + ; 1>)>)>)>>> + + 0> 1>> + 1>> + + ; + ) + (T ;"zeroth" + > + <- > 1>>) + ;( + + >)> + <+ .ST 1>> 2 ;1>> + ; ;"above curset will do the trick?" + >>> + +> + 1>> + + ; + ) + (T ;"zeroth" + > + <- > 1>>) + ;( + + >)> + 1 ;,HINT-QUEST>> + ; ;"above curset will do the trick?" + >>> + +;"longest hint topic can be 17 chars" + + + + + + + + + + + + + + + + + > + + + + + > + + + + + + > + + + + + + + > + + + + + + + + > + + + + + + + + + > + + + + + + + + + + + > + + > + + + + + + + + + + > + + + + + + + + + + + + + ;>>> + +> + + + 1>> + + + + + + + + + + > + + + >)>> + +; +; +; +; +; + +; + 39> + )> + > + +;> + + + + + + >)> + .LEN> 2> 1>> + )> + + )>> + + + )> + + )>> + + + + + + >)> + .LEN>> + )> + + )>> + +> diff --git a/loop.zil b/loop.zil new file mode 100644 index 0000000..197484c --- /dev/null +++ b/loop.zil @@ -0,0 +1,316 @@ + "LOOP (formerly generic MAIN) file for + The ZORK Trilogy + started on 7/28/83 by MARC + + -- CHEAPO EDITION" + + + +> + +> + + + + + +> + +> + + + + + + + + + + + + + +;"GO now lives in SPECIAL.ZIL" + + +>>> + + + > + + > + > + > + > + > + > .ICNT> + ) + (T + ,IT> + + + )>)>> + + + > .OCNT> + ) + (T + ,IT> + + )>)>>)> + )> + .OCNT) + ( + + >) + (T >)> + .OCNT) + ( + > + + > + .ICNT) + (T 1)>> + <1? .ICNT>> >)> + + >> + >) + (<0? .NUM> + ,P-SONUMS>> + > + >) + ( + ) + (T + + >)>) + (T + + > + )> + > + > .NUM> + + + > + )> + + > + )> + + > + ) + (T )> + ) + ( + )> + ) + (T + >) + (T >)> + > + > + +;"multiple exceptions" + + 0> ,W?ALL>> + > + + > + ) + ( + .I + 0> ,W?ALL> + >> + ) + ( + + ,WINNER ,HERE .V>> + .I>> + ,SURFACEBIT>>> + + >>>> + ) + (ELSE + + ) + (T )> + )>)> +;"end multiple exceptions" + + + + > + )>)>>)> + > + ; ,PRSO> + >)> + ,P?ACTION> ,M-END>>)> + ; T) + (T + + + )> + >)>) + (T + >)> + % + ' + >>> + )>) + (ELSE ')> + T) + (T >)>)>> + +> + + + + + +% + +') (I <>) "AUX" V OA OO OI) + ; + % ') + (T ' 1>>>)> + >> + )> + )> + )> + + + + + >> + + )> + )> + )> + + + > >> + )> + + + >> .V) + (T + + + >> .V) + ( ,P?ACTION> ,M-BEG>> .V) + (>> .V) + (>>> .V) + (> + + ,P?CONTFCN>>>> + .V) + (> + >>> + .V) + (>> .V)>)> + + + + .V>) + (T + +'> + +) (I <>) "AUX" V OA OO OI) + #DECL ((A) FIX (O) (I) (V) ANY) + + )> + )> + )> + + + >> + )> + + + >> .V) + (T + + + >> .V) + ( ,P?ACTION> + ,M-BEG>> .V) + (>> .V) + (>>> .V) + (> + + ,P?CONTFCN> + + ,P?CONTFCN>>>> + .V) + (> + >>> + .V) + ( + >> .V)>)> + + + + .V> + + <>) + (T + + " CR>) + (T ">)>)> + + ) + (T )>> + + + ) + ( + ) + (T )>)> + .RES)>> + +)) + )> + > +>)> + diff --git a/nzork1.zip b/nzork1.zip new file mode 100644 index 0000000..b6e17f3 Binary files /dev/null and b/nzork1.zip differ diff --git a/parser.zil b/parser.zil new file mode 100644 index 0000000..028e562 --- /dev/null +++ b/parser.zil @@ -0,0 +1,1474 @@ + "Generic PARSER file for + The ZORK Trilogy + started on 7/28/83 by MARC + + -- CHEAPO via , from pdl's revision" + +;"WHICH and TRAP retrofixes installed" + +"Parser global variable convention: All parser globals will + begin with 'P-'. Local variables are not restricted in any + way. +" + + + +> +> +> + + + + + +> +;"pointers used by CLAUSE-COPY (source/destination beginning/end pointers)" + + + + + + + + + + + ;> + ;> + ;> +> + +;"INBUF - Input buffer for READ" + + + ;> + + ;> + <> <> <>>> + "word pointer to unknown token in P-LEXV" + "word pointer to sentence start in P-LEXV" + "byte length of unparsed tokens in P-LEXV" + "byte pointer to first free byte in OOPS-INBUF" + +;"Parse-cont variable" + +> + +;> + +;"Orphan flag" + +> +> +> +> +> +;"Parser variables and temporaries" + +;"Byte offset to # of entries in LEXV" + + ;"Word offset to start of LEXV entries" + ;"Number of words per LEXV entry" + + ;"Offset to parts of speech byte" + + + ,PLUS-MODE> 6) (T 4)>> + "Offset to parts of speech byte" + ,PLUS-MODE> 7) (T 5)>> + "Offset to first part of speech" + +; ;"Offset to first part of speech" +; ;"First part of speech bit mask in PSOFF byte" + + + +> +> +> +> + + + + + + + + + + + + + + +> +> + +" Grovel down the input finding the verb, prepositions, and noun clauses. + If the input is or , fall out immediately + setting PRSA to ,V?WALK and PRSO to . Otherwise, perform + all required orphaning, syntax checking, and noun clause lookup." + +) (OF-FLAG <>) + OWINNER OMERGED LEN (DIR <>) (NW 0) (LW 0) (CNT -1)) + > ,P-ITBLLEN> ) + (T + + >)> + )>> + + + > + > + > + + + + > + + > + ; ,VEHBIT>> + >)> + >)> + + + + > + )> + > + >) + (,P-CONT + + + + >> + )> + >) + (T + + > + ,VEHBIT>> + >)> + > + + )> + % ,PLUS-MODE> + ' + ">>) + (T + '">)> + + )> + > + )> + > ,W?OOPS> + > + ,W?PERIOD ,W?COMMA> + > + >)> + > + + ) + ( + + > + ,W?QUOTE>> + + ) + ( + )> + + >> + ;"maybe fix oops vs. chars.?" + 6>> + 7>> + <+ <* ,P-LEXELEN> 3>> + + > + > + ) + (T + > + + )>) + (T + > + )> + >)> + ,W?AGAIN ,W?G> + > + + ) + (,P-OFLAG + + ) + ( + + ) + ( + > + ,W?PERIOD ,W?COMMA ,W?THEN> + > + ,W?AND>> + >> + 2>>) + (T + + )>) + (T + > + 1>>)> + 0> + + ) + (T + >)> + ;> + + + + + + + ) + (T >)>>) + (T + + + + > + >>>> + > + >>> + > + + > + + + > 0> + > + ) + (> + >> + ) + (T >>)> + + > + ) + ( + + + ;"Last NOT added 7/3"> + + ) + (ELSE + + + )>)> + + + >) + (T )>)> + + >> + + ) + (> + ,ACT?WALK> + + + > + + >> + + > + + >>> + + + + ,W?THEN>)> + > + > + )>) + (> + > + + + + + 2>>>> + >>) + (> + + + > + + + + > + ;>> + ) + (> + + >> + + + + )>) + ( + + ) + (T + > + + > + > + + > + )>)>) + ( + + > + + ) + (T + >)>) + () + ( + + > + + ) + (T + + )>) + (T + + )> + + >>)> + > + + + > + + ) + (ELSE + )> + > + > + + + + > + T)>)>> + +> +> +> + +;"For AGAIN purposes, put contents of one LEXV table into another." +> + > + > + 2>> + > + 3>> + > + > + + )>>> + +;"Put contents of one INBUF into another" + 1>> + > + )>>> + +;"Put the word in the positions specified from P-INBUF to the end of +OOPS-INBUF, leaving the appropriate pointers in AGAIN-LEXV" +> + ) + (T + >> + >>>)> + > + >> + > + )>> + + .LEN>> + +;"Check whether word pointed at by PTR is the correct part of speech. + The second argument is the part of speech (,PS?). The + 3rd argument (,P1?), if given, causes the value + for that part of speech to be returned." + +> .BIT> + ) + ( 1) ;"NEW-VOC" + (T + > + > >)> + )>)>> + +;" Scan through a noun clause, leave a pointer to its starting location" + +) (FIRST?? T) NW (LW 0)) + 2>> + > + > .VAL> + .WRD> + >) + (T >)> + > )> + > >> + ,W?THE ,W?A ,W?AN> + 4>>)> + > 0> + >> + )> + > + >> + ) + (T >>)> + ) + ( + + > + >)>) + ( + + + ;"ADDED 4/27 FOR TURTLE,UP" + >> + > + + >> + >) + ( + + + >> + T) + ( + ;"semi ala BZork and elsewhere" + > + >) + ( + > + >> + + 2>>> + ) + (T >)>) + ( 0>>> + + >>) + ( + >> + > + ,W?THEN> + >) + ( T) + (T + + )>) + (T )> + + > + >>> + +)) + > 2>> + > 3>> + > 0> ) + (T + > + + + ) + ( ) + ( > + <- .CHR 48>>>) + (T )> + >)>> + + ) + (.TIM + >) + ( )> + >>)> + + ,W?INTNUM> + + + +> + + +;"New ORPHAN-MERGE for TRAP Retrofix 6/21/84" + +) WRD) + > + 0>> + ,PS?VERB ,P1?VERB> + > + >>> + ) + (>> + > + + + > + > + )> + >>> + + >>> + ) + ( ) + ( 1> + > + > + > + > + > + >)> + )>) + (T + >)> + >) + (T )>) + ( 1> + > + > + > + > + > + >)>)> + > + > + ) + (T )>) + (> + > > + > + ) + (T + > + > >)> + > + > + + ) + (T > )>) + ( + + ,PS?ADJECTIVE> + >> + ) + ( + + ) + ( ,PS?OBJECT> + + ) + (T + )> + )> + > + + + + > + )>>)>)> + > + > + > + + + > ,P-ITBLLEN> + + ) + (T >)>> + T> + +;"New ACLAUSE-WIN for TRAP retrofix 6/21/84" + +> + + > + + > + + 0>> > + > + > + + + + + > + + 0>> > + > + > + +;"Print undefined word in input. + PTR points to the unknown word in P-LEXV" + +) "AUX" (DID-CAP <>)) + ) + (ELSE + + .CAP?> + + 32>>) + (T + >)> + >)>>> + + + + + )> + + >> 2> + 3>> + + > + >> + + + + )> + + >> 2> + 3>> + + > + >> + +;" Perform syntax matching operations, using P-ITBL as the source of + the verb and adjectives for this input. Returns false if no + syntax matches, and does it's own orphaning. If return is true, + the syntax is saved in P-SYNTAX." + + + + + + + + + + + + + + + +) (DRIVE2 <>) PREP VERB TMP) + >> + + )> + >> + > + > + ,P-SONUMS>> + T) + (> + + >> + >>> + ) + ( > + > + ) + ( + > + + )>)> + + ) + (T + + )>) + (T >)>> + + + >>> + + + ) + ( + + >>> + + + ) + ( + + ) + (> + ) + (T + + + > + ) + (> + >) + (T + > + )> + + )> + + ) + (T )>> + + )>> + + + > + + + )> + > + > + > + ) + (T >)>> + + + + + + )> + > + + + + + )> + > + ) + (.D2 + > + )>> + +; .THE?>> + +) "AUX" BEG END) + > + >) + (ELSE + > + >)> + > + +) (Q? <>)) + ) + (T + > + T) + ( + ) + (.NOSP >) + (ELSE )> + + ) + ( + + ) + ( + + ) + (T + .CP> + )> + ) + ( + > + ) + (T + + >)> + >)>)> + >>> + +> + + + ) + (T + > + )>)>> + +) "AUX" BEG END) + >> + >> + + ,P-LEXELEN> 2>>> + + + ,P-LEXELEN> + 2>>> + ) + (T + >> + )> + >)> + >>> + + 2>> + .WRD> + + > + + 2>> + ) + ( .PREP> + >>)>>> + + + >> + + + +;"it seems most direct objects are in the acc. case and all indirect objects + are in the dative case; ie, for GWIMing just look at PRSO or PRSI to find + case; except for 'talk with troll', listen for bird, listen to bird" + + )> + + + + > + + 1> + > + + > + > + >> + ; + )> + + ;> + ) + (T + )> + + ) + (T + )> + ) + (ELSE + )> + .OBJ)>) + (T )>> + + + > 0>> + > + ,P-PRSI> >)> + > 0>> + > + ,P-PRSO> >)> + >> + > + >)> + + >>> + >)>)> + > + +> + + ) + (> ,P-BUTS>) + (T + .OBJ> + >)> + >> + + + + .NTBL> + +> +> +> +;> +> +> +> +> +> + + + + + + + +> + +) LEN WV WRD NW (WAS-ALL <>)) + > + + )> + + + > + + >> + )> + ) + (T + > + ) + (T >)> + + + + >)>) + ( + > > + + ) + ( + + + + >)>) + (T + + > > + >)>) + ( + >> + + > > + T) + () + () + ( + + )>) + (> + ;"below replacement line via BZork" + + > + + ;) + ( + + )>)> + > + > + )>>> + + + + + + + + + +) (OLEN 0) OBJ) + + > + )> + ,P-ADJ> + + + >) + ;"added by JEFF or Z3 to make 'go to dir' work" + (> + > + + + + )>)> + + + > + > + )> + )> + > > + )> + + ) + (T + + + )> + )> + .TLEN>> + ) + ( + >> + > + >> + + > + )> + ) + ( + >>> + + + + .LEN>> + ) + (T + )> + > + + ) + ( + + ,P-NC1) + (T ,P-NC2)>> + + + <>> + ) + (.VRB + )> + > + > + )>)> + .GCHECK> + + > + ;"Changed 6/10/83 - MARC" + + + + ; + > + > + ;> + ) + (T )>)> + > + > + ) + ( )> + + > + > + >> + +> +> +;> + + + + + >) + (ELSE + >)> + + > + > + + + > )> + ) + ( )> + > 1> + + )>>> + +> + + > + 2> 1>> + > .TBL> + )> + )>>)> + ;> + 4> 1>> + + >> + 1>>> + 5>> + > + > + + ) + ( )>>)> + .LEN> + + + + + > + > + )>)>> + +> + ) + (T + + ) + ( + ) + (T )>)>> + + + + + +> + > + + > + )> + > + + > + > + + >> + + ,P-SRCALL) + ( + ,P-SRCALL) + (T ,P-SRCTOP)>>>)> + >) (T )>>)>> + +> + .OBJ> + >> + +> + >>> + +) + > + + >> + > 0> ) + (T + >> + + > + + ) + (T + )>) + ;( + > + + ) + (T + )>) + ( + > + + ) + (T + )>)> + > + >> + + + ) + (> + >) + ( + > T>> + >) + (T )> + + > + + + )> + + + + ) + ( + > + )>)>)>>) + (T)>> + +> + +) TMP) + 1> + ,SMANY>>> + ) + ( 1> + ,SMANY>>> + )> + + )> + + > + ) + ( + >) + (T + >)> + + ) + (T)>> + + )> + > ) + (ELSE >)> + > + >>) + ( )>>> + +;> + ) + ( + )>>> + +> + +)) + > + )> + + + + > + ) + (T + + + + + + > + > + )>)> + + 0> )>)> + + + .LIT> + +;> 0> ,W?ES>> + ) + (T <>>)>> + +;> 0> ,W?ES>> + ) + (T <>>)>> + +;"old zork1 version w/ switch" + ) + (> + <- 2> 1>>>> + ) + (>> + ; 1>>> + ,PLUS-MODE> + '>) + (T + '>)>>>> + ) + (> >> + )> + > + + + ) + (T + >)> + + ) + ( + ) + ;( + + ) + (T + )>) + ( + ) + ( + ) + ( + > + ) + ( ,HERE >> + ) + (> + ) + ( + > + ) + (T + )>> + + + ) + ( + )> + + ) + (T + >)>>> diff --git a/syntax.zil b/syntax.zil new file mode 100644 index 0000000..316d4cb --- /dev/null +++ b/syntax.zil @@ -0,0 +1,578 @@ + "Generic SYNTAX file for + The ZORK Trilogy + started on 7/21/83 by SEM + -- CHEAPO EDITION" + +"Buzzwords, Prepositions and Directions" + + + + + + + ) + (<==? ,ZORK-NUMBER 3> + )> + + + + + + + + + + + + + + + + + + +"Game Commands" + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +; + +"Real Verbs" + + + +; +; + + + + + + + + + )> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +; + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + )> + + + + + + + + + + + + + + + + +; +; + + + + + + + + + + + + + + )> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +; + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +; + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/tells.zil b/tells.zil new file mode 100644 index 0000000..02e045c --- /dev/null +++ b/tells.zil @@ -0,0 +1,147 @@ +"TELLS (formerly GMACROS) for + The Zork Trilogy + (c) Copyright 1983 Infocom, Inc. All Rights Reserved + -- CHEAPO EDITION" + + + + + +; + + ) + (T + > + .X> + )>> + +> + +> + +> + +> + + + ) + ( ) + (ELSE )>>)> + )> + > + +
+ >>) + (ELSE .ATM)>>) + (ELSE .ATM)> + !.L)> + > + 3> )>> + !.L>)>>> + >> + +> + +> + +> + + + ) + (<==? .X FSET?> ) + (ELSE )>>)> + > + > + .ATM) + (ELSE )>> + !.O)>>> + + >> + + ) + (ELSE >)>> + +>) + (ELSE >)>> + +>>> + +) (CNT ) RND MSG RFROB) + > + > + >> + >> + > + > + + > + )> + + .MSG> + +> + +> + + + >> + + + >> + + ) + (T .NUM)>> + + ,PLUS-MODE> + 2> 1>) + (T 1>)>> + +; ,PLUS-MODE> + ) + (T )>> + +; ,PLUS-MODE> + ) + (T )>> + +;)) + ,PLUS-MODE> + + ) + (T )>) + (T + + ) + (T )>)>> \ No newline at end of file diff --git a/verbs.zil b/verbs.zil new file mode 100644 index 0000000..499a805 --- /dev/null +++ b/verbs.zil @@ -0,0 +1,2365 @@ + "Generic VERBS file for + The ZORK Trilogy + started on 7/25/83 by SEM + + -- CHEAPO EDITION" + +"Verb Functions for Game Commands" + +> +> +> + + + > + > + +> + > + > + + + > + +;"V-DIAGNOSE is in ACTIONS.ZIL" + + ) + (T )>> + + + + "> + + + ;> + > + + + ) + ( + > + + > + ) + (T + )>) + ( + ) + ( + + )>>> + + + + + ) + (ELSE )>> + + + + + + + )>> + +> + + + ; + ; + ;) + (T + )>> + +> 1> + ;> + ; + ) + ( + > + + + + + ) + (T + )> + > + +; 4> + -5>> + )>> + +;"V-SCORE is in ACTIONS.ZIL" + + 1>> + + + > + + + + -2>> + > + + + > + + > + + > + + + ') + (<==? ,ZORK-NUMBER 2> + ') + (<==? ,ZORK-NUMBER 3> + ')> + + + *3777*>> + + > 23> + ) + (T + >)>> + + + > + + + + + ) + (T + )>> + + + > + +> + ) + (T + > + )>> + + + > + + + > + +^L + +"Real Verb Functions" + +> + +;)) + + ) + (T + > + > + )>)> + > + > + )>)> + >> + + ) + (T + )>)>> + + + + '( 0> + + )) + (T + '( ))> + (T + )>) + (T + )>> + + + > + > + > + +> + ) + ( + > + ) + (> + ) + (> + ) + (T + % + ') + (T + ')>)>> + +> + +> + +> + + '( + )) + (T + '( ))> + ( + > + ) + ( + ) + (T + )>) + ( + + ) + (T + )> + > + + + > + + ,M-ENTER> + > + +> + +> + +> + +> + + + ) + ( + ) + (T + )>> + + + '( ,RECEPTACLE> + + )) + (T + '( ))> + ( + + > + + + + + ) + (T )> + ) + (T + + )>) + (T + )>> + +> + +> + + + ' + ,P?DOWN) + (T ,P?UP)> + T>) + (ELSE + ')>> + + + % + ') + (ELSE + ')> + ) + (T + )>> + +) "AUX" X TX) + >> + )> + > + > + + + >>>> + + > + )> + + + ) + (T )> + + )>)> + + ) + (.OBJ + ;> > + ) + (% + '> + ,TREE> + >) + (ELSE ')> + + ) + ( ,ROOMS> + ) + (T + )>> + +> + >> + ) + (> + 0>>> + + + + >>> + )> + ) + (T + )>) + ( + + + ) + (T + )>) + (T + )>> + + + ) + (T + )>> + + + ) + (T + )>> + +> + + + ) + (T + )>) + (T + )>> + + + ) + ( + > + + + )> + + ) + (> + ) + (T + )>> + +> + + + )> + % + ' + + )>) + (ELSE T)> + + ) + (T + )>> + + + ,VEHBIT>> + > + ) + ( ,PRSO>> + + ) + ( + > + + ) + (T + + )>> + + + '> + ) + ( + + > + + + ) + ( + ) + ( + ) + ( + ) + ( + ) + ( + )>)>) + ( + ) + ( + )>) + (T + ')>> + +> + +> + +> + + )>> + + + )>> + +) (DRINK? <>) (NOBJ <>)) + > + > + ,WINNER>>> + ) + ( + ) + (T + + )> + ) + ( + + > + + + ;> + ) + ( + >> + ) + ( + >> + ) + (> + ) + (T + )>) + (> + )>> + + + >> + )> + > + + (MAX CNT ECH) FIX) + % + ' 0> + ,P-WORDLEN>>> + > 1>> + > 2> + + ) + (T + 1>> + > .MAX> + ; ;"added jeff" + ) + (T + >)>> + )>>) + (T )>) + (T + ')>> + + + ')>) + (T + ')> +% + ' + + )> + + + > + + ) + (T + )>) + ;( + ) + ( + ) + ( + + + + ) + ( + + + + + ) + (ELSE + )>) + ( + > + + > + )> + ) + ( + > + + + ) + (ELSE + > + )>) + (ELSE + > + )>) + (T + ')>> + + + >)> + + + > + >> + )> + T> + +> + + + CR>) + ( + > + ) + (T + )>> + + ,ROOMS> + ,VEHBIT>> + > + ) + (> + + ) + (ELSE + )>> + +> + + + > + 2> 1>>> + + ) + (> + + ) + (T + + )>)> + + ) + (> + + )>> + +;"OLD ZORK1 PRE-FILL" +; + > + 1>>> + + ) + (T + + )>) + (> + + )>> + + + + + ) + (> + + ) + (T + )>) + (T + )>> + +)) + + ) + ( + ) + ( + ) + ( + ) + ( + + ;> + ) + ( + ) + ( + ) + ( + ) + (T + )>> + +> + +> + +> + )>> + +> + ) + (T + )>> + +> + + ;"counts occurences of HELLO, SAILOR" + + + ) + (T + )>) + (T + CR>)>> + + + > + + + ') + (,WAND-ON + + > + + >>> + > + ) + (T + )>) + (T + ')> + > + > + > + +> + +; + + + ) + (T + )> + ) + (T + )>> + +> + +> + + + ) + (T + )>> + + + > + ) + (T + + >)> + + + )>)>) + (T + )> + > + + + + ) + (T + + + + > + + )>)>) + ( + ) + (T + )> + > + + + ) + (T + )>> + +> + + + + ) + (T + )>) + (T + )>) + (> + > + ;NEXIT + ;CEXIT + >>>> + + >) + % + '( + + + )) + (T '( T))> + (T + )>) + (T + )>> + +> + +> + +> + +> + + + )>> + +> + + + + ) + (T + )> + ) + ( + + ) + ( + + > + ) + % + '( + )) + (ELSE '( ))> + (T + )>) + (T + )>) + (T + )>> + + + + ) + (T + )>> + +> + +> + +> + +> + + + )>> + + + ) + (T + )>> + +> + + + '( + )) + (T + '( ))> + ( + >> + + + ) + (T + )> + )>> + + + + ) + (T + )>> + + + '( + + > + > + + + + + )) + (T + '( T))> + (T + )>> + +> + + + 0>>> + + ) + (T + + + > > + ) + (> + > + > + >> + + ) + (T + + + )>)>) + ( + + ) + (T + + )>) + (T + )>> + + + '( + > ,VEHBIT> + > + ) + (T + )>)) + (T '( T))> + ( ,VEHBIT> + + ) + (T + )>> + +> + +> + + + + ) + (ELSE )>> + +> + + + + + + % + ' + >)>) + (ELSE ')> + + ) + (T + )>) + % + '( + )) + (T + '( ))> + (T + )>> + + + '( + )) + (T + '( ))> + (T + )>> + + + '(>> + )) + (T + '( ))> + % + '( + )) + (T + '( ))> + (T + )>> + +> + +> + + + '( + )) + (T + '( + ))> + (T + )>> ;"That's easy for you to say..." + + + + >) + (T + + )> + > + + ) + ( + ) + ( + ) + ( > + > + > + ) + (> + > + + ) + (> + >> + ) + (T + + + + )>> + +> + + + + ) + ( + ) + (T + )>> + +> + +> + +> + + + ) + (>> + )>> + +> + ) + (T + CR>)>> + + + > + +> + + + > + > + > + +> + +> + + + ' + + )>) + (<==? ,ZORK-NUMBER 3> + ' + ,W?FROTZ> + > ,W?OZMOO>> + > + + + ) + (T + )> + )>) + (T + ' + + )>)> + > + > + + >) + ( ,W?HELLO>> + > + )> + > + +> + + + ) + (T + )>> + + + > + +> + + + ) + (> + ) + ( + + + + + + ') + (ELSE + '>)> + ) + (T + )> + ) + (T + )>) + (T + + ) + (T + )>)>) + (T + )>> + +> + + + ' + ,PATH) + (> + ,STREAM ;,PSEUDO-OBJECT) + (T + ,HERE)>) + (<==? ,ZORK-NUMBER 2> + ' + ,PSEUDO-OBJECT) + (> + ,PSEUDO-OBJECT) + (T + ,HERE)>) + (T + ' + ,IN-LAKE) + (T + ,HERE)>)>>) + (T + )>>> + + CR>> + +> + +> + +> + +> + + + ) + (T + )> + > + +> + +> + + ) + (T + )>> + + ,VEHBIT> + > + ) + (T + )>> + +> + + + ) + (T + + )>> + + + <==? ,ZORK-NUMBER 2>> + '( + + >> + ) + (T + )> + )) + (T + '( + ))> + % + '( + )) + (T + '( + ))> + (T + )>> + + + ) + (T + )>> + + + + ) + (T + )>) + ( ,CONTBIT> + ,OPENBIT>>> + + ) + (,PRSI + + > + )> + % + ' + > + )>) + (ELSE + ')> + >> + ) + (T + > + )>) + (> + )>> + + T> + + ) + (T + )>)>> + + + + >) + (T + )>) + (T + + > + > + )>> + +) "AUX" M) + #DECL ((OBJ) (M) ) + + >> + + ) + ( > + + ) + (>> + % + '>> + + ) + ( + + ,SCOL-ROOM> + + ) + ( + > 1>>> + > + > + ) + (T + )> + ) + ( + + )>) + (ELSE ')> + ) + ( + ) + (T + CR>)>> + + + + + + ) + (> + ) + (T )>) + (ELSE )>> + +> + + + ) + (T + )>> + +> + + + '( + )) + (T + '( ))> + % + '( + )) + (T + '( ))> + (T + )>> + + + ' ,ROOMS> + > + + )>) + (ELSE T)> + + ' ,ROOMS> + >>) + (ELSE + ' ,ROOMS>)> + ) + (> + )>> + +> + +> + +> + + + > 0> ) + ( )>> + > + + + + ) + (> + > ,UEXIT> + >) + ( + CR> + ) + ( + >> + ) + % + '( ,CP-MOVED> + )) + (T + '( ))> + (T + )>) + ( + > + >) + (> + + ) + (T + + )>) + ( + > ,OPENBIT> + >) + (> + + ) + (T + + + )>)>) + ( + + + >> + + ) + % + '( + )) + (T + '( + ))> + (T + )>) + (T + + )>> + +> + + + >> + ) + (T + )>> + +> + +> + ) + (T + + )>> + +> + +> + + + ') + (T + ')>> + +> + +> + +> + + +"Verb-Associated Routines" + +"Descriptions" + +> + +> + + + + )>)>> + +) "AUX" V? STR AV) + > + + + + )> + + % + ' + )>) + (T + ')> + )> + > + + )> + % + ' + )>) + (T + ')> + + ;"Was " + + > ,VEHBIT> + )> + )> + + ' >) + (ELSE + '>)> + > + ; + )> + ,M-LOOK>> + ) + (>> + ) + (T + ,M-FLASH>)> + > > + ,M-LOOK>)>)> + T> + +)) + + > -1>)>) + (T + )>> + +"DESCRIBE-OBJECT -- takes object and flag. if flag is true will print a +long description (fdesc or ldesc), otherwise will print short." + +> + +) AV) + + + ,M-OBJDESC>> + ) + ( + > + >> + >>> + ) + (<0? .LEVEL> + + + )> + ) + (T + > + + + ) + ( + > + )>)> + % + ' + > + )>) + (T + ')> + + > + > + )> + + > + )>> + +) (TWO? <>)) + > + > + >) + (ELSE + + )>)> + + > + ) + (ELSE + + >)> + + + > + )> + )>>)>> + +) (LEVEL 0) + "AUX" Y 1ST? SHIT AV STR (PV? <>) (INV? <>)) + >> )> + > > + T) + (ELSE >)> + + + > + ) + (ELSE + + '( + + <==? ,SPELL? ,S-FANTASIZE> + > + + " here." CR> + >)> + )) + (ELSE + '( + ))> + ( ) + () + (> + > + >> + > + + > + ;>)> + + ,P?DESCFCN>> + > + + >)>)>)> + >>)> + > + + > + > ;"not in Zork III" + )> + ) + () + (> + + >>> + > + + + )>)> + > + >)> + )> + ) + ( > + > ;"not in Zork III" + + > ;"not in Zork III")>)> + >> + ) (T )>> + + + '( + )) + (T + '( ))> + ( + ) + (> + + >)> + + ) + ( + ) + (T + )>)>> + +> + >>> + +"Scoring" + + + + + + + +> + +> + > + % + ' + > + + + + )>) + (T + ')> + T> + +> 0> + + )>> + +;"> + + ,W?YES ,W?Y> + ) + (T + )>> + +> +> + +"> + + + >> + >> + > + + > + + ) + ( + > + > + ) + ( + ) + ( + > + ) + ( + )>)> + > + .VAL> + +"Death" + +> + + + + + +;"JIGS-UP is in ACTIONS.ZIL" + +;"RANDOMIZE-OBJECTS is in ACTIONS.ZIL" + +;"KILL-INTERRUPTS is in ACTIONS.ZIL" + +"Object Manipulation" + + + + + + (CNT) FIX (OBJ) OBJECT) + + '(,DEAD + )> + )) + (T + '( + ))> + (> + CR>)> + ) + % + '( + > + + ) + (T + )> + )) + (T + '( + ))> + ( ,CONTBIT> + ,OPENBIT>>> + ;"Kludge for parser calling itake" + ) + ( ,WINNER>> + > ,LOAD-ALLOWED>> + + + ) + (T + )> + )> + ) + ( + > ,FUMBLE-NUMBER> + >> + + ) + (T + + + + % + ' + + + )>)>) + (T + ')> + % + <==? ,ZORK-NUMBER 2>> + ') + (T + ')> + )>> + +> + ,WINNER>>> + + ) + (> + ,OPENBIT>>> + + ) + (T + > + )>> + +> + > + >)> + >> + )>>)> + .CNT> + +> + + > + >) + (T + >>)> + >> )>>)> + <+ .WT >> + +"Miscellaneous" + + + ,PLUS-MODE> 2) (T 1)>> + "Uncondl EXIT: (dir TO rm) = rm" + ,PLUS-MODE> 3) (T 2)>> + "Non EXIT: (dir ;SORRY string) = str-ing" + ,PLUS-MODE> 4) (T 3)>> + "Fcnl EXIT: (dir PER rtn) = rou-tine, 0" + ,PLUS-MODE> 5) (T 4)>> + "Condl EXIT: (dir TO rm IF f) = rm, f, str-ing" + ,PLUS-MODE> 6) (T 5)>> + "Door EXIT: (dir TO rm IF dr IS OPEN)= rm, dr, str-ing, 0" + + + + ,PLUS-MODE> 4) (T 1)>> "GET/B" + "GET" + "GET/B" + ,PLUS-MODE> 2) (T 1)>> "GET" + +> + + + > + ) + (T + CR>)>> + +> + +) + (T + )> + > + +) (WLOC ) + (AV <>) OLIT OHERE) + + + + >)> + + > + + ) + ( + >> + + ) + ( + .LB + .AV + > + >> + + ) + ( + CR> + ) + (T + > + + > + % + ') + (<==? ,ZORK-NUMBER 2> + ' + ) + ( + )>) + (<==? ,ZORK-NUMBER 3> + ' + )>)>)> + ) + (T + )> + + > + + + > + ) + % + '( + )) + (T + '( + ))> + (T + + ,VEHBIT> + >) + (T )> + + )>)> + + > + + >)> + ,M-ENTER> + + > ) + (> + > + ) + % + '( + ;"no double description" + > + )) + (ELSE + '( ))> + (> + )> + )>> + +)) + > .LEN> + ) + ( .ITM> + ) + (T + >>)>)>>> + + + > + +;> + <- 2> 1>>> + +> + 2> 1>>)>> + +> + + )> + + >> + ) + (>> + >)>>> + + +; + >> + +> + ) + ( )>>> + +> ,LOW-DIRECTION> + >) + (ELSE + > + ,DEXIT> + .DOBJ>> + )>)>>> + + + ' + )>) + (ELSE T)> + + > + +> + + + + > ;"PRSO is a direction" + ;"is this necessary?" + > + ) + (T + )>> + + + >)> + +> + +> + +> \ No newline at end of file diff --git a/zork1.chart b/zork1.chart new file mode 100644 index 0000000..77aeef1 --- /dev/null +++ b/zork1.chart @@ -0,0 +1,58 @@ +-date- -rel- -size- -pre- -obj- -glo- -voc- +10/30 1 92942 23492 259 171 688 +10/30 2 92950 23524 260 170 689 +10/30 3 93090 23554 260 168 689 +10/31 4 104640 23554 260 168 689 +10/31 5 104756 23554 260 168 689 +10/31 6 105424 23554 260 168 689 +10/31 7 26117 23554 260 168 689 +10/31 8 26117 23554 260 168 689 +11/01 9 104096 23554 260 168 689 +11/01 10 104144 23554 260 168 689 +11/01 11 104144 23554 260 168 689 +11/01 12 104144 23554 260 168 689 +11/01 13 104096 23554 260 168 689 +11/02 14 104108 23559 260 168 690 +11/02 15 104104 23559 260 168 690 +11/03 16 104136 23559 260 168 690 +11/03 17 104132 23559 260 168 690 +11/04 18 104120 23559 260 168 690 +11/04 19 104124 23559 260 168 690 +11/04 20 104124 23559 260 168 690 +11/04 21 104124 23559 260 168 690 +11/04 22 104124 23559 260 168 690 +11/04 23 104124 23559 260 168 690 +11/04 24 104124 23559 260 168 690 +11/04 25 104148 23559 260 168 690 +11/04 26 104152 23559 260 168 690 +11/04 27 104148 23559 260 168 690 +11/05 28 104140 23559 260 168 690 +11/05 29 104136 23559 260 168 690 +11/05 30 104124 23559 260 168 690 +11/05 31 104144 23579 260 168 692 +11/06 32 104164 23579 260 168 692 +11/09 33 104152 23579 260 168 692 +11/10 34 104180 23579 260 168 692 +11/11 35 104240 23581 260 169 692 +11/11 36 105064 23581 260 169 692 +11/11 35 105068 23581 260 169 692 +11/11 35 104392 23579 260 168 692 +11/11 35 104392 23579 260 168 692 +11/11 36 104400 23579 260 168 692 +11/11 36 104364 23579 260 168 692 +11/11 37 104360 23579 260 168 692 +11/11 38 104360 23579 260 168 692 +11/11 39 104360 23579 260 168 692 +11/11 40 104484 23579 260 168 692 +11/11 41 104388 23579 260 168 692 +11/13 42 105032 23579 260 168 692 +11/14 43 105204 24669 260 168 692 +11/14 44 105204 24669 260 168 692 +11/14 45 105204 24669 260 168 692 +11/14 46 105204 24669 260 168 692 +11/14 47 105268 24669 260 168 692 +11/16 48 105276 24669 260 168 692 +11/18 49 105216 24665 260 166 692 +11/23 50 105260 24665 260 166 692 +11/23 51 105264 24665 260 166 692 +11/25 52 105264 24665 260 166 692 diff --git a/zork1.doc b/zork1.doc new file mode 100644 index 0000000..6d5f559 --- /dev/null +++ b/zork1.doc @@ -0,0 +1,402 @@ + + + + + + + + + + + + + + + + + > + + + + > + + + + + + + + + + + + + + + + + + + > + + + + + + + + + > + + + + + + + + + + + > + + + + > + + + + + + + + + + + + + + + + + + + + + + + + ;>>> + \ No newline at end of file diff --git a/zork1.errors b/zork1.errors new file mode 100644 index 0000000..e370955 --- /dev/null +++ b/zork1.errors @@ -0,0 +1,34 @@ +Assembling ZORK1.ZAP.43 on Wednesday, November 25, 1987 11:58:04 +Release: 52 + + 64 Inserting ZORK1FREQ.XZAP.1 (624 bytes) + 688 Inserting ZORK1DAT.ZAP.41 (23977 bytes) + 24665 Inserting ZORK1PUR.ZAP.41 (1586 bytes) + 26251 Inserting TELLS.ZAP.13 (106 bytes) + 26357 Inserting DUNGEON.ZAP.17 (230 bytes) + 26587 Inserting GLOBALS.ZAP.18 (1419 bytes) + 28006 Inserting CLOCK.ZAP.12 (154 bytes) + 28160 Inserting LOOP.ZAP.11 (850 bytes) + 29010 Inserting PARSER.ZAP.14 (6212 bytes) + 35222 Inserting VERBS.ZAP.31 (10773 bytes) + 45995 Inserting ACTIONS.ZAP.18 (29673 bytes) + 75668 Inserting HINTS.ZAP.19 (1284 bytes) + 76952 Inserting ZORK1STR.ZAP.41 (28312 bytes) + +Symbols unused: +UNTIE-FROM +BREATHE +CYCLOPS-MELEE +TROLL-MELEE +DEF2A +DEF3C +THIEF-MELEE + +260 objects. +166 globals. +692 word vocabulary. + +105264 bytes (103K). + 24665 bytes of preload. + 15166 bytes of impure. +Outputting symbol tables diff --git a/zork1.lowcore b/zork1.lowcore new file mode 100644 index 0000000..f2cc37e --- /dev/null +++ b/zork1.lowcore @@ -0,0 +1,2 @@ + +0 \ No newline at end of file diff --git a/zork1.pre b/zork1.pre new file mode 100644 index 0000000..46b57a1 Binary files /dev/null and b/zork1.pre differ diff --git a/zork1.pur b/zork1.pur new file mode 100644 index 0000000..f7a6fe9 Binary files /dev/null and b/zork1.pur differ diff --git a/zork1.record b/zork1.record new file mode 100644 index 0000000..b313c45 --- /dev/null +++ b/zork1.record @@ -0,0 +1,367 @@ + +Combined ZIL Compiler Ver 2.0 (MIM) +----------------------------------- +Input file: SS:ZORK1.ZIL.26 +Compiling routine: V-VERBOSE +Compiling routine: V-BRIEF +Compiling routine: V-SUPER-BRIEF +Compiling routine: V-INVENTORY +Compiling routine: FINISH +Compiling routine: V-QUIT +Compiling routine: V-RESTART +Compiling routine: V-RESTORE +Compiling routine: V-SAVE +Compiling routine: V-SCRIPT +Compiling routine: V-UNSCRIPT +Compiling routine: V-$ID +Compiling routine: V-VERSION +Compiling routine: V-VERIFY +Compiling routine: V-COMMAND-FILE +Compiling routine: V-RANDOM +Compiling routine: V-RECORD +Compiling routine: V-UNRECORD +Compiling routine: V-ADVENT +Compiling routine: V-ALARM +Compiling routine: V-ANSWER +Compiling routine: V-ATTACK +Compiling routine: V-BACK +Compiling routine: V-BLAST +Compiling routine: PRE-BOARD +Compiling routine: V-BOARD +Compiling routine: V-BREATHE +Compiling routine: V-BRUSH +Compiling routine: V-BUG +Compiling routine: TELL-NO-PRSI +Compiling routine: PRE-BURN +Compiling routine: V-BURN +Compiling routine: V-CHOMP +Compiling routine: V-CLIMB-DOWN +Compiling routine: V-CLIMB-FOO +Compiling routine: V-CLIMB-ON +Compiling routine: V-CLIMB-UP +Compiling routine: V-CLOSE +Compiling routine: V-COMMAND +Compiling routine: V-COUNT +Compiling routine: V-CROSS +Compiling routine: V-CURSES +Compiling routine: V-CUT +Compiling routine: V-DEFLATE +Compiling routine: V-DIG +Compiling routine: V-DISEMBARK +Compiling routine: V-DISENCHANT +Compiling routine: V-DRINK +Compiling routine: V-DRINK-FROM +Compiling routine: PRE-DROP +Compiling routine: V-DROP +Compiling routine: V-EAT +Compiling routine: HIT-SPOT +Compiling routine: V-ECHO +Compiling routine: V-ENCHANT +Compiling routine: REMOVE-CAREFULLY +Compiling routine: V-ENTER +Compiling routine: V-EXAMINE +Compiling routine: V-EXIT +Compiling routine: V-EXORCISE +Compiling routine: PRE-FILL +Compiling routine: V-FILL +Compiling routine: V-FIND +Compiling routine: V-FOLLOW +Compiling routine: V-FROBOZZ +Compiling routine: PRE-GIVE +Compiling routine: V-GIVE +Compiling routine: V-HATCH +Compiling routine: V-HELLO +Compiling routine: V-HINTS-OFF +Compiling routine: V-INCANT +Compiling routine: V-INFLATE +Compiling routine: V-KICK +Compiling routine: V-KISS +Compiling routine: V-KNOCK +Compiling routine: V-LAMP-OFF +Compiling routine: V-LAMP-ON +Compiling routine: V-LAUNCH +Compiling routine: V-LEAN-ON +Compiling routine: V-LEAP +Compiling routine: V-LEAVE +Compiling routine: V-LISTEN +Compiling routine: V-LOCK +Compiling routine: V-LOOK +Compiling routine: V-LOOK-BEHIND +Compiling routine: V-LOOK-INSIDE +Compiling routine: V-LOOK-ON +Compiling routine: V-LOOK-UNDER +Compiling routine: V-LOWER +Compiling routine: V-MAKE +Compiling routine: V-MELT +Compiling routine: PRE-MOVE +Compiling routine: V-MOVE +Compiling routine: V-MUMBLE +Compiling routine: PRE-MUNG +Compiling routine: V-MUNG +Compiling routine: V-ODYSSEUS +Compiling routine: V-OIL +Compiling routine: V-OPEN +Compiling routine: V-OVERBOARD +Compiling routine: V-NO +Compiling routine: V-PICK +Compiling routine: V-PLAY +Compiling routine: V-PLUG +Compiling routine: V-POUR-ON +Compiling routine: V-PRAY +Compiling routine: V-PUMP +Compiling routine: V-PUSH +Compiling routine: V-PUSH-TO +Compiling routine: PRE-PUT +Compiling routine: V-PUT +Compiling routine: V-PUT-BEHIND +Compiling routine: V-PUT-ON +Compiling routine: V-PUT-UNDER +Compiling routine: V-RAISE +Compiling routine: V-RAPE +Compiling routine: PRE-READ +Compiling routine: V-READ +Compiling routine: V-READ-PAGE +Compiling routine: V-REPENT +Compiling routine: V-REPLY +Compiling routine: V-RING +Compiling routine: V-RUB +Compiling routine: V-SAY +Compiling routine: V-SEARCH +Compiling routine: V-SEND +Compiling routine: PRE-SGIVE +Compiling routine: V-SGIVE +Compiling routine: V-SHAKE +Compiling routine: SHAKE-LOOP +Compiling routine: V-SKIP +Compiling routine: V-SMELL +Compiling routine: V-SPIN +Compiling routine: V-SPRAY +Compiling routine: V-SQUEEZE +Compiling routine: V-SSPRAY +Compiling routine: V-STAB +Compiling routine: V-STAND +Compiling routine: V-STAY +Compiling routine: V-STRIKE +Compiling routine: V-SWIM +Compiling routine: V-SWING +Compiling routine: PRE-TAKE +Compiling routine: V-TAKE +Compiling routine: V-TELL +Compiling routine: V-THROUGH +Compiling routine: V-THROW +Compiling routine: V-THROW-OFF +Compiling routine: V-TIE +Compiling routine: V-TIE-UP +Compiling routine: V-TREASURE +Compiling routine: PRE-TURN +Compiling routine: V-TURN +Compiling routine: V-UNLOCK +Compiling routine: V-UNTIE +Compiling routine: V-WAIT +Compiling routine: V-WALK +Compiling routine: V-WALK-AROUND +Compiling routine: V-WALK-TO +Compiling routine: V-WAVE +Compiling routine: V-WEAR +Compiling routine: V-WIN +Compiling routine: V-WIND +Compiling routine: V-WISH +Compiling routine: V-YES +Compiling routine: V-YELL +Compiling routine: V-ZORK +Compiling routine: V-FIRST-LOOK +Compiling routine: DESCRIBE-ROOM +Compiling routine: DESCRIBE-OBJECTS +Compiling routine: DESCRIBE-OBJECT +Compiling routine: PRINT-CONTENTS +Compiling routine: PRINT-CONT +Compiling routine: FIRSTER +Compiling routine: SEE-INSIDE? +Compiling routine: SCORE-UPD +Compiling routine: SCORE-OBJ +Compiling routine: YES? +Compiling routine: ITAKE +Compiling routine: IDROP +Compiling routine: CCOUNT +Compiling routine: WEIGHT +Compiling routine: HACK-HACK +Compiling routine: NO-GO-TELL +Compiling routine: GOTO +Compiling routine: LKP +Compiling routine: DO-WALK +Compiling routine: GLOBAL-IN? +Compiling routine: FIND-IN +Compiling routine: HELD? +Compiling routine: OTHER-SIDE +Compiling routine: MUNG-ROOM +Compiling routine: THIS-IS-IT +Vocabulary: 692 + +Prepositions: 18 + +ABOUT AROUND AWAY DOWN FROM OFF OUT TO UP +ACROSS AT BEHIND FOR IN ON OVER UNDER WITH + +Real globals: 162 + +ABOVE-GROUND HINTS P-NCN +AGAIN-DIR HINTS-OFF P-NOT-HERE +AGAIN-LEXV HO-HUM P-NUMBER +ALWAYS-LIT HOST P-OCLAUSE +BASE-SCORE HOUSE-AROUND P-OFLAG +BAT-DROPS HS P-ONEOBJ +BDIGS IN-HOUSE-AROUND P-OTBL +BEACH-DIG INDENTS P-OVTBL +BUOY-FLAG JUMPLOSS P-PRSI +C-DEMONS KITCHEN-WINDOW-FLAG P-PRSO +C-INTS LAMP-TABLE P-SLOCBITS +C-TABLE LIGHT-SHAFT P-SYNTAX +CAGE-TOP LINE-TABLE P-TABLE +CANDLE-TABLE LIT P-VTBL +CHAPT-NUM LLD-FLAG P-WALK-DIR +CLOCK-WAIT LOAD-ALLOWED P-WON +COFFIN-CURE LOAD-MAX P-XADJ +COLUMN-TABLE LOUD-FLAG P-XNAM +CUR-POS LOUD-RUNS PLAYER +CYCLOMAD LOW-TIDE PRSA +CYCLOPS-FLAG LUCKY PRSI +CYCLOPS-MELEE MAGIC-FLAG PRSO +CYCLOWRATH MATCH-COUNT QUEST-NUM +DEAD MIRROR-MUNG QUOTE-FLAG +DEATHS MOVES RAINBOW-FLAG +DEF1 OHERE RESERVE-LEXV +DEF1-RES OLD-LEN RESERVE-PTR +DEF2-RES OOPS-INBUF RIVER-LAUNCH +DEF2A OOPS-TABLE RIVER-NEXT +DEF2B P-AADJ RIVER-SPEEDS +DEF3-RES P-ACLAUSE ROBBER-C-DESC +DEF3A P-ACT ROBBER-U-DESC +DEF3B P-ADJ RUG-MOVED +DEF3C P-ADVERB SCORE +DEFLATE P-ANAM SCORE-MAX +DESC-OBJECT P-AND SING-SONG +DIROUT-TBL P-BUTS SPRAYED? +DOME-FLAG P-CCTBL SUPER-BRIEF +DROWNINGS P-CONT SWIMYUKS +DUMMY P-DIR THIEF-ENGROSSED +EGG-SOLVE P-DIRECTION THIEF-HERE +EMPTY-HANDED P-END-ON-PREP THIEF-MELEE +FALSE-FLAG P-GETFLAGS TROLL-FLAG +FOREST-AROUND P-GWIMBIT TROLL-MELEE +FUMBLE-NUMBER P-INBUF VERBOSE +FUMBLE-PROB P-IT-OBJECT VILLAINS +GATE-FLAG P-ITBL WATER-LEVEL +GATES-OPEN P-LEN WHEEEEE +GRATE-REVEALED P-LEXV WIDTH +GRUNLOCK P-MATCHLEN WINNER +HELLOS P-MERGE WON-FLAG +HERE P-MERGED XB +HERO-MELEE P-MULT XC +HINT-WARNING P-NAM YUKS + +Objects: 260 + +ADVENTURER GAS-ROOM PAINTING +ADVERTISEMENT GATE PATH +ALTAR GHOSTS PATHOBJ +ARAGAIN-FALLS GLOBAL-OBJECTS PEDESTAL +ATLANTIS-ROOM GLOBAL-WATER POT-OF-GOLD +ATTIC GRANITE-WALL PRAYER +ATTIC-TABLE GRATE PUMP +AXE GRATING-CLEARING PUNCTURED-BOAT +BAG-OF-COINS GRATING-ROOM PUTTY +BAR GROUND RAILING +BARROW GRUE RAINBOW +BARROW-DOOR GUIDE RAISED-BASKET +BAT GUNK RED-BUTTON +BAT-ROOM HANDS RESERVOIR +BAUBLE HOT-BELL RESERVOIR-NORTH +BELL IN-STREAM RESERVOIR-SOUTH +BLESSINGS INFLATABLE-BOAT RIVER +BLUE-BUTTON INFLATED-BOAT RIVER-1 +BOARD INTDIR RIVER-2 +BOARDED-WINDOW INTNUM RIVER-3 +BOAT-LABEL IT RIVER-4 +BODIES JADE RIVER-5 +BOLT KEYS ROOMS +BONES KITCHEN ROPE +BOOK KITCHEN-TABLE ROUND-ROOM +BOTTLE KITCHEN-WINDOW RUG +BRACELET KNIFE RUSTY-KNIFE +BROKEN-CANARY LADDER SAILOR +BROKEN-EGG LADDER-BOTTOM SAND +BROKEN-LAMP LADDER-TOP SANDWICH-BAG +BROWN-BUTTON LAKE SANDY-BEACH +BUBBLE LAMP SANDY-CAVE +BUOY LAND-OF-LIVING-DEAD SCARAB +BURNED-OUT-LANTERN LARGE-BAG SCEPTRE +CANARY LEAK SCREWDRIVER +CANDLES LEAVES SHAFT-ROOM +CANYON-BOTTOM LIVING-ROOM SHORE +CANYON-VIEW LOCAL-GLOBALS SHOVEL +CELLAR LOUD-ROOM SKULL +CHAIN LOWER-SHAFT SLIDE +CHALICE LOWERED-BASKET SLIDE-ROOM +CHASM LUNCH SMALL-CAVE +CHASM-ROOM LUNGS SMELLY-ROOM +CHIMNEY MACHINE SONGBIRD +CLEARING MACHINE-ROOM SOUTH-OF-HOUSE +CLIFF-MIDDLE MACHINE-SWITCH SOUTH-TEMPLE +CLIMBABLE-CLIFF MAILBOX SQUEEKY-ROOM +COAL MAINTENANCE-ROOM STAIRS +COFFIN MAP STILETTO +COLD-PASSAGE MATCH STONE-BARROW +CONTROL-PANEL MAZE-1 STRANGE-PASSAGE +CRACK MAZE-10 STREAM +CYCLOPS MAZE-11 STREAM-VIEW +CYCLOPS-ROOM MAZE-12 STUDIO +DAM MAZE-13 SWORD +DAM-BASE MAZE-14 TEETH +DAM-LOBBY MAZE-15 THIEF +DAM-ROOM MAZE-2 TIMBER-ROOM +DAMP-CAVE MAZE-3 TIMBERS +DEAD-END-1 MAZE-4 TINY-CAVE +DEAD-END-2 MAZE-5 TOOL-CHEST +DEAD-END-3 MAZE-6 TORCH +DEAD-END-4 MAZE-7 TORCH-ROOM +DEAD-END-5 MAZE-8 TRAP-DOOR +DEEP-CANYON MAZE-9 TREASURE-ROOM +DIAMOND ME TREE +DOME MINE-1 TRIDENT +DOME-ROOM MINE-2 TROLL +DOOR-P MINE-3 TROLL-ROOM +EAST-OF-CHASM MINE-4 TROPHY-CASE +EAST-OF-HOUSE MINE-ENTRANCE TRUNK +EGG MIRROR-1 TUBE +EGYPT-ROOM MIRROR-2 TWISTING-PASSAGE +EMERALD MIRROR-ROOM-1 UP-A-TREE +END-OF-RAINBOW MIRROR-ROOM-2 WALL +ENGRAVINGS MOUNTAIN-RANGE WATER +ENGRAVINGS-CAVE MOUNTAINS WEST-OF-HOUSE +ENTRANCE-TO-HADES NAILS WHITE-CLIFF +EW-PASSAGE NARROW-PASSAGE WHITE-CLIFFS-NORTH +FOREST NEST WHITE-CLIFFS-SOUTH +FOREST-1 NORTH-OF-HOUSE WHITE-HOUSE +FOREST-2 NORTH-TEMPLE WINDING-PASSAGE +FOREST-3 NOT-HERE-OBJECT WOODEN-DOOR +FRONT-DOOR NS-PASSAGE WRENCH +GALLERY ON-RAINBOW YELLOW-BUTTON +GARLIC OWNERS-MANUAL ZORKMID +GAS PAINT + +Properties: 29 + +P?ACTION P?DESCFCN P?IN P?NW P?STRENGTH P?UP +P?ADJECTIVE P?DOWN P?LAND P?OUT P?SW P?VALUE +P?ADVFCN P?EAST P?LDESC P?SE P?SYNONYM P?VTYPE +P?CAPACITY P?FDESC P?NE P?SIZE P?TEXT P?WEST +P?CONTFCN P?GLOBAL P?NORTH P?SOUTH P?TVALUE + +Flags: 33 + +ACTORBIT FIGHTBIT MAZEBIT RLANDBIT TAKEBIT VEHBIT +BURNBIT FLAMEBIT NDESCBIT RMUNGBIT TOOLBIT WEAPONBIT +CLIMBBIT FOODBIT NONLANDBIT SACREDBIT TOUCHBIT WEARBIT +CONTBIT INVISIBLE ONBIT SEARCHBIT TRANSBIT +DOORBIT KLUDGEBIT OPENBIT STAGGERED TRYTAKEBIT +DRINKBIT LIGHTBIT READBIT SURFACEBIT TURNBIT diff --git a/zork1.serial b/zork1.serial new file mode 100644 index 0000000..abdfb05 --- /dev/null +++ b/zork1.serial @@ -0,0 +1 @@ +60 diff --git a/zork1.zil b/zork1.zil new file mode 100644 index 0000000..acdeec3 --- /dev/null +++ b/zork1.zil @@ -0,0 +1,65 @@ +"ZORK1 for + Zork I: The Great Underground Empire + (c) Copyright 1983 Infocom, Inc. All Rights Reserved. + -- CHEAPO EDITION" + + + + + + + + + + + + )> + +ON!-INITIAL +OFF!-INITIAL ;"makes dubugging possible -pld" + +; + (DIR TO R:ROOM = + (UEXIT 2) #SEMI "UNCONDITIONAL EXIT" + (REXIT ) #SEMI "TO ROOM") + (DIR SORRY S:STRING = + (NEXIT 3) #SEMI "IMPOSSIBLE EXIT" + (NEXITSTR ) #SEMI "FAILURE MESSAGE" + ) + (DIR S:STRING = + (NEXIT 3) #SEMI "IMPOSSIBLE EXIT" + (NEXITSTR ) #SEMI "FAILURE MESSAGE" + ) + (DIR PER F:FCN = + (FEXIT 4) #SEMI "CONDITIONAL EXIT" + (FEXITFCN ) #SEMI "PER FUNCTION" + ) + (DIR TO R:ROOM IF F:GLOBAL "OPT" ELSE S:STRING = + (CEXIT 5) #SEMI "CONDITIONAL EXIT" + (REXIT ) #SEMI "TO ROOM" + (CEXITFLAG ) #SEMI "IF FLAG IS TRUE" + (CEXITSTR ) #SEMI "FAILURE MESSAGE") + (DIR TO R:ROOM IF O:OBJECT IS OPEN "OPT" ELSE S:STRING = + (DEXIT 6) #SEMI "CONDITIONAL EXIT" + (REXIT ) #SEMI "TO ROOM" + (DEXITOBJ ) #SEMI "IF DOOR IS OPEN" + (DEXITSTR ) #SEMI "FAILURE MESSAGE")> + + + + + + + + + + + + + + + + + + diff --git a/zork1.zip b/zork1.zip new file mode 100644 index 0000000..b6e17f3 Binary files /dev/null and b/zork1.zip differ diff --git a/zork1freq.xzap b/zork1freq.xzap new file mode 100644 index 0000000..0d2ab6f --- /dev/null +++ b/zork1freq.xzap @@ -0,0 +1,200 @@ + .FSTR FSTR?1,"the " ;1572 786 + .FSTR FSTR?2,"The " ;1245 415 + .FSTR FSTR?3,"You " ;735 245 + .FSTR FSTR?4,", " ;529 529 + .FSTR FSTR?5,"your " ;474 158 + .FSTR FSTR?6,"is " ;466 466 + .FSTR FSTR?7,"and " ;456 228 + .FSTR FSTR?8,"you " ;412 206 + .FSTR FSTR?9,"There " ;395 79 + .FSTR FSTR?10,"can't " ;360 72 + .FSTR FSTR?11,"of " ;325 325 + .FSTR FSTR?12,"to " ;323 323 + .FSTR FSTR?13,". " ;299 299 + .FSTR FSTR?14,"with " ;294 98 + .FSTR FSTR?15,"are " ;272 136 + .FSTR FSTR?16,"that " ;258 86 + .FSTR FSTR?17,"have " ;231 77 + .FSTR FSTR?18,"which " ;224 56 + .FSTR FSTR?19,"This " ;216 54 + .FSTR FSTR?20,"from " ;204 68 + .FSTR FSTR?21,"large " ;204 51 + .FSTR FSTR?22,"through " ;180 30 + .FSTR FSTR?23,"appears " ;180 30 + .FSTR FSTR?24,"in " ;175 175 + .FSTR FSTR?25,"here" ;162 81 + .FSTR FSTR?26,"water " ;136 34 + .FSTR FSTR?27,"room " ;135 45 + .FSTR FSTR?28,"Cyclops " ;133 19 + .FSTR FSTR?29,"leading " ;132 22 + .FSTR FSTR?30,"narrow " ;130 26 + .FSTR FSTR?31,"cannot " ;130 26 + .FSTR FSTR?32,"small " ;128 32 + .FSTR FSTR?33,"into " ;126 42 + .FSTR FSTR?34,"cyclops " ;114 19 + .FSTR FSTR?35,"his " ;112 56 + .FSTR FSTR?36,"thief " ;112 28 + .FSTR FSTR?37,"It " ;110 55 + .FSTR FSTR?38,"south " ;108 27 + .FSTR FSTR?39,"seems " ;108 27 + .FSTR FSTR?40,"already " ;108 18 + .FSTR FSTR?41,"don't " ;105 21 + .FSTR FSTR?42,"be " ;102 102 + .FSTR FSTR?43,"but " ;100 50 + .FSTR FSTR?44,"would " ;96 24 + .FSTR FSTR?45,"Your " ;96 24 + .FSTR FSTR?46,"there " ;92 23 + .FSTR FSTR?47,"can " ;90 45 + .FSTR FSTR?48,"this " ;90 30 + .FSTR FSTR?49,"It's " ;90 18 + .FSTR FSTR?50,"staircase " ;88 11 + .FSTR FSTR?51,"on " ;86 86 + .FSTR FSTR?52,"for " ;84 42 + .FSTR FSTR?53,"west " ;84 28 + .FSTR FSTR?54,"east " ;84 28 + .FSTR FSTR?55,"north " ;84 21 + .FSTR FSTR?56,"not " ;82 41 + .FSTR FSTR?57,"troll " ;80 20 + .FSTR FSTR?58,"nothing " ;78 13 + .FSTR FSTR?59,"looking " ;78 13 + .FSTR FSTR?60,"I " ;72 72 + .FSTR FSTR?61,"path " ;72 24 + .FSTR FSTR?62,"closed" ;72 18 + .FSTR FSTR?63,"candles " ;72 12 + .FSTR FSTR?64,"Frigid " ;72 12 + .FSTR FSTR?65,"won't " ;70 14 + .FSTR FSTR?66,"probably " ;70 10 + .FSTR FSTR?67,"here " ;69 23 + .FSTR FSTR?68,"Room" ;69 23 + .FSTR FSTR?69,"about " ;68 17 + .FSTR FSTR?70,"A " ;66 66 + .FSTR FSTR?71,"too " ;66 33 + .FSTR FSTR?72,"that" ;66 33 + .FSTR FSTR?73,"room" ;66 33 + .FSTR FSTR?74,"door " ;66 22 + .FSTR FSTR?75,"grating " ;66 11 + .FSTR FSTR?76,"ground " ;65 13 + .FSTR FSTR?77,"out " ;64 32 + .FSTR FSTR?78,"other " ;64 16 + .FSTR FSTR?79,"wall " ;63 21 + .FSTR FSTR?80,"passages " ;63 9 + .FSTR FSTR?81,"impossible " ;63 7 + .FSTR FSTR?82,"has " ;62 31 + .FSTR FSTR?83,"over " ;60 20 + .FSTR FSTR?84,"level " ;60 15 + .FSTR FSTR?85,"knocks " ;60 12 + .FSTR FSTR?86,"before " ;60 12 + .FSTR FSTR?87,"passage " ;60 10 + .FSTR FSTR?88,"Fortunately" ;60 6 + .FSTR FSTR?89,"Unfortunately" ;60 5 + .FSTR FSTR?90,"it " ;59 59 + .FSTR FSTR?91,"an " ;56 56 + .FSTR FSTR?92,"think " ;56 14 + .FSTR FSTR?93,"river " ;56 14 + .FSTR FSTR?94,"troll's " ;56 8 + .FSTR FSTR?95,"doesn't " ;56 8 + .FSTR FSTR?96,"You're " ;56 8 + + +;word frequency table of 96 most common words + +WORDS:: .TABLE + FSTR?1 + FSTR?2 + FSTR?3 + FSTR?4 + FSTR?5 + FSTR?6 + FSTR?7 + FSTR?8 + FSTR?9 + FSTR?10 + FSTR?11 + FSTR?12 + FSTR?13 + FSTR?14 + FSTR?15 + FSTR?16 + FSTR?17 + FSTR?18 + FSTR?19 + FSTR?20 + FSTR?21 + FSTR?22 + FSTR?23 + FSTR?24 + FSTR?25 + FSTR?26 + FSTR?27 + FSTR?28 + FSTR?29 + FSTR?30 + FSTR?31 + FSTR?32 + FSTR?33 + FSTR?34 + FSTR?35 + FSTR?36 + FSTR?37 + FSTR?38 + FSTR?39 + FSTR?40 + FSTR?41 + FSTR?42 + FSTR?43 + FSTR?44 + FSTR?45 + FSTR?46 + FSTR?47 + FSTR?48 + FSTR?49 + FSTR?50 + FSTR?51 + FSTR?52 + FSTR?53 + FSTR?54 + FSTR?55 + FSTR?56 + FSTR?57 + FSTR?58 + FSTR?59 + FSTR?60 + FSTR?61 + FSTR?62 + FSTR?63 + FSTR?64 + FSTR?65 + FSTR?66 + FSTR?67 + FSTR?68 + FSTR?69 + FSTR?70 + FSTR?71 + FSTR?72 + FSTR?73 + FSTR?74 + FSTR?75 + FSTR?76 + FSTR?77 + FSTR?78 + FSTR?79 + FSTR?80 + FSTR?81 + FSTR?82 + FSTR?83 + FSTR?84 + FSTR?85 + FSTR?86 + FSTR?87 + FSTR?88 + FSTR?89 + FSTR?90 + FSTR?91 + FSTR?92 + FSTR?93 + FSTR?94 + FSTR?95 + FSTR?96 + .ENDT + + .ENDI