leathergoddesses/mars.zap

3368 lines
90 KiB
Plaintext

.FUNCT NAME-CASTLE
FSET? HERE,TOUCHBIT /FALSE
ZERO? CASTLES-SEEN \?ELS6
PUTP HERE,P?SDESC,STR?233
JUMP ?CND4
?ELS6: EQUAL? CASTLES-SEEN,1 \?ELS8
PUTP HERE,P?SDESC,STR?234
JUMP ?CND4
?ELS8: EQUAL? CASTLES-SEEN,2 \?CND4
PUTP HERE,P?SDESC,STR?235
?CND4: INC 'CASTLES-SEEN
RETURN CASTLES-SEEN
.FUNCT CASTLE-NOTE
EQUAL? CASTLES-SEEN,2 \?ELS5
PRINTI "(There do seem to be quite a few of them around here, eh?) "
RTRUE
?ELS5: EQUAL? CASTLES-SEEN,3 \FALSE
PRINTI "(It's no wonder this section of Mars is considered the Ruined Castle Capital of the Solar System.) "
RTRUE
.FUNCT RUINED-CASTLE-1-F,RARG
EQUAL? RARG,M-ENTER \?ELS5
CALL NAME-CASTLE
RSTACK
?ELS5: EQUAL? RARG,M-LOOK \FALSE
PRINTI "You stand amongst the ruins of a mighty castle. "
CALL CASTLE-NOTE
PRINTI "The only part of the castle that is more than a pile of rubble is to the north. A path leads out of the ruin to the south."
RTRUE
.FUNCT THRONE-ROOM-F,RARG
EQUAL? RARG,M-LOOK \FALSE
REMOVE MITRE
MOVE MITRE,HERE
PRINTI "This is the "
PRINTD HERE
PRINTI " of the once-potent "
PRINTD MITRE
PRINTI ", of legendary fame. Of course, the version you've probably heard is significantly warped from What Really Happened.
In the diseased version of the legend commonly transmitted on Earth, Mitre is called Midas. The King was granted his wish that everything he touched would turn to gold. His greed caught up with him when he transformed even his own daughter into gold.
"
PRINTD MITRE
PRINTI "'s wish was, in fact, that everything he touched would turn to"
PRINT 45-DEGREE-ANGLE
PRINTI "s. "
ZERO? NAUGHTY-LEVEL \?ELS8
PRINTI "T"
JUMP ?CND6
?ELS8: PRINTI "No one has ever explained this strange wish; the most likely hypothesis is a sexual fetish. In any case, t"
?CND6: PRINTI "he tale has a similar climax, with Mitre turning his own daughter into a"
PRINT 45-DEGREE-ANGLE
PRINTI "."
RTRUE
.FUNCT MITRE-CROWN-F
EQUAL? PRSA,V?TAKE \?ELS5
PRINT MORE-ROYAL-BLOOD
RTRUE
?ELS5: EQUAL? PRSA,V?EXAMINE \FALSE
PRINTR "It's not very round for a crown."
.FUNCT GOWN-F
EQUAL? PRSA,V?TAKE \FALSE
CALL PERFORM-PRSA,THETA
RTRUE
.FUNCT MITRE-F,OARG=0
ZERO? OARG /?ELS5
EQUAL? OARG,M-OBJDESC? /TRUE
PRINTI " King Mitre sits upon the throne, looking "
FSET? THETA,MUNGBIT \?ELS12
PRINTI "dejected and lonely. Next to him is a pile of"
PRINT 45-DEGREE-ANGLE
PRINTI "s. One stands out from the others, thanks to its golden hair and flowing white gown"
JUMP ?CND10
?ELS12: PRINTI "delirious with joy"
?CND10: PRINTI ". The main entrance of the throne room is to the south, but a tight opening leads north."
RTRUE
?ELS5: EQUAL? MITRE,WINNER \?ELS16
EQUAL? PRSA,V?WHAT \?ELS25
EQUAL? PRSO,LGOP /?THN22
?ELS25: EQUAL? PRSA,V?TELL-ABOUT \?ELS21
EQUAL? PRSO,ME \?ELS21
EQUAL? PRSI,LGOP \?ELS21
?THN22: PRINTR """Leather fetishists, every one of them. Me, I'm not into fetishes."""
?ELS21: EQUAL? PRSA,V?CHEER \?ELS29
EQUAL? PRSO,ROOMS \?ELS29
SET 'WINNER,PROTAGONIST
CALL PERFORM-PRSA,MITRE
SET 'WINNER,MITRE
RTRUE
?ELS29: EQUAL? PRSA,V?TOUCH \?ELS33
FSET? PRSO,TAKEBIT \?ELS33
EQUAL? PRSO,COMIC-BOOK,GARMENT /?ELS33
SET 'WINNER,PROTAGONIST
CALL PERFORM,V?GIVE,PRSO,MITRE
SET 'WINNER,MITRE
RTRUE
?ELS33: PRINTI """I don't feel like talking. I'm too "
FSET? THETA,MUNGBIT \?CND38
PRINTI "un"
?CND38: PRINTI "happy."""
CRLF
CALL STOP
RSTACK
?ELS16: EQUAL? PRSA,V?EXAMINE \?ELS42
PRINTI "The old king looks very "
FSET? THETA,MUNGBIT \?ELS45
PRINTI "down"
JUMP ?CND43
?ELS45: PRINTI "up"
?CND43: PRINTR ". His appearance is rather odd, since his clothes, his jewelry, his crown, even his very throne, all have a rather angular appearance."
?ELS42: EQUAL? PRSA,V?ASK-ABOUT \?ELS53
EQUAL? PRSI,THETA /?THN50
?ELS53: EQUAL? PRSA,V?SHOW \?ELS49
EQUAL? PRSO,THETA \?ELS49
?THN50: FSET? THETA,MUNGBIT \?ELS60
PRINTR "The king weeps pitifully."
?ELS60: PRINTR "The king beams."
?ELS49: EQUAL? PRSA,V?GIVE \?ELS64
EQUAL? PRSI,MITRE \?ELS64
REMOVE PRSO
PRINTI "As Mitre touches"
CALL TPRINT-PRSO
PRINTI ","
CALL TPRINT,PILE-OF-ANGLES
PRINTR " becomes a bit larger."
?ELS64: EQUAL? PRSA,V?TOUCH \?ELS68
PRINTR "It only works the other way."
?ELS68: EQUAL? PRSA,V?SHAKE-WITH \FALSE
EQUAL? PRSO,HANDS \FALSE
PRINTI "As you join the other angles in the pile, life becomes very boring. Two centuries later, following Mitre's death, the "
PRINTD PILE-OF-ANGLES
PRINTI " is sold to a geometry teacher on Baffin Island, who uses you to demonstrate bisections, trigonometric proofs, and basic picture framing techniques."
CRLF
CALL FINISH
RSTACK
.FUNCT THETA-F
CALL ADJ-USED,A?NUMBER
ZERO? STACK /?ELS5
EQUAL? P-NUMBER,45 /?ELS5
CALL NO-X-DEGREE-ANGLE
RSTACK
?ELS5: EQUAL? THETA,WINNER \?ELS9
EQUAL? PRSA,V?WHAT \?ELS18
EQUAL? PRSO,LGOP /?THN15
?ELS18: EQUAL? PRSA,V?TELL-ABOUT \?ELS14
EQUAL? PRSO,ME \?ELS14
EQUAL? PRSI,LGOP \?ELS14
?THN15: PRINTR """The travelling acrobatic troupe! I saw them while I was mooning on Phobos. Their costumes are made of pure Chomperhide leather."""
?ELS14: PRINTR "The princess, whose recent experience has made her more obtuse, just looks at you dumbly."
?ELS9: EQUAL? PRSA,V?MEASURE \?ELS24
FSET? THETA,MUNGBIT \?ELS24
CALL PERFORM-PRSA,PILE-OF-ANGLES
RTRUE
?ELS24: EQUAL? PRSA,V?EXAMINE \?ELS28
FSET? THETA,MUNGBIT \?ELS33
PRINTR "The angle has the sort of golden hair and satiny robes that one normally associates with princesses."
?ELS33: PRINTR "The princess, once acute, is now cute."
?ELS28: EQUAL? PRSA,V?FUCK,V?KISS,V?TAKE /?THN38
EQUAL? PRSA,V?BEND,V?TOUCH \?ELS37
?THN38: PRINTI "Mitre growls, ""Keep "
PRINTD HANDS
PRINTR "s off my daughter."""
?ELS37: EQUAL? PRSA,V?MARRY \FALSE
FSET? THETA,MUNGBIT \?ELS46
CALL WANT-CHILDREN,STR?237
RSTACK
?ELS46: PRINTR """Only one of royal blood shall bisect ... er, wed ... my Theta!"" bellows Mitre."
.FUNCT WANT-CHILDREN,STRING
SET 'AWAITING-REPLY,2
CALL QUEUE,I-REPLY,2
PRINTI "Would you really want "
PRINT STRING
PRINTR " children?"
.FUNCT EIGHTY-TWO-DEGREE-ANGLE-F
CALL ADJ-USED,A?NUMBER
ZERO? STACK /?ELS5
EQUAL? P-NUMBER,82 /?ELS5
CALL NO-X-DEGREE-ANGLE
RSTACK
?ELS5: EQUAL? PRSA,V?MEASURE \FALSE
FSET? EIGHTY-TWO-DEGREE-ANGLE,UNTEEDBIT /FALSE
PRINTR "82 degrees."
.FUNCT NO-X-DEGREE-ANGLE
PRINT YOU-CANT-SEE-ANY
PRINTN P-NUMBER
PRINTR " degree angle here!"
.FUNCT GENERIC-ANGLE-F
FSET? THETA,MUNGBIT /FALSE
RETURN EIGHTY-TWO-DEGREE-ANGLE
.FUNCT PILE-OF-ANGLES-F
CALL ADJ-USED,A?NUMBER
ZERO? STACK /?ELS5
EQUAL? P-NUMBER,45 /?ELS5
CALL NO-X-DEGREE-ANGLE
RSTACK
?ELS5: EQUAL? PRSA,V?COUNT \?ELS9
PRINTR "Lots."
?ELS9: EQUAL? PRSA,V?TAKE \?ELS11
PRINTI "The "
PRINTD PILE-OF-ANGLES
PRINTI " is too big to carry."
FSET? THETA,MUNGBIT \?CND12
PRINTI " Besides, other than"
CALL TPRINT,THETA
PRINTI ", none of them are interesting."
?CND12: CRLF
RTRUE
?ELS11: EQUAL? PRSA,V?MEASURE \FALSE
PRINTR "45 degrees."
.FUNCT FROG-CROWN-F
EQUAL? PRSA,V?TAKE \?ELS5
PRINT MORE-ROYAL-BLOOD
RTRUE
?ELS5: EQUAL? PRSA,V?EXAMINE \FALSE
PRINTR "It's tiny."
.FUNCT RUINED-CASTLE-2-F,RARG
EQUAL? RARG,M-ENTER \?ELS5
FCLEAR RUINED-CASTLE-2,MUNGBIT
CALL NAME-CASTLE
RSTACK
?ELS5: EQUAL? RARG,M-LOOK \FALSE
PRINTI "This ancient castle now lies in ruins. "
CALL CASTLE-NOTE
PRINTI "All that remains of its once-proud ramparts are dust and rubble, and an occasional stone block. A path leads away from the ruin to the west"
CALL UNCHARTABLE-DESERT,STR?239
RSTACK
.FUNCT UNCHARTABLE-DESERT,STRING
PRINTI ". To the "
PRINT STRING
PRINTI ": unchartable desert."
RTRUE
.FUNCT FROG-F
EQUAL? PRSA,V?LISTEN,V?TELL /?THN6
EQUAL? PRSA,V?GIVE \?ELS5
EQUAL? PRSI,FROG \?ELS5
?THN6: PRINTI """Ribit."""
CRLF
EQUAL? PRSA,V?TELL \TRUE
CALL STOP
RTRUE
?ELS5: EQUAL? PRSA,V?SUCK,V?TASTE,V?EAT /?THN15
EQUAL? PRSA,V?SMELL \?ELS14
?THN15: PRINT YECHH
RTRUE
?ELS14: EQUAL? PRSA,V?EXAMINE \?ELS18
PRINTR "You realize what aroused your attention: the tiny gold crown on the frog's head. The frog is otherwise totally ordinary. Ordinary for a frog, that is. By any other measure it is a repulsive creature, with swollen eyes, oozing warts, slimy skin, and a grating croak."
?ELS18: EQUAL? PRSA,V?TOUCH \?ELS20
PRINTI "Huge, ugly warts cover every inch of "
PRINTD YOUR-BODY
ZERO? NAUGHTY-LEVEL \?ELS23
PRINTI ", but"
JUMP ?CND21
?ELS23: PRINTI ". Fortunately for your sex life,"
?CND21: PRINTR " they quickly fade away."
?ELS20: EQUAL? PRSA,V?MARRY \?ELS27
CALL WANT-CHILDREN,STR?241
RSTACK
?ELS27: EQUAL? PRSA,V?KISS \FALSE
PRINTI "You lean forward"
FSET? EYES,MUNGBIT \?ELS34
PRINTI " with "
PRINTD EYES
PRINTI " "
EQUAL? EYES,HAND-COVER \?ELS37
PRINTI "covered"
JUMP ?CND35
?ELS37: PRINTI "closed"
?CND35: FSET? NOSE,MUNGBIT \?ELS44
FSET? EARS,MUNGBIT \?ELS47
PRINTI ","
JUMP ?CND45
?ELS47: PRINTI " and"
?CND45: PRINTI " "
PRINTD NOSE
PRINTI " shut"
FSET? EARS,MUNGBIT \?ELS54
FSET? MOUTH,MUNGBIT \?ELS57
PRINTI ","
JUMP ?CND55
?ELS57: PRINTI " and"
?CND55: PRINTI " "
PRINTD EARS
PRINTI " "
EQUAL? EARS,HAND-COVER \?ELS62
PRINTI "covered"
JUMP ?CND60
?ELS62: PRINTI "stuffed up"
?CND60: FSET? MOUTH,MUNGBIT \?ELS69
CALL FROG-SEX-SCENE
RTRUE
?ELS69: PRINT ABOUT-TO-KISS
PRINTR "the thought of slimy frog lips pressing against your own makes you shudder away."
?ELS54: PRINT ABOUT-TO-KISS
PRINTR "the creature lets loose a loud, croaking ""ribit."" You admit that you are incapable of kissing under such circumstances."
?ELS44: PRINT ABOUT-TO-KISS
PRINTR "the stench of old pond scum overwhelms you, and you lurch back, retching."
?ELS34: PRINT ABOUT-TO-KISS
PRINTR "the sight of its green warts and slimy skin make it impossible to continue."
.FUNCT FROG-SEX-SCENE
MOVE FROG,LOCAL-GLOBALS
MOVE BLENDER,HERE
CALL INCREMENT-SCORE,17,17,TRUE-VALUE
CALL OPEN-EYES-AND-REMOVE-HANDS
PRINTI " and your lips smeared with balm. Planting "
PRINTD MOUTH
PRINTI " solidly against the frog's, you kiss deeply. "
ZERO? NAUGHTY-LEVEL \?ELS3
PRINTI "The kiss is surprisingly pleasant, until you notice that you're embracing a "
ZERO? MALE /?ELS6
PRINTI "beautiful princess. Sh"
JUMP ?CND4
?ELS6: PRINTI "handsome prince. H"
?CND4: PRINTI "e leaps back, blushing deeply. ""We're ... we're not married,"" "
CALL SHE-HE
PRINTI " stammers. Then, still reddening, "
CALL SHE-HE
PRINTI " vanishes into thin air! Y"
JUMP ?CND1
?ELS3: FSET RUINED-CASTLE-2,MUNGBIT
PRINTI "When you feel a tongue sliding into "
PRINTD MOUTH
PRINTI ", revulsion gives way to pleasure, as the no-longer-enchanted but quite enchanting prince"
ZERO? MALE /?CND12
PRINTI "ss"
?CND12: PRINTI " presses against you. "
EQUAL? NAUGHTY-LEVEL,1 \?ELS18
PRINTI "Some time later, after the prince"
ZERO? MALE /?CND19
PRINTI "ss"
?CND19: PRINTI " has departed..."
JUMP ?CND16
?ELS18: ZERO? MALE /?ELS27
PRINTI "Rubbing her hot, naked body against yours, s"
JUMP ?CND25
?ELS27: PRINTI "As your arms grip his naked, muscular back, "
?CND25: PRINTI "he effortlessly slips off your "
CALL DPRINT,GARMENT
PRINTI ". A warm and wild feeling springs from your loins, spreading like a fiery potion through your veins. Within moments you are joined in passionate love, and just as a quick and lustful orgasm seems inevitable, a force crackles in the air, and you are alone, naked, sweating, and unsatisfied."
?CND16: CRLF
PRINTI " As you gather up your garment and put it on, y"
?CND1: PRINTI "ou notice"
CALL APRINT,BLENDER
PRINTI " on the ground. "
PRINT ITS-ENGRAVED
IN? SIDEKICK,HERE \?CND31
PRINTI " "
CALL DPRINT-SIDEKICK
PRINTI " is at the other end of the ruin, sifting through some rubble, oblivious to your ""experience."""
?CND31: CRLF
RTRUE
.FUNCT BLENDER-F
EQUAL? PRSA,V?READ \?ELS5
ZERO? NAUGHTY-LEVEL /?ELS8
PRINTI """Dearest,"
CRLF
EQUAL? NAUGHTY-LEVEL,2 \?ELS11
PRINTI " Sorry to leave so abruptly; p"
JUMP ?CND9
?ELS11: PRINTI " P"
?CND9: PRINTI "erhaps some day we will meet again"
EQUAL? NAUGHTY-LEVEL,2 \?CND14
PRINTI ", and finish what we began"
?CND14: PRINTI ". "
JUMP ?CND6
?ELS8: PRINTI """"
?CND6: PRINTR "Please accept this token of my gratitude for delivering me from enchantment."""
?ELS5: EQUAL? PRSA,V?EXAMINE \?ELS20
CALL NOUN-USED,W?ENGRAV,BLENDER
ZERO? STACK /?ELS25
CALL PERFORM,V?READ,BLENDER
RTRUE
?ELS25: PRINT ITS-ENGRAVED
CRLF
RTRUE
?ELS20: EQUAL? PRSA,V?ON \?ELS29
PRINTR """Whirr."""
?ELS29: EQUAL? PRSA,V?LOOK-INSIDE \?ELS31
PRINTR "It's empty."
?ELS31: EQUAL? PRSA,V?PUT \FALSE
EQUAL? PRSI,BLENDER \FALSE
PRINTI "But"
CALL TPRINT-PRSO
PRINTR " doesn't need blending."
.FUNCT RUINED-CASTLE-3-F,RARG
EQUAL? RARG,M-ENTER \?ELS5
CALL NAME-CASTLE
RSTACK
?ELS5: EQUAL? RARG,M-LOOK \FALSE
PRINTI "Wind whistles among the fallen archways, crumbled balustrades, and black circle of this ruined castle. "
CALL CASTLE-NOTE
PRINTI "Paths lead east and northwest through the rubble."
RTRUE
.FUNCT MOUSE-F
EQUAL? PRSA,V?CLICK \?ELS5
SET 'AWAITING-REPLY,2
CALL QUEUE,I-REPLY,2
PRINTR "You expect maybe a window to open?"
?ELS5: EQUAL? PRSA,V?SHOW \?ELS7
EQUAL? PRSO,PAINTING \?ELS7
FSET? PAINTING,UNTEEDBIT /?ELS7
FCLEAR MOUSE,TRYTAKEBIT
FSET MOUSE,TOUCHBIT
CALL QUEUE,I-MOUSE,2
PRINTR "The mouse freezes with fear."
?ELS7: EQUAL? PRSA,V?GIVE \?ELS11
EQUAL? PRSI,MOUSE \?ELS11
PRINTR "Marsmice, like earthmice, prefer cheese."
?ELS11: EQUAL? PRSA,V?CATCH \?ELS15
CALL PERFORM,V?TAKE,MOUSE
RTRUE
?ELS15: CALL TOUCHING?,MOUSE
ZERO? STACK /?ELS17
IN? MOUSE,HERE \?ELS17
FSET? MOUSE,TRYTAKEBIT \?ELS17
PRINTR "The little fellow scurries easily away from you."
?ELS17: EQUAL? PRSA,V?FOLLOW \?ELS21
EQUAL? P-PRSA-WORD,W?CHASE \?ELS21
IN? MOUSE,HERE \?ELS21
FSET? MOUSE,TRYTAKEBIT \?ELS21
CALL PERFORM,V?TAKE,MOUSE
RTRUE
?ELS21: EQUAL? PRSA,V?TAKE \?ELS25
FSET? MOUSE,MUNGBIT /?ELS25
CALL CCOUNT,PROTAGONIST
LESS? STACK,11 \?ELS25
FSET MOUSE,MUNGBIT
CALL INCREMENT-SCORE,14,9,TRUE-VALUE
RFALSE
?ELS25: EQUAL? PRSA,V?MEASURE \?ELS29
PRINTR "Tiny."
?ELS29: EQUAL? PRSA,V?TOUCH \FALSE
PRINTR "The mouse squeaks happily."
.FUNCT I-MOUSE
FSET MOUSE,TRYTAKEBIT
IN? MOUSE,RUINED-CASTLE-1 \?CND1
FCLEAR MOUSE,TOUCHBIT
?CND1: IN? MOUSE,HERE \FALSE
PRINTR " The mouse relaxes and begins scampering about."
.FUNCT ROYAL-DOCKS-F,RARG
EQUAL? RARG,M-LOOK \FALSE
ZERO? NAUGHTY-LEVEL \?ELS8
PRINTI "This dock juts"
JUMP ?CND6
?ELS8: PRINTI "During the peak of King Mitre's reign, a cruel joke went around the kingdom that Mitre's two greatest loves were his Royal Docks and his Royal Ducks. The joke was never very good and has long since been forgotten, and the ducks perished years ago from a sexually-transmitted disease, but the docks remain, jutting"
?CND6: PRINTI " into a wide Martian Canal which flows from west to east. Behind you, to the south, is a ruined castle."
RTRUE
.FUNCT BARGE-F,OARG=0
ZERO? OARG /?ELS5
EQUAL? OARG,M-OBJDESC? /TRUE
PRINTI " A barge, hand-crafted from fine Martian cedarwood, is "
EQUAL? HERE,CANAL \?ELS14
PRINTI "floating nearby."
RTRUE
?ELS14: PRINTI "moored at the end of the dock."
RTRUE
?ELS5: EQUAL? HERE,CANAL \?ELS18
IN? PROTAGONIST,RAFT \?ELS18
EQUAL? RAFT-LOC-NUM,BARGE-LOC-NUM /?ELS18
CALL CANT-SEE,BARGE
RSTACK
?ELS18: EQUAL? PRSA,V?SINK \?ELS22
PRINTR "The barge is unsinkable. (Then again, so was the Titanic.)"
?ELS22: EQUAL? PRSA,V?LAUNCH,V?UNTIE \?ELS24
PRINTI "The barge isn't moored"
IN? BARGE,CANAL /?CND25
PRINTI " with ropes"
?CND25: PRINT PERIOD-CR
RTRUE
?ELS24: EQUAL? PRSA,V?EXAMINE \?ELS29
CALL NOUN-USED,W?CONTROL,BARGE
ZERO? STACK /?ELS34
PRINTI "The controls consist of a "
PRINTD ORANGE-BUTTON
PRINTI ", and a "
PRINTD PURPLE-BUTTON
PRINTR ". Both buttons have writing on them."
?ELS34: PRINTI "This large barge could host a host of royal guests."
EQUAL? HERE,CANAL /?CND37
PRINTI " The barge rests immobile at the dockside, despite a strong current and no visible mooring lines."
?CND37: PRINTI " There are some simple controls on the side of the barge"
EQUAL? HERE,CANAL /?CND40
PRINTI " nearest the dock"
?CND40: PRINT PERIOD-CR
RTRUE
?ELS29: EQUAL? PRSA,V?READ \?ELS44
CALL PERFORM-PRSA,ORANGE-BUTTON
CALL PERFORM-PRSA,PURPLE-BUTTON
RTRUE
?ELS44: EQUAL? PRSA,V?PUSH \?ELS46
CALL NOUN-USED,W?CONTROL,BARGE
ZERO? STACK /?ELS46
CALL PERFORM-PRSA,ORANGE-BUTTON
PRINTI " "
CALL PERFORM-PRSA,PURPLE-BUTTON
RTRUE
?ELS46: EQUAL? PRSA,V?SET \?ELS50
PRINT NO-STEERING
RTRUE
?ELS50: EQUAL? PRSA,V?TAKE,V?BOARD \?ELS52
EQUAL? HERE,CANAL \?ELS52
IN? PROTAGONIST,RAFT \?ELS52
MOVE PROTAGONIST,BARGE
PRINTI "Grabbing onto the barge, you"
CALL AND-SIDEKICK,BARGE
MOVE RAFT,PROTAGONIST
SET 'RAFT-HELD,FALSE-VALUE
PRINTI " climb in"
PRINT KEEP-IT-FROM-FLOATING-AWAY
RTRUE
?ELS52: EQUAL? PRSA,V?PUT-ON \?ELS56
EQUAL? PRSI,BARGE \?ELS56
CALL PERFORM,V?PUT,PRSO,BARGE
RTRUE
?ELS56: EQUAL? PRSA,V?SMELL \?ELS60
CALL NO-SCRATCH-N-SNIFF,STR?245
RSTACK
?ELS60: EQUAL? PRSA,V?SHAKE \?ELS62
IN? PROTAGONIST,BARGE \?ELS62
CALL SHAKE-BOAT
RSTACK
?ELS62: EQUAL? PRSA,V?LAND \FALSE
SET 'AWAITING-REPLY,2
CALL QUEUE,I-REPLY,2
PRINTI "Read any "
PRINTD ORANGE-BUTTON
PRINTR "s lately?"
.FUNCT SHAKE-BOAT
PRINTI "You knock yourself overboard."
CRLF
CRLF
CALL PERFORM,V?BOARD,CANAL-OBJECT
RTRUE
.FUNCT ORANGE-BUTTON-F
EQUAL? PRSA,V?EXAMINE,V?READ \?ELS5
PRINTI "The "
PRINTD ORANGE-BUTTON
PRINTI " reads: MagnetoMoor O"
ZERO? MOORING-ON /?ELS8
PRINTI "n"
JUMP ?CND6
?ELS8: PRINTI "ff"
?CND6: PRINT PERIOD-CR
RTRUE
?ELS5: EQUAL? PRSA,V?PUSH \FALSE
ZERO? MOORING-ON /?ELS16
SET 'MOORING-ON,FALSE-VALUE
JUMP ?CND14
?ELS16: SET 'MOORING-ON,TRUE-VALUE
?CND14: PRINT WRITING-CHANGES
PRINTI "."
IN? BARGE,CANAL /?ELS22
ZERO? MOORING-ON \?ELS22
EQUAL? HERE,ICY-DOCK /?ELS22
MOVE BARGE,CANAL
ZERO? RAFT-HELD /?CND25
IN? PROTAGONIST,BARGE \?CND25
MOVE RAFT,CANAL
SET 'RAFT-LOC-NUM,BARGE-LOC-NUM
?CND25: FCLEAR BARGE,NDESCBIT
CALL QUEUE,I-CANAL,-1
PRINTI " The barge s"
ZERO? BARGE-UNDER-POWER /?ELS32
PRINTI "hoot"
JUMP ?CND30
?ELS32: PRINTI "lide"
?CND30: PRINTI "s away from the dock, into the deeper waters of the canal."
CRLF
IN? PROTAGONIST,BARGE \TRUE
CRLF
CALL GOTO,BARGE
RTRUE
?ELS22: CALL BARGE-DOCKS
ZERO? STACK \TRUE
CRLF
RTRUE
.FUNCT PURPLE-BUTTON-F
EQUAL? PRSA,V?EXAMINE,V?READ \?ELS5
PRINTI "The "
PRINTD PURPLE-BUTTON
PRINTI " reads: "
ZERO? BARGE-UNDER-POWER /?ELS8
PRINTI "Full Speed Ahead"
JUMP ?CND6
?ELS8: PRINTI "Go With The Flow"
?CND6: PRINT PERIOD-CR
RTRUE
?ELS5: EQUAL? PRSA,V?PUSH \FALSE
PRINT WRITING-CHANGES
ZERO? BARGE-UNDER-POWER /?ELS16
SET 'BARGE-UNDER-POWER,FALSE-VALUE
JUMP ?CND14
?ELS16: SET 'BARGE-UNDER-POWER,TRUE-VALUE
IN? PROTAGONIST,RAFT \?CND14
EQUAL? HERE,CANAL \?CND14
CALL BARGE-FORGES-AHEAD
?CND14: PRINT PERIOD-CR
RTRUE
.FUNCT BARGE-FORGES-AHEAD
LESS? BARGE-LOC-NUM,16 \?ELS3
ZERO? MOORING-ON /?ELS3
SET 'BARGE-LOC-NUM,15
MOVE BARGE,WATTZ-UPP-DOCK
JUMP ?CND1
?ELS3: SET 'BARGE-LOC-NUM,36
MOVE BARGE,ICY-DOCK
?CND1: PRINTI ". The barge, under power, forges ahead and disappears from sight"
RTRUE
.FUNCT CANAL-LOC
EQUAL? HERE,CANAL \FALSE
IN? PROTAGONIST,BARGE \?ELS7
RETURN BARGE-LOC-NUM
?ELS7: RETURN RAFT-LOC-NUM
.FUNCT SET-RAFT-LOC
EQUAL? HERE,CANAL \?ELS5
SET 'RAFT-LOC-NUM,BARGE-LOC-NUM
RETURN RAFT-LOC-NUM
?ELS5: EQUAL? HERE,HICKORY-AND-DICKORY-DOCK \?ELS7
SET 'RAFT-LOC-NUM,-1
RETURN RAFT-LOC-NUM
?ELS7: EQUAL? HERE,ROYAL-DOCKS \?ELS9
SET 'RAFT-LOC-NUM,1
RETURN RAFT-LOC-NUM
?ELS9: EQUAL? HERE,BABY-DOCK \?ELS11
SET 'RAFT-LOC-NUM,6
RETURN RAFT-LOC-NUM
?ELS11: EQUAL? HERE,DONALD-DOCK \?ELS13
SET 'RAFT-LOC-NUM,7
RETURN RAFT-LOC-NUM
?ELS13: EQUAL? HERE,WATTZ-UPP-DOCK \?ELS15
SET 'RAFT-LOC-NUM,15
RETURN RAFT-LOC-NUM
?ELS15: SET 'RAFT-LOC-NUM,10
RETURN RAFT-LOC-NUM
.FUNCT CANAL-OBJECT-F
CALL ADJ-USED,A?SMALL
ZERO? STACK /?ELS5
CALL UNIMPORTANT-THING-F
RSTACK
?ELS5: EQUAL? HERE,DUNETOP,MINARET \?ELS7
CALL TOUCHING?,CANAL-OBJECT
ZERO? STACK /?ELS7
CALL CANT-REACH,CANAL-OBJECT
RSTACK
?ELS7: EQUAL? PRSA,V?SWIM,V?ENTER,V?BOARD /?THN12
EQUAL? PRSA,V?CRAWL-UNDER \?ELS11
?THN12: CALL UNTOUCHABLE?,CANAL-OBJECT
ZERO? STACK /?ELS16
CALL CANT-REACH,CANAL-OBJECT
JUMP ?CND14
?ELS16: EQUAL? HERE,ICY-DOCK \?ELS18
PRINTI "The current sucks you under"
EQUAL? NAUGHTY-LEVEL,2 \?CND19
PRINTI ", which really sucks"
?CND19: CALL JIGS-UP,STR?246
JUMP ?CND14
?ELS18: PRINTI "In The Canal
As you swim in the cool waters of the canal, a slimy tentacle touches you, convincing you that it's safer back "
?CND14: LOC PROTAGONIST
EQUAL? STACK,RAFT,BARGE \?ELS26
PRINTI "in"
LOC PROTAGONIST
CALL TRPRINT,STACK
JUMP ?CND24
?ELS26: PRINTI "on the dock."
CRLF
?CND24: CRLF
CALL DESCRIBE-ROOM
RSTACK
?ELS11: EQUAL? PRSA,V?CROSS \?ELS30
CALL PERFORM,V?ENTER,CANAL-OBJECT
RTRUE
?ELS30: EQUAL? PRSA,V?PUT \?ELS32
EQUAL? P-PRSA-WORD,W?THROW \?ELS32
EQUAL? PRSO,RAFT \?ELS32
FSET? RAFT,UNTEEDBIT /?ELS32
IN? PROTAGONIST,RAFT /?ELS32
MOVE RAFT,HERE
SET 'RAFT-HELD,TRUE-VALUE
CALL PERFORM,V?DROP,RAFT
RTRUE
?ELS32: EQUAL? PRSA,V?THROW,V?PUT \?ELS36
EQUAL? PRSI,CANAL-OBJECT \?ELS36
EQUAL? PRSO,RAFT \?ELS43
FSET? RAFT,UNTEEDBIT /?THN49
FSET? RAFT,MUNGBIT \?ELS48
?THN49: REMOVE RAFT
PRINTI "It sinks like a stone."
FSET? RAFT,UNTEEDBIT \?CND51
PRINTI " I guess a raf doesn't float nearly as well as a raft."
?CND51: CRLF
RTRUE
?ELS48: ZERO? RAFT-HELD \?THN56
IN? RAFT,CANAL \?ELS55
?THN56: PRINT ALREADY-IS
RTRUE
?ELS55: PRINTI "The raft is now "
EQUAL? HERE,ICY-DOCK \?ELS64
MOVE RAFT,HERE
PRINTI "in the water"
PRINT PINNED
RTRUE
?ELS64: SET 'RAFT-HELD,TRUE-VALUE
MOVE RAFT,HERE
EQUAL? HERE,CANAL \?CND67
SET 'RAFT-LOC-NUM,BARGE-LOC-NUM
?CND67: PRINTI "bobbing in the canal."
EQUAL? HERE,CANAL \?THN73
ZERO? BARGE-UNDER-POWER /?CND70
?THN73: PRINTI " If you weren't holding it, it would surely be "
EQUAL? HERE,CANAL \?ELS77
PRINTI "left behind."
JUMP ?CND70
?ELS77: PRINTI "carried away."
?CND70: CRLF
RTRUE
?ELS43: REMOVE PRSO
EQUAL? PRSO,TORCH \?ELS84
FSET? TORCH,ONBIT \?ELS84
PRINTI """Phfffft!"
JUMP ?CND82
?ELS84: PRINTI """Glub."
?CND82: PRINTI """ "
FSET? PRSO,PLURALBIT \?ELS91
PRINTI "They're"
JUMP ?CND89
?ELS91: PRINTI "It's"
?CND89: PRINTI " gone"
EQUAL? PRSO,BABY /?THN97
CALL ULTIMATELY-IN?,BABY,PRSO
ZERO? STACK /?CND94
?THN97: PRINTI ", you heartless baby murderer, you"
?CND94: PRINT PERIOD-CR
RTRUE
?ELS36: EQUAL? PRSA,V?LOOK-INSIDE \FALSE
CALL PERFORM-PRSA,WATER
RTRUE
.FUNCT DOCK-OBJECT-F,NUM,DOCK-ROOM
CALL CANAL-LOC >NUM
EQUAL? HERE,CANAL \?CND1
EQUAL? NUM,-1,1,6 /?CND1
EQUAL? NUM,7,10,15 /?CND1
CALL CANT-SEE,DOCK-OBJECT
RTRUE
?CND1: EQUAL? HERE,DUNETOP,MINARET \?ELS10
CALL TOUCHING?,DOCK-OBJECT
ZERO? STACK /?ELS10
PRINT CANT-FROM-HERE
RTRUE
?ELS10: EQUAL? PRSA,V?BOARD,V?TAKE \?ELS14
EQUAL? HERE,CANAL \?ELS14
IN? PROTAGONIST,RAFT \?ELS14
PRINTI "You lunge for the dock and secure a handhold. An agile clamber places you"
CALL AND-SIDEKICK
PRINTI " on the dock"
PRINT KEEP-IT-FROM-FLOATING-AWAY
CRLF
SET 'RAFT-WAIT,FALSE-VALUE
SET 'DONT-PRINT-VEHICLE,TRUE-VALUE
CALL SET-DOCK-ROOM,RAFT-LOC-NUM >DOCK-ROOM
CALL GOTO,DOCK-ROOM
SET 'DONT-PRINT-VEHICLE,FALSE-VALUE
IN? SIDEKICK,RAFT \?CND17
MOVE SIDEKICK,HERE
?CND17: MOVE RAFT,HERE
RTRUE
?ELS14: EQUAL? PRSA,V?BOARD \?ELS21
EQUAL? HERE,CANAL \?ELS26
CALL DO-FIRST,STR?247
RSTACK
?ELS26: IN? PROTAGONIST,HERE \?ELS28
PRINT LOOK-AROUND
RTRUE
?ELS28: LOC PROTAGONIST
CALL PERFORM,V?DISEMBARK,STACK
RTRUE
?ELS21: EQUAL? PRSA,V?TAKE-OFF \?ELS32
EQUAL? P-PRSA-WORD,W?GET \?ELS32
CALL PERFORM,V?BOARD,CANAL-OBJECT
RTRUE
?ELS32: EQUAL? PRSA,V?PUT-ON,V?PUT \?ELS36
EQUAL? PRSI,DOCK-OBJECT \?ELS36
EQUAL? HERE,CANAL /?ELS36
CALL PERFORM,V?PUT-ON,PRSO,GROUND
RTRUE
?ELS36: EQUAL? PRSA,V?LEAP-OFF \?ELS40
EQUAL? HERE,DUNETOP,CANAL \?ELS45
PRINT LOOK-AROUND
RTRUE
?ELS45: CALL PERFORM,V?ENTER,CANAL-OBJECT
RTRUE
?ELS40: EQUAL? PRSA,V?SEARCH \?ELS49
PRINT NOTHING-NEW
RTRUE
?ELS49: EQUAL? PRSA,V?EXAMINE \FALSE
EQUAL? HERE,CANAL,MINARET,DUNETOP /FALSE
CALL V-LOOK
RSTACK
.FUNCT DUNES-F
EQUAL? HERE,MINARET \?ELS5
CALL TOUCHING?,DUNES
ZERO? STACK /?ELS5
CALL CANT-REACH,DUNES
RSTACK
?ELS5: EQUAL? PRSA,V?CLIMB-UP,V?CLIMB \?ELS9
EQUAL? HERE,DUNETOP \?ELS14
PRINT LOOK-AROUND
RTRUE
?ELS14: EQUAL? HERE,CANALVIEW-MALL,DONALD-DOCK \?ELS16
CALL DO-WALK,P?UP
RSTACK
?ELS16: PRINTR "This dune is too steep."
?ELS9: EQUAL? PRSA,V?CLIMB-DOWN \FALSE
EQUAL? HERE,DUNETOP \FALSE
CALL DO-WALK,P?DOWN
RSTACK
.FUNCT CANAL-F,RARG,NUM,DOCK-DIR
EQUAL? RARG,M-LOOK \FALSE
CALL CANAL-LOC >NUM
CALL SET-DOCK-DIR,NUM >DOCK-DIR
PRINTI "The "
LOC PROTAGONIST
CALL DPRINT,STACK
PRINTI " rocks gently in the current of a wide canal."
EQUAL? NUM,1,7,15 /?THN9
EQUAL? NUM,-1,6 /?THN9
EQUAL? NUM,10 \?ELS8
IN? PROTAGONIST,RAFT \?ELS8
?THN9: PRINTI " A dock is "
IN? PROTAGONIST,RAFT \?ELS15
PRINTI "close enough to grab"
JUMP ?CND13
?ELS15: PRINTI "visible"
?CND13: PRINTI " on the "
PRINT DOCK-DIR
PRINTI "ern shore."
JUMP ?CND6
?ELS8: EQUAL? NUM,10 \?ELS19
PRINTI " There are docks on both banks."
JUMP ?CND6
?ELS19: PRINTI " The banks of the canal are steep and sandy."
?CND6: CALL BARGE-VISIBLE-AT-DOCK
ZERO? STACK /?CND22
PRINTI " A "
PRINTD BARGE
PRINTI " is moored to the dock"
EQUAL? NUM,10 \?CND25
PRINTI " on the "
IN? BARGE,ABANDONED-DOCK \?ELS30
PRINTI "we"
JUMP ?CND28
?ELS30: PRINTI "ea"
?CND28: PRINTI "stern shore"
?CND25: PRINTI "."
?CND22: EQUAL? NUM,5,12,29 \?ELS35
PRINTI " A smaller canal flows diagonally into this one, and the channel widens slightly to accommodate the heavier flow."
JUMP ?CND33
?ELS35: EQUAL? NUM,9,10 \?CND33
PRINTI " Just "
EQUAL? NUM,9 \?ELS40
PRINTI "ahead"
JUMP ?CND38
?ELS40: PRINTI "behind"
?CND38: PRINTI ", the canal curves sharply to the "
EQUAL? NUM,9 \?ELS45
PRINTI "south."
JUMP ?CND33
?ELS45: PRINTI "west."
?CND33: EQUAL? NUM,4,5,8 \?CND48
PRINTI " Sculpted reddish "
PRINTD DUNES
PRINTI " rise into view beyond the banks of the canal."
?CND48: RANDOM 100
LESS? 15,STACK /?CND51
PRINTI " The dark clouds of a sandstorm are visible on the horizon."
?CND51: EQUAL? NUM,15 \?CND54
PRINTI " A red warning buoy is anchored nearby. A sign atop the swaying buoy shows a skull and crossbones."
?CND54: GRTR? NUM,12 \TRUE
LESS? NUM,32 \TRUE
EQUAL? NUM,31 \?ELS64
CRLF
PRINTI " "
CALL DESCRIBE-POWER-TRANSMITTER,31
FSET? POWER-TRANSMITTER,TOUCHBIT /TRUE
FSET POWER-TRANSMITTER,TOUCHBIT
CRLF
PRINTI " As the "
LOC PROTAGONIST
CALL DPRINT,STACK
PRINTI " passes through the beam, you feel a tingling from every cell in "
PRINTD YOUR-BODY
PRINTI "."
RTRUE
?ELS64: PRINTI " "
CALL DESCRIBE-POWER-TRANSMITTER,NUM
RTRUE
.FUNCT BARGE-VISIBLE-AT-DOCK,NUM
CALL CANAL-LOC >NUM
EQUAL? NUM,1 \?ELS9
IN? BARGE,ROYAL-DOCKS /TRUE
?ELS9: EQUAL? NUM,6 \?ELS11
IN? BARGE,BABY-DOCK /TRUE
?ELS11: EQUAL? NUM,7 \?ELS13
IN? BARGE,DONALD-DOCK /TRUE
?ELS13: EQUAL? NUM,10 \?ELS15
LOC BARGE
EQUAL? STACK,MY-KIND-OF-DOCK,ABANDONED-DOCK /TRUE
?ELS15: EQUAL? NUM,15 \FALSE
IN? BARGE,WATTZ-UPP-DOCK \FALSE
RTRUE
.FUNCT BARGE-FROM-CANAL-F
CALL BARGE-VISIBLE-AT-DOCK
ZERO? STACK \?ELS5
CALL CANT-SEE,PSEUDO-OBJECT
RSTACK
?ELS5: CALL TOUCHING?,PSEUDO-OBJECT
ZERO? STACK /FALSE
CALL CANT-REACH,PSEUDO-OBJECT
RSTACK
.FUNCT BUOY-F,NUM
CALL CANAL-LOC >NUM
EQUAL? NUM,15 /?ELS5
EQUAL? HERE,WATTZ-UPP-DOCK /?ELS5
CALL CANT-SEE,PSEUDO-OBJECT
RSTACK
?ELS5: EQUAL? PRSA,V?EXAMINE,V?READ \?ELS9
CALL PERFORM,V?READ,SIGN
RTRUE
?ELS9: EQUAL? PRSA,V?OPEN,V?TAKE \?ELS11
PRINT YOU-CANT
EQUAL? PRSA,V?TAKE \?ELS14
PRINTI "take"
JUMP ?CND12
?ELS14: PRINTI "open"
?CND12: PRINTR " a buoy! Where'd you get such a silly idea?"
?ELS11: CALL TOUCHING?,PSEUDO-OBJECT
ZERO? STACK /FALSE
CALL CANT-REACH,PSEUDO-OBJECT
RSTACK
.FUNCT I-CANAL,NUM=0,MOVED=0
IN? BARGE,CANAL /?CND1
IN? RAFT,CANAL /?CND1
CALL DEQUEUE,I-CANAL
RFALSE
?CND1: IN? BARGE,CANAL \?CND6
ZERO? BARGE-UNDER-POWER \?THN12
ZERO? BARGE-WAIT /?ELS11
?THN12: IN? PROTAGONIST,BARGE \?CND14
SET 'MOVED,TRUE-VALUE
?CND14: SET 'BARGE-WAIT,FALSE-VALUE
ZERO? RAFT-HELD /?CND17
IN? RAFT,CANAL \?CND17
IN? PROTAGONIST,BARGE \?CND17
INC 'RAFT-LOC-NUM
?CND17: INC 'BARGE-LOC-NUM
JUMP ?CND6
?ELS11: SET 'BARGE-WAIT,TRUE-VALUE
?CND6: IN? RAFT,CANAL \?CND24
ZERO? RAFT-HELD \?CND24
ZERO? RAFT-WAIT /?ELS31
IN? PROTAGONIST,RAFT \?CND33
SET 'MOVED,TRUE-VALUE
?CND33: SET 'RAFT-WAIT,FALSE-VALUE
INC 'RAFT-LOC-NUM
JUMP ?CND24
?ELS31: SET 'RAFT-WAIT,TRUE-VALUE
?CND24: CALL CANAL-LOC >NUM
EQUAL? NUM,31 \?CND38
CALL QUEUED?,I-ION-DEATH
ZERO? STACK \?CND38
LOC PROTAGONIST
IN? SIDEKICK,STACK \?CND43
SET 'SIDEKICK-IONIZED,TRUE-VALUE
?CND43: CALL QUEUE,I-ION-DEATH,6
?CND38: LESS? NUM,17 \?ELS48
PUTP POWER-TRANSMITTER,P?SDESC,STR?248
JUMP ?CND46
?ELS48: GRTR? NUM,30 \?ELS50
PUTP POWER-TRANSMITTER,P?SDESC,STR?249
JUMP ?CND46
?ELS50: PUTP POWER-TRANSMITTER,P?SDESC,STR?250
?CND46: EQUAL? HERE,CANAL /?ELS55
GRTR? BARGE-LOC-NUM,36 \?CND56
MOVE BARGE,ICY-DOCK
ZERO? RAFT-HELD /?CND56
MOVE RAFT,ICY-DOCK
?CND56: GRTR? RAFT-LOC-NUM,36 \?CND63
MOVE RAFT,ICY-DOCK
?CND63: CALL BARGE-DOCKS
RFALSE
?ELS55: ZERO? MOVED /FALSE
?CND53: PRINTI " The "
LOC PROTAGONIST
CALL DPRINT,STACK
PRINTI " "
EQUAL? NUM,10 \?ELS70
ZERO? BARGE-UNDER-POWER /?ELS73
IN? PROTAGONIST,BARGE \?ELS73
SET 'NEARER-DOCK,MY-KIND-OF-DOCK
PRINTI "chugs quickly"
JUMP ?CND71
?ELS73: SET 'NEARER-DOCK,ABANDONED-DOCK
PRINTI "drifts slowly"
?CND71: PRINTI " around the bend, ending up near the "
ZERO? BARGE-UNDER-POWER /?ELS80
IN? PROTAGONIST,BARGE \?ELS80
PRINTI "ea"
JUMP ?CND78
?ELS80: PRINTI "we"
?CND78: PRINTI "stern bank of"
JUMP ?CND68
?ELS70: ZERO? BARGE-UNDER-POWER /?ELS89
IN? PROTAGONIST,BARGE \?ELS89
PRINTI "barges"
JUMP ?CND87
?ELS89: PRINTI "drifts"
?CND87: PRINTI " further down"
?CND68: PRINTI " the canal."
EQUAL? NUM,36 \?CND94
PRINTI " A wide dock spans the canal to the south. The "
LOC PROTAGONIST
CALL DPRINT,STACK
PRINTI " butts up against it"
PRINT PINNED
CRLF
IN? PROTAGONIST,RAFT \?ELS99
IN? BARGE,CANAL \?ELS99
EQUAL? BARGE-LOC-NUM,36 \?ELS99
MOVE BARGE,ICY-DOCK
JUMP ?CND97
?ELS99: IN? PROTAGONIST,BARGE \?CND97
IN? RAFT,CANAL \?CND97
EQUAL? RAFT-LOC-NUM,36 \?CND97
MOVE BARGE,ICY-DOCK
?CND97: LOC PROTAGONIST
MOVE STACK,ICY-DOCK
LOC PROTAGONIST
CALL GOTO,STACK
RTRUE
?CND94: EQUAL? HAND-COVER,EYES /?THN109
FSET? EYES,MUNGBIT \?ELS108
?THN109: PRINTI " "
PRINT YOU-CANT
PRINTI "see a thing, of course."
CRLF
JUMP ?CND106
?ELS108: CRLF
CRLF
CALL DESCRIBE-ROOM
?CND106: EQUAL? BARGE-LOC-NUM,RAFT-LOC-NUM \?CND113
IN? RAFT,CANAL \?CND113
IN? BARGE,CANAL \?CND113
IN? PROTAGONIST,RAFT \?ELS120
CALL BARGE-F,M-OBJDESC
CRLF
JUMP ?CND113
?ELS120: CALL RAFT-F,M-OBJDESC
CRLF
?CND113: CALL BARGE-DOCKS,TRUE-VALUE
RTRUE
.FUNCT POWER-TRANSMITTER-F,NUM=0
CALL CANAL-LOC >NUM
GRTR? NUM,31 /?THN6
LESS? NUM,13 \?ELS5
?THN6: CALL CANT-SEE,POWER-TRANSMITTER
RSTACK
?ELS5: EQUAL? PRSA,V?EXAMINE \?ELS9
CALL DESCRIBE-POWER-TRANSMITTER,NUM
CRLF
RTRUE
?ELS9: CALL TOUCHING?,POWER-TRANSMITTER
ZERO? STACK /FALSE
CALL CANT-REACH,POWER-TRANSMITTER
RSTACK
.FUNCT DESCRIBE-POWER-TRANSMITTER,NUM
EQUAL? NUM,31 \?ELS5
PRINTI "The "
LOC PROTAGONIST
CALL DPRINT,STACK
PRINTI " is now passing the metal structure that has been looming closer for the last hour. Its size and power are overwhelming; a relic of Martian technology at its height. Vacuum tubes the size of telephone booths produce power that was once beamed all over Mars. But now, in the twilight of the planet's civilization, the machine's base has rusted away. The massive tower now shoots its ion power beam uselessly across the canal, into the sand of the opposite bank."
RTRUE
?ELS5: LESS? NUM,17 \?ELS7
PRINTI "You spy a metallic glint, far ahead."
RTRUE
?ELS7: GRTR? NUM,27 \?ELS9
PRINTI "A massive machine, unlike anything you've ever seen, rises from the shore, looming closer with each passing minute."
RTRUE
?ELS9: PRINTI "A metal structure, glinting in the weak Martian sunlight, is visible at the edge of the canal"
LESS? NUM,21 \?ELS16
PRINTI ", but far, far ahead."
RTRUE
?ELS16: LESS? NUM,24 \?ELS18
PRINTI " far ahead of you."
RTRUE
?ELS18: PRINTI ", a bit too far to make out any details."
RTRUE
.FUNCT I-ION-DEATH
INC 'ION-DEATH-COUNTER
PRINTI " "
GRTR? ION-DEATH-COUNTER,4 \?ELS5
CALL JIGS-UP,STR?255
RSTACK
?ELS5: FSET? POWER-TRANSMITTER,MUNGBIT \?ELS10
CALL QUEUE,I-ION-DEATH,2
JUMP ?CND8
?ELS10: CALL QUEUE,I-ION-DEATH,6
?CND8: CALL V-DIAGNOSE
ZERO? SIDEKICK-IONIZED /TRUE
CALL VISIBLE?,SIDEKICK
ZERO? STACK /TRUE
EQUAL? ION-DEATH-COUNTER,3 \TRUE
PRINTI " "
CALL DPRINT-SIDEKICK
PRINTR " says, ""My head is pounding! I wish we had some aspirin."""
.FUNCT BARGE-DOCKS,CALLED-BY-INT=0,DOCK-ROOM,DOCK-DIR
ZERO? MOORING-ON /FALSE
IN? BARGE,CANAL \FALSE
EQUAL? BARGE-LOC-NUM,7,10,15 /?THN8
EQUAL? BARGE-LOC-NUM,1,6 \FALSE
?THN8: ZERO? CALLED-BY-INT /?CND10
PRINTI " "
?CND10: CALL SET-DOCK-ROOM,BARGE-LOC-NUM >DOCK-ROOM
CALL SET-DOCK-DIR,BARGE-LOC-NUM >DOCK-DIR
IN? BARGE,HERE \?CND14
PRINTI " The barge drifts toward the dock on the "
PRINT DOCK-DIR
PRINTI "ern shore, butting against it with a loud ""clank."""
IN? PROTAGONIST,BARGE \?CND17
CRLF
?CND17: CRLF
?CND14: MOVE BARGE,DOCK-ROOM
IN? PROTAGONIST,BARGE \?CND20
ZERO? RAFT-HELD /?CND23
MOVE RAFT,DOCK-ROOM
?CND23: CALL GOTO,BARGE
?CND20: SET 'BARGE-WAIT,FALSE-VALUE
RTRUE
.FUNCT SET-DOCK-ROOM,NUM
EQUAL? NUM,-1 \?ELS5
RETURN HICKORY-AND-DICKORY-DOCK
?ELS5: EQUAL? NUM,1 \?ELS7
RETURN ROYAL-DOCKS
?ELS7: EQUAL? NUM,6 \?ELS9
RETURN BABY-DOCK
?ELS9: EQUAL? NUM,7 \?ELS11
RETURN DONALD-DOCK
?ELS11: EQUAL? NUM,15 \?ELS13
RETURN WATTZ-UPP-DOCK
?ELS13: EQUAL? NEARER-DOCK,MY-KIND-OF-DOCK \?ELS15
RETURN MY-KIND-OF-DOCK
?ELS15: RETURN ABANDONED-DOCK
.FUNCT SET-DOCK-DIR,NUM
EQUAL? NUM,-1,1,7 \?ELS5
RETURN STR?256
?ELS5: EQUAL? NUM,6 \?ELS7
RETURN STR?257
?ELS7: EQUAL? NUM,15 \?ELS9
RETURN STR?258
?ELS9: EQUAL? NEARER-DOCK,MY-KIND-OF-DOCK \?ELS11
RETURN STR?239
?ELS11: RETURN STR?258
.FUNCT AMONG-THE-DUNES-F,RARG
EQUAL? RARG,M-ENTER \FALSE
FSET? AMONG-THE-DUNES,TOUCHBIT /FALSE
?PRG8: RANDOM 8270
ADD 100,STACK >WIFE-NUMBER
MOD WIFE-NUMBER,10
ZERO? STACK /?PRG8
CALL PALINDROME-NUMBER?,WIFE-NUMBER
ZERO? STACK \?PRG8
RTRUE
.FUNCT PALINDROME-NUMBER?,NUM,?TMP1
GRTR? NUM,999 \?ELS5
DIV NUM,1000 >?TMP1
MOD NUM,10
EQUAL? ?TMP1,STACK \FALSE
RTRUE
?ELS5: DIV NUM,100 >?TMP1
MOD NUM,10
EQUAL? ?TMP1,STACK \FALSE
RTRUE
.FUNCT LIP-BALM-F
FSET? LIP-BALM,UNTEEDBIT /FALSE
EQUAL? PRSA,V?PUT-ON \?ELS11
EQUAL? PRSI,MOUTH /?THN8
?ELS11: EQUAL? PRSA,V?WEAR \?ELS7
?THN8: FSET? LIP-BALM,WORNBIT \?ELS16
PRINT SENILITY-STRIKES
RTRUE
?ELS16: MOVE LIP-BALM,PROTAGONIST
FSET LIP-BALM,WORNBIT
FSET MOUTH,MUNGBIT
PRINTR "You coat your lips with the glistening balm, using up the whole stick."
?ELS7: EQUAL? PRSA,V?EXAMINE \?ELS20
FSET? LIP-BALM,WORNBIT \?ELS20
CALL PERFORM-PRSA,MOUTH
RTRUE
?ELS20: EQUAL? PRSA,V?CLEAN,V?REMOVE \FALSE
FSET? LIP-BALM,WORNBIT \FALSE
MOVE LIP-BALM,LOCAL-GLOBALS
FCLEAR MOUTH,MUNGBIT
PRINTR "You wipe away the lip balm."
.FUNCT CODED-MESSAGE-F
EQUAL? PRSA,V?EXAMINE,V?READ \FALSE
PRINTI "VSDFHHQN UXRB VVLN RW "
ZERO? MALE /?ELS8
PRINTI "UH"
JUMP ?CND6
?ELS8: PRINTI "PL"
?CND6: PRINTI "K JQLNVD BE "
ZERO? MALE /?ELS14
PRINTI "UH"
JUMP ?CND12
?ELS14: PRINTI "PL"
?CND12: PRINTI "K RW IOHVUXRB BILWQHGL -- SDP WHUFHV HKW WHJ GQD "
ZERO? MALE \?CND18
PRINTI "VVH"
?CND18: PRINTI "QDWOXV HKW IR "
CALL REVERSE-NUMBER,WIFE-NUMBER
PRINTI " UHEPXQ "
ZERO? MALE /?ELS23
PRINTI "HILZ"
JUMP ?CND21
?ELS23: PRINTI "GQDEVXK"
?CND21: PRINTR " WFDWQRF RW VL QRLVVLP UXRB"
.FUNCT REVERSE-NUMBER,NUM
?PRG1: MOD NUM,10
PRINTN STACK
DIV NUM,10 >NUM
ZERO? NUM \?PRG1
RTRUE
.FUNCT MESSENGER-F
EQUAL? PRSA,V?EXAMINE \?ELS5
PRINTR "It's dead. Very dead."
?ELS5: EQUAL? PRSA,V?KISS,V?FUCK \?ELS7
PRINTR "Is there even a word for this sort of perverse behavior? Necro-xeno-philia? Xeno-necro-philia? Grosso-sicko-philia?"
?ELS7: EQUAL? PRSA,V?PUT-ON \?ELS9
EQUAL? PRSO,LIP-BALM \?ELS9
PRINTR "Too late."
?ELS9: EQUAL? PRSA,V?SEARCH \?ELS13
PRINT NOTHING-NEW
RTRUE
?ELS13: EQUAL? PRSA,V?ALARM \FALSE
PRINTR "This guy's not resting, he's deceased!"
.FUNCT DUNETOP-F,RARG
EQUAL? RARG,M-ENTER \FALSE
ZERO? TITS-COUNTER \FALSE
CALL QUEUE,I-TITS,-1
RSTACK
.FUNCT I-TITS
INC 'TITS-COUNTER
EQUAL? NAUGHTY-LEVEL,2 /?ELS5
CALL DEQUEUE,I-TITS
RFALSE
?ELS5: EQUAL? TITS-COUNTER,4 \?ELS7
PRINTR " [A warning for any Jerry Falwell groupies who are miraculously still playing: we'll be using the word ""tits"" in five turns or so. Please consult the manual for the proper way to stop playing.]"
?ELS7: EQUAL? TITS-COUNTER,7 \?ELS9
PRINTR " [Only a few turns until the ""tits"" reference! Use QUIT now if you might be offended!]"
?ELS9: EQUAL? TITS-COUNTER,9 \?ELS11
PRINTR " [Last warning! The word ""tits"" will appear in the very next turn! This is your absolutely last chance to avoid seeing ""tits"" used!!!]"
?ELS11: EQUAL? TITS-COUNTER,10 \FALSE
CALL DEQUEUE,I-TITS
PRINTI " A hyperdimensional traveller suddenly appears out of thin air. ""My sister has tremendous breasts,"" says the traveller and, without further explanation, vanishes"
FSET? NOSE,MUNGBIT /?CND14
PRINTI ", leaving only a vague trace of interdimensional ozone"
?CND14: PRINTR ".
[Oh, regarding the use of ""tits,"" we changed our mind at the last minute. Everyone agreed it was too risque.]"
.FUNCT OUTSIDE-SHOP-F
EQUAL? PRSA,V?BOARD,V?WALK-TO,V?ENTER \?ELS5
CALL DO-WALK,P?SOUTH
RSTACK
?ELS5: EQUAL? PRSA,V?DISEMBARK,V?LEAVE,V?EXIT \FALSE
PRINT LOOK-AROUND
RTRUE
.FUNCT INSIDE-SHOP-F
EQUAL? PRSA,V?EXIT,V?LEAVE,V?DISEMBARK \?ELS5
CALL DO-WALK,P?NORTH
RSTACK
?ELS5: EQUAL? PRSA,V?ENTER,V?WALK-TO,V?BOARD \?ELS7
PRINT LOOK-AROUND
RTRUE
?ELS7: EQUAL? PRSA,V?SEARCH \?ELS9
CALL PERFORM-PRSA,DUST
RTRUE
?ELS9: EQUAL? PRSA,V?EXAMINE \FALSE
CALL V-LOOK
RSTACK
.FUNCT EXIT-SHOP-F,RARG
EQUAL? RARG,M-END \FALSE
FSET? PROPRIETOR,TOUCHBIT /FALSE
FSET PROPRIETOR,TOUCHBIT
PRINTI " "
PRINT PROPRIETOR-STIRS
PRINTR "Don't get many customers these days, since they abandoned the dock. In fact, you're only the third in the last hundred and fifty centuries."" He slips back into a drowse."
.FUNCT PROPRIETOR-F
EQUAL? PROPRIETOR,WINNER \?ELS5
EQUAL? PRSA,V?WHAT \?ELS14
EQUAL? PRSO,LGOP /?THN11
?ELS14: EQUAL? PRSA,V?TELL-ABOUT \?ELS10
EQUAL? PRSO,ME \?ELS10
EQUAL? PRSI,LGOP \?ELS10
?THN11: PRINTR """A bunch of deadbeats! Never pay their bills -- I've had to repossess God knows how many exits!"""
?ELS10: SET 'WINNER,PROTAGONIST
CALL PERFORM,V?ALARM,PROPRIETOR
CALL STOP
RSTACK
?ELS5: EQUAL? PRSA,V?ALARM \?ELS20
PRINT PROPRIETOR-STIRS
PRINTI "E"
PRINT BOUGHT-AND-SOLD
PRINTI ","" he mumbles, ""e"
PRINT BOUGHT-AND-SOLD
PRINTR "."" A moment later, he nods off."
?ELS20: EQUAL? PRSA,V?BARTER-WITH /?THN23
EQUAL? PRSA,V?ASK-FOR \?ELS22
EQUAL? PRSI,EXIT-OBJECT \?ELS22
?THN23: CALL PERFORM,V?BUY,EXIT-OBJECT
RTRUE
?ELS22: EQUAL? PRSA,V?SHOW,V?GIVE \?ELS28
EQUAL? PRSO,TEN-MARSMID-COIN \?ELS28
PRINTR """Humph? Eh, oh, sorry, no change for a ten. And the Mall Merchants Association would have my license if I accepted an overpayment. Try again in a year ... or two ... grunt snore."""
?ELS28: EQUAL? PRSA,V?SHOW,V?GIVE \?ELS32
EQUAL? PRSO,ONE-MARSMID-COIN \?ELS32
REMOVE ONE-MARSMID-COIN
MOVE TUBE,DUST
CALL INCREMENT-SCORE,5,12
PRINTR "The proprietor slowly focuses one eye on the coin. ""Not much in stock these days,"" he explains. ""My supplier went bankrupt ninety thousand years ago."" He takes the coin and starts to hand you a cardboard tube, but his eye drifts out of focus again, and he drops it wearily into the dust."
?ELS32: EQUAL? PRSA,V?SHOW,V?GIVE \FALSE
EQUAL? PRSO,FLEXIBLE-HOLE \FALSE
PRINT PROPRIETOR-STIRS
PRINTR "Don't think I could sell such an out-of-date model. No one wants exits anymore, anyway. Don't know why I bother ... to stay in business ... zzzz."""
.FUNCT EXIT-OBJECT-F
EQUAL? PRSA,V?BUY \?ELS5
EQUAL? HERE,EXIT-SHOP \?ELS10
PRINTR """One marsmid, please, grunt snore zzz."""
?ELS10: FSET? EXIT-SHOP,TOUCHBIT \?ELS12
PRINTI "This isn't an "
PRINTD EXIT-SHOP
PRINTR "!"
?ELS12: PRINTR "Buy an exit?!?!"
?ELS5: EQUAL? PRSA,V?BUY-WITH \?ELS16
EQUAL? PRSI,TEN-MARSMID-COIN,ONE-MARSMID-COIN \?ELS16
CALL PERFORM,V?GIVE,PRSI,PROPRIETOR
RTRUE
?ELS16: EQUAL? PRSA,V?TAKE \FALSE
IN? TUBE,DUST \FALSE
EQUAL? HERE,EXIT-SHOP \FALSE
PRINTR "It's lost in the dust."
.FUNCT DUST-F,X=0
EQUAL? PRSA,V?DIG,V?REACH-IN,V?SEARCH /?THN6
EQUAL? PRSA,V?RAKE,V?LOOK-INSIDE \?ELS5
?THN6: FIRST? DUST >X \?ELS12
MOVE X,PROTAGONIST
CALL THIS-IS-IT,X
PRINTI "You grasp"
CALL APRINT,X
PRINTR "!"
?ELS12: PRINTR "You sift through the dust but find nothing."
?ELS5: EQUAL? PRSA,V?BOARD,V?ENTER \?ELS16
PRINTR "You're already up to your neck in dust."
?ELS16: EQUAL? PRSA,V?PUT \?ELS18
EQUAL? PRSI,DUST \?ELS18
CALL PERFORM,V?DROP,PRSO
RTRUE
?ELS18: EQUAL? PRSA,V?BLOW,V?MOVE,V?CLEAN \FALSE
PRINTR "You'd need a plow to move this dust."
.FUNCT FLEXIBLE-HOLE-F,SIDEKICK-VISIBLE=0
EQUAL? PRSA,V?EXAMINE \?ELS5
PRINTI "The "
PRINTD FLEXIBLE-HOLE
PRINTR " looks just like a portable version of the ""holes"" you've been encountering all over the solar system."
?ELS5: EQUAL? PRSA,V?MEASURE \?ELS7
PRINTI "The "
CALL DPRINT,HOLE
PRINTR " is two feet across."
?ELS7: EQUAL? PRSA,V?LOOK-INSIDE,V?TOUCH,V?REACH-IN \?ELS9
IN? FLEXIBLE-HOLE,TUBE \?ELS9
CALL MEANT-OTHER-HOLE
ZERO? STACK \TRUE
CALL NOT-ON-GROUND,FLEXIBLE-HOLE
RSTACK
?ELS9: EQUAL? PRSA,V?TOUCH,V?REACH-IN \?ELS16
PRINT HAND-DWINDLES
RTRUE
?ELS16: EQUAL? PRSA,V?LOOK-INSIDE \?ELS18
PRINT STARING-INTO-VOID
RTRUE
?ELS18: EQUAL? PRSA,V?PUT-ON,V?PUT \?ELS20
EQUAL? PRSI,FLEXIBLE-HOLE \?ELS20
LOC FLEXIBLE-HOLE
EQUAL? STACK,HERE,RAFT,BARGE \?ELS27
MOVE PRSO,BOUDOIR
CALL NON-DIMENSIONAL-JOURNEY
RSTACK
?ELS27: CALL MEANT-OTHER-HOLE
ZERO? STACK \TRUE
CALL NOT-ON-GROUND,FLEXIBLE-HOLE
RSTACK
?ELS20: EQUAL? PRSA,V?BOARD,V?ENTER,V?STAND-ON \FALSE
CALL ULTIMATELY-IN?,FLEXIBLE-HOLE
ZERO? STACK /?ELS38
CALL MEANT-OTHER-HOLE
ZERO? STACK \TRUE
PRINT HOLDING-IT
RTRUE
?ELS38: IN? PROTAGONIST,HERE /?ELS43
LOC PROTAGONIST
IN? FLEXIBLE-HOLE,STACK /?ELS43
CALL NOT-GOING-ANYWHERE
RSTACK
?ELS43: LOC FLEXIBLE-HOLE
EQUAL? STACK,HERE,TREE-HOLE /?ELS47
LOC FLEXIBLE-HOLE
EQUAL? STACK,RAFT,BARGE /?ELS47
CALL MEANT-OTHER-HOLE
ZERO? STACK \TRUE
CALL NOT-ON-GROUND,FLEXIBLE-HOLE
RSTACK
?ELS47: ZERO? SIDEKICK-TRIP-FLAG /?ELS54
CALL QUEUED?,I-SIDEKICK-OUT-WINDOW
ZERO? STACK /?ELS54
CALL DO-WALK,P?DOWN
RSTACK
?ELS54: CALL VISIBLE?,SIDEKICK
ZERO? STACK /?CND59
SET 'SIDEKICK-VISIBLE,TRUE-VALUE
?CND59: CALL FALL-THROUGH-HOLE
CALL GOTO,BOUDOIR
CALL QUEUED?,I-ION-DEATH
ZERO? STACK /?CND62
FSET POWER-TRANSMITTER,MUNGBIT
CALL QUEUE,I-ION-DEATH,1
?CND62: ZERO? SIDEKICK-VISIBLE /TRUE
SET 'HOLE-MOVE,TRUE-VALUE
CALL SIDEKICK-FOLLOWS-YOU
RTRUE
.FUNCT MEANT-OTHER-HOLE
EQUAL? PRSO,FLEXIBLE-HOLE \?ELS9
GET P-ADJW,0
EQUAL? STACK,A?FLEXIBLE,A?PORTABLE /FALSE
?ELS9: EQUAL? PRSI,FLEXIBLE-HOLE \?ELS5
GET P-ADJW,1
EQUAL? STACK,A?FLEXIBLE,A?PORTABLE /FALSE
?ELS5: CALL GLOBAL-IN?,HOLE,HERE
ZERO? STACK /FALSE
EQUAL? PRSO,FLEXIBLE-HOLE \?ELS15
CALL PERFORM-PRSA,HOLE,PRSI
RTRUE
?ELS15: CALL PERFORM-PRSA,PRSO,HOLE
RTRUE
.FUNCT LAUNDRY-ROOM-F,RARG
EQUAL? RARG,M-LOOK \FALSE
PRINTI "One of the less pleasant aspects of running a palace is the sheer volume of dirty laundry its occupants produce. Why, the 8379 "
ZERO? MALE /?ELS8
PRINTI "wive"
JUMP ?CND6
?ELS8: PRINTI "husband"
?CND6: PRINTI "s alone could keep a crew of cleaners sleepless. Add in the servants, cooks, gardeners, stablehands, jesters, visiting nobles, brothers-in-law in virtual permanent residence... Suffice it to say that there's "
ZERO? NAUGHTY-LEVEL \?ELS14
PRINTI "quite"
JUMP ?CND12
?ELS14: PRINTI "one hell of"
?CND12: PRINTI " a lot of dirty laundry here. You can barely see the exit to the north through it all."
RTRUE
.FUNCT CLOTHES-PIN-F
FSET? CLOTHES-PIN,UNTEEDBIT /FALSE
EQUAL? PRSA,V?PIN,V?PUT-ON \?ELS7
EQUAL? PRSO,CLOTHES-PIN \?ELS7
EQUAL? PRSI,NOSE /?ELS14
CALL WASTES
RSTACK
?ELS14: ZERO? GONE-APE /?ELS16
PRINT DEXTERITY
RTRUE
?ELS16: FSET? CLOTHES-PIN,WORNBIT \?ELS19
PRINT SENILITY-STRIKES
RTRUE
?ELS19: MOVE CLOTHES-PIN,PROTAGONIST
FSET CLOTHES-PIN,WORNBIT
FSET NOSE,MUNGBIT
PRINTR "You pin your proboscis."
?ELS7: EQUAL? PRSA,V?PUT \?ELS23
EQUAL? PRSO,NOSE \?ELS23
CALL PERFORM,V?PUT-ON,CLOTHES-PIN,NOSE
RTRUE
?ELS23: EQUAL? PRSA,V?TIE \?ELS27
EQUAL? P-PRSA-WORD,W?ATTACH \?ELS27
EQUAL? PRSO,CLOTHES-PIN \?ELS27
ZERO? PRSI /?ELS27
CALL PERFORM,V?PUT-ON,CLOTHES-PIN,PRSI
RTRUE
?ELS27: EQUAL? PRSA,V?TAKE-WITH \?ELS31
EQUAL? P-PRSA-WORD,W?HOLD \?ELS31
EQUAL? PRSO,NOSE \?ELS31
CALL PERFORM,V?PUT-ON,CLOTHES-PIN,NOSE
RTRUE
?ELS31: EQUAL? PRSA,V?TAKE-OFF,V?REMOVE \FALSE
FSET? CLOTHES-PIN,WORNBIT \FALSE
ZERO? GONE-APE /?CND38
CALL PERFORM,V?TAKE,CLOTHES-PIN
RTRUE
?CND38: CALL OPEN-EYES-AND-REMOVE-HANDS
FCLEAR CLOTHES-PIN,WORNBIT
CALL SENSE-AGAIN,NOSE
RSTACK
.FUNCT WELL-ENTER-F
PRINTI "You climb down the well for a long distance. Near the bottom the handholds end, so you"
CALL AND-SIDEKICK,WELL-BOTTOM
PRINTI " leap the rest of the way, landing on"
CALL APRINT,HOLE
PRINTI ". "
SET 'HERE,WELL-BOTTOM
MOVE PROTAGONIST,WELL-BOTTOM
CALL PERFORM,V?STAND-ON,HOLE
RFALSE
.FUNCT WELL-F
EQUAL? PRSA,V?REACH-IN,V?LOOK-INSIDE \?ELS5
PRINTR "Handholds lead downward!"
?ELS5: EQUAL? PRSA,V?CLIMB-UP,V?CLIMB,V?CLIMB-DOWN /?THN8
EQUAL? PRSA,V?ENTER,V?BOARD \?ELS7
?THN8: EQUAL? HERE,WELL-BOTTOM \?ELS12
CALL DO-WALK,P?UP
RTRUE
?ELS12: CALL WELL-ENTER-F
RTRUE
?ELS7: EQUAL? PRSA,V?PUT \FALSE
EQUAL? PRSI,PSEUDO-OBJECT \FALSE
EQUAL? HERE,ORIENTAL-GARDEN \FALSE
MOVE PRSO,BARGE
EQUAL? PRSO,TORCH \?CND19
CALL TORCH-OFF
?CND19: PRINTR "It drops out of sight."
.FUNCT TOWER-F
EQUAL? PRSA,V?BOARD,V?WALK-TO,V?ENTER /?THN6
EQUAL? PRSA,V?CLIMB-UP,V?CLIMB \?ELS5
?THN6: EQUAL? HERE,BASE-OF-TOWER \?ELS12
CALL DO-WALK,P?UP
RSTACK
?ELS12: EQUAL? HERE,MINARET \FALSE
PRINT LOOK-AROUND
RTRUE
?ELS5: EQUAL? PRSA,V?EXIT,V?LEAVE,V?DISEMBARK \FALSE
EQUAL? HERE,BASE-OF-TOWER \?ELS21
PRINT LOOK-AROUND
RTRUE
?ELS21: CALL DO-WALK,P?DOWN
RSTACK
.FUNCT AUDIENCE-CHAMBER-F,RARG
EQUAL? RARG,M-LOOK \?ELS5
PRINTI "The good news is that this hall is intoxicatingly beautiful, laid with the snow-white fur of the rare Martian Velvetworm and endowed with platinum arches and balustrades. Silky curtains embrace openings to the south, southwest, and west.
The bad news is that no "
ZERO? MALE \?CND6
PRINTI "wo"
?CND6: PRINTI "man has ever entered the "
CALL DPRINT,HERE
PRINTI " of"
CALL TPRINT,SULTAN
PRINTI " and departed alive."
RTRUE
?ELS5: EQUAL? RARG,M-END \FALSE
FSET? SULTAN,TOUCHBIT /FALSE
FSET SULTAN,TOUCHBIT
CALL QUEUE,I-SULTAN,-1
RSTACK
.FUNCT AUDIENCE-CHAMBER-EXIT-F
ZERO? RIDDLE-ANSWERED \?ELS5
PRINTI """Rule violation! Rule violation!"" "
CALL RIDDLE-DEATH
RSTACK
?ELS5: EQUAL? PRSO,P?SOUTH \?ELS7
RETURN ORIENTAL-GARDEN
?ELS7: EQUAL? PRSO,P?SW \?ELS9
RETURN MAIN-HALL-OF-PALACE
?ELS9: GRTR? CHOICE-NUMBER,0 /?THN12
EQUAL? HAREM-GUARD-COUNTER,5 \?ELS11
?THN12: RETURN HAREM
?ELS11: CALL RUNNING?,I-HAREM-GUARD
ZERO? STACK /?ELS15
CALL QUEUE,I-HAREM-GUARD,2
PRINTI """Hey!"" The "
PRINTD HAREM-GUARD
PRINTI " pushes you back. ""Pick a number first!"
CRLF
RFALSE
?ELS15: CALL QUEUE,I-HAREM-GUARD,2
MOVE HAREM-GUARD,AUDIENCE-CHAMBER
SET 'AWAITING-FAKE-ORPHAN,TRUE-VALUE
PRINTI "A well-armed "
ZERO? MALE /?CND18
PRINTI "fe"
?CND18: PRINTI "male guard blocks you. ""Congratulations on your performance,"" "
CALL SHE-HE
PRINTI " says in a bored voice. You wonder how the guard can be so unmoved by your historic feat. As though sensing your thoughts, the guard says, ""The "
CALL DPRINT,SULTAN
PRINTI " likes to pretend that no one's ever gotten the riddle, but someone got it last year, the word spread around, and now everyone knows the answer. You're the twelfth winner this week already. "
CALL HE-SHE,TRUE-VALUE
PRINTI " sent away to Maude's House of Riddles on Ganymede for a new one, but the mail is so slow..."" The guard shakes "
CALL HER-HIS
PRINTI " head. ""Well, pick a "
ZERO? MALE /?ELS24
PRINTI "wife"
JUMP ?CND22
?ELS24: PRINTI "husband"
?CND22: PRINTI "; any number from 1 to 8379. Don't waste time thinking; they're all clones anyway."" "
CALL SHE-HE,TRUE-VALUE
PRINTI " looks at you expectantly."
CRLF
RFALSE
.FUNCT MATE-F
EQUAL? PRSA,V?PICK \?ELS5
IN? HAREM-GUARD,HERE \?ELS5
CALL I-HAREM-GUARD,TRUE-VALUE
RSTACK
?ELS5: CALL PRSO-MOBY-VERB?
ZERO? STACK \FALSE
CALL PRSI-MOBY-VERB?
ZERO? STACK \FALSE
CALL CANT-SEE,PSEUDO-OBJECT
RSTACK
.FUNCT HAREM-GUARD-F
EQUAL? HAREM-GUARD,WINNER \?ELS5
EQUAL? PRSA,V?ANSWER-KLUDGE \?ELS10
EQUAL? PRSO,INTNUM \?ELS10
CALL PICK-WIFE,INTNUM
RSTACK
?ELS10: CALL I-HAREM-GUARD,TRUE-VALUE
RSTACK
?ELS5: EQUAL? PRSA,V?FOLLOW \FALSE
EQUAL? FOLLOW-FLAG,13,14 \FALSE
CALL DO-WALK,P?WEST
RSTACK
.FUNCT I-HAREM-GUARD,CALLED-BY-HAREM-GUARD-F=0
INC 'HAREM-GUARD-COUNTER
ZERO? CALLED-BY-HAREM-GUARD-F /?ELS3
CALL QUEUE,I-HAREM-GUARD,2
JUMP ?CND1
?ELS3: CALL QUEUE,I-HAREM-GUARD,-1
?CND1: EQUAL? HERE,AUDIENCE-CHAMBER \?THN10
GRTR? CHOICE-NUMBER,0 \?CND7
?THN10: SET 'AWAITING-FAKE-ORPHAN,FALSE-VALUE
CALL DEQUEUE,I-HAREM-GUARD
REMOVE HAREM-GUARD
RFALSE
?CND7: ZERO? CALLED-BY-HAREM-GUARD-F \?CND12
PRINTI " "
?CND12: PRINTI """"
EQUAL? HAREM-GUARD-COUNTER,5 \?ELS19
REMOVE HAREM-GUARD
SET 'FOLLOW-FLAG,14
CALL QUEUE,I-FOLLOW,2
CALL DEQUEUE,I-HAREM-GUARD
SET 'AWAITING-FAKE-ORPHAN,FALSE-VALUE
PRINTR "I'm not waiting around anymore! You blew it, sucker."" The guard storms angrily away."
?ELS19: PRINTI "Ahem? A number...?"" says"
CALL TPRINT,HAREM-GUARD
EQUAL? HAREM-GUARD-COUNTER,4 \?CND22
PRINTI " with growing impatience"
?CND22: PRINT PERIOD-CR
RTRUE
.FUNCT PICK-WIFE,OBJ=0,DUPE
EQUAL? OBJ,INTNUM /?THN4
CALL NUMBER?,P-CONT
EQUAL? STACK,W?NUMBER \?ELS3
?THN4: LESS? P-NUMBER,1 \?ELS8
PRINT GIMME-TROUBLE
JUMP ?CND1
?ELS8: GRTR? P-NUMBER,8379 \?ELS10
PRINTI """There're only 8379 of 'em."""
CRLF
JUMP ?CND1
?ELS10: CALL ZMEMQ,P-NUMBER,WRONG-ANSWERS,7 >DUPE
ZERO? DUPE /?ELS12
PRINTI """You already asked for that one, dodo-brain!"""
CRLF
JUMP ?CND1
?ELS12: EQUAL? P-NUMBER,WIFE-NUMBER /?THN15
RANDOM 100
LESS? HAREM-PROB,STACK /?ELS14
?THN15: SET 'CHOICE-NUMBER,P-NUMBER
SET 'AWAITING-FAKE-ORPHAN,FALSE-VALUE
SET 'FOLLOW-FLAG,13
CALL QUEUE,I-FOLLOW,2
REMOVE HAREM-GUARD
CALL QUEUE,I-HAREM,5
PRINTI "The guard, walking off, says, ""I'll summon that one. You may enter."""
CRLF
JUMP ?CND1
?ELS14: DIV HAREM-PROB,15
PUT WRONG-ANSWERS,STACK,P-NUMBER
ADD HAREM-PROB,15 >HAREM-PROB
PRINTI "The guard consults a list. """
RANDOM 100
LESS? 25,STACK /?ELS21
PRINTI "Traded to the Du"
ZERO? MALE /?ELS24
PRINTI "ke"
JUMP ?CND22
?ELS24: PRINTI "chess"
?CND22: PRINTI " of Deimos for two eunuchs and a jester to be named later"
JUMP ?CND19
?ELS21: CALL PICK-ONE,EXCUSES
PRINT STACK
?CND19: PRINTI ". Pick another number."""
CRLF
JUMP ?CND1
?ELS3: PRINTI "[Please give your selection in numerical form.]"
CRLF
?CND1: CALL QUEUE,I-HAREM-GUARD,2
CALL STOP
RSTACK
.FUNCT SULTAN-F,OARG=0
ZERO? OARG /?ELS5
EQUAL? OARG,M-OBJDESC? /TRUE
PRINTI " The "
CALL DPRINT,SULTAN
PRINTI " is here,"
ZERO? RIDDLE-ANSWERED /?ELS14
CALL ARGUING-WITH-LEGAL-ADVISOR
RSTACK
?ELS14: PRINTI " enthroned."
RTRUE
?ELS5: EQUAL? SULTAN,WINNER \?ELS19
EQUAL? PRSA,V?TELL-ABOUT \?ELS24
EQUAL? PRSO,ME \?ELS24
EQUAL? PRSI,LGOP \?ELS24
PRINTR """They were exiled from Leather Island in the Caribbean, after cheating in the Miss Leather Island beauty pageant; the silicone injectionist spilled the beans. Now they rule all of Phobos. Hmmph! They call that hunk of rock a Sultanate? Those bimbos never told a decent riddle in their lives!"""
?ELS24: EQUAL? PRSA,V?WHERE,V?WHAT \?ELS28
PRINTR """I ask the riddles around here!"""
?ELS28: EQUAL? PRSA,V?YES \?ELS30
EQUAL? AWAITING-REPLY,1 \?ELS30
CALL V-YES
RSTACK
?ELS30: EQUAL? PRSA,V?NO \?ELS34
EQUAL? AWAITING-REPLY,1 \?ELS34
CALL V-NO
RSTACK
?ELS34: EQUAL? PRSA,V?USE-QUOTES,V?ANSWER-KLUDGE \?ELS38
ZERO? AWAITING-FAKE-ORPHAN /?ELS38
ZERO? RIDDLE-ANSWERED \?ELS38
EQUAL? PRSO,RIDDLE /?CND41
CALL RIDDLE-ANSWER
RTRUE
?CND41: SET 'RIDDLE-ANSWERED,TRUE-VALUE
CALL DEQUEUE,I-SNEEZE
CALL INCREMENT-SCORE,8,11
PRINTI "The "
CALL DPRINT,SULTAN
PRINTI " looks crestfallen. ""Yes, that's right."" The "
CALL DPRINT,SULTAN
PRINTI " is struck by a thought. ""Can we kill "
CALL HIM-HER
PRINTI " anyway?"" "
CALL HE-SHE,TRUE-VALUE
PRINTI " begins"
CALL ARGUING-WITH-LEGAL-ADVISOR
PRINTR " This might be a good time to make a beeline for the harem to the west."
?ELS38: PRINTI "The "
CALL DPRINT,SULTAN
PRINTI " ignores you."
CRLF
CALL STOP
RSTACK
?ELS19: ZERO? RIDDLE-ANSWERED \?ELS47
CALL TOUCHING?,SULTAN
ZERO? STACK \?THN50
EQUAL? PRSA,V?THROW \?ELS47
EQUAL? PRSI,SULTAN \?ELS47
?THN50: CALL DO-WALK,P?WEST
RSTACK
?ELS47: EQUAL? PRSA,V?SHOW,V?GIVE \?ELS55
EQUAL? PRSO,CODED-MESSAGE \?ELS55
PRINTI """A spy! A spy!"" "
CALL RIDDLE-DEATH
RSTACK
?ELS55: EQUAL? PRSA,V?LISTEN \FALSE
ZERO? RIDDLE-ANSWERED /FALSE
PRINTI "The "
CALL DPRINT,SULTAN
PRINTI " is"
CALL ARGUING-WITH-LEGAL-ADVISOR
CRLF
RTRUE
.FUNCT ARGUING-WITH-LEGAL-ADVISOR
PRINTI " arguing loudly with one of "
CALL HIS-HER
PRINTI " legal advisors."
RTRUE
.FUNCT I-SULTAN
INC 'SULTAN-COUNTER
PRINTI " "
GRTR? SULTAN-COUNTER,1 \?ELS3
EQUAL? SULTAN-COUNTER,4 \?ELS6
PRINTI """Have this bore devoured."" "
CALL RIDDLE-DEATH
JUMP ?CND1
?ELS6: PRINTI """I grow impatient. "
JUMP ?CND1
?ELS3: SET 'AWAITING-REPLY,1
PRINTI """Ah,"" says"
CALL TPRINT,SULTAN
PRINTI ", ""a visitor. This is pleasing; it was turning out to be a very dull morning."" "
CALL HE-SHE,TRUE-VALUE
PRINTI " clears "
CALL HIS-HER
PRINTI " throat. ""The rules: I will pose a riddle. If you answer it correctly, you may spend one hour with any of my "
ZERO? MALE /?ELS13
PRINTI "wive"
JUMP ?CND11
?ELS13: PRINTI "husband"
?CND11: PRINTI "s."
CALL YOU-WILL-DIE,STR?285
CALL YOU-WILL-DIE,STR?286
CALL YOU-WILL-DIE,STR?287
CALL YOU-WILL-DIE,STR?288
CALL YOU-WILL-DIE,STR?289
CALL YOU-WILL-DIE,STR?290
CALL YOU-WILL-DIE,STR?291
PRINTI """ "
CALL HE-SHE,TRUE-VALUE
SET 'AWAITING-REPLY,1
PRINTI " motions to one of the palace eunuchs. ""Go tell the animal tenders not to feed the tigers yet."" Pause. """
?CND1: PRINTR "Are you ready?"""
.FUNCT YOU-WILL-DIE,STRING
PRINTI " If "
PRINT STRING
PRINTI ", you will die."
RTRUE
.FUNCT RIDDLE-DEATH
CALL JIGS-UP,STR?292
RSTACK
.FUNCT I-SNEEZE
CALL QUEUE,I-SNEEZE,-1
INC 'SULTAN-COUNTER
PRINTI " The "
CALL DPRINT,SULTAN
EQUAL? SULTAN-COUNTER,4 \?ELS5
PRINTI " convulses. ""Achoooooo!!!!"" "
CALL RIDDLE-DEATH
RSTACK
?ELS5: EQUAL? SULTAN-COUNTER,3 \?ELS7
PRINTR " is squinting and drawing in quick gasps of air!"
?ELS7: EQUAL? SULTAN-COUNTER,2 \?ELS9
PRINTI " is rubbing "
CALL HIS-HER
PRINTI " nose with the back of "
CALL HIS-HER
PRINTR " hand."
?ELS9: PRINTI " is twitching "
CALL HIS-HER
PRINTR " nose."
.FUNCT RIDDLE-ANSWER
ZERO? P-CONT \?ELS5
ZERO? PRSO \?ELS5
SET 'PRSO,SULTAN
CALL V-TELL
RETURN STR?293
?ELS5: ZERO? P-CONT /?ELS9
GET P-LEXV,P-CONT
EQUAL? STACK,W?RIDDLE /?THN12
ADD P-CONT,2
GET P-LEXV,STACK
EQUAL? STACK,W?RIDDLE \?ELS9
?THN12: SET 'WINNER,SULTAN
CALL PERFORM,V?ANSWER-KLUDGE,RIDDLE
SET 'WINNER,PROTAGONIST
CALL STOP
RSTACK
?ELS9: ZERO? P-CONT /?ELS19
GET P-LEXV,P-CONT
EQUAL? STACK,W?SEX,W?LOVE /?THN16
?ELS19: EQUAL? PRSO,LOVE \?ELS15
?THN16: PRINTI """Good guess! It's wrong, though."" "
CALL RIDDLE-DEATH
RSTACK
?ELS15: PRINTI """Wrongo!"" "
CALL RIDDLE-DEATH
RSTACK
.FUNCT HAREM-F,RARG
EQUAL? RARG,M-LOOK \?ELS5
PRINTI "This is a sensuous location of silks and satins and furs. A draped exit leads east."
FSET? NOSE,MUNGBIT /TRUE
PRINTI " A pleasant odor"
FSET? HERE,SMELLEDBIT \?CND9
PRINTI " of "
GETP HERE,P?ODOR
PRINT STACK
?CND9: PRINTI " tickles mischievously at "
PRINTD NOSE
PRINTI "."
RTRUE
?ELS5: EQUAL? RARG,M-END \?ELS13
IN? SIDEKICK,HERE \?ELS13
CALL QUEUED?,I-HAREM
ZERO? STACK /?ELS13
PRINTI " A "
PRINTD HAREM-GUARD
PRINTI " grabs "
CALL DPRINT-SIDEKICK
PRINTI ". ""You didn't answer the riddle!"" "
CALL TIGER-EATS-SIDEKICK
RSTACK
?ELS13: EQUAL? RARG,M-SMELL \FALSE
PRINT IT-SEEMS-THAT
CALL TPRINT,SULTAN
PRINTI " likes h"
ZERO? MALE /?ELS20
PRINTI "is wives"
JUMP ?CND18
?ELS20: PRINTI "er husbands"
?CND18: PRINTI " to wear fine "
GETP HERE,P?ODOR
PRINT STACK
PRINTI "."
RTRUE
.FUNCT TIGER-EATS-SIDEKICK
REMOVE SIDEKICK
SET 'FOLLOW-FLAG,2
CALL QUEUE,I-FOLLOW,2
SET 'SIDEKICK-EATEN,TRUE-VALUE
CALL DPRINT-SIDEKICK
PRINTI " is led away. As you hear, from nearby, a fierce roar followed by a blood-curdling scream"
CALL MEMORIAM
RSTACK
.FUNCT I-HAREM
EQUAL? HERE,HAREM \FALSE
PRINTI " A figure, completely cloaked in veils of silk, enters and beckons you deeper into the harem"
PRINT ELLIPSIS
CALL GOTO,INNER-HAREM
CALL THIS-IS-IT,SULTANS-WIFE
FCLEAR SULTANS-WIFE,NDESCBIT
CALL QUEUE,I-HOUR,60
PRINTI " "
CALL DPRINT,SULTANS-WIFE
ZERO? NAUGHTY-LEVEL \?ELS10
PRINTR " sits down at the far end of the room."
?ELS10: PRINTI " touches a button at the shoulder of "
CALL HER-HIS
PRINTI " tunic and it slowly floats to the floor. "
CALL SHE-HE,TRUE-VALUE
PRINTR " pulls you down onto the furs, whispering in a husky voice, ""For an hour, I am yours."""
.FUNCT I-HOUR
EQUAL? HERE,INNER-HAREM \FALSE
PRINTI " ""The hour is over,"" sighs "
CALL DPRINT,SULTANS-WIFE
PRINTI ", reluctantly leading you out of the "
PRINTD HERE
PRINT ELLIPSIS
CALL GOTO,HAREM
RSTACK
.FUNCT HAREM-OBJECT-F
EQUAL? PRSA,V?BOARD,V?WALK-TO,V?ENTER \?ELS5
EQUAL? HERE,AUDIENCE-CHAMBER \?ELS10
CALL DO-WALK,P?WEST
RSTACK
?ELS10: EQUAL? HERE,HAREM,INNER-HAREM \FALSE
PRINT LOOK-AROUND
RTRUE
?ELS5: EQUAL? PRSA,V?DISEMBARK,V?EXIT,V?LEAVE \?ELS14
EQUAL? HERE,AUDIENCE-CHAMBER \?ELS19
PRINT LOOK-AROUND
RTRUE
?ELS19: CALL DO-WALK,P?OUT
RSTACK
?ELS14: EQUAL? PRSA,V?EXAMINE \?ELS23
EQUAL? HERE,AUDIENCE-CHAMBER /?ELS23
CALL V-LOOK
RSTACK
?ELS23: EQUAL? PRSA,V?SMELL \?ELS27
EQUAL? HERE,AUDIENCE-CHAMBER /?ELS27
CALL PERFORM-PRSA,ODOR
RTRUE
?ELS27: EQUAL? PRSA,V?SEARCH \FALSE
PRINT NOTHING-NEW
RTRUE
.FUNCT INNER-HAREM-F,RARG
EQUAL? RARG,M-LOOK \FALSE
PRINTI "This luxurious bedroom, presumably one of many throughout the harem, is appointed with a multitude of exotic furs, warm to the touch as though still alive. "
FSET? NOSE,MUNGBIT /?CND6
PRINTI "The heady aroma of "
GETP HAREM,P?ODOR
PRINT STACK
PRINTI " and incense mingle in the air. "
?CND6: PRINTI "There's an exit to the southeast"
ZERO? CATACOMBS-OPEN /?CND9
PRINTI " and a secret passage leads downward"
?CND9: PRINTI "."
RTRUE
.FUNCT INNER-HAREM-EXIT-F
CALL ULTIMATELY-IN?,MAP
ZERO? STACK /?ELS5
CALL VISIBLE?,MAP
ZERO? STACK /?ELS5
PRINTI "As"
CALL TPRINT,SULTANS-WIFE
CALL JIGS-UP,STR?294
RSTACK
?ELS5: RETURN HAREM
.FUNCT SULTANS-WIFE-F,OARG=0
ZERO? OARG /?ELS5
EQUAL? OARG,M-OBJDESC? /TRUE
PRINTI " "
CALL DPRINT,SULTANS-WIFE
PRINTI " is here"
ZERO? NAUGHTY-LEVEL /?CND10
PRINTI ", lying seductively naked on a bed of furs"
?CND10: PRINTI "."
RTRUE
?ELS5: EQUAL? WINNER,SULTANS-WIFE \?ELS14
EQUAL? PRSA,V?KISS \?ELS23
EQUAL? PRSO,KNEECAPS \?ELS23
ZERO? CATACOMBS-OPEN /?THN20
?ELS23: EQUAL? PRSA,V?KISS-ON \?ELS19
EQUAL? PRSO,ME \?ELS19
EQUAL? PRSI,KNEECAPS \?ELS19
ZERO? CATACOMBS-OPEN \?ELS19
?THN20: EQUAL? CHOICE-NUMBER,WIFE-NUMBER \?ELS30
MOVE MAP,HERE
MOVE TORCH,HERE
CALL QUEUE,I-TORCH,23
CALL DEQUEUE,I-HOUR
SET 'CATACOMBS-OPEN,TRUE-VALUE
CALL OPEN-EYES-AND-REMOVE-HANDS
PRINTI """Oh,"" whispers "
CALL DPRINT,SULTANS-WIFE
PRINTI ", ""you're from the rebels! Here's"
CALL TPRINT,MAP
PRINTI ","" "
CALL SHE-HE
PRINTI " says, laying"
CALL APRINT,MAP
PRINTI " at your feet, ""and here's"
CALL APRINT,TORCH
PRINTI ","" "
CALL SHE-HE
PRINTI " says, lighting"
CALL APRINT,TORCH
PRINTI " and placing it next to the map. "
CALL SHE-HE,TRUE-VALUE
PRINTI " moves some furs to reveal a secret entrance leading downwards. ""The only way out is through the catacombs -- if you come back this way with"
CALL TPRINT,MAP
PRINTI ","
CALL TPRINT,HAREM-GUARD
PRINTR "s will..."""
?ELS30: PRINTR """I'm not into that kinky stuff."""
?ELS19: EQUAL? PRSA,V?FUCK,V?SUCK,V?KISS /?THN37
EQUAL? PRSA,V?BLOW,V?LICK,V?EAT /?THN37
EQUAL? PRSA,V?TOUCH,V?TAKE \?ELS34
?THN37: ZERO? NAUGHTY-LEVEL \?ELS34
EQUAL? PRSO,COCK,ME \?ELS34
SET 'WINNER,PROTAGONIST
CALL PERFORM,V?FUCK,SULTANS-WIFE
SET 'WINNER,SULTANS-WIFE
RTRUE
?ELS34: EQUAL? PRSA,V?KISS \?ELS40
EQUAL? PRSO,ME \?ELS40
SET 'WINNER,PROTAGONIST
CALL PERFORM-PRSA,SULTANS-WIFE
SET 'WINNER,SULTANS-WIFE
RTRUE
?ELS40: EQUAL? PRSA,V?TAKE,V?FUCK \?ELS44
EQUAL? PRSO,ME \?ELS44
SET 'WINNER,PROTAGONIST
CALL PERFORM,V?FUCK,SULTANS-WIFE
SET 'WINNER,SULTANS-WIFE
RTRUE
?ELS44: EQUAL? PRSA,V?BLOW,V?LICK,V?EAT /?THN51
EQUAL? PRSA,V?SUCK \?ELS48
?THN51: EQUAL? PRSO,COCK,ME \?ELS48
EQUAL? NAUGHTY-LEVEL,1 \?ELS57
PRINT MISSIONARY-ONLY
RTRUE
?ELS57: CALL DPRINT,SULTANS-WIFE
PRINTI " nods eagerly and slides downward. Skillful tongue-work soon has you squirming on the edge of orgasm... Eventually, spent and satisfied, you take "
CALL DPRINT,SULTANS-WIFE
PRINTR " lovingly into your arms."
?ELS48: EQUAL? PRSA,V?WHAT \?ELS65
EQUAL? PRSO,LGOP /?THN62
?ELS65: EQUAL? PRSA,V?TELL-ABOUT \?ELS61
EQUAL? PRSO,ME \?ELS61
EQUAL? PRSI,LGOP \?ELS61
?THN62: PRINTR """That's the code name of the cadre who lead the rebel underground. It is said they have pledged their lives and souls to the revolution!"""
?ELS61: PRINTI """Shhh... "
ZERO? NAUGHTY-LEVEL \?ELS74
PRINTI "It's past bedtime for the children of"
CALL TPRINT,SULTAN
PRINTI "! You'll wake them!"""
CRLF
CALL STOP
RSTACK
?ELS74: PRINTI "Let "
PRINTD YOUR-BODY
PRINTI " do the talking,"" says "
CALL DPRINT,SULTANS-WIFE
PRINTI ", reaching out toward you."
CRLF
CALL STOP
RSTACK
?ELS14: CALL WRONG-SEX-WORD,SULTANS-WIFE,W?WIFE,W?HUSBAND
ZERO? STACK /?ELS78
CALL STOP
RSTACK
?ELS78: EQUAL? PRSA,V?THANK \?ELS80
ZERO? CATACOMBS-OPEN /?ELS80
CALL DPRINT,SULTANS-WIFE
PRINTR " gives you a grand salute. ""For the revolution!"""
?ELS80: EQUAL? PRSA,V?FUCK,V?TOUCH,V?KISS /?THN87
EQUAL? PRSA,V?TAKE \?ELS84
?THN87: ZERO? NAUGHTY-LEVEL \?ELS84
PRINTI "Instead, you decide to get to know "
CALL DPRINT,SULTANS-WIFE
PRINTI " better, so you engage "
CALL HER-HIM
PRINTI " in a stimulating discussion about "
CALL PICK-ONE,DISCUSSION-TOPICS
PRINT STACK
CRLF
RTRUE
?ELS84: EQUAL? PRSA,V?EAT \?ELS90
ZERO? NAUGHTY-LEVEL \?ELS95
CALL V-FUCK
RSTACK
?ELS95: EQUAL? NAUGHTY-LEVEL,1 \?ELS97
PRINT MISSIONARY-ONLY
RTRUE
?ELS97: CALL DPRINT,PRSO
PRINTI " arches "
CALL HER-HIS
PRINTR " body to meet you, passionately stroking your neck and shoulders."
?ELS90: EQUAL? PRSA,V?UNDRESS \?ELS101
ZERO? NAUGHTY-LEVEL /?ELS101
CALL SHE-HE,TRUE-VALUE
PRINTR " is!"
?ELS101: EQUAL? PRSA,V?DRESS \?ELS105
PRINTR "You must be from Massachusetts."
?ELS105: EQUAL? PRSA,V?TAKE,V?TOUCH,V?KISS \?ELS107
CALL DPRINT,SULTANS-WIFE
PRINTR " moans softly and draws closer to you."
?ELS107: EQUAL? PRSA,V?FUCK \?ELS109
ZERO? WIFE-FUCKED /?CND110
PRINTR "You shouldn't wear yourself out. [Besides, do you think there's infinite room on this disk for long, lurid descriptions of sex acts?]"
?CND110: SET 'WIFE-FUCKED,TRUE-VALUE
CALL DPRINT,SULTANS-WIFE
PRINTI " draws you into "
CALL HER-HIS
PRINTI " arms. "
EQUAL? NAUGHTY-LEVEL,2 \?CND114
PRINTI "As "
PRINTD HANDS
PRINTI "s explore h"
ZERO? MALE /?ELS119
PRINTI "er soft, rounded"
JUMP ?CND117
?ELS119: PRINTI "is firm, strong"
?CND117: PRINTI " body, a faint sweaty, musky odor triggers a passionate fire within you, and you find yourself "
ZERO? MALE /?ELS125
PRINTI "ris"
JUMP ?CND123
?ELS125: PRINTI "warm"
?CND123: PRINTI "ing to the occasion. Your lovemaking is slow and gentle, and as you reach a crescendo of pleasure, you cry out softly, passionately, and repeatedly. ""Oh,"" moans "
CALL DPRINT,SULTANS-WIFE
PRINTI ", ""say my number again ... say it in French..."""
CRLF
?CND114: PRINTI "Much later, you and "
CALL DPRINT,SULTANS-WIFE
PRINTR " fall back upon the furs, basking in the aura of postcoital bliss."
?ELS109: EQUAL? PRSA,V?MARRY \?ELS130
PRINTI "But "
CALL DPRINT,PRSO
PRINTR " is already married!"
?ELS130: EQUAL? PRSA,V?MEASURE \?ELS132
ZERO? MALE /?ELS135
PRINTI "36-24-36"
JUMP ?CND133
?ELS135: ZERO? NAUGHTY-LEVEL \?ELS138
PRINTI "Tall"
JUMP ?CND133
?ELS138: EQUAL? NAUGHTY-LEVEL,1 \?ELS140
PRINTI "Long"
JUMP ?CND133
?ELS140: PRINTI "Ten delicious inches"
?CND133: PRINT PERIOD-CR
RTRUE
?ELS132: EQUAL? PRSA,V?EXAMINE \?ELS144
ZERO? NAUGHTY-LEVEL /?ELS144
PRINTI "A mere glance at the succulent, sexy body of "
CALL DPRINT,SULTANS-WIFE
PRINTI " is enough to "
EQUAL? NAUGHTY-LEVEL,1 \?ELS149
PRINTI "really turn you on"
JUMP ?CND147
?ELS149: ZERO? MALE /?ELS151
PRINTI "give you an instant hard-on"
JUMP ?CND147
?ELS151: PRINTI "get you all moist and randy"
?CND147: PRINT PERIOD-CR
RTRUE
?ELS144: EQUAL? PRSA,V?SMELL \FALSE
CALL SHE-HE,TRUE-VALUE
PRINTI " smells of "
GETP HAREM,P?ODOR
PRINT STACK
PRINT PERIOD-CR
RTRUE
.FUNCT TORCH-F
EQUAL? PRSA,V?OFF \?ELS5
FSET? TORCH,ONBIT \?ELS5
CALL TORCH-OFF
PRINT PFFT
RTRUE
?ELS5: EQUAL? PRSA,V?ON \?ELS9
FSET? TORCH,ONBIT /?ELS9
CALL PERFORM,V?BURN,TORCH
RTRUE
?ELS9: EQUAL? PRSA,V?BURN \?ELS13
EQUAL? PRSO,TORCH \?ELS13
FSET? TORCH,ONBIT \?ELS13
CALL PERFORM,V?ON,TORCH
RTRUE
?ELS13: EQUAL? PRSA,V?PUT-ON,V?PUT \?ELS17
FSET? TORCH,ONBIT \?ELS17
EQUAL? PRSI,TRELLIS,BARGE \?ELS17
FSET? PRSI,UNTEEDBIT /?ELS17
PRINTI "The "
PRINTD PRSI
PRINTR " would burn!"
?ELS17: EQUAL? PRSA,V?PUT \FALSE
EQUAL? PRSI,WATER,CANAL \FALSE
FSET? TORCH,ONBIT \FALSE
CALL TORCH-OFF
PRINT PFFT
RTRUE
.FUNCT TORCH-OFF
CALL DEQUEUE,I-TORCH
FCLEAR TORCH,ONBIT
FCLEAR TORCH,LIGHTBIT
PUTP TORCH,P?SDESC,STR?302
FSET TORCH,VOWELBIT
RTRUE
.FUNCT I-TORCH
DEC 'TORCH-LIFE
ZERO? TORCH-LIFE \?ELS3
CALL TORCH-OFF
JUMP ?CND1
?ELS3: MUL TORCH-LIFE,6
CALL QUEUE,I-TORCH,STACK
?CND1: CALL VISIBLE?,TORCH
ZERO? STACK /FALSE
FSET? EYES,MUNGBIT /FALSE
EQUAL? HAND-COVER,EYES /FALSE
PRINTI " "
ZERO? TORCH-LIFE \?ELS13
PRINT PFFT
CALL NOW-DARK?
RFALSE
?ELS13: PRINTI "The torch is noticeably dimmer."
CRLF
RFALSE
.FUNCT MAP-F
EQUAL? PRSA,V?EXAMINE,V?READ \FALSE
FSET? PRSO,UNTEEDBIT /FALSE
CALL IN-YOUR-PACKAGE,STR?304
CRLF
RTRUE
.FUNCT CATACOMBS-ENTER-F
ZERO? CATACOMBS-OPEN /?ELS5
CALL QUEUE,I-BEETLES,6
CALL QUEUE,I-CRABS,10
CALL QUEUE,I-GATOR,12
PRINTI "As you leave, "
ZERO? NAUGHTY-LEVEL \?ELS9
CALL PERFORM,V?THANK,SULTANS-WIFE
CRLF
RETURN CATACOMBS
?ELS9: CALL DPRINT,SULTANS-WIFE
ZERO? MALE /?ELS14
PRINTI " throws herself into your arms. Her ample bosom presses against your chest as she whispers into your ear, ""Please, oh, please be careful down there!"" Sh"
JUMP ?CND12
?ELS14: PRINTI " gathers you into his powerful arms. Nibbling tenderly on your neck, he whispers, ""Be wary -- the catacombs are dangerous."" H"
?CND12: PRINTI "e kisses you longingly, but eventually you descend, reluctantly, into the gloom of the catacombs"
PRINT ELLIPSIS
RETURN CATACOMBS
?ELS5: PRINT CANT-GO
RFALSE
.FUNCT CATACOMBS-F,RARG
EQUAL? RARG,M-LOOK \?ELS5
PRINTI "You're at a junction within an ancient, crumbling catacomb. Your "
CALL ULTIMATELY-IN?,TORCH
ZERO? STACK /?CND6
FSET? TORCH,ONBIT \?CND6
PRINTI "torch"
?CND6: PRINTI "light pierces the gloom for only a few feet in each direction. "
PRINT CATACOMBS-WATER-DESC
RTRUE
?ELS5: EQUAL? RARG,M-END \FALSE
ZERO? SIDEKICK-EATEN /FALSE
MOVE SIDEKICK,HERE
SET 'SIDEKICK-EATEN,FALSE-VALUE
PRINTI " ""Yo!"" says "
CALL DPRINT-SIDEKICK
PRINTI ", tapping your shoulder. ""Looked like my number was up that time! Would've been, if those dimension-hopping midgets hadn't come through at the right moment. Good thing the tiger cage leads to the catacombs, eh?"" "
CALL HE-SHE,TRUE-VALUE
PRINTI " brushes a stray patch of fur off "
CALL HIS-HER
PRINTR " shoulder."
.FUNCT CATACOMBS-MOVEMENT-F,DIR-OFFSET,TABLE-VALUE
ZERO? LIT \?CND1
CALL JIGS-UP,STR?305
?CND1: EQUAL? PRSO,P?NORTH \?ELS8
PUSH 0
JUMP ?CND4
?ELS8: EQUAL? PRSO,P?NE \?ELS10
PUSH 1
JUMP ?CND4
?ELS10: EQUAL? PRSO,P?EAST \?ELS12
PUSH 2
JUMP ?CND4
?ELS12: EQUAL? PRSO,P?SE \?ELS14
PUSH 3
JUMP ?CND4
?ELS14: EQUAL? PRSO,P?SOUTH \?ELS16
PUSH 4
JUMP ?CND4
?ELS16: EQUAL? PRSO,P?SW \?ELS18
PUSH 5
JUMP ?CND4
?ELS18: EQUAL? PRSO,P?WEST \?ELS20
PUSH 6
JUMP ?CND4
?ELS20: EQUAL? PRSO,P?NW \?ELS22
PUSH 7
JUMP ?CND4
?ELS22: EQUAL? PRSO,P?UP \?ELS24
PUSH 8
JUMP ?CND4
?ELS24: PUSH 9
?CND4: SET 'DIR-OFFSET,STACK
SUB CATACOMBS-LOC,1
MUL STACK,10
ADD STACK,DIR-OFFSET
GET CATACOMBS-TABLE,STACK >TABLE-VALUE
PRINTI "You wade into the gloom ... and find "
ZERO? TABLE-VALUE \?ELS31
EQUAL? PRSO,P?DOWN,P?UP \?ELS34
PRINTI "a severe paucity of passages leading "
EQUAL? PRSO,P?UP \?ELS37
PRINTI "up"
JUMP ?CND32
?ELS37: PRINTI "down"
JUMP ?CND32
?ELS34: PRINTI "yourself face to face with a blank wall"
?CND32: PRINT PERIOD-CR
RFALSE
?ELS31: PRINTI "a "
EQUAL? PRSO,P?DOWN,P?UP \?ELS46
PRINTI "hidden passage leading "
EQUAL? PRSO,P?UP \?ELS49
PRINTI "up"
JUMP ?CND47
?ELS49: PRINTI "down"
?CND47: PRINTI "wards."
JUMP ?CND44
?ELS46: PRINTI "dark and winding tunnel."
?CND44: EQUAL? TABLE-VALUE,99 \?ELS58
PRINTI " Unfortunately, you soon come to a point where the tunnel has collapsed, hopelessly blocking your way."
CRLF
RFALSE
?ELS58: EQUAL? TABLE-VALUE,80 \?ELS60
PRINTI " Unfortunately, it's too steep and slippery."
CRLF
RFALSE
?ELS60: CRLF
CRLF
EQUAL? TABLE-VALUE,40 \?ELS67
RETURN FORGOTTEN-STOREHOUSE
?ELS67: EQUAL? TABLE-VALUE,50 \?ELS69
RETURN WELL-BOTTOM
?ELS69: EQUAL? TABLE-VALUE,60 \?ELS71
RETURN LADDER-ROOM
?ELS71: EQUAL? TABLE-VALUE,70 \?ELS73
RETURN BURIAL-CHAMBER
?ELS73: SET 'CATACOMBS-LOC,TABLE-VALUE
CALL DESCRIBE-ROOM
IN? SIDEKICK,HERE \?CND76
CALL SIDEKICK-FOLLOWS-YOU
RETURN ROOMS
?CND76: RETURN ROOMS
.FUNCT PHONE-BOOK-F
EQUAL? PRSA,V?OPEN,V?LOOK-INSIDE,V?READ \?ELS5
PRINTR "How useful. Now you know how many Smiths live in Cleveland."
?ELS5: EQUAL? PRSA,V?CLOSE \?ELS7
PRINTR "It is."
?ELS7: EQUAL? PRSA,V?TAKE \FALSE
FSET? PHONE-BOOK,TOUCHBIT /FALSE
FSET PHONE-BOOK,TOUCHBIT
CALL INCREMENT-SCORE,13,26,TRUE-VALUE
RFALSE
.FUNCT WELL-BOTTOM-EXIT-F
EQUAL? PRSO,P?EAST \?ELS3
SET 'CATACOMBS-LOC,21
RETURN CATACOMBS
?ELS3: SET 'CATACOMBS-LOC,22
RETURN CATACOMBS
.FUNCT WELL-BOTTOM-LOOP-F
CALL DESCRIBE-ROOM
IN? SIDEKICK,HERE \FALSE
CALL NORMAL-SIDEKICK-FOLLOW
RFALSE
.FUNCT LADDER-ROOM-EXIT-F
PRINTI "You climb for a seemingly endless time, with the ladder becoming increasingly rickety. Suddenly a rung snaps, and you tumble into the darkness! You bounce painfully into a slanted ventilation shaft, slide through a wooden grating, and land amidst thousands of silk "
ZERO? MALE /?ELS3
PRINTI "brassieres"
JUMP ?CND1
?ELS3: PRINTI "jockstraps"
?CND1: PRINT PERIOD-CR
CRLF
RETURN LAUNDRY-ROOM
.FUNCT LADDER-F
EQUAL? PRSA,V?CLIMB-UP,V?CLIMB \FALSE
CALL DO-WALK,P?UP
RSTACK
.FUNCT RAFT-F,OARG=0,NUM=0
ZERO? OARG /?ELS5
FSET? RAFT,TOUCHBIT /?ELS11
EQUAL? OARG,M-OBJDESC? /TRUE
PRINTI " On the other hand, another Sultan had a considerably more modest vision of the afterlife, bringing only a simple rubber life raft."
RTRUE
?ELS11: ZERO? RAFT-HELD /?ELS16
EQUAL? OARG,M-OBJDESC? /TRUE
PRINTI " There is a raft here, which you're keeping a hand on."
RTRUE
?ELS16: EQUAL? HERE,CANAL \FALSE
EQUAL? OARG,M-OBJDESC? /TRUE
PRINTI " A raft is floating nearby."
RTRUE
?ELS5: EQUAL? HERE,CANAL \?ELS29
IN? PROTAGONIST,BARGE \?ELS29
IN? RAFT,CANAL \?ELS29
EQUAL? RAFT-LOC-NUM,BARGE-LOC-NUM /?ELS29
CALL CANT-SEE,RAFT
RSTACK
?ELS29: FSET? RAFT,UNTEEDBIT /FALSE
EQUAL? PRSA,V?SINK \?ELS35
ZERO? RAFT-HELD \?THN41
EQUAL? HERE,CANAL \?ELS40
IN? PROTAGONIST,RAFT \?ELS40
?THN41: CALL PERFORM,V?DEFLATE,RAFT
RTRUE
?ELS40: PRINTR "It's not even in water!"
?ELS35: EQUAL? PRSA,V?PUT \?ELS48
CALL IN-CATACOMBS
ZERO? STACK /?ELS48
EQUAL? PRSI,WATER \?ELS48
CALL PERFORM,V?DROP,RAFT
RTRUE
?ELS48: EQUAL? PRSA,V?THROW,V?DROP \?ELS52
EQUAL? PRSO,RAFT \?ELS52
CALL IN-CATACOMBS
ZERO? STACK /?ELS52
REMOVE RAFT
PRINTR "The raft floats into the darkness. Oh, well, easy come, easy go."
?ELS52: EQUAL? PRSA,V?DROP \?ELS56
ZERO? RAFT-HELD /?ELS56
SET 'RAFT-HELD,FALSE-VALUE
MOVE RAFT,CANAL
CALL SET-RAFT-LOC
CALL QUEUE,I-CANAL,-1
PRINTI "The raft "
EQUAL? HERE,CANAL \?ELS63
ZERO? BARGE-UNDER-POWER /?ELS66
PRINTI "is left behind in the wake of"
JUMP ?CND64
?ELS66: SET 'RAFT-WAIT,BARGE-WAIT
PRINTI "floats along beside"
?CND64: PRINTR " the barge."
?ELS63: PRINTR "is swept away."
?ELS56: EQUAL? PRSA,V?TAKE \?ELS73
EQUAL? PRSO,RAFT \?ELS73
FSET? RAFT,TOUCHBIT /?ELS73
FSET RAFT,TOUCHBIT
CALL INCREMENT-SCORE,8,3
RFALSE
?ELS73: EQUAL? PRSA,V?TAKE \?ELS77
IN? YOUR-BODY,RAFT /?THN80
IN? SIDEKICKS-BODY,RAFT \?ELS77
?THN80: PRINTR "It's too heavy."
?ELS77: EQUAL? PRSA,V?BOARD \?ELS83
IN? RAFT,BARGE \?ELS88
PRINTI "Hrumph! There's no reason to board the raft inside the barge! "
CALL PERFORM,V?SINK,BARGE
RTRUE
?ELS88: IN? RAFT,ODD-MACHINE \?ELS90
CALL DO-FIRST,STR?314,ODD-MACHINE
RSTACK
?ELS90: CALL ULTIMATELY-IN?,RAFT,MALE-GORILLA
ZERO? STACK \?THN93
CALL ULTIMATELY-IN?,RAFT,FEMALE-GORILLA
ZERO? STACK /?ELS92
?THN93: CALL NOT-ON-GROUND,RAFT
RSTACK
?ELS92: ZERO? RAFT-HELD \?THN99
IN? RAFT,CANAL \FALSE
?THN99: IN? PROTAGONIST,RAFT /FALSE
CALL QUEUE,I-CANAL,-1
CALL SET-RAFT-LOC
EQUAL? HERE,MY-KIND-OF-DOCK \?ELS103
SET 'NEARER-DOCK,MY-KIND-OF-DOCK
JUMP ?CND101
?ELS103: SET 'NEARER-DOCK,ABANDONED-DOCK
?CND101: GRTR? BARGE-LOC-NUM,RAFT-LOC-NUM \?CND106
IN? BARGE,CANAL \?CND106
SET 'BARGE-LOC-NUM,36
MOVE BARGE,ICY-DOCK
?CND106: PRINTI "As you"
CALL AND-SIDEKICK,RAFT
PRINTI " board the raft, "
EQUAL? HERE,CANAL \?ELS113
PRINTI "it begins drifting away from the barge"
ZERO? BARGE-UNDER-POWER /?CND111
CALL BARGE-FORGES-AHEAD
JUMP ?CND111
?ELS113: PRINTI "the current sweeps it away from the dock"
?CND111: PRINT PERIOD-CR
ZERO? BARGE-WAIT /?ELS122
EQUAL? RAFT-LOC-NUM,BARGE-LOC-NUM \?ELS122
SET 'RAFT-WAIT,TRUE-VALUE
JUMP ?CND120
?ELS122: SET 'RAFT-WAIT,FALSE-VALUE
?CND120: SET 'RAFT-HELD,FALSE-VALUE
MOVE RAFT,CANAL
EQUAL? HERE,CANAL \?ELS131
MOVE PROTAGONIST,RAFT
RTRUE
?ELS131: CRLF
CALL GOTO,RAFT
RSTACK
?ELS83: EQUAL? PRSA,V?STAND-ON \?ELS135
CALL PERFORM,V?BOARD,RAFT
RTRUE
?ELS135: EQUAL? PRSA,V?KILL,V?MUNG,V?DEFLATE \?ELS137
FSET? RAFT,MUNGBIT \?ELS142
PRINT ALREADY-IS
RTRUE
?ELS142: PRINTI """Phssss."""
ZERO? RAFT-HELD \?THN150
IN? RAFT,CANAL \?ELS149
?THN150: PRINTI " The raft sinks"
IN? PROTAGONIST,RAFT \?ELS156
CALL JIGS-UP,STR?315
RSTACK
?ELS156: SET 'RAFT-HELD,FALSE-VALUE
REMOVE RAFT
PRINT PERIOD-CR
RTRUE
?ELS149: FSET RAFT,MUNGBIT
PUTP RAFT,P?SDESC,STR?316
CRLF
RTRUE
?ELS137: EQUAL? PRSA,V?INFLATE \?ELS162
FSET? RAFT,MUNGBIT \?ELS167
PRINTR "Without a pump? Forget it."
?ELS167: PRINT ALREADY-IS
RTRUE
?ELS162: EQUAL? PRSA,V?SHAKE \?ELS171
EQUAL? HERE,CANAL \?ELS171
IN? PROTAGONIST,RAFT \?ELS171
CALL SHAKE-BOAT
RSTACK
?ELS171: EQUAL? PRSA,V?PUSH-DIR \?ELS175
EQUAL? PRSI,INTDIR \?ELS175
IN? PROTAGONIST,RAFT \?ELS182
EQUAL? P-PRSA-WORD,W?MOVE /?ELS182
PRINTR "You're in it!"
?ELS182: IN? RAFT,CANAL \?ELS186
PRINT NO-STEERING
RTRUE
?ELS186: CALL DO-WALK,P-DIRECTION
MOVE RAFT,HERE
RTRUE
?ELS175: EQUAL? PRSA,V?SET \?ELS190
IN? RAFT,CANAL \?ELS190
PRINT NO-STEERING
RTRUE
?ELS190: EQUAL? PRSA,V?LAND \FALSE
PRINTR "Try grabbing a dock."
.FUNCT I-BEETLES
CALL IN-CATACOMBS
ZERO? STACK /FALSE
CALL QUEUE,I-BEETLES,6
IN? PROTAGONIST,HERE \?ELS8
RANDOM CATACOMBS-LOC >CATACOMBS-LOC
IN? SIDEKICK,HERE \?CND9
MOVE SIDEKICK,CATACOMBS
?CND9: MOVE PROTAGONIST,CATACOMBS
SET 'HERE,CATACOMBS
FSET CATACOMBS,MUNGBIT
CALL OPEN-EYES-AND-REMOVE-HANDS
PRINTR " Suddenly the water explodes with life! A swarm of the nastiest beetles this side of Pluto starts munching your flesh. You escape by running blindly through the catacombs, completely losing track of your location."
?ELS8: CALL HARMLESS-SNAP,STR?317
RSTACK
.FUNCT I-CRABS,OBJ
CALL IN-CATACOMBS
ZERO? STACK /FALSE
CALL QUEUE,I-CRABS,10
IN? PROTAGONIST,HERE \?ELS8
CALL OPEN-EYES-AND-REMOVE-HANDS
FSET CATACOMBS,MUNGBIT
PRINTI " You feel an intense pain, like a tuft of hair being yanked out -- except that it's coming from your feet, and in about a hundred places. As you flail at the pack of Martian sand crabs, the splashing startles them away"
FIRST? PROTAGONIST >OBJ \?ELS13
EQUAL? OBJ,GARMENT,COMIC-BOOK /?ELS13
EQUAL? OBJ,TORCH \?CND16
NEXT? TORCH \?CND16
NEXT? TORCH >OBJ /?KLU25
?KLU25:
?CND16: PRINTI ", but during the struggle you seem to have lost your "
CALL DPRINT,OBJ
PRINT PERIOD-CR
REMOVE OBJ
CALL NOW-DARK?
RSTACK
?ELS13: PRINT PERIOD-CR
RTRUE
?ELS8: CALL HARMLESS-SNAP,STR?318
RSTACK
.FUNCT I-GATOR
CALL IN-CATACOMBS
ZERO? STACK /FALSE
IN? PROTAGONIST,HERE \?ELS8
CALL JIGS-UP,STR?319
RSTACK
?ELS8: CALL QUEUE,I-GATOR,12
CALL HARMLESS-SNAP,STR?320
RSTACK
.FUNCT HARMLESS-SNAP,STRING
PRINTI " The calm water is suddenly shattered by the jaws of a huge Martian "
PRINT STRING
PRINTR " snapping harmlessly toward you. Good thing you were in the raft."
.FUNCT MARTIAN-DESSERT-EXIT-F
FSET? MARTIAN-DESSERT,MUNGBIT /?CND1
FSET MARTIAN-DESSERT,MUNGBIT
PRINTI "I guess the paths aren't a mirage..."
CRLF
CRLF
?CND1: EQUAL? PRSO,P?NW \?ELS8
RETURN RUINED-CASTLE-2
?ELS8: RETURN OASIS
.FUNCT WATTZ-UPP-DOCK-ENTER-F
PUTP HOLE,P?SDESC,STR?132
RETURN WATTZ-UPP-DOCK
.FUNCT MARTIAN-DESSERT-ENTER-F
PUTP HOLE,P?SDESC,STR?132
RETURN MARTIAN-DESSERT
.FUNCT CIRCLE-ISNT-BLACK
ZERO? CIRCLE-BLACK \FALSE
EQUAL? HERE,OASIS \FALSE
RTRUE
.FUNCT OASIS-F,RARG
EQUAL? RARG,M-ENTER \?ELS5
ZERO? CIRCLE-BLACK \?ELS5
PUTP HOLE,P?SDESC,STR?323
RTRUE
?ELS5: EQUAL? RARG,M-LOOK \?ELS9
PRINTI "This is a remarkable sight on arid Mars -- subsurface water bubbling up in a fountain, flowing around"
CALL APRINT,HOLE
PRINTI ", and soaking into the thirsty sand. A path curves east around the "
PRINTD DUNES
CALL UNCHARTABLE-DESERT,STR?258
RSTACK
?ELS9: EQUAL? RARG,M-END \FALSE
ZERO? SIDEKICK-DROWNED /?CND12
MOVE SIDEKICK,HERE
SET 'SIDEKICK-DROWNED,FALSE-VALUE
PRINTI " Like a wet watermelon seed being squirted from between two fingers, "
CALL DPRINT-SIDEKICK
PRINTI " is ejected from the fountain and lands in a dripping heap at your feet. ""Good thing I'm so good at holding my breath,"" "
CALL HE-SHE
PRINTI " says."
CRLF
?CND12: ZERO? CIRCLE-FADED \FALSE
SET 'CIRCLE-FADED,TRUE-VALUE
SET 'CIRCLE-BLACK,FALSE-VALUE
PUTP HOLE,P?SDESC,STR?323
PRINTR " Inexplicably, the circle fades before your very eyes, slowly going from black to white."
.FUNCT ICY-DOCK-F,RARG
EQUAL? RARG,M-ENTER \?ELS5
FSET? ICY-DOCK,TOUCHBIT /?ELS5
CALL RUNNING?,I-ION-DEATH
ZERO? STACK \?ELS5
CALL INCREMENT-SCORE,4,14
RSTACK
?ELS5: EQUAL? RARG,M-END \FALSE
IN? SIDEKICK,HERE \FALSE
SET 'FOLLOW-FLAG,3
CALL QUEUE,I-FOLLOW,2
REMOVE SIDEKICK
SET 'SIDEKICK-DROWNED,TRUE-VALUE
PRINTI " With a whoop of surprise, "
CALL DPRINT-SIDEKICK
PRINTI " loses "
CALL HIS-HER
PRINTI " footing on the ice, skids right into the canal, and is immediately dragged under by the strong current produced by the underwater teleporters. You search frantically for any sign of "
CALL HIM-HER
PRINTI ", but after several agonizingly long minutes you abandon all hope. As you gaze across "
CALL DPRINT-SIDEKICK
PRINTI "'s watery grave"
CALL MEMORIAM
RSTACK
.FUNCT TUNDRA-F,RARG
EQUAL? RARG,M-LOOK \FALSE
PRINTI "This snowy plain is barren of all signs of life. Drifts block travel in all directions but north, south and southeast. It's pretty cold, but nothing a tough g"
ZERO? MALE /?ELS8
PRINTI "uy"
JUMP ?CND6
?ELS8: PRINTI "al"
?CND6: PRINTI " like yourself can't stand."
RTRUE
.FUNCT PENGUIN-PARK-F,RARG
EQUAL? RARG,M-LOOK \FALSE
PRINTI "Even on Mars, one could hardly expect a polar visit without seeing penguins. Well, here they are! A whole waddling mass of them, "
ZERO? PENGUINS-PARTED /?ELS8
PRINTI "standing politely on either side of"
JUMP ?CND6
?ELS8: PRINTI "a pack so dense they completely block"
?CND6: PRINTI " the path to the southeast. Other paths lead west and northwest."
ZERO? PENGUINS-PARTED \TRUE
CRLF
PRINTI " One penguin teasingly waves a sign in your direction, much like a matador waving his cape toward a bull."
RTRUE
.FUNCT PENGUINS-F
EQUAL? PRSA,V?GIVE \?ELS5
EQUAL? PRSO,TEN-MARSMID-COIN \?ELS10
SET 'PENGUINS-PARTED,TRUE-VALUE
REMOVE TEN-MARSMID-COIN
MOVE ONE-MARSMID-COIN,PROTAGONIST
PRINTR "The penguins, satisfied by your donation to the PRF, part ranks for you to pass. The going rate for donations to the fund must be nine marsmids, since one of the penguins hands you a one marsmid coin."
?ELS10: EQUAL? PRSO,ONE-MARSMID-COIN \FALSE
PRINTR "Nine marsmids is the minimum contribution to the PRF."
?ELS5: EQUAL? PRSA,V?SHOW \FALSE
EQUAL? PRSO,TEN-MARSMID-COIN \FALSE
PRINTR "The penguins wiggle eagerly."
.FUNCT GYPSY-CAMP-F,RARG
EQUAL? RARG,M-END \FALSE
ZERO? PARENTS-KILLED \?CND6
SET 'PARENTS-KILLED,TRUE-VALUE
ZERO? VERBOSITY /TRUE
PRINTI " A male and a female robot emerge from the tent, waving in a gesture of gypsyish greeting. ""Hello, weary traveller"
IN? SIDEKICK,HERE \?CND12
PRINTI "s"
?CND12: PRINTI "! We are but poor gypsies, but we invite you to spend the night in our humble tent and share our simple but delicious oil and silicon stew."" Suddenly, in an event so shocking that even a hardened space opera hero"
ZERO? MALE \?CND15
PRINTI "ine"
?CND15: PRINTI " like yourself is stunned beyond belief, a meteorite shrieks through the atmosphere and completely obliterates the two robots."
CRLF
?CND6: IN? BABY,TENT \FALSE
IN? BLANKET,BABY /FALSE
PRINTR " You hear the sound of high-pitched crying, slightly muffled, coming from inside the tent."
.FUNCT OUTSIDE-TENT-F
EQUAL? PRSA,V?WALK-TO,V?BOARD,V?ENTER \?ELS5
CALL DO-WALK,P?NORTH
RSTACK
?ELS5: EQUAL? PRSA,V?DISEMBARK,V?LEAVE,V?EXIT \?ELS7
PRINT LOOK-AROUND
RTRUE
?ELS7: EQUAL? PRSA,V?LOOK-INSIDE \FALSE
PRINT CANT-FROM-HERE
RTRUE
.FUNCT INSIDE-TENT-F
EQUAL? PRSA,V?DISEMBARK,V?LEAVE,V?EXIT \?ELS5
CALL DO-WALK,P?SOUTH
RSTACK
?ELS5: EQUAL? PRSA,V?WALK-TO,V?BOARD,V?ENTER \?ELS7
PRINT LOOK-AROUND
RTRUE
?ELS7: EQUAL? PRSA,V?LOOK-INSIDE,V?EXAMINE \?ELS9
CALL V-LOOK
RSTACK
?ELS9: EQUAL? PRSA,V?SEARCH \FALSE
PRINT NOTHING-NEW
RTRUE
.FUNCT TENT-F,RARG
EQUAL? RARG,M-ENTER \FALSE
CALL QUEUE,I-CRY,-1
RSTACK
.FUNCT I-CRY
IN? BLANKET,BABY \?ELS5
CALL DEQUEUE,I-CRY
RFALSE
?ELS5: CALL VISIBLE?,BABY
ZERO? STACK /FALSE
PRINTI " The baby continues to wail at the top of its lungs."
RANDOM 100
LESS? 12,STACK /?CND10
PRINTI " It's amazing that such small lungs have such a high top."
?CND10: CRLF
RTRUE
.FUNCT BABY-F,OARG=0
ZERO? OARG /?ELS5
FSET? BABY,TOUCHBIT /FALSE
EQUAL? OARG,M-OBJDESC? /TRUE
PRINTI " A little baby robot is shivering in the corner. It stops crying long enough to open a tiny metal eyelid and look at you. """
ZERO? MALE /?ELS19
PRINTI "Momm"
JUMP ?CND17
?ELS19: PRINTI "Dadd"
?CND17: PRINTI "y?"" it says, in a quavering, high-pitched, metallic voice."
RTRUE
?ELS5: EQUAL? PRSA,V?TELL \?ELS24
IN? BLANKET,BABY \?ELS27
SET 'WINNER,PROTAGONIST
CALL PERFORM,V?KISS,BABY
JUMP ?CND25
?ELS27: PRINTI """Goo goo ga ga buzz whirr click."""
CRLF
?CND25: CALL STOP
RSTACK
?ELS24: EQUAL? PRSA,V?PUT \?ELS35
EQUAL? PRSI,BLANKET /?THN32
?ELS35: EQUAL? PRSA,V?WRAP,V?PUT-ON \?ELS37
EQUAL? PRSO,BLANKET /?THN32
?ELS37: EQUAL? PRSA,V?PUT \?ELS31
EQUAL? PRSI,BASKET \?ELS31
IN? BLANKET,BASKET \?ELS31
?THN32: FSET? BLANKET,UNTEEDBIT /FALSE
IN? BLANKET,BABY \?CND40
PRINT SENILITY-STRIKES
RTRUE
?CND40: FSET BABY,TOUCHBIT
FSET BLANKET,NDESCBIT
MOVE BLANKET,BABY
EQUAL? PRSI,BASKET \?CND45
MOVE BABY,BASKET
?CND45: PUTP BABY,P?SDESC,STR?332
CALL DEQUEUE,I-CRY
PRINTR "The baby stops crying and, in the comfy warmth of the blanket, slips into a calm sleep. A peaceful smile creeps over its face."
?ELS31: EQUAL? PRSA,V?PUT \?ELS53
EQUAL? PRSI,SHEET /?THN50
?ELS53: EQUAL? PRSA,V?WRAP,V?PUT-ON \?ELS49
EQUAL? PRSO,SHEET \?ELS49
?THN50: IN? BLANKET,BABY /?THN61
FSET? SHEET,MUNGBIT /?THN61
FSET? SHEET,PLURALBIT \?ELS60
?THN61: CALL WASTES
RSTACK
?ELS60: PRINTR "The sheet provides little warmth."
?ELS49: EQUAL? PRSA,V?PUT \?ELS66
EQUAL? PRSI,BASKET \?ELS66
IN? BASKET,FRONT-STOOP \?ELS66
FIRST? BASKET /?ELS66
IN? BLANKET,BABY \?ELS73
MOVE BABY,BASKET
CALL ABANDON-BABY,STR?333
RSTACK
?ELS73: CALL CRYING-ALERTS-MATRON
RSTACK
?ELS66: EQUAL? PRSA,V?REMOVE \?ELS77
IN? BLANKET,BABY \?ELS77
MOVE BLANKET,PROTAGONIST
FCLEAR BLANKET,NDESCBIT
PUTP BABY,P?SDESC,STR?331
CALL QUEUE,I-CRY,-1
PRINTI "The baby robo"
PRINT TWICE-AS-LOUD
CALL ULTIMATELY-IN?,BABY,FRONT-STOOP
ZERO? STACK /TRUE
PRINTI " "
CALL CRYING-ALERTS-MATRON
RTRUE
?ELS77: EQUAL? PRSA,V?KISS \?ELS84
IN? BLANKET,BABY \?ELS89
CALL PERFORM,V?ALARM,BABY
RTRUE
?ELS89: PRINTI "The "
CALL DPRINT,BABY
PRINTI " reacts as a human baby would react if kissed by a giant walking metal machine. In other words, i"
PRINT TWICE-AS-LOUD
RTRUE
?ELS84: EQUAL? PRSA,V?LISTEN \?ELS93
IN? BLANKET,BABY /?ELS93
PRINTR """Waaaa!"""
?ELS93: EQUAL? PRSA,V?SHAKE \?ELS97
IN? BLANKET,BABY \?ELS102
PRINTR "The baby's asleep!"
?ELS102: PRINTI "This upsets the "
CALL DPRINT,BABY
PRINTI "'s equilibrium mechanism. I"
PRINT TWICE-AS-LOUD
RTRUE
?ELS97: EQUAL? PRSA,V?ALARM \?ELS106
IN? BLANKET,BABY \?ELS106
PRINTR "The baby whimpers briefly, but the warm coziness of the blanket soon lulls it back to sleep."
?ELS106: CALL TAKE-BABY-FROM-STOOP,BABY
ZERO? STACK \TRUE
EQUAL? PRSA,V?SUCKLE \?ELS112
ZERO? MALE /?ELS117
PRINTR "You're a male, remember? You obviously have a poor mammary."
?ELS117: PRINTR "How touching that the baby robot has stirred your maternal instinct. Unfortunately, your mammaries won't produce #3 machine oil."
?ELS112: EQUAL? PRSA,V?PUT-NEAR,V?PUT \?ELS122
EQUAL? PRSI,ORPHANAGE-DOOR \?ELS122
CALL PERFORM,V?PUT-ON,BABY,FRONT-STOOP
RTRUE
?ELS122: EQUAL? PRSA,V?EXAMINE \?ELS126
PRINTI "The "
CALL DPRINT,BABY
PRINTI " is "
IN? BLANKET,BABY \?ELS129
PRINTI "sleep"
JUMP ?CND127
?ELS129: PRINTI "cry"
?CND127: PRINTR "ing."
?ELS126: EQUAL? PRSA,V?CLOSE,V?OPEN \FALSE
PRINT HUH
RTRUE
.FUNCT CRYING-ALERTS-MATRON
PRINTI "The baby's crying alerts someone within the igloo. "
CALL SHOO,STR?334
RSTACK
.FUNCT SHOO,STRING
CALL DEQUEUE,I-ORPHANAGE
PRINT MATRON-DESC
PRINTI "appears. ""Caught you, you baby-"
PRINT STRING
PRINTI "ing gypsy!"" she cries, in a voice that, in a more mountainous region, could probably initiate an avalanche. ""Begone!"" She "
CALL ULTIMATELY-IN?,BABY,FRONT-STOOP
ZERO? STACK /?CND1
PRINTI "thrusts the babe into your arms and "
?CND1: IN? BASKET,FRONT-STOOP \?CND4
MOVE BASKET,PROTAGONIST
?CND4: CALL ULTIMATELY-IN?,BABY,FRONT-STOOP
ZERO? STACK /?CND7
MOVE BABY,PROTAGONIST
?CND7: PRINTI "drives you away with blows that would fell an elephant."
CRLF
CRLF
EQUAL? HERE,ORPHANAGE-FOYER \?ELS14
CALL GOTO,SOUTH-POLE
RSTACK
?ELS14: CALL GOTO,GYPSY-CAMP
RSTACK
.FUNCT SOUTH-POLE-F,RARG
EQUAL? RARG,M-ENTER \FALSE
ZERO? COTTON-BALLS-SEEN /FALSE
FSET? COTTON-BALLS,TRYTAKEBIT \FALSE
MOVE COTTON-BALLS,HERE
FSET COTTON-BALLS,NDESCBIT
RTRUE
.FUNCT ORPHANAGE-DOOR-F
EQUAL? PRSA,V?KNOCK \FALSE
EQUAL? HERE,SOUTH-POLE \FALSE
CALL VISIBLE?,BABY
ZERO? STACK /?ELS12
CALL SHOO,STR?334
RSTACK
?ELS12: CALL SHOO,STR?339
RSTACK
.FUNCT FRONT-STOOP-F
EQUAL? PRSA,V?PUT-NEAR,V?PUT-ON,V?PUT \?ELS5
EQUAL? PRSO,BABY \?ELS10
IN? BABY,BASKET /?ELS10
IN? BLANKET,BABY \?CND13
CALL COLD-CAUSES-CRYING
?CND13: MOVE PRSO,FRONT-STOOP
CALL CRYING-ALERTS-MATRON
RSTACK
?ELS10: EQUAL? PRSO,BABY,BASKET \FALSE
IN? BABY,BASKET \FALSE
IN? BLANKET,BABY /?ELS24
CALL CRYING-ALERTS-MATRON
RSTACK
?ELS24: MOVE BASKET,FRONT-STOOP
CALL ABANDON-BABY,STR?340
RSTACK
?ELS5: EQUAL? PRSA,V?STAND-ON,V?ENTER,V?BOARD \?ELS28
CALL WASTES
RSTACK
?ELS28: EQUAL? PRSA,V?PUT \FALSE
EQUAL? PRSO,BABY \FALSE
CALL COLD-CAUSES-CRYING
CALL CRYING-ALERTS-MATRON
RSTACK
.FUNCT COLD-CAUSES-CRYING
PRINTI "As you place the baby on the cold doorstep, i"
PRINT TWICE-AS-LOUD
PRINTI " "
RTRUE
.FUNCT ABANDON-BABY,STRING
CALL QUEUE,I-ORPHANAGE,5
MOVE PROTAGONIST,HERE
PRINTI "You place the baby gently "
PRINT STRING
PRINTR " and sneak behind a nearby snowdrift."
.FUNCT I-ORPHANAGE
REMOVE BABY
REMOVE BASKET
FCLEAR ORPHANAGE-DOOR,LOCKEDBIT
EQUAL? HERE,SOUTH-POLE \FALSE
SET 'FOLLOW-FLAG,15
CALL QUEUE,I-FOLLOW,2
PRINTI " "
PRINT MATRON-DESC
PRINTI "opens the "
PRINTD ORPHANAGE-DOOR
PRINTR ". She coos over the baby for a moment then carries it inside, closing the door behind her."
.FUNCT ORPHANAGE-FOYER-F,RARG
EQUAL? RARG,M-ENTER \?ELS5
FSET? COTTON-BALLS,TRYTAKEBIT \?CND6
MOVE COTTON-BALLS,HERE
FCLEAR COTTON-BALLS,NDESCBIT
?CND6: CALL QUEUED?,I-ORPHANAGE-BOOT
ZERO? STACK \FALSE
CALL QUEUE,I-ORPHANAGE-BOOT,5
RSTACK
?ELS5: EQUAL? RARG,M-LOOK \FALSE
PRINTI "The igloo's front hall has rooms to the northeast and northwest. A barred window is next to the "
CALL OPEN-CLOSED,ORPHANAGE-DOOR
PRINTI " door to the south."
RTRUE
.FUNCT IGLOO-ENTER-F
PRINTI "Nursery"
CRLF
CALL I-ORPHANAGE-BOOT
CALL DEQUEUE,I-ORPHANAGE-BOOT
RFALSE
.FUNCT I-ORPHANAGE-BOOT
EQUAL? HERE,ORPHANAGE-FOYER \?ELS5
PRINTI " "
CALL SHOO,STR?339
FCLEAR ORPHANAGE-DOOR,OPENBIT
FSET ORPHANAGE-DOOR,LOCKEDBIT
RTRUE
?ELS5: EQUAL? HERE,SOUTH-POLE \?ELS7
FSET? ORPHANAGE-DOOR,OPENBIT \?ELS7
PRINTI " The "
PRINTD ORPHANAGE-DOOR
PRINTI " slams shut."
CRLF
FCLEAR ORPHANAGE-DOOR,OPENBIT
FSET ORPHANAGE-DOOR,LOCKEDBIT
RTRUE
?ELS7: FCLEAR ORPHANAGE-DOOR,OPENBIT
FSET ORPHANAGE-DOOR,LOCKEDBIT
RFALSE
.FUNCT COTTON-BALLS-F
EQUAL? HERE,SOUTH-POLE \?ELS5
FSET? COTTON-BALLS,TRYTAKEBIT \?ELS5
CALL TOUCHING?,COTTON-BALLS
ZERO? STACK /?ELS5
CALL CANT-REACH,COTTON-BALLS
RSTACK
?ELS5: EQUAL? PRSA,V?TAKE \?ELS9
FSET? COTTON-BALLS,TRYTAKEBIT \?ELS9
CALL INCREMENT-SCORE,16,29,TRUE-VALUE
FCLEAR COTTON-BALLS,TRYTAKEBIT
RFALSE
?ELS9: FSET? COTTON-BALLS,UNTEEDBIT \?ELS13
EQUAL? PRSA,V?EXAMINE \FALSE
PRINTR "Let's just say that some poor male raccoon is speaking in a particularly high-pitched voice."
?ELS13: EQUAL? PRSA,V?PUT-ON,V?PUT \?ELS22
EQUAL? PRSI,EARS \?ELS22
ZERO? GONE-APE /?ELS29
PRINT DEXTERITY
RTRUE
?ELS29: FSET COTTON-BALLS,WORNBIT
FSET EARS,MUNGBIT
MOVE COTTON-BALLS,PROTAGONIST
PRINT MUFFLED
PRINTI " have "
CALL DPRINT,COTTON-BALLS
PRINTI " stuffed in "
PRINTD EARS
PRINT PERIOD-CR
RTRUE
?ELS22: EQUAL? PRSA,V?DISEMBARK,V?REMOVE \?ELS34
FSET? COTTON-BALLS,WORNBIT \?ELS34
ZERO? GONE-APE /?CND37
CALL PERFORM,V?TAKE,COTTON-BALLS
RTRUE
?CND37: CALL OPEN-EYES-AND-REMOVE-HANDS
FCLEAR COTTON-BALLS,WORNBIT
CALL SENSE-AGAIN,EARS
RSTACK
?ELS34: EQUAL? PRSA,V?PUT \FALSE
EQUAL? PRSI,NOSE \FALSE
PRINTI "The "
PRINTD COTTON-BALLS
PRINTR " is too itchy."
.FUNCT IGLOO-F
EQUAL? PRSA,V?BOARD,V?WALK-TO,V?ENTER \?ELS5
EQUAL? HERE,ORPHANAGE-FOYER \?ELS10
PRINT LOOK-AROUND
RTRUE
?ELS10: EQUAL? HERE,SOUTH-POLE \FALSE
CALL DO-WALK,P?IN
RSTACK
?ELS5: EQUAL? PRSA,V?DISEMBARK,V?EXIT,V?LEAVE \?ELS14
EQUAL? HERE,SOUTH-POLE \?ELS19
PRINT LOOK-AROUND
RTRUE
?ELS19: CALL DO-WALK,P?OUT
RSTACK
?ELS14: EQUAL? PRSA,V?LOOK-INSIDE \?ELS23
EQUAL? HERE,SOUTH-POLE \?ELS28
CALL PERFORM-PRSA,WINDOW
RTRUE
?ELS28: CALL V-LOOK
RSTACK
?ELS23: EQUAL? PRSA,V?SEARCH \FALSE
PRINT NOTHING-NEW
RTRUE
.ENDI