commit 02aee947e1e0e9de81f001e74a266592e1de39f0 Author: historicalsource Date: Sun Apr 14 00:07:10 2019 -0400 Final Revision diff --git a/README.md b/README.md new file mode 100644 index 0000000..ad6b25f --- /dev/null +++ b/README.md @@ -0,0 +1 @@ +# minizork-1987 diff --git a/above-ground.zil b/above-ground.zil new file mode 100644 index 0000000..461df70 --- /dev/null +++ b/above-ground.zil @@ -0,0 +1,945 @@ +"ABOVE-GROUND for + Mini-Zork '87 + (c) Copyright 1987 Infocom, Inc. All Rights Reserved" + +;"outside the house" + + + + + + )> + )>> + + + + + > + )>> + + + + + )>> + + + +> + + + + + )>> + + + + + + + + + + )>> + + + + ) + (T + )>> + + + + + > + ) + ( + ) + ( + ) + ( + )>> + + + + + )>> + + + + + )>> + + + )>> + + + + + ) + ( + )>> + + + + + + + + + + + > + ) + ( + + + ) + (,GRATE-REVEALED + )>)>> + + + ,GRATING-ROOM) + (T + + + )>) + (T + + )>> + + + + + ) + ( + + > + ) + ( + > + ) + (> + + ) + ( + )>)>)>> + + + + + + )>> + + + + + > + )>> + + + + + ) + ( + + + + ) + (T + )> + ) + ( + + ) + ( + > + ) + ( + + ) + ( + > + )>> + +> + > + + + + ) + (T + )>> + + + + + + + + > + )>> + + + + + + >> + ) + ( + > + + )>> + + + + + +> + + + + + + ) + (T + )>) + ( + )>> + + +\ +;"inside the house" + + + + + ) + ( + >> + ) + ( + ,P?EAST) + (T ,P?WEST)>>) + ( + + + ) + (T + )>)>> + + + + + + )>> + + + + + + + > + )>> + + + + + + + + )>> + + + + + > + + + + ) + (T + )> + ) + ( + + > + + )>> + + + + + + ) + ( + + ) + ( + + > + + ) + ( + > + + + ) + (T + )>)> + + ) + (> + ) + (> + ;"might be GLOBAL-WATER" + )> + ) + (> + + ) + (> + + )>) + ( + + > + + ) + ( + > + > + ) + (T + + )>)>> + + + + + + + + + + ) + (T + + + + + + )>) + (T + )>) + ( + > + ) + ( + > + + + + ) + (T + )>) + ( + ,DOME-FLAG> + )>> + + + + + ) + (T + + + )>) + (T + + )>> + + + + )> + + + )> + + + + ) + (T + )> + ) + (T + )> + ) + ( + + + 15> + + > + + + + + )>> + +) (CNT 0)) + + )> + + >)> + >> + >> + .CNT> + + + + + > + )>> + + + + + + + + + ) + ( + > + ) + ( + > + ) + ( + > + ) + ( + + + ) + (T + )> + )>> + +)) + >>> + + > + >)>> + +> + + + + + ) + ( + )>> + +> + + + + + + + )> + ) + ( + ) + (T + + + + )>) + ( + > + ) + ( + + ) + (T + )>)>> + + + + + + >> + + ) + ( + > + ) + ( + + >> + ) + ( + > + + )>)>> \ No newline at end of file diff --git a/globals.zil b/globals.zil new file mode 100644 index 0000000..704e220 --- /dev/null +++ b/globals.zil @@ -0,0 +1,489 @@ +"GLOBALS for + Mini-Zork '87 + (c) Copyright 1987 Infocom, Inc. All Rights Reserved" + + + + + + + + + + + + + + + + + + + > + + ) + ( + ) + (T + + >)> + > + > + + + + ) + (T + + + )> + > + +)> + )>) + (.PRSO? + <>>) + (T + <>>)>> + + + + + + + + + )>> + + + + ;"counts occurences of HELLO, SAILOR" + + + > + > + ) + ( + ) + ( + > + > + ) + (T + )>)>> + + + + + > + + ) + ( + ) + ( + + + ) + (T + )> + )>> + + + + + ) + ( + )>> + + + + + + + > + > + ) + ( + > + + ) + ( + ) + ( + > + ) + ( + ) + ( + + ) + (T + )>)>> + + + + + + + ) + ( + )>> + + +\ +;"stuff that belongs in more than one geographical area" + + + + + ) + (T + )> + )>> + + + +> ;"if both mirrors are broken, SETG this to MIRROR" + + + + + > + + ) + (T + )> + > + > + > + > + ) + ( + + ) + (T + )> + ) + ( + ) + ( + + ) + (T + ) + (T + )> + > + )>)>> + + + + + + + ) + (T + )> + )>> +\ +;"utility routines and shared stuff" + + + + )> + + > + + + ) + (T + CR>)>)>> + +> + 1>>)>> + +> + + )> + + >> + ) + (>> + >)>>> + +)) + + ) + ( + ) + ( + ) + ( + > + ) + ( ,HERE >> + ) + (> + ) + ( + > + ) + (T + )>> + + + ) + ( + )> + + ) + (T + >)>>> + +> + + ) + ( + )>>> + +> ,LOW-DIRECTION> + >) + (T + > + ,DEXIT> + .DOBJ>> + )>)>>> + + + >)> + + > + +>> + > + )> + > + + + ) + ( + ) + ( + > + )>> + +> + +> + + + + ) + (T + + )>) + ( + + + ) + (T + )>)>> + + ,PERIOD-CR>> + +> + +> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/maze.zil b/maze.zil new file mode 100644 index 0000000..e4c97e8 --- /dev/null +++ b/maze.zil @@ -0,0 +1,439 @@ +"MAZE for + Mini-Zork '87 + (c) Copyright 1987 Infocom, Inc. All Rights Reserved" + + + + + + + + + + + + + + + +> + + + + + > + + ) + ( + > + + + ,PRSI>> + + )>> + + + + + + + + + )>> + + + + + + + + + + + + + +> + +> + + + ) + ( + + + ) + (,GRUNLOCK + ) + (T + )>)>> + + + + + > + + ) + ( + > + ) + ( + > + ) + ( + > + + + ) + (T + )>) + ( + ) + ( + + + + > + > + + + + )>) + (T + )> + ) + (T + )>) + ( + > + )>> + + + + + +> + +> + + + + ) + ( + >>)>> + + + + + ) + ( + + + ) + (T + )>) + ( + + ) + (,CYCLOPS-FLAG + + + >> + + > + + >)>)>) + ( + > + + > + + + > -1) + (T <- ,CYCLOWRATH>)>> + )>) + ( + + >> + + + + + + ) + (T + )>) + ( + ) + (T + )>) + ( + > + + ) + (T + + )> + )>) + ( + ) + ( + )>> + +) + (,CYCLOPS-FLAG + ) + (<0? ,CYCLOWRATH> + ) + ( + ) + ( + )>> + + + ) + (> + >) + ( 5> + > + ) + (T + + >) + (T + >)> + + 1>> CR>)>)>> + +> + + + + + <1? ,C-ENABLED?>> + > + + > + + > + )>)>> + + + + + )>> \ No newline at end of file diff --git a/mini.chart b/mini.chart new file mode 100644 index 0000000..b1cc674 --- /dev/null +++ b/mini.chart @@ -0,0 +1,2 @@ +-date- -rel- -size- -pre- -obj- -glo- -voc- +11/24 34 52216 14089 179 137 536 diff --git a/mini.errors b/mini.errors new file mode 100644 index 0000000..9e76fc0 --- /dev/null +++ b/mini.errors @@ -0,0 +1,25 @@ +Assembling MINI.ZAP.1 on Tuesday, November 24, 1987 17:37:02 +Release: 34 + + 64 Inserting MINIFREQ.XZAP.2 (628 bytes) + 692 Inserting MINIDAT.ZAP.1 (13397 bytes) + 14089 Inserting MINIPUR.ZAP.1 (102 bytes) + 14191 Inserting MISC.ZAP.1 (1141 bytes) + 15332 Inserting PARSER.ZAP.1 (6478 bytes) + 21810 Inserting VERBS.ZAP.1 (8354 bytes) + 30164 Inserting GLOBALS.ZAP.1 (1618 bytes) + 31782 Inserting THIEF.ZAP.1 (2297 bytes) + 34079 Inserting ABOVE-GROUND.ZAP.1 (2930 bytes) + 37009 Inserting SOUTH-OF-RES.ZAP.1 (4652 bytes) + 41661 Inserting NORTH-OF-RES.ZAP.1 (1357 bytes) + 43018 Inserting MAZE.ZAP.1 (1760 bytes) + 44778 Inserting MINISTR.ZAP.1 (7438 bytes) +179 objects. +137 globals. +536 word vocabulary. + + 52216 bytes (51K). + 14089 bytes of preload. + 8583 bytes of impure. + +Outputting symbol tables diff --git a/mini.record b/mini.record new file mode 100644 index 0000000..ed6b554 --- /dev/null +++ b/mini.record @@ -0,0 +1,474 @@ + +Combined ZIL Compiler Ver 2.0 (MIM) +----------------------------------- + +Incremental compilation disabled, because top-level ZIL file changed. + +Input file: SS:MINI.ZIL.13 +Compiling routine: ZPROB +Compiling routine: PICK-ONE +Compiling routine: GO +Compiling routine: MAIN-LOOP +Compiling routine: MAIN-LOOP-1 +Compiling routine: PERFORM +Compiling routine: QUEUE +Compiling routine: INT +Compiling routine: CLOCKER +Compiling routine: PARSER +Compiling routine: STUFF +Compiling routine: INBUF-STUFF +Compiling routine: INBUF-ADD +Compiling routine: WT? +Compiling routine: CLAUSE +Compiling routine: NUMBER? +Compiling routine: ORPHAN-MERGE +Compiling routine: ACLAUSE-WIN +Compiling routine: NCLAUSE-WIN +Compiling routine: WORD-PRINT +Compiling routine: UNKNOWN-WORD +Compiling routine: CANT-USE +Compiling routine: GET-PREP +Compiling routine: SYNTAX-CHECK +Compiling routine: CANT-ORPHAN +Compiling routine: ORPHAN +Compiling routine: THING-PRINT +Compiling routine: BUFFER-PRINT +Compiling routine: PREP-PRINT +Compiling routine: CLAUSE-COPY +Compiling routine: CLAUSE-ADD +Compiling routine: PREP-FIND +Compiling routine: SYNTAX-FOUND +Compiling routine: GWIM +Compiling routine: SNARF-OBJECTS +Compiling routine: BUT-MERGE +Compiling routine: SNARFEM +Compiling routine: GET-OBJECT +Compiling routine: WHICH-PRINT +Compiling routine: GLOBAL-CHECK +Compiling routine: DO-SL +Compiling routine: SEARCH-LIST +Compiling routine: OBJ-FOUND +Compiling routine: TAKE-CHECK +Compiling routine: ITAKE-CHECK +Compiling routine: MANY-CHECK +Compiling routine: ZMEMQ +Compiling routine: ZMEMQB +Compiling routine: LIT? +Compiling routine: THIS-IT? +Compiling routine: V-VERBOSE +Compiling routine: V-BRIEF +Compiling routine: V-SUPER-BRIEF +Compiling routine: V-DIAGNOSE +Compiling routine: V-INVENTORY +Compiling routine: FINISH +Compiling routine: V-QUIT +Compiling routine: V-RESTART +Compiling routine: DO-YOU-WISH +Compiling routine: YES? +Compiling routine: V-RESTORE +Compiling routine: V-SAVE +Compiling routine: V-SCORE +Compiling routine: SCORE-OBJ +Compiling routine: V-SCRIPT +Compiling routine: V-UNSCRIPT +Compiling routine: TRANSCRIPT-MESSAGE +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-ALARM +Compiling routine: V-ATTACK +Compiling routine: SUICIDAL +Compiling routine: PRE-BOARD +Compiling routine: V-BOARD +Compiling routine: V-BREATHE +Compiling routine: PRE-BURN +Compiling routine: V-BURN +Compiling routine: V-CLIMB +Compiling routine: V-CLIMB-DOWN +Compiling routine: V-CLIMB-ON +Compiling routine: V-CLOSE +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-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-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: PRE-GIVE +Compiling routine: V-GIVE +Compiling routine: V-HATCH +Compiling routine: V-HELLO +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-LEAP +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-UNDER +Compiling routine: V-LOWER +Compiling routine: V-MAKE +Compiling routine: PRE-MOVE +Compiling routine: V-MOVE +Compiling routine: PRE-MUNG +Compiling routine: V-MUNG +Compiling routine: V-ODYSSEUS +Compiling routine: V-OPEN +Compiling routine: V-PICK +Compiling routine: V-POUR-ON +Compiling routine: V-PRAY +Compiling routine: V-PUMP +Compiling routine: V-PUSH +Compiling routine: PRE-PUT +Compiling routine: V-PUT +Compiling routine: V-PUT-ON +Compiling routine: V-RAISE +Compiling routine: PRE-READ +Compiling routine: V-READ +Compiling routine: V-READ-PAGE +Compiling routine: V-REPENT +Compiling routine: V-RING +Compiling routine: V-RUB +Compiling routine: V-SAY +Compiling routine: V-SEARCH +Compiling routine: V-SGIVE +Compiling routine: V-SHAKE +Compiling routine: V-SKIP +Compiling routine: V-SMELL +Compiling routine: V-STAB +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: 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-WAVE +Compiling routine: V-YELL +Compiling routine: V-ZORK +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: JIGS-UP + ** Note: Atomic argument to routine assumed constant - DEAD-FUNCTION + +Compiling routine: RANDOMIZE-OBJECTS +Compiling routine: KILL-INTERRUPTS +Compiling routine: DEAD-FUNCTION +Compiling routine: ITAKE +Compiling routine: IDROP +Compiling routine: CCOUNT +Compiling routine: WEIGHT +Compiling routine: GOTO +Compiling routine: DO-WALK +Compiling routine: NOT-HERE-OBJECT-F +Compiling routine: NOT-HERE-PRINT +Compiling routine: STAIRS-F +Compiling routine: SAILOR-F +Compiling routine: GROUND-F +Compiling routine: GRUE-F +Compiling routine: ME-F +Compiling routine: PATH-OBJECT-F +Compiling routine: MIRROR-ROOM-F +Compiling routine: MIRROR-F +Compiling routine: CHIMNEY-F +Compiling routine: LIGHT-INT +Compiling routine: GLOBAL-IN? +Compiling routine: FIND-IN +Compiling routine: ACCESSIBLE? +Compiling routine: META-LOC +Compiling routine: HELD? +Compiling routine: OTHER-SIDE +Compiling routine: REMOVE-CAREFULLY +Compiling routine: NOW-DARK? +Compiling routine: STUPID-CONTAINER +Compiling routine: PEEK-UNDER +Compiling routine: FASTENED +Compiling routine: OPEN-CLOSE +Compiling routine: HACK-HACK +Compiling routine: THIEF-F +Compiling routine: I-THIEF +Compiling routine: DROP-JUNK +Compiling routine: STEAL-JUNK +Compiling routine: ROB +Compiling routine: LARGE-BAG-F +Compiling routine: THIEF-VS-ADVENTURER +Compiling routine: THIEF-ROBBED-AND-LEFT +Compiling routine: DEPOSIT-BOOTY +Compiling routine: ROB-MAZE +Compiling routine: HERO-BLOW +Compiling routine: KILL-VILLAIN +Compiling routine: I-FIGHT +Compiling routine: I-CURE +Compiling routine: WEST-OF-HOUSE-F +Compiling routine: MAILBOX-F +Compiling routine: LEAFLET-F +Compiling routine: INSIDE-THE-BARROW-F +Compiling routine: BEHIND-HOUSE-F +Compiling routine: DESCRIBE-WINDOW +Compiling routine: WHITE-HOUSE-F +Compiling routine: BOARD-F +Compiling routine: BOARDED-WINDOW-F +Compiling routine: NAILS-PSEUDO +Compiling routine: FOREST-F +Compiling routine: FOREST-PATH-F +Compiling routine: GRATING-EXIT +Compiling routine: UP-A-TREE-F +Compiling routine: NEST-F +Compiling routine: EGG-F +Compiling routine: LEAVES-F +Compiling routine: GRATING-APPEARS +Compiling routine: CANYON-VIEW-F +Compiling routine: CLIFF-F +Compiling routine: RAINBOW-F +Compiling routine: KITCHEN-WINDOW-F +Compiling routine: KITCHEN-F +Compiling routine: SANDWICH-BAG-F +Compiling routine: GARLIC-F +Compiling routine: BOTTLE-F +Compiling routine: WATER-F +Compiling routine: ROPE-F +Compiling routine: TRAP-DOOR-EXIT +Compiling routine: LIVING-ROOM-F +Compiling routine: COUNT-TREASURES +Compiling routine: TROPHY-CASE-F +Compiling routine: LAMP-F +Compiling routine: I-LANTERN +Compiling routine: WOODEN-DOOR-F +Compiling routine: RUG-F +Compiling routine: TRAP-DOOR-F +Compiling routine: CELLAR-F +Compiling routine: UP-CHIMNEY-F +Compiling routine: PAINT-PSEUDO +Compiling routine: PAINTING-F +Compiling routine: TROLL-ROOM-F +Compiling routine: TROLL-F +Compiling routine: RESERVOIR-SOUTH-F +Compiling routine: DAM-F +Compiling routine: MATCH-F +Compiling routine: I-MATCH +Compiling routine: BOLT-F +Compiling routine: BUBBLE-F +Compiling routine: DAM-OBJECT-F +Compiling routine: BUTTON-F +Compiling routine: INFLATABLE-BOAT-F +Compiling routine: INFLATED-BOAT-F +Compiling routine: MUST-BE-ON-GROUND +Compiling routine: WHITE-CLIFF-F +Compiling routine: DOME-ROOM-F +Compiling routine: DOME-PSEUDO +Compiling routine: TEMPLE-F +Compiling routine: TORCH-F +Compiling routine: BELL-F +Compiling routine: SCEPTRE-F +Compiling routine: ALTAR-F +Compiling routine: BLACK-BOOK-F +Compiling routine: CANDLES-F +Compiling routine: WINDY-CAVE-F +Compiling routine: I-CANDLES +Compiling routine: ENTRANCE-TO-HADES-F +Compiling routine: GATE-PSEUDO +Compiling routine: GHOSTS-F +Compiling routine: I-XB +Compiling routine: I-XC +Compiling routine: BODIES-F +Compiling routine: BUOY-F +Compiling routine: SAND-F +Compiling routine: ARAGAIN-FALLS-F +Compiling routine: RIVER-F +Compiling routine: I-RIVER +Compiling routine: GO-NEXT +Compiling routine: LKP +Compiling routine: RESERVOIR-F +Compiling routine: STREAM-PSEUDO +Compiling routine: LAKE-PSEUDO +Compiling routine: TRUNK-F +Compiling routine: RESERVOIR-NORTH-F +Compiling routine: SLIDE-F +Compiling routine: BAT-ROOM-F +Compiling routine: BAT-D +Compiling routine: BAT-F +Compiling routine: FLY-ME +Compiling routine: FWEEP +Compiling routine: BASKET-F + ** Warning: Possible bad 1st arg to PERFORM: ! +Compiling routine: CHAIN-PSEUDO +Compiling routine: GAS-ROOM-F +Compiling routine: GAS-PSEUDO +Compiling routine: LADDER-PSEUDO +Compiling routine: NO-OBJECT-ROOM-F +Compiling routine: MACHINE-ROOM-F +Compiling routine: MACHINE-F +Compiling routine: MACHINE-SWITCH-F +Compiling routine: SLAG-F +Compiling routine: BAG-OF-COINS-F +Compiling routine: RUSTY-KNIFE-F +Compiling routine: SKELETON-F +Compiling routine: GRATING-ROOM-F +Compiling routine: GRATE-F +Compiling routine: CYCLOPS-ROOM-F +Compiling routine: CYCLOPS-F +Compiling routine: D-CYCLOPS +Compiling routine: I-CYCLOPS +Compiling routine: THIEFS-LAIR-F +Compiling routine: CHALICE-F + +Warnings: 1 + ** Note: OBJECT has no properties: LOCAL-GLOBALS + ** Note: OBJECT has no properties: GLOBAL-OBJECTS +Vocabulary: 536 + +Prepositions: 18 + +ABOUT AROUND AWAY DOWN FROM OFF OUT TO UP +ACROSS AT BEHIND FOR IN ON OVER UNDER WITH + +Real globals: 130 + +ABOVE-GROUND-ROOMS LOOK-AROUND P-OVTBL +AGAIN-DIR LOW-TIDE P-PRSI +AGAIN-LEXV LUCKY P-PRSO +ALREADY MAGIC-FLAG P-SLOCBITS +ALTAR-SCORE MATCH-COUNT P-SYNTAX +BASKET-RAISED MENTAL-COLLAPSE P-TABLE +BAT-DROPS MIRROR-MUNG P-VTBL +BDIGS NOTHING-HAPPENS P-WALK-DIR +BEACH-DIG NOTHING-TO-FILL-WITH P-WON +BEG-PARDON NOUN-MISSING P-XADJ +C-DEMONS OOPS-INBUF P-XADJN +C-INTS OOPS-TABLE P-XNAM +C-TABLE P-AADJ PERFORM-CEREMONY +CANDLE-TABLE P-ACLAUSE PERIOD-CR +CANDLES-ARE P-ACT PRSA +CANT-GO P-ADJ PRSI +CLOCK-WAIT P-ADJN PRSO +COFFIN-CURE P-ADVERB QUOTE-FLAG +CURE-COUNT P-ANAM RAINBOW-FLAG +CYCLOMAD P-AND REFERRING +CYCLOPS-FLAG P-BUTS RESERVE-LEXV +CYCLOPS-IS P-CCTBL RESERVE-PTR +CYCLOWRATH P-CONT RIVER-LAUNCH +DEAD P-DIR RIVER-NEXT +DEATHS P-END-ON-PREP RIVER-SPEEDS +DESC-OBJECT P-GETFLAGS RUG-MOVED +DISK-BASED P-GWIMBIT THERES-NOTHING +DOME-FLAG P-INBUF THIEF-HERE +DRAFTY-ROOM-SCORE P-IT-OBJECT THIEF-LEFT-DISGUSTED +EMPTY-HANDED P-ITBL THIEF-MELEE +FAILED P-LEN TOO-DARK +FORMERLY-A-LAKE P-LEXV TROLL-FLAG +GATE-FLAG P-MATCHLEN TROLL-MELEE +GOOD-TRICK P-MERGE VERBOSITY +GRATE-REVEALED P-MERGED WATER-EVAPORATES +GRUNLOCK P-MULT WINNER +GUE-NAME P-NAM WON-FLAG +HADES-FLAG P-NCN XB +HO-HUM P-NOT-HERE XC +HS P-NUMBER YNH +INDENTS P-OCLAUSE YOU-CANT +INTEGRAL-PART P-OFLAG YUKS +LAMP-TABLE P-ONEOBJ +LIT P-OTBL + +Objects: 179 + +ADVENTURER DRAFTY-ROOM MACHINE-ROOM RUSTY-KNIFE +ALTAR EGG MACHINE-SWITCH SAILOR +ALTAR-OBJECT EGYPTIAN-ROOM MAILBOX SAND +ARAGAIN-FALLS EMERALD MAINTENANCE-ROOM SANDWICH-BAG +ATTIC END-OF-RAINBOW MAP SANDY-BEACH +AXE ENTRANCE-TO-HADES MATCH SANDY-CAVE +BAG-OF-COINS FOREST MAZE-1 SCARAB +BASKET FOREST-EDGE MAZE-10 SCEPTRE +BAT FOREST-NORTH MAZE-2 SCREWDRIVER +BAT-ROOM FOREST-PATH MAZE-3 SHAFT-ROOM +BEHIND-HOUSE FOREST-SOUTH MAZE-4 SHOVEL +BELL FRONT-DOOR MAZE-5 SKELETON +BLACK-BOOK GARLIC MAZE-6 SKULL +BOARD GAS-ROOM MAZE-7 SLAG +BOARDED-WINDOW GHOSTS MAZE-8 SLIDE +BOAT-LABEL GLOBAL-OBJECTS MAZE-9 SLIDE-ROOM +BODIES GLOBAL-WATER ME SOUTH-OF-HOUSE +BOLT GRATE MINE-ENTRANCE STAIRS +BOTTLE GRATING-ROOM MIRROR STILETTO +BRACELET GROUND MIRROR-ROOM-NORTH STUDIO +BROWN-BUTTON GRUE MIRROR-ROOM-SOUTH SWORD +BUBBLE GUIDE NEST TEMPLE +BUOY HADES NORTH-OF-HOUSE THIEF +BURNED-OUT-LANTERN HANDS NOT-HERE-OBJECT THIEFS-LAIR +CANDLES INFLATABLE-BOAT PAINTING TORCH +CANYON-BOTTOM INFLATED-BOAT PATH-OBJECT TRAP-DOOR +CANYON-VIEW INSIDE-THE-BARROW PEDESTAL TREE +CELLAR INTNUM POT-OF-GOLD TROLL +CHALICE IT PRAYER TROLL-ROOM +CHIMNEY JADE PSEUDO-OBJECT TROPHY-CASE +CLIMBABLE-CLIFF KEYS PUMP TRUNK +COAL KITCHEN RAILING TWISTING-PASSAGE +COAL-MINE-1 KITCHEN-TABLE RAINBOW UP-A-TREE +COAL-MINE-2 KITCHEN-WINDOW RED-BUTTON WALL +COAL-MINE-3 KNIFE RESERVOIR WATER +COFFIN LADDER-ROOM RESERVOIR-NORTH WEST-OF-HOUSE +CONTROL-PANEL LAMP RESERVOIR-SOUTH WHITE-CLIFF +CYCLOPS LARGE-BAG RIVER WHITE-CLIFFS-BEACH + +CYCLOPS-ROOM LEAFLET RIVER-1 WHITE-HOUSE +DAM LEAVES RIVER-2 WINDING-PASSAGE +DAM-BASE LIVING-ROOM RIVER-3 WINDY-CAVE +DAM-OBJECT LOCAL-GLOBALS ROOMS WOODEN-DOOR +DIAMOND LUNCH ROPE WRENCH +DOME-ROOM LUNGS ROUND-ROOM YELLOW-BUTTON +DRAFTY-CAVE MACHINE RUG + +Properties: 26 + +P?ACTION P?EAST P?LDESC P?PSEUDO P?SW P?WEST +P?ADJECTIVE P?FDESC P?NE P?SE P?SYNONYM +P?CAPACITY P?GLOBAL P?NORTH P?SIZE P?TEXT +P?DESCFCN P?IN P?NW P?SOUTH P?UP +P?DOWN P?LAND P?OUT P?STRENGTH P?VALUE + +Flags: 30 + +ACTORBIT DRINKBIT MAZEBIT READBIT SURFACEBIT TREASUREBIT +BURNBIT FLAMEBIT NDESCBIT RLANDBIT TAKEBIT TRYTAKEBIT +CLIMBBIT FOODBIT NONLANDBIT RMUNGBIT TOOLBIT TURNBIT +CONTBIT INVISIBLE ONBIT SACREDBIT TOUCHBIT VEHBIT +DOORBIT LIGHTBIT OPENBIT SEARCHBIT TRANSBIT WEAPONBIT diff --git a/mini.serial b/mini.serial new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/mini.serial @@ -0,0 +1 @@ +1 diff --git a/mini.zil b/mini.zil new file mode 100644 index 0000000..46e1960 --- /dev/null +++ b/mini.zil @@ -0,0 +1,35 @@ +"ZORK1 for + Mini-Zork '87 + (c) Copyright 1987 Infocom, Inc. All Rights Reserved" + + + + + + + >> + + + + + )> + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/mini.zip b/mini.zip new file mode 100644 index 0000000..da38b5a Binary files /dev/null and b/mini.zip differ diff --git a/minifreq.xzap b/minifreq.xzap new file mode 100644 index 0000000..a737062 --- /dev/null +++ b/minifreq.xzap @@ -0,0 +1,200 @@ + .FSTR FSTR?1,"the " ;736 369 + .FSTR FSTR?2,"The " ;624 209 + .FSTR FSTR?3,"You " ;294 99 + .FSTR FSTR?4,", " ;240 241 + .FSTR FSTR?5,"your " ;210 71 + .FSTR FSTR?6,"is " ;208 209 + .FSTR FSTR?7,"and " ;192 97 + .FSTR FSTR?8,"There " ;165 34 + .FSTR FSTR?9,"you " ;156 79 + .FSTR FSTR?10,"of " ;150 151 + .FSTR FSTR?11,". " ;150 151 + .FSTR FSTR?12,"with " ;150 51 + .FSTR FSTR?13,"to " ;135 136 + .FSTR FSTR?14,"are " ;120 61 + .FSTR FSTR?15,"large " ;108 28 + .FSTR FSTR?16,"This " ;108 28 + .FSTR FSTR?17,"cyclops " ;90 16 + .FSTR FSTR?18,"that " ;87 30 + .FSTR FSTR?19,"from " ;87 30 + .FSTR FSTR?20,"have " ;81 28 + .FSTR FSTR?21,"through " ;78 14 + .FSTR FSTR?22,"here" ;76 39 + .FSTR FSTR?23,"in " ;73 74 + .FSTR FSTR?24,"It's " ;70 15 + .FSTR FSTR?25,"which " ;68 18 + .FSTR FSTR?26,"small " ;60 16 + .FSTR FSTR?27,"room " ;54 19 + .FSTR FSTR?28,"closed" ;52 14 + .FSTR FSTR?29,"A " ;50 51 + .FSTR FSTR?30,"can't " ;50 11 + .FSTR FSTR?31,"You're " ;49 8 + .FSTR FSTR?32,"into " ;48 17 + .FSTR FSTR?33,"Room" ;48 17 + .FSTR FSTR?34,"Your " ;48 13 + .FSTR FSTR?35,"grating " ;48 9 + .FSTR FSTR?36,"already " ;48 9 + .FSTR FSTR?37,"Frigid " ;48 9 + .FSTR FSTR?38,"isn't " ;45 10 + .FSTR FSTR?39,"It " ;44 23 + .FSTR FSTR?40,"thief " ;44 12 + .FSTR FSTR?41,"be " ;43 44 + .FSTR FSTR?42,"that" ;42 22 + .FSTR FSTR?43,"for " ;40 21 + .FSTR FSTR?44,"water " ;40 11 + .FSTR FSTR?45,"leads " ;40 11 + .FSTR FSTR?46,"won't " ;40 9 + .FSTR FSTR?47,"narrow " ;40 9 + .FSTR FSTR?48,"cannot " ;40 9 + .FSTR FSTR?49,"but " ;38 20 + .FSTR FSTR?50,"not " ;36 19 + .FSTR FSTR?51,"this " ;36 13 + .FSTR FSTR?52,"south " ;36 10 + .FSTR FSTR?53,"seems " ;36 10 + .FSTR FSTR?54,"ground" ;36 10 + .FSTR FSTR?55,"about " ;36 10 + .FSTR FSTR?56,"passage " ;36 7 + .FSTR FSTR?57,"appears " ;36 7 + .FSTR FSTR?58,"don't " ;35 8 + .FSTR FSTR?59,"southwest" ;35 6 + .FSTR FSTR?60,"on " ;33 34 + .FSTR FSTR?61,"west " ;33 12 + .FSTR FSTR?62,"north " ;32 9 + .FSTR FSTR?63,"There's " ;32 5 + .FSTR FSTR?64,"his " ;30 16 + .FSTR FSTR?65,"feet " ;30 11 + .FSTR FSTR?66,"east " ;30 11 + .FSTR FSTR?67,"door " ;30 11 + .FSTR FSTR?68,"cyclops" ;30 7 + .FSTR FSTR?69,"can " ;28 15 + .FSTR FSTR?70,"white " ;28 8 + .FSTR FSTR?71,"That " ;28 8 + .FSTR FSTR?72,"probably " ;28 5 + .FSTR FSTR?73,"Maze" ;27 10 + .FSTR FSTR?74,"an " ;26 27 + .FSTR FSTR?75,"too " ;26 14 + .FSTR FSTR?76,"has " ;26 14 + .FSTR FSTR?77,"wooden " ;25 6 + .FSTR FSTR?78,"In " ;24 13 + .FSTR FSTR?79,"south" ;24 9 + .FSTR FSTR?80,"north" ;24 9 + .FSTR FSTR?81,"How " ;24 9 + .FSTR FSTR?82,"would " ;24 7 + .FSTR FSTR?83,"With " ;24 7 + .FSTR FSTR?84,"sentence" ;24 5 + .FSTR FSTR?85,"rainbow " ;24 5 + .FSTR FSTR?86,"lurking " ;24 5 + .FSTR FSTR?87,"looking " ;24 5 + .FSTR FSTR?88,"leading " ;24 5 + .FSTR FSTR?89,"darkness" ;24 5 + .FSTR FSTR?90,"candles " ;24 5 + .FSTR FSTR?91,"against " ;24 5 + .FSTR FSTR?92,"treasures " ;24 4 + .FSTR FSTR?93,"staircase " ;24 4 + .FSTR FSTR?94,"northeast " ;24 4 + .FSTR FSTR?95,"one " ;22 12 + .FSTR FSTR?96,"now " ;22 12 + + +;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 diff --git a/misc.zil b/misc.zil new file mode 100644 index 0000000..1caea76 --- /dev/null +++ b/misc.zil @@ -0,0 +1,510 @@ +"MISC for + Mini-Zork '87 + (c) Copyright 1987 Infocom, Inc. All Rights Reserved" + + + + + + ) + (> + >)> + + > + "CRLF"> + <=? .P "CR">> + >) + ( + ) + (ELSE + > + > + > + "DESC"> + <=? .P "D"> + <=? .P "OBJ"> + <=? .P "O">> + >) + ( + <=? .P "AN">> + >) + ( + <=? .P "N">> + >) + ( + <=? .P "CHR"> + <=? .P "C">> + >) + (ELSE + >>)>)>) + ( + >) + ( + >) + (ELSE )>>>>> + +;> + +> + +> + +> + +> + + + ) + ( ) + (ELSE )>>)> + )> + > + +
+ >>) + (ELSE .ATM)>>) + (ELSE .ATM)> + !.L)> + > + 3> )>> + !.L>)>>> + >> + +> + +> + +> + + + ) + (<==? .X FSET?> ) + (ELSE )>>)> + > + > + .ATM) + (ELSE )>> + !.O)>>> + + >> + + ) + (ELSE >)>> + +>) + (ELSE >)>> + +) (CNT ) RND MSG RFROB) + > + > + >> + >> + > + > + + > + )> + + .MSG> + +> + +> + + + >> + + + >> + + ) + (T .NUM)>> +\ +; "taa 11/7/87 Macro to return number of objects needed by syntax + in compact format" + 64>> + +\ +;"former MAIN stuff" + + + +> + + + +> +> + + + + + + + +> + + + + + + + + + + + + > + +>>> + + + > + + > + > + > + > + > + > .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 + >)> + T) + (T >)>)>> + +> + + +\ +% + +') (I <>) "AUX" V OA OO OI) + ; + % ') + (T ' 1>>>)> + >> + )> + )> + )> + + + + + >> + + )> + )> + )> + + + > >> + )> + + + >> .V) + (T + + + >> .V) + ( ,P?ACTION> ,M-BEG>> .V) + (>> .V) + (>>> .V) + (> + >>> + .V) + (>> .V)>)> + + + + .V>) + (T + +'> + +) (I <>) "AUX" V OA OO OI) + >> .V) + (T + + + >> .V) + ( ,P?ACTION> + ,M-BEG>> .V) + (>> .V) + (>>> .V) + (> + >>> + .V) + ( + >> .V)>)> + + + + .V> + + <>) + (T + + " CR>) + (T ">)>)> + + ) + (T )>> + + + ) + ( + ) + (T )>)> + .RES)>> + +)) + )> + > +>)> +\ +;"former CLOCKER stuff" + + + +> + + + + + + + + + + + + + +> ,C-TICK .TICK> + .CINT> + +) E C INT) + > + > + + > + >> + > + + ) + ( .RTN> )> + >>> + +> + +)) + > )> + >> + > + + > + ) + (>> + > + ) + (T + > + > + >> + )>)>)> + >>> \ No newline at end of file diff --git a/north-of-res.zil b/north-of-res.zil new file mode 100644 index 0000000..ee908e0 --- /dev/null +++ b/north-of-res.zil @@ -0,0 +1,512 @@ +"NORTH-OF-RESERVOIR for + Mini-Zork '87 + (c) Copyright 1987 Infocom, Inc. All Rights Reserved" + + + + + ) + (T + )>)>> + + + + ) + ( + )>> + +) + ( + + )>> + + + +> + + + + + + ) + (T + )> + )>> + + + + + + + + + + + + + + + + >> + ,P?WEST) + (T ,P?DOWN)>>) + ( + + > + + + ) + (T + )>)>> + + + + + + + ) + ( + + ,WINNER ,HERE>>> + + )>> + + + + ,WINNER ,HERE> + ) + (T + )>> + + + + >) + ( + ,WINNER ,HERE> + ) + (T + )>)>> + + + + >> + +> 1> + ) + (T + )>> + > + +> + + + + + + + + + + + ,BASKET> + ) + ( + ) + (T + + + + )>) + ( + + ) + (T + + > + + )>) + ( + > + )>> + + + ) + ( + + ) + ( + > + CR>)>> + + + + + + > + + > + + >> + )>)>> + + ;"REALLY BLOW" + ) + ( + )>> + + + + + + + + + + + + + + + )>> + +> + + + > + + ) + ( 4> + > + )> + >> + + ,LIT + > + + >)> + )>> + +> + + + + + + + + + ) + (T + )>)>> + + + + + + ) + (T + + )>)>> + + + + + + + ) + (T + > + > + + ) + (.SLAG? + )> + )>) + (T + )>)>> + + + + + > + + \ No newline at end of file diff --git a/parser.zil b/parser.zil new file mode 100644 index 0000000..df77faa --- /dev/null +++ b/parser.zil @@ -0,0 +1,1449 @@ +"PARSER for + Mini-Zork '87 + (c) Copyright 1987 Infocom, Inc. All Rights Reserved" + +"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" + + ;"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 + + >)> + )>> + + + > + > + > + + + + > + + > + >)> + + + + > + )> + > + >) + (,P-CONT + + + + >> + )> + >) + (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> + ) + (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) + ( + > + >) + ( + > + >> + + 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" +\ + ) + (ELSE + > + >)>>> + + + + + )> + + >> 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." + + + +; + +; +; +; +; +; +; +; +; +; + +; "Constants for compact syntax tables. TAA 11/7/87" +; "See also P-SONUMS macro in MISC." + + + + + + + + +; "Syntax lengths, for 0, 1, & 2 objects" + + + + + + >) + (T + >)> + >> <>) + (T + <+ .PREP 192>)>> + +) (DRIVE2 <>) PREP VERB TMP) + >> + + )> + >> + > + > + > ;"TAA" + ; ,P-SONUMS>> + T) + ( + + >> + ; "TAA" + ;>>> + ) + ( ;"TAA" + ; + > + > + ) + ( ;"TAA" + + ; + >> + + )>)> + + ) + (T + + )>) + (T + ;"TAA" + >) + (<1? .NUM> + >) + (T + >)> + ;>)>> + + + ;"TAA" + ;>>> + + + ) + ( + + + ;>>> + + + ) + ( + + ) + (> + ) + (T + + + > + + ) + (> + >) + (T + > + )> + + )> + + ;"TAA" + ;) + (T + ;"TAA" + ;)>> + + )>> + + + > +\ + + )> + > + > + > + ) + (T >)>> + + + + + + )> + > + + + + + )> + ;"TAA" + ;> + ) + (.D2 + ;"TAA" + ;> + )>> + +; .THE?>> + +) "AUX" BEG END) + > + >) + (T + > + >)> + > + +) (Q? <>)) + + ) + (T + > + + ) + (.NOSP + >) + (T + )> + + ) + ( + + ) + ( + + ) + (T + + .CP> + )> + + ) + ( + > + ) + (T + >)> + >)>)> + >>> + +> + + + ) + (T + > + )>)>> + +) "AUX" BEG END) + >> + >> + + ,P-LEXELEN> 2>>> + + + ,P-LEXELEN> + 2>>> + ) + (T + >> + )> + >)> + >>> +\ + 2>> + .WRD> + + > + + 2>> + ) + ( .PREP> + >>)>>> + + + >> + + + + + )> + + + + > + + 1> + > + + > + > + >> + + )> + + + ) + (T + )> + ) + (T + )> + .OBJ)>) + (T + + )>> + + + > 0>> + > + ,P-PRSI> >)> + > 0>> + > + ,P-PRSO> >)> + >> + > + >)> + + >>> + >)>)> + > +\ +> + + ) + (> ,P-BUTS>) + (T + .OBJ> + >)> + >> + + + + .NTBL> + +> +> +> +> +> +> +> +> +> + + + + + +\ +> + +) LEN WV WRD NW (WAS-ALL <>)) + > + + )> + + + > + + >> + )> + ) + (T + > + ) + (T >)> + + + + >)>) + ( + > > + + ) + ( + + + + >)>) + (T + + > > + >)>) + ( + >> + + > > + T) + () + () + ( + + )>) + (> + > + + ) + ( + + )>)> + > + > + )>>> + + + + + + + + + +) (OLEN 0) OBJ) + + > + )> + ,P-ADJ> + + + >)>)> + + + > + > + )> + )> + > > + )> + + ) + (T + + + )> + )> + .TLEN>> + ) + ( + >> + > + >> + + > + )> + ) + ( + >>> + + + + .LEN>> + ) + (T + )> + > + + ) + ( + + ,P-NC1) + (T ,P-NC2)>> + + + <>> + ) + (.VRB + )> + > + > + )>)> + .GCHECK> + + > + ;"Changed 6/10/83 - MARC" + + + + + > + > + > + ) + (T + )>)> + > + > + ) + ( )> + + > + > + >> + +; + + + + > + ) + (T + + >)>> + > 0> + )> + > 0> + )> + > 1> + >)> + > + > + .LEN> + +;> +> +> +> + + + + + >) + (T + >)> + + > + > + + + > )> + ) + ( )> + > 1> + + )>>> +\ +> + + > + 1>> + > .TBL> + )> + )>>)> + > + 4> 1>> + + >> + 1>>> + 5>> + > + > + + ) + ( )>>)> + .LEN> + + + + + > + > + )>)>> + +> + ) + (T + + ) + ( + ) + (T )>)>> + + + + + +> + > + + > + )> + > + + > + > + + >> + + ,P-SRCALL) + ( + ,P-SRCALL) + (T ,P-SRCTOP)>>>)> + >) (T )>>)>> + +> + .OBJ> + >> + +> 0> ;"TAA" + > + + >) + (T + )>)>) + (T + )>> +\ +> + + >> + > 0> ) + (T + >> + + > + + ) + (T + )>)> + > + >> + + + ) + (> + >) + ( + > T>> + >) + (T )> + + > + + + )> + + + + + ) + ( + > + )>)>)>>) + (T)>> + +) TMP) + 1> + ,SMANY>>> + ) + ( 1> + ,SMANY>>> + )> + + + )> + + > + + ) + ( + >) + (T + >)> + + ) + (T)>> + + )> + > ) + (ELSE >)> + > + >>) + ( )>>> +\ +> + ) + ( + )>>> + +)) + > + )> + + + + > + ) + (T + + + + + + > + > + )>)> + + 0> )>)> + + + .LIT> + +;> 0> ,W?IT>> + ) + (T <>>)>> + +;> 0> ,W?IT>> + ) + (T <>>)>> + + + ) + (> + <- 2> 1>>>> + ) + (>> + 1>>>>> + ) + (> + >> + )> + > \ No newline at end of file diff --git a/south-of-res.zil b/south-of-res.zil new file mode 100644 index 0000000..044c478 --- /dev/null +++ b/south-of-res.zil @@ -0,0 +1,1283 @@ +"SOUTH-OF-RESERVOIR for + Mini-Zork '87 + (c) Copyright 1987 Infocom, Inc. All Rights Reserved" + + + + + ) + ( + + >> + + + )>)>> + + + +)) + 3> + > + )> + ,KITCHEN) + (T + + )>> + + + )>> + + + + + )>> + + + +> + + + > + > + )>> + + + + + > + ) + ( + CR>) + ( + ) + ( + + ) + ( + )>> + + + + + + + + + + ) + (T + )> + )>> + + + +> + + + + ) + (T + )> + + )> + )>> + + + + + + + > + > + + )> + > + + ) + (T + + + > + + + + + )> + )>) + ( + > + + + + + ) + ( + > + + > + ) + (T + )> + + > + )> + ) + ( + + ) + (T + )> + )>> + + + + + > + + + + + +> + + + + + + > + + + + + + > + ) + (T + )>) + (T + )>) + ( + )>> + + + + + )>> + + + + + )>> + + + + + + + + + + + + + + + ) + (T + + )>) + ( + + > + ) + ( + + + )>)>> + + + + + + + + + + + > + ) + ( + + + + > + )> + + ) + ( + ) + (T + )>)>> + + + + + +) "AUX" TMP) + + + + > + ) + ( + > + ) + (T + )>) + ( + + > + ) + (> 1> + >> + ) + (> + ) + (T + )>)>) + (.RARG + ) + ( + ) + ( + + ) + (> + ) + (T + + + + )>) + ( + + )>> + +> + + + + + + + )>> + + + +> + + + + )>) + ( + ,DEAD> + + + ) + ( + > + )>> + +> + + + + + + + + )> + )>> + + + + + + + ) + ( + > + ) + ( + > + )>> + + + + + > + ,HADES-FLAG>> + )>> + + + + + + + + + + + + > + + + + + > + )> + + + ) + (T + > + )>) + (T + )>)>> + + + +> + + + >> + )>> + + + + + + + ) + ( + ) + ( + + + >>> + )>> + + + +> + >)> + + ) + ( + + ) + ( + ) + ( + + + + ) + (T + + )>) + ( + > + + > + ) + ( + + ) + (T + CR>)>) + ( + ) + ( + > + + + + + ) + (T + )>) + ( + > + + ) + ( + + + ) + (T + )> + )>> + +> + + + + + > + > + + + )>> + +)) + + >>> + + > + >)>> + + + + + + + + + +> + + + + + > + )>) + ( + + ) + ( + + > + ) + (T + )>) + ( + + > + + > + + + + + > + )> + ) + ( + + > + + + > + )>) + ( + + + > + + > + > + )>)>> + + + ) + (T + )>> + + + + + + >) + ( + ) + ( + > + )>> + +> + +> + + + >> + >> + +> + > + + + + + + + ) + ( + )>> + + +\ + + + + + + + + + + + ) + ( + > + > + + )>> + + + + + + + + + + + + + > + > + + + + )> + ) + ( + + + + )>) + (T + CR>)>)>> + + + +> + + + + + + + + ) + (T + )> + )>> + + + + + > + + + ) + ( + ) + ( + + ) + (T + + )>) + ( +