.FUNCT ON-PLATFORM?,RM EQUAL? RM,PLATFORM-A,PLATFORM-B,PLATFORM-C /?THN6 EQUAL? RM,PLATFORM-D,PLATFORM-E \FALSE ?THN6: GETP RM,P?CAR RSTACK .FUNCT PLATFORM-GLOBAL-F,P EQUAL? PRSA,V?WALK-TO \?ELS5 ZERO? ON-TRAIN /?ELS5 CALL PERFORM,V?LEAVE,TRAIN RTRUE ?ELS5: CALL2 ON-PLATFORM?,HERE ZERO? STACK /?ELS9 CALL DO-INSTEAD-OF,HERE,PLATFORM-GLOBAL RTRUE ?ELS9: CALL ZMEMQ,HERE,STATION-ROOMS ZERO? STACK /?ELS11 GETP HERE,P?CAR GET STATION-ROOMS,STACK CALL DO-INSTEAD-OF,STACK,PLATFORM-GLOBAL RTRUE ?ELS11: ZERO? ON-TRAIN /FALSE ZERO? IN-STATION /FALSE CALL GLOBAL-IN?,SCENERY-LEFT,HERE ZERO? STACK /FALSE GET STATION-ROOMS,CAR-HERE CALL DO-INSTEAD-OF,STACK,PLATFORM-GLOBAL RTRUE .FUNCT PASS-CUSTOMS-F ZERO? CUSTOMS-SWEEP \?ELS5 GETP PLATFORM-A,P?CAR CALL NEXT-CAR-SWITCHEROO,CAR-HERE,STACK RETURN PLATFORM-A ?ELS5: FSET? PASSPORT,LOCKED \?ELS7 CALL2 START-SENTENCE,CUSTOMS-AGENT PRINTI " makes a gesture, asking for " PRINTD PASSPORT PRINTI "." CRLF CALL2 THIS-IS-IT,PASSPORT CALL2 THIS-IS-IT,CUSTOMS-AGENT RFALSE ?ELS7: ZERO? BRIEFCASE-PASSED \?ELS11 IN? BRIEFCASE,PLAYER \?ELS11 CALL2 START-SENTENCE,CUSTOMS-AGENT PRINTI " makes a gesture, " FSET? BRIEFCASE,OPENBIT \?ELS18 PRINTI "pointing at" CALL2 HIM-HER-IT,BRIEFCASE PRINTI "." CRLF JUMP ?CND16 ?ELS18: PRINTI "as if to say, ""Open" CALL2 HIM-HER-IT,BRIEFCASE PRINTI ".""" CRLF ?CND16: CALL2 THIS-IS-IT,BRIEFCASE CALL2 THIS-IS-IT,CUSTOMS-AGENT RFALSE ?ELS11: FIRST? POCKET \?ELS26 CALL2 START-SENTENCE,CUSTOMS-AGENT PRINTI " makes a gesture, as if to say, ""Empty " PRINTD POCKET PRINTI ".""" CRLF CALL2 THIS-IS-IT,POCKET CALL2 THIS-IS-IT,CUSTOMS-AGENT RFALSE ?ELS26: IN? MCGUFFIN,PLAYER \?ELS30 CALL2 START-SENTENCE,CUSTOMS-AGENT PRINTI " confiscates" CALL2 HIM-HER-IT,MCGUFFIN PRINTI " and arrests you!" CRLF CALL1 FINISH RSTACK ?ELS30: IN? GUN,PLAYER \?ELS34 CALL2 START-SENTENCE,CUSTOMS-AGENT PRINTI " confiscates" CALL2 HIM-HER-IT,GUN PRINTI " and arrests you!" CRLF CALL1 FINISH RSTACK ?ELS34: CALL FLUSH?,CAR-ROOMS,FALSE-VALUE,FALSE-VALUE,FALSE-VALUE CALL FLUSH?,CAR-ROOMS,TRUE-VALUE,FALSE-VALUE,FALSE-VALUE CALL FLUSH?,CAR-ROOMS-DINER,FALSE-VALUE,FALSE-VALUE,FALSE-VALUE CALL FLUSH?,CAR-ROOMS-FANCY,FALSE-VALUE,FALSE-VALUE,FALSE-VALUE CALL QUEUE,I-DEPART-WARNING,5 PUT STACK,0,1 GETP PLATFORM-A,P?CAR CALL NEXT-CAR-SWITCHEROO,CAR-HERE,STACK CALL HE-SHE-IT,CUSTOMS-AGENT,TRUE-VALUE,STR?34 PRINTI " approvingly." CRLF RETURN PLATFORM-A .FUNCT UNPASS-CUSTOMS-F ZERO? CUSTOMS-SWEEP /?ELS5 ZERO? IN-STATION /?ELS5 CALL2 START-SENTENCE,GUARD PRINTI " prevents you and points to the train." CRLF RFALSE ?ELS5: GETP PLATFORM-B,P?CAR CALL NEXT-CAR-SWITCHEROO,CAR-HERE,STACK RETURN PLATFORM-B .FUNCT NEXT-PLATFORM-TO-REAR-F CALL2 NEXT-PLATFORM-F,1 RSTACK .FUNCT NEXT-PLATFORM-TO-FWD-F CALL2 NEXT-PLATFORM-F,-1 RSTACK .FUNCT NEXT-PLATFORM-F,D,N GETP HERE,P?CAR ADD D,STACK >N CALL NEXT-CAR-SWITCHEROO,CAR-HERE,N GET STATION-ROOMS,N RSTACK .FUNCT PLATFORM-F,RARG=0,P EQUAL? RARG,M-LOOK \?ELS5 FSET PLATFORM-A,TOUCHBIT FSET PLATFORM-B,TOUCHBIT FSET PLATFORM-C,TOUCHBIT FSET PLATFORM-D,TOUCHBIT FSET PLATFORM-E,TOUCHBIT PRINTI "You are standing " EQUAL? HERE,PLATFORM-A \?ELS10 PRINTI "at the north end of " JUMP ?CND8 ?ELS10: EQUAL? HERE,PLATFORM-E \?ELS14 PRINTI "at the south end of " JUMP ?CND8 ?ELS14: PRINTI "on " ?CND8: PRINTI "the concrete platform of the " PRINTD SCENERY-OBJ PRINTI " railway station. A cantilevered roof looms overhead, with occasional drops of rain water falling from its edge. To the west is the " EQUAL? HERE,PLATFORM-A \?ELS25 PRINTD REST-ROOM-MEN JUMP ?CND23 ?ELS25: EQUAL? HERE,PLATFORM-B \?ELS27 PRINTD REST-ROOM-WOMEN JUMP ?CND23 ?ELS27: EQUAL? HERE,PLATFORM-E \?ELS29 PRINTD LUGGAGE-ROOM JUMP ?CND23 ?ELS29: EQUAL? HERE,PLATFORM-C \?ELS34 PRINTI "entrance to " JUMP ?CND32 ?ELS34: PRINTI "wall of " ?CND32: PRINTI "the station house" ?CND23: PRINTI ". To the east " ZERO? IN-STATION /?ELS47 PRINTI "is a passenger train, the " PRINT TRAIN-NAME PRINTI ", hissing and blowing off steam" JUMP ?CND45 ?ELS47: PRINTI "are the train tracks" ?CND45: PRINTR ". The place is crowded with people milling about, searching for a certain passenger or the right car, or simply waiting." ?ELS5: EQUAL? RARG,M-BEG \?ELS63 CALL1 EXIT-VERB? ZERO? STACK /FALSE EQUAL? VARIATION,2,4 \?ELS71 CALL FIND-FLAG-HERE,PERSONBIT,PLAYER >P JUMP ?CND69 ?ELS71: CALL FIND-FLAG-HERE,PERSONBIT,PLAYER,CONTACT,BAD-SPY >P ?CND69: ZERO? P /FALSE CALL IN-MOTION?,P,TRUE-VALUE ZERO? STACK \FALSE EQUAL? P,GUARD \?CND79 ZERO? GUARD-SUSPICION /?CND79 FSET? GUARD,TOUCHBIT \?CND79 FCLEAR GUARD,TOUCHBIT PUTP GUARD,P?LDESC,10 PRINTI "You lose the guard in the crowd." CRLF ?CND79: FSET P,NDESCBIT RFALSE ?ELS63: EQUAL? RARG,M-END \?ELS87 CALL2 CROWD-F,TRUE-VALUE RFALSE ?ELS87: EQUAL? RARG,M-ENTER \?ELS89 ZERO? CUSTOMS-SWEEP /FALSE ZERO? IN-STATION /FALSE LOC CONDUCTOR CALL2 ON-PLATFORM?,STACK ZERO? STACK \FALSE CALL2 QUEUED?,I-TRAIN-ARREST ZERO? STACK \FALSE GET GOAL-TABLES,CONDUCTOR-C CALL CONDUCTOR-OFF,STACK,FALSE-VALUE RFALSE ?ELS89: ZERO? RARG \FALSE EQUAL? PRSA,V?EXAMINE \FALSE IN? CONTACT,HERE /FALSE CALL2 CALL-FOR-EXTRA,HERE RFALSE .FUNCT NO-EMBARK-TEST ZERO? IN-STATION /FALSE ZERO? CUSTOMS-SWEEP /FALSE FSET? PASSPORT,LOCKED /TRUE EQUAL? HERE,PLATFORM-A \TRUE ZERO? BRIEFCASE-PASSED \FALSE IN? BRIEFCASE,WINNER /TRUE RFALSE .FUNCT EMBARK-F CALL1 NO-EMBARK-TEST ZERO? STACK /?ELS5 PRINTI "You have to pass" CALL2 HIM-HER-IT,CUSTOMS-AGENT PRINTI " first." CRLF RFALSE ?ELS5: ZERO? IN-STATION \?THN10 EQUAL? HERE,BESIDE-TRACKS \?ELS9 ?THN10: SET 'ON-TRAIN,TRUE-VALUE ZERO? PULLED-STOP-CORD /?CND12 CALL1 I-TRAIN-ARREST ?CND12: FSET? PEN,TOUCHBIT /?CND16 FSET PEN,NDESCBIT ?CND16: CALL2 V-REAR,CAR-HERE RSTACK ?ELS9: PRINTI "Walking on the tracks looks too dangerous!" CRLF RFALSE .FUNCT CROWD-F,ARG=0,OBJ ZERO? ARG \?THN8 EQUAL? PRSA,V?SEARCH-FOR,V?SEARCH /?THN8 EQUAL? PRSA,V?LOOK-THROUGH,V?LOOK-INSIDE,V?EXAMINE \?ELS5 ?THN8: SET 'OBJ,CONTACT IN? OBJ,HERE \?ELS18 FSET? OBJ,NDESCBIT /?THN15 ?ELS18: SET 'OBJ,GUARD IN? OBJ,HERE \?ELS20 FSET? OBJ,NDESCBIT /?THN15 ?ELS20: CALL CALL-FOR-EXTRA,HERE,FALSE-VALUE >OBJ ZERO? OBJ /FALSE ?THN15: FCLEAR OBJ,NDESCBIT PRINTI "One part of the crowd catches your eye: " CALL2 DESCRIBE-PERSON,OBJ CALL2 THIS-IS-IT,OBJ RTRUE ?ELS5: EQUAL? PRSA,V?THROUGH \?ELS24 PRINTR "You do your best to mingle with the crowd, but you can't help feeling like a conspicuous foreigner." ?ELS24: EQUAL? PRSA,V?LISTEN \FALSE PRINTR "Familiar crowd noises: the buzz of conversations, the clunk of luggage and parcels, and echoes from the bare surfaces." .FUNCT LUGGAGE-ROOM-F,RARG=0 EQUAL? RARG,M-ENTER \FALSE MOVE CLERK,LUGGAGE-ROOM RFALSE .FUNCT REST-ROOM-STATION-TEST,RARG LOC CONTACT EQUAL? STACK,REST-ROOM-MEN,REST-ROOM-WOMEN \FALSE EQUAL? VARIATION,3,4 \?ELS7 EQUAL? RARG,M-OTHER \FALSE RTRUE ?ELS7: EQUAL? RARG,M-FLASH \FALSE RTRUE .FUNCT REST-ROOM-STATION-F,RARG=0,X,Y,N,V EQUAL? RARG,M-ENTER \?ELS5 MOVE PAPER-FIXTURE,HERE RFALSE ?ELS5: CALL2 REST-ROOM-STATION-TEST,RARG ZERO? STACK /FALSE CALL2 RANDOM-PER-VAR,CONTACT-MAX GET EXTRA-TABLE,STACK >X CALL MOVE-EXTRA?,X,LIMBO-FWD,1 ZERO? STACK \?CND8 SET 'N,CONTACT-MAX ?PRG11: GET EXTRA-TABLE,N >X CALL MOVE-EXTRA?,X,LIMBO-FWD,1 ZERO? STACK /?ELS15 JUMP ?CND8 ?ELS15: DLESS? 'N,1 \?PRG11 CALL1 V-FOO JUMP ?PRG11 ?CND8: CALL2 VISIBLE?,CONTACT >V EQUAL? RARG,M-FLASH \?ELS20 CALL1 GUARD-NOTICES FCLEAR MCGUFFIN,NDESCBIT MOVE MCGUFFIN,PLAYER CALL2 SET-PASSES,3 FSET MCGUFFIN,TAKEBIT CALL HE-SHE-IT,CONTACT,TRUE-VALUE,STR?298 PRINTI " you the " PRINTD MCGUFFIN JUMP ?CND18 ?ELS20: SET 'TRAVELER-CHECKED-CASE,FALSE-VALUE SET 'N,0 GET BRIEFCASE-TBL,0 >Y ?PRG25: IGRTR? 'N,Y \?ELS29 MOVE MCGUFFIN,BAD-SPY JUMP ?REP26 ?ELS29: GET BRIEFCASE-TBL,N ZERO? STACK \?PRG25 PUT BRIEFCASE-TBL,N,MCGUFFIN ?REP26: CALL2 SET-PASSES,2 ZERO? V /?CND18 CALL2 START-SENTENCE,BAD-SPY PRINTI " enters, looking very nervous. " CALL2 START-SENTENCE,CONTACT PRINTI " gives something to" CALL2 THIS-IS-IT,BAD-SPY CALL2 HIM-HER-IT,BAD-SPY ?CND18: ZERO? V /?CND40 PRINTI " and whispers, " EQUAL? VARIATION,3,4 \?ELS48 CALL2 PRODUCE-GIBBERISH,4 PRINTI "(Fortunately, you can translate two phrases: """ PRINTD PASSWORD PRINTI """ and """ PRINTD PASSOBJECT PRINTI "."")" CRLF JUMP ?CND46 ?ELS48: PRINTI """No time. Meet agent, " CALL2 PRINTA,X PRINTI ", in Gola; display " CALL2 PRINTA,PASSOBJECT PRINTI "; use word" EQUAL? PASSWORD,CAMERA,HANKY,SCARF \?CND55 PRINTI "s" ?CND55: PRINTI " '" PRINTD PASSWORD PRINTI "'."" " ?CND46: PRINTI "Then" CALL2 HE-SHE-IT,CONTACT PRINTI " is gone." CRLF ?CND40: CALL2 NEW-CONTACT,X EQUAL? RARG,M-FLASH /TRUE ZERO? V \TRUE RFALSE .FUNCT NEW-CONTACT,X FCLEAR CONTACT,TOUCHBIT PUTP CONTACT,P?LDESC,0 MOVE CONTACT,LIMBO-FWD PUTP CONTACT,P?ACTION,CONTACT-DEFAULT-F SET 'CONTACT,X GETP CONTACT,P?ACTION >CONTACT-DEFAULT-F PUTP CONTACT,P?ACTION,CONTACT-F RTRUE .FUNCT COUNTER-CAFE-F EQUAL? PRSA,V?SIT-AT \FALSE CALL PERFORM,V?SIT,CHAIR RTRUE .FUNCT TICKET-AREA-F,RARG=0 EQUAL? RARG,M-ENTER \FALSE MOVE CLERK,TICKET-AREA RFALSE .FUNCT TOWN-F PRINTI "As you start to venture into the town," CALL2 HE-SHE-IT,OFFICER CALL2 THIS-IS-IT,OFFICER PRINTI " recognizes you as an unauthorized foreigner and takes a step in your direction. As you stop walking, so does" CALL2 HE-SHE-IT,OFFICER PRINTI "." CRLF FSET OFFICER,SEENBIT RFALSE .FUNCT SIDEWALK-F,RARG=0 EQUAL? RARG,M-END \?ELS5 CALL2 CROWD-F,TRUE-VALUE RFALSE ?ELS5: ZERO? RARG \FALSE EQUAL? PRSA,V?EXAMINE \FALSE IN? CONTACT,HERE /FALSE CALL2 CALL-FOR-EXTRA,HERE RFALSE .ENDI