.FUNCT I-WELDER IN? WELDER,HERE \?CCL3 PRINTI " " INC 'WELDER-COUNTER ZERO? LIT \?CCL6 REMOVE WELDER SET 'WELDER-COUNTER,0 PRINTC 89 PRINT HEAR-WELDER-LEAVE RTRUE ?CCL6: EQUAL? WELDER-COUNTER,2 \?CCL8 PRINTI "The welder moves closer. " JUMP ?CND4 ?CCL8: EQUAL? WELDER-COUNTER,3 /?CND4 CALL JIGS-UP,STR?8 ?CND4: CALL PERFORM,V?EXAMINE,WELDER RSTACK ?CCL3: GRTR? WELDER-COUNTER,0 \?CCL11 REMOVE WELDER SET 'WELDER-COUNTER,0 PRINTI " Nearby, y" PRINT HEAR-WELDER-LEAVE RTRUE ?CCL11: FSET? HERE,NWELDERBIT /FALSE IN? PROTAGONIST,BED /FALSE ZERO? LIT /FALSE RANDOM 100 LESS? NUMBER-OF-WELDERS,STACK /FALSE ZERO? STUNNED \FALSE EQUAL? HERE,SPACETRUCK \?CND18 FSET? SPACETRUCK-HATCH,OPENBIT \FALSE ?CND18: MOVE WELDER,HERE INC 'WELDER-COUNTER RANDOM NUMBER-OF-WELDERS >WELDER-TABLE-POINTER PRINTI " You spot a " PRINTD WELDER PRINTI " approaching. " FSET? WELDER,TOUCHBIT /?CND24 FSET WELDER,TOUCHBIT CALL PERFORM,V?WHAT,WELDER ?CND24: CALL PERFORM,V?EXAMINE,WELDER CALL STOP RSTACK .FUNCT I-HEADLAMP FSET? HEADLAMP,ONBIT \?CCL3 DEC 'HEADLAMP-COUNTER ZERO? HEADLAMP-COUNTER \?CND4 FCLEAR HEADLAMP,ACTIVEBIT FCLEAR HEADLAMP,ONBIT ?CND4: CALL VISIBLE?,HEADLAMP ZERO? STACK /FALSE EQUAL? HEADLAMP-COUNTER,0,15,30 \FALSE PRINTI " The light from the headlamp " ZERO? HEADLAMP-COUNTER \?CCL13 PRINTI "flickers and dies!" CRLF CALL NOW-DARK? RSTACK ?CCL13: EQUAL? HEADLAMP-COUNTER,5 \?CCL15 PRINTR "is almost out!" ?CCL15: PRINTR "seems somewhat dimmer." ?CCL3: CALL DEQUEUE,I-HEADLAMP RSTACK .FUNCT I-PLATINUM-DETECTOR,?TMP1 INC 'DETECTOR-COUNTER CALL VISIBLE?,PLATINUM-DETECTOR ZERO? STACK /?CND1 CALL META-LOC,FOIL >?TMP1 CALL META-LOC,PLATINUM-DETECTOR EQUAL? ?TMP1,STACK /?CCL2 CALL ULTIMATELY-IN?,PLATINUM-DETECTOR,BARBERSHOP ZERO? STACK /?CND1 ZERO? MIRROR-BROKEN \?CND1 ?CCL2: PRINTI " The detector is quietly beeping." CRLF ?CND1: EQUAL? DETECTOR-COUNTER,50,75 \?CCL11 IN? PLATINUM-DETECTOR,PROTAGONIST \?CCL11 PRINTI " You notice that the detector is getting " EQUAL? DETECTOR-COUNTER,75 \?CND14 PRINTI "very " ?CND14: PRINTR "warm." ?CCL11: EQUAL? DETECTOR-COUNTER,100 \FALSE IN? PLATINUM-DETECTOR,PROTAGONIST \FALSE MOVE PLATINUM-DETECTOR,HERE PRINTR " Yeow! The detector is now too hot to handle, so you drop it." .FUNCT I-DRYER INC 'DRYER-COUNTER FCLEAR LAUNDRY,TOUCHBIT EQUAL? HERE,LAUNDRY \FALSE EQUAL? DRYER-COUNTER,5,10,15 \FALSE PRINTI " " CALL DESCRIBE-DRYER-HEAT CRLF RTRUE .FUNCT I-RADIO EQUAL? HERE,SPACETRUCK \FALSE RANDOM 100 LESS? 30,STACK /?CCL5 PRINTI " The radio crackles to life. ""Breaker. " CALL PICK-ONE,RADIO-LINES PRINT STACK PRINTR " Over.""" ?CCL5: RANDOM 100 LESS? 20,STACK /FALSE PRINTR " A country and western station drifts into tune for a moment, but then fades again." .FUNCT I-FLOYD,OBJ=0,?TMP1 CALL QUEUE,I-FLOYD,-1 FSET? FLOYD,TOUCHBIT /?CCL3 FSET FLOYD,TOUCHBIT FSET FLOYD,TRYTAKEBIT PRINTI " The third robot looks up from his marbles, jumps to his feet, and starts waving wildly. It's Floyd, your robotic companion from Resida! (Footnote 3) You've seen him only occasionally since he opted for assignment in the Stellar Patrol those five long years ago." CRLF JUMP ?CND1 ?CCL3: ZERO? ROBOT-PICKED \?CCL5 PRINTI " Floyd jumps up and down saying, ""Oh boy oh boy oh boy pick Floyd pick Floyd pick Floyd!""" CRLF JUMP ?CND1 ?CCL5: ZERO? FLOYD-ANGUISHED /?CCL7 CALL VISIBLE?,FLOYD ZERO? STACK \?CND8 SET 'FLOYD-ANGUISHED,FALSE-VALUE ?CND8: SET 'FLOYD-FOLLOW,FALSE-VALUE RFALSE ?CCL7: CALL VISIBLE?,FLOYD ZERO? STACK /?CCL11 FSET? FLOYD,ACTIVEBIT \FALSE LOC FLOYD EQUAL? STACK,PILOT-SEAT,COPILOT-SEAT \?CCL16 GRTR? SPACETRUCK-COUNTER,0 \?CCL16 ZERO? PILOT-SEAT-COMMENT \?CCL16 SET 'PILOT-SEAT-COMMENT,TRUE-VALUE PRINTI " Floyd strains to see over the top of the dashboard. ""Boy, seats low! Floyd could sure use a phone book!""" CRLF JUMP ?CND1 ?CCL16: IN? OSTRICH,HERE \?CCL21 ZERO? OSTRICH-COMMENT \?CCL21 SET 'OSTRICH-COMMENT,TRUE-VALUE PRINTI " Floyd looks at the ostrich with breathless excitement. ""Wow! An elephant!""" CRLF JUMP ?CND1 ?CCL21: IN? BALLOON,HERE \?CCL25 ZERO? BALLOON-COMMENT \?CCL25 ZERO? HANGING-IN-AIR \?CCL25 GRTR? ROBOT-EVILNESS,13 \?CCL25 SET 'BALLOON-COMMENT,TRUE-VALUE PRINTI " You notice Floyd taunting the " PRINTD BALLOON PRINTI ". The frightened balloon takes refuge in the far corner of the room." CRLF JUMP ?CND1 ?CCL25: FSET? HERE,FLOYDBIT /?PRD33 ZERO? FLOYD-SPOKE \?PRD33 RANDOM 100 LESS? 6,STACK \?CTR30 ?PRD33: GRTR? TIMER-SETTING,0 \?CCL31 CALL VISIBLE?,EXPLOSIVE ZERO? STACK /?CCL31 ?CTR30: REMOVE FLOYD PRINTI " " IN? PLATO,HERE \?CCL41 SET 'POSTPONE-ATTACK,TRUE-VALUE REMOVE PLATO GRTR? ROBOT-EVILNESS,8 \?CCL44 PRINTI """Let us take a stroll, Floyd,"" says Plato, tucking his book under one arm. ""Tagging along after this simpleton human is becoming tiresome."" He breezes out. Floyd hesitates, then follows." CRLF JUMP ?CND1 ?CCL44: RANDOM 100 LESS? 50,STACK \?CTR45 EQUAL? HERE,LIBRARY \?CCL46 ?CTR45: PRINTI """Hey, Plato!"" says Floyd. ""Play Hider-and-Seeker with Floyd?"" Plato glances up from his book, nods, and says, ""I do believe that I can spare a few millichrons for a relaxing bit of sport."" Floyd bounds away, with Plato a bit behind. From out of sight, Floyd's voice faintly echoes back to you: ""Ollie ollie oxen free!""" CRLF JUMP ?CND1 ?CCL46: PRINTI "Plato reaches the last page of his book. ""Heavens! It appears to be time for another jaunt to the library. Would you care to accompany me, my boisterous friend?"" ""Oh boy yessiree!"" says Floyd, bounding off after Plato. ""I hope they have copies of my favorite comic, THE ADVENTURES OF LANE MASTODON!""" CRLF JUMP ?CND1 ?CCL41: PRINTI "Floyd says, ""Floyd going exploring. See you later."" He glides out of the room." CRLF JUMP ?CND1 ?CCL31: RANDOM 100 LESS? 45,STACK /?CND1 ZERO? FLOYD-SPOKE \?CND1 IN? FLOYD,HERE \?CND1 IN? PROTAGONIST,HERE \?CND1 ZERO? HANGING-IN-AIR \?CND1 ZERO? LIT /?CND1 FIRST? HERE >OBJ /?KLU177 ?KLU177: ZERO? OBJ /?CCL58 FSET? OBJ,TOUCHBIT \?CCL58 FSET? OBJ,TAKEBIT \?CCL58 FSET? OBJ,CONTBIT /?CCL58 EQUAL? OBJ,OSTRICH-NIP,SPACESUIT /?CCL58 EQUAL? OBJ,DETONATOR,TIMER,EXPLOSIVE /?CCL58 CALL CCOUNT,FLOYD LESS? STACK,4 \?CCL58 RANDOM 100 LESS? 6,STACK /?CCL58 MOVE OBJ,FLOYD PRINTI " Floyd picks up" CALL TPRINT,OBJ PRINTI ", examines it, and tucks " FSET? OBJ,PLURALBIT \?CCL69 PRINTI "them" JUMP ?CND67 ?CCL69: PRINTI "it" ?CND67: PRINTI " under his arm." CRLF JUMP ?CND1 ?CCL58: FIRST? FLOYD \?CCL71 RANDOM 100 LESS? 6,STACK /?CCL71 FIRST? FLOYD >OBJ /?KLU178 ?KLU178: NEXT? OBJ \?CND74 RANDOM 100 LESS? 60,STACK /?CND74 NEXT? OBJ >OBJ /?CND74 ?CND74: MOVE OBJ,HERE PRINTI " Floyd drops" CALL TPRINT,OBJ PRINTI " he was carrying." CRLF JUMP ?CND1 ?CCL71: FIRST? FLOYD \?CCL79 RANDOM 100 LESS? 4,STACK /?CCL79 FIRST? FLOYD >OBJ /?KLU180 ?KLU180: NEXT? OBJ \?CND82 RANDOM 100 LESS? 60,STACK /?CND82 NEXT? OBJ >OBJ /?CND82 ?CND82: PRINTI " Floyd moves" CALL TPRINT,OBJ PRINTI " in a wavering course through the air, making a roaring noise like a rocket exhaust." CRLF JUMP ?CND1 ?CCL79: IN? PLATO,HERE \?CCL87 RANDOM 100 LESS? 70,STACK /?CCL87 PRINTI " " CALL PICK-ONE,PLATOISMS PRINT STACK PRINT PERIOD-CR JUMP ?CND1 ?CCL87: PRINTI " Floyd " MUL ROBOT-EVILNESS,3 SUB 36,STACK >?TMP1 RANDOM 100 LESS? ?TMP1,STACK /?CCL92 CALL PICK-ONE,GOOD-FLOYDISMS PRINT STACK PRINT PERIOD-CR JUMP ?CND1 ?CCL92: MUL ROBOT-EVILNESS,25 SUB STACK,300 >?TMP1 RANDOM 100 LESS? ?TMP1,STACK /?CCL94 CALL PICK-ONE,BAD-FLOYDISMS PRINT STACK PRINT PERIOD-CR JUMP ?CND1 ?CCL94: RANDOM 100 LESS? 6,STACK /?CCL96 SET 'AWAITING-REPLY,4 ADD C-ELAPSED,2 CALL QUEUE,I-REPLY,STACK PRINTI "says, ""Hey! Wanna play Hucka-Bucka-Beanstalk?""" CRLF JUMP ?CND1 ?CCL96: CALL PICK-ONE,NEUTRAL-FLOYDISMS PRINT STACK PRINT PERIOD-CR JUMP ?CND1 ?CCL11: FSET? FLOYD,ACTIVEBIT /?CCL98 EQUAL? HERE,VACUUM-STORAGE,AIRLOCK /FALSE LESS? SPACETRUCK-COUNTER,5 /FALSE CALL NEXT-ROOM?,FLOYD ZERO? STACK \FALSE FSET FLOYD,ACTIVEBIT FSET FLOYD,ACTORBIT PRINTI " Floyd bounds up to you" PRINT HOPPING-MAD ZERO? PLATO-INTRODUCED /?CCL107 PRINTI " Plato strolls in and gives Floyd a pat. ""I reactivated the little fellow; I hope you don't mind.""" CRLF JUMP ?CND105 ?CCL107: PRINTI " Another robot wanders in behind Floyd and notices you." CRLF CALL I-PLATO,TRUE-VALUE PRINTI " Plato motions toward Floyd. ""I presume you know this playful little fellow. Someone had deactivated him, so I rectified the situation.""" CRLF ?CND105: MOVE PLATO,HERE MOVE FLOYD,HERE JUMP ?CND1 ?CCL98: GRTR? ROBOT-EVILNESS,17 \?CCL109 LOC FLOYD ZERO? STACK /?CND110 LOC FLOYD FSET? STACK,NWELDERBIT \?CND110 CALL NEXT-ROOM?,FLOYD ZERO? STACK \FALSE ?CND110: CALL MOVE-FLOYD-TO-FACTORY RFALSE ?CCL109: ZERO? FLOYD-FOLLOW /?CCL116 EQUAL? HERE,AIRLOCK \?CCL116 PRINTI " Floyd calls from above, """ ZERO? PLATO-INTRODUCED /?CCL121 ZERO? PLATO-ATTACK-COUNTER \?CCL121 PRINTI "We" JUMP ?CND119 ?CCL121: PRINTC 73 ?CND119: PRINTI "'ll wait here; it doesn't look like there's room in that phone booth for " ZERO? PLATO-INTRODUCED /?CCL126 ZERO? PLATO-ATTACK-COUNTER \?CCL126 PRINTI "all" JUMP ?CND124 ?CCL126: PRINTI "both" ?CND124: PRINTI " of us.""" CRLF JUMP ?CND1 ?CCL116: ZERO? FLOYD-FOLLOW /?CCL130 ZERO? TIMER-SETTING /?PRD133 CALL VISIBLE?,EXPLOSIVE ZERO? STACK \?CCL130 ?PRD133: RANDOM 100 LESS? 80,STACK /?CCL130 PRINTI " Floyd " ZERO? PLATO-INTRODUCED /?CCL138 ZERO? PLATO-ATTACK-COUNTER \?CCL138 MOVE PLATO,HERE PRINTI "and Plato follow" JUMP ?CND136 ?CCL138: PRINTI "follows" ?CND136: MOVE FLOYD,HERE PRINTI " you." CRLF JUMP ?CND1 ?CCL130: EQUAL? HERE,SPACETRUCK,ELEVATOR,BRIG /?CTR141 EQUAL? HERE,ARMORY \?CCL142 ?CTR141: PRINTI " Floyd bounces in" ZERO? PLATO-INTRODUCED /?CND145 ZERO? PLATO-ATTACK-COUNTER \?CND145 MOVE PLATO,HERE PRINTI ", followed at a more leisurely pace by Plato" ?CND145: PRINTI ". ""Hey, wait for " ZERO? PLATO-INTRODUCED /?CCL151 ZERO? PLATO-ATTACK-COUNTER \?CCL151 MOVE PLATO,HERE PRINTI "us" JUMP ?CND149 ?CCL151: PRINTI "Floyd" ?CND149: MOVE FLOYD,HERE PRINTI "!"" he yells." CRLF JUMP ?CND1 ?CCL142: RANDOM 100 LESS? 17,STACK /?CND1 ZERO? LIT /?CND1 EQUAL? HERE,AIRLOCK,VACUUM-STORAGE /?CND1 PRINTI " Floyd " ZERO? PLATO-INTRODUCED \?CCL160 FSET? LEVEL-FIVE,TOUCHBIT \?CCL160 RANDOM 100 LESS? 50,STACK /?CCL160 PRINTI "dashes into view, followed by a slightly older-looking robot. ""Look, Floyd found a new friend,"" Floyd says with unbounded exuberance." CRLF CALL I-PLATO,TRUE-VALUE JUMP ?CND158 ?CCL160: MUL ROBOT-EVILNESS,10 SUB STACK,70 >?TMP1 RANDOM 100 LESS? ?TMP1,STACK /?CCL166 PRINTI "meanders in. ""You doing anything fun?"" he asks, and then answers his own question, ""Nope. Same dumb boring things.""" JUMP ?CND164 ?CCL166: RANDOM 100 LESS? 15,STACK /?CCL168 PRINTI "rushes into the room and barrels into you. ""Oops, sorry,"" he says. ""Floyd not looking at where he was going to.""" JUMP ?CND164 ?CCL168: PRINTI "bounds into the room. ""Floyd here now!"" he cries." ?CND164: ZERO? PLATO-INTRODUCED /?CND169 ZERO? PLATO-ATTACK-COUNTER \?CND169 MOVE PLATO,HERE PRINTI " You notice that Plato has also roamed into view behind Floyd, once again absorbed in his reading." ?CND169: CRLF ?CND158: MOVE FLOYD,HERE ZERO? HANGING-IN-AIR /?CND1 ZERO? HANGING-COMMENT \?CND1 SET 'FLOYD-SPOKE,TRUE-VALUE SET 'HANGING-COMMENT,TRUE-VALUE PRINT FLOYDS-HANGING-IN-AIR-COMMENT ?CND1: SET 'FLOYD-SPOKE,FALSE-VALUE SET 'FLOYD-FOLLOW,FALSE-VALUE RETURN FLOYD-FOLLOW .FUNCT I-EXPLOSIVE-MELT,OLD-MELT-COUNTER SET 'OLD-MELT-COUNTER,MELT-COUNTER IN? EXPLOSIVE,THERMOS \?CCL3 FSET? THERMOS,OPENBIT /?CCL3 DIV C-ELAPSED,4 JUMP ?CND1 ?CCL3: PUSH C-ELAPSED ?CND1: ADD MELT-COUNTER,STACK >MELT-COUNTER GRTR? MELT-COUNTER,210 \?CCL8 CALL VISIBLE?,EXPLOSIVE ZERO? STACK /?CCL11 PRINTI " The explosive " PRINT SUBLIMES-INTO-FREZONE CALL DEQUEUE,I-EXPLOSIVE-MELT CALL REMOVE-CAREFULLY,EXPLOSIVE CRLF RTRUE ?CCL11: CALL REMOVE-CAREFULLY,EXPLOSIVE RSTACK ?CCL8: CALL VISIBLE?,EXPLOSIVE ZERO? STACK /FALSE ZERO? LIT /FALSE GRTR? MELT-COUNTER,170 \?CCL18 GRTR? OLD-MELT-COUNTER,170 /?CCL18 PRINTI " " CALL DESCRIBE-EXPLOSIVE RSTACK ?CCL18: GRTR? MELT-COUNTER,130 \FALSE GRTR? OLD-MELT-COUNTER,130 /FALSE PRINTI " " CALL DESCRIBE-EXPLOSIVE RSTACK .FUNCT I-TIMER,?TMP1 CALL QUEUE,I-TIMER,-1 SUB TIMER-SETTING,C-ELAPSED >TIMER-SETTING LESS? TIMER-SETTING,1 \?CND1 CALL DEQUEUE,I-TIMER SET 'TIMER-SETTING,0 ?CND1: CALL VISIBLE?,TIMER ZERO? STACK /?CND3 PRINTI " The timer reaches " PRINTN TIMER-SETTING ZERO? TIMER-SETTING \?CND5 PRINTI " and stops ticking" ?CND5: PRINTC 46 ?CND3: ZERO? TIMER-SETTING \?CND7 ZERO? TIMER-CONNECTED /?CND7 LOC DIODE-M >?TMP1 LOC DIODE-J EQUAL? DETONATOR,?TMP1,STACK \?CND7 IN? DIODE-J,DETONATOR \?CCL14 MOVE DIODE-J,LOCAL-GLOBALS CALL VISIBLE?,DETONATOR ZERO? STACK /?CND7 PRINTI " You hear a sizzling sound from the detonator" FSET? SPACESUIT,WORNBIT /?CND17 PRINTI ", and a burnt odor assaults your nose" ?CND17: PRINTC 46 JUMP ?CND7 ?CCL14: ZERO? EXPLOSIVE-CONNECTED /?CCL20 CALL META-LOC,EXPLOSIVE EQUAL? STACK,HERE \?CCL23 PRINTI " The explosive fulfills its destiny by exploding. You simultaneously fulfill your own destiny: turning into itsy-bitsy pieces of " PRINT LFC CALL JIGS-UP,STR?9 JUMP ?CND21 ?CCL23: IN? EXPLOSIVE,DRILLED-HOLE \?CCL25 RANDOM 200 ADD STACK,20 CALL QUEUE,I-LIGHTS-OUT,STACK FSET SAFE,OPENBIT FSET SAFE,TOUCHBIT FCLEAR SAFE,LOCKEDBIT JUMP ?CND21 ?CCL25: CALL DESTROY-EXPLOSIVE-CONT ?CND21: CALL NEXT-ROOM?,TIMER ZERO? STACK /?CCL28 PRINTI " You hear a deafening explosion from very nearby!" CRLF JUMP ?CND26 ?CCL28: PRINTI " You hear a loud but distant explosion." CRLF ?CND26: REMOVE TIMER REMOVE EXPLOSIVE REMOVE DETONATOR JUMP ?CND7 ?CCL20: CALL VISIBLE?,TIMER ZERO? STACK /?CND7 PRINTI " You hear a click from the detonator." ?CND7: CALL VISIBLE?,TIMER ZERO? STACK /FALSE CRLF RTRUE .FUNCT I-LOG-READER INC 'LOG-READER-COUNTER FSET? LOG-READER,ACTIVEBIT /?CCL3 CALL DEQUEUE,I-LOG-READER SET 'LOG-READER-COUNTER,0 RETURN LOG-READER-COUNTER ?CCL3: EQUAL? LOG-READER-COUNTER,12 \?CCL5 EQUAL? HERE,COMMANDERS-OFFICE \?CCL5 PRINTR " The reader begins producing a whining noise." ?CCL5: EQUAL? LOG-READER-COUNTER,13 \?CCL9 EQUAL? HERE,COMMANDERS-OFFICE \?CCL9 PRINTI " The whine from the " PRINTD LOG-READER PRINTR " rises in pitch, and grows louder by the millichron!" ?CCL9: EQUAL? LOG-READER-COUNTER,14 \FALSE REMOVE LOG-READER CALL DEQUEUE,I-LOG-READER FCLEAR COMMANDERS-OFFICE,TOUCHBIT EQUAL? HERE,COMMANDERS-OFFICE \?CCL16 CALL JIGS-UP,STR?10 RSTACK ?CCL16: EQUAL? HERE,COMMANDERS-QUARTERS,BRIEFING-ROOM,STATION-CONTROL /?CCL18 EQUAL? HERE,SOUTH-JUNCTION \FALSE ?CCL18: PRINTR " You hear an explosion from nearby." .ENDI