.FUNCT CANT-USE,PTR,BUF,?TMP1 SET 'QUOTE-FLAG,FALSE-VALUE SET 'P-OFLAG,FALSE-VALUE PRINTI "[This story can't understand the word """ MUL PTR,2 >BUF ADD P-LEXV,BUF GETB STACK,2 >?TMP1 ADD P-LEXV,BUF GETB STACK,3 CALL WORD-PRINT,?TMP1,STACK PRINTR """ when you use it that way.]" .FUNCT DONT-UNDERSTAND PRINTR "[That sentence didn't make sense. Please reword it or try something else.]" .FUNCT NOT-IN-SENTENCE,STR PRINTI "[There aren't " PRINT STR PRINTR " in that sentence!]" .FUNCT LIGHTS-F FSET? HERE,OUTDOORSBIT /?THN6 FSET? HERE,CAVEBIT /?THN6 EQUAL? HERE,CRAWL-SPACE-NORTH,CRAWL-SPACE-SOUTH,FIRST-SECRET-ROOM /?THN6 EQUAL? HERE,FIREPLACE,CHIMNEY-1,CHIMNEY-2 /?THN6 EQUAL? HERE,CHIMNEY-3 \?ELS5 ?THN6: CALL CANT-SEE-ANY,LIGHTS RSTACK ?ELS5: EQUAL? PRSA,V?LAMP-ON \FALSE PRINTR "You flip the switch but nothing happens. It seems the light bulbs are missing." .FUNCT GROUND-F CALL GETTING-INTO? ZERO? STACK \?THN6 EQUAL? PRSA,V?LOOK-BEHIND \?ELS5 ?THN6: CALL PICK-ONE,YUKS PRINT STACK CRLF RTRUE ?ELS5: EQUAL? PRSA,V?LOOK-UNDER \?ELS9 PRINTR "Nothing but dirt." ?ELS9: CALL HURT?,GROUND ZERO? STACK \?THN12 CALL MOVING?,GROUND ZERO? STACK /?ELS11 ?THN12: CALL SAY-THE,GROUND PRINTR " is not affected." ?ELS11: CALL TALKING-TO?,GROUND ZERO? STACK \?THN16 EQUAL? PRSA,V?YELL \FALSE ?THN16: PRINTI "Talking to" CALL TPRINT,GROUND CALL SIGN-OF-COLLAPSE RETURN 2 .FUNCT MAZE-HOLE-F EQUAL? PRSA,V?LOOK-INSIDE \FALSE PRINTR "There's nothing but dirt in the hole." .FUNCT WALLS-F FSET? HERE,OUTDOORSBIT \?ELS5 CALL CANT-SEE-ANY,WALLS RETURN 2 ?ELS5: CALL GETTING-INTO? ZERO? STACK \?THN10 EQUAL? PRSA,V?LOOK-BEHIND \?ELS9 ?THN10: CALL PICK-ONE,YUKS PRINT STACK CRLF RTRUE ?ELS9: EQUAL? PRSA,V?LOOK-UNDER \?ELS13 PRINTR "There's a floor there." ?ELS13: CALL HURT?,WALLS ZERO? STACK \?THN16 CALL MOVING?,WALLS ZERO? STACK /?ELS15 ?THN16: EQUAL? PRSA,V?THROW \?CND18 EQUAL? PRSO,FINCH /FALSE ?CND18: CALL SAY-THE,WALLS PRINTR " is not affected." ?ELS15: CALL TALKING-TO?,WALLS ZERO? STACK \?THN25 EQUAL? PRSA,V?YELL \?ELS24 ?THN25: PRINTI "Talking to walls" CALL SIGN-OF-COLLAPSE RETURN 2 ?ELS24: EQUAL? PRSA,V?EXAMINE /FALSE CALL YOU-DONT-NEED,WALLS RETURN 2 .FUNCT CEILING-F FSET? HERE,OUTDOORSBIT \?ELS5 CALL CANT-SEE-ANY,CEILING RETURN 2 ?ELS5: EQUAL? PRSA,V?LOOK-UNDER \FALSE CALL V-LOOK RTRUE .FUNCT HANDS-F EQUAL? PRSA,V?PUT \FALSE EQUAL? PRSO,HANDS \FALSE CALL PERFORM,V?REACH-IN,PRSI RTRUE .FUNCT YOUR-FEET-F EQUAL? PRSA,V?PUT \FALSE EQUAL? PRSI,SKIS \FALSE CALL PERFORM,V?WEAR,SKIS RTRUE .FUNCT ME-F,CONTEXT=0,OLIT EQUAL? PRSA,V?ALARM \?ELS5 PRINTR "You're already wide awake." ?ELS5: CALL TALKING-TO?,ME ZERO? STACK \?THN8 EQUAL? PRSA,V?YELL \?ELS7 ?THN8: CALL TALK-TO-SELF RETURN 2 ?ELS7: EQUAL? PRSA,V?LISTEN \?ELS13 PRINT YOU-CANT PRINTR "help doing that." ?ELS13: EQUAL? PRSA,V?GIVE \?ELS15 EQUAL? PRSI,ME \?ELS15 CALL ULTIMATELY-IN?,PRSO ZERO? STACK /?ELS20 PRINTR "You already have it." ?ELS20: CALL PERFORM,V?TAKE,PRSO RTRUE ?ELS15: EQUAL? PRSA,V?KILL \?ELS24 PRINTR "Desperate? Call the Samaritans." ?ELS24: EQUAL? PRSA,V?FIND \?ELS26 PRINTR "You're right here!" ?ELS26: CALL HURT?,ME ZERO? STACK /FALSE PRINTR "Punishing yourself that way won't help matters." .FUNCT TALK-TO-SELF PRINTI "Talking to yourself" CALL SIGN-OF-COLLAPSE CALL PCLEAR RSTACK .FUNCT SIGN-OF-COLLAPSE PRINTR " is said to be a sign of impending mental collapse." .FUNCT GLOBAL-ROOM-F EQUAL? PRSA,V?LOOK-INSIDE,V?EXAMINE,V?LOOK \?ELS5 CALL V-LOOK RTRUE ?ELS5: EQUAL? PRSA,V?EXIT,V?DROP,V?ENTER \?ELS7 CALL V-WALK-AROUND RSTACK ?ELS7: EQUAL? PRSA,V?SEARCH \?ELS9 PRINTR "You find nothing new." ?ELS9: EQUAL? PRSA,V?WALK-AROUND \FALSE PRINTR "Walking around the area reveals nothing new. (If you want to go somewhere, just type a direction.)" .FUNCT CANT-SEE-ANY,THING=0,STRING?=0 CALL YOU-CANT-SEE ZERO? STRING? /?ELS3 PRINT THING JUMP ?CND1 ?ELS3: ZERO? THING /?ELS6 FSET? THING,NARTICLEBIT /?CND8 PRINTI "any " ?CND8: CALL DPRINT,THING JUMP ?CND1 ?ELS6: PRINTI "that" ?CND1: PRINTR " here!" .FUNCT YOU-CANT-SEE SET 'CLOCK-WAIT,TRUE-VALUE CALL PCLEAR PRINT YOU-CANT PRINTI "see " RTRUE .FUNCT YOU-ALREADY PRINTR "You already did that." .FUNCT HOW? PRINTR "How do you intend to do that?" .FUNCT PRESUMABLY-YOU-WANT-TO,STR,THING=0 PRINT I-ASSUME PRINTC 32 PRINT STR PRINTC 32 ZERO? THING /?ELS3 CALL DPRINT,THING JUMP ?CND1 ?ELS3: PRINTI "it" ?CND1: PRINTR ".]" .FUNCT NOT-LIKELY,THING,STR PRINTI "It" CALL PICK-ONE,LIKELIES PRINT STACK PRINTI " that" CALL TPRINT,THING PRINTC 32 PRINT STR PRINTR "." .FUNCT YOUD-HAVE-TO,STR,THING PRINTI "You'd have to " PRINT STR CALL TPRINT,THING PRINTR " to do that." .FUNCT WINDOW-F EQUAL? PRSA,V?LOOK-INSIDE \?ELS5 EQUAL? HERE,PROJECTION-BOOTH \?ELS5 PRINTR "Uncle Buddy's screening room isn't packing in much of a crowd tonight. A viewing screen dominates the room." ?ELS5: EQUAL? PRSA,V?LOOK-INSIDE \?ELS9 EQUAL? HERE,DINING-ROOM \?ELS9 GRTR? MOVES,535 /?ELS14 PRINTI "By the moonlight you can see the outline of" JUMP ?CND12 ?ELS14: PRINTI "You can see" ?CND12: PRINTR " Aunt Hildegarde's lush garden." ?ELS9: EQUAL? PRSA,V?LOOK-INSIDE \?ELS18 PRINTI "You see the " EQUAL? HERE,SCREENING-ROOM \?ELS21 PRINTI "projection booth of" JUMP ?CND19 ?ELS21: FSET? HERE,OUTDOORSBIT \?ELS23 PRINTI "interior of" JUMP ?CND19 ?ELS23: PRINTI "grounds outside" ?CND19: PRINTR " Uncle Buddy's house." ?ELS18: EQUAL? PRSA,V?OPEN \?ELS27 EQUAL? HERE,PROJECTION-BOOTH,SCREENING-ROOM /?ELS27 PRINTR "That would let in all the smog!" ?ELS27: EQUAL? PRSA,V?ENTER,V?CLOSE \FALSE PRINTR "The window isn't open." .ENDI