checkpoint/spies.zap
historicalsource 8ae301e53b Final Revision
2019-04-13 22:12:44 -04:00

1686 lines
42 KiB
Plaintext

.FUNCT GUN-F
EQUAL? PRSA,V?AIM \?ELS5
CALL PERFORM,V?SHOW,PRSI,PRSO
RTRUE
?ELS5: EQUAL? PRSA,V?SHOW \FALSE
EQUAL? PRSI,GUN \FALSE
CALL2 VISIBLE?,CONDUCTOR
ZERO? STACK /?ELS14
CALL ARREST-PLAYER,STR?61,CONDUCTOR,TRUE-VALUE,GUN
RSTACK
?ELS14: CALL2 VISIBLE?,GUARD
ZERO? STACK /?ELS16
CALL ARREST-PLAYER,STR?61,GUARD,TRUE-VALUE,GUN
RSTACK
?ELS16: CALL2 VISIBLE?,WAITER
ZERO? STACK /FALSE
CALL ARREST-PLAYER,STR?61,WAITER,TRUE-VALUE,GUN
RSTACK
.FUNCT START-BAD-SPY,VAL,GT,CAR
GET GOAL-TABLES,BAD-SPY-C >GT
PUT GT,GOAL-SCRIPT,I-BAD-SPY
GETP BAD-SPY,P?CAR >CAR
GRTR? CAR,CAR-MAX \?CND1
SET 'CAR,CAR-MAX
?CND1: CALL2 V-REAR,CAR
CALL MOVE-PERSON,BAD-SPY,STACK >VAL
PUTP BAD-SPY,P?CAR,CAR
PUT GT,GOAL-ENABLE,1
CALL ESTABLISH-GOAL-TRAIN,BAD-SPY,COMPARTMENT-START,CAR-START
RETURN VAL
.FUNCT I-BAD-SPY,GARG=0,L,V,BR,BL,RM,VAL=0
ZERO? IDEBUG \?THN4
EQUAL? GARG,G-DEBUG \?CND1
?THN4: PRINTI "[I-BAD-SPY:"
EQUAL? GARG,G-DEBUG /FALSE
?CND1: CALL2 PAUSE-SCRIPT?,I-BAD-SPY
ZERO? STACK \FALSE
LOC BAD-SPY >L
CALL2 VISIBLE?,BAD-SPY >V
CALL2 META-LOC,BRIEFCASE >BR
LOC BLOOD-SPOT >BL
EQUAL? GARG,G-ENROUTE \?ELS18
GETPT L,P?IN
GET STACK,REXIT >RM
EQUAL? BR,L,RM \?ELS23
CALL2 HIDDEN?,BRIEFCASE
ZERO? STACK \?ELS23
IN? BRIEFCASE,BAD-SPY /?ELS23
CALL ESTABLISH-GOAL,BAD-SPY,BR
RSTACK
?ELS23: EQUAL? BL,L,RM \?ELS27
CALL ESTABLISH-GOAL,BAD-SPY,BL
RSTACK
?ELS27: ZERO? V \?ELS29
ZERO? IDEBUG /FALSE
PRINTI "(0)]"
CRLF
RFALSE
?ELS29: EQUAL? HERE,BR \?ELS37
CALL2 HIDDEN?,BRIEFCASE
ZERO? STACK \?ELS37
IN? BRIEFCASE,BAD-SPY /?ELS37
CALL NEW-LDESC,BAD-SPY,30
SET 'BAD-SPY-DONE-PEEKING,TRUE-VALUE
GET GOAL-TABLES,BAD-SPY-C
PUT STACK,GOAL-SCRIPT,I-BAD-SPY-W-YOU
SET 'BAD-SPY-KNOWS-YOU,TRUE-VALUE
CALL ESTABLISH-GOAL-TRAIN,BAD-SPY,HERE,CAR-HERE
ZERO? IDEBUG /FALSE
PRINTI "(0)]"
CRLF
RFALSE
?ELS37: ZERO? IDEBUG /FALSE
PRINTI "(0)]"
CRLF
RFALSE
?ELS18: EQUAL? VARIATION,3,4 /?ELS55
EQUAL? GARG,G-REACHED \?ELS55
CALL NEW-LDESC,BAD-SPY,30
SET 'BAD-SPY-DONE-PEEKING,TRUE-VALUE
ZERO? V /?CND58
CALL HE-SHE-IT,BAD-SPY,TRUE-VALUE
PRINTI " enters, looks around, and "
?CND58: EQUAL? BL,L \?ELS66
ZERO? V /?CND67
GET GOAL-TABLES,BAD-SPY-C
PUT STACK,GOAL-SCRIPT,I-BAD-SPY-W-YOU
GET GOAL-TABLES,BAD-SPY-C
PUT STACK,GOAL-FUNCTION,I-BAD-SPY-W-YOU
SET 'BAD-SPY-KNOWS-YOU,TRUE-VALUE
PRINTI "sits down."
CRLF
?CND67: CALL2 HIDDEN?,BRIEFCASE
ZERO? STACK \?THN76
EQUAL? L,BR /?CND64
?THN76: CALL NEW-LDESC,BAD-SPY,18
ZERO? IDEBUG /?CND78
PRINTN V
PRINTC 93
CRLF
RETURN V
?CND78: RETURN V
?ELS66: ZERO? V /?CND64
PRINTI "pauses a minute."
CRLF
?CND64: IN? BRIEFCASE,PLAYER /?THN95
CALL2 HIDDEN?,BRIEFCASE
ZERO? STACK \?THN95
EQUAL? L,BR /?ELS94
?THN95: CALL QUEUE,I-BAD-SPY,1
PUT STACK,0,1
JUMP ?CND92
?ELS94: CALL1 SPY-TAKES-CASE
ZERO? V /?CND92
PRINTI "Then"
CALL HE-SHE-IT,BAD-SPY,0,STR?288
CALL2 HIM-HER-IT,BRIEFCASE
PRINTI " and takes it."
CRLF
?CND92: ZERO? IDEBUG /?CND105
PRINTN V
PRINTC 93
CRLF
RETURN V
?CND105: RETURN V
?ELS55: ZERO? GARG \FALSE
ADD 1,DINER-CAR
CALL ESTABLISH-GOAL-TRAIN,BAD-SPY,COMPARTMENT-1,STACK
ZERO? IDEBUG /FALSE
PRINTI "(0)]"
CRLF
RFALSE
.FUNCT SPY-TAKES-CASE
FCLEAR BRIEFCASE,TAKEBIT
FCLEAR BRIEFCASE,SEENBIT
FSET? BRIEFCASE,OPENBIT \?CND1
SET 'BRIEFCASE-WAS-OPEN,TRUE-VALUE
FCLEAR BRIEFCASE-LATCH,OPENBIT
FCLEAR BRIEFCASE,OPENBIT
CALL INSIDE-OBJ-TO,BRIEFCASE-TBL,BRIEFCASE,1
?CND1: MOVE BRIEFCASE,BAD-SPY
GET GOAL-TABLES,BAD-SPY-C
PUT STACK,GOAL-SCRIPT,I-BAD-SPY-W-CASE
CALL QUEUE,I-BAD-SPY-W-CASE,1
PUT STACK,0,1
RTRUE
.FUNCT I-BAD-SPY-W-CASE,GARG=0,V,L,GT,DR,N
ZERO? IDEBUG \?THN4
EQUAL? GARG,G-DEBUG \?CND1
?THN4: PRINTI "[I-BAD-SPY-W-CASE:"
EQUAL? GARG,G-DEBUG /FALSE
?CND1: CALL2 PAUSE-SCRIPT?,I-BAD-SPY-W-CASE
ZERO? STACK \FALSE
ZERO? GARG \?CND14
CALL ESTABLISH-GOAL-TRAIN,BAD-SPY,COMPARTMENT-5,PLATFORM-MAX
ZERO? IDEBUG /FALSE
PRINTI "(0)]"
CRLF
RFALSE
?CND14: CALL2 VISIBLE?,BAD-SPY >V
ZERO? V \?CND23
IN? BRIEFCASE,BAD-SPY \?CND23
FCLEAR BRIEFCASE,SEENBIT
?CND23: EQUAL? GARG,G-ENROUTE \?ELS32
ZERO? IDEBUG /FALSE
PRINTI "(0)]"
CRLF
RFALSE
?ELS32: EQUAL? GARG,G-REACHED \FALSE
LOC BAD-SPY >L
CALL NEW-LDESC,BAD-SPY,35
CALL FIND-FLAG-LG,L,DOORBIT >DR
FSET DR,LOCKED
ZERO? BRIEFCASE-WAS-OPEN \?CND41
FSET BRIEFCASE-LATCH,OPENBIT
FSET BRIEFCASE,OPENBIT
CALL TBL-TO-INSIDE,BRIEFCASE,BRIEFCASE-TBL,1
?CND41: ZERO? V /?CND44
CALL HE-SHE-IT,BAD-SPY,TRUE-VALUE
PRINTI " quickly opens"
CALL2 HIM-HER-IT,BRIEFCASE
?CND44: EQUAL? VARIATION,2,4 /?THN53
ZERO? LATCH-TURNED /?ELS52
?THN53: SET 'LATCH-TURNED,TRUE-VALUE
SET 'BAD-SPY-OPENED-CASE,TRUE-VALUE
GET GOAL-TABLES,BAD-SPY-C >GT
IN? MCGUFFIN,BRIEFCASE \?ELS57
JUMP ?CND55
?ELS57: IN? SPY-LIST,BRIEFCASE \?ELS59
SET 'LIST-RUBBED,TRUE-VALUE
IN? PASSOBJECT,BAD-SPY \?ELS62
JUMP ?CND55
?ELS62: EQUAL? PASSOBJECT,KNIFE \?ELS64
FCLEAR DR,LOCKED
PUT GT,GOAL-SCRIPT,I-TRAVELER-SEEKS-KNIFE
CALL ESTABLISH-GOAL-TRAIN,BAD-SPY,VESTIBULE-REAR-DINER,DINER-CAR
JUMP ?CND55
?ELS64: EQUAL? PASSOBJECT,FLOWER-GLOBAL \?CND55
FCLEAR DR,LOCKED
PUT GT,GOAL-FUNCTION,I-TRAVELER-SEEKS-FLOWER
EQUAL? L,REST-ROOM-REAR-DINER,REST-ROOM-REAR,OTHER-REST-ROOM-REAR /?CND55
GETP BAD-SPY,P?CAR
CALL2 V-REAR,STACK
CALL ESTABLISH-GOAL,BAD-SPY,STACK
JUMP ?CND55
?ELS59: ZERO? BAD-SPY-KNOWS-YOU /?ELS71
PUT GT,GOAL-SCRIPT,I-BAD-SPY-W-YOU
FCLEAR DR,LOCKED
CALL ESTABLISH-GOAL-TRAIN,BAD-SPY,HERE,CAR-HERE
JUMP ?CND55
?ELS71: ZERO? BRIEFCASE-WAS-OPEN \?CND75
FCLEAR BRIEFCASE-LATCH,OPENBIT
FCLEAR BRIEFCASE,OPENBIT
CALL INSIDE-OBJ-TO,BRIEFCASE-TBL,BRIEFCASE,1
?CND75: PUT GT,GOAL-FUNCTION,I-BAD-SPY-IMITATES
PUT GT,GOAL-SCRIPT,I-BAD-SPY-IMITATES
?CND55: ZERO? V /?CND50
PRINTC 46
CRLF
JUMP ?CND50
?ELS52: EQUAL? CAR-HERE,PLATFORM-MAX \?ELS88
EQUAL? HERE,COMPARTMENT-5 \?CND89
CALL1 TELL-GAS
?CND89: MOVE BRIEFCASE,SEAT-5
JUMP ?CND86
?ELS88: MOVE BRIEFCASE,OTHER-SEAT-5
?CND86: FSET BRIEFCASE,TAKEBIT
FCLEAR BAD-SPY,PERSONBIT
CALL NEW-LDESC,BAD-SPY,32
GETP BAD-SPY,P?CAR >N
?PRG94: CALL FIND-FLAG-CAR,L,N,PERSONBIT >DR
ZERO? DR /?REP95
FCLEAR DR,PERSONBIT
CALL NEW-LDESC,DR,32
JUMP ?PRG94
?REP95: SET 'GAS-CAR-RM,COMPARTMENT-5
SET 'GAS-CAR,PLATFORM-MAX
ZERO? V /?CND50
PRINTI " and succumbs to the poison gas."
CRLF
?CND50: ZERO? IDEBUG /?CND107
PRINTN V
PRINTC 93
CRLF
?CND107: RETURN V
.FUNCT ARRIVE-AT-STATION-BAD-SPY,GT,X
GET GOAL-TABLES,BAD-SPY-C >GT
EQUAL? VARIATION,3,4 \?ELS5
EQUAL? SCENERY-OBJ,STATION-FRBZ,STATION-GOLA \?ELS5
PUT GT,GOAL-SCRIPT,I-TRAVELER-FINDS-CONTACT
CALL2 CLEAR-TRAIN-PERSON,BAD-SPY-C
RSTACK
?ELS5: EQUAL? VARIATION,3,4 \?ELS9
EQUAL? SCENERY-OBJ,STATION-KNUT \?ELS9
IN? PASSOBJECT,BAD-SPY \?ELS9
ZERO? ON-TRAIN \?ELS16
LOC BAD-SPY
CALL2 ON-PLATFORM?,STACK
ZERO? STACK /?ELS16
PUT GT,GOAL-FUNCTION,I-TRAVELER-TO-GRNZ
LOC BAD-SPY
GETP STACK,P?CAR >X
PUTP BAD-SPY,P?CAR,X
CALL2 V-REAR,X
CALL MOVE-PERSON,BAD-SPY,STACK
CALL ESTABLISH-GOAL-TRAIN,BAD-SPY,COMPARTMENT-5,X
RSTACK
?ELS16: PUT GT,GOAL-FUNCTION,I-TRAVELER-SEEKS-TICKET
GETP BAD-SPY,P?CAR
CALL2 V-REAR,STACK
CALL ESTABLISH-GOAL,BAD-SPY,STACK
RSTACK
?ELS9: GET GT,GOAL-SCRIPT
EQUAL? I-BAD-SPY-IMITATES,STACK \FALSE
GETP BAD-SPY,P?CAR
CALL2 V-REAR,STACK
CALL ESTABLISH-GOAL,BAD-SPY,STACK
RSTACK
.FUNCT DEPART-FROM-STATION-BAD-SPY
ZERO? BAD-SPY-KNOWS-YOU /FALSE
ZERO? GAS-CAR \FALSE
CALL1 I-BAD-SPY-TO-YOU
RSTACK
.FUNCT I-BAD-SPY-IMITATES,GARG=0,L,V,CAR,X
ZERO? IDEBUG \?THN4
EQUAL? GARG,G-DEBUG \?CND1
?THN4: PRINTI "[I-BAD-SPY-IMITATES:"
EQUAL? GARG,G-DEBUG /FALSE
?CND1: CALL2 PAUSE-SCRIPT?,I-BAD-SPY-IMITATES
ZERO? STACK \FALSE
LOC BAD-SPY >L
CALL2 VISIBLE?,BAD-SPY >V
ZERO? V \?CND14
IN? BRIEFCASE,BAD-SPY \?CND14
FCLEAR BRIEFCASE,SEENBIT
?CND14: EQUAL? GARG,G-ENROUTE \?ELS21
CALL2 ON-PLATFORM?,L
ZERO? STACK /?CND19
ZERO? V /?CND19
CALL2 START-SENTENCE,BAD-SPY
CALL2 WHERE?,BAD-SPY
ZERO? STACK /?CND31
PRINTC 44
?CND31: PRINTI " searches the crowd."
CRLF
JUMP ?CND19
?ELS21: EQUAL? GARG,G-REACHED \?CND19
CALL NEW-LDESC,BAD-SPY,10
GETP BAD-SPY,P?CAR >CAR
CALL2 V-REAR,CAR
EQUAL? L,STACK \?ELS42
GET STATION-ROOMS,CAR
MOVE BAD-SPY,STACK
ZERO? V \?THN46
CALL2 VISIBLE?,BAD-SPY
ZERO? STACK /?CND43
?THN46: CALL2 BAD-SPY-LEAVES-BOARDS,STR?339
?CND43: CALL ESTABLISH-GOAL,BAD-SPY,PLATFORM-A
JUMP ?CND19
?ELS42: ZERO? CUSTOMS-SWEEP \?THN50
EQUAL? L,PLATFORM-E \?ELS49
?THN50: GETP L,P?CAR >X
CALL2 V-REAR,X
MOVE BAD-SPY,STACK
PUTP BAD-SPY,P?CAR,X
ZERO? V \?THN55
CALL2 VISIBLE?,BAD-SPY
ZERO? STACK /?CND52
?THN55: CALL2 BAD-SPY-LEAVES-BOARDS,STR?340
?CND52: CALL ESTABLISH-GOAL-TRAIN,BAD-SPY,COMPARTMENT-5,PLATFORM-MAX
JUMP ?CND19
?ELS49: EQUAL? L,PLATFORM-A \?CND19
CALL ESTABLISH-GOAL,BAD-SPY,PLATFORM-E
ZERO? V /?CND40
CALL HE-SHE-IT,BAD-SPY,TRUE-VALUE
PRINTI " searches the crowd."
CRLF
?CND40:
?CND19: ZERO? IDEBUG /?CND65
PRINTN V
PRINTC 93
CRLF
RETURN V
?CND65: RETURN V
.FUNCT I-BAD-SPY-W-YOU,GARG=0,VAL=0,L,V
ZERO? IDEBUG \?THN4
EQUAL? GARG,G-DEBUG \?CND1
?THN4: PRINTI "[I-BAD-SPY-W-YOU:"
EQUAL? GARG,G-DEBUG /FALSE
?CND1: CALL2 PAUSE-SCRIPT?,I-BAD-SPY-W-YOU
ZERO? STACK \FALSE
CALL2 VISIBLE?,BAD-SPY >V
LOC BAD-SPY >L
EQUAL? GARG,G-ENROUTE \?ELS16
ZERO? BAD-SPY-OPENED-CASE \?ELS19
IN? BRIEFCASE,PLAYER /?ELS19
CALL2 HIDDEN?,BRIEFCASE
ZERO? STACK \?ELS19
CALL2 META-LOC,BRIEFCASE
EQUAL? L,STACK \?ELS19
CALL1 SPY-TAKES-CASE
ZERO? V /?CND14
SET 'VAL,TRUE-VALUE
CALL HE-SHE-IT,BAD-SPY,TRUE-VALUE,STR?288
CALL2 HIM-HER-IT,BRIEFCASE
PRINTI " and takes it."
CRLF
JUMP ?CND14
?ELS19: ZERO? V \?CND14
CALL1 I-BAD-SPY-TO-YOU >VAL
JUMP ?CND14
?ELS16: EQUAL? GARG,G-REACHED \?ELS31
CALL NEW-LDESC,BAD-SPY,30
CALL QUEUE,I-BAD-SPY-W-YOU,-1
PUT STACK,0,1
GET GOAL-TABLES,BAD-SPY-C
GET STACK,GOAL-F
EQUAL? HERE,STACK \?CND14
CALL ZMEMQ,HERE,CAR-ROOMS-COMPS
ZERO? STACK \?THN38
CALL ZMEMQ,HERE,CAR-ROOMS-COMPS-DINER
ZERO? STACK /?ELS37
?THN38: SET 'VAL,TRUE-VALUE
ZERO? V /?ELS42
CALL HE-SHE-IT,BAD-SPY,TRUE-VALUE
PRINTI " enters and sits down."
CALL FIND-FLAG-HERE,PERSONBIT,PLAYER,BAD-SPY
ZERO? STACK \?CND46
CALL1 BAD-SPY-GUN-THREAT
?CND46: CRLF
JUMP ?CND14
?ELS42: PRINTI "You hear a knock on the door."
CRLF
JUMP ?CND14
?ELS37: ZERO? V /?CND14
SET 'VAL,TRUE-VALUE
CALL NEW-LDESC,BAD-SPY,3
CALL HE-SHE-IT,BAD-SPY,TRUE-VALUE,STR?341
EQUAL? L,HERE \?CND58
PRINTI " here"
?CND58: PRINTI "."
CRLF
JUMP ?CND14
?ELS31: ZERO? GARG \?CND14
ZERO? V /?ELS69
CALL ZMEMQ,HERE,CAR-ROOMS-COMPS
ZERO? STACK \?THN72
CALL ZMEMQ,HERE,CAR-ROOMS-COMPS-DINER
ZERO? STACK \?THN72
CALL ZMEMQ,HERE,CAR-ROOMS-REST
ZERO? STACK /?ELS69
?THN72: IN? GUN,BAD-SPY \?ELS76
PRINTI "The sound of the gunshot is not loud enough to be carried beyond this room. But the pain is so great that you don't notice the details."
CRLF
CALL1 FINISH
JUMP ?CND67
?ELS76: CALL FIND-FLAG-HERE,PERSONBIT,PLAYER,BAD-SPY
ZERO? STACK \?CND67
SET 'VAL,TRUE-VALUE
CALL HE-SHE-IT,BAD-SPY,TRUE-VALUE
PRINTI " peeks into the corridor for a moment."
CALL1 BAD-SPY-GUN-THREAT
CRLF
JUMP ?CND67
?ELS69: MOVE GUN,OTHER-LIMBO-FWD
ZERO? V \?CND67
CALL QUEUE,I-BAD-SPY-W-YOU,0
CALL1 I-BAD-SPY-TO-YOU >VAL
?CND67:
?CND14: ZERO? IDEBUG /?CND88
PRINTN VAL
PRINTC 93
CRLF
RETURN VAL
?CND88: RETURN VAL
.FUNCT BAD-SPY-GUN-THREAT
MOVE GUN,BAD-SPY
PRINTI " Then"
CALL2 HE-SHE-IT,BAD-SPY
PRINTI " displays a gun and motions for you to give"
CALL2 HIM-HER-IT,BAD-SPY
PRINTI " something."
RTRUE
.FUNCT I-BAD-SPY-TO-YOU,GARG=0,L,STA,V,VAL=0
ZERO? IDEBUG \?THN4
EQUAL? GARG,G-DEBUG \?CND1
?THN4: PRINTI "[I-BAD-SPY-TO-YOU:"
EQUAL? GARG,G-DEBUG /FALSE
?CND1: CALL2 PAUSE-SCRIPT?,I-BAD-SPY
ZERO? STACK \FALSE
CALL2 VISIBLE?,BAD-SPY >V
LOC BAD-SPY
CALL ZMEMQ,STACK,STATION-ROOMS >STA
ZERO? ON-TRAIN /?ELS16
ZERO? STA /?CND18
CALL2 V-REAR,CAR-HERE
MOVE BAD-SPY,STACK
PUTP BAD-SPY,P?CAR,CAR-HERE
ZERO? V \?THN25
CALL2 VISIBLE?,BAD-SPY
ZERO? STACK \?THN25
GET STATION-ROOMS,CAR-HERE
CALL2 VISIBLE?,STACK
ZERO? STACK /?CND18
?THN25: SET 'VAL,TRUE-VALUE
CALL2 BAD-SPY-LEAVES-BOARDS,STR?340
?CND18: CALL ESTABLISH-GOAL-TRAIN,BAD-SPY,HERE,CAR-HERE
RETURN VAL
?ELS16: ZERO? STA \?CND29
GETP BAD-SPY,P?CAR
GET STATION-ROOMS,STACK >L
MOVE BAD-SPY,L
ZERO? V \?THN35
CALL2 VISIBLE?,BAD-SPY
ZERO? STACK /?CND29
?THN35: SET 'VAL,TRUE-VALUE
CALL2 BAD-SPY-LEAVES-BOARDS,STR?339
?CND29: CALL ESTABLISH-GOAL,BAD-SPY,HERE
RETURN VAL
.FUNCT BAD-SPY-LEAVES-BOARDS,STR
PRINTI "Out of the corner of your eye, you see"
CALL2 HIM-HER-IT,BAD-SPY
PRINTC 32
PRINT STR
PRINTR "ing the train."
.FUNCT HIDDEN?,OBJ,L
LOC OBJ >L
EQUAL? L,BRIEFCASE \?ELS5
FSET? BRIEFCASE,OPENBIT \TRUE
RFALSE
?ELS5: EQUAL? L,UNDER-SEAT-1,OTHER-UNDER-SEAT-1,POCKET /TRUE
EQUAL? L,UNDER-SEAT-2,OTHER-UNDER-SEAT-2 /TRUE
EQUAL? L,UNDER-SEAT-3,OTHER-UNDER-SEAT-3 /TRUE
EQUAL? L,UNDER-SEAT-4,OTHER-UNDER-SEAT-4 /TRUE
EQUAL? L,UNDER-SEAT-5,OTHER-UNDER-SEAT-5 /TRUE
EQUAL? L,UNDER-BOOTH-1,UNDER-BOOTH-2,UNDER-BOOTH-3 /TRUE
RFALSE
.FUNCT PASS-OBJECT?,O=0
ZERO? O \?CND1
SET 'O,PASSOBJECT
?CND1: EQUAL? PRSA,V?GIVE \?ELS8
EQUAL? PRSO,O /TRUE
EQUAL? PRSO,NAPKIN \?ELS15
EQUAL? O,SCARF,TOWEL-WAITER /TRUE
?ELS15: EQUAL? PRSO,FLOWER-2,FLOWER-1 \FALSE
EQUAL? O,FLOWER-GLOBAL /TRUE
?ELS8: EQUAL? PRSA,V?SHOW \FALSE
EQUAL? PRSI,O /TRUE
EQUAL? PRSI,NAPKIN \?ELS30
EQUAL? O,SCARF,TOWEL-WAITER /TRUE
?ELS30: EQUAL? PRSI,FLOWER-2,FLOWER-1 \FALSE
EQUAL? O,FLOWER-GLOBAL /TRUE
RFALSE
.FUNCT CONTACT-F,ARG=0,X,WON=1
EQUAL? ARG,M-WINNER \?ELS5
EQUAL? PRSA,V?$CALL \?ELS10
EQUAL? PRSO,PASSWORD \?ELS15
CALL1 GIVE-PASSWORD
RTRUE
?ELS15: CALL1 GIVE-WRONG-PASS-X
RSTACK
?ELS10: CALL CONTACT-DEFAULT-F,ARG
RSTACK
?ELS5: EQUAL? PRSA,V?SHOW,V?GIVE \?ELS21
CALL1 GUARD-NOTICES
CALL1 GIVE-MCGUFFIN? >X
ZERO? X /?ELS26
CALL HE-SHE-IT,CONTACT,TRUE-VALUE
PRINTI " quickly inspects"
CALL2 PRINTT,X
PRINTI " and then "
EQUAL? CONTACT,GUARD,CLERK,WAITRESS \?CND29
EQUAL? X,MCGUFFIN /?ELS34
PRINTI "says, ""This will not do. We already know what the plan is; you should have obtained the actual "
PRINTD MCGUFFIN
PRINTI " so that we could analyze it and find the source of the leak. I'm afraid I'll have to complete your mission myself."""
CRLF
CALL1 FINISH
JUMP ?CND29
?ELS34: MOVE CONTACT,LIMBO-FWD
PRINTI "says, ""Excellent work! But there's one more part to your mission. You may have noticed the special car at the end of the train. There's an important defector aboard it, and we intend to capture him back. You must ride this train until you observe a flare shot into the sky. Then you must make the train stop so we can capture him. Good luck!"" Then"
CALL2 HE-SHE-IT,CONTACT
PRINTR " vanishes into the crowd."
?CND29: EQUAL? X,FILM \?CND41
CALL ZMEMQ,MCGUFFIN,FILM-TBL
ZERO? STACK \?CND41
PRINTR "looks at you quizzically."
?CND41: PRINTI "pumps your hand with obvious gratitude. "
EQUAL? VARIATION,3,4 /?ELS52
PRINTI """Only a few people will ever know the great value of the service you've just performed. Probably even you don't know the full implications. But be assured that you deserve the thanks of the whole world."""
CRLF
JUMP ?CND50
?ELS52: CALL1 PRODUCE-GIBBERISH
?CND50: FSET? X,LOCKED \?CND57
CRLF
PRINTI "However, events in the next few days show that"
CALL2 PRINTT,X
PRINTI " completely misled those charged with "
EQUAL? VARIATION,3,4 /?ELS64
PRINTI "foiling"
JUMP ?CND62
?ELS64: PRINTI "carrying out"
?CND62: PRINTI " the plot. Apparently"
CALL2 PRINTT,MCGUFFIN
PRINTI " was altered by some clever hand."
CRLF
CRLF
EQUAL? VARIATION,3,4 /?ELS75
SET 'WON,FALSE-VALUE
PRINTI "CONDOLENCES!"
JUMP ?CND73
?ELS75: PRINTI "CONGRATULATIONS!"
?CND73: CRLF
?CND57: ZERO? WON /?CND82
EQUAL? VARIATION,2,4 \?CND82
CALL1 AWARD
?CND82: CALL1 FINISH
RSTACK
?ELS26: CALL1 PASS-OBJECT?
ZERO? STACK /?ELS88
IN? MCGUFFIN,LIMBO-REAR \?CND89
MOVE MCGUFFIN,CONTACT
?CND89: CALL2 START-SENTENCE,CONTACT
ZERO? PASSWORD-GIVEN /?ELS96
CALL1 WHISPER-PLAN
RTRUE
?ELS96: SET 'PASSOBJECT-GIVEN,TRUE-VALUE
CALL2 SAID-TO,CONTACT
FCLEAR CONTACT,NDESCBIT
CALL NEW-LDESC,CONTACT,22
PRINTR " listens to you expectantly."
?ELS88: CALL1 GIVE-WRONG-PASS-X
RSTACK
?ELS21: EQUAL? PRSA,V?TELL-ABOUT,V?ASK-FOR,V?ASK-ABOUT \?ELS105
EQUAL? PRSI,PASSWORD \?ELS110
CALL1 GIVE-PASSWORD
RTRUE
?ELS110: CALL1 GIVE-WRONG-PASS-X
RSTACK
?ELS105: CALL CONTACT-DEFAULT-F,ARG
RSTACK
.FUNCT GIVE-MCGUFFIN?
ZERO? PASSWORD /?ELS5
ZERO? PASSWORD-GIVEN /FALSE
?ELS5: ZERO? PASSOBJECT /?ELS9
ZERO? PASSOBJECT-GIVEN \?ELS9
IN? PASSOBJECT,PLAYER \FALSE
FSET? PASSOBJECT,WORNBIT \FALSE
?ELS9: EQUAL? PRSA,V?GIVE \FALSE
EQUAL? PRSO,MCGUFFIN \?ELS17
RETURN PRSO
?ELS17: EQUAL? PRSO,FILM /?THN20
EQUAL? PRSO,CAMERA \FALSE
IN? FILM,CAMERA \FALSE
?THN20: RETURN FILM
.FUNCT GIVE-WRONG-PASS-X,N
INC 'CONTACT-SUSPICION
CALL NEW-LDESC,CONTACT,1
CALL HE-SHE-IT,CONTACT,TRUE-VALUE
PRINTI " looks "
GRTR? 2,CONTACT-SUSPICION \?ELS7
PRINTI "confused for a moment and says, "
CALL1 PRODUCE-GIBBERISH
RSTACK
?ELS7: GETP HERE,P?CAR >N
EQUAL? N,PLATFORM-MAX \?ELS14
DEC 'N
JUMP ?CND12
?ELS14: INC 'N
?CND12: GET STATION-ROOMS,N
MOVE CONTACT,STACK
FSET CONTACT,NDESCBIT
PRINTR "alarmed and vanishes into the crowd."
.FUNCT GIVE-PASSWORD
SET 'PASSWORD-GIVEN,TRUE-VALUE
IN? MCGUFFIN,LIMBO-REAR \?CND1
MOVE MCGUFFIN,CONTACT
?CND1: CALL1 GUARD-NOTICES
CALL2 START-SENTENCE,CONTACT
ZERO? CONTACT-SUSPICION /?CND4
PRINTI " hesitates for a moment and then"
?CND4: ZERO? PASSOBJECT-GIVEN \?THN14
IN? PASSOBJECT,PLAYER \?ELS13
FSET? PASSOBJECT,WORNBIT \?ELS13
?THN14: CALL1 WHISPER-PLAN
RTRUE
?ELS13: FCLEAR CONTACT,NDESCBIT
CALL NEW-LDESC,CONTACT,23
PRINTR " looks at you expectantly."
.FUNCT WHISPER-PLAN
PRINTI " whispers, "
EQUAL? VARIATION,3,4 \?ELS5
CALL2 PRODUCE-GIBBERISH,2
JUMP ?CND3
?ELS5: EQUAL? SCENERY-OBJ,STATION-GOLA /?ELS7
PRINTI """Here too many people. Meet me in restroom."""
CRLF
JUMP ?CND3
?ELS7: CALL NEW-LDESC,CONTACT,26
PRINTI """I was expecting someone else, but you must be the courier. Please give me the "
PRINTD MCGUFFIN
PRINTR " now."""
?CND3: EQUAL? SCENERY-OBJ,STATION-GOLA /FALSE
FSET? CONTACT,FEMALE \?ELS21
MOVE CONTACT,REST-ROOM-WOMEN
JUMP ?CND19
?ELS21: MOVE CONTACT,REST-ROOM-MEN
?CND19: FCLEAR CONTACT,NDESCBIT
CALL NEW-LDESC,CONTACT,24
PRINTI "Then"
CALL2 HE-SHE-IT,CONTACT
PRINTR " vanishes into the crowd."
.FUNCT WHISPER-PLAN-OTHER,L
CALL QUEUE,I-TRAVELER-FINDS-CONTACT,0
FSET? CONTACT,FEMALE \?ELS3
SET 'L,REST-ROOM-WOMEN
JUMP ?CND1
?ELS3: SET 'L,REST-ROOM-MEN
?CND1: IN? CONTACT,HERE /?THN9
ZERO? DEBUG /?CND6
?THN9: IN? CONTACT,HERE /?CND11
PRINTC 91
?CND11: CALL HE-SHE-IT,CONTACT,TRUE-VALUE
PRINTI " whispers something to"
CALL2 HIM-HER-IT,BAD-SPY
PRINTI " and vanishes into the crowd."
CRLF
?CND6: MOVE CONTACT,L
FCLEAR CONTACT,NDESCBIT
CALL NEW-LDESC,CONTACT,26
GET GOAL-TABLES,BAD-SPY-C
PUT STACK,GOAL-ENABLE,1
CALL ESTABLISH-GOAL,BAD-SPY,L
IN? CONTACT,HERE /?THN21
ZERO? DEBUG /TRUE
?THN21: IN? CONTACT,HERE /?CND23
PRINTC 91
?CND23: CALL HE-SHE-IT,CONTACT,TRUE-VALUE
PRINTR " enters and looks around nervously."
.FUNCT I-AGENT-COMES,GARG=0,PER
ZERO? IDEBUG \?THN4
EQUAL? GARG,G-DEBUG \?CND1
?THN4: PRINTI "[I-AGENT-COMES:"
EQUAL? GARG,G-DEBUG /FALSE
?CND1: RANDOM 3 >PER
EQUAL? 1,PER \?ELS13
SET 'PER,GUARD
JUMP ?CND11
?ELS13: EQUAL? 2,PER \?ELS15
SET 'PER,CLERK
JUMP ?CND11
?ELS15: SET 'PER,WAITRESS
?CND11: CALL2 NEW-CONTACT,PER
CALL NEW-LDESC,PER,26
SET 'PASSWORD,FALSE-VALUE
SET 'PASSOBJECT,FALSE-VALUE
CALL HE-SHE-IT,PER,TRUE-VALUE
IN? PER,HERE /?CND20
MOVE PER,HERE
PRINTI " appears and"
?CND20: PRINTI " says, ""I was ordered to contact you here. Please give me the "
PRINTD MCGUFFIN
PRINTR " now."""
.FUNCT GUARD-NOTICES
EQUAL? CONTACT,GUARD /FALSE
CALL2 ON-PLATFORM?,HERE
ZERO? STACK /FALSE
LOC GUARD
CALL2 ON-PLATFORM?,STACK
ZERO? STACK /FALSE
INC 'GUARD-SUSPICION
FCLEAR GUARD,NDESCBIT
CALL2 START-SENTENCE,GUARD
FCLEAR HIM,TOUCHBIT
EQUAL? 1,GUARD-SUSPICION \?ELS14
PRINTR " seems to notice your actions."
?ELS14: GET GESTURE-TABLE,0
EQUAL? GUARD-SUSPICION,STACK \?CND19
CALL ARREST-PLAYER,STR?342,GUARD
PRINTR " throws up her hands and hurries away."
?CND19: CALL NEW-LDESC,GUARD,26
IN? GUARD,HERE /?CND24
MOVE GUARD,HERE
PRINTI " approaches you and"
?CND24: PRINTI " makes a gesture"
EQUAL? 2,GUARD-SUSPICION /?CND31
GET GESTURE-TABLE,GUARD-SUSPICION
PRINT STACK
?CND31: GRTR? 5,GUARD-SUSPICION \?ELS38
PRINTI ", asking for "
JUMP ?CND36
?ELS38: PRINTI ", demanding "
?CND36: CALL2 THIS-IS-IT,PASSPORT
PRINTD PASSPORT
PRINTR "."
.FUNCT TRAVELER-F,ARG=0
CALL BAD-SPY-F,ARG
RSTACK
.FUNCT BAD-SPY-F,ARG=0,GT,X,?TMP1
EQUAL? ARG,M-WINNER \?ELS5
CALL BAD-SPY-DEFAULT-F,ARG
RSTACK
?ELS5: CALL2 PASS-OBJECT?,MCGUFFIN
ZERO? STACK /?ELS7
EQUAL? VARIATION,3,4 /?ELS7
CALL2 SHOW-MCGUFFIN,BAD-SPY
RSTACK
?ELS7: EQUAL? PRSA,V?$CALL \?ELS11
SET 'BAD-SPY-KNOWS-YOU,TRUE-VALUE
GET GOAL-TABLES,BAD-SPY-C >GT
GET GT,GOAL-SCRIPT
EQUAL? I-BAD-SPY-W-CASE,STACK \FALSE
CALL HE-SHE-IT,BAD-SPY,TRUE-VALUE
GET GT,GOAL-CAR
LESS? CAR-HERE,STACK \?ELS23
CALL2 V-REAR,CAR-HERE
MOVE BAD-SPY,STACK
PRINTR " hurries away to the rear."
?ELS23: GET GT,GOAL-CAR
GRTR? CAR-HERE,STACK \?ELS27
CALL2 V-FWD,CAR-HERE
MOVE BAD-SPY,STACK
PRINTR " hurries away to the front."
?ELS27: LOC BAD-SPY >?TMP1
GET GT,GOAL-S >X
EQUAL? ?TMP1,X \?ELS31
PRINTR " ignores you."
?ELS31: MOVE BAD-SPY,X
PRINTR " hurries away."
?ELS11: CALL BAD-SPY-DEFAULT-F,ARG
RSTACK
.FUNCT SHOW-MCGUFFIN,P
CALL HE-SHE-IT,P,TRUE-VALUE
PRINTI " looks at"
CALL2 HIM-HER-IT,MCGUFFIN
PRINTI " and then "
EQUAL? P,BAD-SPY \?ELS5
IN? GUN,BAD-SPY \?ELS5
PRINTI "takes aim at you."
JUMP ?CND3
?ELS5: PRINTI "pulls out a gun with a silencer."
?CND3: PRINTI " Before you can react, pain fills your heart, and it's all over."
CRLF
CALL1 FINISH
RSTACK
.FUNCT PAUSE-SCRIPT?,INT,A=0
ZERO? A \?CND1
SET 'A,BAD-SPY
?CND1: ZERO? SUPPRESS-INTERRUPT /?ELS8
SET 'SUPPRESS-INTERRUPT,FALSE-VALUE
ZERO? IDEBUG /TRUE
PRINTR "[PS:SI]"
?ELS8: FSET? A,PERSONBIT /?ELS16
CALL QUEUE,INT,0
ZERO? IDEBUG /TRUE
PRINTI "[PS:NP "
PRINTD A
PRINTR "]"
?ELS16: FSET? A,MUNGBIT \?ELS24
ZERO? IDEBUG /TRUE
PRINTI "[PS:MU "
PRINTD A
PRINTR "]"
?ELS24: CALL IN-MOTION?,A,TRUE-VALUE
ZERO? STACK /FALSE
ZERO? IDEBUG /TRUE
PRINTI "[PS:IM "
PRINTD A
PRINTR "]"
.FUNCT I-TRAVELER,V=0,STR,OBJ,GT,L,LC,?TMP1
CALL2 PAUSE-SCRIPT?,I-TRAVELER
ZERO? STACK \FALSE
ZERO? IDEBUG \?THN7
EQUAL? V,G-DEBUG \?CND4
?THN7: PRINTI "[I-TRAVELER:"
EQUAL? V,G-DEBUG /FALSE
?CND4: ZERO? V \?CND14
CALL2 VISIBLE?,BAD-SPY >V
?CND14: LOC BAD-SPY >L
GET GOAL-TABLES,BAD-SPY-C >GT
IN? BRIEFCASE,BAD-SPY /?ELS19
CALL2 META-LOC,BAD-SPY
IN? BRIEFCASE,STACK \?ELS22
SET 'STR,STR?343
SET 'OBJ,BRIEFCASE
MOVE BRIEFCASE,BAD-SPY
JUMP ?CND17
?ELS22: CALL2 META-LOC,BRIEFCASE >?TMP1
CALL2 META-LOC,BAD-SPY
EQUAL? ?TMP1,STACK \?ELS24
SET 'STR,STR?344
SET 'OBJ,BRIEFCASE
JUMP ?CND17
?ELS24: PUT GT,GOAL-SCRIPT,I-BAD-SPY-W-YOU
CALL ESTABLISH-GOAL-TRAIN,BAD-SPY,HERE,CAR-HERE
JUMP ?CND17
?ELS19: ZERO? TRAVELER-CHECKED-CASE \?ELS28
LOC CONDUCTOR >LC
GETP L,P?STATION
EQUAL? LC,L,STACK \?ELS31
FSET? BRIEFCASE,OPENBIT \?ELS34
SET 'STR,STR?345
SET 'OBJ,BRIEFCASE
FCLEAR BRIEFCASE,OPENBIT
CALL INSIDE-OBJ-TO,BRIEFCASE-TBL,BRIEFCASE,1
JUMP ?CND17
?ELS34: ZERO? IDEBUG /FALSE
PRINTI "(0)]"
CRLF
RFALSE
?ELS31: FSET? BRIEFCASE-LATCH,SEENBIT /?ELS44
SET 'STR,STR?346
SET 'OBJ,BRIEFCASE-LATCH
FSET BRIEFCASE-LATCH,SEENBIT
JUMP ?CND17
?ELS44: ZERO? LATCH-TURNED \?ELS46
ZERO? DEBUG /?CND47
PRINTI "[1] "
?CND47: SET 'STR,STR?347
SET 'OBJ,BRIEFCASE-LATCH
SET 'LATCH-TURNED,TRUE-VALUE
JUMP ?CND17
?ELS46: FSET? BRIEFCASE-LATCH,OPENBIT /?ELS53
SET 'STR,STR?348
SET 'OBJ,BRIEFCASE-LATCH
FSET BRIEFCASE-LATCH,OPENBIT
JUMP ?CND17
?ELS53: FSET? BRIEFCASE,OPENBIT /?ELS55
SET 'STR,STR?348
SET 'OBJ,BRIEFCASE
FSET BRIEFCASE,OPENBIT
CALL TBL-TO-INSIDE,BRIEFCASE,BRIEFCASE-TBL,1
JUMP ?CND17
?ELS55: FSET? SPY-LIST,SEENBIT /?ELS57
SET 'STR,STR?346
SET 'OBJ,SPY-LIST
FSET SPY-LIST,SEENBIT
JUMP ?CND17
?ELS57: IN? MCGUFFIN,BRIEFCASE /?ELS59
SET 'STR,STR?346
SET 'OBJ,BRIEFCASE
SET 'TRAVELER-CHECKED-CASE,TRUE-VALUE
JUMP ?CND17
?ELS59: ZERO? PICTURE-NUMBER \?ELS61
IN? FILM,CAMERA /?ELS64
IN? CAMERA,BAD-SPY /?ELS67
SET 'STR,STR?343
SET 'OBJ,CAMERA
MOVE CAMERA,BAD-SPY
JUMP ?CND17
?ELS67: FSET? CAMERA,SEENBIT /?ELS69
SET 'STR,STR?346
SET 'OBJ,CAMERA
FSET CAMERA,SEENBIT
JUMP ?CND17
?ELS69: FSET? CAMERA,OPENBIT /?ELS71
ZERO? DEBUG /?CND72
PRINTI "[1] "
?CND72: SET 'STR,STR?348
SET 'OBJ,CAMERA
FSET CAMERA,OPENBIT
JUMP ?CND17
?ELS71: FSET? FILM,SEENBIT /?ELS78
SET 'STR,STR?346
SET 'OBJ,FILM
FSET FILM,SEENBIT
JUMP ?CND17
?ELS78: SET 'STR,STR?349
SET 'OBJ,CAMERA
MOVE FILM,CAMERA
JUMP ?CND17
?ELS64: FSET? CAMERA,OPENBIT \?ELS82
SET 'STR,STR?345
SET 'OBJ,CAMERA
FCLEAR CAMERA,OPENBIT
JUMP ?CND17
?ELS82: SET 'STR,STR?350
SET 'OBJ,CAMERA
INC 'PICTURE-NUMBER
SET 'CAMERA-COCKED,TRUE-VALUE
JUMP ?CND17
?ELS61: CALL ZMEMQ,MCGUFFIN,FILM-TBL
ZERO? STACK \?ELS89
SET 'STR,STR?343
SET 'OBJ,PICTURE-GLOBAL
CALL2 TAKE-PICTURE,MCGUFFIN
JUMP ?CND17
?ELS89: FSET? CAMERA,OPENBIT /?ELS91
ZERO? DEBUG /?CND92
PRINTI "[2] "
?CND92: SET 'STR,STR?348
SET 'OBJ,CAMERA
FSET CAMERA,OPENBIT
JUMP ?CND17
?ELS91: IN? FILM,CAMERA \?ELS98
SET 'STR,STR?351
SET 'OBJ,FILM
FSET FILM,NDESCBIT
MOVE FILM,BAD-SPY
JUMP ?CND17
?ELS98: SET 'TRAVELER-CHECKED-CASE,TRUE-VALUE
SET 'STR,STR?352
SET 'OBJ,CAMERA
MOVE CAMERA,BRIEFCASE
JUMP ?CND17
?ELS28: FSET? BRIEFCASE,OPENBIT \?ELS105
SET 'STR,STR?345
SET 'OBJ,BRIEFCASE
FCLEAR BRIEFCASE,OPENBIT
CALL INSIDE-OBJ-TO,BRIEFCASE-TBL,BRIEFCASE,1
JUMP ?CND17
?ELS105: FSET? BRIEFCASE-LATCH,OPENBIT \?ELS107
SET 'STR,STR?345
SET 'OBJ,BRIEFCASE-LATCH
FCLEAR BRIEFCASE-LATCH,OPENBIT
JUMP ?CND17
?ELS107: EQUAL? VARIATION,2,4 \?ELS109
ZERO? LATCH-TURNED /?ELS109
ZERO? DEBUG /?CND112
PRINTI "[2] "
?CND112: SET 'STR,STR?347
SET 'OBJ,BRIEFCASE-LATCH
SET 'LATCH-TURNED,FALSE-VALUE
JUMP ?CND17
?ELS109: CALL QUEUE,I-TRAVELER,0
IN? PASSOBJECT,BAD-SPY \?ELS121
JUMP ?CND119
?ELS121: EQUAL? PASSOBJECT,KNIFE \?ELS123
PUT GT,GOAL-SCRIPT,I-TRAVELER-SEEKS-KNIFE
CALL ESTABLISH-GOAL-TRAIN,BAD-SPY,VESTIBULE-REAR-DINER,DINER-CAR
JUMP ?CND119
?ELS123: EQUAL? PASSOBJECT,FLOWER-GLOBAL \?ELS125
PUT GT,GOAL-FUNCTION,I-TRAVELER-SEEKS-FLOWER
EQUAL? L,REST-ROOM-REAR-DINER,REST-ROOM-REAR,OTHER-REST-ROOM-REAR /?CND119
GETP BAD-SPY,P?CAR
CALL2 V-REAR,STACK
CALL ESTABLISH-GOAL,BAD-SPY,STACK
JUMP ?CND119
?ELS125: PUT GT,GOAL-FUNCTION,TRAVELER-FLUSHES-MCGUFFIN
GETP BAD-SPY,P?CAR
CALL GENERIC-REST-ROOM-F,0,STACK,L
CALL ESTABLISH-GOAL,BAD-SPY,STACK
?CND119: SET 'STR,STR?353
SET 'OBJ,BRIEFCASE
MOVE BRIEFCASE,BAD-SPY
?CND17: ZERO? V \?THN136
ZERO? DEBUG \?THN136
ZERO? IDEBUG /FALSE
?THN136: ZERO? V \?CND138
PRINTC 91
?CND138: CALL HE-SHE-IT,BAD-SPY,TRUE-VALUE
PRINT STR
CALL2 HIM-HER-IT,OBJ
PRINTR "."
.FUNCT TRAVELER-FLUSHES-MCGUFFIN,GARG=0,V,STR,OBJ,GT,L
EQUAL? GARG,G-DEBUG \?CND1
PRINTI "[TRAVELER-FLUSHES-MCGUFFIN:"
RFALSE
?CND1: LOC BAD-SPY >L
CALL2 VISIBLE?,BAD-SPY >V
EQUAL? GARG,G-REACHED \FALSE
CALL NEW-LDESC,BAD-SPY,4
EQUAL? L,REST-ROOM-FWD,REST-ROOM-FWD-DINER /?ELS13
EQUAL? L,REST-ROOM-REAR,REST-ROOM-REAR-DINER \FALSE
?ELS13: IN? MCGUFFIN,BAD-SPY \?CND11
MOVE MCGUFFIN,LIMBO-FWD
?CND11: CALL NEW-LDESC,BAD-SPY,26
RFALSE
.FUNCT TRAVELER-FLEES,GARG=0,V,STR,OBJ,GT,L
EQUAL? GARG,G-DEBUG \?CND1
PRINTI "[TRAVELER-FLEES:"
RFALSE
?CND1: LOC BAD-SPY >L
CALL2 VISIBLE?,BAD-SPY >V
EQUAL? GARG,G-REACHED \FALSE
CALL NEW-LDESC,BAD-SPY,4
EQUAL? L,REST-ROOM-FWD,REST-ROOM-FWD-DINER /?ELS13
EQUAL? L,REST-ROOM-REAR,REST-ROOM-REAR-DINER \FALSE
?ELS13: IN? BRIEFCASE,BAD-SPY \?CND11
CALL QUEUE,I-TRAVELER,-1
PUT STACK,0,1
?CND11: CALL NEW-LDESC,BAD-SPY,26
RFALSE
.FUNCT I-TRAVELER-SEEKS-FLOWER,GARG=0,V,STR,OBJ,GT,L
ZERO? IDEBUG \?THN4
EQUAL? GARG,G-DEBUG \?CND1
?THN4: PRINTI "[I-TRAVELER-SEEKS-FLOWER:"
EQUAL? GARG,G-DEBUG /FALSE
?CND1: CALL2 PAUSE-SCRIPT?,I-TRAVELER-SEEKS-FLOWER
ZERO? STACK \FALSE
LOC BAD-SPY >L
CALL2 VISIBLE?,BAD-SPY >V
EQUAL? GARG,G-REACHED \?ELS16
CALL NEW-LDESC,BAD-SPY,26
ZERO? IDEBUG /FALSE
PRINTI "(0)]"
CRLF
RFALSE
?ELS16: ZERO? GARG /?ELS24
ZERO? IDEBUG /FALSE
PRINTI "(0)]"
CRLF
RFALSE
?ELS24: IN? FLOWER-1,BAD-SPY /?ELS32
IN? FLOWER-2,BAD-SPY /?ELS32
EQUAL? L,REST-ROOM-REAR,REST-ROOM-REAR-DINER,OTHER-REST-ROOM-REAR \?ELS37
GETP BAD-SPY,P?CAR
CALL2 V-REAR,STACK
CALL MOVE-PERSON,BAD-SPY,STACK >GT
CALL QUEUE,I-TRAVELER-SEEKS-FLOWER,-1
PUT STACK,0,1
ZERO? IDEBUG /?CND38
PRINTN GT
PRINTC 93
CRLF
RETURN GT
?CND38: RETURN GT
?ELS37: EQUAL? L,VESTIBULE-REAR,VESTIBULE-REAR-DINER /?THN46
EQUAL? L,OTHER-VESTIBULE-REAR,VESTIBULE-REAR-FANCY \?ELS45
?THN46: SET 'LEAVE-TRAIN-PERSON,BAD-SPY
CALL QUEUE,I-LEAVE-TRAIN,1
PUT STACK,0,1
ZERO? IDEBUG /FALSE
PRINTI "(0)]"
CRLF
RFALSE
?ELS45: FSET? FLOWER-1,NDESCBIT \?ELS55
SET 'STR,STR?354
SET 'OBJ,FLOWER-1
MOVE FLOWER-1,BAD-SPY
FCLEAR FLOWER-1,TAKEBIT
FCLEAR FLOWER-1,NDESCBIT
JUMP ?CND14
?ELS55: FSET? FLOWER-2,NDESCBIT \?CND14
SET 'STR,STR?354
SET 'OBJ,FLOWER-2
MOVE FLOWER-2,BAD-SPY
FCLEAR FLOWER-2,TAKEBIT
FCLEAR FLOWER-2,NDESCBIT
JUMP ?CND14
?ELS32: EQUAL? L,BESIDE-TRACKS,OTHER-BESIDE-TRACKS \?ELS62
SET 'LEAVE-TRAIN-PERSON,-1
CALL QUEUE,I-LEAVE-TRAIN,1
PUT STACK,0,1
ZERO? IDEBUG /FALSE
PRINTI "(0)]"
CRLF
RFALSE
?ELS62: ZERO? IDEBUG /FALSE
PRINTI "(0)]"
CRLF
RFALSE
?CND14: ZERO? V \?THN82
ZERO? DEBUG \?THN82
ZERO? IDEBUG /FALSE
?THN82: ZERO? V \?CND84
PRINTC 91
?CND84: CALL HE-SHE-IT,BAD-SPY,TRUE-VALUE
PRINT STR
CALL2 PRINTA,OBJ
PRINTR "."
.FUNCT I-TRAVELER-SEEKS-TICKET,GARG=0,V,STR,OBJ,GT,L
ZERO? IDEBUG \?THN4
EQUAL? GARG,G-DEBUG \?CND1
?THN4: PRINTI "[I-TRAVELER-SEEKS-TICKET:"
EQUAL? GARG,G-DEBUG /FALSE
?CND1: CALL2 PAUSE-SCRIPT?,I-TRAVELER-SEEKS-TICKET
ZERO? STACK \FALSE
LOC BAD-SPY >L
CALL2 VISIBLE?,BAD-SPY >V
EQUAL? GARG,G-REACHED \?ELS16
EQUAL? L,VESTIBULE-REAR,VESTIBULE-REAR-DINER /?THN20
EQUAL? L,OTHER-VESTIBULE-REAR,VESTIBULE-REAR-FANCY \?ELS19
?THN20: CALL ESTABLISH-GOAL,BAD-SPY,TICKET-AREA
SET 'LEAVE-TRAIN-PERSON,BAD-SPY
CALL QUEUE,I-LEAVE-TRAIN,1
PUT STACK,0,1
ZERO? IDEBUG /FALSE
PRINTI "(0)]"
CRLF
RFALSE
?ELS19: EQUAL? L,TICKET-AREA \?ELS29
PUTP TICKET-OTHER,P?CAPACITY,STATION-GOLA
MOVE TICKET-OTHER,BAD-SPY
FCLEAR TICKET-OTHER,TAKEBIT
CALL ESTABLISH-GOAL,BAD-SPY,PLATFORM-C
SET 'STR,STR?355
SET 'OBJ,TICKET-OTHER
JUMP ?CND14
?ELS29: CALL NEW-LDESC,BAD-SPY,26
ZERO? IDEBUG /FALSE
PRINTI "(0)]"
CRLF
RFALSE
?ELS16: ZERO? GARG \?ELS39
EQUAL? L,REST-ROOM-REAR,REST-ROOM-REAR-DINER,OTHER-REST-ROOM-REAR \?ELS42
GETP BAD-SPY,P?CAR
CALL2 V-REAR,STACK
CALL MOVE-PERSON,BAD-SPY,STACK >GT
CALL2 I-TRAVELER-SEEKS-TICKET,G-REACHED
ZERO? STACK /?CND43
SET 'GT,TRUE-VALUE
?CND43: ZERO? IDEBUG /?CND46
PRINTN GT
PRINTC 93
CRLF
RETURN GT
?CND46: RETURN GT
?ELS42: ZERO? IDEBUG /FALSE
PRINTI "(0)]"
CRLF
RFALSE
?ELS39: ZERO? IDEBUG /FALSE
PRINTI "(0)]"
CRLF
RFALSE
?CND14: ZERO? V \?THN73
ZERO? DEBUG \?THN73
ZERO? IDEBUG /FALSE
?THN73: ZERO? V \?CND75
PRINTC 91
?CND75: CALL HE-SHE-IT,BAD-SPY,TRUE-VALUE
PRINT STR
CALL2 HIM-HER-IT,OBJ
PRINTR "."
.FUNCT I-TRAVELER-PASSED-CUSTOMS,GARG=0,V,STR,OBJ,GT,L
ZERO? IDEBUG \?THN4
EQUAL? GARG,G-DEBUG \?CND1
?THN4: PRINTI "[I-TRAVELER-PASSED-CUSTOMS:"
EQUAL? GARG,G-DEBUG /FALSE
?CND1: CALL2 PAUSE-SCRIPT?,I-TRAVELER-PASSED-CUSTOMS
ZERO? STACK \FALSE
LOC BAD-SPY >L
CALL2 VISIBLE?,BAD-SPY >V
EQUAL? GARG,G-REACHED \?ELS16
EQUAL? L,VESTIBULE-REAR-DINER \?ELS19
SET 'STR,STR?356
SET 'OBJ,MACHINE
GET GOAL-TABLES,BAD-SPY-C >GT
PUT GT,GOAL-SCRIPT,I-TRAVELER-SEEKS-LIGHTER
PUT GT,GOAL-ENABLE,1
CALL ESTABLISH-GOAL-TRAIN,BAD-SPY,VESTIBULE-FWD,1
CALL CALL-FOR-PROP,CIGARETTE,BAD-SPY
JUMP ?CND14
?ELS19: EQUAL? PASSOBJECT,LIGHTER \?ELS21
CALL ESTABLISH-GOAL-TRAIN,BAD-SPY,VESTIBULE-REAR-DINER,DINER-CAR
ZERO? IDEBUG /FALSE
PRINTI "(0)]"
CRLF
RFALSE
?ELS21: EQUAL? PASSOBJECT,FLOWER-GLOBAL \?ELS29
GET GOAL-TABLES,BAD-SPY-C >GT
PUT GT,GOAL-SCRIPT,STOP-WALKING-F
PUT GT,GOAL-ENABLE,1
GETP BAD-SPY,P?CAR
CALL2 V-REAR,STACK
CALL ESTABLISH-GOAL,BAD-SPY,STACK
ZERO? IDEBUG /FALSE
PRINTI "(0)]"
CRLF
RFALSE
?ELS29: CALL NEW-LDESC,BAD-SPY,35
ZERO? IDEBUG /FALSE
PRINTI "(0)]"
CRLF
RFALSE
?ELS16: ZERO? IDEBUG /FALSE
PRINTI "(0)]"
CRLF
RFALSE
?CND14: ZERO? V \?THN57
ZERO? DEBUG \?THN57
ZERO? IDEBUG /FALSE
?THN57: ZERO? V \?CND59
PRINTC 91
?CND59: CALL HE-SHE-IT,BAD-SPY,TRUE-VALUE
PRINT STR
CALL2 HIM-HER-IT,OBJ
PRINTR "."
.FUNCT STOP-WALKING-F,GARG=0
EQUAL? GARG,G-DEBUG \?CND1
PRINTI "[STOP-WALKING-F:"
RFALSE
?CND1: CALL2 PAUSE-SCRIPT?,STOP-WALKING-F
ZERO? STACK \FALSE
ZERO? GARG /?THN14
EQUAL? GARG,G-REACHED \FALSE
?THN14: CALL NEW-LDESC,BAD-SPY,1
RFALSE
.FUNCT I-TRAVELER-TO-GRNZ,GARG=0
ZERO? IDEBUG \?THN4
EQUAL? GARG,G-DEBUG \?CND1
?THN4: PRINTI "[I-TRAVELER-TO-GRNZ:"
EQUAL? GARG,G-DEBUG /FALSE
?CND1: CALL2 PAUSE-SCRIPT?,I-TRAVELER-TO-GRNZ
ZERO? STACK \FALSE
ZERO? GARG /?THN16
EQUAL? GARG,G-REACHED \?CND11
?THN16: CALL NEW-LDESC,BAD-SPY,1
CALL QUEUE,I-TRAVELER,-1
PUT STACK,0,1
?CND11: ZERO? IDEBUG /FALSE
PRINTI "0]"
CRLF
RFALSE
.FUNCT I-TRAVELER-SEEKS-LIGHTER,GARG=0,V,STR,OBJ,GT,L
ZERO? IDEBUG \?THN4
EQUAL? GARG,G-DEBUG \?CND1
?THN4: PRINTI "[I-TRAVELER-SEEKS-LIGHTER:"
EQUAL? GARG,G-DEBUG /FALSE
?CND1: CALL2 PAUSE-SCRIPT?,I-TRAVELER-SEEKS-LIGHTER
ZERO? STACK \FALSE
LOC BAD-SPY >L
CALL2 VISIBLE?,BAD-SPY >V
EQUAL? GARG,G-REACHED \?ELS16
CALL2 V-FWD,1
EQUAL? L,STACK \?ELS19
CALL ESTABLISH-GOAL-TRAIN,BAD-SPY,VESTIBULE-REAR,CAR-MAX
JUMP ?CND17
?ELS19: CALL ESTABLISH-GOAL-TRAIN,BAD-SPY,VESTIBULE-FWD,1
?CND17: ZERO? IDEBUG /FALSE
PRINTI "(0)]"
CRLF
RFALSE
?ELS16: EQUAL? GARG,G-ENROUTE \?CND14
CALL2 META-LOC,LIGHTER
EQUAL? L,STACK /?THN33
ZERO? V \?ELS32
FSET? L,SEENBIT /?ELS32
CALL CALL-FOR-PROP,LIGHTER,BAD-SPY
ZERO? STACK /?ELS32
?THN33: SET 'STR,STR?357
SET 'OBJ,LIGHTER
FCLEAR LIGHTER,TAKEBIT
MOVE LIGHTER,BAD-SPY
GET GOAL-TABLES,BAD-SPY-C >GT
PUT GT,GOAL-SCRIPT,STOP-WALKING-F
CALL ESTABLISH-GOAL-TRAIN,BAD-SPY,VESTIBULE-REAR,CAR-MAX
JUMP ?CND14
?ELS32: ZERO? IDEBUG /FALSE
PRINTI "(0)]"
CRLF
RFALSE
?CND14: ZERO? V \?THN50
ZERO? DEBUG \?THN50
ZERO? IDEBUG /FALSE
?THN50: ZERO? V \?CND52
PRINTC 91
?CND52: CALL HE-SHE-IT,BAD-SPY,TRUE-VALUE
PRINT STR
CALL2 PRINTA,OBJ
PRINTR "."
.FUNCT I-TRAVELER-SEEKS-KNIFE,GARG=0,V,STR,OBJ,GT,L
ZERO? IDEBUG \?THN4
EQUAL? GARG,G-DEBUG \?CND1
?THN4: PRINTI "[I-TRAVELER-SEEKS-KNIFE:"
EQUAL? GARG,G-DEBUG /FALSE
?CND1: CALL2 PAUSE-SCRIPT?,I-TRAVELER-SEEKS-KNIFE
ZERO? STACK \FALSE
LOC BAD-SPY >L
CALL2 VISIBLE?,BAD-SPY >V
EQUAL? GARG,G-REACHED \?ELS16
EQUAL? L,VESTIBULE-REAR-DINER \?ELS19
SET 'STR,STR?358
SET 'OBJ,STOP-CORD
CALL ESTABLISH-GOAL,BAD-SPY,GALLEY
JUMP ?CND14
?ELS19: EQUAL? L,GALLEY \?ELS21
SET 'STR,STR?359
SET 'OBJ,KNIFE
FCLEAR KNIFE,TAKEBIT
MOVE KNIFE,BAD-SPY
GET GOAL-TABLES,BAD-SPY-C
PUT STACK,GOAL-FUNCTION,STOP-WALKING-F
ADD 1,DINER-CAR
CALL ESTABLISH-GOAL-TRAIN,BAD-SPY,COMPARTMENT-1,STACK
JUMP ?CND14
?ELS21: CALL NEW-LDESC,BAD-SPY,26
ZERO? IDEBUG /FALSE
PRINTI "(0)]"
CRLF
RFALSE
?ELS16: ZERO? IDEBUG /FALSE
PRINTI "(0)]"
CRLF
RFALSE
?CND14: ZERO? V \?THN41
ZERO? DEBUG \?THN41
ZERO? IDEBUG /?CND38
?THN41: ZERO? V \?CND43
PRINTC 91
?CND43: CALL HE-SHE-IT,BAD-SPY,TRUE-VALUE
PRINTI " appears and"
PRINT STR
CALL2 HIM-HER-IT,OBJ
PRINTC 46
CRLF
?CND38: EQUAL? OBJ,STOP-CORD \?CND50
CALL2 STOP-CORD-F,TRUE-VALUE
ZERO? IDEBUG /TRUE
PRINTR "(1)]"
?CND50: ZERO? IDEBUG /?CND59
PRINTN V
PRINTC 93
CRLF
RETURN V
?CND59: RETURN V
.FUNCT I-TRAVELER-FINDS-CONTACT,GARG=0,V,STR,OBJ,GT,L
ZERO? IDEBUG \?THN4
EQUAL? GARG,G-DEBUG \?CND1
?THN4: PRINTI "[I-TRAVELER-FINDS-CONTACT:"
EQUAL? GARG,G-DEBUG /FALSE
?CND1: CALL2 PAUSE-SCRIPT?,I-TRAVELER-FINDS-CONTACT
ZERO? STACK \FALSE
LOC BAD-SPY >L
CALL2 VISIBLE?,BAD-SPY >V
EQUAL? GARG,G-REACHED \?ELS16
EQUAL? L,REST-ROOM-MEN,REST-ROOM-WOMEN \?ELS19
CALL ESTABLISH-GOAL,BAD-SPY,PLATFORM-B
CALL2 REST-ROOM-STATION-F,M-OTHER >V
ZERO? IDEBUG /?CND20
PRINTN V
PRINTC 93
CRLF
RETURN V
?CND20: RETURN V
?ELS19: EQUAL? L,PLATFORM-B \?ELS27
CALL ESTABLISH-GOAL-TRAIN,BAD-SPY,COMPARTMENT-START,CAR-START
SET 'LEAVE-TRAIN-PERSON,-1
CALL QUEUE,I-LEAVE-TRAIN,1
PUT STACK,0,1
ZERO? IDEBUG /FALSE
PRINTI "(0)]"
CRLF
RFALSE
?ELS27: GETP COMPARTMENT-START,P?OTHER
EQUAL? L,COMPARTMENT-START,STACK \?ELS35
FCLEAR BAD-SPY,TOUCHBIT
PUTP BAD-SPY,P?LDESC,4
CALL QUEUE,I-TRAVELER,-1
PUT STACK,0,1
ZERO? IDEBUG /FALSE
PRINTI "(0)]"
CRLF
RFALSE
?ELS35: EQUAL? L,PLATFORM-A \?ELS43
CALL ESTABLISH-GOAL,BAD-SPY,PLATFORM-E
JUMP ?CND17
?ELS43: CALL ESTABLISH-GOAL,BAD-SPY,PLATFORM-A
?CND17: CALL2 I-TRAVELER-FINDS-CONTACT,G-ENROUTE >V
ZERO? IDEBUG /?CND46
PRINTN V
PRINTC 93
CRLF
RETURN V
?CND46: RETURN V
?ELS16: EQUAL? GARG,G-ENROUTE \?ELS53
LOC CONTACT
EQUAL? L,STACK \?ELS56
FCLEAR CONTACT,NDESCBIT
SET 'STR,STR?359
SET 'OBJ,CONTACT
GET GOAL-TABLES,BAD-SPY-C >GT
PUT GT,GOAL-ENABLE,0
CALL QUEUE,I-TRAVELER-FINDS-CONTACT,-1
PUT STACK,0,1
JUMP ?CND14
?ELS56: ZERO? IDEBUG /FALSE
PRINTI "(0)]"
CRLF
RFALSE
?ELS53: ZERO? GARG \?CND14
ZERO? PASSOBJECT-GIVEN-OTHER \?ELS69
SET 'PASSOBJECT-GIVEN-OTHER,TRUE-VALUE
FCLEAR CONTACT,TOUCHBIT
PUTP CONTACT,P?LDESC,1
SET 'STR,STR?360
SET 'OBJ,PASSOBJECT
JUMP ?CND14
?ELS69: ZERO? PASSWORD-GIVEN-OTHER \?ELS71
SET 'PASSWORD-GIVEN-OTHER,TRUE-VALUE
FCLEAR BAD-SPY,TOUCHBIT
PUTP BAD-SPY,P?LDESC,1
SET 'STR,STR?361
SET 'OBJ,CONTACT
JUMP ?CND14
?ELS71: EQUAL? SCENERY-OBJ,STATION-GOLA /?ELS73
CALL1 WHISPER-PLAN-OTHER
ZERO? IDEBUG /TRUE
PRINTR "(1)]"
?ELS73: IN? FILM,BAD-SPY \?ELS81
MOVE FILM,CONTACT
SET 'STR,STR?362
SET 'OBJ,FILM
JUMP ?CND14
?ELS81: ZERO? IDEBUG /FALSE
PRINTI "(0)]"
CRLF
RFALSE
?CND14: ZERO? V \?THN93
ZERO? DEBUG \?THN93
ZERO? IDEBUG /?CND90
?THN93: ZERO? V \?CND95
PRINTC 91
?CND95: CALL HE-SHE-IT,BAD-SPY,TRUE-VALUE
PRINT STR
CALL2 HIM-HER-IT,OBJ
PRINTC 46
CRLF
EQUAL? OBJ,FILM \?CND90
CALL HE-SHE-IT,CONTACT,TRUE-VALUE
PRINTI " quickly inspects"
CALL2 HIM-HER-IT,OBJ
PRINTI " and then pumps"
CALL HIM-HER-IT,BAD-SPY,FALSE-VALUE,TRUE-VALUE
PRINTI " hand with obvious gratitude."
CRLF
?CND90: EQUAL? OBJ,FILM \?CND107
PRINTI "(In case you hadn't noticed, I'll tell you that the "
PRINTD BAD-SPY
CALL2 THIS-IS-IT,BAD-SPY
PRINTI " just completed"
CALL HIM-HER-IT,BAD-SPY,FALSE-VALUE,TRUE-VALUE
PRINTI " mission. There's no point in continuing this story, but better luck next time!)"
CRLF
CALL1 FINISH
?CND107: ZERO? IDEBUG /?CND114
PRINTN V
PRINTC 93
CRLF
RETURN V
?CND114: RETURN V
.FUNCT G-FINISH,GARG=0,V,STR,OBJ,GT,L
ZERO? IDEBUG \?THN4
EQUAL? GARG,G-DEBUG \?CND1
?THN4: PRINTI "[G-FINISH:"
EQUAL? GARG,G-DEBUG /FALSE
?CND1: CALL PAUSE-SCRIPT?,G-FINISH,CONTACT
ZERO? STACK \FALSE
LOC CONTACT >L
CALL2 VISIBLE?,CONTACT >V
EQUAL? GARG,G-REACHED \FALSE
PRINTI "(At this point,"
CALL2 PRINTT,CONTACT
CALL2 THIS-IS-IT,CONTACT
EQUAL? SCENERY-OBJ,STATION-FRBZ \?ELS23
PRINTI " has given up on passing on"
CALL2 PRINTT,MCGUFFIN
PRINTI " as"
CALL2 HE-SHE-IT,CONTACT
PRINTI "expected."
JUMP ?CND21
?ELS23: PRINTI " has given up on receiving"
CALL2 PRINTT,MCGUFFIN
PRINTI " as"
CALL2 HE-SHE-IT,CONTACT
PRINTI "expected. "
CALL HE-SHE-IT,CONTACT,TRUE-VALUE
PRINTI " is going to contact those who sent"
CALL2 PRINTT,MCGUFFIN
PRINTI " in the first place, and they will arrange for an alternate courier, who will, in the end, "
EQUAL? VARIATION,3,4 \?ELS32
PRINTI "succeed. In other words, you have, in the end, failed."
JUMP ?CND21
?ELS32: PRINTI "fail, just as you have."
?CND21: PRINTI " Better luck next time!)"
CRLF
CALL1 FINISH
RSTACK
.FUNCT FINAL-SCENE,X
CALL FIND-FLAG-LG,HERE,WINDOWBIT >X
ZERO? X /?CND1
PRINTI "You can see two agents leave"
CALL2 HIM-HER-IT,VEHICLE
PRINTI " and board the train."
CRLF
?CND1: EQUAL? CAR-HERE,FANCY-CAR \?ELS9
ZERO? X /?ELS12
PRINTI "They"
JUMP ?CND10
?ELS12: PRINTI "Two agents"
?CND10: PRINTI " appear, dispatch"
CALL2 HIM-HER-IT,THUG
PRINTI ", and escort"
CALL2 HIM-HER-IT,DEFECTOR
JUMP ?CND7
?ELS9: PRINTI "You hear a commotion to the rear. It must be"
CALL2 HE-SHE-IT,DEFECTOR
PRINTI " being escorted"
?CND7: PRINTI " off the train.
CONGRATULATIONS!
"
EQUAL? VARIATION,2,4 \?CND28
CALL1 AWARD
?CND28: CALL1 FINISH
RSTACK
.FUNCT AWARD
PRINTI "
You deserve an award for such brilliant work on this mission!
If you want it printed, please turn on your printer and type YES; otherwise, type NO."
CALL1 YES?
ZERO? STACK /?CND3
GET 0,8
BOR STACK,1
PUT 0,8,STACK
?CND3: PRINTI "
*****************************************************************************
*****************************************************************************
*** ***
*** ***
*** * ******* ******* ****** ******* ****** ********* TM ***
*** *** ******** ******** ** ** ******** ** ** ********** ***
*** *** ** ** ** ** ** ** ** ** ** ** ** ***
*** *** ** ** ******** ** ** ** ** ** ** ** ** ***
*** *** ** ** ******** ** ** ** ** ** ** ** ** ***
*** *** ** ** ** ** ** ******** ** ** ** ** ** ***
*** *** ** ** ** ****** ******* ****** ** ** ** ***
*** ***
*** ***
*** hereby grants this ***
*** ***
*** DISTINGUISHED SERVICE AWARD ***
*** ***
*** for Doing the Right Thing ***
*** ***
*"
EQUAL? VARIATION,3,4 \?ELS10
PRINTI "** as an Undercover Agent ***"
JUMP ?CND8
?ELS10: PRINTI "** as an Innocent Traveler ***"
?CND8: PRINTI "
*** ***
*** in CHECKPOINT, an interactive story of intrigue ***
*** ***
*** Copyright (c) 1985 by Infocom, Inc. All rights reserved. ***
*****************************************************************************
*****************************************************************************
"
RTRUE
.ENDI