1754 lines
50 KiB
Plaintext
1754 lines
50 KiB
Plaintext
|
|
|
|
.FUNCT INIT-STATUS-LINE
|
|
LESS? WIDTH,38 \?CND1
|
|
PRINTI "[Screen too narrow.]"
|
|
CRLF
|
|
QUIT
|
|
?CND1: SET 'OHERE,FALSE-VALUE
|
|
SET 'OLD-LEN,0
|
|
SPLIT 1
|
|
SCREEN S-WINDOW
|
|
HLIGHT H-INVERSE
|
|
CURSET 1,1
|
|
ICALL2 PRINT-SPACES,WIDTH
|
|
GRTR? WIDTH,74 \?CND5
|
|
CURSET 1,51
|
|
PRINTI "Score:"
|
|
CURSET 1,64
|
|
PRINTI "Moves:"
|
|
?CND5: HLIGHT H-NORMAL
|
|
SCREEN S-TEXT
|
|
RTRUE
|
|
|
|
|
|
.FUNCT UPDATE-STATUS-LINE
|
|
SCREEN S-WINDOW
|
|
HLIGHT H-NORMAL
|
|
HLIGHT H-INVERSE
|
|
EQUAL? HERE,OHERE /?CND1
|
|
SET 'OHERE,HERE
|
|
DIROUT D-TABLE-ON,SL-TABLE
|
|
ICALL1 SAY-HERE
|
|
DIROUT D-TABLE-OFF
|
|
CURSET 1,2
|
|
ICALL2 PRINT-SPACES,OLD-LEN
|
|
GET SL-TABLE,0 >OLD-LEN
|
|
CURSET 1,2
|
|
ICALL1 SAY-HERE
|
|
?CND1: GRTR? WIDTH,74 \?CCL5
|
|
CURSET 1,58
|
|
PRINTN SCORE
|
|
PRINTC 32
|
|
CURSET 1,71
|
|
PRINTN MOVES
|
|
JUMP ?CND3
|
|
?CCL5: DIROUT D-TABLE-ON,SL-TABLE
|
|
PRINTN SCORE
|
|
PRINTC 47
|
|
PRINTN MOVES
|
|
PRINTC 32
|
|
DIROUT D-TABLE-OFF
|
|
GET SL-TABLE,0
|
|
ADD STACK,1
|
|
SUB WIDTH,STACK
|
|
CURSET 1,STACK
|
|
PRINTN SCORE
|
|
PRINTC 47
|
|
PRINTN MOVES
|
|
PRINTC 32
|
|
?CND3: HLIGHT H-NORMAL
|
|
SCREEN S-TEXT
|
|
RTRUE
|
|
|
|
|
|
.FUNCT PRINT-SPACES,CNT
|
|
?PRG1: DLESS? 'CNT,0 /TRUE
|
|
PRINTC 32
|
|
JUMP ?PRG1
|
|
|
|
|
|
.FUNCT SAY-HERE
|
|
ZERO? LIT \?PRG6
|
|
PRINTI "Darkness"
|
|
RTRUE
|
|
?PRG6: PRINTD HERE
|
|
GRTR? WIDTH,74 \TRUE
|
|
IN? PROTAGONIST,POETRY-APPRECIATION-CHAIR \?CCL12
|
|
PRINTI ", in the chair"
|
|
RTRUE
|
|
?CCL12: IN? PROTAGONIST,HERE /?CCL16
|
|
PRINTI ", in the "
|
|
LOC PROTAGONIST
|
|
PRINTD STACK
|
|
RTRUE
|
|
?CCL16: ZERO? LYING-DOWN /TRUE
|
|
PRINTI ", lying down"
|
|
RTRUE
|
|
|
|
|
|
.FUNCT NOT-HERE-OBJECT-F,TBL,PRSO?,OBJ,X
|
|
SET 'PRSO?,TRUE-VALUE
|
|
EQUAL? PRSO,NOT-HERE-OBJECT \?CCL3
|
|
EQUAL? PRSI,NOT-HERE-OBJECT \?CCL3
|
|
PRINTR "Those things aren't here!"
|
|
?CCL3: EQUAL? PRSO,NOT-HERE-OBJECT \?CCL9
|
|
SET 'TBL,P-PRSO
|
|
JUMP ?CND1
|
|
?CCL9: SET 'TBL,P-PRSI
|
|
SET 'PRSO?,FALSE-VALUE
|
|
?CND1: ZERO? PRSO? /?CCL12
|
|
EQUAL? PRSA,V?FIND,V?FOLLOW,V?CALL /?CCL14
|
|
EQUAL? PRSA,V?WHAT,V?WHERE,V?WHO /?CCL14
|
|
EQUAL? PRSA,V?WAIT-FOR,V?WALK-TO,V?WHAT-ABOUT /?CCL14
|
|
EQUAL? PRSA,V?I-AM,V?CARVE,V?CALL-WITH \?CND10
|
|
?CCL14: SET 'X,TRUE-VALUE
|
|
CALL FIND-NOT-HERE,TBL,PRSO? >OBJ
|
|
ZERO? OBJ /FALSE
|
|
EQUAL? OBJ,NOT-HERE-OBJECT /?CND10
|
|
RTRUE
|
|
?CCL12: EQUAL? PRSA,V?ASK-ABOUT,V?ASK-FOR,V?TELL-ABOUT /?CCL25
|
|
EQUAL? PRSA,V?MY-NAME \?CND10
|
|
?CCL25: SET 'X,TRUE-VALUE
|
|
CALL FIND-NOT-HERE,TBL,PRSO? >OBJ
|
|
ZERO? OBJ /FALSE
|
|
EQUAL? OBJ,NOT-HERE-OBJECT \TRUE
|
|
?CND10: ZERO? X /?CCL35
|
|
PRINTI "You'll have to be more specific, I'm afraid."
|
|
CRLF
|
|
JUMP ?CND33
|
|
?CCL35: EQUAL? WINNER,PROTAGONIST \?CCL39
|
|
PRINTI "You can't "
|
|
EQUAL? P-XNAM,W?POEM,W?POETRY,W?CONVERSAT \?PRG47
|
|
PRINTI "hear"
|
|
JUMP ?CND42
|
|
?PRG47: PRINTI "see"
|
|
?CND42: CALL2 NAME?,P-XNAM
|
|
ZERO? STACK \?CND49
|
|
PRINTI " any"
|
|
?CND49: ICALL2 NOT-HERE-PRINT,PRSO?
|
|
PRINTI " here!"
|
|
CRLF
|
|
JUMP ?CND33
|
|
?CCL39: EQUAL? WINNER,FORD \?PRD58
|
|
ZERO? FORD-SLEEPING \FALSE
|
|
?PRD58: EQUAL? WINNER,BEAST \?PRG63
|
|
FSET? BEAST,MUNGEDBIT /FALSE
|
|
?PRG63: PRINTI "Looking confused,"
|
|
ICALL ARTICLE,WINNER,TRUE-VALUE
|
|
PRINTI " says, ""I don't see"
|
|
CALL2 NAME?,P-XNAM
|
|
ZERO? STACK \?CND67
|
|
PRINTI " any"
|
|
?CND67: ICALL2 NOT-HERE-PRINT,PRSO?
|
|
PRINTI " here!"""
|
|
CRLF
|
|
?CND33: CALL1 FUCKING-CLEAR
|
|
RSTACK
|
|
|
|
|
|
.FUNCT FIND-NOT-HERE,TBL,PRSO?,M-F,OBJ
|
|
CALL2 MOBY-FIND,TBL >M-F
|
|
EQUAL? 1,M-F \?CCL3
|
|
ZERO? PRSO? /?CCL6
|
|
SET 'PRSO,P-MOBY-FOUND
|
|
RFALSE
|
|
?CCL6: SET 'PRSI,P-MOBY-FOUND
|
|
RFALSE
|
|
?CCL3: EQUAL? P-XNAM,W?FLUFF \?CCL8
|
|
ZERO? PRSO? /?CCL11
|
|
SET 'PRSO,POCKET-FLUFF
|
|
RFALSE
|
|
?CCL11: SET 'PRSI,POCKET-FLUFF
|
|
RFALSE
|
|
?CCL8: EQUAL? P-XNAM,W?TOOL,W?TOOLS \?CCL13
|
|
ZERO? PRSO? /?CCL16
|
|
SET 'PRSO,TWEEZERS
|
|
RFALSE
|
|
?CCL16: SET 'PRSI,TWEEZERS
|
|
RFALSE
|
|
?CCL13: RETURN NOT-HERE-OBJECT
|
|
|
|
|
|
.FUNCT NOT-HERE-PRINT,PRSO?,?TMP1
|
|
ZERO? P-OFLAG /?CCL3
|
|
ZERO? P-XADJ /?CND4
|
|
PRINTC 32
|
|
PRINTB P-XADJ
|
|
?CND4: ZERO? P-XNAM /FALSE
|
|
PRINTC 32
|
|
PRINTB P-XNAM
|
|
RTRUE
|
|
?CCL3: ZERO? PRSO? /?CCL14
|
|
GET P-ITBL,P-NC1 >?TMP1
|
|
GET P-ITBL,P-NC1L
|
|
CALL BUFFER-PRINT,?TMP1,STACK,FALSE-VALUE
|
|
RSTACK
|
|
?CCL14: GET P-ITBL,P-NC2 >?TMP1
|
|
GET P-ITBL,P-NC2L
|
|
CALL BUFFER-PRINT,?TMP1,STACK,FALSE-VALUE
|
|
RSTACK
|
|
|
|
|
|
.FUNCT LIGHT-F
|
|
IN? FLEET,HERE /?PRD5
|
|
EQUAL? HERE,AIRLOCK,INSIDE-WHALE \?CCL3
|
|
?PRD5: CALL2 VISIBLE?,THUMB
|
|
ZERO? STACK /?CCL3
|
|
EQUAL? LIGHT,PRSI \?CCL10
|
|
ICALL PERFORM,PRSA,PRSO,THUMB
|
|
RTRUE
|
|
?CCL10: ICALL PERFORM,PRSA,THUMB,PRSI
|
|
RTRUE
|
|
?CCL3: EQUAL? HERE,GALLEY \?CCL12
|
|
CALL1 UNIMPORTANT-THING-F
|
|
RSTACK
|
|
?CCL12: EQUAL? LIGHT,PRSO \?CCL14
|
|
EQUAL? PRSA,V?WHAT,V?FOLLOW,V?FIND /FALSE
|
|
EQUAL? PRSA,V?WHAT-ABOUT,V?WALK-TO,V?WHERE /FALSE
|
|
?CCL14: EQUAL? LIGHT,PRSI \?CCL20
|
|
EQUAL? PRSA,V?TELL-ABOUT,V?ASK-ABOUT /FALSE
|
|
?CCL20: EQUAL? HERE,BEDROOM /?CCL24
|
|
CALL2 CANT-SEE,LIGHT
|
|
RSTACK
|
|
?CCL24: EQUAL? PRSA,V?LAMP-ON \?CCL26
|
|
FSET? HERE,ONBIT \?CCL29
|
|
PRINTR "It is."
|
|
?CCL29: SET 'LIT,TRUE-VALUE
|
|
FSET HERE,ONBIT
|
|
FSET DARK-OBJECT,DARKBIT
|
|
MOVE DARK-OBJECT,DARK
|
|
PRINTI "Good start to the day. Pity it's going to be the worst one of your life. The light is now on."
|
|
CRLF
|
|
CRLF
|
|
ICALL1 V-LOOK
|
|
SET 'OHERE,FALSE-VALUE
|
|
RTRUE
|
|
?CCL26: EQUAL? PRSA,V?LAMP-OFF \FALSE
|
|
CALL1 V-DIG
|
|
RSTACK
|
|
|
|
|
|
.FUNCT GLOBAL-SLEEP-F
|
|
EQUAL? PRSA,V?TAKE,V?WALK-TO \FALSE
|
|
ICALL2 PERFORM,V?SLEEP
|
|
RTRUE
|
|
|
|
|
|
.FUNCT SPEECH-F
|
|
EQUAL? PRSA,V?MAKE,V?GIVE \?CCL3
|
|
PRINTI "This isn't the time"
|
|
EQUAL? HERE,DAIS /?PRG10
|
|
PRINTI " or the place"
|
|
?PRG10: PRINTR " for making speeches."
|
|
?CCL3: EQUAL? PRSA,V?READ \FALSE
|
|
PRINTR "It's extemporaneous."
|
|
|
|
|
|
.FUNCT GROUND-F
|
|
EQUAL? PRSA,V?THROUGH \?CCL3
|
|
EQUAL? HERE,ACCESS-SPACE \?CCL3
|
|
PRINTR "The mesh is too fine."
|
|
?CCL3: EQUAL? PRSA,V?CLIMB-FOO,V?CLIMB-ON,V?CLIMB-UP /?CTR8
|
|
EQUAL? PRSA,V?BOARD \?CCL9
|
|
?CTR8: CALL1 V-DIG
|
|
RSTACK
|
|
?CCL9: EQUAL? PRSA,V?LOOK-UNDER \?CCL13
|
|
CALL1 V-COUNT
|
|
RSTACK
|
|
?CCL13: EQUAL? PRSA,V?LEAVE \?CCL15
|
|
CALL2 DO-WALK,P?UP
|
|
RSTACK
|
|
?CCL15: EQUAL? PRSA,V?LIE-DOWN \?CCL17
|
|
IN? PROTAGONIST,BED \?CCL20
|
|
CALL2 OUT-OF-FIRST,BED
|
|
RSTACK
|
|
?CCL20: ZERO? LYING-DOWN /?CCL22
|
|
PRINT YOU-ARE
|
|
CRLF
|
|
RTRUE
|
|
?CCL22: EQUAL? HERE,FRONT-OF-HOUSE \?CCL26
|
|
ICALL PERFORM,V?BLOCK,BULLDOZER
|
|
SET 'P-IT-OBJECT,GROUND
|
|
RTRUE
|
|
?CCL26: SET 'LYING-DOWN,TRUE-VALUE
|
|
SET 'OHERE,FALSE-VALUE
|
|
PRINTR "You are now lying on the ground."
|
|
?CCL17: EQUAL? PRSA,V?EXAMINE \?CCL30
|
|
EQUAL? HERE,GUTS-ROOM \?CCL33
|
|
PRINTR "The walls, floor, and ceiling are covered with little pieces of flesh and bone."
|
|
?CCL33: EQUAL? HERE,ACCESS-SPACE \FALSE
|
|
PRINTR "The floor is an open metal mesh, like the floor of a catwalk."
|
|
?CCL30: EQUAL? PRSA,V?LOOK-INSIDE \?CCL41
|
|
EQUAL? HERE,ACCESS-SPACE \?CCL41
|
|
ICALL PERFORM,V?LOOK-INSIDE,FISH-HOLE
|
|
SET 'P-IT-OBJECT,GROUND
|
|
RTRUE
|
|
?CCL41: EQUAL? PRSA,V?ENJOY \FALSE
|
|
EQUAL? HERE,FRONT-OF-HOUSE \FALSE
|
|
ZERO? LYING-DOWN /FALSE
|
|
PRINTR "It occurs to you that you've never deliberately lain in any mud before and that it's actually a pleasant sort of squishy sensation. You let the mud ooze between your toes. You may be here for some time, so you may as well make the most of it."
|
|
|
|
|
|
.FUNCT WALLS-F
|
|
EQUAL? PRSA,V?EXAMINE \FALSE
|
|
EQUAL? HERE,GUTS-ROOM \FALSE
|
|
ICALL PERFORM,V?EXAMINE,GROUND
|
|
RTRUE
|
|
|
|
|
|
.FUNCT CEILING-F
|
|
EQUAL? PRSA,V?LOOK-UNDER \?CCL3
|
|
ICALL2 PERFORM,V?LOOK
|
|
RTRUE
|
|
?CCL3: EQUAL? PRSA,V?EXAMINE \FALSE
|
|
EQUAL? HERE,GUTS-ROOM \FALSE
|
|
ICALL PERFORM,V?EXAMINE,GROUND
|
|
RTRUE
|
|
|
|
|
|
.FUNCT WINDOW-F
|
|
ZERO? LIT \?CCL3
|
|
PRINT TOO-DARK
|
|
CRLF
|
|
RTRUE
|
|
?CCL3: EQUAL? PRSA,V?MUNG \?CCL7
|
|
ICALL PERFORM,V?KILL,WINDOW
|
|
RTRUE
|
|
?CCL7: EQUAL? HERE,BEDROOM \?CCL9
|
|
EQUAL? PRSA,V?EXAMINE,V?LOOK-INSIDE \?CCL12
|
|
ICALL PERFORM,V?OPEN,CURTAINS
|
|
RTRUE
|
|
?CCL12: EQUAL? PRSA,V?CLOSE,V?OPEN \FALSE
|
|
PRINTR "The bloody thing's been jammed shut for months, now."
|
|
?CCL9: EQUAL? PRSA,V?LOOK-INSIDE \?CCL18
|
|
PRINTR "You see the country lane."
|
|
?CCL18: EQUAL? PRSA,V?CLOSE,V?OPEN \FALSE
|
|
PRINT BUDGE
|
|
CRLF
|
|
RTRUE
|
|
|
|
|
|
.FUNCT STAIRS-F
|
|
EQUAL? PRSA,V?CLIMB-FOO,V?CLIMB-UP \?CCL3
|
|
CALL2 DO-WALK,P?UP
|
|
RSTACK
|
|
?CCL3: EQUAL? PRSA,V?CLIMB-DOWN \FALSE
|
|
CALL2 DO-WALK,P?DOWN
|
|
RSTACK
|
|
|
|
|
|
.FUNCT SKY-F
|
|
FSET? HERE,OUTSIDEBIT /?CCL3
|
|
CALL2 CANT-SEE,SKY
|
|
RSTACK
|
|
?CCL3: IN? FLEET,HERE \FALSE
|
|
EQUAL? PRSA,V?EXAMINE \FALSE
|
|
PRINTI "The sky is filled with the ships of the "
|
|
PRINTD FLEET
|
|
PRINTR "."
|
|
|
|
|
|
.FUNCT STAR-F
|
|
EQUAL? PRSA,V?EXAMINE \FALSE
|
|
EQUAL? HERE,WAR-CHAMBER \?CCL6
|
|
PRINTI "The approaching star is a small, unregarded yellow sun, with nine planets of varying sizes. The "
|
|
PRINTD THIRD-PLANET
|
|
PRINTR " catches your attention."
|
|
?CCL6: EQUAL? HERE,DAIS,SPEEDBOAT \?CCL10
|
|
PRINTR "The sun is a smallish orange star."
|
|
?CCL10: EQUAL? HERE,FRONT-OF-HOUSE,COUNTRY-LANE,BACK-OF-HOUSE \?CCL14
|
|
PRINTR "The sun is a smallish yellow star."
|
|
?CCL14: CALL2 CANT-SEE,STAR
|
|
RSTACK
|
|
|
|
|
|
.FUNCT HANDS-F,ACTOR
|
|
EQUAL? PRSA,V?WAVE \?CCL3
|
|
SET 'PRSO,FALSE-VALUE
|
|
ICALL2 PERFORM,V?WAVE-AT
|
|
RTRUE
|
|
?CCL3: EQUAL? PRSA,V?SHAKE \FALSE
|
|
CALL FIND-IN,HERE,ACTORBIT >ACTOR
|
|
ZERO? ACTOR /?PRG9
|
|
ICALL PERFORM,V?THANK,ACTOR
|
|
RTRUE
|
|
?PRG9: PRINTR "Pleased to meet you."
|
|
|
|
|
|
.FUNCT EYES-F
|
|
EQUAL? PRSA,V?OPEN \?CCL3
|
|
PRINTR "They are."
|
|
?CCL3: EQUAL? PRSA,V?CLOSE \FALSE
|
|
IN? BEAST,HERE \?PRG13
|
|
PRINTI "The Beast doesn't notice."
|
|
PRINT GETTING-CLOSE
|
|
CRLF
|
|
RTRUE
|
|
?PRG13: PRINTR "That won't help."
|
|
|
|
|
|
.FUNCT PROTAGONIST-F
|
|
EQUAL? PRSO,NO-TEA \FALSE
|
|
ZERO? PRSI /FALSE
|
|
CALL1 NO-TEA-F
|
|
RSTACK
|
|
|
|
|
|
.FUNCT ME-F,OLIT
|
|
EQUAL? PRSA,V?TELL \?CCL3
|
|
PRINTI "Talking to yourself is a sign of impending mental collapse."
|
|
CRLF
|
|
CALL1 FUCKING-CLEAR
|
|
RSTACK
|
|
?CCL3: EQUAL? PRSA,V?LISTEN \?CCL7
|
|
PRINTR "Yes?"
|
|
?CCL7: EQUAL? PRSA,V?ALARM \?CCL11
|
|
PRINT YOU-ARE
|
|
CRLF
|
|
RTRUE
|
|
?CCL11: EQUAL? PRSA,V?GIVE \?CCL15
|
|
EQUAL? PRSI,ME \?CCL15
|
|
IN? PRSO,PROTAGONIST \?CCL20
|
|
EQUAL? PRSO,BABEL-FISH,NO-TEA /?CCL20
|
|
CALL1 PRE-TAKE
|
|
RSTACK
|
|
?CCL20: ICALL PERFORM,V?TAKE,PRSO
|
|
RTRUE
|
|
?CCL15: EQUAL? PRSA,V?MOVE \?CCL24
|
|
CALL1 V-WALK-AROUND
|
|
RSTACK
|
|
?CCL24: EQUAL? PRSA,V?SEARCH \?CCL26
|
|
ICALL1 V-INVENTORY
|
|
RTRUE
|
|
?CCL26: EQUAL? PRSA,V?MUNG,V?KILL /?CTR27
|
|
EQUAL? PRSA,V?SHOOT \?CCL28
|
|
EQUAL? PRSI,BLASTER \?CCL28
|
|
?CTR27: ICALL2 JIGS-UP,STR?169
|
|
RTRUE
|
|
?CCL28: EQUAL? PRSA,V?FIND \?CCL34
|
|
PRINTR "You're right here!"
|
|
?CCL34: EQUAL? PRSA,V?WHO \?CCL38
|
|
PRINTI "You are "
|
|
PRINTD IDENTITY-FLAG
|
|
PRINTR "."
|
|
?CCL38: EQUAL? PRSA,V?EXAMINE \?CCL42
|
|
EQUAL? HERE,MAZE \?CCL42
|
|
PRINTR "You look perfectly normal (except that you're two microns tall)."
|
|
?CCL42: EQUAL? PRSA,V?PULL-TOGETHER \?CCL48
|
|
PRINT ZEN
|
|
CRLF
|
|
RTRUE
|
|
?CCL48: EQUAL? PRSA,V?FOLLOW \FALSE
|
|
PRINTR "I'd like to, but like most computers I don't have legs."
|
|
|
|
|
|
.FUNCT GLOBAL-ROOM-F
|
|
EQUAL? PRSA,V?LOOK-INSIDE,V?EXAMINE,V?LOOK \?CCL3
|
|
ICALL1 V-LOOK
|
|
RTRUE
|
|
?CCL3: EQUAL? PRSA,V?WALK-TO,V?THROUGH \?CCL5
|
|
CALL1 V-WALK-AROUND
|
|
RSTACK
|
|
?CCL5: EQUAL? PRSA,V?EXIT,V?LEAVE \?CCL7
|
|
CALL2 DO-WALK,P?OUT
|
|
RSTACK
|
|
?CCL7: EQUAL? PRSA,V?WALK-AROUND \?CCL9
|
|
EQUAL? HERE,CAPTAINS-QUARTERS \?PRG13
|
|
CALL1 V-STAND
|
|
RSTACK
|
|
?PRG13: PRINTR "Walking around the room reveals nothing new. To move elsewhere, just type the desired direction."
|
|
?CCL9: EQUAL? PRSA,V?LAMP-ON \FALSE
|
|
ICALL PERFORM,V?LAMP-ON,LIGHT
|
|
RTRUE
|
|
|
|
|
|
.FUNCT OBJECT-OF-GAME-F
|
|
EQUAL? PRSA,V?WHAT \FALSE
|
|
PRINTR "That's for me to know and you to find out."
|
|
|
|
|
|
.FUNCT CONTROLS-F
|
|
EQUAL? PRSA,V?EXAMINE \FALSE
|
|
EQUAL? HERE,SPEEDBOAT \?CCL6
|
|
PRINTI "The only control, other than those related to steering the boat, is the large red "
|
|
PRINTD AUTOPILOT-BUTTON
|
|
PRINTC 46
|
|
ICALL1 FINE-PRODUCT
|
|
CRLF
|
|
RTRUE
|
|
?CCL6: EQUAL? HERE,BRIDGE \FALSE
|
|
PRINTI "Most of the controls are beyond your comprehension. "
|
|
IN? LARGE-RECEPTACLE,HERE \?PRG23
|
|
PRINTI "The simplest one is a "
|
|
PRINTD LARGE-RECEPTACLE
|
|
PRINTI " of some kind."
|
|
ZERO? DRIVE-TO-CONTROLS /?CCL20
|
|
PRINTC 32
|
|
ICALL PERFORM,V?EXAMINE,LARGE-RECEPTACLE
|
|
RTRUE
|
|
?CCL20: CRLF
|
|
RTRUE
|
|
?PRG23: PRINTR "A fused spot shows where a receptacle once was."
|
|
|
|
|
|
.FUNCT CONVERSATION-F
|
|
EQUAL? PRSA,V?LISTEN \FALSE
|
|
EQUAL? HERE,FRONT-OF-HOUSE \?CCL6
|
|
PRINTR "You can't hear anything from here."
|
|
?CCL6: ICALL PERFORM,V?LISTEN,VLHURG
|
|
RTRUE
|
|
|
|
|
|
.FUNCT GUARDS-F
|
|
EQUAL? GUARDS,WINNER \?CCL3
|
|
EQUAL? PRSA,V?TELL-ABOUT \?CCL6
|
|
EQUAL? PRSO,ME \?CCL6
|
|
SET 'WINNER,PROTAGONIST
|
|
ICALL PERFORM,V?ASK-ABOUT,GUARDS,PRSI
|
|
SET 'WINNER,GUARDS
|
|
RTRUE
|
|
?CCL6: EQUAL? PRSA,V?HELLO \?CCL10
|
|
SET 'WINNER,PROTAGONIST
|
|
ICALL PERFORM,V?HELLO,GUARDS
|
|
SET 'WINNER,GUARDS
|
|
RTRUE
|
|
?CCL10: EQUAL? HERE,DAIS \?CCL12
|
|
IN? RIFLES,GUARDS \?PRD17
|
|
EQUAL? PRSA,V?SHOOT \?PRD17
|
|
ZERO? DONT-FLAG \?CTR14
|
|
?PRD17: IN? RIFLES,GUARDS \?CCL15
|
|
ZERO? DONT-FLAG \?CCL15
|
|
EQUAL? PRSA,V?DROP \?CCL15
|
|
EQUAL? PRSO,RIFLES \?CCL15
|
|
?CTR14: FCLEAR RIFLES,NDESCBIT
|
|
CALL QUEUE,I-GUARDS,8
|
|
PUT STACK,0,1
|
|
MOVE RIFLES,HERE
|
|
FSET RIFLES,TAKEBIT
|
|
FSET RIFLES,TRYTAKEBIT
|
|
PRINTR "The guards hesitate, then toss their photon rifles into a pile in front of you."
|
|
?CCL15: EQUAL? PRSA,V?SHOOT \?CCL28
|
|
IN? RIFLES,GUARDS \?PRG32
|
|
CALL2 JIGS-UP,STR?170
|
|
RSTACK
|
|
?PRG32: PRINTR "Someone around here is being very stupid. Let's say it's the guards, since they're only fictitious characters and therefore not potential Infocom customers. The poor fictitious saps don't understand how they can shoot without rifles."
|
|
?CCL28: EQUAL? PRSA,V?TAKE \?CCL35
|
|
EQUAL? PRSO,RIFLES \?CCL35
|
|
IN? RIFLES,GUARDS \?CCL40
|
|
PRINTR """We already have them!"""
|
|
?CCL40: MOVE RIFLES,GUARDS
|
|
CALL QUEUE,I-GUARDS,5
|
|
PUT STACK,0,1
|
|
PRINTR "They do so."
|
|
?CCL35: EQUAL? PRSA,V?LEAVE \?PRG49
|
|
PRINTR """We can't leave while you're in trouble, Mr. President!"""
|
|
?PRG49: PRINTI "You have failed to issue one of the small set of commands that the guards' military intelligences are trained to understand."
|
|
CRLF
|
|
CALL1 FUCKING-CLEAR
|
|
RSTACK
|
|
?CCL12: CALL HELD?,BABEL-FISH,PROTAGONIST
|
|
ZERO? STACK /?PRG56
|
|
PRINTI """Resistance is useless!"""
|
|
CRLF
|
|
JUMP ?CND51
|
|
?PRG56: PRINTI """I"
|
|
ICALL2 PRODUCE-GIBBERISH,1
|
|
CRLF
|
|
?CND51: CALL1 FUCKING-CLEAR
|
|
RSTACK
|
|
?CCL3: EQUAL? HERE,CAPTAINS-QUARTERS \?CCL59
|
|
EQUAL? PRSA,V?THANK,V?HELLO,V?TELL \?CCL59
|
|
ICALL PERFORM,V?TELL,VOGON-CAPTAIN
|
|
RTRUE
|
|
?CCL59: EQUAL? HERE,CAPTAINS-QUARTERS \?CCL63
|
|
EQUAL? PRSA,V?ASK-FOR,V?ASK-ABOUT \?CCL63
|
|
EQUAL? GUARDS,PRSO \?CCL63
|
|
ICALL PERFORM,V?TELL,VOGON-CAPTAIN
|
|
RTRUE
|
|
?CCL63: EQUAL? PRSA,V?EXAMINE \?CCL68
|
|
IN? RIFLES,GUARDS \?CCL68
|
|
PRINTR "They're holding their photon rifles."
|
|
?CCL68: EQUAL? HERE,DAIS \?CCL74
|
|
EQUAL? PRSA,V?SHOOT \?CCL74
|
|
CALL1 BLASTER-HOLD
|
|
ZERO? STACK \TRUE
|
|
PRINT GUARDS-REALIZE
|
|
ICALL2 JIGS-UP,STR?171
|
|
RTRUE
|
|
?CCL74: EQUAL? PRSA,V?GIVE \?CCL82
|
|
EQUAL? PRSO,BLASTER \?CCL82
|
|
PRINTI "The guards are more than glad to disarm you. They"
|
|
ICALL1 GUARD-DEATH
|
|
RTRUE
|
|
?CCL82: EQUAL? PRSA,V?COUNT \FALSE
|
|
EQUAL? HERE,HOLD \?CCL91
|
|
PRINTR "One."
|
|
?CCL91: EQUAL? HERE,CAPTAINS-QUARTERS \?PRG98
|
|
PRINTR "Several."
|
|
?PRG98: PRINTR "Many."
|
|
|
|
|
|
.FUNCT WEAPON-PSEUDO
|
|
IN? GUARDS,HERE /?CCL3
|
|
PRINTR "What weapon?"
|
|
?CCL3: EQUAL? PRSA,V?SHOOT \FALSE
|
|
PRINT NOT-HOLDING
|
|
PRINTR " it."
|
|
|
|
|
|
.FUNCT FRUSTRATION-F
|
|
EQUAL? PRSA,V?ENJOY \FALSE
|
|
PRINT ZEN
|
|
CRLF
|
|
RTRUE
|
|
|
|
|
|
.FUNCT UNIMPORTANT-THING-F
|
|
EQUAL? PRSA,V?ASK-ABOUT \?PRG6
|
|
EQUAL? PRSO,GUIDE /FALSE
|
|
?PRG6: PRINTR "That's not important; leave it alone."
|
|
|
|
|
|
.FUNCT DONT-F
|
|
EQUAL? PRSA,V?PANIC \?CCL3
|
|
RANDOM 100
|
|
LESS? 50,STACK /?PRG9
|
|
PRINTR "Very clever. It looks like there's a lot you should be panicking about."
|
|
?PRG9: PRINTR "Why not? Your position appears quite hopeless."
|
|
?CCL3: EQUAL? PRSA,V?LOOK \?CCL12
|
|
SET 'DONT-FLAG,FALSE-VALUE
|
|
ICALL PERFORM,V?CLOSE,EYES
|
|
RTRUE
|
|
?CCL12: EQUAL? PRSA,V?WAIT \?CCL14
|
|
PRINTR "Time doesn't pass..."
|
|
?CCL14: EQUAL? PRSA,V?TAKE \?CCL18
|
|
PRINTR "Not taken."
|
|
?CCL18: EQUAL? PRSA,V?LISTEN \?PRG25
|
|
CALL2 VISIBLE?,POETRY
|
|
ZERO? STACK /?PRG25
|
|
SET 'DONT-FLAG,FALSE-VALUE
|
|
ICALL PERFORM,V?LISTEN,POETRY
|
|
RTRUE
|
|
?PRG25: PRINTR "Not done."
|
|
|
|
|
|
.FUNCT DARK-F,RARG
|
|
EQUAL? RARG,M-ENTER \?CCL3
|
|
PUTP PROTAGONIST,P?ACTION,DARK-FUNCTION
|
|
ICALL ROB,PROTAGONIST,DARK-OBJECT
|
|
FSET CONVERSATION,INVISIBLE
|
|
SET 'DREAMING,FALSE-VALUE
|
|
SET 'LYING-DOWN,FALSE-VALUE
|
|
?PRG4: RANDOM 100
|
|
LESS? HEART-PROB,STACK /?CCL8
|
|
SET 'HEART-PROB,0
|
|
SET 'VOGON-PROB,10
|
|
SET 'DARK-FLAG,ENTRY-BAY
|
|
SET 'CURRENT-EXIT,3
|
|
JUMP ?CND6
|
|
?CCL8: RANDOM 100
|
|
LESS? VOGON-PROB,STACK /?CCL10
|
|
SET 'VOGON-PROB,0
|
|
SET 'HEART-PROB,100
|
|
SET 'DARK-FLAG,HOLD
|
|
SET 'CURRENT-EXIT,0
|
|
JUMP ?CND6
|
|
?CCL10: RANDOM 100
|
|
LESS? TRAAL-PROB,STACK /?CCL12
|
|
EQUAL? TRAAL-PROB,10 /?CND13
|
|
SET 'TRAAL-PROB,10
|
|
SET 'TRILLIAN-PROB,25
|
|
SET 'FORD-PROB,25
|
|
SET 'ZAPHOD-PROB,25
|
|
?CND13: SET 'DARK-FLAG,LAIR
|
|
SET 'CURRENT-EXIT,4
|
|
JUMP ?CND6
|
|
?CCL12: RANDOM 100
|
|
LESS? TRILLIAN-PROB,STACK /?CCL16
|
|
SET 'TRILLIAN-PROB,10
|
|
SET 'DARK-FLAG,LIVING-ROOM
|
|
SET 'CURRENT-EXIT,2
|
|
JUMP ?CND6
|
|
?CCL16: RANDOM 100
|
|
LESS? FORD-PROB,STACK /?CCL18
|
|
SET 'FORD-PROB,10
|
|
SET 'DARK-FLAG,COUNTRY-LANE
|
|
SET 'CURRENT-EXIT,1
|
|
JUMP ?CND6
|
|
?CCL18: RANDOM 100
|
|
LESS? ZAPHOD-PROB,STACK /?CCL20
|
|
SET 'ZAPHOD-PROB,10
|
|
SET 'DARK-FLAG,SPEEDBOAT
|
|
SET 'CURRENT-EXIT,5
|
|
JUMP ?CND6
|
|
?CCL20: RANDOM 100
|
|
LESS? FLEET-PROB,STACK /?CCL22
|
|
SET 'FLEET-PROB,10
|
|
SET 'DARK-FLAG,WAR-CHAMBER
|
|
SET 'CURRENT-EXIT,7
|
|
JUMP ?CND6
|
|
?CCL22: RANDOM 100
|
|
LESS? WHALE-PROB,STACK /?CND6
|
|
PRINTI "Bug #60"
|
|
CRLF
|
|
SET 'DARK-FLAG,INSIDE-WHALE
|
|
SET 'CURRENT-EXIT,6
|
|
?CND6: ZERO? DARK-FLAG /?PRG4
|
|
RFALSE
|
|
?CCL3: EQUAL? RARG,M-LOOK /TRUE
|
|
RFALSE
|
|
|
|
|
|
.FUNCT DARK-FUNCTION
|
|
EQUAL? PRSA,V?RESTORE,V?RESTART,V?QUIT /FALSE
|
|
EQUAL? PRSA,V?SAVE,V?VERSION,V?SCORE /FALSE
|
|
EQUAL? PRSA,V?BRIEF,V?VERBOSE,V?HINTS /FALSE
|
|
EQUAL? PRSA,V?UNSCRIPT,V?SCRIPT,V?SUPERBRIEF /FALSE
|
|
EQUAL? PRSA,V?FOOTNOTE /FALSE
|
|
ZERO? DONT-FLAG \FALSE
|
|
EQUAL? PRSA,V?YELL,V?PANIC \?CCL12
|
|
PRINTR "You yell as loudly as you can, but no sound emerges."
|
|
?CCL12: EQUAL? PRSA,V?RELAX /?PRG21
|
|
EQUAL? PRSA,V?ENJOY \?CCL16
|
|
EQUAL? PRSO,DARK-OBJECT \?CCL16
|
|
?PRG21: PRINTR "You achieve a state of Negative Capability, and are able to be in uncertainties, mysteries, doubts, without any irritable searching after fact and reason (Footnote 1)."
|
|
?CCL16: EQUAL? DARK-FLAG,ENTRY-BAY,WAR-CHAMBER \?CCL24
|
|
EQUAL? PRSA,V?LISTEN \?CCL24
|
|
EQUAL? PRSO,DARK-OBJECT \?CCL24
|
|
CALL1 MISSING?
|
|
ZERO? STACK /?CCL24
|
|
MOVE STAR-DRIVE,HERE
|
|
SET 'P-IT-OBJECT,STAR-DRIVE
|
|
PRINTI "You hear the deep and distant hum of a "
|
|
PRINTD STAR-DRIVE
|
|
PRINTI " coming from far "
|
|
EQUAL? DARK-FLAG,ENTRY-BAY \?PRG36
|
|
PRINTI "above"
|
|
JUMP ?PRG38
|
|
?PRG36: PRINTI "below"
|
|
?PRG38: PRINTR ". There is an exit to port."
|
|
?CCL24: EQUAL? PRSA,V?WALK \?CCL41
|
|
CALL1 MISSING?
|
|
ZERO? STACK /?CCL41
|
|
EQUAL? DARK-FLAG,WAR-CHAMBER,ENTRY-BAY \?CCL41
|
|
IN? STAR-DRIVE,HERE \?CCL41
|
|
EQUAL? PRSO,P?SOUTH \?PRG55
|
|
LESS? LYING-COUNTER,4 \?PRG53
|
|
PRINT LYING-ABOUT-EXIT
|
|
?PRG53: PRINTI "You emerge from a small doorway..."
|
|
CALL1 LEAVE-DARK
|
|
RSTACK
|
|
?PRG55: PRINT CANT-GO
|
|
EQUAL? PRSO,P?WEST \?CND57
|
|
INC 'LYING-COUNTER
|
|
EQUAL? LYING-COUNTER,4 \?CND57
|
|
PRINTC 32
|
|
PRINT LYING-ABOUT-EXIT
|
|
PRINTR "There is an exit aft..."
|
|
?CND57: CRLF
|
|
RTRUE
|
|
?CCL41: EQUAL? PRSO,STAR-DRIVE /?PRD66
|
|
EQUAL? PRSI,STAR-DRIVE \?CCL64
|
|
?PRD66: EQUAL? PRSA,V?WALK /?CCL64
|
|
EQUAL? DARK-FLAG,ENTRY-BAY,WAR-CHAMBER /?CCL71
|
|
CALL2 CANT-SEE,STAR-DRIVE
|
|
RSTACK
|
|
?CCL71: EQUAL? PRSA,V?LISTEN \FALSE
|
|
PRINTI "The sound comes from far "
|
|
EQUAL? DARK-FLAG,ENTRY-BAY \?PRG81
|
|
PRINTI "above"
|
|
JUMP ?PRG83
|
|
?PRG81: PRINTI "below"
|
|
?PRG83: PRINTR "."
|
|
?CCL64: EQUAL? DARK-FLAG,COUNTRY-LANE,SPEEDBOAT \?CCL86
|
|
EQUAL? PRSA,V?EXAMINE \?CCL86
|
|
EQUAL? PRSO,DARK-OBJECT \?CCL86
|
|
CALL1 MISSING?
|
|
ZERO? STACK /?CCL86
|
|
MOVE PAINFUL-LIGHT,HERE
|
|
SET 'P-IT-OBJECT,PAINFUL-LIGHT
|
|
PRINTI "You see a painfully bright light that stabs at the "
|
|
EQUAL? DARK-FLAG,COUNTRY-LANE \?PRG98
|
|
PRINTI "front"
|
|
JUMP ?PRG100
|
|
?PRG98: PRINTI "back"
|
|
?PRG100: PRINTR " of your eyes."
|
|
?CCL86: EQUAL? PRSO,PAINFUL-LIGHT /?PRD105
|
|
EQUAL? PRSI,PAINFUL-LIGHT \?CCL103
|
|
?PRD105: EQUAL? PRSA,V?WALK /?CCL103
|
|
EQUAL? DARK-FLAG,SPEEDBOAT,COUNTRY-LANE /?CCL110
|
|
CALL2 CANT-SEE,PAINFUL-LIGHT
|
|
RSTACK
|
|
?CCL110: EQUAL? PRSA,V?EXAMINE \FALSE
|
|
PRINTI "The light resolves itself into the bright "
|
|
EQUAL? DARK-FLAG,COUNTRY-LANE \?PRG120
|
|
PRINTI "yellow Sun of Earth"
|
|
JUMP ?PRG122
|
|
?PRG120: PRINTI "orange Sun of "
|
|
PRINTD DAMOGRAN
|
|
?PRG122: PRINTC 46
|
|
CALL1 LEAVE-DARK
|
|
RSTACK
|
|
?CCL103: EQUAL? DARK-FLAG,LIVING-ROOM,INSIDE-WHALE \?CCL125
|
|
EQUAL? PRSA,V?RUB \?CCL125
|
|
EQUAL? PRSO,DARK-OBJECT \?CCL125
|
|
CALL1 MISSING?
|
|
ZERO? STACK /?CCL125
|
|
MOVE LIQUID,HERE
|
|
SET 'P-IT-OBJECT,LIQUID
|
|
PRINTI "It does feel a bit "
|
|
EQUAL? DARK-FLAG,LIVING-ROOM \?PRG137
|
|
PRINTI "cold"
|
|
JUMP ?PRG139
|
|
?PRG137: PRINTI "warm"
|
|
?PRG139: PRINTR " and wet and squishy. There seems to be some liquid at your fingertips."
|
|
?CCL125: EQUAL? PRSO,LIQUID /?PRD144
|
|
EQUAL? PRSI,LIQUID \?CCL142
|
|
?PRD144: EQUAL? PRSA,V?WALK /?CCL142
|
|
EQUAL? DARK-FLAG,LIVING-ROOM,INSIDE-WHALE /?CCL149
|
|
CALL2 CANT-SEE,LIQUID
|
|
RSTACK
|
|
?CCL149: EQUAL? DARK-FLAG,LIVING-ROOM \?CCL151
|
|
EQUAL? PRSA,V?RUB,V?EXAMINE \?CCL154
|
|
PRINTR "It seems coldish."
|
|
?CCL154: EQUAL? PRSA,V?DRINK,V?TASTE \FALSE
|
|
PRINTI "It tastes just like wine. In fact, you realise with growing embarrassment that "
|
|
PRINTD HANDS
|
|
PRINTI " is sitting in a "
|
|
PRINTD WINE
|
|
PRINTC 46
|
|
CALL1 LEAVE-DARK
|
|
RSTACK
|
|
?CCL151: EQUAL? DARK-FLAG,INSIDE-WHALE \FALSE
|
|
EQUAL? PRSA,V?RUB,V?EXAMINE \?CCL165
|
|
PRINTR "It seems warmish."
|
|
?CCL165: EQUAL? PRSA,V?DRINK,V?TASTE \FALSE
|
|
PRINTI "Yucchhh! You are jerked to your senses by the realisation that you are licking the lining of a whale's stomach."
|
|
CALL1 LEAVE-DARK
|
|
RSTACK
|
|
?CCL142: EQUAL? DARK-FLAG,HOLD,LAIR \?CCL173
|
|
EQUAL? PRSA,V?SMELL \?CCL173
|
|
EQUAL? PRSO,DARK-OBJECT \?CCL173
|
|
CALL1 MISSING?
|
|
ZERO? STACK /?CCL173
|
|
MOVE SHADOW,HERE
|
|
SET 'P-IT-OBJECT,SHADOW
|
|
PRINTI "It does smell a bit. There's something pungent "
|
|
EQUAL? DARK-FLAG,HOLD \?PRG185
|
|
PRINTI "being waved"
|
|
JUMP ?PRG187
|
|
?PRG185: PRINTI "waving"
|
|
?PRG187: PRINTR " under your nose. Your head begins to clear. You can make out a shadow moving in the dark."
|
|
?CCL173: EQUAL? PRSO,SHADOW /?PRD192
|
|
EQUAL? PRSI,SHADOW \?CCL190
|
|
?PRD192: EQUAL? PRSA,V?WALK /?CCL190
|
|
EQUAL? DARK-FLAG,HOLD,LAIR /?CCL197
|
|
CALL2 CANT-SEE,SHADOW
|
|
RSTACK
|
|
?CCL197: EQUAL? PRSA,V?EXAMINE \?CCL199
|
|
PRINTI "The shadow is vaguely "
|
|
ICALL1 BEAST-GUARD-FORD
|
|
PRINTI "-shaped."
|
|
CALL1 LEAVE-DARK
|
|
RSTACK
|
|
?CCL199: EQUAL? PRSA,V?RUB \?CCL205
|
|
PRINTI "The shadow turns out to be a solid object of a "
|
|
ICALL1 BEAST-GUARD-FORD
|
|
PRINTI "-like nature."
|
|
CALL1 LEAVE-DARK
|
|
RSTACK
|
|
?CCL205: EQUAL? PRSA,V?SMELL \FALSE
|
|
PRINTI "The shadow has a sort of "
|
|
ICALL1 BEAST-GUARD-FORD
|
|
PRINTI "y smell to it."
|
|
CALL1 LEAVE-DARK
|
|
RSTACK
|
|
?CCL190: INC 'DARK-COUNTER
|
|
ZERO? DARK-CONTROLLED /?CND216
|
|
INC 'CURRENT-EXIT
|
|
EQUAL? CURRENT-EXIT,8 \?CND218
|
|
SET 'CURRENT-EXIT,0
|
|
?CND218: GET DARK-EXIT-TABLE,CURRENT-EXIT >DARK-FLAG
|
|
?CND216: EQUAL? PRSA,V?LOOK \?CND220
|
|
PRINTI "Dark"
|
|
CRLF
|
|
?CND220: RANDOM 100
|
|
LESS? 25,STACK /?CCL226
|
|
ICALL1 DARK-ONE
|
|
ICALL1 FUCKING-CLEAR
|
|
JUMP ?CND224
|
|
?CCL226: RANDOM 100
|
|
LESS? 33,STACK /?CCL228
|
|
ICALL1 DARK-TWO
|
|
ICALL1 FUCKING-CLEAR
|
|
JUMP ?CND224
|
|
?CCL228: RANDOM 100
|
|
LESS? 50,STACK /?CCL230
|
|
ICALL1 DARK-THREE
|
|
ICALL1 FUCKING-CLEAR
|
|
JUMP ?CND224
|
|
?CCL230: ICALL1 DARK-FOUR
|
|
ICALL1 FUCKING-CLEAR
|
|
?CND224: EQUAL? DARK-COUNTER,18 \?CCL233
|
|
CRLF
|
|
PRINTR "When will you come to your senses and solve this puzzle?"
|
|
?CCL233: EQUAL? DARK-COUNTER,33 \?CCL237
|
|
CRLF
|
|
PRINTR "4 out of 5 sensitive people solve this puzzle right away."
|
|
?CCL237: EQUAL? DARK-COUNTER,48 \?CCL241
|
|
CRLF
|
|
PRINTR "Don't count your senses before they hatch."
|
|
?CCL241: EQUAL? DARK-COUNTER,63 \TRUE
|
|
EQUAL? DARK-FLAG,HOLD \TRUE
|
|
CRLF
|
|
PRINTR "Something stinks around here, and I'm not just talking about your puzzle-solving ability!"
|
|
|
|
|
|
.FUNCT LEAVE-DARK
|
|
CRLF
|
|
CRLF
|
|
PUTP PROTAGONIST,P?ACTION,PROTAGONIST-F
|
|
SET 'DARK-COUNTER,0
|
|
SET 'LYING-COUNTER,0
|
|
SET 'DARK-CONTROLLED,FALSE-VALUE
|
|
ICALL ROB,DARK-OBJECT,PROTAGONIST
|
|
ICALL ROB,MEMORIAL,PROTAGONIST
|
|
MOVE SHADOW,LOCAL-GLOBALS
|
|
MOVE PAINFUL-LIGHT,LOCAL-GLOBALS
|
|
MOVE LIQUID,LOCAL-GLOBALS
|
|
MOVE STAR-DRIVE,LOCAL-GLOBALS
|
|
ZERO? FLUFF-TO-GOWN /?CND1
|
|
MOVE SATCHEL-FLUFF,GOWN
|
|
SET 'FLUFF-TO-GOWN,FALSE-VALUE
|
|
?CND1: EQUAL? DARK-FLAG,WAR-CHAMBER \?CCL5
|
|
FSET? WAR-CHAMBER,REVISITBIT \?CCL5
|
|
CALL QUEUE,I-BRAIN-DEATH,6
|
|
PUT STACK,0,1
|
|
CALL2 META-LOC,SPARE-DRIVE >HERE
|
|
MOVE PROTAGONIST,HERE
|
|
MOVE NAME,HERE
|
|
SET 'OHERE,FALSE-VALUE
|
|
SET 'GUTS-ROOM,HERE
|
|
PRINTI "There is a violent explosion around you, leaving you standing in"
|
|
ICALL ARTICLE,HERE,TRUE-VALUE
|
|
PRINTI ". "
|
|
ICALL PERFORM,V?EXAMINE,GROUND
|
|
CRLF
|
|
PRINTI "Apparently, you just materialised inside your own brain. This is very very very nasty. You have two choices: quit now, or experience this materialisation from the other end, in about five turns."
|
|
CRLF
|
|
JUMP ?CND3
|
|
?CCL5: EQUAL? DARK-FLAG,SPEEDBOAT \?CCL15
|
|
FSET? SPEEDBOAT,REVISITBIT \?CCL15
|
|
ICALL2 GOTO,DAIS
|
|
JUMP ?CND3
|
|
?CCL15: EQUAL? DARK-FLAG,ENTRY-BAY /?CND18
|
|
MOVE MAIN-DRIVE,LOCAL-GLOBALS
|
|
?CND18: ICALL2 GOTO,DARK-FLAG
|
|
?CND3: SET 'DARK-FLAG,FALSE-VALUE
|
|
RTRUE
|
|
|
|
|
|
.FUNCT MISSING?
|
|
ZERO? DARK-CONTROLLED \TRUE
|
|
GRTR? DARK-COUNTER,3 /TRUE
|
|
RFALSE
|
|
|
|
|
|
.FUNCT DARK-ONE
|
|
PRINTI "You can "
|
|
CALL1 MISSING?
|
|
ZERO? STACK /?PRG7
|
|
EQUAL? DARK-FLAG,WAR-CHAMBER,ENTRY-BAY /?CND3
|
|
?PRG7: PRINTI "hear nothing, "
|
|
?CND3: CALL1 MISSING?
|
|
ZERO? STACK /?PRG13
|
|
EQUAL? DARK-FLAG,HOLD,LAIR /?PRG15
|
|
?PRG13: PRINTI "smell nothing, "
|
|
?PRG15: PRINTI "taste nothing, "
|
|
CALL1 MISSING?
|
|
ZERO? STACK /?PRG21
|
|
EQUAL? DARK-FLAG,COUNTRY-LANE,SPEEDBOAT /?CND17
|
|
?PRG21: PRINTI "see nothing, "
|
|
?CND17: CALL1 MISSING?
|
|
ZERO? STACK /?PRG27
|
|
EQUAL? DARK-FLAG,LIVING-ROOM,INSIDE-WHALE /?PRG29
|
|
?PRG27: PRINTI "feel nothing, "
|
|
?PRG29: PRINTR "and are not even certain who you are."
|
|
|
|
|
|
.FUNCT DARK-TWO
|
|
PRINTI "You can "
|
|
CALL1 MISSING?
|
|
ZERO? STACK /?PRG7
|
|
EQUAL? DARK-FLAG,COUNTRY-LANE,SPEEDBOAT /?CND3
|
|
?PRG7: PRINTI "see nothing, "
|
|
?CND3: CALL1 MISSING?
|
|
ZERO? STACK /?PRG13
|
|
EQUAL? DARK-FLAG,LIVING-ROOM,INSIDE-WHALE /?CND9
|
|
?PRG13: PRINTI "feel nothing, "
|
|
?CND9: CALL1 MISSING?
|
|
ZERO? STACK /?PRG19
|
|
EQUAL? DARK-FLAG,WAR-CHAMBER,ENTRY-BAY /?PRG21
|
|
?PRG19: PRINTI "hear nothing, "
|
|
?PRG21: PRINTI "taste nothing, "
|
|
CALL1 MISSING?
|
|
ZERO? STACK /?PRG27
|
|
EQUAL? DARK-FLAG,HOLD,LAIR /?PRG29
|
|
?PRG27: PRINTI "smell nothing, "
|
|
?PRG29: PRINTR "and are not entirely certain who you are."
|
|
|
|
|
|
.FUNCT DARK-THREE
|
|
PRINTI "You can't "
|
|
CALL1 MISSING?
|
|
ZERO? STACK /?PRG7
|
|
EQUAL? DARK-FLAG,WAR-CHAMBER,ENTRY-BAY /?CND3
|
|
?PRG7: PRINTI "hear anything, "
|
|
?CND3: CALL1 MISSING?
|
|
ZERO? STACK /?PRG13
|
|
EQUAL? DARK-FLAG,COUNTRY-LANE,SPEEDBOAT /?CND9
|
|
?PRG13: PRINTI "see anything, "
|
|
?CND9: CALL1 MISSING?
|
|
ZERO? STACK /?PRG19
|
|
EQUAL? DARK-FLAG,HOLD,LAIR /?CND15
|
|
?PRG19: PRINTI "smell anything, "
|
|
?CND15: CALL1 MISSING?
|
|
ZERO? STACK /?PRG25
|
|
EQUAL? DARK-FLAG,LIVING-ROOM,INSIDE-WHALE /?PRG27
|
|
?PRG25: PRINTI "feel anything, "
|
|
?PRG27: PRINTR "or taste anything, and do not even know where you are or who you are or how you got there."
|
|
|
|
|
|
.FUNCT DARK-FOUR
|
|
PRINTI "There's nothing you can taste, "
|
|
CALL1 MISSING?
|
|
ZERO? STACK /?PRG7
|
|
EQUAL? DARK-FLAG,COUNTRY-LANE,SPEEDBOAT /?CND3
|
|
?PRG7: PRINTI "nothing you can see, "
|
|
?CND3: CALL1 MISSING?
|
|
ZERO? STACK /?PRG13
|
|
EQUAL? DARK-FLAG,WAR-CHAMBER,ENTRY-BAY /?CND9
|
|
?PRG13: PRINTI "nothing you can hear, "
|
|
?CND9: CALL1 MISSING?
|
|
ZERO? STACK /?PRG19
|
|
EQUAL? DARK-FLAG,LIVING-ROOM,INSIDE-WHALE /?CND15
|
|
?PRG19: PRINTI "nothing you can feel, "
|
|
?CND15: CALL1 MISSING?
|
|
ZERO? STACK /?PRG25
|
|
EQUAL? DARK-FLAG,HOLD,LAIR /?PRG27
|
|
?PRG25: PRINTI "nothing you can smell, "
|
|
?PRG27: PRINTR "you do not even know who you are."
|
|
|
|
|
|
.FUNCT BEAST-GUARD-FORD
|
|
EQUAL? DARK-FLAG,LAIR \?CCL3
|
|
PRINTI "Bugblatter Beast"
|
|
RTRUE
|
|
?CCL3: FSET? HOLD,REVISITBIT \?PRG10
|
|
PRINTI "guard"
|
|
RTRUE
|
|
?PRG10: PRINTD FORD
|
|
RTRUE
|
|
|
|
|
|
.FUNCT I-BRAIN-DEATH
|
|
CRLF
|
|
PRINTI "The "
|
|
PRINTD ARTHUR
|
|
ICALL2 JIGS-UP,STR?172
|
|
RTRUE
|
|
|
|
|
|
.FUNCT TOOTHBRUSH-F
|
|
EQUAL? PRSA,V?TAKE \FALSE
|
|
FSET? TOOTHBRUSH,TOUCHBIT /FALSE
|
|
MOVE TOOTHBRUSH,PROTAGONIST
|
|
FSET TOOTHBRUSH,TOUCHBIT
|
|
FCLEAR TOOTHBRUSH,TRYTAKEBIT
|
|
PRINTI "As you pick up the "
|
|
PRINTD TOOTHBRUSH
|
|
PRINTI " a tree outside the window collapses. There is no causal relationship between these two events."
|
|
FSET? PHONE,TOUCHBIT \?CND8
|
|
ICALL1 TWO-TREES
|
|
?CND8: CRLF
|
|
RTRUE
|
|
|
|
|
|
.FUNCT LIQUID-SPILL
|
|
EQUAL? PRSI,PLANT,FLOWERPOT \?CCL3
|
|
ICALL PERFORM,V?WATER,PRSI,PRSO
|
|
RTRUE
|
|
?CCL3: MOVE PRSO,LOCAL-GLOBALS
|
|
EQUAL? PRSO,BROWNIAN-SOURCE \?CCL6
|
|
SET 'BROWNIAN-SOURCE,FALSE-VALUE
|
|
JUMP ?PRG8
|
|
?CCL6: EQUAL? PRSO,PANEL-BLOCKER \?PRG8
|
|
SET 'PANEL-BLOCKER,FALSE-VALUE
|
|
?PRG8: PRINTI "It spills all over and then evaporates."
|
|
EQUAL? PRSO,MINERAL-WATER \?CCL12
|
|
ICALL2 ANTI-LITTER,STR?173
|
|
JUMP ?CND10
|
|
?CCL12: ICALL2 ANTI-LITTER,STR?10
|
|
?CND10: CRLF
|
|
RTRUE
|
|
|
|
|
|
.FUNCT ANTI-LITTER,STRING
|
|
PRINTI " The "
|
|
PRINT STRING
|
|
PRINTI " itself vaporises, part of the Galactic Anti-Litter Program."
|
|
RTRUE
|
|
|
|
|
|
.FUNCT TEA-DESCFCN,X
|
|
CALL2 DESCRIBE-DRINK,TEA
|
|
RSTACK
|
|
|
|
|
|
.FUNCT DESCRIBE-DRINK,DRINK
|
|
PRINTI "There is a nice, hot cup of "
|
|
PRINTD DRINK
|
|
PRINTR " here."
|
|
|
|
|
|
.FUNCT TEA-F
|
|
EQUAL? PRSA,V?TAKE \?CCL3
|
|
EQUAL? PRSO,TEA \?CCL3
|
|
MOVE TEA,PROTAGONIST
|
|
SET 'HOLDING-NO-TEA,FALSE-VALUE
|
|
PRINTR "no tea: Dropped."
|
|
?CCL3: EQUAL? PRSA,V?DROP \?CCL9
|
|
MOVE TEA,HERE
|
|
EQUAL? HERE,ACCESS-SPACE \?CCL12
|
|
SET 'HOLDING-NO-TEA,TRUE-VALUE
|
|
CALL1 V-DROP
|
|
RSTACK
|
|
?CCL12: ZERO? HOLDING-NO-TEA /?CCL14
|
|
PRINTR "Dropped."
|
|
?CCL14: SET 'HOLDING-NO-TEA,TRUE-VALUE
|
|
PRINTR "no tea: Taken."
|
|
?CCL9: EQUAL? PRSA,V?DRINK-FROM,V?ENJOY,V?DRINK \?CCL20
|
|
CALL2 HELD?,PRSO
|
|
ZERO? STACK \?CND21
|
|
PRINT NOT-HOLDING
|
|
PRINTR " the cup!"
|
|
?CND21: ADD SCORE,100 >SCORE
|
|
MOVE TEA,LOCAL-GLOBALS
|
|
SET 'HOLDING-NO-TEA,TRUE-VALUE
|
|
EQUAL? TEA,BROWNIAN-SOURCE \?PRG27
|
|
SET 'BROWNIAN-SOURCE,FALSE-VALUE
|
|
?PRG27: PRINTI "It is the finest tea you have ever tasted. It has almost made this entire misadventure seem worthwhile. You experience several moments of complete happiness and relaxation."
|
|
ICALL2 ANTI-LITTER,STR?10
|
|
CRLF
|
|
RTRUE
|
|
?CCL20: EQUAL? PRSA,V?THROW,V?POUR \?CCL30
|
|
CALL1 LIQUID-SPILL
|
|
RSTACK
|
|
?CCL30: EQUAL? PRSA,V?LOOK-INSIDE,V?EXAMINE \FALSE
|
|
PRINT IT-LOOKS-LIKE
|
|
PRINTI " it has even more"
|
|
PRINT BROWNIAN
|
|
PRINTI " than "
|
|
PRINTD SUBSTITUTE
|
|
PRINTC 33
|
|
EQUAL? PRSO,BROWNIAN-SOURCE \?CCL37
|
|
PRINTC 32
|
|
ICALL PERFORM,V?EXAMINE,DANGLY-BIT
|
|
RTRUE
|
|
?CCL37: CRLF
|
|
RTRUE
|
|
|
|
|
|
.FUNCT NO-TEA-F
|
|
EQUAL? PRSA,V?DROP,V?PICK-UP,V?TAKE \?CCL3
|
|
EQUAL? PRSO,NO-TEA \?CCL3
|
|
FSET? PARTICLE,MUNGEDBIT /?CCL3
|
|
PRINTR "Your common sense tells you that you can't do that."
|
|
?CCL3: EQUAL? PRSA,V?PICK-UP,V?TAKE \?CCL10
|
|
EQUAL? PRSO,NO-TEA \?CCL10
|
|
ZERO? HOLDING-NO-TEA \?CCL10
|
|
SET 'HOLDING-NO-TEA,TRUE-VALUE
|
|
PRINTR "no tea: Taken."
|
|
?CCL10: EQUAL? PRSA,V?GIVE,V?SHOW \?CCL17
|
|
EQUAL? PRSI,SCREENING-DOOR /FALSE
|
|
?CCL17: EQUAL? PRSA,V?ASK-ABOUT \?CCL21
|
|
EQUAL? PRSO,GUIDE /FALSE
|
|
?CCL21: EQUAL? PRSA,V?ASK-FOR \?PRG28
|
|
EQUAL? PRSO,NUTRIMAT \?PRG28
|
|
ICALL PERFORM,V?RUB,PAD
|
|
RTRUE
|
|
?PRG28: PRINTR "You're talking complete nonsense; pull yourself together."
|
|
|
|
|
|
.FUNCT TEA-PRINT,OBJ
|
|
EQUAL? OBJ,TEA,NO-TEA \TRUE
|
|
EQUAL? PRSA,V?SHOW /TRUE
|
|
EQUAL? OBJ,TEA \?CCL7
|
|
EQUAL? PRSA,V?TAKE \?CCL10
|
|
CALL2 HELD?,TEA
|
|
ZERO? STACK \TRUE
|
|
ZERO? PRSI /FALSE
|
|
LOC PRSO
|
|
EQUAL? PRSI,STACK /FALSE
|
|
RTRUE
|
|
?CCL10: EQUAL? PRSA,V?DROP \FALSE
|
|
ZERO? HOLDING-NO-TEA /FALSE
|
|
RFALSE
|
|
?CCL7: EQUAL? OBJ,NO-TEA \TRUE
|
|
EQUAL? PRSA,V?TAKE \TRUE
|
|
ZERO? HOLDING-NO-TEA \TRUE
|
|
RFALSE
|
|
|
|
|
|
.FUNCT THUMB-F
|
|
EQUAL? PRSA,V?EXAMINE \?CCL3
|
|
PRINTI "The "
|
|
PRINTD THUMB
|
|
PRINTI " is shaped like a small fist with an extended thumb. Various lights along its ""knuckles"" are currently "
|
|
IN? FLEET,HERE /?PRG11
|
|
EQUAL? HERE,AIRLOCK,INSIDE-WHALE \?PRG13
|
|
?PRG11: PRINTI "blinking wildly, indicating a spaceship in the vicinity"
|
|
JUMP ?PRG15
|
|
?PRG13: PRINTI "dark"
|
|
?PRG15: PRINTI ". It has two small buttons, a red one labelled ""Call Engineer"" and a green one labelled ""Hitchhike."""
|
|
ICALL1 FINE-PRODUCT
|
|
PRINTI " Affixed to the Thumb is a lifetime "
|
|
PRINTD GUARANTEE
|
|
PRINTR "."
|
|
?CCL3: EQUAL? PRSA,V?TAKE \?CCL20
|
|
EQUAL? IDENTITY-FLAG,FORD \?CCL20
|
|
IN? FLEET,HERE \?CCL20
|
|
IN? THUMB,SATCHEL /?CCL20
|
|
PRINT DRIVEN-BACK
|
|
CRLF
|
|
RTRUE
|
|
?CCL20: EQUAL? PRSA,V?LOOK-INSIDE,V?CLOSE,V?OPEN \FALSE
|
|
PRINTR "Impossible."
|
|
|
|
|
|
.FUNCT RED-BUTTON-F
|
|
EQUAL? PRSA,V?PUSH \FALSE
|
|
CALL2 HELD?,THUMB
|
|
ZERO? STACK \?CCL6
|
|
ICALL PERFORM,V?PUSH,GREEN-BUTTON
|
|
RTRUE
|
|
?CCL6: IN? ENGINEER,HERE \?CCL8
|
|
PRINTI "Another "
|
|
PRINTD ENGINEER
|
|
PRINTR " zips up, spots the first one, looks confused, and leaves again."
|
|
?CCL8: MOVE ENGINEER,HERE
|
|
MOVE BIKE,HERE
|
|
CALL QUEUE,I-ENGINEER,2
|
|
PUT STACK,0,1
|
|
PRINTI "With a screech of ion brakes a "
|
|
PRINT SCC
|
|
PRINTR " Repair Robot pulls up on a bike from out of the Sub-Etha."
|
|
|
|
|
|
.FUNCT GREEN-BUTTON-F
|
|
EQUAL? PRSA,V?PUSH \FALSE
|
|
CALL2 HELD?,THUMB
|
|
ZERO? STACK \?CCL6
|
|
PRINT NOT-HOLDING
|
|
PRINTI " the "
|
|
PRINTD THUMB
|
|
PRINTC 46
|
|
CRLF
|
|
SET 'P-IT-OBJECT,THUMB
|
|
RETURN P-IT-OBJECT
|
|
?CCL6: EQUAL? IDENTITY-FLAG,FORD \?CCL10
|
|
IN? FLEET,HERE \?CCL10
|
|
MOVE THUMB,HERE
|
|
PRINT THUMB-FUMBLE
|
|
CRLF
|
|
RTRUE
|
|
?CCL10: FSET? THUMB,MUNGEDBIT \?CCL16
|
|
PRINTI "The"
|
|
PRINT THUMB-CLICKS
|
|
CRLF
|
|
RTRUE
|
|
?CCL16: IN? FLEET,HERE \?CCL20
|
|
EQUAL? DRUNK-LEVEL,3 \?PRG26
|
|
PRINTI "Lights whirl sickeningly around your head, the ground arches away beneath your feet, and every atom of your being is scrambled, an experience you're probably going to have to get used to. You are in..."
|
|
CRLF
|
|
CRLF
|
|
ICALL1 LEAVE-EARTH
|
|
CALL2 GOTO,DARK
|
|
RSTACK
|
|
?PRG26: PRINTC 65
|
|
PRINT BEAM
|
|
ICALL2 JIGS-UP,STR?174
|
|
RTRUE
|
|
?CCL20: EQUAL? HERE,AIRLOCK,INSIDE-WHALE \?CCL29
|
|
PRINTI "Every molecule in your body gets pulled away from every other molecule. Then suddenly they snap back together again like elastic, and you find, with a dizzy head and very sore molecules, that you are in..."
|
|
CRLF
|
|
CRLF
|
|
SET 'HEART-PROB,100
|
|
CALL2 GOTO,DARK
|
|
RSTACK
|
|
?CCL29: FSET THUMB,MUNGEDBIT
|
|
PRINTR "The Thumb winks and flashes for a second. Nothing further happens."
|
|
|
|
|
|
.FUNCT GUARANTEE-F
|
|
EQUAL? PRSA,V?EXAMINE,V?READ \FALSE
|
|
PRINTI "The lifetime "
|
|
PRINTD GUARANTEE
|
|
PRINTI " states that the Thumb will be repaired on site by trained "
|
|
PRINT SCC
|
|
PRINTR " Field Engineers."
|
|
|
|
|
|
.FUNCT ENGINEER-F
|
|
EQUAL? ENGINEER,WINNER \?CCL3
|
|
CALL QUEUE,I-ENGINEER,2
|
|
PUT STACK,0,1
|
|
EQUAL? PRSA,V?TELL-ABOUT \?CCL6
|
|
EQUAL? PRSO,ME \?CCL6
|
|
SET 'WINNER,PROTAGONIST
|
|
ICALL PERFORM,V?ASK-ABOUT,ENGINEER,PRSI
|
|
SET 'WINNER,ENGINEER
|
|
RTRUE
|
|
?CCL6: EQUAL? PRSA,V?HELLO \?CCL10
|
|
SET 'WINNER,PROTAGONIST
|
|
ICALL PERFORM,V?HELLO,ENGINEER
|
|
SET 'WINNER,ENGINEER
|
|
RTRUE
|
|
?CCL10: EQUAL? PRSA,V?REPAIR \?CCL12
|
|
EQUAL? PRSO,THUMB \?CCL12
|
|
IN? THUMB,ENGINEER \?CND15
|
|
PRINTR """I'm doing my best..."""
|
|
?CND15: SET 'WINNER,PROTAGONIST
|
|
MOVE THUMB,PROTAGONIST
|
|
ICALL PERFORM,V?GIVE,THUMB,ENGINEER
|
|
SET 'WINNER,ENGINEER
|
|
RTRUE
|
|
?CCL12: EQUAL? PRSA,V?REPAIR \?CCL20
|
|
PRINTI """I repair only "
|
|
PRINTD THUMB
|
|
PRINTR "s!"""
|
|
?CCL20: EQUAL? PRSA,V?YES \?CCL24
|
|
EQUAL? AWAITING-REPLY,12 \?CCL24
|
|
CALL1 V-YES
|
|
RSTACK
|
|
?CCL24: EQUAL? PRSA,V?NO \?PRG31
|
|
EQUAL? AWAITING-REPLY,12 \?PRG31
|
|
CALL1 V-NO
|
|
RSTACK
|
|
?PRG31: PRINTI """Can't chat, pal, I'm attending to an important repair call."""
|
|
CRLF
|
|
CALL1 FUCKING-CLEAR
|
|
RSTACK
|
|
?CCL3: EQUAL? PRSA,V?SHOW,V?GIVE \?CCL34
|
|
EQUAL? PRSO,THUMB \?CCL34
|
|
FSET? THUMB,MUNGEDBIT \?CCL39
|
|
CALL QUEUE,I-ENGINEER,2
|
|
PUT STACK,0,1
|
|
SET 'THUMB-SHOWN,1
|
|
MOVE THUMB,ENGINEER
|
|
PRINTI "The "
|
|
PRINTD ENGINEER
|
|
PRINTI " takes it, looks at it with horror, shakes his head, sighs, and says, ""Who sold you this then?"""
|
|
CRLF
|
|
CRLF
|
|
PRINTC 62
|
|
PUTB P-INBUF,1,0
|
|
READ P-INBUF,P-LEXV
|
|
PRINTI "The "
|
|
PRINTD ENGINEER
|
|
PRINTR " ignores your reply and shakes the Thumb despondently. ""This is a model 13X,"" he says. ""Not meant for this sort of job. Anyway, it's discontinued. Can't get the parts."""
|
|
?CCL39: MOVE THUMB,PROTAGONIST
|
|
ICALL1 ENGINEER-LEAVE
|
|
PRINTI "The "
|
|
PRINTD ENGINEER
|
|
PRINTI " takes the Thumb, shakes it, looks it up and down. ""Seems to be working OK to me. Unusual for a 13X."" He hands it back and"
|
|
PRINT ROARS-OFF
|
|
PRINTR "."
|
|
?CCL34: EQUAL? PRSA,V?SHOW,V?GIVE \FALSE
|
|
EQUAL? PRSO,GUARANTEE \FALSE
|
|
FSET? THUMB,MUNGEDBIT /?CND50
|
|
ICALL PERFORM,V?GIVE,THUMB,ENGINEER
|
|
RTRUE
|
|
?CND50: FCLEAR THUMB,MUNGEDBIT
|
|
ICALL1 ENGINEER-LEAVE
|
|
MOVE THUMB,PROTAGONIST
|
|
ZERO? THUMB-SHOWN \?CCL54
|
|
PRINTI "The "
|
|
PRINTD ENGINEER
|
|
PRINTI " looks quizzically at the "
|
|
PRINTD GUARANTEE
|
|
PRINTI " and says it's expired but he'll see what he can do. "
|
|
PRINT FIDDLES
|
|
PRINTI """Can't promise anything."" He"
|
|
PRINT ROARS-OFF
|
|
PRINTR "."
|
|
?CCL54: SET 'THUMB-SHOWN,0
|
|
PRINTI "The "
|
|
PRINTD ENGINEER
|
|
PRINTI " looks at it sceptically. ""Guaranteed to work normally for life,"" he mutters. ""Well, it's perfectly normal for a 13X to break down. And this one's reached the end of its life anyway. But I'll see what I can do."""
|
|
CRLF
|
|
CRLF
|
|
PRINT FIDDLES
|
|
PRINTI """Best I can do for a 13X on an expired "
|
|
PRINTD GUARANTEE
|
|
PRINTI ","" he says. ""Can't promise anything."" He"
|
|
PRINT ROARS-OFF
|
|
PRINTR "."
|
|
|
|
|
|
.FUNCT ENGINEER-LEAVE
|
|
IN? THUMB,ENGINEER \?CND1
|
|
IN? ENGINEER,HERE \?CCL5
|
|
MOVE THUMB,PROTAGONIST
|
|
JUMP ?CND1
|
|
?CCL5: LOC ENGINEER
|
|
MOVE THUMB,STACK
|
|
?CND1: MOVE ENGINEER,LOCAL-GLOBALS
|
|
MOVE BIKE,LOCAL-GLOBALS
|
|
CALL2 INT,I-ENGINEER
|
|
PUT STACK,0,0
|
|
SET 'THUMB-SHOWN,0
|
|
SET 'ENGINEER-COUNTER,0
|
|
RETURN ENGINEER-COUNTER
|
|
|
|
|
|
.FUNCT I-ENGINEER
|
|
CALL QUEUE,I-ENGINEER,-1
|
|
PUT STACK,0,1
|
|
INC 'ENGINEER-COUNTER
|
|
IN? ENGINEER,HERE /?CND1
|
|
ICALL1 ENGINEER-LEAVE
|
|
RFALSE
|
|
?CND1: CRLF
|
|
EQUAL? THUMB-SHOWN,1 \?CCL5
|
|
SET 'THUMB-SHOWN,2
|
|
PRINTI "The "
|
|
PRINTD ENGINEER
|
|
PRINTR " ignores you completely. ""See, this is the model with the 5kz booster,"" he says. ""Hopeless."" He shakes his head grimly."
|
|
?CCL5: EQUAL? THUMB-SHOWN,2 \?CCL9
|
|
PRINTI "The "
|
|
PRINTD ENGINEER
|
|
PRINTI " ignores you. ""What you want, you see, is one of the new Mk7's. Only you can't get them. Out of stock till Zarkmas. Sorry."" He"
|
|
IN? THUMB,ENGINEER \?CND12
|
|
PRINTI " gives the defunct Thumb back and"
|
|
?CND12: ICALL1 ENGINEER-LEAVE
|
|
PRINT ROARS-OFF
|
|
PRINTR "."
|
|
?CCL9: EQUAL? ENGINEER-COUNTER,1 \?CCL19
|
|
SET 'AWAITING-REPLY,12
|
|
CALL QUEUE,I-REPLY,2
|
|
PUT STACK,0,1
|
|
PRINTI "The "
|
|
PRINTD ENGINEER
|
|
PRINTR " looks around. ""Somebody call the repair service?"""
|
|
?CCL19: EQUAL? ENGINEER-COUNTER,2 \?CCL23
|
|
PRINTI "The "
|
|
PRINTD ENGINEER
|
|
PRINTR " looks impatient and guns the throttle of his cycle."
|
|
?CCL23: ICALL1 ENGINEER-LEAVE
|
|
PRINTI """Probably a kid playing around with someone else's Thumb,"" grumbles the "
|
|
PRINTD ENGINEER
|
|
PRINTI " and"
|
|
PRINT ROARS-OFF
|
|
PRINTR "."
|
|
|
|
|
|
.FUNCT GUIDE-DESCFCN,X
|
|
PRINTI "There is a copy of "
|
|
PRINT GUIDE-NAME
|
|
PRINTR " here."
|
|
|
|
|
|
.FUNCT GUIDE-F
|
|
EQUAL? PRSA,V?EXAMINE \?CCL3
|
|
PRINTR "The Guide is a Mark II model. Its only resemblance to the Mark IV pictured in the brochure in your game package is the large, friendly ""Don't Panic!"" on its cover.
|
|
|
|
The Guide is a Sub-Etha Relay. You can use it to tap information from a huge and distant data bank by consulting the Guide about some item or subject."
|
|
?CCL3: EQUAL? PRSA,V?ASK-ABOUT \FALSE
|
|
EQUAL? PRSO,GUIDE \FALSE
|
|
FSET? TOWEL,WORNBIT \?CCL12
|
|
PRINT WITH-TOWEL
|
|
CRLF
|
|
RTRUE
|
|
?CCL12: EQUAL? PRSI,ACCESS-SPACE \?PRG18
|
|
PRINTI "Suddenly, agents of the "
|
|
PRINT AGENCY
|
|
PRINTI " pop in using Sub-Etha belts, rough you up a bit, tell you there's no such thing as the "
|
|
PRINT AGENCY
|
|
PRINTI " and never to consult "
|
|
PRINTD GUIDE
|
|
PRINTI " about the "
|
|
PRINT AGENCY
|
|
PRINTR " again; then they leave."
|
|
?PRG18: PRINTI "The Guide checks through its Sub-Etha-Net database and eventually comes up with the following entry:"
|
|
CRLF
|
|
CRLF
|
|
EQUAL? PRSI,GUIDE \?CCL22
|
|
PRINTD GUIDE
|
|
PRINTI " is a wholly remarkable product."
|
|
PRINT ALREADY-KNOW-THAT
|
|
CRLF
|
|
RTRUE
|
|
?CCL22: EQUAL? PRSI,LARGE-PLUG,SMALL-RECEPTACLE,DANGLY-BIT /?PRG29
|
|
EQUAL? PRSI,RED-BUTTON,GREEN-BUTTON,SMALL-PLUG \?CCL26
|
|
?PRG29: PRINTI "Part of"
|
|
EQUAL? PRSI,LARGE-PLUG \?CCL33
|
|
IN? LARGE-PLUG,SPARE-DRIVE /?CCL33
|
|
ICALL2 ARTICLE,SPARE-DRIVE
|
|
JUMP ?PRG36
|
|
?CCL33: LOC PRSI
|
|
ICALL2 ARTICLE,STACK
|
|
?PRG36: PRINTR "."
|
|
?CCL26: EQUAL? PRSI,WAR-CHAMBER \?CCL39
|
|
PRINTR "If you have to consult the Guide about that, you're probably in serious shape. Consult a medic instead."
|
|
?CCL39: EQUAL? PRSI,DAMOGRAN \?CCL43
|
|
PRINTD DAMOGRAN
|
|
PRINTI " is a planet whose surface is mostly water. It is a favourite spot for Presidential dedication ceremonies"
|
|
PRINT ALSO-SEE
|
|
PRINTR "France."
|
|
?CCL43: EQUAL? PRSI,CLIFF \?CCL47
|
|
PRINTI "France is the largest landmass on the planet "
|
|
PRINTD DAMOGRAN
|
|
PRINTR "."
|
|
?CCL47: EQUAL? PRSI,HEART-OF-GOLD \?CCL51
|
|
PRINTI "There is absolutely no such spaceship as "
|
|
PRINTD HEART-OF-GOLD
|
|
PRINTI " and anything you've ever read in this spot to the contrary was just a prank.
|
|
-- "
|
|
PRINT AGENCY
|
|
CRLF
|
|
RTRUE
|
|
?CCL51: EQUAL? PRSI,POETRY \?CCL55
|
|
PRINTD POETRY
|
|
PRINTI " is so awful that even the Sarkopsi of Burphon XII, whose religion strictly forbids the taking of one's life, consider suicide a preferable alternative to a "
|
|
PRINTD POETRY
|
|
PRINTR " reading."
|
|
?CCL55: EQUAL? PRSI,FLEET,VOGON-CAPTAIN \?CCL59
|
|
PRINTI "Vogons, whose specialties are bureaucracy and planet-smashing, are the most unpleasant race in the Galaxy. They wouldn't think twice about throwing someone into space, and wouldn't lift a finger to save their own grandmother from the "
|
|
PRINTD BEAST
|
|
PRINT ALSO-SEE
|
|
PRINTD POETRY
|
|
PRINTI " and the "
|
|
PRINTD BEAST
|
|
PRINTR "."
|
|
?CCL59: EQUAL? PRSI,PUB,BEER \?CCL63
|
|
PRINTI "Alcohol, in addition to its familiar enjoyable effects, also helps cushion the shock of"
|
|
PRINT BEAM
|
|
PRINTR "s."
|
|
?CCL63: EQUAL? PRSI,BRIDGE \?CCL67
|
|
PRINTI "The best randomness generator is simple"
|
|
PRINT BROWNIAN
|
|
PRINTR ". Any hot gas or liquid is a good source."
|
|
?CCL67: EQUAL? PRSI,GALLEY \?CCL71
|
|
PRINTI "The "
|
|
PRINT SCC
|
|
PRINTR " incompetently produces a wide range of inefficient and unreliable high-tech machinery. However, thanks to SCC's ruthless marketing division, this junk accounts for over 95% of the high-tech machinery sold in the Galaxy. (SCC's marketing division will be the first against the wall when the revolution comes.)"
|
|
?CCL71: EQUAL? PRSI,PANTRY \?CCL75
|
|
PRINTI "Thirty million generations of philosophers have debated the definition of intelligence. The most popular definition appears in the "
|
|
PRINT SCC
|
|
PRINTR " android manuals: ""Intelligence is the ability to reconcile totally contradictory situations without going completely bonkers -- for example, having a stomach ache and not having a stomach ache at the same time, holding a hole without the doughnut, having good luck and bad luck simultaneously, or seeing a real estate agent waive his fee."""
|
|
?CCL75: EQUAL? PRSI,SCREENING-DOOR \?CCL79
|
|
PRINTI "These "
|
|
PRINT SCC
|
|
PRINTI " doors screen visitors for such qualities as intelligence and ability to time travel"
|
|
PRINT ALSO-SEE
|
|
PRINT SCC
|
|
PRINTI ", "
|
|
PRINT GPP
|
|
PRINTR ", Intelligence, and Time Travel."
|
|
?CCL79: EQUAL? PRSI,EDDIE,MARVIN,HATCHWAY \?CCL83
|
|
PRINT GPP
|
|
PRINTI " are a misguided attempt by the "
|
|
PRINT SCC
|
|
PRINTR " to make their machines behave more like people. Among the more miserable failures: paranoid-depressive robots and overprotective computers."
|
|
?CCL83: EQUAL? PRSI,DARK \?CCL87
|
|
PRINTR "A must for the serious hitchhiker, peril-sensitive sunglasses darken at the first hint of danger, thus shielding the wearer from seeing anything alarming. Recommended brand: Joo Janta."
|
|
?CCL87: EQUAL? PRSI,RAMP \?CCL91
|
|
PRINTI "According to legend, Magrathea was a planet that amassed incredible wealth by manufacturing "
|
|
PRINTD OTHER-PLANETS
|
|
PRINTR ". The legends also mention it as the setting of the very eagerly awaited second Infocom Hitchhiker's game."
|
|
?CCL91: EQUAL? PRSI,SPARE-DRIVE,MAIN-DRIVE,ENGINE-ROOM \?CCL95
|
|
PRINTI "Scientists have long known how to produce FINITE amounts of improbability, using a "
|
|
PRINT FIG
|
|
PRINTI ", an "
|
|
PRINTD PLOTTER
|
|
PRINTI " and a good source of"
|
|
PRINT BROWNIAN
|
|
PRINTI ". Recently, however, they have learned to generate INFINITE amounts, thanks to the invention of the In"
|
|
PRINT FIG
|
|
PRINTI ". It is rumored that an"
|
|
PRINT IID
|
|
PRINTI ", based on this new generator, is currently under development"
|
|
PRINT ALSO-SEE
|
|
PRINTD PLOTTER
|
|
PRINTI " and"
|
|
PRINT BROWNIAN
|
|
PRINTR "."
|
|
?CCL95: EQUAL? PRSI,PLOTTER \?CCL99
|
|
PRINTI "The "
|
|
PRINTD PLOTTER
|
|
PRINTR " is one of the primary application devices of Improbability Physics."
|
|
?CCL99: EQUAL? PRSI,HOLD,PEANUTS \?CCL103
|
|
PRINTI "Sources of protein, such as the common peanut, are carried by all serious hitchhikers. Protein loss occurs in"
|
|
PRINT BEAM
|
|
PRINTR "s and you will become groggy unless you replace it immediately."
|
|
?CCL103: EQUAL? PRSI,NUT-COM-INTERFACE,NUTRIMAT \?CCL107
|
|
PRINTI "A typically unreliable "
|
|
PRINT SCC
|
|
PRINTI " product, the "
|
|
PRINTD NUTRIMAT
|
|
PRINTR " analyses the user's neural paths to provide the (supposedly) ideal offering. Its computing power is frankly abysmal, so the optional computer interface is a good thing to go for."
|
|
?CCL107: EQUAL? PRSI,SATCHEL-FLUFF,JACKET-FLUFF,POCKET-FLUFF /?PRG114
|
|
EQUAL? PRSI,CUSHION-FLUFF \?CCL111
|
|
?PRG114: PRINTR "Fluff is interesting stuff: a deadly poison on Bodega Minor, the diet staple of Frazelon V, the unit of currency on the moons of the Blurfoid system, and the major crop of the laundry supplies planet, Blastus III.
|
|
One ancient legend claims that four pieces of fluff lie scattered around the Galaxy; each forming one quarter of the seedling of a tree with amazing properties, the sole survivor of the tropical planet Fuzzbol (Footnote 8).
|
|
The ultimate source of fluff is still a mystery, with the scientific community torn between the Big Lint Bang theory and the White Lint Hole theory."
|
|
?CCL111: EQUAL? PRSI,ZAPHOD /?PRG122
|
|
EQUAL? PRSI,ME \?CCL117
|
|
EQUAL? IDENTITY-FLAG,ZAPHOD \?CCL117
|
|
?PRG122: PRINTD ZAPHOD
|
|
PRINTI " is the current"
|
|
PRINT PRESIDENT
|
|
PRINTR "."
|
|
?CCL117: EQUAL? PRSI,BABEL-FISH \?CCL125
|
|
PRINTI "A mind-bogglingly improbable creature. A "
|
|
PRINTD BABEL-FISH
|
|
PRINTR ", when placed in one's ear, allows one to understand any language."
|
|
?CCL125: EQUAL? PRSI,TOWEL \?CCL129
|
|
PRINTR "A towel is the most useful thing (besides the Guide) a Galactic hitchhiker can have. Its uses include travel, combat, communications, protection from the elements, hand-drying and reassurance. Towels have great symbolic value, with many associated points of honour. Never mock the towel of another, even if it has little pink and blue flowers on it. Never do something to somebody else's towel that you would not want them to do to yours. And, if you borrow the towel of another, you MUST return it before leaving their world."
|
|
?CCL129: EQUAL? PRSI,GUARANTEE,THUMB \?CCL133
|
|
PRINTI "The Electronic Sub-Etha Auto Hitching Thumb is a wonderful thing, but should not be mistreated. If used while a ship is near, you will be transported there. If no ship is in the vicinity, you will place a heavy strain on the Thumb's logic circuits, which could lead to malfunction. The Thumb carries the usual "
|
|
PRINT SCC
|
|
PRINTI " lifetime "
|
|
PRINTD GUARANTEE
|
|
PRINTR "s."
|
|
?CCL133: EQUAL? PRSI,MINERAL-WATER \?CCL137
|
|
PRINTR "A strong body of opinion holds that this is not water at all, despite the claims on the label about how pure the spring is, and all that tosh about sparkling babbling brooks and so on. There is something highly suspect about the water on Santraginus Five, as anyone who's ever met any of their fish will tell you."
|
|
?CCL137: EQUAL? PRSI,BEAST \?CCL141
|
|
PRINTI "The "
|
|
PRINTD BEAST
|
|
PRINTR " is a mind-bogglingly stupid animal. It has almost no capacity for learning from experience and is therefore surprised by virtually everything that happens to it. Here is an example of how stupid it is: it thinks that if you can't see it, it can't see you.
|
|
Its behaviour would be quite endearing if it wasn't spoilt by this one thing: it is the most violently carnivorous creature in the Galaxy. Avoid, avoid, avoid."
|
|
?CCL141: EQUAL? PRSI,FRONT-PORCH \?CCL145
|
|
PRINTI "A thoroughly unpleasant means of travelling which involves tearing you apart in one place and slamming you back together in another. (Of course, it's better than the older method, where disassembled people would be transmitted down phone lines and arrive in a garbled and sometimes completely disconnected state.) You should have a drink or two or three before going through one"
|
|
PRINT ALSO-SEE
|
|
PRINTR "Galaxia Woonbeam, Alcohol and Protein."
|
|
?CCL145: EQUAL? PRSI,FRONT-OF-HOUSE \?CCL149
|
|
PRINTR "Galaxia Woonbeam is the author of ""Slimmer's Guide to Weightloss During Matter Disassembly Transition."" This text is currently the subject of the biggest suit for criminal negligence damages in history and is unavailable at this time."
|
|
?CCL149: EQUAL? PRSI,ENTRY-BAY \?CCL153
|
|
PRINTR "The best drink in existence; somewhat like having your brains smashed out by a slice of lemon wrapped around a large gold brick."
|
|
?CCL153: EQUAL? PRSI,MAZE,THIRD-PLANET \?CCL157
|
|
PRINTR "Mostly harmless."
|
|
?CCL157: EQUAL? PRSI,COUNTRY-LANE \?CCL161
|
|
PRINT SPACE-TEXT
|
|
CRLF
|
|
RTRUE
|
|
?CCL161: FSET? PRSI,TOOLBIT \?CCL165
|
|
PRINTR "The editor responsible for entries under this heading has been out to lunch for a couple of years but is expected back soon, at which point there will be rapid updates. Until then, don't panic, unless your situation is really a life or death one, in which case, sure, go ahead, panic."
|
|
?CCL165: EQUAL? PRSI,BLASTER,RIFLES,BEDROOM /?PRG174
|
|
EQUAL? PRSI,BEAST-GUN,NO-TEA,TEA /?PRG174
|
|
EQUAL? PRSI,AIRLOCK,AFT-CORRIDOR,SUBSTITUTE /?PRG174
|
|
EQUAL? PRSI,INSIDE-WHALE \?PRG176
|
|
?PRG174: PRINTR "Sorry, that portion of our Sub-Etha database was accidentally deleted last night during a wild office party. The lost data will be restored as soon as we find someone who knows where the back-up tapes are kept, if indeed any are kept at all."
|
|
?PRG176: PRINTR "That is one of the Great Unanswered Questions. For a list of the others, consult the Guide."
|
|
|
|
|
|
.FUNCT CANT-SEE,OBJ
|
|
PRINTI "You can't see"
|
|
CALL2 NAME?,OBJ
|
|
ZERO? STACK \?CND3
|
|
PRINTI " any"
|
|
?CND3: EQUAL? OBJ,PRSO \?CCL9
|
|
ICALL1 PRSO-PRINT
|
|
JUMP ?PRG10
|
|
?CCL9: ICALL1 PRSI-PRINT
|
|
?PRG10: PRINTI " here."
|
|
CRLF
|
|
CALL1 FUCKING-CLEAR
|
|
RSTACK
|
|
|
|
|
|
.FUNCT TELL-ME-HOW
|
|
PRINTI "You must tell me how to do that to"
|
|
ICALL2 ARTICLE,PRSO
|
|
PRINTR "."
|
|
|
|
|
|
.FUNCT OUT-OF-FIRST,VEHICLE
|
|
PRINTI "You'll have to get out of the "
|
|
PRINTD VEHICLE
|
|
PRINTR " first."
|
|
|
|
|
|
.FUNCT PRIVATE,STRING
|
|
PRINTI "You can't. It's not yours. It's "
|
|
PRINT STRING
|
|
PRINTR "'s and it's private."
|
|
|
|
|
|
.FUNCT NOT-VERY-GOOD,STRING
|
|
PRINTI "It's not a very good "
|
|
PRINT STRING
|
|
PRINTR ", is it?"
|
|
|
|
|
|
.FUNCT FACTOR,STRING
|
|
PRINTI " at an improbability factor of 2 to the "
|
|
PRINT STRING
|
|
PRINTI "th power to 1 against."
|
|
RTRUE
|
|
|
|
|
|
.FUNCT REMOVING-BIT
|
|
PRINTI "(removing the "
|
|
PRINTD DANGLY-BIT
|
|
PRINTR " first)"
|
|
|
|
|
|
.FUNCT PART-OF
|
|
PRINTI "You can't --"
|
|
ICALL ARTICLE,PRSO,TRUE-VALUE
|
|
PRINTI " is an integral part of"
|
|
LOC PRSO
|
|
ICALL ARTICLE,STACK,TRUE-VALUE
|
|
PRINTR "."
|
|
|
|
|
|
.FUNCT BUT-THAT-MAN,STRING
|
|
PRINTI "Pointing toward Prosser, "
|
|
PRINT STRING
|
|
PRINTI ", ""But that man "
|
|
ZERO? HOUSE-DEMOLISHED /?PRG8
|
|
PRINTI "just knocked"
|
|
JUMP ?PRG10
|
|
?PRG8: PRINTI "wants to knock"
|
|
?PRG10: PRINTI " my house down!"""
|
|
RTRUE
|
|
|
|
|
|
.FUNCT CUSHION
|
|
PRINTI " cushion your system against the coming shock of the"
|
|
PRINT BEAM
|
|
PRINTC 46
|
|
RTRUE
|
|
|
|
|
|
.FUNCT FINE-PRODUCT
|
|
PRINTI " It bears a small label which reads ""Another fine product of the "
|
|
PRINT SCC
|
|
PRINTI "."""
|
|
RTRUE
|
|
|
|
|
|
.FUNCT MAKE-WAY-FOR
|
|
PRINTI " a "
|
|
PRINTD FLEET
|
|
PRINTR " unexpectedly arrives and demolishes the Earth to make way for a new hyperspace bypass."
|
|
|
|
|
|
.FUNCT OWN-FEET
|
|
PRINTR "You are now on your feet."
|
|
|
|
.ENDI
|