.FUNCT INTDIR-F,?TMP1 EQUAL? PRSA,V?ROW-TO,V?ROW,V?ROW-DIR \FALSE IN? PROTAGONIST,SKIFF \FALSE EQUAL? P-DIRECTION,P?EAST \?CCL8 EQUAL? HERE,BY-SHIP \?CND9 PRINTI "That would take you past" CALL TPRINT,SHIP PRINTR " into the open sea!" ?CND9: SET 'ROWING,ROWEAST PRINT DIPPING-OARS PRINTD SKIFF PRINTI " plows through the lagoon." EQUAL? HERE,SHALLOWS \?CCL13 CALL QUEUE,I-CURRENT,-1 SET 'ROWING,1 MOVE SKIFF,LAGOON CRLF CALL GOTO,SKIFF RSTACK ?CCL13: ADD SKIFF-LOC,ROWING >?TMP1 ADD SHIP-LOC,1 EQUAL? ?TMP1,SHIP-LOC,STACK \?CCL15 FSET? SHIP,MUNGBIT \?CCL18 CALL JIGS-UP,STR?297 RSTACK ?CCL18: PRINTI " You glide into the shadow of" CALL TRPRINT,SHIP CRLF SET 'SKIFF-LOC,SHIP-LOC SET 'ROWING,0 MOVE SKIFF,BY-SHIP CALL GOTO,SKIFF RSTACK ?CCL15: CRLF RTRUE ?CCL8: EQUAL? P-DIRECTION,P?WEST \?CCL20 SET 'ROWING,ROWWEST EQUAL? HERE,SHALLOWS \?CCL23 PRINTI "You can row" CALL TPRINT,SKIFF PRINTI " no farther west" PRINT PCR RTRUE ?CCL23: ADD SKIFF-LOC,ROWING LESS? STACK,2 \?CCL25 PRINT DIPPING-OARS PRINTD SKIFF PRINTI " noses into the sand of the shallows. You get out" PRINT PCR CRLF CALL DEQUEUE,I-CURRENT SET 'SKIFF-LOC,1 MOVE SKIFF,SHALLOWS CALL GOTO,SHALLOWS RTRUE ?CCL25: PRINT DIPPING-OARS PRINTD SKIFF PRINTI " shoots over the waves" PRINT PCR EQUAL? HERE,BY-SHIP \TRUE MOVE SKIFF,LAGOON CALL GOTO,SKIFF RTRUE ?CCL20: EQUAL? P-DIRECTION,P?NORTH,P?NW,P?NE /?CCL29 EQUAL? P-DIRECTION,P?SOUTH,P?SW,P?SE \FALSE ?CCL29: PRINTR "You can barely row back and forth, much less side to side!" .FUNCT MAN-F,PERSON EQUAL? PRSO,ME \?CCL3 EQUAL? PRSA,V?TAKE-WITH \?CCL3 CALL RECOGNIZE RSTACK ?CCL3: CALL NOUN-USED,W?SAILOR,MAN ZERO? STACK /?CCL7 EQUAL? PRSA,V?HELLO \?CCL7 CALL GLOBAL-IN?,CREW,HERE ZERO? STACK /?CCL12 CALL PERFORM,V?HELLO,CREW RTRUE ?CCL12: PRINTR "Nothing happens here." ?CCL7: GET P-NAMW,0 EQUAL? STACK,W?MAN \?CCL14 EQUAL? PRSO,MAN \?CCL14 CALL ADJ-USED,A?BEWIGGED ZERO? STACK /?CCL19 CALL PERFORM-PRSA,LAFOND,PRSI RSTACK ?CCL19: CALL NOUN-USED,W?MEN,MAN ZERO? STACK /?CCL21 EQUAL? HERE,BALLROOM,ORCHESTRA,SUPPER-ROOM /?CCL21 CALL MORE-SPECIFIC RSTACK ?CCL21: CALL FIND-MAN >PERSON ZERO? PERSON /?CCL25 CALL PERFORM-PRSA,PERSON,PRSI RTRUE ?CCL25: CALL CANT-SEE,MAN RSTACK ?CCL14: GET P-NAMW,1 EQUAL? STACK,W?MAN \FALSE EQUAL? PRSI,MAN \FALSE CALL ADJ-USED,A?BEWIGGED ZERO? STACK /?CCL32 CALL PERFORM-PRSA,PRSO,LAFOND RSTACK ?CCL32: CALL NOUN-USED,W?MEN,MAN ZERO? STACK /?CCL34 EQUAL? HERE,BALLROOM,ORCHESTRA,SUPPER-ROOM /?CCL34 CALL MORE-SPECIFIC RSTACK ?CCL34: CALL FIND-MAN >PERSON ZERO? PERSON /?CCL38 CALL PERFORM-PRSA,PRSO,PERSON RTRUE ?CCL38: CALL CANT-SEE,MAN RSTACK .FUNCT FIND-MAN IN? HERO,HERE \?CCL3 RETURN HERO ?CCL3: IN? LAFOND,HERE \?CCL5 RETURN LAFOND ?CCL5: IN? DAD,HERE \?CCL7 RETURN DAD ?CCL7: IN? CRULLEY,HERE \?CCL9 RETURN CRULLEY ?CCL9: IN? COOKIE,HERE \?CCL11 RETURN COOKIE ?CCL11: IN? BUTLER,HERE \?CCL13 RETURN BUTLER ?CCL13: CALL GLOBAL-IN?,DANCERS,HERE ZERO? STACK /?CCL15 RETURN DANCERS ?CCL15: CALL GLOBAL-IN?,CREW,HERE ZERO? STACK /?CCL17 RETURN CREW ?CCL17: IN? CROC,HERE \FALSE RETURN CROC .FUNCT NOT-HERE-OBJECT-F,TBL,PRSO?=1,OBJ,X=0 EQUAL? PRSO,NOT-HERE-OBJECT \?CCL3 EQUAL? PRSI,NOT-HERE-OBJECT \?CCL3 PRINTR "Those things aren't here!" ?CCL3: EQUAL? P-XNAM,W?MOUTH,W?EYES \?CCL7 EQUAL? P-XADJN,W?LAFOND,FALSE-VALUE \?CCL7 EQUAL? PRSO,NOT-HERE-OBJECT \?CCL12 SET 'PRSO,LAFOND RFALSE ?CCL12: SET 'PRSI,LAFOND RFALSE ?CCL7: EQUAL? P-XADJN,W?POWDER \?CCL14 CALL HELD?,HORN ZERO? STACK /?CCL14 EQUAL? PRSO,NOT-HERE-OBJECT \?CCL19 SET 'PRSO,POWDER JUMP ?CND1 ?CCL19: SET 'PRSI,POWDER JUMP ?CND1 ?CCL14: EQUAL? P-XNAM,W?HANDS,W?HAND /?PRD23 EQUAL? P-XNAM,W?FINGER,W?EYE,W?EYES /?PRD23 EQUAL? P-XNAM,W?HEAD,W?JAMISON /?PRD23 EQUAL? P-XNAM,W?LIP,W?LIPS,W?MOUTH \?CCL21 ?PRD23: EQUAL? P-XADJN,W?NICK,W?NICHOLAS,W?CROC'S /?CTR20 EQUAL? P-XADJN,W?DAD,W?FATHER,W?PAPA /?CTR20 EQUAL? P-XADJN,W?WOMAN,W?LUCY /?CTR20 EQUAL? P-XADJN,W?JEAN,W?LAFOND \?CCL21 ?CTR20: PRINTR "[Sadly, we haven't the space to handle everything. Try to refer only to characters in the story, not individual body parts or possessions. For example, you can EXAMINE PIRATE but you can't EXAMINE PIRATE'S EYEPATCH.]" ?CCL21: EQUAL? PRSO,NOT-HERE-OBJECT \?CCL33 SET 'TBL,P-PRSO JUMP ?CND1 ?CCL33: SET 'TBL,P-PRSI SET 'PRSO?,FALSE-VALUE ?CND1: ZERO? PRSO? /?CCL36 CALL PRSO-MOBY-VERB? ZERO? STACK /?CCL36 SET 'X,TRUE-VALUE JUMP ?CND34 ?CCL36: ZERO? PRSO? \?CND34 CALL PRSI-MOBY-VERB? ZERO? STACK /?CND34 SET 'X,TRUE-VALUE ?CND34: ZERO? X /?CCL44 CALL FIND-NOT-HERE,TBL,PRSO? >OBJ ZERO? OBJ /FALSE EQUAL? OBJ,NOT-HERE-OBJECT \TRUE EQUAL? PRSA,V?FOLLOW,V?WALK-TO \?CCL52 CALL V-WALK-AROUND JUMP ?CND42 ?CCL52: CALL MORE-SPECIFIC JUMP ?CND42 ?CCL44: EQUAL? WINNER,PROTAGONIST \?CCL55 PRINTI "You" JUMP ?CND53 ?CCL55: FSET? WINNER,DEADBIT \?CCL57 PRINT DOESNT-RESPOND RETURN 8 ?CCL57: PRINTI "Looking confused," CALL TPRINT,WINNER PRINTI " says, ""I" ?CND53: PRINTI " can't see" CALL ADJNAME?,P-XADJ ZERO? STACK \?CND60 CALL NAME?,P-XNAM ZERO? STACK \?CND60 PRINTI " any" ?CND60: CALL NOT-HERE-PRINT,PRSO? PRINTI " here!" EQUAL? WINNER,PROTAGONIST /?CND64 PRINTC 34 ?CND64: CRLF ?CND42: CALL STOP RSTACK .FUNCT PRSO-MOBY-VERB? EQUAL? PRSA,V?WHAT,V?WHERE,V?SHOOT /TRUE EQUAL? PRSA,V?SSHOOT /TRUE EQUAL? PRSA,V?WALK-TO /TRUE EQUAL? PRSA,V?I-LOVE-YOU /TRUE EQUAL? PRSA,V?FIND,V?FOLLOW,V?SAVE-SOMETHING /TRUE EQUAL? PRSA,V?ANSWER-KLUDGE /TRUE RFALSE .FUNCT PRSI-MOBY-VERB? EQUAL? PRSA,V?ASK-ABOUT,V?ASK-FOR,V?TELL-ABOUT /TRUE EQUAL? PRSA,V?I-LOVE-YOU /TRUE RFALSE .FUNCT FIND-NOT-HERE,TBL,PRSO?,M-F,OBJ CALL MOBY-FIND,TBL >M-F EQUAL? 1,M-F \?CCL3 ZERO? PRSO? /?CCL6 SET 'PRSO,P-MOBY-FOUND CALL THIS-IS-IT,PRSO RFALSE ?CCL6: SET 'PRSI,P-MOBY-FOUND RFALSE ?CCL3: LESS? 1,M-F \?CCL8 GETB TBL,1 >OBJ GETP OBJ,P?GENERIC CALL STACK >OBJ ZERO? OBJ /?CCL8 EQUAL? OBJ,NOT-HERE-OBJECT /TRUE ZERO? PRSO? /?CCL15 SET 'PRSO,OBJ CALL THIS-IS-IT,PRSO RFALSE ?CCL15: SET 'PRSI,OBJ RFALSE ?CCL8: RETURN NOT-HERE-OBJECT .FUNCT NOT-HERE-PRINT,PRSO?,?TMP1 ZERO? P-OFLAG /?CCL3 ZERO? P-XADJ /?CND4 PRINTC 32 PRINTB P-XADJN ?CND4: ZERO? P-XNAM /FALSE PRINTC 32 PRINTB P-XNAM RTRUE ?CCL3: ZERO? PRSO? /?CCL10 GET P-ITBL,P-NC1 >?TMP1 GET P-ITBL,P-NC1L CALL BUFFER-PRINT,?TMP1,STACK,FALSE-VALUE RSTACK ?CCL10: GET P-ITBL,P-NC2 >?TMP1 GET P-ITBL,P-NC2L CALL BUFFER-PRINT,?TMP1,STACK,FALSE-VALUE RSTACK .FUNCT LADDER-F ZERO? LADDER-HANGING \?CCL3 CALL CANT-SEE,LADDER RSTACK ?CCL3: EQUAL? PRSA,V?BOARD,V?CLIMB,V?TAKE \?CCL5 LOC PROTAGONIST EQUAL? STACK,CAPT-QUARTERS \?CCL8 FSET? LEDGE,MUNGBIT \?CCL11 PRINTI "You lean over" CALL TPRINT,LEDGE PRINTI ", but" CALL TPRINT,LADDER PRINTI " is too far out to reach" PRINT PCR RTRUE ?CCL11: PRINTI "It's on the other side of the window" PRINT PCR RTRUE ?CCL8: LOC PROTAGONIST EQUAL? STACK,LEDGE \?CCL13 PRINTI "You " CALL ANYTHING-HELD ZERO? STACK /?CND14 CALL ROB,PROTAGONIST,RETICULE PRINTI "put everything in" CALL TPRINT,RETICULE PRINTI " and " ?CND14: FSET? POOP,TOUCHBIT \?CCL18 PRINTI "hop out, catching the" JUMP ?CND16 ?CCL18: CALL QUEUE,I-LADDER-BLOWS,-1 PRINTI "reach out for" CALL TPRINT,LADDER PRINTI " and over-balance, tumbling from your perch. Your hand closes on a slimy hemp rung as you fly out over the waves, clinging tenuously, feet free, to the" ?CND16: CALL PRSO-PRINT PRINT PCR CRLF CALL GOTO,ON-LADDER RSTACK ?CCL13: EQUAL? HERE,ON-LADDER \?CCL20 EQUAL? PRSA,V?TAKE \?CCL20 PRINT HOLDING-IT RTRUE ?CCL20: LOC PROTAGONIST EQUAL? STACK,SKIFF \?CCL24 CALL DEBARK-SKIFF RSTACK ?CCL24: EQUAL? HERE,POOP \?CCL26 PRINTI "If you wish to climb down" CALL TPRINT,LADDER PRINTI ", say so" PRINT PCR RTRUE ?CCL26: CALL DO-WALK,P?UP RSTACK ?CCL5: EQUAL? PRSA,V?CUT \?CCL28 CALL HELD?,DAGGER ZERO? STACK /?CCL31 CALL CTPRINT,DAGGER PRINTI " isn't sharp enough to cut through" CALL TRPRINT,LADDER RSTACK ?CCL31: CALL PROPOSE RSTACK ?CCL28: EQUAL? PRSA,V?UNTIE \?CCL33 CALL CTPRINT,ROPE PRINTI " is tied in too complex a knot" PRINT PCR RTRUE ?CCL33: EQUAL? PRSA,V?CLIMB-DOWN \?CCL35 EQUAL? HERE,CAPT-QUARTERS \?CCL38 CALL DO-FIRST,STR?298,LADDER RSTACK ?CCL38: CALL DO-WALK,P?DOWN RTRUE ?CCL35: EQUAL? PRSA,V?EXAMINE \FALSE EQUAL? HERE,CAPT-QUARTERS,ON-LADDER,POOP \FALSE PRINT COMMON-LOOKING PRINTI "rope " PRINTD LADDER PRINT PCR RTRUE .FUNCT I-END-PROLOGUE PRINT INDENT PRINTI "Davis leaps across the deck to your side, ""Free me or she dies!"" he yells, jabbing a knife up to your throat. In one smooth motion," CALL TPRINT,HERO PRINTI " draws his rapier, pulls you free and stabs. Davis slumps into a bloody heap. Swooning, you fall into the Falcon's arms. You are dimly aware of being carried to the other ship, down a short flight of stairs, and laid gently on a soft bed. When you gather strength to look around, the Falcon has left you in peace. You remain confined to this room, a large cupboard blocking the door. Meals are brought by a peg-legged old man and eaten in silence. Of your handsome rescuer you see nothing. Slowly the days pass. " CRLF PRINT HIT-RETURN PRINTI "continue.]" CRLF READ P-INBUF,P-LEXV CALL CLEAR-SCREEN,10 CALL GOTO,CAPT-QUARTERS FCLEAR CRULLEY,DEADBIT FCLEAR DOOR,MUNGBIT MOVE HERO,CAPT-QUARTERS FCLEAR HERO,NDESCBIT REMOVE COFFER FSET COFFER,MUNGBIT FCLEAR COFFER,LOCKEDBIT FSET RAPIER,NDESCBIT FCLEAR DOOR,OPENBIT RTRUE .FUNCT GLOBAL-SLEEP-F EQUAL? PRSA,V?TAKE,V?WALK-TO \FALSE CALL PERFORM,V?SLEEP RTRUE .FUNCT GROUND-F EQUAL? PRSA,V?EXAMINE \?CCL3 EQUAL? HERE,RIGGING-ROOM,CROWS-NEST \?CCL6 PRINTI "Looking down at the distant deck is a mistake. Your stomach flips over" JUMP ?CND4 ?CCL6: CALL SHIP-BOARD,HERE ZERO? STACK /?CCL8 PRINTI "Well scrubbed and smoothed floorboards make up the deck" JUMP ?CND4 ?CCL8: EQUAL? HERE,BY-SHIP,LAGOON,SHALLOWS \?CCL10 PRINTI "A sandy bottom shifts under the waves" JUMP ?CND4 ?CCL10: EQUAL? HERE,CELL-1,CELL-4 \?CCL12 PRINTI "Like the walls and ceiling, rock" JUMP ?CND4 ?CCL12: EQUAL? HERE,CELL-2 \?CCL14 PRINTI "The floor is ankle deep in mud" JUMP ?CND4 ?CCL14: CALL NOTHING-INTERESTING PRINTI "about " FSET? HERE,INDOORSBIT \?CCL17 PRINTI "the floor" JUMP ?CND4 ?CCL17: CALL TPRINT,GROUND ?CND4: PRINT PCR RTRUE ?CCL3: EQUAL? PRSA,V?BOARD,V?CLIMB,V?CLIMB-ON \?CCL19 CALL WASTES RSTACK ?CCL19: EQUAL? PRSA,V?LOOK-UNDER \?CCL21 CALL IMPOSSIBLES RSTACK ?CCL21: EQUAL? PRSA,V?LEAVE \?CCL23 CALL DO-WALK,P?UP RSTACK ?CCL23: EQUAL? PRSA,V?WALK-TO \FALSE CALL NOUN-USED,W?DECK,GROUND ZERO? STACK /FALSE EQUAL? HERE,CABIN,LANDING,HOLD /?CTR29 EQUAL? HERE,GALLEY \?CCL30 ?CTR29: CALL DO-WALK,P?OUT RSTACK ?CCL30: EQUAL? HERE,DEUX-DECK,POOP,QUARTERDECK /?CTR33 EQUAL? HERE,MAIN-DECK,FOCSLE \?CCL34 ?CTR33: PRINT LOOK-AROUND RTRUE ?CCL34: EQUAL? HERE,CROWS-NEST,RIGGING-ROOM \?CCL38 CALL DO-WALK,P?DOWN RSTACK ?CCL38: CALL SHIP-BOARD,HERE ZERO? STACK /?CCL40 CALL V-WALK-AROUND RSTACK ?CCL40: CALL WASTES RSTACK .FUNCT KEY-F EQUAL? PRSA,V?TAKE \FALSE FSET? LARGE-KEY,TRYTAKEBIT \FALSE MOVE LARGE-KEY,PROTAGONIST FCLEAR LARGE-KEY,TRYTAKEBIT INC 'SCORE PRINTR "Taken." .FUNCT GEN-LOCK FSET? COFFER,NDESCBIT /FALSE RETURN DOOR .FUNCT DOOR-F EQUAL? HERE,CAPT-QUARTERS \?CCL3 CALL PERFORM-PRSA,CURTAIN RTRUE ?CCL3: EQUAL? PRSA,V?LOOK-INSIDE,V?EXAMINE \?CCL5 CALL NOUN-USED,W?LOCK,LDOOR ZERO? STACK /?CCL8 PRINTI "Ladies do not look through keyholes!" CRLF JUMP ?CND6 ?CCL8: FSET? PRSO,OPENBIT \?CCL10 PRINTI "It is open" JUMP ?CND6 ?CCL10: PRINTI "It" PRINT IS-CLOSED EQUAL? HERE,QUARTERDECK \?CCL13 PRINTI " and barred" JUMP ?CND6 ?CCL13: FSET? DOOR,MUNGBIT \?CND6 PRINTI ". Or, what remains of it is" ?CND6: CALL THIS-IS-IT,PRSO PRINT PCR RTRUE ?CCL5: EQUAL? PRSA,V?PICK \?CCL16 EQUAL? PRSO,LDOOR \?CCL16 PRINTR "The mechanism is too complex to pick." ?CCL16: EQUAL? PRSA,V?UNLOCK \?CCL20 EQUAL? HERE,UPPER-HALL-E \?CCL23 PRINTI "Only one man has the key to this room: Jean Lafond" PRINT PCR RTRUE ?CCL23: EQUAL? HERE,QUARTERDECK \?CCL25 CALL PERFORM,V?OPEN,DOOR RTRUE ?CCL25: EQUAL? PRSO,WOOD-CELL-DOOR \?CCL27 PRINTI "But" CALL TPRINT,DOOR PRINTI " isn't locked" PRINT PCR RTRUE ?CCL27: EQUAL? PRSI,LARGE-KEY \?CCL29 EQUAL? PRSO,IRON-CELL-DOOR \?CCL32 FCLEAR PRSO,LOCKEDBIT PRINTI "Unlocked" PRINT PCR RTRUE ?CCL32: PRINTI "That key does not unlock this door" PRINT PCR RTRUE ?CCL29: PRINTI "You are unable to unlock" CALL TRPRINT,DOOR RSTACK ?CCL20: EQUAL? PRSA,V?LOCK \?CCL34 EQUAL? PRSO,IRON-CELL-DOOR \?CCL37 EQUAL? PRSI,LARGE-KEY \?CCL37 FSET PRSO,LOCKEDBIT PRINTI "You " FSET? PRSO,OPENBIT \?CND40 FCLEAR PRSO,OPENBIT PRINTI "close and " ?CND40: PRINTI "lock" CALL TRPRINT,DOOR RSTACK ?CCL37: EQUAL? PRSI,LARGE-KEY \?CCL43 PRINTI "That key won't work here" PRINT PCR RTRUE ?CCL43: EQUAL? PRSO,VER-DOOR \?CCL45 PRINT YOU-CANT PRINTI "lock that" PRINT PCR RTRUE ?CCL45: CALL PROPOSE RSTACK ?CCL34: EQUAL? PRSA,V?KNOCK \?CCL47 EQUAL? HERE,UPPER-HALL-E \?CCL50 FSET? LDOOR,LOCKEDBIT /?CCL50 IN? LAFOND,LAFS-ROOM \?CCL50 PRINTD LAFOND PRINTR " calls, ""Come.""" ?CCL50: PRINTR "Silence answers back." ?CCL47: EQUAL? PRSA,V?OPEN \FALSE EQUAL? HERE,CABIN \?CCL58 PRINTR "It appears to be locked." ?CCL58: EQUAL? HERE,LANDING \?CCL60 CALL CTPRINT,DOOR PRINTI " won't open" PRINT PCR RTRUE ?CCL60: EQUAL? HERE,QUARTERDECK \?CCL62 PRINTI "Someone yells from ahead, ""Cap'n 'll have your hide if you go down there!"" You haven't the strength to lift the bar anyway" PRINT PCR RTRUE ?CCL62: EQUAL? HERE,VERANDA \FALSE FSET? DOOR,OPENBIT /FALSE PRINT YOU-CANT-SEE-ANY PRINT WAY-TO-DO-THAT RTRUE .FUNCT CEILING-F EQUAL? PRSA,V?EXAMINE \FALSE EQUAL? HERE,CREWS-QUARTERS \?CCL6 PRINT YOU-SEE PRINTI " a sail rippling against the night sky through" CALL TRPRINT,GRATE RSTACK ?CCL6: FSET? HERE,INDOORSBIT /FALSE CALL CANT-SEE,CEILING RSTACK .FUNCT WATER-F EQUAL? HERE,LAFS-ROOM,RIGGING-ROOM /?PRD5 EQUAL? HERE,BOWSPRIT,CROWS-NEST \?CCL3 ?PRD5: EQUAL? PRSA,V?PUT-ON,V?PUT,V?THROW /?CCL3 EQUAL? PRSA,V?ENTER \?CCL10 PRINT SUICIDE RTRUE ?CCL10: CALL CANT-REACH,SEA RSTACK ?CCL3: CALL GLOBAL-IN?,SEA,HERE ZERO? STACK \?CCL12 CALL HELD?,WATER,HERE ZERO? STACK \?CCL12 PRINTR "There's no water here." ?CCL12: EQUAL? PRSA,V?EXAMINE,V?LOOK-UNDER,V?LOOK-INSIDE \?CCL16 PRINTI "The water is sparkling clear" PRINT PCR RTRUE ?CCL16: EQUAL? PRSA,V?REACH-IN \?CCL18 PRINTI "Water" PRINT DRIPS-OFF RTRUE ?CCL18: EQUAL? PRSA,V?DRINK-FROM,V?DRINK \?CCL20 EQUAL? PRSO,WATER \?CCL23 PRINTI "You take a long draft. It is quite refreshing" PRINT PCR RTRUE ?CCL23: PRINTI "This water is much too salty to drink" PRINT PCR RTRUE ?CCL20: EQUAL? PRSA,V?PUT-ON \?CCL25 EQUAL? PRSI,SEA \?CCL25 CALL PERFORM,V?PUT,PRSO,SEA RTRUE ?CCL25: EQUAL? PRSA,V?THROW \?CCL29 EQUAL? HERE,CAPT-QUARTERS \?CCL32 FSET? LEDGE,MUNGBIT /?CCL32 PRINTI "But" CALL TPRINT,WINDOW PRINT IS-CLOSED PRINTR "!" ?CCL32: REMOVE PRSO PRINTI "You toss" CALL TPRINT-PRSO PRINTI " into" CALL TRPRINT,SEA RSTACK ?CCL29: EQUAL? PRSA,V?SOAK,V?PUT \?CCL36 EQUAL? PRSO,LETTER,INVITE \?CCL39 REMOVE PRSO PRINTI "It disintegrates quickly into nothing" PRINT PCR RTRUE ?CCL39: EQUAL? HERE,POOP,QUARTERDECK,FOCSLE /?CTR40 EQUAL? HERE,BOWSPRIT,CAPT-QUARTERS \?CCL41 ?CTR40: CALL PERFORM,V?THROW,PRSO,SEA RTRUE ?CCL41: EQUAL? HERE,MAIN-DECK \?CCL45 EQUAL? PRSI,SEA \?CCL48 CALL PERFORM,V?THROW,PRSO,SEA RTRUE ?CCL48: CALL PERFORM,V?PUT,PRSO,WATER-BARREL RTRUE ?CCL45: EQUAL? HERE,BEACH,SHALLOWS,LAGOON /?CTR49 EQUAL? HERE,BY-SHIP \?CCL50 ?CTR49: EQUAL? PRSO,RAG,DRESS \?CCL55 CALL DIP-DRESS RSTACK ?CCL55: PRINTI "You dip" CALL TPRINT-PRSO PRINTI " into the water" PRINT PCR RTRUE ?CCL50: PRINT YOU-CANT PRINTI "reach any water" PRINT PCR RTRUE ?CCL36: EQUAL? PRSA,V?SWIM,V?ENTER,V?BOARD \?CCL57 EQUAL? HERE,BEACH \?CCL60 CALL DO-WALK,P?EAST RSTACK ?CCL60: CALL V-SWIM RSTACK ?CCL57: CALL TOUCHING?,SEA ZERO? STACK /FALSE PRINTI "The cool water runs through your fingers" PRINT PCR RTRUE .FUNCT SKY-F FSET? HERE,INDOORSBIT \FALSE CALL CANT-SEE,SKY RSTACK .FUNCT MOON-F FSET? HERE,INDOORSBIT \?CCL3 EQUAL? HERE,CREWS-QUARTERS,CAPT-QUARTERS,BEDROOM /?CCL3 EQUAL? HERE,LAFS-ROOM /?CCL3 EQUAL? PRSA,V?TELL-ABOUT,V?ASK-ABOUT /?CCL3 PRINT YOU-CANT PRINTI "see the moon from here" PRINT PCR RTRUE ?CCL3: EQUAL? PRSA,V?EXAMINE \FALSE PRINTR "A dusty moonbeam swirls down from the sky." .FUNCT HANDS-F,ACTOR EQUAL? PRSA,V?APPLAUD \?CCL3 SET 'PRSO,FALSE-VALUE CALL V-APPLAUD RSTACK ?CCL3: EQUAL? PRSA,V?SHAKE \?CCL5 CALL FIND-IN,HERE,ACTORBIT,STR?267 >ACTOR ZERO? ACTOR /?CCL8 CALL PERFORM,V?SHAKE-WITH,HANDS,ACTOR RTRUE ?CCL8: PRINTR "Pleased to meet you." ?CCL5: EQUAL? PRSA,V?CLEAN \?CCL10 PRINTR "Done." ?CCL10: EQUAL? PRSA,V?TAKE-WITH \FALSE EQUAL? PRSI,HANDS \FALSE CALL PERFORM,V?TAKE,PRSO RTRUE .FUNCT EYES-F EQUAL? PRSA,V?CLOSE \?CCL3 PRINTI "You blink" PRINT PCR RTRUE ?CCL3: EQUAL? PRSA,V?OPEN \?CCL5 PRINTR "They are open!" ?CCL5: EQUAL? PRSA,V?LOOK-INSIDE,V?EXAMINE \FALSE CALL ADJ-USED,A?HIS ZERO? STACK /FALSE IN? HERO,HERE \FALSE GET MANNERISMS,3 PRINT STACK CRLF RTRUE .FUNCT MOUTH-F EQUAL? PRSA,V?OPEN,V?ENTER,V?PUT-ON /?CTR2 EQUAL? PRSA,V?EXAMINE,V?POUR,V?WRING /?CTR2 EQUAL? PRSA,V?PUT \?CCL3 ?CTR2: CALL ADJ-USED,A?CROC'S ZERO? STACK \?CTR8 CALL ADJ-USED,A?CROCOD ZERO? STACK \?CTR8 CALL NOUN-USED,W?SNOUT,MOUTH ZERO? STACK /?CCL9 ?CTR8: CALL PERFORM-PRSA,PRSO,CROC RTRUE ?CCL9: CALL ADJ-USED,A?LAFOND ZERO? STACK /?CCL14 CALL PERFORM-PRSA,PRSO,LAFOND RSTACK ?CCL14: EQUAL? PRSI,MOUTH \FALSE CALL PERFORM,V?EAT,PRSO RTRUE ?CCL3: EQUAL? PRSA,V?OPEN \FALSE CALL RUNNING?,I-HFOLLY ZERO? STACK /?CCL21 PRINTR "Jamison will do that for you." ?CCL21: PRINTR "You fail to stifle a yawn." .FUNCT PROTAGONIST-F ZERO? QUESTIONER /FALSE CALL GAME-COMMANDS ZERO? STACK \FALSE EQUAL? PRSA,V?NO /?CTR6 CALL NEGATIVE-ANSWER ZERO? STACK /?CCL7 EQUAL? QUESTIONER,PRSO,PRSI \?CCL7 ?CTR6: SET 'REACTION,REACTION-NEGATIVE JUMP ?CND3 ?CCL7: EQUAL? PRSA,V?YES /?CTR12 CALL AFFIRMATIVE-ANSWER ZERO? STACK /?CCL13 ?CTR12: SET 'REACTION,REACTION-POSITIVE JUMP ?CND3 ?CCL13: SET 'REACTION,REACTION-NEUTRAL ?CND3: SET 'QUESTIONER,FALSE-VALUE RFALSE .FUNCT AFFIRMATIVE-ANSWER EQUAL? PRSA,V?CLIMB-ON,V?APPLAUD /TRUE EQUAL? PRSA,V?GIVE,V?FOLLOW,V?DANCE /TRUE EQUAL? PRSA,V?SGIVE /TRUE EQUAL? PRSA,V?CURTSEY,V?KISS,V?HELLO /TRUE EQUAL? PRSA,V?LAUGH /TRUE EQUAL? PRSA,V?MARRY,V?I-LOVE-YOU,V?EMBRACE /TRUE EQUAL? PRSA,V?TOUCH /TRUE EQUAL? PRSA,V?SAVE-SOMETHING,V?WALK-TO,V?THANK /TRUE EQUAL? PRSA,V?SSHOW,V?SHOW /TRUE EQUAL? PRSA,V?MAKE-OUT,V?MAKE-LOVE /TRUE EQUAL? PRSA,V?TELL \FALSE GET P-LEXV,P-CONT CALL YES-WORD,STACK ZERO? STACK /FALSE RTRUE .FUNCT NEGATIVE-ANSWER EQUAL? PRSA,V?BURN,V?BITE,V?KILL /TRUE EQUAL? PRSA,V?RAPE,V?KICK,V?MUNG /TRUE EQUAL? PRSA,V?YELL,V?SWING,V?SHAKE /TRUE EQUAL? PRSA,V?TELL \FALSE GET P-LEXV,P-CONT CALL NO-WORD,STACK ZERO? STACK /FALSE RTRUE .FUNCT GAME-COMMANDS EQUAL? PRSA,V?QUIT,V?RESTORE,V?SAVE /TRUE EQUAL? PRSA,V?SUPER-BRIEF,V?BRIEF,V?VERBOSE /TRUE EQUAL? PRSA,V?VERSION,V?UNSCRIPT,V?SCRIPT /TRUE EQUAL? PRSA,V?$RECORD,V?$COMMAND,V?$RANDOM /TRUE EQUAL? PRSA,V?$UNRECORD /TRUE EQUAL? PRSA,V?$VERIFY /TRUE EQUAL? PRSA,V?SCORE,V?HELP /TRUE RFALSE .FUNCT ME-F EQUAL? PRSA,V?TELL \?CCL3 PRINTI "You'll end up in Bedlam, talking to " PRINTD ME PRINTI " that way." CRLF CALL STOP RSTACK ?CCL3: EQUAL? PRSA,V?GIVE \?CCL5 EQUAL? PRSI,ME \?CCL5 CALL PERFORM,V?TAKE,PRSO RTRUE ?CCL5: EQUAL? PRSA,V?TAKE-WITH \?CCL9 EQUAL? PRSI,MAN \?CCL9 CALL RECOGNIZE RSTACK ?CCL9: EQUAL? PRSA,V?SHOW \?CCL13 EQUAL? PRSI,ME \?CCL13 CALL PERFORM,V?EXAMINE,PRSO RTRUE ?CCL13: EQUAL? PRSA,V?MOVE \?CCL17 CALL V-WALK-AROUND RSTACK ?CCL17: EQUAL? PRSA,V?SEARCH \?CCL19 CALL V-INVENTORY RTRUE ?CCL19: EQUAL? PRSA,V?ALARM \?CCL21 CALL HELD?,SALTS ZERO? STACK /?CCL21 CALL PERFORM,V?SMELL,SALTS RTRUE ?CCL21: EQUAL? PRSA,V?DRESS \?CCL25 CALL PERFORM,V?GET-DRESSED,ROOMS RTRUE ?CCL25: EQUAL? PRSA,V?EXAMINE \?CCL27 CALL RUNNING?,I-LSED ZERO? STACK /?CCL30 GRTR? LAFOND-CTR,HORNY \?CCL30 CALL V-INVENTORY RSTACK ?CCL30: PRINTI "You are wearing" ZERO? BOY-DRESS? /?CCL35 CALL APRINT,SHIRT PRINTI " and " PRINTD PANTS PRINTR ". Mama herself would think you a plump boy." ?CCL35: FSET? DRESS,WORNBIT \?CCL37 CALL APRINT,DRESS PRINTR ", very pretty, if a tad outmoded for today's fashions." ?CCL37: FSET? GOWN,WORNBIT \?CCL39 CALL APRINT,GOWN PRINTR " of creamy watered silk." ?CCL39: FSET? SHIRT,WORNBIT \?CCL41 CALL APRINT,SHIRT PRINT BROTHEL RTRUE ?CCL41: FSET? PANTS,WORNBIT \?CCL43 CALL APRINT,PANTS PRINT BROTHEL RTRUE ?CCL43: FSET? CHEMISE,EVERYBIT /FALSE PRINTI " absolutely nothing besides" CALL APRINT,CHEMISE PRINTI ", " PRINTD SHOES PRINTI " and a few layers of " PRINTD UNMENTIONABLES PRINTI ". " PRINT MOTHER RTRUE ?CCL27: EQUAL? PRSA,V?SHOOT,V?MUNG,V?KILL /?CTR46 EQUAL? PRSA,V?SSHOOT \?CCL47 ?CTR46: PRINT SUICIDE RTRUE ?CCL47: EQUAL? PRSA,V?WHERE,V?FIND \?CCL51 PRINTI "You're in" CALL TRPRINT,HERE RSTACK ?CCL51: EQUAL? PRSA,V?FOLLOW \?CCL53 PRINTR "Next time, please specify who you wish to follow." ?CCL53: EQUAL? PRSA,V?EMBRACE,V?KISS \FALSE PRINTI "Mama warned you of the dangers of onanism" PRINT PCR RTRUE .FUNCT GLOBAL-ROOM-F EQUAL? PRSA,V?EXAMINE,V?LOOK-INSIDE,V?LOOK \?CCL3 CALL V-LOOK RSTACK ?CCL3: EQUAL? PRSA,V?WALK-TO,V?ENTER \?CCL5 CALL V-WALK-AROUND RSTACK ?CCL5: EQUAL? PRSA,V?DISEMBARK,V?EXIT,V?LEAVE \?CCL7 CALL DO-WALK,P?OUT RSTACK ?CCL7: EQUAL? PRSA,V?SEARCH \?CCL9 EQUAL? HERE,CABIN \?CCL12 CALL RUNNING?,I-COFFER ZERO? STACK \?CCL12 CALL HELD?,COFFER ZERO? STACK \?CCL12 CALL PERFORM,V?LOOK-UNDER,CABIN-BED RTRUE ?CCL12: PRINT NOTHING-NEW RTRUE ?CCL9: EQUAL? PRSA,V?PUT \FALSE EQUAL? PRSI,GLOBAL-ROOM \FALSE EQUAL? P-PRSA-WORD,W?THROW \?CCL22 CALL PERFORM,V?THROW,PRSO RTRUE ?CCL22: CALL PERFORM,V?DROP,PRSO RTRUE .FUNCT HOUSE-F EQUAL? PRSA,V?BOARD,V?WALK-TO,V?ENTER \?CCL3 EQUAL? HERE,MAIN-ENTRANCE \?CCL6 CALL DO-WALK,P?SOUTH RSTACK ?CCL6: EQUAL? HERE,TRADE-ENTRANCE \?CCL8 CALL DO-WALK,P?EAST RSTACK ?CCL8: EQUAL? HERE,VERANDA,LAWN \?CCL10 CALL DO-WALK,P?NORTH RSTACK ?CCL10: EQUAL? HERE,BY-HOUSE \?CCL12 CALL DO-WALK,P?WEST RSTACK ?CCL12: PRINT YOU-CANT PRINTR "do that from here." ?CCL3: EQUAL? PRSA,V?DISEMBARK,V?LEAVE,V?EXIT \?CCL14 EQUAL? HERE,KITCHEN \?CCL17 CALL DO-WALK,P?WEST RSTACK ?CCL17: EQUAL? HERE,FOYER \?CCL19 CALL DO-WALK,P?NORTH RSTACK ?CCL19: EQUAL? HERE,BALLROOM \?CCL21 CALL DO-WALK,P?SOUTH RSTACK ?CCL21: EQUAL? HERE,LIBRARY \?CCL23 CALL DO-WALK,P?EAST RSTACK ?CCL23: EQUAL? HERE,BEDROOM \?CCL25 CALL DO-WALK,P?DOWN RSTACK ?CCL25: PRINT LOOK-AROUND RTRUE ?CCL14: EQUAL? PRSA,V?LOOK-INSIDE \?CCL27 EQUAL? HERE,MAIN-ENTRANCE,TRADE-ENTRANCE,LAWN /?CTR29 EQUAL? HERE,BY-HOUSE \?CCL30 ?CTR29: PRINT CANT-FROM-HERE RTRUE ?CCL30: CALL V-LOOK RSTACK ?CCL27: EQUAL? PRSA,V?EXAMINE \FALSE EQUAL? HERE,CREWS-QUARTERS \?CCL37 PRINTI "Bathed in moonbeams and candlelight, the house squats at the crest of a cliff. The upstairs window is dark" PRINT PCR RTRUE ?CCL37: CALL SHIP-BOARD,HERE ZERO? STACK /?PRD41 CALL INNER-DECK,HERE ZERO? STACK /?CTR38 ?PRD41: EQUAL? HERE,BEACH \?CCL39 ?CTR38: PRINT YOU-CANT PRINTI "make out much of the house from this angle" PRINT PCR RTRUE ?CCL39: CALL INNER-DECK,HERE ZERO? STACK \?CTR44 CALL BELOW-GROUND,HERE ZERO? STACK \?CTR44 EQUAL? HERE,FOREST,FOLLY,IN-HEDGE \?CCL45 ?CTR44: PRINT YOU-CANT-SEE-ANY PRINTI "house here" PRINT PCR RTRUE ?CCL45: EQUAL? HERE,FRONT-DRIVE,MAIN-ENTRANCE,LAWN /?CTR49 EQUAL? HERE,TRADE-ENTRANCE,CLEARING,VERANDA \?CCL50 ?CTR49: PRINTI "An entrance to" CALL TPRINT,HOUSE PRINTI " is nearby" PRINT PCR RTRUE ?CCL50: CALL V-LOOK RSTACK .FUNCT CLIMBING FSET? DRESS,WORNBIT /?CTR2 FSET? GOWN,WORNBIT \?CCL3 ?CTR2: SET 'AWAITING-REPLY,2 CALL QUEUE,I-REPLY,2 PRINTI "In these clothes? You jest" PRINT PCR RFALSE ?CCL3: EQUAL? P-WALK-DIR,P?UP \?CCL7 EQUAL? HERE,CLEARING \?CCL10 PRINTI "You take a firm grasp on a particularly thick tendril, jerk once to secure it, and scamper up the wall like some huge tropical spider. It is easy to climb through the window" PRINT PCR CRLF RETURN BEDROOM ?CCL10: EQUAL? HERE,CAPT-QUARTERS \?CCL12 ZERO? LADDER-HANGING \?CCL15 PRINT CANT-GO RFALSE ?CCL15: FSET? POOP,TOUCHBIT /?CCL17 LOC PROTAGONIST EQUAL? STACK,LEDGE \?CCL20 CALL DO-FIRST,STR?299,LADDER RFALSE ?CCL20: CALL DO-FIRST,STR?298,LEDGE RFALSE ?CCL17: PRINTI "You dash up" CALL TRPRINT,LADDER CRLF RETURN POOP ?CCL12: EQUAL? HERE,MAIN-DECK,FOCSLE \?CCL22 SET 'WHICH-MAST?,HERE LOC DAGGER EQUAL? STACK,PROTAGONIST \?CND23 PRINTI "You bite down on" CALL TPRINT,DAGGER PRINTI ", freeing " PRINTD HANDS PRINTI "s to climb. When you stop, you take it back again. " ?CND23: PRINTI "The wind, a mere breeze on the deck, blows more fiercely" PRINT PCR CRLF RETURN RIGGING-ROOM ?CCL22: EQUAL? RIGGING-ROOM,HERE \?CCL26 EQUAL? WHICH-MAST?,FOCSLE \?CCL29 PRINTI "You clamber up" CALL TRPRINT,RIGGING-OBJECT CRLF RETURN CROWS-NEST ?CCL29: PRINTI "Above you there only appears to be more of the same, except higher, and you can not vouch for the effects on your stomach" PRINT PCR RFALSE ?CCL26: EQUAL? HERE,ON-LADDER \?CCL31 FSET? POOP,TOUCHBIT /?CCL34 INC 'UP-CTR EQUAL? UP-CTR,4 /?CCL37 PRINTI "You climb up" CALL TPRINT,LADDER EQUAL? UP-CTR,2 \?CND38 PRINTI ", passing the halfway point" ?CND38: PRINT PCR RFALSE ?CCL37: PRINTI "You heave " PRINTD ME PRINTI " over the stern rail and sink breathless to the deck of" CALL TRPRINT,SHIP CRLF CALL DEQUEUE,I-LADDER-BLOWS RETURN POOP ?CCL34: PRINTI "You dash up" CALL TRPRINT,LADDER CRLF RETURN POOP ?CCL31: EQUAL? HERE,BY-SHIP \FALSE CALL DEBARK-SKIFF RFALSE ?CCL7: EQUAL? P-WALK-DIR,P?DOWN \FALSE EQUAL? HERE,BEDROOM \?CCL46 PRINTI "Absently, you slide down" CALL TPRINT,VINE PRINTI ". You're getting quite adept at clambering about" PRINT PCR CRLF RETURN CLEARING ?CCL46: EQUAL? HERE,CROWS-NEST,RIGGING-ROOM \?CCL48 PRINTI "You half-climb, half-fall, down to the deck" PRINT PCR CRLF RETURN WHICH-MAST? ?CCL48: EQUAL? HERE,POOP \?CCL50 PRINTI "You climb down to opposite" CALL TRPRINT,LEDGE CRLF RETURN ON-LADDER ?CCL50: EQUAL? HERE,ON-LADDER \FALSE ZERO? SKIFF-TIED /?CCL55 SET 'SKIFF-TIED,FALSE-VALUE PRINTI "Freeing your feet from the rungs, you slide down the wet rope to the skiff, and quickly untie it from the ship" PRINT PCR CRLF RETURN BY-SHIP ?CCL55: PRINTI "A watery grave awaits you that way." CRLF RFALSE .FUNCT FIRE-F EQUAL? PRSA,V?OFF \?CCL3 CALL IMPOSSIBLES RSTACK ?CCL3: EQUAL? PRSA,V?PUT-ON,V?PUT,V?ON /?CTR4 EQUAL? PRSA,V?THROW \?CCL5 ?CTR4: CALL PERFORM,V?BURN,PRSO,FIRE RTRUE ?CCL5: EQUAL? PRSA,V?TELL-ABOUT /FALSE CALL UNIMPORTANT-THING RSTACK .FUNCT STAIRS-F EQUAL? PRSA,V?CLIMB \?CCL3 EQUAL? HERE,MAIN-DECK \?CCL6 CALL DO-WALK,P?NORTH RSTACK ?CCL6: CALL DO-WALK,P?UP RSTACK ?CCL3: EQUAL? PRSA,V?CLIMB-DOWN \?CCL8 CALL DO-WALK,P?DOWN RSTACK ?CCL8: EQUAL? PRSA,V?THROW \?CCL10 EQUAL? PRSI,STAIRS \?CCL10 CALL WASTES RSTACK ?CCL10: EQUAL? PRSA,V?EXAMINE \FALSE EQUAL? HERE,HOLD \?CCL17 PRINTI "Steep stairs mount up to" CALL TRPRINT,HATCH RSTACK ?CCL17: EQUAL? HERE,MAIN-DECK \FALSE FSET? HATCH,OPENBIT \?CCL22 PRINT STEEP-STAIRS PRINTI "down from " CALL TPRINT,HATCH PRINTI ". Another leads" JUMP ?CND20 ?CCL22: CALL CTPRINT,STAIRS PRINTI " lead" ?CND20: PRINTI " to the foredeck" PRINT PCR RTRUE .FUNCT BED-F,VARG=0,THIS-BED,?TMP1 ZERO? VARG /?CCL3 EQUAL? VARG,M-BEG \FALSE EQUAL? PRSA,V?WALK /?CTR5 ZERO? PRSO /FALSE EQUAL? PRSA,V?TAKE \FALSE EQUAL? PRSO,LRING,HRING /FALSE IN? PRSO,GLOBAL-OBJECTS /FALSE LOC PROTAGONIST >?TMP1 LOC PRSO EQUAL? ?TMP1,STACK /FALSE ?CTR5: CALL DO-FIRST,STR?300 RETURN 8 ?CCL3: EQUAL? PRSA,V?STAND,V?DISEMBARK \?CCL19 IN? LAFOND,LAFS-BED \?CCL19 PRINTI "Lafond slams you back into the feather mattress" PRINT PCR RTRUE ?CCL19: EQUAL? PRSA,V?BOARD,V?ENTER \?CCL23 LOC PROTAGONIST EQUAL? STACK,LAFS-ROOM \?CCL23 IN? LAFOND,HERE \?CCL23 PRINTD LAFOND PRINTR " stops you. ""I'll tell you when to do that.""" ?CCL23: EQUAL? PRSA,V?EXAMINE \?CCL28 EQUAL? HERE,CABIN \?CCL36 SET 'THIS-BED,CABIN-BED JUMP ?CND34 ?CCL36: EQUAL? HERE,CAPT-QUARTERS /?CCL38 SET 'THIS-BED,0 JUMP ?CND34 ?CCL38: SET 'THIS-BED,CAPT-BED ?CND34: ZERO? THIS-BED /?CCL31 FIRST? THIS-BED /?CCL31 PRINTI "Someone appears to have tumbled out of it in a hurry" JUMP ?CND29 ?CCL31: EQUAL? HERE,LAFS-ROOM \?CCL40 PRINTI "You gaze at the purple and gold bed, fearing it is your destiny" JUMP ?CND29 ?CCL40: EQUAL? HERE,CELL-1 \FALSE PRINTI "It is an uncomfortable canvas cot, old and torn" ?CND29: PRINT PCR RTRUE ?CCL28: EQUAL? PRSA,V?LOOK-UNDER \?CCL44 CALL QUEUED?,I-COFFER ZERO? STACK /?CCL47 PRINT YOU-SEE CALL APRINT,COFFER PRINTC 32 FCLEAR COFFER,NDESCBIT FSET COFFER,TOUCHBIT JUMP ?CND45 ?CCL47: PRINT THERES-NOTHING ?CND45: PRINTI "under" CALL TRPRINT,PRSO RSTACK ?CCL44: EQUAL? PRSA,V?PUSH,V?MOVE \?CCL49 PRINTI "It is nailed to the floor" PRINT PCR RTRUE ?CCL49: EQUAL? PRSA,V?PUT-UNDER \FALSE EQUAL? HERE,CAPT-QUARTERS,CABIN \FALSE EQUAL? PRSO,ME \?CCL56 CALL PERFORM,V?CRAWL-UNDER,CABIN-BED RTRUE ?CCL56: EQUAL? PRSO,RETICULE /FALSE PRINTI "You do so, but the ship rolls to one side and" CALL TPRINT-PRSO PRINTI " rolls out" PRINT PCR MOVE PRSO,HERE RTRUE .FUNCT CURTAIN-F EQUAL? PRSA,V?FIDDLE,V?MOVE,V?OPEN /?CTR2 EQUAL? PRSA,V?LOOK-BEHIND \?CCL3 ?CTR2: PRINT PULL-FABRIC PRINTI " Behind it," CALL APRINT,CUPBOARD-OBJECT PRINTR " mostly blocks the doorway." ?CCL3: EQUAL? PRSA,V?CLOSE \?CCL7 PRINT ALREADY-IS RTRUE ?CCL7: EQUAL? PRSA,V?WALK-TO,V?WALK \FALSE PRINTI "Please indicate a " PRINTD INTDIR PRINT PCR RTRUE .FUNCT WINDOW-F EQUAL? PRSA,V?OPEN \?CCL3 FSET? WINDOW,OPENBIT /?CCL6 EQUAL? HERE,CABIN \?CCL9 PRINTI "This isn't the opening kind of porthole" PRINT PCR RTRUE ?CCL9: EQUAL? HERE,CAPT-QUARTERS \?CCL11 PRINTI "These windows don't open" PRINT PCR RTRUE ?CCL11: EQUAL? HERE,LIBRARY,BY-HOUSE \?CCL13 CALL OPEN-CLOSE,LIB-WINDOW RSTACK ?CCL13: PRINTI "That's not necessary" PRINT PCR RTRUE ?CCL6: PRINTI "It's already open" PRINT PCR RTRUE ?CCL3: EQUAL? PRSA,V?CLOSE \?CCL15 EQUAL? HERE,LIBRARY,BY-HOUSE \?CCL18 CALL OPEN-CLOSE,LIB-WINDOW RSTACK ?CCL18: PRINT BEAUTIFUL-NIGHT RTRUE ?CCL15: EQUAL? PRSA,V?EXAMINE \?CCL20 EQUAL? HERE,CABIN \?CCL23 PRINTI "Through the porthole you see the bow of the pirate ship bucking in the high seas, lit by the fires burning on deck. It is called the """ PRINTD SHIP PRINTI "."" Odd, that was your mother's name" PRINT PCR RTRUE ?CCL23: EQUAL? HERE,CAPT-QUARTERS \?CCL25 CALL PERFORM,V?EXAMINE,LEDGE RTRUE ?CCL25: EQUAL? HERE,LIBRARY,BY-HOUSE \FALSE PRINT YOU-SEE PRINT DARKNESS CALL TRPRINT,WINDOW RSTACK ?CCL20: EQUAL? PRSA,V?LOOK-INSIDE \?CCL29 EQUAL? CABIN,HERE \?CCL32 CALL PERFORM,V?EXAMINE,WINDOW RTRUE ?CCL32: EQUAL? HERE,CAPT-QUARTERS \?CCL34 ZERO? LADDER-HANGING /?CCL37 CALL QUEUE,I-SEE-LADDER,2 PRINTI "A rope " PRINTD LADDER PRINTI " twists by in the breeze, and the" JUMP ?CND35 ?CCL37: PRINTI "The" ?CND35: PRINTI " moon beckons across the lagoon to " PRINTD ISLAND ZERO? SKIFF-TIED /?CND38 PRINTI ". Moored to the stern is" CALL APRINT,SKIFF ?CND38: PRINTC 46 CALL I-LOOK-SEA,FALSE-VALUE CRLF RTRUE ?CCL34: EQUAL? HERE,LIBRARY,BY-HOUSE \?CCL41 CALL PERFORM,V?EXAMINE,LIB-WINDOW RTRUE ?CCL41: EQUAL? HERE,BEDROOM \?CCL43 PRINTI "It has a lovely view of grey-green palm trees extending for miles" PRINT PCR RTRUE ?CCL43: PRINT YOU-SEE PRINT DARKNESS CALL TRPRINT,WINDOW RSTACK ?CCL29: EQUAL? PRSA,V?MUNG \?CCL45 ZERO? PRSI \?CCL48 CALL PROPOSE RSTACK ?CCL48: EQUAL? PRSI,COFFER \?CCL50 CALL PERFORM,V?PUT-THROUGH,COFFER,WINDOW RTRUE ?CCL50: EQUAL? HERE,CAPT-QUARTERS \?CCL52 PRINT YOULL-HAVE-TO PRINTI "find something else to break" CALL TPRINT,WINDOW PRINTI " with" PRINT PCR RTRUE ?CCL52: PRINTR "Then again, a lady would just open it." ?CCL45: EQUAL? PRSA,V?KILL \?CCL54 ZERO? PRSI \?CCL57 PRINTI "You haven't the strength to damage" CALL TRPRINT,WINDOW RSTACK ?CCL57: CALL PERFORM,V?MUNG,PRSO,PRSI RTRUE ?CCL54: EQUAL? PRSA,V?PUT,V?PUT-THROUGH,V?THROW \?CCL59 EQUAL? HERE,CABIN \?CCL62 EQUAL? PRSA,V?THROW \?CCL65 CALL V-THROW RSTACK ?CCL65: PRINTI "It doesn't fit through the porthole" PRINT PCR RTRUE ?CCL62: EQUAL? PRSO,COFFER \?CCL67 IN? HERO,HERE \?CND68 PRINTR "Jamison stops you, ""Nay, lady, glass is expensive.""" ?CND68: REMOVE PRSO FSET LEDGE,MUNGBIT INC 'SCORE PRINTI "You hurl" CALL TPRINT,COFFER PRINTI " through" CALL TPRINT,WINDOW PRINTI ", sending it and a shower of glass into the sea. " CALL CTPRINT,LEDGE PRINTI " now looks deep enough to sit upon" PRINT PCR RTRUE ?CCL67: FSET? LEDGE,MUNGBIT /?CCL71 EQUAL? HERE,CAPT-QUARTERS \?CCL71 CALL CTPRINT,WINDOW PRINTI " isn't open" PRINT PCR RTRUE ?CCL71: EQUAL? PRSO,HANDS \?CCL75 PRINT HUH RTRUE ?CCL75: CALL PUT-OBJ-THRU-WINDOW RSTACK ?CCL59: EQUAL? PRSA,V?DISEMBARK,V?EXIT,V?ENTER /?CCL77 EQUAL? PRSA,V?BOARD,V?LEAP-OFF \FALSE ?CCL77: EQUAL? HERE,CABIN \?CCL82 CALL IMPOSSIBLES RSTACK ?CCL82: LOC PROTAGONIST EQUAL? STACK,CAPT-QUARTERS \?CCL84 CALL PERFORM-PRSA,LEDGE RTRUE ?CCL84: EQUAL? HERE,LIBRARY \?CCL86 CALL DO-WALK,P?EAST RSTACK ?CCL86: EQUAL? HERE,BY-HOUSE \?CCL88 CALL DO-WALK,P?WEST RSTACK ?CCL88: EQUAL? HERE,BEDROOM \?CCL90 CALL DO-WALK,P?DOWN RSTACK ?CCL90: CALL WASTES RSTACK .FUNCT PUT-OBJ-THRU-WINDOW EQUAL? HERE,CAPT-QUARTERS \?CCL3 FSET? LEDGE,MUNGBIT /?CCL3 PRINTI "The window isn't open" PRINT PCR RTRUE ?CCL3: EQUAL? PRSO,RETICULE /FALSE CALL PRONOUN PRINTI " fall" FSET? PRSO,PLURALBIT /?CND8 PRINTC 115 ?CND8: EQUAL? HERE,CAPT-QUARTERS \?CCL12 REMOVE PRSO PRINTI " into the seas below" JUMP ?CND10 ?CCL12: EQUAL? HERE,BEDROOM \?CCL14 MOVE PRSO,CLEARING PRINTI " onto the forest floor" JUMP ?CND10 ?CCL14: EQUAL? HERE,LIBRARY,LAFS-ROOM \?CCL16 MOVE PRSO,BY-HOUSE PRINTI " into the darkness of the hedge" JUMP ?CND10 ?CCL16: EQUAL? HERE,BY-HOUSE \?CND10 MOVE PRSO,LIBRARY PRINTI " with a thunk over" PRINT THE-EDGE CALL TPRINT,LIB-WINDOW ?CND10: PRINT PCR RTRUE .FUNCT OPEN-CLOSE,OBJ,OPETELL=0,CLOSETELL=0 EQUAL? PRSA,V?MOVE,V?RAISE,V?OPEN \?CCL3 FSET? OBJ,OPENBIT \?CCL6 FSET? OBJ,PLURALBIT \?CCL9 PRINTI "They are" JUMP ?CND7 ?CCL9: PRINTI "It is" ?CND7: PRINTR " already open." ?CCL6: FSET OBJ,OPENBIT FSET OBJ,TOUCHBIT ZERO? OPETELL /?CCL12 PRINT OPETELL PRINTR "." ?CCL12: EQUAL? OBJ,CUPBOARD-OBJECT \?CCL14 EQUAL? HERE,SLEEPING-CUPBOARD /?CCL14 PRINTI "Opened. " CALL PERFORM,V?LOOK-INSIDE,CUPBOARD-OBJECT RTRUE ?CCL14: FIRST? OBJ \?CTR17 FSET? OBJ,TRANSBIT /?CTR17 FSET? OBJ,DOORBIT \?CCL18 ?CTR17: PRINTR "Opened." ?CCL18: PRINTI "Opening" CALL TPRINT,OBJ PRINTI " reveals" CALL DESCRIBE-NOTHING ZERO? STACK \TRUE PRINTC 46 RTRUE ?CCL3: EQUAL? PRSA,V?CLOSE \FALSE FSET? OBJ,OPENBIT /?CCL28 FSET? OBJ,PLURALBIT \?CCL31 PRINTI "They are" JUMP ?CND29 ?CCL31: PRINTI "It is" ?CND29: PRINTI " already closed" PRINT PCR RTRUE ?CCL28: FCLEAR OBJ,OPENBIT EQUAL? OBJ,MANACLES \?CND32 FSET OBJ,LOCKEDBIT ?CND32: ZERO? CLOSETELL /?CCL36 PRINT CLOSETELL PRINTR "." ?CCL36: PRINTI "Shut." EQUAL? PRSO,CUPBOARD-OBJECT \?CND34 EQUAL? SLEEPING-CUPBOARD,HERE \?CND34 PRINTR " You imagine Jamison being lulled to sleep by the waves lapping against the ship." ?CND34: CRLF RTRUE .FUNCT TREE-F EQUAL? PRSA,V?CLIMB \FALSE PRINTR "The trees are all unclimbable." .FUNCT TOUCHING?,THING EQUAL? PRSO,THING \?CCL3 EQUAL? PRSA,V?ALARM,V?BITE,V?BOARD /TRUE EQUAL? PRSA,V?CLEAN,V?CLIMB-OVER,V?CRAWL-UNDER /TRUE EQUAL? PRSA,V?CLIMB,V?CLIMB-DOWN,V?CLIMB-ON /TRUE EQUAL? PRSA,V?CUT,V?DANCE,V?EMBRACE /TRUE EQUAL? PRSA,V?ENTER,V?FIDDLE /TRUE EQUAL? PRSA,V?KICK,V?KILL,V?KISS /TRUE EQUAL? PRSA,V?KNOCK,V?LOOK-UNDER,V?LOOK-INSIDE /TRUE EQUAL? PRSA,V?MOVE,V?MUNG,V?WRING /TRUE EQUAL? PRSA,V?ON,V?OFF,V?OPEN /TRUE EQUAL? PRSA,V?CLOSE /TRUE EQUAL? PRSA,V?PICK,V?PUSH,V?RAISE /TRUE EQUAL? PRSA,V?SET,V?STAND-ON,V?SWIM /TRUE EQUAL? PRSA,V?TIE /TRUE EQUAL? PRSA,V?THROW,V?RAPE /TRUE EQUAL? PRSA,V?TAKE,V?TOUCH,V?SHAKE /TRUE EQUAL? PRSA,V?UNLOCK,V?LOCK,V?UNTIE /TRUE ?CCL3: EQUAL? PRSI,THING \FALSE EQUAL? PRSA,V?PUT-ON,V?PUT,V?GIVE /TRUE EQUAL? PRSA,V?PUT-UNDER /TRUE RFALSE .FUNCT CANT-SEE,OBJ,WRD=0 EQUAL? PRSO,OBJ \?CCL3 PUSH 0 JUMP ?CND1 ?CCL3: PUSH 1 ?CND1: GET P-NAMW,STACK >WRD ZERO? WRD \?CND4 EQUAL? PRSO,OBJ \?CCL8 PUSH 0 JUMP ?CND6 ?CCL8: PUSH 1 ?CND6: GET P-ADJW,STACK >WRD ?CND4: SET 'P-WON,FALSE-VALUE PRINT YOU-CANT PRINTI "see" ZERO? OBJ /?CND9 CALL NAME?,WRD ZERO? STACK \?CND9 PRINTI " any" ?CND9: EQUAL? OBJ,PRSI \?CCL15 CALL PRSI-PRINT JUMP ?CND13 ?CCL15: CALL PRSO-PRINT ?CND13: PRINTI " here." CRLF CALL STOP RSTACK .FUNCT CANT-VERB-A-PRSO,STRING PRINT YOU-CANT PRINT STRING CALL APRINT,PRSO PRINTR "!" .FUNCT TELL-HIT-HEAD PRINTI "You knock your brow against" CALL TPRINT-PRSO PRINTR " as you attempt this." .FUNCT NOUN-USED,TEST-NOUN,OBJ EQUAL? PRSO,OBJ \?CCL3 GET P-NAMW,0 EQUAL? STACK,TEST-NOUN /TRUE ?CCL3: EQUAL? PRSI,OBJ \FALSE GET P-NAMW,1 EQUAL? STACK,TEST-NOUN /TRUE RFALSE .FUNCT ADJ-USED,TEST-ADJ,?TMP1 GET P-ADJW,0 >?TMP1 GET P-ADJW,1 EQUAL? TEST-ADJ,?TMP1,STACK /TRUE RFALSE .FUNCT OFF-VEHICLE?,OBJ EQUAL? OBJ,LEDGE /TRUE EQUAL? OBJ,BENCH /TRUE RFALSE .FUNCT TELL-OPEN/CLOSED,OBJ,AN?=0 FSET? OBJ,OPENBIT \?CCL3 ZERO? AN? /?CND4 PRINTC 110 ?CND4: PRINTI " open" RTRUE ?CCL3: PRINTI " closed" RTRUE .FUNCT WHEE SET 'AWAITING-REPLY,2 CALL QUEUE,I-REPLY,2 PRINTR "Wasn't that fun?" .FUNCT IN-PACKAGE PRINTI " that came in your game package. " RTRUE .FUNCT CANT-REACH,OBJ PRINT YOU-CANT PRINTI "reach" CALL TPRINT,OBJ IN? PROTAGONIST,HERE /?CND1 PRINTI " from" LOC PROTAGONIST CALL TPRINT,STACK ?CND1: PRINT PCR RTRUE .FUNCT DO-FIRST,STRING,OBJ=0 PRINT YOULL-HAVE-TO PRINT STRING ZERO? OBJ /?CND1 CALL TPRINT,OBJ ?CND1: PRINTR " first." .FUNCT NOT-IN PRINTI "But" CALL TPRINT-PRSO PRINTI " isn't " FSET? PRSI,ACTORBIT \?CCL3 PRINTI "being held by" JUMP ?CND1 ?CCL3: FSET? PRSI,SURFACEBIT \?CCL5 PRINTI "on" JUMP ?CND1 ?CCL5: PRINTI "in" ?CND1: CALL TRPRINT,PRSI RSTACK .FUNCT SORE,STRING PRINTI "You begin to get a sore " PRINT STRING PRINT PCR RTRUE .FUNCT CANT-USE-THAT-WAY,STRING PRINTC 91 PRINT YOU-CANT PRINTI "use " PRINT STRING PRINTR " that way.]" .FUNCT RECOGNIZE SET 'P-WON,FALSE-VALUE PRINTI "[That sentence isn't one I recognize.] " RTRUE .FUNCT PRONOUN EQUAL? PRSO,ME \?CCL3 PRINTI "You" RTRUE ?CCL3: FSET? PRSO,PLURALBIT \?CCL5 PRINTI "They" RTRUE ?CCL5: EQUAL? PRSO,LUCY \?CCL7 PRINTI "She" RTRUE ?CCL7: FSET? PRSO,ACTORBIT \?CCL9 PRINTI "He" RTRUE ?CCL9: PRINTI "It" RTRUE .FUNCT REFERRING,HIM-HER=0 PRINTI "I don't see wh" ZERO? HIM-HER /?CCL3 PRINTC 111 JUMP ?CND1 ?CCL3: PRINTI "at" ?CND1: PRINTR " you're referring to." .FUNCT NO-ONE-HERE,STRING PRINTI "There's no one here to " PRINT STRING PRINT PCR RTRUE .FUNCT SEE-MANUAL,STRING PRINTI "[See the instruction manual section entitled ""Communicating With Infocom's Interactive Fiction."" to properly " PRINT STRING PRINTR "]" .FUNCT UNIMPORTANT-THING PRINTR "You have no need for that, milady." .FUNCT PROPOSE SET 'AWAITING-REPLY,1 CALL QUEUE,I-REPLY,2 PRINTR "And how do you propose to do that?" .FUNCT STOP-QUEUES CALL RUNNING?,I-HDANCE ZERO? STACK /?CCL3 SET 'PARTNER,FALSE-VALUE CALL DEQUEUE,I-HDANCE RSTACK ?CCL3: CALL RUNNING?,I-HFOLLY ZERO? STACK /FALSE CALL DEQUEUE,I-HFOLLY RSTACK .FUNCT REPERTOIRE,ACT PRINT ACT PRINTR " is not in the repertoire of well-bred young ladies." .FUNCT MAN-IS-DOWN PRINT THOROUGHLY-UNLADYLIKE PRINTR "hit a man when he's down!" .FUNCT NO-TIME-FOR,STR PRINTI "This is no time to " PRINT STR PRINTI "! " RTRUE .FUNCT MORE-SPECIFIC PRINT YOULL-HAVE-TO PRINTR "be more specific." .FUNCT CANT-HURT,STR PRINTI "Your " PRINT STR PRINTI " could not hurt" CALL TRPRINT,CRULLEY RSTACK .FUNCT SAILOR-DEATH PRINT INDENT PRINTI "A sailor notices " FSET? PANTS,WORNBIT \?CCL3 PRINTI "the roundness of your body through the lace of your chemise" JUMP ?CND1 ?CCL3: PRINTI "the ""swish"" of your petticoats" ?CND1: PRINTI ". ""A woman,"" he gasps, ""free, aboard this ship!""" CRLF CALL JIGS-UP,STR?301 RSTACK .FUNCT LADY-MUST,STRING PRINTI "A lady must obtain her father's permission before " PRINT STRING PRINTR " anyone." .FUNCT FIGURE-IT-OUT PRINT YOULL-HAVE-TO PRINTI "figure that out " PRINTD ME PRINT PCR RTRUE .FUNCT KICKED-OUT PRINT INDENT EQUAL? HERE,HALL-E \?CCL3 PRINTI "A black-garbed " PRINTD BUTLER JUMP ?CND1 ?CCL3: CALL CTPRINT,BUTLER ?CND1: PRINTI " marches up to you, ""It was made clear at the whippings that villagers are not admitted in this house."" He grasps you by the scruff of the neck and propels you headfirst out the front door" PRINT PCR CRLF CALL GOTO,MAIN-ENTRANCE RSTACK .FUNCT NICK-RUNS-OFF CALL RUNNING?,I-CCLIMBS-UP ZERO? STACK /?CND1 EQUAL? CRULLEY-CTR,10 \?CND1 CALL QUEUE,I-CCLIMBS-UP,2 ?CND1: MOVE HERO,GALLERY MOVE LAFOND,GALLERY MOVE DAD,GALLERY MOVE LUCY,GALLERY SET 'HERO-CTR,1 CALL QUEUE,I-DUEL,-1 FSET RAPIER,NDESCBIT FCLEAR BALLROOM,EVERYBIT PRINT INDENT PRINTI "Nick kisses you briefly, a butterfly touching your lips," CALL META-LOC,RAPIER EQUAL? STACK,HERE,PASSAGE-4,CELL-4 \?CND5 MOVE RAPIER,HERO PRINTI " then seizes his rapier" ?CND5: PRINTI " and runs off to the north. Cookie calls a breathless ""Hullo, Cap'n"" to him as he races past" PRINT PCR RTRUE .ENDI