sherlock/places2.zap

856 lines
28 KiB
Plaintext
Raw Permalink Normal View History

2019-04-16 16:16:28 +03:00
.FUNCT RT-SURGE
CALL1 RT-TIME-OF-DAY
ZERO? STACK \?CCL3
PRINTI "The fog is so thick that even your light cannot penetrate it, so you retrace your steps."
CRLF
RFALSE
?CCL3: PRINTI "Surging crowds of "
EQUAL? GL-PLACE-CUR,RM-KENSINGTON-GARDENS \?CCL6
PRINTI "haughty nannies"
JUMP ?CND4
?CCL6: EQUAL? GL-PLACE-CUR,RM-COVENT-GARDEN \?CCL8
PRINTI "housewives intent on a bargain"
JUMP ?CND4
?CCL8: PRINTI "tourists"
?CND4: PRINTI " block your path."
CRLF
RFALSE
.FUNCT RT-AC-RM-MADAME-TUSSAUDS,CONTEXT
CALL2 RT-DESCFCN-CONTEXT,CONTEXT
ZERO? STACK /?CCL3
EQUAL? CONTEXT,K-M-DESC-1 \?CND4
FSET TH-ASH,FL-SEEN
FSET TH-WILLIAM-STATUE,FL-SEEN
FSET TH-WALTER-STATUE,FL-SEEN
FSET TH-ELIZABETH-STATUE,FL-SEEN
FSET TH-DRAKE-STATUE,FL-SEEN
FSET TH-JOHN-STATUE,FL-SEEN
?CND4: EQUAL? CONTEXT,K-M-DESC-1,K-M-DESC-2 \?CCL8
EQUAL? GL-PLACE-PRV,RM-MARYLEBONE-RD \?CCL11
PRINTI "You come in off the street and are now standing in"
JUMP ?CND6
?CCL11: PRINTI "You leave the Chamber of Horrors and go back into"
JUMP ?CND6
?CCL8: PRINTI "You are in"
?CND6: PRINTI " the lobby."
CRLF
CRLF
PRINTI "All around you are wax statues of famous people. To the west is a dark and ominous-looking doorway with a sign over it. The exit to the street is to the south."
CRLF
FSET? TH-ASH,FL-ASLEEP \FALSE
IN? CH-HOLMES,GL-PLACE-CUR \FALSE
FSET TH-ASH,FL-SEEN
FCLEAR TH-ASH,FL-ASLEEP
FCLEAR TH-ASH,FL-NODESC
CRLF
ICALL2 RT-CTHEO-PRINT,CH-HOLMES
PRINTI " drops to his hands and knees and begins a minute examination of the floor. After a few moments he cries, ""Aha! Look here, Watson."" He points to a miniscule speck of ash on the floor."
CRLF
SET 'GL-PUPPY-MSG?,FALSE-VALUE
RTRUE
?CCL3: EQUAL? CONTEXT,K-M-ENTERED \?CCL18
FSET? TH-TOBACCO,FL-ASLEEP /?CCL18
FSET? TH-TOBACCO,FL-LIGHTED \?CCL18
ICALL2 RT-UPDATE-SCORE,1
FSET TH-TOBACCO,FL-ASLEEP
RFALSE
?CCL18: ZERO? CONTEXT \FALSE
EQUAL? GL-PRSA,V?ENTER \FALSE
EQUAL? GL-PLACE-CUR,RM-MARYLEBONE-RD \?CCL27
ICALL2 RT-DO-WALK,P?NORTH
RTRUE
?CCL27: EQUAL? GL-PLACE-CUR,RM-CHAMBER-OF-HORRORS \FALSE
ICALL2 RT-DO-WALK,P?EAST
RTRUE
.FUNCT RT-AC-RM-MANUSCRIPT-ROOM,CONTEXT,VALUE
CALL2 RT-DESCFCN-CONTEXT,CONTEXT
ZERO? STACK /?CCL3
EQUAL? CONTEXT,K-M-DESC-1,K-M-DESC-2 \?CCL6
PRINTI "The deserted corridor leads to"
JUMP ?CND4
?CCL6: PRINTI "You are in"
?CND4: PRINTI " the manuscript room, which contains a dusty collection of old books on obscure subjects. "
IN? CH-LIBRARIAN,RM-MANUSCRIPT-ROOM \?CND7
PRINTI "There is an old librarian here, on whose desk sits a handwritten sign that reads ""Quiet, please."" "
?CND7: PRINTI "There are thousands of books behind glass cases"
EQUAL? CONTEXT,K-M-DESC-1 \?CND9
PRINTI ", but one is lying unattended on a table"
?CND9: PRINTI ". The only exit is to the west."
CRLF
EQUAL? CONTEXT,K-M-DESC-1 \FALSE
FSET CH-LIBRARIAN,FL-SEEN
FSET TH-CLUE-BOOK,FL-SEEN
FSET TH-LIBRARY-TABLE,FL-SEEN
CRLF
PRINTI "The librarian - who is as dusty as the books - looks up in surprise as you come in. He "
FSET? TH-COTTON-BALLS,FL-WORN \?CCL16
PRINTI "whispers"
JUMP ?CND14
?CCL16: PRINTI "says loudly"
?CND14: PRINTI ", ""Oh, I say! Hello! I don't get many visitors here. Is there something I can help you with? Some information about the Jubilee, perhaps? It's quite rare, you know, for a British ruler to celebrate 50 years on the throne. Unique, in fact. The closest anyone else came was Elizabeth, who ruled 45 years - although our records are somewhat vague before the year 900. The Anglo-Saxon chronicles do get rather sketchy, what? Still, they're the best we have. I think I can find a copy for you somewhere here."""
CRLF
CRLF
PRINTR "The librarian's voice trails off as he bustles from shelf to shelf, squinting at the books to find the one he thinks you want."
?CCL3: ZERO? CONTEXT /?CCL18
IN? CH-LIBRARIAN,RM-MANUSCRIPT-ROOM \?CCL18
FSET? CH-LIBRARIAN,FL-ASLEEP /?CCL18
EQUAL? CONTEXT,K-M-ENTERED \?CCL24
FSET? CH-LIBRARIAN,FL-OPENED \?CCL24
CRLF
ICALL2 RT-CTHEO-PRINT,CH-LIBRARIAN
PRINTR " says, ""Welcome back! I have more interesting things to tell you!"""
?CCL24: EQUAL? CONTEXT,K-M-EXIT \?CCL28
PRINTI "As you leave, the librarian calls out, ""Must you be going? I have so many other interesting things to tell you."""
CRLF
CRLF
FSET CH-LIBRARIAN,FL-OPENED
RTRUE
?CCL28: EQUAL? CONTEXT,K-M-BEG \FALSE
EQUAL? GL-PRSA,V?WALK,V?EXIT /FALSE
INTBL? GL-PRSA,GL-GAME-VERBS+2,10 /FALSE
EQUAL? GL-PRSA,V?WAIT,V?LISTEN \?CCL37
PRINTI "The librarian says "
FSET? TH-COTTON-BALLS,FL-WORN \?CCL40
PRINTI "softly"
JUMP ?CND38
?CCL40: PRINTI "loudly"
?CND38: PRINTI ", "
ICALL1 RT-LIBRARIAN-SAYS-MSG
RTRUE
?CCL37: EQUAL? GL-PRSA,V?HUSH \?CCL42
PRINTI "The librarian stops in midsentence and gets an embarrassed look on his face. ""Oh, I say. I'm sorry to have rambled on like this, but I do so enjoy speaking with visitors. I get them so seldom, you know. Thank you for listening."""
CRLF
CRLF
PRINTI "He leaves the room, mumbling something to himself about the articulation of the third joint of the hind leg of an extinct species of dung beetle."
CRLF
REMOVE CH-LIBRARIAN
RTRUE
?CCL42: EQUAL? GL-PRSA,V?LOOK \?CCL44
ICALL RT-DESC-ALL,FALSE-VALUE,TRUE-VALUE
CRLF
PRINTI "As you look around, the librarian says "
FSET? TH-COTTON-BALLS,FL-WORN \?CCL47
PRINTI "softly"
JUMP ?CND45
?CCL47: PRINTI "loudly"
?CND45: PRINTI ", "
ICALL1 RT-LIBRARIAN-SAYS-MSG
RTRUE
?CCL44: EQUAL? GL-PRSA,V?TELL \?CCL49
EQUAL? GL-PRSO,CH-LIBRARIAN /FALSE
?CCL49: CALL1 RT-TALK-VERB?
ZERO? STACK /?CCL53
PRINTI "The librarian interrupts you as you attempt to speak, and "
FSET? TH-COTTON-BALLS,FL-WORN \?CCL56
PRINTI "whispers"
JUMP ?CND54
?CCL56: PRINTI "says"
?CND54: PRINTI ", "
ICALL1 RT-LIBRARIAN-SAYS-MSG
RETURN 2
?CCL53: PRINTI "The librarian launches off into another speech, and it distracts you from what you wanted to do. "
ICALL1 RT-LIBRARIAN-SAYS-MSG
RTRUE
?CCL18: ZERO? CONTEXT \FALSE
EQUAL? GL-PRSA,V?ENTER \?CCL61
EQUAL? GL-PLACE-CUR,RM-BRITISH-MUSEUM \FALSE
ICALL2 RT-DO-WALK,P?EAST
RTRUE
?CCL61: EQUAL? GL-PRSA,V?EXIT \FALSE
EQUAL? GL-PLACE-CUR,RM-MANUSCRIPT-ROOM \FALSE
ICALL2 RT-DO-WALK,P?WEST
RTRUE
.FUNCT RT-AC-RM-VICTORIA-STREET,CONTEXT
CALL2 RT-DESCFCN-CONTEXT,CONTEXT
ZERO? STACK /?CCL3
EQUAL? CONTEXT,K-M-DESC-1,K-M-DESC-2 \?CCL6
PRINTI "You enter"
JUMP ?CND4
?CCL6: PRINTI "You are loitering in"
?CND4: PRINTI " Victoria Street, which runs east and west between Victoria Square and Broad Sanctuary."
CRLF
CRLF
PRINTI "You see a sign outside one of the shops."
CRLF
RFALSE
?CCL3: EQUAL? CONTEXT,K-M-BEG \?CCL8
EQUAL? GL-PRSA,V?WAIT \?CCL8
FSET? RM-VICTORIA-STREET,FL-ASLEEP /?CCL13
FSET RM-VICTORIA-STREET,FL-ASLEEP
PRINTR "After a few moments, a constable strolls by, bops you on the head with his billy club, and says, ""Move along, you."""
?CCL13: PRINTI "The same constable as before walks by and says, ""You again? That's it, mate. Come along with me."" He bops you on the head again and arrests you on a charge of vagrancy."
CRLF
CRLF
PRINTI "You spend the night in gaol, and in the morning Inspector Lestrade drops by to tell you that there has been a mix-up in the paperwork and you are to be deported to Australia the following day. He gives you a letter to deliver to his sister in Melbourne and wishes you luck."
CRLF
CRLF
CALL1 RT-QSR
RSTACK
?CCL8: ZERO? CONTEXT \FALSE
RFALSE
.FUNCT RT-AC-RM-CLOCK-TOWER,CONTEXT
CALL2 RT-DESCFCN-CONTEXT,CONTEXT
ZERO? STACK /?CCL3
EQUAL? CONTEXT,K-M-DESC-1,K-M-DESC-2 \?CCL6
PRINTI "The stairs seem to wind up forever. Finally, you emerge into"
JUMP ?CND4
?CCL6: PRINTI "You are in"
?CND4: PRINTI " the interior of the clock tower, high above the Houses of Parliament."
CRLF
CRLF
PRINTI "The immense bell known as Big Ben is hanging from the ceiling, suspended over a hollow shaft that is so deep it might as well be bottomless. A wooden railing runs around the shaft for safety."
CRLF
CRLF
PRINTI "Inside the bell, you see an enormous clapper"
EQUAL? CONTEXT,K-M-DESC-1 \?CCL9
FSET TH-BELL,FL-SEEN
FSET TH-SAPPHIRE,FL-SEEN
FSET TH-CLAPPER,FL-SEEN
FSET TH-SHAFT,FL-SEEN
FSET TH-RAILING,FL-SEEN
PRINT K-SAPPHIRE-MSG
CRLF
RTRUE
?CCL9: IN? TH-SAPPHIRE,TH-CLAPPER \?CCL12
PRINT K-SAPPHIRE-MSG
CRLF
RFALSE
?CCL12: PRINTC 46
CRLF
RFALSE
?CCL3: CALL2 RT-ALARM-SET?,RT-I-SWING-BELL
ZERO? STACK \FALSE
ICALL1 RT-ZERO-SECONDS
RFALSE
.FUNCT RT-AC-RM-THAMES-ONE,CONTEXT
CALL2 RT-DESCFCN-CONTEXT,CONTEXT
ZERO? STACK /?CCL3
PRINTI "You are"
ICALL1 RT-IN-VEHICLE-MSG
PRINTI "on the Thames, just south of the Embankment."
CRLF
RFALSE
?CCL3: CALL1 RT-PROCESS-BOAT-ON-THAMES
RSTACK
.FUNCT RT-AC-RM-THAMES-TWO,CONTEXT
CALL2 RT-DESCFCN-CONTEXT,CONTEXT
ZERO? STACK /?CCL3
PRINTI "You are"
ICALL1 RT-IN-VEHICLE-MSG
PRINTI "on the Thames. Downstream you can see London Bridge."
CRLF
RFALSE
?CCL3: CALL1 RT-PROCESS-BOAT-ON-THAMES
RSTACK
.FUNCT RT-AC-RM-THAMES-THREE,CONTEXT
CALL2 RT-DESCFCN-CONTEXT,CONTEXT
ZERO? STACK /?CCL3
PRINTI "You are"
ICALL1 RT-IN-VEHICLE-MSG
PRINTI "underneath London Bridge."
CRLF
RFALSE
?CCL3: EQUAL? GL-PRSA,V?EXAMINE,V?LOOK-UNDER \?PRD7
EQUAL? GL-PRSO,RM-LONDON-BRIDGE /?CTR4
?PRD7: EQUAL? GL-PRSA,V?LOOK-UP \?CCL5
EQUAL? GL-PRSO,ROOMS,RM-LONDON-BRIDGE \?CCL5
?CTR4: PRINTI "You see nothing of interest"
IN? TH-CLUMP-OF-MOSS,RM-THAMES-THREE \?CCL14
FSET TH-CLUMP-OF-MOSS,FL-SEEN
PRINTI ", other than a clump of moss lodged among the supports overhead."
CRLF
JUMP ?CND12
?CCL14: PRINTC 46
CRLF
?CND12: ICALL1 RT-PROCESS-BOAT-ON-THAMES
RTRUE
?CCL5: CALL1 RT-PROCESS-BOAT-ON-THAMES
RSTACK
.FUNCT RT-AC-RM-THAMES-FOUR,CONTEXT
CALL2 RT-DESCFCN-CONTEXT,CONTEXT
ZERO? STACK /?CCL3
PRINTI "You are"
ICALL1 RT-IN-VEHICLE-MSG
PRINTI "on the Thames, just south of Traitor's Gate."
CRLF
RFALSE
?CCL3: CALL1 RT-PROCESS-BOAT-ON-THAMES
RSTACK
.FUNCT RT-AC-RM-THAMES-FIVE,CONTEXT
CALL2 RT-DESCFCN-CONTEXT,CONTEXT
ZERO? STACK /?CCL3
PRINTI "You are"
ICALL1 RT-IN-VEHICLE-MSG
PRINTI "on the Thames, in danger of drifting out to sea."
CRLF
RFALSE
?CCL3: CALL1 RT-PROCESS-BOAT-ON-THAMES
RSTACK
.FUNCT RT-AC-RM-SHERMANS-HOUSE,CONTEXT
CALL2 RT-DESCFCN-CONTEXT,CONTEXT
ZERO? STACK /?CCL3
EQUAL? CONTEXT,K-M-DESC-1 \?CCL6
ICALL2 RT-THIS-IS-IT,CH-SHERMAN
FSET CH-SHERMAN,FL-SEEN
FSET RM-SHERMANS-HOUSE,FL-SEEN
PRINTI "You enter the cramped quarters of Sherman's shop. The old animal-trainer's eyes brighten up when he sees you."
CRLF
CRLF
PRINTR """You've probably come looking for Toby,"" he says. ""But I'm afraid I won't be able to help you this time. Toby's not feeling too well, and all my other animals are already out on loan. All I have left is a half-trained pigeon."""
?CCL6: EQUAL? CONTEXT,K-M-DESC-2,K-M-DESC-3 \FALSE
PRINTI "Sherman's shop is dingy and cramped. Dozens of empty cages are stacked up against the walls."
CRLF
RFALSE
?CCL3: EQUAL? CONTEXT,K-M-ENTERED \?CCL10
FSET? RM-SHERMANS-HOUSE,FL-ASLEEP \?CCL13
FCLEAR RM-SHERMANS-HOUSE,FL-ASLEEP
RFALSE
?CCL13: FSET? CH-SHERMAN,FL-ASLEEP /FALSE
FSET? CH-TRAINED-PIGEON,FL-ALIVE \?CCL17
CRLF
PRINTI "Sherman says, ""Welcome back. It's a pleasure to see you again."""
CRLF
CALL2 RT-THIS-IS-IT,CH-SHERMAN
RSTACK
?CCL17: CALL2 RT-SHERMAN-RAGE,TRUE-VALUE
RSTACK
?CCL10: ZERO? CONTEXT \FALSE
EQUAL? GL-PRSA,V?ENTER \?CCL21
EQUAL? GL-PLACE-CUR,RM-PINCHIN-LANE \FALSE
ICALL2 RT-DO-WALK,P?WEST
RTRUE
?CCL21: EQUAL? GL-PRSA,V?EXIT \FALSE
EQUAL? GL-PLACE-CUR,RM-SHERMANS-HOUSE \FALSE
ICALL2 RT-DO-WALK,P?EAST
RTRUE
.FUNCT RT-AC-RM-THREADNEEDLE-ST,CONTEXT
ZERO? CONTEXT \?CND1
EQUAL? GL-PRSA,V?ENTER \FALSE
EQUAL? GL-PLACE-CUR,RM-BANK-OF-ENGLAND \FALSE
ICALL2 RT-DO-WALK,P?SOUTH
RTRUE
?CND1: CALL2 RT-DESCFCN-CONTEXT,CONTEXT
ZERO? STACK /?CCL9
FSET CH-BANK-GUARD,FL-SEEN
FSET CH-URCHINS,FL-SEEN
FSET TH-GUARDS-POCKET,FL-SEEN
EQUAL? CONTEXT,K-M-DESC-1,K-M-DESC-2 \?CCL12
EQUAL? GL-PLACE-PRV,RM-BANK-OF-ENGLAND \?CCL15
PRINTI "You emerge into"
JUMP ?CND13
?CCL15: PRINTI "You enter"
?CND13: PRINTI " Threadneedle Street and are now"
JUMP ?CND10
?CCL12: PRINTI "You are"
?CND10: PRINTI " in front of the Bank of England. The entrance to the bank is to the north, Cheapside leads off to the west, and King William Street "
CALL1 RT-TIME-OF-DAY
ZERO? STACK \?CCL18
PRINTI "disappears off into the darkness"
JUMP ?CND16
?CCL18: PRINTI "continues"
?CND16: PRINTI " to the southeast. On the wall is a small sign."
CRLF
EQUAL? CONTEXT,K-M-DESC-1 /?CTR20
IN? CH-BANK-GUARD,RM-THREADNEEDLE-ST \?CCL21
?CTR20: CRLF
PRINTI "A bank guard is lounging up against the wall, idly jangling some keys in his pocket while he watches a group of urchins playing in the street."
CRLF
FSET? CH-WIGGINS,FL-BROKEN \FALSE
CRLF
PRINT K-URCHIN-MSG
CRLF
RTRUE
?CCL21: CRLF
PRINTI "A group of urchins is playing in the street."
CRLF
RFALSE
?CCL9: EQUAL? CONTEXT,K-M-BEG \?CCL27
IN? CH-HOLMES,RM-LAIR \?CCL27
FSET? TH-TOPAZ,FL-LOCKED /?CCL27
ICALL1 RT-WIGGINS-HELP-MSG
CRLF
FSET TH-TOPAZ,FL-LOCKED
RFALSE
?CCL27: EQUAL? CONTEXT,K-M-ENTERED \FALSE
EQUAL? GL-PLACE-PRV,RM-BANK-OF-ENGLAND \FALSE
FSET? TH-TOPAZ,FL-ASLEEP /FALSE
ICALL1 RT-KIDNAP
FSET TH-TOPAZ,FL-ASLEEP
RFALSE
.FUNCT RT-AC-RM-LONDON-BRIDGE,CONTEXT
CALL2 RT-DESCFCN-CONTEXT,CONTEXT
ZERO? STACK /?CCL3
EQUAL? CONTEXT,K-M-DESC-1,K-M-DESC-2 \?CCL6
EQUAL? GL-PLACE-PRV,RM-LAIR \?CCL9
PRINTR "When you emerge from the lair you are momentarily disoriented, blinking your eyes in the bright sunlight. After a few moments, you realize you are standing on London bridge, but you have no idea from which direction you came."
?CCL9: PRINTI "You"
ICALL1 RT-DRIVE-WALK-MSG?
PRINTI "up onto"
JUMP ?CND4
?CCL6: PRINTI "You are"
ICALL1 RT-IN-VEHICLE-MSG
PRINTI "on"
?CND4: PRINTI " London Bridge. "
CALL1 RT-TIME-OF-DAY
EQUAL? STACK,1,2,3 \?CCL12
PRINTI "The view of the river from here is spectacular, and hoards of sightseers are here with you to share the view."
CRLF
RFALSE
?CCL12: PRINTI "The fog is so dense you can barely see the river from here."
CRLF
RFALSE
?CCL3: ZERO? CONTEXT \?PRD16
EQUAL? GL-PRSA,V?LOOK-UNDER,V?LOOK-DOWN \?PRD16
EQUAL? GL-PRSO,RM-LONDON-BRIDGE /?CTR13
?PRD16: EQUAL? CONTEXT,K-M-BEG \?CCL14
EQUAL? GL-PRSA,V?LOOK-DOWN \?CCL14
EQUAL? GL-PRSO,ROOMS \?CCL14
?CTR13: PRINTR "You see the Thames flowing slowly by, just as it has done for centuries past."
?CCL14: ZERO? CONTEXT \FALSE
ZERO? GL-NOW-PRSI? \?CCL26
EQUAL? GL-PRSA,V?ENTER \?CCL29
EQUAL? GL-PLACE-CUR,RM-LOWER-THAMES-ST \?CCL32
ICALL2 RT-DO-WALK,P?SOUTH
RTRUE
?CCL32: EQUAL? GL-PLACE-CUR,RM-THAMES-THREE \FALSE
PRINTR "You can't climb onto the bridge."
?CCL29: EQUAL? GL-PRSA,V?EXIT \?CCL36
EQUAL? GL-PLACE-CUR,RM-LONDON-BRIDGE \FALSE
ICALL2 RT-DO-WALK,P?NORTH
RTRUE
?CCL36: EQUAL? GL-PRSA,V?SHOOT \FALSE
PRINT K-RICOCHET-MSG
CRLF
RTRUE
?CCL26: ZERO? GL-NOW-PRSI? /FALSE
IN? CH-PLAYER,TH-BOAT \FALSE
EQUAL? GL-PRSA,V?PUT,V?PUT-ON \FALSE
PRINTR "You can't attach anything to the bridge."
.FUNCT RT-AC-RM-SWAN-LANE,CONTEXT
CALL2 RT-DESCFCN-CONTEXT,CONTEXT
ZERO? STACK /?CCL3
EQUAL? CONTEXT,K-M-DESC-1,K-M-DESC-2 \?CCL6
EQUAL? GL-PLACE-PRV,RM-LOWER-THAMES-ST \?CCL9
PRINTI "With increasing apprehension, you descend"
JUMP ?CND7
?CCL9: PRINTI "With considerable relief, you emerge"
?CND7: PRINTI " into"
JUMP ?CND4
?CCL6: PRINTI "With increasing apprehension, you are standing in"
?CND4: PRINTI " Swan Lane, which runs along the waterfront of the Thames."
CRLF
CRLF
EQUAL? CONTEXT,K-M-DESC-1 \?CND10
PRINTI "It is a seedy, disreputable, run-down part of town that normally you wouldn't be caught dead in. After a moment's reflection, you wish you hadn't thought of it in quite those terms."
CRLF
CRLF
?CND10: PRINTI "To the west is the entrance to one of the least savory buildings you have ever seen. There is a faded sign above the door that informs you that the establishment was, in better days, known as the Bar of Gold."
CRLF
CRLF
PRINTI "Fortunately, it is only a short walk back up the stairs to Lower Thames Street."
CRLF
RFALSE
?CCL3: EQUAL? CONTEXT,K-M-ENTERED \?CCL13
EQUAL? GL-PLACE-PRV,RM-BAR-OF-GOLD \?CCL13
IN? CH-WIGGINS,RM-SWAN-LANE \?CCL13
CRLF
ICALL2 RT-CTHEO-PRINT,CH-WIGGINS
PRINTI " says, ""Blimey!! I didn't think you would make it out of there alive."""
CRLF
SET 'GL-PUPPY,CH-WIGGINS
RETURN GL-PUPPY
?CCL13: ZERO? CONTEXT \FALSE
EQUAL? GL-PRSA,V?ENTER \FALSE
EQUAL? GL-PLACE-CUR,RM-BAR-OF-GOLD \FALSE
ICALL2 RT-DO-WALK,P?EAST
RTRUE
.FUNCT RT-AC-RM-BAR-OF-GOLD,CONTEXT
CALL2 RT-DESCFCN-CONTEXT,CONTEXT
ZERO? STACK /?CCL3
EQUAL? CONTEXT,K-M-DESC-1 \?CND4
FSET CH-DENKEEPER,FL-SEEN
FSET TH-OPIUM-GAS,FL-SEEN
?CND4: EQUAL? CONTEXT,K-M-DESC-1,K-M-DESC-2 \?CCL8
PRINTI "After fighting the urge to turn and run, you enter and find yourself "
JUMP ?CND6
?CCL8: PRINTI "You are standing - rather nervously - "
?CND6: PRINTI "in the Bar of Gold, the most infamous opium den in London. The proprietor is a most unsavory character who "
EQUAL? CONTEXT,K-M-DESC-1,K-M-DESC-2 \?CCL11
PRINTI "gives you a sidelong glance as you enter and then ignores you"
JUMP ?CND9
?CCL11: PRINTI "hasn't given you a second look since you came in"
?CND9: PRINTC 46
CRLF
RFALSE
?CCL3: EQUAL? CONTEXT,K-M-ENTERING \?CCL13
EQUAL? GL-PUPPY,CH-WIGGINS \?CCL13
ICALL2 RT-THEO-PRINT,CH-WIGGINS
PRINTI " says, ""You must be stark raving bonkers. That's the most dangerous place in London. I'll wait out here, thank you very much!"""
CRLF
CRLF
SET 'GL-PUPPY,FALSE-VALUE
RETURN GL-PUPPY
?CCL13: ZERO? CONTEXT \FALSE
EQUAL? GL-PRSA,V?ENTER \?CCL19
EQUAL? GL-PLACE-CUR,RM-SWAN-LANE \FALSE
ICALL2 RT-DO-WALK,P?WEST
RTRUE
?CCL19: EQUAL? GL-PRSA,V?EXIT \FALSE
EQUAL? GL-PLACE-CUR,RM-BAR-OF-GOLD \FALSE
ICALL2 RT-DO-WALK,P?EAST
RTRUE
.FUNCT RT-AC-RM-LAIR,CONTEXT
CALL2 RT-DESCFCN-CONTEXT,CONTEXT
ZERO? STACK /?CCL3
EQUAL? CONTEXT,K-M-DESC-1 \?CCL6
FSET CH-MORIARTY,FL-SEEN
FSET TH-LAIR-KEY,FL-SEEN
FSET TH-CROWN-JEWELS,FL-SEEN
FSET TH-MORIARTY-DESK,FL-SEEN
FSET TH-ROPE,FL-SEEN
PRINTI "At last you come face to face with the evil Professor. He is sitting placidly behind his desk, looking at you as if you were some botanical specimen."
CRLF
CRLF
PRINTI "As you look around the room, you see Sherlock Holmes tied to a chair. He is only inches away from the Crown Jewels, which Moriarty has spread out on his desk, the better to taunt Holmes."
CRLF
CRLF
PRINTI "Holmes looks up and says, ""Ah, there you are Watson."" He turns his head towards Moriarty and says, ""You see, Professor, you grossly underestimate the intelligence and determination of your fellow countrymen."""
CRLF
CRLF
PRINTR """Watson,"" he continues. ""The Professor and I have just been chatting about why he led us on this merry chase. If you care to ask him, I'm sure he would be happy to fill you in as well."""
?CCL6: EQUAL? CONTEXT,K-M-DESC-3 \FALSE
PRINTI "The room is simply, but elegantly, furnished."
FSET? CH-HOLMES,FL-LOCKED \?CND8
SET 'GL-PUPPY-MSG?,FALSE-VALUE
PRINTC 32
CALL2 RT-PICK-NEXT,GL-HOLMES-DESC-TXT
PRINT STACK
PRINT K-SECURELY-BOUND-MSG
PRINTC 46
?CND8: CRLF
RFALSE
?CCL3: EQUAL? CONTEXT,K-M-ENTERED \?CND1
SET 'GL-PUPPY,CH-HOLMES
?CND1: EQUAL? CONTEXT,K-M-BEG \FALSE
EQUAL? GL-PRSA,V?TAKE,V?SHOW \?CCL16
EQUAL? GL-PRSO,TH-BREATH /FALSE
FSET? GL-PRSO,FL-BODYPART /FALSE
FSET? GL-PRSO,FL-WORN /FALSE
FSET? CH-MORIARTY,FL-LOCKED /FALSE
FSET? CH-MORIARTY,FL-ASLEEP /FALSE
CALL RT-META-IN?,GL-PRSO,GL-WINNER
ZERO? STACK /?CCL30
CALL RT-DO-CLOCK-SET,GL-TIME-PARM,0,1,0
ICALL RT-ALARM-SET-REL,RT-I-TAKE-WATSONS-STUFF,STACK
MOVE GL-PRSO,GL-WINNER
PRINTI "Moriarty's normally emotionless features dissolve in rage. He shouts at Akbar, ""Why didn't you take that from him when you brought him in?"""
CRLF
CRLF
PRINTR "The outburst startles Akbar into momentary inaction, but he quickly recovers and starts to come towards you with a violent look in his eyes."
?CCL30: PRINTI "Akbar steps in your way"
FSET? TH-WATSONS-HAT,FL-WORN \?CND31
PRINTI ", says, ""Pardon me, honourable sir,"""
?CND31: PRINTI " and stops you from taking "
ICALL1 RT-THEO-PRINT
PRINTR "."
?CCL16: EQUAL? GL-PRSA,V?RELEASE \?CCL34
EQUAL? GL-PRSO,TH-BREATH /FALSE
?CCL34: EQUAL? GL-PRSA,V?UNTIE,V?RELEASE \?CCL38
EQUAL? GL-PRSO,TH-ROPE /FALSE
FSET? GL-PRSO,FL-LOCKED \?CCL43
FSET? CH-AKBAR,FL-ASLEEP /?CTR45
FSET? CH-AKBAR,FL-LOCKED \?CCL46
?CTR45: FCLEAR GL-PRSO,FL-LOCKED
ICALL RT-CYOU-MSG,STR?720,STR?721
ICALL1 RT-THEO-PRINT
EQUAL? GL-PRSO,TH-ROPE-AUX1 \?CCL51
SET 'TH-ROPE-AUX1,TH-ROPE-AUX2
SET 'TH-ROPE-AUX2,-1
EQUAL? TH-ROPE-AUX1,-1 \?CND49
MOVE TH-ROPE,CH-PLAYER
FCLEAR TH-ROPE,FL-NODESC
PRINTI ", keeping "
ICALL2 RT-THEO-PRINT,TH-ROPE
JUMP ?CND49
?CCL51: EQUAL? GL-PRSO,TH-ROPE-AUX2 \?CND49
SET 'TH-ROPE-AUX2,-1
?CND49: PRINTC 46
CRLF
EQUAL? GL-PRSO,CH-MORIARTY,CH-AKBAR \TRUE
FSET? CH-AKBAR,FL-ASLEEP /TRUE
CRLF
EQUAL? GL-PRSO,CH-MORIARTY \?CCL61
PRINTI "Bad move. As soon as he is free, Moriarty"
JUMP ?CND59
?CCL61: PRINTI "Akbar immediately unties Moriarty, who"
?CND59: PRINTI " unlocks his desk and pulls out a pistol. ""Thank you for releasing me, gentlemen,"" he says, waving the gun at you. ""Very sporting of you."" He glances at his pocketwatch. ""We shouldn't have too long to wait."" Minutes later you hear newsboys running through the streets shouting about the resignation of the Prime Minister."
CRLF
ICALL1 RT-QSR
RTRUE
?CCL46: CALL1 RT-ROPE-MSG
RSTACK
?CCL43: EQUAL? GL-PRSA,V?RELEASE /FALSE
ICALL1 RT-CTHEO-PRINT
ICALL2 RT-ISNT-ARENT-MSG,GL-PRSO
PRINTR "tied up."
?CCL38: EQUAL? GL-PRSA,V?TIE-UP \?CCL65
EQUAL? GL-PRSI,TH-ROPE,ROOMS /?CCL65
CALL1 RT-IMPOSSIBLE-MSG
RSTACK
?CCL65: EQUAL? GL-PRSA,V?TIE,V?TIE-UP \?CCL69
EQUAL? GL-PRSO,CH-PLAYER,CH-ME /?CTR68
EQUAL? GL-PRSI,CH-PLAYER,CH-ME \?CCL69
?CTR68: PRINTR "We'll assume you're joking."
?CCL69: EQUAL? GL-PRSA,V?TIE,V?TIE-UP \FALSE
CALL2 RT-VISIBLE?,TH-ROPE
ZERO? STACK /?CCL78
FSET? CH-AKBAR,FL-ASLEEP /?CTR80
FSET? CH-AKBAR,FL-LOCKED \?CCL81
?CTR80: EQUAL? CH-HOLMES,GL-PRSI,GL-PRSO \?CND84
PRINTR "Surely you jest."
?CND84: EQUAL? TH-ROPE-AUX1,-1 \?CCL88
SET 'TH-ROPE-AUX1,GL-PRSO
JUMP ?CND86
?CCL88: EQUAL? TH-ROPE-AUX2,-1 \?CCL90
SET 'TH-ROPE-AUX2,GL-PRSO
?CND86: EQUAL? GL-PRSI,ROOMS \?CND91
SET 'GL-PRSI,FALSE-VALUE
?CND91: MOVE TH-ROPE,GL-PLACE-CUR
FSET TH-ROPE,FL-NODESC
FSET GL-PRSO,FL-LOCKED
EQUAL? GL-PRSI,FALSE-VALUE,TH-ROPE \?CCL95
ICALL RT-CYOU-MSG,STR?722,STR?723
PRINTI "up "
ICALL1 RT-THEO-PRINT
PRINTR "."
?CCL90: ICALL2 RT-CTHEO-PRINT,TH-ROPE
PRINTR " is not long enough."
?CCL95: EQUAL? TH-ROPE-AUX2,-1 /?CCL97
ICALL RT-CYOU-MSG,STR?722,STR?723
PRINTI "up "
ICALL1 RT-THEO-PRINT
PRINTI ", but "
ICALL2 RT-THEO-PRINT,TH-ROPE
PRINTI " is not long enough to tie up "
ICALL1 RT-THEI-PRINT
PRINTR " as well."
?CCL97: FSET GL-PRSI,FL-LOCKED
PRINTI "You tie "
ICALL1 RT-THEO-PRINT
PRINTI " to "
ICALL1 RT-THEI-PRINT
PRINTR "."
?CCL81: CALL1 RT-ROPE-MSG
RSTACK
?CCL78: PRINTI "You don't have "
ICALL2 RT-A-PRINT,TH-ROPE
PRINTR "."
.FUNCT RT-AC-RM-NAVE,CONTEXT
CALL2 RT-DESCFCN-CONTEXT,CONTEXT
ZERO? STACK /?CCL3
EQUAL? CONTEXT,K-M-DESC-1 \?CCL6
FSET TH-NEWTON-TOMB,FL-SEEN
PRINTI "You enter the Abbey and pause in the Nave, struck by the sheer magnificence of the building. Massive Purbeck columns march the length of the Nave, and they rise in perfect proportion to meet each other in a series of pointed arches that are the hallmark of the Gothic style."
CRLF
CRLF
PRINTR "The interior of the Abbey is dark, cold, and gloomy - but after a few moments your eyes adjust and you can make out a tomb at the far end of the room."
?CCL6: EQUAL? CONTEXT,K-M-DESC-2,K-M-DESC-3 \FALSE
EQUAL? CONTEXT,K-M-DESC-2 \?CCL10
EQUAL? GL-PLACE-PRV,RM-BROAD-SANCTUARY \?CCL13
PRINTI "You walk through the massive door and find yourself once again in"
JUMP ?CND8
?CCL13: PRINTI "You return to"
JUMP ?CND8
?CCL10: EQUAL? CONTEXT,K-M-DESC-3 \?CND8
PRINTI "You are standing in"
?CND8: PRINTI " the Nave. Amidst the massive columns, one tomb in particular catches your attention."
CRLF
RFALSE
?CCL3: EQUAL? CONTEXT,K-M-ENTERED \?CCL16
SET 'PLAYER-IN-ABBEY,TRUE-VALUE
RFALSE
?CCL16: EQUAL? CONTEXT,K-M-EXIT \FALSE
EQUAL? GL-P-WALK-DIR,P?OUT,P?WEST \FALSE
SET 'PLAYER-IN-ABBEY,FALSE-VALUE
RFALSE
.FUNCT RT-AC-RM-EVANGELIST-CHAPEL,CONTEXT
CALL2 RT-DESCFCN-CONTEXT,CONTEXT
ZERO? STACK /?CCL3
EQUAL? CONTEXT,K-M-DESC-1 \?CCL6
FSET TH-BANK-OF-CANDLES,FL-SEEN
FSET TH-VERE-TOMB,FL-SEEN
PRINTI "You enter the Evangelist Chapel and wonder what it is about this room that makes you feel it is somehow different from the rest of the Abbey."
CRLF
RFALSE
?CCL6: EQUAL? CONTEXT,K-M-DESC-2 \?CCL8
PRINTI "You return to the welcome warmth provided by the array of candles in the Evangelist Chapel."
CRLF
RFALSE
?CCL8: PRINTI "Light! Warmth! There is a bank of candles here lit by devoted worshippers. The candles warm the room so effectively that after a few moments you actually become uncomfortable."
CRLF
CRLF
PRINTI "One of the most unusual tombs in the Abbey is here."
CRLF
RFALSE
?CCL3: EQUAL? CONTEXT,K-M-BEG \FALSE
ICALL2 RT-PAPER-WARMING,TH-WHITE-PAPER
ICALL2 RT-PAPER-WARMING,TH-BLUE-PAPER
ICALL2 RT-PAPER-WARMING,TH-ORANGE-PAPER
ICALL2 RT-PAPER-WARMING,TH-YELLOW-PAPER
ICALL2 RT-PAPER-WARMING,TH-BROWN-PAPER
ICALL2 RT-PAPER-WARMING,TH-GREEN-PAPER
RFALSE
.FUNCT RT-AC-RM-HENRY-VII-CHAPEL,CONTEXT
CALL2 RT-DESCFCN-CONTEXT,CONTEXT
ZERO? STACK /?CCL3
EQUAL? CONTEXT,K-M-DESC-1 \?CND4
FSET TH-HENRY-VII-TOMB,FL-SEEN
?CND4: EQUAL? CONTEXT,K-M-DESC-1,K-M-DESC-2 \?CCL8
PRINTI "You enter"
JUMP ?CND6
?CCL8: PRINTI "You are in"
?CND6: PRINTI " Henry VII's chapel, which is one of the most beautiful chapels in the world. The ceiling is a masterpiece of delicate fan vaulting, and the Renaissance gilt-bronze tomb is obviously the work of one of the Italian masters."
CRLF
RFALSE
?CCL3: EQUAL? GL-PRSA,V?LOOK-UP \FALSE
PRINT K-BREATH-TAKING-MSG
CRLF
RTRUE
.FUNCT RT-EX-ENTER-BANK-OF-ENGLAND
LESS? CH-BANK-GUARD-AUX1,4 \?CCL3
PRINTI "The guard stops you as you try to enter. ""Excuse me, sir. You can't go in there. And don't even THINK about trying to bribe me."""
CRLF
ICALL2 RT-THIS-IS-IT,CH-BANK-GUARD
RFALSE
?CCL3: IN? TH-BOX-KEY,TH-GUARDS-POCKET \?CCL5
PRINTI "Holmes takes you to one side and whispers, ""It is obvious, dear fellow, that it would be pointless to enter the bank with no means of unlocking anything we may find inside."""
CRLF
RFALSE
?CCL5: IN? CH-BANK-GUARD,RM-THREADNEEDLE-ST /?CCL7
RETURN RM-BANK-OF-ENGLAND
?CCL7: PRINTI "As soon as you enter, the guard leaves."
CRLF
CRLF
REMOVE CH-BANK-GUARD
RETURN RM-BANK-OF-ENGLAND
.FUNCT RT-AC-RM-BUCKINGHAM-PALACE,CONTEXT
ZERO? CONTEXT \FALSE
EQUAL? GL-PRSA,V?ENTER \?CCL5
EQUAL? GL-PLACE-CUR,RM-QUEENS-GARDENS \FALSE
ICALL2 RT-DO-WALK,P?WEST
RTRUE
?CCL5: EQUAL? GL-PRSA,V?EXIT \FALSE
EQUAL? GL-PLACE-CUR,RM-BUCKINGHAM-PALACE \FALSE
ICALL2 RT-DO-WALK,P?EAST
RTRUE
.FUNCT RT-EX-RM-ENTER-BUCKINGHAM-PALACE
EQUAL? GL-PRSO,P?WEST,P?IN \FALSE
EQUAL? GL-PLACE-CUR,RM-QUEENS-GARDENS \FALSE
ICALL2 RT-CTHEO-PRINT,CH-PALACE-GUARD
PRINTI " steps into your path and says, ""I'm sorry, but I've been instructed to let no one into the Palace unless I receive certain items of interest to the Crown."""
CRLF
RFALSE
.FUNCT RT-EX-RM-STEER-BOAT
ICALL2 RT-ALARM-CLR,RT-I-MOVE-DOWNSTREAM
PRINTI "[To move the boat, ROW or PADDLE in a given direction, or LAND it.]"
CRLF
RFALSE
.FUNCT RT-EX-RM-LAND-BOAT
PRINTI "[Land the Boat.]"
CRLF
ICALL1 RT-LAND-BOAT
RFALSE
.FUNCT RT-EX-RM-LAUNCH-BOAT
IN? CH-PLAYER,TH-BOAT \?CCL3
PRINTI "[Launch the Boat.]"
CRLF
ICALL1 RT-LAUNCH-BOAT
RFALSE
?CCL3: PRINTI "The last man who walked on water was killed by a bunch of Romans. Why don't you play it safe and use a boat?"
CRLF
RFALSE
.FUNCT RT-EX-PARLOUR-ENTRY
FSET? CH-HOLMES,FL-ASLEEP \?CCL3
ICALL2 RT-CTHEO-PRINT,CH-HUDSON
PRINT K-HUDSON-WORRIED-MSG
CRLF
RFALSE
?CCL3: FSET? LG-PARLOUR-DOOR,FL-OPENED /?CCL5
ICALL2 RT-CTHEO-PRINT,LG-PARLOUR-DOOR
PRINTI " is closed."
CRLF
RFALSE
?CCL5: EQUAL? GL-PRSO,P?NORTH,P?IN \FALSE
EQUAL? GL-PLACE-CUR,RM-ENTRY-HALL \FALSE
RETURN RM-PARLOUR
.FUNCT RT-EX-LEAVE-EMBANKMENT
FSET? TH-SUIT-OF-ARMOUR,FL-WORN \?CND1
PRINT K-HEAVY-ARMOUR-MSG
CRLF
RFALSE
?CND1: IN? GL-WINNER,TH-BOAT \?CND3
ICALL RT-PERFORM,V?EXIT,TH-BOAT
IN? GL-WINNER,RM-THE-EMBANKMENT \FALSE
?CND3: EQUAL? GL-PRSO,P?NORTH \?CCL9
EQUAL? GL-PLACE-CUR,RM-THE-EMBANKMENT \?CCL9
RETURN RM-FLEET-STREET
?CCL9: EQUAL? GL-PRSO,P?EAST \FALSE
EQUAL? GL-PLACE-CUR,RM-THE-EMBANKMENT \FALSE
RETURN RM-UPPER-THAMES-ST
.ENDI