From c6e21a6a2e625ca2f2e98610886fa7ed8338cf1f Mon Sep 17 00:00:00 2001 From: historicalsource Date: Sat, 13 Apr 2019 22:29:36 -0400 Subject: [PATCH] Final Revision --- README.md | 1 + airplane.txt | 94 + b.chars | 21 + b.chart | 83 + b.chart-thru-release | 138 ++ b.errors | 37 + b.serial | 1 + b.zil | 67 + b.zip | Bin 0 -> 243524 bytes bank.zil | 1485 +++++++++++++++ bankdefs.zil | 68 + bfreq.zap | 200 ++ bglobals.dat | 436 +++++ bureaucracy.txt | 69 + buttons.txt | 129 ++ c2.zil | 70 + clocker.zil | 135 ++ computer.zil | 1202 ++++++++++++ computerdefs.zil | 92 + events.zil | 1264 ++++++++++++ foo.mud | 194 ++ formdefs.zil | 131 ++ forms.zil | 595 ++++++ jet.zil | 1370 +++++++++++++ jetdefs.zil | 135 ++ macros.zil | 181 ++ maze-program.zil | 245 +++ maze.zil | 917 +++++++++ misc.zil | 1088 +++++++++++ mumble.zil | 295 +++ nairport.zil | 2330 +++++++++++++++++++++++ njet.zil | 1028 ++++++++++ nmaze-program.zil | 260 +++ nnairport.zil | 2815 +++++++++++++++++++++++++++ nnjet.zil | 3506 ++++++++++++++++++++++++++++++++++ ntext.file | 1 + old-parserdefs.zil | 113 ++ other-misc.zil | 727 +++++++ paranoid.zil | 1602 ++++++++++++++++ parser.zil | 3309 ++++++++++++++++++++++++++++++++ people.zil | 1424 ++++++++++++++ places.zil | 1157 +++++++++++ plane.bugs | 32 + random-globals.zil | 45 + syntax.zil | 1288 +++++++++++++ text.file | 1 + things.zil | 4338 ++++++++++++++++++++++++++++++++++++++++++ verbs.zil | 3949 ++++++++++++++++++++++++++++++++++++++ xjet.zil | 2967 +++++++++++++++++++++++++++++ xjetdefs.zil | 98 + xxjet.zil | 3766 ++++++++++++++++++++++++++++++++++++ xxjetdefs.zil | 112 ++ zalagasa.zil | 564 ++++++ 53 files changed, 46175 insertions(+) create mode 100644 README.md create mode 100644 airplane.txt create mode 100644 b.chars create mode 100644 b.chart create mode 100644 b.chart-thru-release create mode 100644 b.errors create mode 100644 b.serial create mode 100644 b.zil create mode 100644 b.zip create mode 100644 bank.zil create mode 100644 bankdefs.zil create mode 100644 bfreq.zap create mode 100644 bglobals.dat create mode 100644 bureaucracy.txt create mode 100644 buttons.txt create mode 100644 c2.zil create mode 100644 clocker.zil create mode 100644 computer.zil create mode 100644 computerdefs.zil create mode 100644 events.zil create mode 100644 foo.mud create mode 100644 formdefs.zil create mode 100644 forms.zil create mode 100644 jet.zil create mode 100644 jetdefs.zil create mode 100644 macros.zil create mode 100644 maze-program.zil create mode 100644 maze.zil create mode 100644 misc.zil create mode 100644 mumble.zil create mode 100644 nairport.zil create mode 100644 njet.zil create mode 100644 nmaze-program.zil create mode 100644 nnairport.zil create mode 100644 nnjet.zil create mode 100644 ntext.file create mode 100644 old-parserdefs.zil create mode 100644 other-misc.zil create mode 100644 paranoid.zil create mode 100644 parser.zil create mode 100644 people.zil create mode 100644 places.zil create mode 100644 plane.bugs create mode 100644 random-globals.zil create mode 100644 syntax.zil create mode 100644 text.file create mode 100644 things.zil create mode 100644 verbs.zil create mode 100644 xjet.zil create mode 100644 xjetdefs.zil create mode 100644 xxjet.zil create mode 100644 xxjetdefs.zil create mode 100644 zalagasa.zil diff --git a/README.md b/README.md new file mode 100644 index 0000000..e72b22e --- /dev/null +++ b/README.md @@ -0,0 +1 @@ +# bureaucracy diff --git a/airplane.txt b/airplane.txt new file mode 100644 index 0000000..b54241a --- /dev/null +++ b/airplane.txt @@ -0,0 +1,94 @@ +AIRPLANE SEQUENCE + + + +WINNING CASE NO 1 + +SEAT 3B + +You are sitting in an incredibly luxurious Air Zalagasa FubAero 7-11 +seat 30,000 feet over somewhere which you don't know where it is. + +>EXAMINE THE SEAT + +It is an incredibly luxurious FubAero ComfoMat (TM) Air Zalagasa seat, +equipped with a recline button, a headphone socket, a light switch and a +stewardess call button. A pocket in front holds literature. + +>PRESS THE RECLINE {ANY} BUTTON + +You hear a tiny metallic voice whispering nearby. + +>LISTEN TO THE VOICE + +You cannot hear it clearly without the proper equipment. + +>LOOK IN THE POCKET + +The seat pocket contains a set of headphones, a copy of Ai-Ai Life, the +in-flight magazine of Air Zalagasa, and a safety card. + +>GET THE HEADPHONES.PLUG THEM INTO THE SEAT. + +The voice is now a little louder but still unclear. + +>WEAR THE HEADPHONES + +You hear an announcement. "Welcome to seat {WRONG SEATNUM}. Your +luxury Air Zalagasa flight has been equipped for your convenience with +ComfoMat (TM) electrically-controlled seats. For your safety and +comfort, the controls located at your passenger station have been +centrally disabled at this time. We will be making this facility +available to you after take off, or when we have reached our cruising +altitude. Or possibly when we have served dinner. Or when we feel like +it." + +>READ THE MAGAZINE + +No. + +>EXAMINE THE MAGAZINE +A card falls out and flutters underneath your seat, which has been specially +designed so that anything which flutters underneath it cannot be retrieved. + +>EXAMINE THE CARD + +This is a shiny card showing happy Zalagasans in a shiny Air Zalagasa +airplane to which all sorts of terrible things are happening. +The first picture shows a happy smiling stewardess making an announcement +in very very small type. The second picture shows some happy, smiling +Zalagasan passengers removing false teeth, sepctacles, ornamental nose +bones and so forth. The third picture shows +some Zalagasans who are almost certainly happy and smiling but you +can't be sure because they are all bent double clasping their knees. +The fourth picture appears to have been chewed by a llama so you can't +tell what the happy smiling Zalagasans which it undoubtedly showed are +actually doing. + +>READ THE SMALL PRINT + +The small print coming out of the stewardess's mouth says "M'baka +n'ka umtogo bokaki m'Great Big Plane Crash n'gaga five minutes, +okaka m'sidli ik ik togo paku." + +>PRESS THE STEWARDESS BUTTON + +Your seat reclines slightly, remembers that it has been centrally +disabled for your comfort and safety, pauses, and returns to its +full upright position. + +>FEEL UNDER THE SEAT + +You feel the edge of a card. + +>GET THE CARD + + +Taken. + +>EXAMINE IT. + +[SHOW COMPLAINTS FORM] + + + diff --git a/b.chars b/b.chars new file mode 100644 index 0000000..7319c73 --- /dev/null +++ b/b.chars @@ -0,0 +1,21 @@ + : 12430 e: 9458 t: 7625 a: 7571 + i: 6351 o: 6233 s: 5915 n: 5296 + r: 5097 l: 4241 h: 3276 d: 3159 + y: 3007 c: 2789 u: 2330 .: 2326 + g: 2260 p: 2170 m: 1941 w: 1806 + f: 1710 b: 1590 ,: 1479 ": 940 + k: 876 v: 809 T: 635 Y: 477 + I: 476 ': 396 A: 322 -: 257 + x: 212 S: 182 H: 176 013: 158 + ?: 158 !: 153 W: 145 O: 139 + j: 130 P: 124 B: 109 C: 99 + D: 95 R: 95 q: 92 N: 90 + Z: 89 (: 88 E: 88 ): 86 + F: 86 M: 85 0: 76 G: 74 + z: 72 L: 59 U: 59 [: 58 + ]: 50 ;: 41 1: 40 2: 35 + :: 33 J: 27 V: 25 4: 22 + $: 21 5: 21 K: 18 7: 17 + /: 13 8: 11 >: 11 3: 7 + Q: 7 6: 6 9: 4 #: 3 + &: 2 X: 1 ^: 1 \ No newline at end of file diff --git a/b.chart b/b.chart new file mode 100644 index 0000000..41ea8fa --- /dev/null +++ b/b.chart @@ -0,0 +1,83 @@ +-date- -rel- -size- -pre- -obj- -glo- -voc- + 2/24 87 243156 41563 255 240 1416 + 3/04 88 243176 37663 255 240 1416 + 3/04 88 243176 37663 255 240 1416 + 3/09 88 243164 37663 255 240 1416 + 3/09 88 243164 37663 255 240 1416 + 3/09 88 243356 37687 255 240 1417 + 3/09 89 243356 37687 255 240 1417 + 3/09 90 243380 37687 255 240 1417 + 3/09 91 243356 37687 255 240 1417 + 3/10 92 243376 37687 255 240 1417 + 3/10 93 243384 37687 255 240 1417 + 3/10 94 243384 37687 255 240 1417 + 3/17 95 243384 37687 255 240 1417 + 3/20 96 243384 37687 255 240 1417 + 3/23 97 243384 37687 255 240 1417 + 3/24 98 243388 37687 255 240 1417 + 3/24 99 243384 37687 255 240 1417 + 3/24 100 243384 37687 255 240 1417 + 4/02 101 243384 37685 255 240 1417 + 4/03 102 243392 37685 255 240 1417 + 4/15 103 243392 37685 255 240 1417 + 4/16 104 243392 37685 255 240 1417 + 4/27 105 243268 37663 255 240 1416 + 4/27 105 243320 37663 255 240 1416 + 4/30 105 243324 37663 255 240 1416 + 5/04 106 243732 37651 255 240 1416 + 5/04 107 243732 37651 255 240 1416 + 5/06 108 243728 37651 255 240 1416 + 5/06 109 243316 37669 255 240 1416 + 5/07 110 243304 37667 255 240 1416 + 5/18 111 243332 37663 255 240 1416 + 5/19 111 243332 37663 255 240 1416 + 5/19 112 243332 37663 255 240 1416 + 5/28 113 243324 37659 255 240 1416 + 5/28 114 243300 37653 255 240 1416 + 5/28 115 243308 37678 255 240 1416 + 5/29 116 243340 37678 255 240 1416 + 6/03 117 243308 37678 255 240 1416 + 6/05 118 218504 37678 255 240 1416 + 6/05 119 243308 37678 255 240 1416 + 6/05 120 243308 37678 255 240 1416 + 6/05 121 243308 37678 255 240 1416 + 6/06 122 243284 37678 255 240 1416 + 6/08 123 243248 37678 255 240 1416 + 6/09 124 243244 37674 255 240 1416 + 6/09 125 243184 37086 255 240 1416 + 6/10 126 243184 37086 255 240 1416 + 6/10 126 243184 37086 255 240 1416 + 6/10 127 243184 37086 255 240 1416 + 6/17 128 243180 37086 255 240 1416 + 6/18 129 243180 37086 255 240 1416 + 6/18 130 243180 37086 255 240 1416 + 6/22 131 243180 37086 255 240 1416 + 6/22 132 243224 37086 255 240 1416 + 6/23 133 243180 37084 255 240 1416 + 6/30 134 243212 37058 255 240 1416 + 6/30 135 243180 37032 255 240 1416 + 6/30 136 243208 37058 255 240 1416 + 7/01 137 243216 37058 255 240 1416 + 7/01 138 243172 37058 255 240 1416 + 7/02 139 243200 37058 255 240 1416 + 7/06 140 243184 37058 255 240 1416 + 7/07 141 243160 37058 255 240 1416 + 7/21 142 241068 36657 255 240 1379 + 7/21 143 243160 37058 255 240 1416 + 7/22 144 243160 37058 255 240 1416 + 7/22 145 243160 37058 255 240 1416 + 7/22 146 243160 37058 255 240 1416 + 7/28 147 243160 37058 255 240 1416 + 8/20 148 243160 37058 255 240 1416 + 9/16 149 243412 37458 255 240 1416 + 9/16 150 243216 37110 255 240 1416 + 9/18 151 243424 37110 255 240 1416 + 9/19 152 243368 37108 255 240 1416 +10/08 153 243224 37110 255 240 1416 +10/08 154 243368 37110 255 240 1416 +10/09 155 243368 37110 255 240 1416 +12/21 156 243368 37110 255 240 1416 +12/21 157 243412 37110 255 240 1416 +12/22 158 243416 37110 255 240 1416 +12/24 159 243416 37110 255 240 1416 + 5/21 160 243524 37130 255 240 1416 diff --git a/b.chart-thru-release b/b.chart-thru-release new file mode 100644 index 0000000..31e9015 --- /dev/null +++ b/b.chart-thru-release @@ -0,0 +1,138 @@ +-date- -rel- -size- -pre- -obj- -glo- -voc- + 1/05 248 218118 38974 272 240 1413 + 1/06 249 218330 38984 272 240 1413 + 1/06 250 218306 38984 272 240 1413 + 1/06 251 218306 38984 272 240 1413 + 1/06 252 218474 38984 272 240 1413 + 1/06 253 218594 39004 272 240 1414 + 1/07 254 218574 39004 272 240 1414 + 1/07 255 218686 39004 272 240 1414 + 1/07 256 218854 39006 272 240 1413 + 1/07 1 218806 38962 270 240 1413 + 1/07 2 218762 38950 270 240 1413 + 1/07 3 218810 38950 270 240 1413 + 1/07 4 218894 38948 270 239 1413 + 1/07 5 218642 38948 270 240 1413 + 1/08 6 218638 38944 270 240 1413 + 1/08 7 218746 38950 270 240 1413 + 1/08 8 218658 38950 270 240 1413 + 1/08 9 218658 38950 270 240 1413 + 1/08 10 218626 38948 270 239 1413 + 1/08 11 218578 38948 270 239 1413 + 1/08 12 218578 38948 270 239 1413 + 1/09 13 218618 38960 270 239 1414 + 1/09 14 218622 38960 270 239 1414 + 1/09 15 218522 38960 270 240 1414 + 1/11 16 218522 38960 270 240 1414 + 1/12 17 218510 38963 270 240 1414 + 1/12 18 218390 38963 270 240 1414 + 1/12 19 218574 38961 270 240 1414 + 1/13 20 218638 38963 270 240 1414 + 1/13 21 218874 38965 270 240 1414 + 1/13 22 219418 39030 270 240 1418 + 1/14 23 219474 39030 270 240 1418 + 1/14 24 219954 39038 270 240 1418 + 1/14 25 219918 39055 270 240 1419 + 1/15 26 219958 39053 270 240 1419 + 1/15 27 219966 39055 270 240 1419 + 1/15 28 219966 39055 270 240 1419 + 1/15 29 219958 39055 270 240 1419 + 1/16 30 220266 39052 270 240 1418 + 1/16 31 220266 39052 270 240 1418 + 1/20 32 220434 39054 270 240 1418 + 1/21 33 221442 38757 266 219 1428 + 1/22 34 221126 38775 266 240 1428 + 1/22 35 221150 38781 266 240 1428 + 1/22 36 221154 38781 266 240 1428 + 1/22 37 221690 38991 266 240 1432 + 1/22 38 222798 38991 266 240 1432 + 1/22 39 222806 38991 266 240 1432 + 1/22 40 223386 38991 266 240 1432 + 1/22 41 223434 38991 266 240 1432 + 1/22 42 223414 38993 266 240 1432 + 1/23 43 223414 38993 266 240 1432 + 1/23 44 223422 38993 266 240 1432 + 1/23 45 223806 38993 266 240 1432 + 1/23 46 226088 38948 266 240 1426 + 1/23 47 222476 38421 259 237 1416 + 1/23 48 223024 38433 259 240 1416 + 1/24 49 223816 38494 259 239 1422 + 1/24 50 223476 38494 259 240 1422 + 1/24 51 223628 38493 259 240 1422 + 1/25 52 228136 38476 258 240 1423 + 1/25 53 228596 38465 258 240 1423 + 1/25 54 228212 38461 258 240 1423 + 1/25 55 227240 38065 250 240 1414 + 1/25 56 227200 38057 250 237 1414 + 1/25 57 226372 37706 250 240 1399 + 1/25 58 226340 37706 250 240 1399 + 1/25 59 226332 37706 250 240 1399 + 1/26 60 225692 37234 250 240 1399 + 1/27 19 230836 37189 250 240 1398 + 1/27 20 231556 37261 250 239 1403 + 1/27 21 231532 37267 250 240 1404 + 1/27 22 231532 37267 250 240 1404 + 1/27 23 231532 37267 250 240 1404 + 1/28 24 231736 37276 250 240 1405 + 1/29 25 232664 37328 250 240 1409 + 1/29 26 232632 37319 250 240 1408 + 1/29 27 232736 37319 250 240 1408 + 1/29 28 233044 37351 250 240 1409 + 1/30 29 233044 37351 250 240 1409 + 1/30 30 233044 37351 250 240 1409 + 1/30 31 233056 37351 250 240 1409 + 1/30 32 233476 37351 250 240 1409 + 1/30 33 233468 37351 250 240 1409 + 1/30 34 233472 37351 250 240 1409 + 1/31 35 233448 37354 250 240 1409 + 1/31 36 233480 37362 250 240 1409 + 1/31 37 233780 37371 250 240 1410 + 1/31 38 233996 37371 250 240 1410 + 1/31 39 234068 37364 250 240 1409 + 1/31 40 234304 37366 250 240 1409 + 2/01 41 234516 37368 250 240 1409 + 2/02 42 234880 37368 250 240 1409 + 2/02 43 234880 37368 250 240 1409 + 2/02 44 234868 37382 250 240 1409 + 2/02 45 235396 37397 250 240 1411 + 2/02 46 235392 37397 250 240 1411 + 2/03 47 235468 37397 250 240 1411 + 2/03 48 235488 37397 250 240 1411 + 2/03 49 236480 37397 250 240 1411 + 2/03 50 236472 37397 250 240 1411 + 2/04 51 237004 37471 252 240 1413 + 2/04 52 237032 37471 252 240 1413 + 2/04 53 237576 37462 252 240 1412 + 2/05 54 237904 37486 252 240 1412 + 2/05 55 238856 37426 252 240 1407 + 2/05 56 239180 37454 253 240 1407 + 2/06 57 239344 37492 254 240 1407 + 2/06 58 239332 37492 254 240 1407 + 2/06 59 239668 37507 254 240 1407 + 2/06 60 239672 37507 254 240 1407 + 2/06 61 239828 37507 254 240 1407 + 2/06 62 239844 37507 254 240 1407 + 2/07 63 239848 37507 254 240 1407 + 2/07 64 240000 37507 254 240 1407 + 2/07 65 240104 37507 254 240 1407 + 2/08 66 240144 37507 254 240 1407 + 2/09 67 241236 37584 255 240 1411 + 2/09 68 241848 37624 255 240 1413 + 2/09 69 241956 37624 255 240 1413 + 2/10 70 241984 37624 255 240 1413 + 2/10 71 241980 37624 255 240 1413 + 2/10 72 242268 37624 255 240 1413 + 2/10 73 242644 37626 255 240 1413 + 2/10 74 242856 37626 255 240 1413 + 2/10 75 242960 37626 255 240 1413 + 2/11 76 242796 37602 255 240 1412 + 2/11 77 242796 37602 255 240 1412 + 2/11 78 242780 37602 255 240 1412 + 2/11 79 242836 37602 255 240 1412 + 2/11 80 243156 37649 255 240 1416 + 2/11 81 243156 37649 255 240 1416 + 2/11 82 243088 37659 255 240 1416 + 2/12 83 243100 37659 255 240 1416 + 2/12 84 243128 37661 255 240 1416 + 2/12 85 243132 37661 255 240 1416 + 2/12 86 243144 37661 255 240 1416 diff --git a/b.errors b/b.errors new file mode 100644 index 0000000..e53f76d --- /dev/null +++ b/b.errors @@ -0,0 +1,37 @@ +Assembling B.ZAP.61 on Saturday, May 21, 1988 16:43:58 +Release: 160 + + 64 Inserting BFREQ.ZAP.60 (640 bytes) + 704 Inserting BDAT.ZAP.57 (36426 bytes) + 37130 Inserting MISC.ZAP.43 (3743 bytes) + 40873 Inserting CLOCKER.ZAP.35 (438 bytes) + 41311 Inserting PARSER.ZAP.36 (12998 bytes) + 54309 Inserting BPUR.ZAP.57 (4384 bytes) + 58693 Inserting OTHER-MISC.ZAP.35 (3382 bytes) + 62075 Inserting VERBS.ZAP.36 (17870 bytes) + 79945 Inserting EVENTS.ZAP.36 (6767 bytes) + 86712 Inserting PEOPLE.ZAP.36 (11090 bytes) + 97802 Inserting PLACES.ZAP.35 (6292 bytes) +104094 Inserting THINGS.ZAP.35 (26700 bytes) +130794 Inserting FORMS.ZAP.35 (2517 bytes) +133311 Inserting COMPUTER.ZAP.37 (4888 bytes) +138199 Inserting NNAIRPORT.ZAP.36 (16794 bytes) +154993 Inserting PARANOID.ZAP.33 (10735 bytes) +165728 Inserting ZALAGASA.ZAP.33 (4293 bytes) +170021 Inserting MAZE.ZAP.34 (7780 bytes) +177801 Inserting MUMBLE.ZAP.33 (930 bytes) +178731 Inserting BANK.ZAP.34 (9432 bytes) +188163 Inserting XXJET.ZAP.32 (30155 bytes) +218318 Inserting BSTR.ZAP.53 (25206 bytes) + +*000000000000* global undefined: 17586, 16713, 15842, 15826, 15814, 15802, 15772, 15756, 15744, 15728, 15718, 15708, 15698, 15688, 15672, 15660, 15650, 15640, 15626, 15614, 14248, 14236, 14226, 14210, 13998, 13646 +#BYTE global undefined: 17585, 16712, 15841, 15825, 15813, 15801, 15771, 15755, 15743, 15727, 15717, 15707, 15697, 15687, 15671, 15659, 15649, 15639, 15625, 15613, 14247, 14235, 14225, 14209, 13997, 13645 + +255 objects. +240 globals. +1416 word vocabulary. + +243524 bytes (238K). + 37130 bytes of preload. + 17667 bytes of impure. +Outputting symbol tables diff --git a/b.serial b/b.serial new file mode 100644 index 0000000..f6b91e0 --- /dev/null +++ b/b.serial @@ -0,0 +1 @@ +56 diff --git a/b.zil b/b.zil new file mode 100644 index 0000000..a5127af --- /dev/null +++ b/b.zil @@ -0,0 +1,67 @@ +"B for BUREAUCRACY: (C)1987 Infocom, Inc. All Rights Reserved." + + + + + + + + + + +ON!-INITIAL "For DEBUGR." +OFF!-INITIAL +ENABLE!-INITIAL +DISABLE!-INITIAL + + + + + >> + + + > + ;)> + +> + >> + +; +> + +; "Definitions only..." + + + + + + + + + + + + + + + + + + + + + + + + + + "TAA.EXE"> + + + + + +; + diff --git a/b.zip b/b.zip new file mode 100644 index 0000000000000000000000000000000000000000..dd47809b29d0b1efc6aa33705a24c8694b0e8ac2 GIT binary patch literal 243524 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%0D|uC$;tb6vmhx<3Dqq*+;6 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Ⓢ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

3GX|X``8yG~QA{cV8;sbOmV7B7SpUgH&7n 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 literal 0 HcmV?d00001 diff --git a/bank.zil b/bank.zil new file mode 100644 index 0000000..15728b2 --- /dev/null +++ b/bank.zil @@ -0,0 +1,1485 @@ +"BANK for BUREAUCRACY: Copyright 1987 Infocom, Inc. All rights reserved." + + + + + + + + + + + + >> + + + "She takes the cheque and says, \"Please show me some ID.\"">> + +> + +> + + + <>>> + + + + + +> + > + > <>) + ( + > + >> + ,WFORM) + ( + >> + ,DFORM) + ( > + > ,DFORM) + (> ,WFORM) + (ELSE <>)>) + (ELSE <>)>> + +) AMT) + + > + + T) + ( + + T) + ( + + > + ) + (ELSE + >)> + + > + ) + ( + + ;"Clear error" + + ) + (ELSE + )> + + T) + ( + + + >) + (T + )> + T) + (ELSE <>)>)>> + +)) + > + +)) + > + +)) + > + + + ) + (<==? .CONTEXT ,FORM-EXIT-FIELD> + >> + .FIELD>) + (T T)>> + +) + (TCF )) + > + > + >> + ; "Set error bit" + .FIELD>> + T) + (T + ; "Clear error bit" + + >> + T)>> + +) "AUX" X) + + > + T>> + + + <>) + (<==? .X -1> + + <>) + (<==? .X 0> + + <>) + (<==? ,PRSO ,WFORM> + + T) + (ELSE + + T)>) + (<==? .CONTEXT ,FORM-ADD-CHAR> + T) + (<==? .CHAR %> T) + (<==? .CHAR %> + + <>) + (T + + <>)>) + (T T)>> + +) "AUX" X) + + % %> + + + ) + (ELSE + )>) + (T + + + ) + (ELSE + )>)> + 3) + (<==? .CONTEXT ,FORM-ADD-CHAR> + %> + %>> + T) + (T + + <>)>) + (<==? .CONTEXT ,FORM-FIELD-RESET> + ) + (T T)>> + +) "AUX" X) + + 1> + T) + (ELSE <>)>) + (<==? .CONTEXT ,FORM-EXIT-FIELD> + T) + (<==? .CONTEXT ,FORM-ADD-CHAR> + ) + (T T)>> + +) H + T1 T2 T3 T4 (CLOSED <>)) + + + .TB>)> + + + + + > + > + ) + (ELSE + 20>> + )> + > + + > + + + ) + (ELSE + >)>)> + > + + + ) + (ELSE + >)>) + (ELSE )>> + > + + + ) + (ELSE + >)>) + (ELSE )>> + + + + ) + ( + > + )> + + + + + + <>) + (ELSE + + + + ,BANK)>> + +> + > + + + )> + )>)> + + + )>)>> + +) I + (VAL <>)) + > + > 0> + > + >> + + ) + ( > + + + ) + ( + >>) + (ELSE + 20>>)>) + ( >)> + + .VAL> + +>> + +)> + + 0> + ; "This will be capitalized by SAY-HERE..." + ) + (ELSE + >)>> + +) + "AUX" (TN ) + (BA )) + + >> + > + T) + (ELSE <>)>) + (<==? .CONTEXT ,M-EXIT> + + <>) + (<==? .CONTEXT ,M-LOOK> + + ) + (ELSE + )>) + (<==? .CONTEXT ,M-ENTERED> + + + + T) + ( <>) + ( + > + ) + ( + + ) + ( > + ) + (<==? .BA 0> + ) + (ELSE )> + T) + ( + + T)>> + +> + > + > + )> + > + )> + T> + +;"HANDLE-BANK-DROP is called from verbs to prevent dropping in the bank." + + + ) + (ELSE + + > + + + + > + ) + (T + )> + ) + (> + > + + > + ,FATAL-VALUE) + (ELSE + + + T)>)>> + + + + + + + )> + + )> + > + + + + + + + + <>) + (<==? ,NEW-TELLER -1> + + ,ACT?ENTER> + T) + (<==? + ,NEW-TELLER> + + T) + (T + + + > + T)>) + (T <>)>> + + 0> + + > + + ,BANK) + (ELSE + + <>)>> + +) + "AUX" (TN )) + + <==? .TN ,NUMBER-TELLERS>>> + + <>) + (ELSE + > + + >>) + (T + )> + + ,BANK)>> + +)) + + + <>) + (ELSE + >> + + > + ,BANK)>> + +)) + + + > + ,BANK) + (ELSE + ,ST-A)>> + +) + A B C D) + > + > + > + > + T) + (T + + > + >> + ) + (<==? .TN > + >> + ) + (<==? .TN > + >> + ) + (<==? .TN > + >> + ) + (ELSE + )>)>> + + <- 0 .X>) (ELSE .X)>> + + + + + + ) + (T + + T)>> + +;> + T> + + + CR> + + + > + + > + + + + + ) + (ELSE + )> + ) + (ELSE + )>) + (ELSE + + ",\" she says." CR>)>) + (ELSE + + )) + > + + ) + (<==? .N ,NUMBER-TELLERS> + ) + (T + >)>)> + >)>> + + + +)) + + > + > + > + >> + + + T) + ( + + ,PRSO) + (T ,PRSI)>> + T) + (T + <>)>) + ( + .TELLER>) + ( + ) + ( + ) + ( + + ) + ( + ) + ( + ) + (T + )>) + ( + + ) + ( + ) + (T + )>) + ( + ) + ( + + > + + + ) + (T + )> + ,FATAL-VALUE) + ( + <>) + ( + + + T) + ( + + T) + (T + <>)>) + ( + <>) + ( + + T) + ( + + T) + ( + + T) + (T + <>)>) + ( <>) + (ELSE + + ,FATAL-VALUE)>> + +> + +>> + +) + (FLG <>)) + + ) + (<==? .SCR ,CASH-CHECK-SCRIPT> + ) + (> )>) + (<==? .SCR ,DEPOSIT-SCRIPT> + > + <==? 0> + > + <==? 0>> + ) + (> + > + )>) + (ELSE + >)>) + (<==? .SCR ,WITHDRAWAL-SCRIPT> + > + <==? 0>> + ) + (> + > + )>) + (ELSE + >)>) + (<==? .SCR ,CASH-CHECK-SCRIPT> + > + > + )>)>) + (T )> + )> + T> + + + ) + ( + ) + (T + + + ) + (T + )> + )> + T> + + + ) + ( + ) + (T + + + ) + ( + ) + (T + + )> + )> + T> + +) + "AUX" (SCR ) + (MBAL <>) (BAL <>) (ADF <>) + (NONSENSE <>)) + + + + + ) + ( + > + ) + (ELSE + )>) + ( ) + ( + )> + >)> + + ) + ( + ) + ( + ) + (<==? .SCR ,DEPOSIT-SCRIPT> + > + <==? 0>> + > + ) + (<==? .OBJ ,DFORM> + > + + ) + ( + + 0>> + ) + (ELSE + )>) + ( + + 0>> + ) + (ELSE + )>) + ( + + > + + 0>>> + ) + (ELSE + )>) + (ELSE + )>) + ( <==? .OBJ ,WFORM>> + ) + (ELSE + )>) + (<==? .SCR ,WITHDRAWAL-SCRIPT> + + > + <==? 0>> + > + ) + ( > + > + + ) + (ELSE + )>) + (ELSE + )>) + (<==? .OBJ ,MONEY> + ) + ( > + ) + (ELSE + )>) + (<==? .SCR ,CASH-CHECK-SCRIPT> + + ) + ( + ) + ( + ) + (ELSE + )>) + ( + >> + >>> + ) + ( + ) + (<==? .OBJ ,QUEEN-MUM> + ) + (ELSE + )> + T> + + + > + CR> + + + T) + (ELSE + <>)>> + +> <>) + ( + + )> + + )> + + + + T) + (ELSE + <>)>> + + + 0> + ) + (ELSE + + CR> + )> + T) + (<==? .OBJ ,DFORM> + + T) + (<==? .OBJ ,CHECK> + + T) + (ELSE <>)>> + +> + +) (DO-SCORE? <>)) + > <>) + (<==? .OBJ ,CHECK> ) + ( + + )> + > + + > + > + > + ) + ( > + + + + + + + >) + (ELSE + + )> + )>) + (ELSE + > + + + ) + (ELSE + + + )>)> + + + + > + + + )> + ) + (T + )> + + )> + T) + (ELSE <>)>> + +> + +)) + > + + <==? 0>> + + <==? 0>>> + + T) + ( > + + + T) + ( + > + + ,P-NUMBER>> + ) + ( + + ) + (ELSE + )> + + + + 0>>> + CR> + ) + (ELSE + + + ) + (ELSE + )>)> + T) + (ELSE <>)>> + +> 0>> + ,DFORM) + (> + 0>> + ,WFORM)>> + +)) + > + 0> + + >> + + + )> + + > + ) + (ELSE + > + )> + > + > + > + + 0> + > + + > + )> + + ,CASH>>) + (T + + )> + ) + ( > + + > + + ) + ( >> + + > + )> + + ,CASH>>) + ( + <==? .W ,CHECK-AMOUNT>> + <==? ,CASH .W>> + <==? .W >> + + + + + )> + + ) + (> + + ) + (ELSE >)> + + ) + (ELSE + + )> + ) + (ELSE + + ,CASH>>)>) + (ELSE + + )> + + + T) + (ELSE <>)>) + (ELSE <>)>> + + + + + ) + (T <>)>> + +> + + >) + (T + + )> + > + + + <==? .NAM ,W?INTNUM>> + + + >> + <>) + (T + + ,TELLER-WINDOWS)>) + ( + ,W?TELLER> + + ,TELLER-WINDOWS) + (<==? .ADJ ,W?NEXT> + > + 0> + <==? .NUM ,NUMBER-TELLERS>> + <>) + (T + > + ,TELLER-WINDOWS)>) + (T <>)>) + (T <>)>> + + + +> +> + + + + + + > + + WHO) + > + .IB>)> + + + )> + > + + 0>> + > 3> + + ) + (T + + + ) + (T + + + ) + (T + )> + )> + + + )> + + + )> + + + + + )> + + + + + + ) + ( + + )> + + + + + ) + ( + + + + )> + > + + + ) + ( + ) + (T + + + )> + )> + + + + + > + > + + + + + + T) + ( + > + ) + (T + + + + + + ) + (T + )>)> + + + + )> + + )>> + +> + +> + + )>> + + +> + + +) (ADDR <>) (PROBLEM <>) LEN:FIX WRD + (BONGO? <>) (MONEY? <>) (FORM <>) (FIRST 2) + (BAL <>) (PERSON <>) (HOLD <>)) + > + 0>> + + )> + + > 0> + )> + > + + ) + ( + ) + ( + > + ) + ( + ) + ( + ) + ( + > + ) + (<==? .WRD ,W?BALANCE> + ) + ( + + >> + )> + > + >> + + + + + + + + + >> + + + + + + ) + ( + ) + ( + + + ) + ( + )> + ) + ( + + + + + ) + ( + ) + ( + ) + ( + ) + ( + ) + ( + + + + + ) + (T + .BW>)> + + > + + + + 0>> + + ) + (T + )>> + + + + + + + > + > + + + + + + + + > + + > + ) + (T + >)> + + + ) + (T + )>) + ( + + ) + (T + + )> + + + + > + +> + +) "AUX" (BSNAME <>) STR) + + + + > + > + ) + (T + )> + T) + (T + + ,FATAL-VALUE)>) + (<==? 0> + ) + ( + + + ,FATAL-VALUE) + ( <>) + ( + > + ) + (T <>)>) + ( + > + ) + ( + 0>> + + ) + (<==? .BSNAME ,W?BONGO> + ) + (T + + + ) + (T + + + )>)> + ,FATAL-VALUE) + ( + + + + + + + ) + (T + )> + T) + ( + > + + T) + (T + <>)>> + + + + + + + > + + + + + + > diff --git a/bankdefs.zil b/bankdefs.zil new file mode 100644 index 0000000..e3946e7 --- /dev/null +++ b/bankdefs.zil @@ -0,0 +1,68 @@ + + + + + + + + + + + + + + + + + >> + + + +) + (TELLER-CURRENT-FORM 0) + (TELLER-DRUGS BYTE 0) + (TELLER-IDLE BYTE 0)> + + ; "Sign on this window" + ; "The first question asked" + ; "The next thing asked for by teller" + ; "Object given by teller (if any)" + ; "Next request" + + + + + + + + + + diff --git a/bfreq.zap b/bfreq.zap new file mode 100644 index 0000000..659c39e --- /dev/null +++ b/bfreq.zap @@ -0,0 +1,200 @@ + .FSTR FSTR?1,"the " ;2438 1220 + .FSTR FSTR?2,", " ;1615 1616 + .FSTR FSTR?3,"you " ;1482 742 + .FSTR FSTR?4,"your " ;1146 383 + .FSTR FSTR?5,"You " ;1092 365 + .FSTR FSTR?6,". " ;1080 1081 + .FSTR FSTR?7,"and " ;1080 541 + .FSTR FSTR?8,"to " ;938 939 + .FSTR FSTR?9,"The " ;822 275 + .FSTR FSTR?10,"that " ;795 266 + .FSTR FSTR?11,"with " ;684 229 + .FSTR FSTR?12,"have " ;630 211 + .FSTR FSTR?13,"of " ;609 610 + .FSTR FSTR?14,"It's " ;500 101 + .FSTR FSTR?15,"You're " ;497 72 + .FSTR FSTR?16,"There's " ;480 61 + .FSTR FSTR?17,"is " ;465 466 + .FSTR FSTR?18,"from " ;390 131 + .FSTR FSTR?19,"in " ;389 390 + .FSTR FSTR?20,"for " ;380 191 + .FSTR FSTR?21,"doesn't " ;378 55 + .FSTR FSTR?22,"already " ;372 63 + .FSTR FSTR?23,"about " ;336 85 + .FSTR FSTR?24,"are " ;328 165 + .FSTR FSTR?25,"don't " ;320 65 + .FSTR FSTR?26,"which " ;308 78 + .FSTR FSTR?27,"like " ;306 103 + .FSTR FSTR?28,"something " ;304 39 + .FSTR FSTR?29,"you're " ;294 50 + .FSTR FSTR?30,"There " ;290 59 + .FSTR FSTR?31,"can't " ;275 56 + .FSTR FSTR?32,"anything " ;273 40 + .FSTR FSTR?33,"would " ;272 69 + .FSTR FSTR?34,"this " ;267 90 + .FSTR FSTR?35,"not " ;262 132 + .FSTR FSTR?36,"into " ;258 87 + .FSTR FSTR?37,"Zalagasa " ;256 33 + .FSTR FSTR?38,"Zalagasan " ;243 28 + .FSTR FSTR?39,"This " ;236 60 + .FSTR FSTR?40,"flight " ;235 48 + .FSTR FSTR?41,"just " ;234 79 + .FSTR FSTR?42,"out " ;232 117 + .FSTR FSTR?43,"really " ;225 46 + .FSTR FSTR?44,"little " ;220 45 + .FSTR FSTR?45,"at " ;219 220 + .FSTR FSTR?46,"back " ;219 74 + .FSTR FSTR?47,"but " ;212 107 + .FSTR FSTR?48,"it " ;207 208 + .FSTR FSTR?49,"through " ;204 35 + .FSTR FSTR?50,"on " ;203 204 + .FSTR FSTR?51,"what " ;201 68 + .FSTR FSTR?52,"Zalagasans " ;200 21 + .FSTR FSTR?53,"hear " ;186 63 + .FSTR FSTR?54,"seems " ;180 46 + .FSTR FSTR?55,"looking " ;180 31 + .FSTR FSTR?56,"it's " ;176 45 + .FSTR FSTR?57,"I'm " ;176 45 + .FSTR FSTR?58,"computer " ;175 26 + .FSTR FSTR?59,"be " ;170 171 + .FSTR FSTR?60,"some " ;168 57 + .FSTR FSTR?61,"has " ;164 83 + .FSTR FSTR?62,"that" ;162 82 + .FSTR FSTR?63,"probably " ;161 24 + .FSTR FSTR?64,"says" ;160 81 + .FSTR FSTR?65,"looks " ;160 41 + .FSTR FSTR?66,"one " ;158 80 + .FSTR FSTR?67,"his " ;158 80 + .FSTR FSTR?68,"Your " ;156 40 + .FSTR FSTR?69,"nothing " ;156 27 + .FSTR FSTR?70,"aren't " ;156 27 + .FSTR FSTR?71,"I " ;152 153 + .FSTR FSTR?72,"can " ;152 77 + .FSTR FSTR?73,"you" ;151 152 + .FSTR FSTR?74,"here" ;150 76 + .FSTR FSTR?75,"isn't " ;145 30 + .FSTR FSTR?76,"all " ;144 73 + .FSTR FSTR?77,"you'll " ;144 25 + .FSTR FSTR?78,"Please " ;144 25 + .FSTR FSTR?79,"Boysenberry " ;143 14 + .FSTR FSTR?80,"an " ;142 143 + .FSTR FSTR?81,"want " ;141 48 + .FSTR FSTR?82,"they " ;141 48 + .FSTR FSTR?83,"What " ;140 36 + .FSTR FSTR?84,"better " ;140 29 + .FSTR FSTR?85,"there's " ;140 21 + .FSTR FSTR?86,"standing " ;133 20 + .FSTR FSTR?87,"take " ;132 45 + .FSTR FSTR?88,"know " ;132 45 + .FSTR FSTR?89,"Unfortunately" ;132 12 + .FSTR FSTR?90,"It " ;130 66 + .FSTR FSTR?91,"He " ;130 66 + .FSTR FSTR?92,"should " ;130 27 + .FSTR FSTR?93,"attendant " ;128 17 + .FSTR FSTR?94,"You'd " ;126 22 + .FSTR FSTR?95,"You'll " ;126 19 + .FSTR FSTR?96,"very " ;123 42 + + +;word frequency table of 96 most common words + +WORDS:: .TABLE + FSTR?1 + FSTR?2 + FSTR?3 + FSTR?4 + FSTR?5 + FSTR?6 + FSTR?7 + FSTR?8 + FSTR?9 + FSTR?10 + FSTR?11 + FSTR?12 + FSTR?13 + FSTR?14 + FSTR?15 + FSTR?16 + FSTR?17 + FSTR?18 + FSTR?19 + FSTR?20 + FSTR?21 + FSTR?22 + FSTR?23 + FSTR?24 + FSTR?25 + FSTR?26 + FSTR?27 + FSTR?28 + FSTR?29 + FSTR?30 + FSTR?31 + FSTR?32 + FSTR?33 + FSTR?34 + FSTR?35 + FSTR?36 + FSTR?37 + FSTR?38 + FSTR?39 + FSTR?40 + FSTR?41 + FSTR?42 + FSTR?43 + FSTR?44 + FSTR?45 + FSTR?46 + FSTR?47 + FSTR?48 + FSTR?49 + FSTR?50 + FSTR?51 + FSTR?52 + FSTR?53 + FSTR?54 + FSTR?55 + FSTR?56 + FSTR?57 + FSTR?58 + FSTR?59 + FSTR?60 + FSTR?61 + FSTR?62 + FSTR?63 + FSTR?64 + FSTR?65 + FSTR?66 + FSTR?67 + FSTR?68 + FSTR?69 + FSTR?70 + FSTR?71 + FSTR?72 + FSTR?73 + FSTR?74 + FSTR?75 + FSTR?76 + FSTR?77 + FSTR?78 + FSTR?79 + FSTR?80 + FSTR?81 + FSTR?82 + FSTR?83 + FSTR?84 + FSTR?85 + FSTR?86 + FSTR?87 + FSTR?88 + FSTR?89 + FSTR?90 + FSTR?91 + FSTR?92 + FSTR?93 + FSTR?94 + FSTR?95 + FSTR?96 + .ENDT + + .ENDI diff --git a/bglobals.dat b/bglobals.dat new file mode 100644 index 0000000..b765c3b --- /dev/null +++ b/bglobals.dat @@ -0,0 +1,436 @@ +(PRSA ; 909 +PRSO ; 826 +HERE ; 423 +PRSI ; 297 +NOW-PRSI? ; 177 +WINNER ; 158 +PERIOD ; 294 +P-NUMBER ; 68 +P-IT-OBJECT ; 64 +CURRENT-ROW ; 58 +P-LEN ; 49 +CURRENT-SEAT ; 45 +P-LEXV ; 90 +P-PRSA-WORD ; 39 +P-ITBL ; 76 +CANT ; 68 +P-HIM-OBJECT ; 33 +P-NAM ; 32 +PCR ; 63 +P-ADJ ; 31 +P-WALK-DIR ; 27 +AIRPORT-ROOM-NUM-GVAL ; 26 +CASH ; 26 +P-NCN ; 26 +CABSTATE-GVAL ; 24 +P-CONT ; 24 +P-OFLAG ; 24 +P-HER-OBJECT ; 23 +TELLER-NUMBER-GVAL ; 23 +P-MULT? ; 22 +MEAL-STATE ; 20 +NEW-SEAT-GVAL ; 19 +P-OTBL ; 38 +P-PRSO ; 37 +NEW-ROW-GVAL ; 18 +END-GAME? ; 17 +P-SLOCBITS ; 17 +P-THEM-OBJECT ; 17 +SEX ; 17 +PHONE-NUMBERS ; 33 +FLINE ; 16 +OLD-HERE ; 16 +TELECOM?-GVAL ; 16 +DUCT-NUMBER-GVAL ; 15 +MEAL ; 30 +P-DIRECTION ; 15 +P-GETFLAGS ; 15 +CABTURNS-GVAL ; 14 +CLOCK-HAND ; 14 +CURRENT-DESK-ID-GVAL ; 14 +QUOTE-FLAG ; 14 +TELLER-AMOUNT-ON-WITHDRAWAL-FORM-GVAL ; 14 +TELLER-CASH-GIVEN-GVAL ; 14 +HOURS ; 13 +HUNGER ; 13 +LICENSE-FORM ; 13 +P-EXCHANGE ; 13 +P-INBUF ; 26 +P-MERGED ; 13 +QCONTEXT ; 13 +CURRENT-MESSAGE ; 12 +CURRENT-NEIGHBOR-GVAL ; 12 +FX ; 12 +MEAL-ROW-GVAL ; 12 +MEAL-SEAT-GVAL ; 12 +MMOVES ; 12 +P-ACLAUSE ; 12 +PHONES-PLUGGED-IN?-GVAL ; 12 +VERBOSITY ; 12 +BRACKET ; 22 +CURRENT-MAZE-ROOM ; 11 +DIE-ON-NEXT-COMMAND-GVAL ; 11 +MARGIN ; 11 +OBJECTS-GROUPED ; 11 +P-SYNTAX ; 11 +DONT ; 21 +P-VTBL ; 21 +BP ; 10 +CURRENT-TARGET-NAME-GVAL ; 10 +HANDLE-TURNS ; 10 +MUSIC-DEAD?-GVAL ; 10 +QCONTEXT-ROOM ; 10 +TELLER-AMOUNT-ON-DEPOSIT-FORM-GVAL ; 10 +WIDTH ; 10 +YOURE-ALREADY-STR ; 20 +P-PRSI ; 19 +YOU-SEE ; 19 +BANKTALK-GVAL ; 9 +C-INTS ; 9 +COMP-WORD-FATAL? ; 9 +DO-SCORE? ; 9 +FLIGHT-GONE?-GVAL ; 9 +HATCH-OPEN?-GVAL ; 9 +HOLDING-FOR-PONGO? ; 9 +P-DOLLAR-FLAG ; 9 +P-MERGE ; 9 +P-PHR ; 9 +P-SEAT-NUMBER ; 9 +P-XNAM ; 9 +SMOKER-IRATE?-GVAL ; 9 +TELLER-STATE-GVAL ; 9 +THIS-IS ; 17 +CLERK-LISTENING?-GVAL ; 8 +CLERK-SCRIPT ; 8 +DESK-LOSER?-GVAL ; 8 +FERROR-COUNT ; 8 +FILES-ON-SCREEN?-GVAL ; 8 +FLIGHT-RECALLED?-GVAL ; 8 +FORM-COMPUTER? ; 8 +FY ; 8 +MAZE-STEPS-TAKEN ; 8 +MEAL-HERE?-GVAL ; 8 +MINUTES ; 8 +NEW-TELLER ; 8 +P-WON ; 8 +RUN-PLANE-COUNT-GVAL ; 8 +SPEAKER-DEAD?-GVAL ; 8 +TELLER-IDLE-GVAL ; 8 +AIR-ZALAGASA-ENTRANCE-GVAL ; 7 +AISLE-STATE-GVAL ; 7 +AT-ZALAGASA?-GVAL ; 7 +ATTENDANT-WORKING?-GVAL ; 7 +CABTIMES-GVAL ; 7 +CLOCK-WAIT? ; 7 +COMPUTER-DEAD?-GVAL ; 7 +DSCRIPT ; 7 +HEIGHT ; 7 +MEAL-SQUASHED?-GVAL ; 7 +ODD-GATE-SOLVED? ; 7 +OOPS-TABLE ; 14 +P-ADJW ; 14 +RESERVE-PTR ; 7 +TELLER-CURRENT-SCRIPT-GVAL ; 7 +TERMINATE-CURRENT-GVAL ; 7 +TICKET-SCREW?-GVAL ; 7 +TUNE-TIMER-GVAL ; 7 +AIRLINE-BITS ; 13 +AIRPHONE-RINGING?-GVAL ; 6 +CAB-DONT-GVAL ; 6 +CABNAME-GVAL ; 6 +CLERK-WORKING?-GVAL ; 6 +COMPLEX-POS ; 6 +DESK-ZSCRIPT-GVAL ; 6 +DING-ROW-GVAL ; 6 +EXITED-ALREADY?-GVAL ; 6 +HOLD-TURNS ; 6 +JUST-HEARD?-GVAL ; 6 +LINES-TO-NEXT-TARGET-GVAL ; 6 +LS-MOVE-COUNT ; 6 +MOUSY-SCRIPT ; 6 +NERD-OBJECT-DATA ; 6 +P-ALT-CONT ; 6 +P-ANAM ; 6 +P-GWIMBIT ; 6 +P-NAMW ; 12 +P-TABLE ; 6 +PHONE-MSGS ; 6 +PLANE-SUMMONED? ; 6 +REAL-TARGET-NAME-GVAL ; 6 +TELLER-BANK-HOURS-GVAL ; 6 +TELLER-DRUGS-GVAL ; 6 +AGAIN-LEXV ; 11 +AOS-BP?-GVAL ; 5 +CHANGE-DESK?-GVAL ; 5 +COMPLEX-LOOKED? ; 5 +CURRENT-NEIGHBOR-SEATNUM-GVAL ; 5 +CURRENT-OZ-VICTIM ; 5 +DO-WINDOW ; 5 +FALL-SCRIPT-GVAL ; 5 +HATCH-LOSER?-GVAL ; 5 +LAST-LINE-USED-GVAL ; 5 +MEAL-EATEN?-GVAL ; 5 +OLD-LEN ; 5 +OMNIA-GALLIA-ENTRANCE-GVAL ; 5 +P-LASTADJ ; 5 +P-XADJ ; 5 +REMAINING-TARGET-TURNS-GVAL ; 5 +SL-TABLE ; 10 +SPLATTED-ROW-GVAL ; 5 +SPY-TIMER-GVAL ; 5 +TELLER-ADDR-CHANGE-GVAL ; 5 +TELLER-CHECK-CASH-GVAL ; 5 +TELLER-DEPOSIT-GVAL ; 5 +TELLER-WITHDRAW-GVAL ; 5 +USERPW-GVAL ; 5 +YAWNS ; 10 +MACAW-TABLE ; 9 +P-OVTBL ; 9 +ATTENDANT-MENTIONED-REGULATIONS?-GVAL ; 4 +BABY-DISTURBED?-GVAL ; 4 +BP-DELAY ; 4 +CABADDR-GVAL ; 4 +COM-TIMER-GVAL ; 4 +COMMANDS-SINCE-START-GVAL ; 4 +DESK-SCRIPT-GVAL ; 4 +LAST-ROW-GVAL ; 4 +LAST-SEAT-GVAL ; 4 +LAST-USED ; 8 +MIND-READ?-GVAL ; 4 +MOVES ; 4 +NERD-SCRIPT ; 4 +NEXT-TO-BABY?-GVAL ; 4 +P-END-ON-PREP ; 4 +P-OFW ; 8 +P-SPECIAL-ORPHAN ; 4 +PERFORMING? ; 4 +SCORE ; 4 +SPLATTED-PERSON-GVAL ; 4 +TELLER-AMOUNT-IN-ACCT-GVAL ; 4 +TELLER-PLAYER-WARNED?-GVAL ; 4 +TUNE-MENTIONED?-GVAL ; 4 +VOICES-ONLINE?-GVAL ; 4 +WILL-WIN?-GVAL ; 4 +YES-LEXV ; 8 +AGAIN-DIR ; 3 +AIRPORT-SEEN-BITS-GVAL ; 3 +ATTENDANT-AT-ROW-GVAL ; 3 +BANK-FORM-DEPOSIT ; 3 +BUTTONS-OFF?-GVAL ; 3 +CABPREVNAME-GVAL ; 3 +CHUTE-SCORED? ; 3 +CRASH-COMING?-GVAL ; 3 +DOORBELL-RINGS ; 3 +FERROR-ACTIVE?-GVAL ; 3 +GOTO-LOC ; 3 +HANDLE-STATE ; 6 +HOLDING-FOR-ADDRESS? ; 3 +IN-SEAT?-GVAL ; 3 +LAST-BP-CHANGE ; 3 +MAIL-COUNT ; 3 +NO-HUNGER-INT ; 3 +OLD-BP ; 3 +OOPS-INBUF ; 6 +P-AND ; 3 +P-MOBY-FOUND ; 3 +REAL-COMMAND-WINDOW ; 6 +SPLAT-COUNT-GVAL ; 3 +TIMES-THROUGH-LOOP-GVAL ; 3 +TUNE-SELECTOR-GVAL ; 3 +)( +JUST-PAGED?-GVAL ; 3 +LAST-MAZE-ROOM ; 3 +MAZE-LOSING? ; 3 +NERD-HACKED-ABOOK? ; 3 +PLANE-ARRIVE-COUNT ; 3 +RETURN-TO-SEAT-ROUTINE-GVAL ; 3 +SOMETHING-SAID-GVAL ; 3 +STNUM-VALUE-GVAL ; 3 +TURNED-DOWN-CLERK? ; 3 +WAITING-FOR-CASH?-GVAL ; 3 +BOSS-CHECK-WORDS ; 5 +CASH-CHECK-SCRIPT ; 5 +LLAMA-TABLE ; 5 +P-BUTS ; 5 +P-OCL1 ; 5 +P-OCL2 ; 5 +PERSON-ROWS ; 5 +RESERVE-INBUF ; 5 +ANS-TABLE ; 4 +C-TABLE ; 4 +CAPS ; 4 +DAY-TABLE ; 4 +DEPOSIT-SCRIPT ; 4 +FILE-TABLE ; 4 +HUNGER-MSGS ; 4 +SEAT-LETTERS ; 4 +TARGETS ; 4 +WITHDRAWAL-SCRIPT ; 4 +BANK-FORM-WITHDRAW ; 2 +BANK-SCORED? ; 2 +CABNUM-GVAL ; 2 +COMP-X-GVAL ; 2 +COMP-Y-GVAL ; 2 +COMPLEX-DROP? ; 2 +CRAZY-COUNT-GVAL ; 2 +CURRENT-DIR ; 2 +DOWN-FROM-STRIP-COUNT ; 2 +FLIGHT-ATTENDANT-HE/SHE-GVAL ; 2 +FLIGHT-ATTENDANT-HIM/HER-GVAL ; 2 +FORM-X ; 2 +FORM-Y ; 2 +GOT-RECIPE?-GVAL ; 2 +LOOKED-AT-FOOD?-GVAL ; 2 +LOSER-CANT-LEAVE-SEAT?-GVAL ; 2 +NERD-FLEW-BY?-GVAL ; 2 +P-DIR-WORD ; 2 +P-FOUND-REMOTELY ; 2 +PILLAR-MENTIONED?-GVAL ; 2 +REFRESH-COUNT ; 2 +SOMEBODYS-WATCHING? ; 2 +TELLER-CURRENT-FORM-GVAL ; 2 +TOWER-SCRIPT-GVAL ; 2 +AIRLINE-LOOKUP ; 3 +AIRLINE-NAMES ; 3 +HAK-PROG-NAME ; 3 +PROG-TABLE ; 3 +QLEFTS ; 3 +QTOPS ; 3 +RESERVE-LEXV ; 3 +TELLER-SUBJECTS ; 3 +UNFO-TBL ; 3 +AGENT-SUBJECTS ; 2 +ALL-SEATS ; 2 +EXE-FILES ; 2 +INCI-TBL ; 2 +PSTRING ; 2 +SEAT-LETTER-NAMES ; 2 +SKYCAP-DOINGS ; 2 +YES-INBUF ; 2 +ALL-HANDLES ; 1 +ALT-COMPLEX-WINDOW-DESC ; 1 +BAD-TUNES ; 1 +BAKED-POTATO-OPTIONS ; 1 +BANKNAMES ; 1 +BATHROOM-LOCKED ; 1 +BURGER-OPTIONS ; 1 +BUZZTABLE ; 1 +CAB-EXCUSES ; 1 +CAB-NOTICE-TXT ; 1 +CHANGE-ADDRESS-SCRIPT ; 1 +CLERK-SUBJECTS ; 1 +COMPLEX-WINDOW-DESC ; 1 +CRAZIES ; 1 +CURRENT-SIGNS ; 1 +DELAYS ; 1 +DVH2-FILE ; 1 +EXTRA-TEXT ; 1 +FORM-HISTORY ; 1 +FUNNY-FIELDS ; 1 +GAME-VERBS ; 1 +HACK-TABLE ; 1 +HELP-TABLE ; 1 +ITARGETS ; 1 +LIKELIES ; 1 +LOGIN-NAME ; 1 +NEIGHBOR-SEATS ; 1 +NERD-ARRIVALS ; 1 +NERD-OBJECTS ; 1 +NORMAL-SEAT ; 1 +NORMAL-SEAT-POCKET ; 1 +NORMAL-SEAT-TABLE ; 1 +OZ-ROYS ; 1 +P-A ; 1 +P-Q ; 1 +PASSWORD ; 1 +PATRONS ; 1 +PNOTICE-TXT ; 1 +PUNCT-TABLE ; 1 +SSTRING ; 1 +TALKVERBS ; 1 +TARGET-NAMES ; 1 +TELECOM-HELP-TABLE ; 1 +TICKET-TYPE-TABLE ; 1 +TOONS ; 1 +UNKNOWN-MSGS ; 1 +WALKING-TABLE ; 1 +A-DIR ; 0 +ADVENTURE-TABLE ; 0 +AIRPLANE-FILE ; 0 +B-DIR ; 0 +BANK-THINGS ; 0 +BEER-TYPE-TABLE ; 0 +BONGO-STUFF ; 0 +BOYSENBERRY-WINDOW ; 0 +BURGER-TYPE-TABLE ; 0 +C-DIR ; 0 +CAFFEINE-TABLE ; 0 +CHEESE-TYPE-TABLE ; 0 +CLEAR-DIR ; 0 +CLERK-DOINGS ; 0 +COOPS ; 0 +COPY-DIR ; 0 +COULDNTS ; 0 +D-DIR ; 0 +DELETE-DIR ; 0 +DIR-DIR ; 0 +DIRLIST-DIR ; 0 +DIRTABLES ; 0 +DRESSING-TYPE-TABLE ; 0 +DRESSING-WEIGHT-TABLE ; 0 +DRINK-TYPE-TABLE ; 0 +ECLIPSE-TABLE ; 0 +FACE-IN-FOOD-STRS ; 0 +FIDUC-FILE ; 0 +FIXTURES ; 0 +FRIES-ETC-TABLE ; 0 +HACK-DIR ; 0 +HAK-FILES ; 0 +HAVEVERBS ; 0 +HELP-DIR ; 0 +HO-HUM ; 0 +HURTVERBS ; 0 +JUICE-TYPE-TABLE ; 0 +LOGOUT-DIR ; 0 +MAILING-LIST ; 0 +MENU-FILE ; 0 +MOUSY-WISHES ; 0 +MOVEVERBS ; 0 +OMNIA-SIGN-TEXT ; 0 +OTHER-AIRPLANE-OBJECTS ; 0 +OTHER-PHONE-MSGS ; 0 +PARSE-RANDOM-LOC-VEC ; 0 +POINTLESS ; 0 +PONGO-STUFF ; 0 +POST-FILE ; 0 +POTATO-TYPE-TABLE ; 0 +PRINTR-TABLE ; 0 +PSEUDO-VEC ; 0 +PUTVERBS ; 0 +PUZZLES ; 0 +QUIT-DIR ; 0 +QUIT-TABLE ; 0 +RANDOM-CARTRIDGE-TABLE ; 0 +RECIPE-TABLE ; 0 +RENAME-DIR ; 0 +RPRINTR-TABLE ; 0 +RUN-DIR ; 0 +SEAT-PSEUDO-VEC ; 0 +SEEVERBS ; 0 +SODA-TABLE ; 0 +SODA-TYPE-TABLE ; 0 +TCLEAR-DIR ; 0 +TELECOM-TABLE ; 0 +TOUCHVERBS ; 0 +TRAVEL-FILE ; 0 +TYPE-DIR ; 0 +WATER-TABLE ; 0 +WHO-DIR ; 0 +WINE-COLOR-TABLE ; 0 +WINE-COUNTRY-TABLE ; 0 +WINE-TYPE-TABLE ; 0 +YUKS ; 0 +ZBUG-FILE ; 0 +CABMUSIC-GVAL ; 0 +RETURN-TO-SEAT-WAIT-GVAL ; 0 +) \ No newline at end of file diff --git a/bureaucracy.txt b/bureaucracy.txt new file mode 100644 index 0000000..1c581a9 --- /dev/null +++ b/bureaucracy.txt @@ -0,0 +1,69 @@ +Ideas for Bureaucracy? +---------------------- +The global concept for this game can be summarized by the line "Just because +you're paranoid doesn't mean that everybody isn't out to get you." + +We've all had the feeling from time to time that somebody (particularly +those small, beady-eyed bureaucrats who work for banks, insurance companies, +etc.) is out to get us. This game provides the answer: In fact, there is +a massive conspiracy to do just that. And things are stranger than that, +because this conspiracy is centered in some sort of fantastical underground +(literally) catacomb, connecting all of these various dens of iniquity. + +The player, when he successfully completes the game, will have the +intense satisfaction of having crushed the nameless and faceless hoard +of bureaucrats, and, with luck, having gotten the bank to acknowledge his +change of address (or whatever the player's initial task is set up to be). + +-- + +This game is intended as a kind of dark comedy. The mood which is to +be created is one of frustration, anger, and eventually paranoia as +everything in the player's life goes from bad to worse, all because +of petty errors at the bank, etc. + +At some point, the player can gain access to the 'infernal regions', +where some bizarre series of accomplishments will have to be made in +order to destroy the enemy's apparatus. + +One possible source of problems is trying to do the things that +the bureaucracy hates most: folding, spindling, and mutiliating punch +cards, filling out forms incorrectly, perhaps stealing rubber stamps +and stamping forms improperly, and otherwise botching up the works. +Perhaps this type of problem in the above-ground area will help create +a diversion allowing access to the underground where more bizarre +things will happen. + +Presumably the game starts with the player needing to get some very +simple task done (e.g. getting the bank to acknowledge a change of +address form). This will turn into more of a problem than it seems +and events will cause such things as his credit cards getting recalled, +his house getting repossessed, etc. leading to absurd heights of +nonsense. Clearly, at some point the player will realize that things +are getting out of hand. + +Confronting the various bureaucrats will be no easy task, since they +probably won't want to talk with you, preferring that you fill out +a request for conversation form. My guess is that no matter what you +try to do, you can't get them to answer questions very reliably (which +fits in well with parser limitations). + +-- + +Places of Interest + +Your Home - probably just a few rooms a la Hitchhiker's + +Outside your Home - front steps, etc. + +Bank - your bank, with a number of rooms, for tellers, safe deposit +boxes, vault, waiting area, etc. + +Post Office - your local post office + +Insurance Company - + +Underground - Lots of stuff here, maybe some sort of semi-militaristic +order of bureaucrats with lots of arcane machinery linked up to a gigantic +computer which controls the hoard. Perhaps they all turn out to be +androids or some such. \ No newline at end of file diff --git a/buttons.txt b/buttons.txt new file mode 100644 index 0000000..ebdc2f5 --- /dev/null +++ b/buttons.txt @@ -0,0 +1,129 @@ +BUTTONS ALGORITHM + +Each seat contains three buttons: +1) Marked "RECLINE" +2) Marked "CALL ATTENDANT" +3) Marked "LIGHT" + +The buttons, when enabled, work as follows: + +RECLINE operates on seat +1 col +2 rows and RINGS BELL there + +LIGHT operates on seat +4 col +3 rows, and TOGGLES RECLINE there + +BELL operates on seat -1 col +1 row and TOGGLES LIGHT there + + +The algorithm is also revealed when the player presses any of the +buttons from any seat when the seat buttons are DISABLED. What happens +then is that the button triggers a recorded announcement audible only +over the headphones; that announcement includes the location of the +seat to which it is wired, NOT to the seat which the player is actually +in. Player has to be IN the seat with the Headphones both plugged in +and being worn before he can hear the message. He also has to be in the +seat, either with or without headphones, before he can press the button. + +BUTTONS PLAY + +The player always starts in 3B. If he presses a button at this point, +he hears the metallic whispering which only lasts for that turn. To +hear it properly he has to wear the headphones and plug them in. He can +press each button and get the same message repeatedly. + +Once he starts wandering around the cabin he could theoretically map it +in 14 turns. After fourteen turns the FASTEN SEAT BELT SIGN comes on +and he has four turns to get back before being forced back by the +stewardess. + +At this point he should have mapped the cabin. His return to 3B starts +the meal service routine. Only when all meals have been served do we +activate the buttons. The FASTEN SEAT BELTS light goes out and he is +free to wander around the cabin or eat his meal or return to ANOTHER +seat. + +POSSIBLE PLAYS + +1) + +LOSER. He eats his meal like a good boy. After a number of turns a +neighbour will complain about his halitosis, the stew will bring him an +electric toothbrush and tell him to clean his teeth. + +1a) DECLINES. He dies of halitosis and so does everyone else. They +continue to nag at him after death (2 turns) and reboot. + +1b) ACCEPTS. He goes to the bathroom to clean his teeth. +1bi) SUCCEEDS. He plugs in the toothbrush which activates the john, +sending it into a frenzy and sucking him below the surface. +***BOG NOTE*** at all other times the door is shut and groaning can be +heard from behind the door. +1bii) FAILS to plug the toothbrush in and dies of halitosis except +nobody else dies since you are sealed off. However when the aeroplane +lands the entire ground crew are killed and your name is reviled +posthumously. + +2) LOSER + +Player does NOT eat his meal but does not solve the buttons puzzle. + +He will be shepherded back to his seat at frequent intervals by the +attendant and told that if he does not eat his meal they will be unable +to take the tray away, and if they are unable to take the tray away the +table will not be able to be safely stowed in accordance with FAA +regulations and therefore the plane will be unable to land and will +therefore run out of fuel and crash with the inevitable death of +everyone on board. If he says "Fuck that, buster", it all comes true. + +ALTERNATIVE if he doesn't eat his meal it will eventually eat its way +through the plate, through the table, slither onto the floor, crawl +around the cabin reeking and humming, eat through the floor and cause +explosion decompression. Dead. + + +3) WIN + +The player does NOT eat his food but instead solves the algorithm puzzle +and eventually (within the meal-escape time) manages to find the Light +switch in 6E which will splat the seat in front of 3B thus smashing his +tray into the back of the seat and returning 2B to an upright position +in preparation for landing at this time. + +As a reward for winning this winsome little puzzlette, THE MISSING +CORNER OF THE FLIGHT SAFETY CARD falls out of seat 2B. You smother your +disgust at the flecks of dried llama-spit and examine it. It shows a +crudely-drawn picture (by Zalagasa's leading primitivist) of a misshapen +stewardess apparently standing underneath a rather wrinkled and colossal +mushroom on which is written the words "Stinglai k'aabi". + +We now control the stewardess to two more appearances. FIRST, she now +appears and tells player that there is a call for him on the telephone. +To the admiring glances of the hateful and ugly passengers he walks to +the telephone and finds that it is the waitress from the cafe wanting to +know if he left her a gratuity. She is leaving an address to which he +can mail it (which is in fact his own address) when she is cut off. He +overhears the captian talking to ATC saying that the aeroplane has lost +control (Apparently some noxious substance has eaten its way through the +hydraulic lines on the port side) and will be crashing in five minutes. +ATC informs him that he has not filed a flight plan for a crash etc. +Rings off. + +Stewardess reappears and player asks for a stinglai k'aabi and is given +one. He then has to open the hatch. Announcement from stewardess. +Player has Jump, Jump, any char., and out. Door slams shut, parachute +catches. Knock on door, stew opens it, "Oh - you fell for the old +'we're going to crash' routine, did you? Have a nice day!" + +TO POT. + +LOSE CASES AFTER WIN BUTTON. + +1) Doesn't spot parachute puzzle. + +2) Doesn't answer phone. + +3) Won't jump. + +4) Doesn't even open hatch. + + +PLANE CRASH ends each. \ No newline at end of file diff --git a/c2.zil b/c2.zil new file mode 100644 index 0000000..51ae5a8 --- /dev/null +++ b/c2.zil @@ -0,0 +1,70 @@ +"B for BUREAUCRACY: (C)1987 Infocom, Inc. All Rights Reserved." + + + + + + + + + + +ON!-INITIAL "For DEBUGR." +OFF!-INITIAL +ENABLE!-INITIAL +DISABLE!-INITIAL + + + )> + + + + + >> + + + > + )> + +> + >> + +; +> + +; "Definitions only..." + + + + + + + + + + + + + + + + + + + + + + + + + + "TAA.EXE"> + + + + + +; + diff --git a/clocker.zil b/clocker.zil new file mode 100644 index 0000000..acd5262 --- /dev/null +++ b/clocker.zil @@ -0,0 +1,135 @@ +"CLOCKER for BUREAUCRACY: (C)1987 Infocom, Inc. All rights reserved." + + + + + +> +;> + +> + + + + + + ; "Length of an interrupt entry." + ; "Offset of routine name." + ; "Offset of count." + ; "For hunger stuff." +> + + )>> + +> + > + + .QQ>) + ( .RTN> + > + .QQ>) + (T + )>)> + >>> + +"This version of QUEUE automatically enables as well." + +)) + > + > + + + ) + (T + + )> + > + >)> + + ) + ( .RTN> + + ) + (> + )> + >> + + ') + (ELSE + '> + >>)> + >>)> + + .INT> + + + +> + + +) (Q? <>) DAY:FIX) + + > + .CLOCKER>)> + > + > + + > + + + > + + + > + > + + )> + )>)> + ) + (> + > + + > + > + ) + ( + + > + )> + + )> + > + > + + )> + + )> + + >> + )>)>)>)> + > + + >)>> + > + +; "This runs every turn..." + + + +) + (DIASTOLIC:FIX )) + + <>) + (> 1> + + + ) + ( + )>)>> \ No newline at end of file diff --git a/computer.zil b/computer.zil new file mode 100644 index 0000000..4bd4835 --- /dev/null +++ b/computer.zil @@ -0,0 +1,1202 @@ + + + + + + > + ; + + + + + + + + )> + T> + +; (BYTE) 0>> + + + + > + 1>)) + )> + + + >> + + > + + + + + + ; + ) + (<==? .N 0> + > + + ; + >) + (<==? .N 2> + + > + ; + ) + (<==? .N 3> + > + > + ;> + >)> + ; + > .STOP> + )>> + > + + > + > + >> )>>> + +> > + + )> + + >> + + >>> + +; +; + > <* ,COMPUTER-WIDTH 2>> + )>>> + + + + > + > + ) + (T + )> + + + > + + + > + ; "So we can use form cursor addressing" + 2>> + > + 2>> + > + + > + + + + + + > + + + > ,COMPUTER-REAL-HEIGHT:FIX> + )>> + > + )>> + +; + + ) + (T <>)>> + + + + > + +;> + +;> + > + > + >>)> + > + >>> + ;<0? > + >>> + > + T) + (T <>)>> + + + (BYTE)> + FIELD> + 'FIELD-PROMPT "Command:" + 'FIELD-FCN COMMAND-FIELD + 'FIELD-PROMPTLEN 8 + 'FIELD-X 1 + 'FIELD-Y ,COMPUTER-COMMAND-LINE + 'FIELD-MAXLEN 29 + 'FIELD-DONE 0 + 'FIELD-CURLEN 0>>> + + + <0? > + <==? !\?>> + + <> <>> + + + <>) + ( + !\ >> + + <>) + (T T)>> + + + !\ >> + + <>) + (T T)>> + +> + +)) + + + + + )> + + + + > + + )>> + + +) + "AUX" (W ,REAL-COMMAND-WINDOW) (FLD ) + (TXT >)) + <+ + >> + + > + + + + + ; "Script, but don't print anything to screen" + T T> + + )>>> + + +) (TC )) + + + + ) CVAL (1ST? T) CSS) + > + ) + (T + )> + > + + >)> + + > + > + ) + (T + )>)> + + > + + > 1>> 4> + > + + ) + ( + >> + >> + ) + (T + >)>)>)> + )> + > + > + ) + (.CVAL )> + > + )> + 0>> + + )> + > + 0>> + )> + > + )> + 1>> + 0> + >)> + > )>>> + +) "AUX" (OX ,FORM-X) (OY ,FORM-Y)) + + + + + + + )> + + > + +> + + + +> + + + + + "FIDUC.HAK"> + + "MENU.HAK"> + + "AIRPLANE.HAK"> + + "POST.HAK"> + + "ZBUG.HAK"> + + "TRAVEL.HAK">>> + +) DIR) + :FIX 1>>>>> + ) + (> ,TARGET-COUNT> + + >> + )> + > ,TARGET-COUNT> + )>> + )>> + > + > + > + > + + :FIX 5>> + > + >>>> + ; "Trying to start up with non-existent file" + ) + ( 1> .TARG> + )>) + (T + ; "Used 'em all up, loser" + )>> + +) "AUX" LC:FIX) + >) + ( 0>> + ) + ( 0> + > 1>> 0>> + + + > + >)>) + (T + + <>)>)>> + +) + "AUX" (TC:FIX )) + > 0>> + + + > + >)> + > + > + > + T) + (T + + <>)>> + +)) + >> + + + T) + (T <>)>> + +>) DE + (LEN:FIX ) (DT )) + > + > + .FLDSTR>> + .FLD .DE .DIRTBL> + .PC>)> + >> + )> + >> + > + ) + (T + )> + ,FATAL-VALUE) + (T <>)>> + +> + +> + + + > + ) + (T + )> + + > + <>> + + + + + + + + + > + ) + (T + T> + + )> + <>> + + +)) + )> + + + ) + (T + )> + > + > + + > + ,DIR-ENTRY-INVISIBLE>> + > T> + > + >> + T>)> + >)> + > + > 0> )>> + <>> + +) (NOSCREEN? <>)) + + )> + + + + + + )>)>> + +) (NOSCREEN? <>) + "AUX" (N:FIX )) + + > + > .N> )>>)> + + + + + <>> + + + + + <+ .N>>)>)>> + + +) (REMAIN:FIX .N)) + ; "SLINE is current line on screen, DLINE is line of document, + REMAIN is lines left in document, N is total lines in document" + > + >) + (T + )> + > + > + >) + (T + .FLINE>> + )> + + + > + > .FLINE> )> + >> + + ,COMPUTER-HEIGHT>> .N> + )> + + + + + + )>> + + + + ) (CT:FIX 1) ST) + >> + >)> + + > .N> )>> + + + + T> + +> + + + + + > + + + + + + )>> + +)) + > + )> + + > + + > + + )>) + (T + )> + + + )> + + + + + + + )> + + T> + + + +> + )> + + <>> + + + "Once upon a time Douglas Adams and" + "Steve Meretzky collaborated on a game" + "called \"The Hitchhikers Guide to the" + "Galaxy.\" Everyone wanted a sequel, but" + "Douglas thought it might be fun to do" + "something different first. He called" + "that something \"Bureaucracy,\" and" + "wanted Marc Blank to work on it with" + "him. Of course, Marc was busy, and" + "Douglas was busy, and by the time they" + "could both work on it, they were too" + "busy to work on it. So, Jerry Wolper" + "got a free trip to Las Vegas to talk" + "to Douglas about it before it was" + "decided to let it rest for a while" + "instead. Jerry decided to go back to" + "school, so Marc and Douglas spent some" + "time on Nantucket looking at llamas," + "drinking Chateau d'Yquem, and arguing" + "about puzzles. Nothing much happened" + "for a while, except that Marc and" + "Douglas got distracted again. Paul" + "DiLascia decided to give it a try, but" + "changed his mind and kept working on" + "Cornerstone. Marc went to work for" + "Simon and Schuster, and Paul went to" + "work for Interleaf. Jeff O'Neill" + "finished Ballyhoo, and, casting about" + "for a new project, decided to take it" + "on, about the time Jerry graduated." + "Jeff got a trip to London out of it." + "Douglas was enthusiastic, but busy" + "with a movie. Progress was slow, and" + "then Douglas was very busy with" + "something named \"Dirk Gently.\" Jeff" + "decided it was time to work on" + "something else, and Brian Moriarty" + "took it over. He visited England, and" + "marvelled at Douglas's CD collection," + "but progress was slow. Eventually he" + "decided it was time to work on" + "something else. Paul made a cameo" + "appearance, but decided to stay at" + "Interleaf instead. So Chris Reeve and" + "Tim Anderson took it over, and mucked" + "around a lot. Finally, back in Las" + "Vegas, Michael Bywater jumped (or was" + "pushed) in and came to Boston for some" + "serious script-doctoring, which made" + "what was there into what is here. In" + "addition, there were significant" + "contributions from Liz Cyr-Jones," + "Suzanne Frank, Gary Brennan, Tomas" + "Bok, Max Buxton, Jon Palace, Dave" + "Lebling, Stu Galley, Linde Dynneson," + "and others too numerous to mention." + "Most of these people are not dead yet," + "and apologise for the inconvenience.">> + + + + <>> + +>> + DIR-ENTRY-INVISIBLE>> + DIR-ENTRY-INVISIBLE>> + DIR-ENTRY-INVISIBLE>> +> +> + + +> + ) + (T + > 0>> + > + > <- ,TARGET-COUNT 1>> + )>>)> + + + + + + + + + + + + + + + )> + + + + + + + + > + ) + (> + )>)> + )>> + +> + +> + + +> + +>)) + ; "N is number of 1000s to count down to get 1-sec. delay" + > + > 0> )>>> + +"Login stuff" + + + <- ,FIELD-DATA-OFFSET 1>>) + (GOOD-NAME? <>) (GOOD-PASSWORD? <>)) + + ) + (T + )> + + + > + .DL>) + ( + >) + (T + )> + + + + > + >) + (T + )> + + > + )> + > 1> + + .DL>)>>> + +) "AUX" (SC ) + (DC? )) + + + + > + + ) + (T + )>) + (T + )> + ) + (T + )> + + + + + + > + +> + + <>) + (T T)>> + +; "Actual mainframe simulation here..." + DIR-ENTRY-INVISIBLE>> + +> + +> + +> + +> + +> + +> + +> + +> + + + +> + + "PLANE.EXE "> + PLANE-FILE> + "HAK.EXE "> + HAK-FILE> +
"FIDUC.HAK "> + FIDUC-FILE> +
"MENU.HAK "> + MENU-FILE> +
"AIRPLANE.HAK "> + AIRPLANE-FILE> +
"POST.HAK "> + POST-FILE> +
"ZBUG.HAK "> + ZBUG-FILE> +
"TRAVEL.HAK "> + TRAVEL-FILE> +
"DVH2.HAK "> + DVH2-FILE> +
" "> + <>> +
" "> + <>> +
" "> + <>> +
" "> + <>> +
" "> + <>>>> + + + ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;" + ";;; FILLMORE FIDUCIARY TRUST ;;;" + ";;; CENTRAL COMPUTER ACCESS ;;;" + ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;" + <> + ".RUN" + "LOGON SLARTIBARTFAST" + <> + <> + "[NON-ASCII CHARACTERS ENCOUNTERED]">> + + + ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;" + ";;; GENERAL RESTAURANT ACCESS CODE ;;;" + ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;" + <> + "; THIS CAN HACK ANY RESTAURANT WITH" + "; COMPUTERISED INVENTORY, ORDER ENTRY," + "; OR BOOKKEEPING." + <> + ".RUN" + <> + "[NON-ASCII CHARACTERS ENCOUNTERED]">> + + + ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;" + ";;; FAA TRAFFIC CONTROL COMPUTER ;;;" + ";;; AND NATIONAL WEATHER SERVICE ;;;" + ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;" + <> + "; USE THIS TO CAUSE THE WEATHER" + "; SERVICE TO ISSUE BOGUS FORECASTS," + "; AND TO CAUSE ANY ARBITRARY AIRCRAFT" + "; TO BE ROUTED TO ANY ARBITRARY" + "; LOCATION." + <> + "[NON-ASCII CHARACTERS ENCOUNTERED]">> + + + ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;" + ";;; POSTAL MISDIRECTION HACK ;;;" + ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;" + <> + "; IN ADVANCED COUNTRIES, THIS CAN" + "; CAUSE MAIL TO ANY SPECIFIED ADDRESS" + "; TO BE DELIVERED TO ANY OTHER ADDRESS" + "; WITHOUT USING TELL-TALE FORWARDING" + "; STICKERS" + <> + ".READ COUNTRY" + ".READ STATE OR PROVINCE" + ".READ CITY" + ".READ STREET" + ".READ NUMBER" + ".READ APARTMENT" + ".RUN" + <> + "[NON-ASCII CHARACTERS ENCOUNTERED]">> + + + ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;" + ";;; NATIVES ;;;" + ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;" + <> + "; CONNECT TO ZALAGASA BOYSENBERRY" + "; USERS' GROUP COMPUTERS, JUST TO MAKE" + "; SURE THEY AREN'T GETTING ANYWHERE" + "; THEY DON'T BELONG" + <> + "[NON-ASCII CHARACTERS ENCOUNTERED]">> + + + ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;" + ";;; TRAVEL AGENCY AND AIRLINE ;;;" + ";;; RESERVATIONS MANIPULATION ;;;" + ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;" + <> + "; MANIPULATE AIRLINE RESERVATIONS --" + "; ROUTE SELECTED TRAVELLER TO ANY" + "; DESIRED DESTINATION, WITH ANY" + "; DESIRED INTERMEDIATE STOPS. CAN" + "; ALSO CAUSE AIRLINES TO AUTOMATICALLY" + "; ROUTE GROUPS OF TRAVELLERS" + "; INCORRECTLY." + <> + "[NON-ASCII CHARACTERS ENCOUNTERED]">> + + + ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;" + ";;; EMERGENCY DVH2 CHA/OS ACCESS ;;;" + ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;" + <> + ";;===>>>WARNING<<<===" + ";; MAKE SURE THIS ISN'T DIRECTED AT A" + ";; FRIENDLY COMPUTER!!! IT WILL NEVER" + ";; WORK AGAIN!!!" + <> + "[NON-ASCII CHARACTERS ENCOUNTERED]">> + +> +> + + .DIRPTR> + ) + (T + )> + ,FATAL-VALUE> + +> + + + + + + + + + + + + + + + + <>> + +; "Returns the directory rested to the appropriate entry, or false" +) DE) + > + > + > + >>> + )> + > 1> + > + )> + >> + .DIR> + + + + + >> + )> + + + + + <- ,FIELD-DATA-OFFSET 1>>> + + +) + "AUX" (LEN:FIX ) + (LINE:FIX 0)) + + + + *.*" T>) + (T + )> + > + > + + > + > + T> + >)> + > 1> + )> + >>> + + + <>> + +> + > + + 1>> + + >> + + ,FATAL-VALUE) + (T + )>) + (T + + ,FATAL-VALUE)>> + +> + > + + 1>> + > + + ,FATAL-VALUE) + (T + + <>)>) + (T + + ,FATAL-VALUE)>> + +> + > + ;"Pointer to old file" + >> + > + > + ; "Existing file will go away, permanently, maybe" + T) + (<==? .ND > + + ) + ( + + 1 <>>) + (T + + )>) + (T + )> + + <>) + (T + + ,FATAL-VALUE)>> + + + <- ,FIELD-DATA-OFFSET 1>>)) + + > + + :FIX 1> + <==? :FIX !\Y>> + + T) + (T <>)>> + +; "Make files have same contents. DE1 source, DE2 dest" +> + > + >> + + 0>> + > ,MAX-FILENAME> + )> + + > + > 1> + )>>> + +> + > + ;"Pointer to old file" + >> + > + > + ) + ( + ; "Existing file will go away, permanently" + ) + (T + )> + + ,FATAL-VALUE) + (> + > + + + + <>) + (T + + ,FATAL-VALUE)>) + (T + + ,FATAL-VALUE)>> + +> + >> + <==? 1> ,DVH2-FILE> + 4>> + )>> + +)) + 1>> + >> + )> + > 1> + > + )>> + .TBL> + +> + > + 1 <>> + > + <>) + (T + + ,FATAL-VALUE)>> + + + + + + + >> + + + ) + (T + )> + + + + > \ No newline at end of file diff --git a/computerdefs.zil b/computerdefs.zil new file mode 100644 index 0000000..ef9869e --- /dev/null +++ b/computerdefs.zil @@ -0,0 +1,92 @@ +"COMPUTERDEFS for BUREAUCRACY: Copyright (C)1987 Infocom, Inc. + All rights reserved." + + + + + + + + + + + +) + (TELECOM? BYTE <>) + (EXITED-ALREADY? BYTE <>) + (COMPUTER-DEAD? BYTE <>) + (COMP-X:FIX BYTE 0) + (COMP-Y:FIX BYTE 0) + (CURRENT-TARGET-NAME <>) ; "String for interrupt messages" + (REAL-TARGET-NAME <>) ; "LTABLE for looking stuff up in directory" + (REMAINING-TARGET-TURNS:FIX BYTE 0) ; "Turns left until this one's done" + (LINES-TO-NEXT-TARGET:FIX BYTE 0) ;"Lines to output before select next target" + (TERMINATE-CURRENT:FIX BYTE 0) ; "Lines to output before terminating this one" + (COMMANDS-SINCE-START:FIX BYTE 0); "Command lines read since target started" + (DIE-ON-NEXT-COMMAND BYTE <>) ; "To avoid hair of faking non-local return" + (WILL-WIN? BYTE <>) ; "True if killed computer" + (FERROR-ACTIVE? BYTE <>)> + + + + + + + + + + + +) ; "Brief help msg" + (DIR-DUMMY-1 ANY 'NONE) + (DIR-DUMMY-2 ANY 'NONE) + (DIR-DUMMY-3 ANY 'NONE) + (DIR-NAMLEN FIX) + (DIR-DATA ANY 'NONE)> + + + + + +; "Build a directory entry" +> + <==? <1 .BITS> IMPURE>> + > + >)> + > + >> + DIR-ENTRY>> + + ) + ( + > + )> + + >)>> + .BITS> + > + + > + >> + .NAME>> + .DE> + + diff --git a/events.zil b/events.zil new file mode 100644 index 0000000..a1c2b05 --- /dev/null +++ b/events.zil @@ -0,0 +1,1264 @@ +"EVENTS for BUREAUCRACY: (C)1987 Infocom, Inc. All rights reserved." + + + + + + + +> + +> + + + +)) + > ,NUMBER-OF-TUNES> + )> + + > + .X> + +> + > 10> + + )> + + .ITT>> + +> + .IR>) + (> + >> + + )> + + + ) + ( + )> + + + + )> + .IR>> + + + + .IC>) + ( + .IC>) + ( + )> + + > + +> + + + + + +)) + + + + )> + + >> + + + )> + + + ) + ( + ) + (T + )> + + + )> + + + )> + + + )> + + )> + > + + + + + + + + + ) + ( + + ) + ( + + > + + )> + + )> + + + + > + + + + )> + > + + + + + + + + + + + + + + + ; + + )> + + + + )> + .IWA>> + +) "AUX" WORD (ALREADY-HERE? <>)) + + + )> + + + + + + + + )> + + ) + (ELSE + )> + + + + + + ) + (> + ; "Burger been delivered, not paid for" + + )> + + ) + (T + )> + + + + )> + + > + + + + + + + > + + + + + ) + ( + + ) + (T + )>>>) + ( + )> + > + + + + )> + > + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + > + + + )> + ) + ( + .Y/N>)> + + + >> + +> + > + > + > + + + > + ) + (.LONG? + > + > + > + + )> + )> + > .N> + )>>) + ( + + )> + )> + + + >> + + + +) (CNT 0) WORD) + + > ,WATER?> + )>> + + + > + )> + + + + + ; "Wants cheese" + + )> + + + + + > + + + + + + )>) + ( + + + + + + + ) + ( + + )> + + + > + + + )> + > + + + ) + ( + + ) + ( + + + + + + ) + ( + + + + + )> + + + )>> + +> + > + > + > + >>> + + + >> + +> + + > + + >>> + +> + > + > + + > + + >>> + + >> + + + > + + >>> + + + + >> + + + + >> + + + + >> + + + >> + + + >> + +> + > + + >>> + +> + > + + + >>> + + + >> + + + >> + + + + >> + +;> +; + +>"> + + > + > + ,PS?BUZZ-WORD> + > + >>)> + + + ) + ( + ) + ( + ) + ( + ) + (T + )>)> + + + > + .WORD> + + + + + + + + + +> + +> + +)) + >>> + >)> + > .LEN> + )>> + + ) + (T + > + >>> + > + ,OT-YES/NO> + >) + (<==? .TYPE ,OT-WORD-STRING> + + >) + (<==? .TYPE ,OT-STRING> + >)> + > 1> + ) + (<0? .CT> ) + (T )>)> + >>>)>> + + > + ) + (T + )>> + +> ,W?SPECIAL> + + )> + + + + + + >> + + + + ) + (> + + > + + ) + (T + > + + + ) + ( + ) + ( + ) + (T + )>)> + ) + (> + + > + )>)> + + > + + )> + > + + > + + + )> + ) + (T + + )>) + (<==? .A ,W?WINE> + > + + > + + ,W?CALIFORNIA> + ) + (T + >)> + ) + (<==? .A ,W?SODA> + > + + ,W?WITHOUT> + )> + > + ,W?COLA> + )>) + (T + > + )> + > + + + > + + )> + )>> + +"Expects a W?XXX." + + + > + +) "AUX" (CNT:FIX 2) LEN:FIX X) + + + > + > + + )> + )) + > + > + >> + + + <==? .LC %>>> + >)>)> + + + > .LEN> + )>>> + + + + > + + + ) + (T + )>> + + + + > + +> + + + >)> + + ) + ( + + ) + ( + ) + ( + ) + ( + ) + ( + + ) + ( + + ) + (<==? .X 10> + ) + (<==? .X 13> + ) + (<==? .X 15> + ) + (<==? .X 16> + ) + (<==? .X 18> + ) + (<==? .X 20> + ) + (T + )>> + + + + + +) (ST <>) (EITHER <>)) + + + ) + ( + + )> + > + + + .IMA>) + ( + + + + )> + + ) + (T + )> + + )> + .IMA>) + ( + + + + + )> + + + ) + ( + + )> + + + )> + .IMA>) + ( + + + )> + + + )> + + )> + .IMA>) + ( + + + + + )> + ,NOT-HERE-OBJECT) + (T ,MATRON)>> + + )> + .IMA>) + ( + + + + )> + + ) + (T + )> + + )> + .IMA>) + ( + > + + )> + + ) + ( + + + + + + + )> + + ) + ( + + )> + + + ) + ( + + )> + + )> + .IMA>)> + .IMA>> + + + + )> + + + ) + (T + .IR>)>> + + + + + + + + + + + + + + + +
+
+
+
+
+
+
>> + +> + .IM>) + ( + T) + ( + + .IM>) + ( + )> + + + + >)> + + >) + (T + >)>> + + + + ,MACAW-SLOGANS>>> + + ) + (T + )>) + (ELSE )> + T> + + + + + + + + .IM>)> + > + + )> + + + + )> + + + + )> + + ) + ( + + + + + ) + (T + )> + + ) + ( + + + + + + + + )> + + + + )> + + )> + + + )> + + > + )> + + + ) + (T + )> + + + + + + + + + + + > + + + + + T> + + + + > + +> + + + + + + + .ID>) + ( + )> + > + + + ) + ( + + ) + ( + + ) + ( + + ) + ( + + + + )> + + + > + + + + + +
>> + +) X:FIX) + + + > + > + )> + + + .IL>) + ( + + .IL>) + ( + .IL>) + ( + )> + + + + + )> + + + + )> + + ) + (> + .IL>) + ( + + + .IL>) + ( + .IL>) + ( + )> + + ,PERIOD> + ) + ( + + + + + + )> + + ) + ( + + .IL>) + ( + .IL>) + ( + )> + + + " the llama treats." CR> + T> diff --git a/foo.mud b/foo.mud new file mode 100644 index 0000000..3c75898 --- /dev/null +++ b/foo.mud @@ -0,0 +1,194 @@ +BUREAUCRACY REWRITE +REVISED SCENARIO (PLOT ONLY) +v1 of Jan 87 13:50 + + +************************** + +1) HOUSE, BANK, LLAMA, MAIL + +You have just moved into your new house. Everything is fine. You have +a new job at Happitec - Vice president of Systems Development. The fact +that your previous job ended in something of a disaster when roughly +150,000 people were seriously inconvenienced by a rather buggy program +for which you were responsible is neither here nor there. The internal +bureacracy of your previous company took care of that, and anyway - when +was an information specialist's career ever set back by a disaster of +that sort? + +The game opens in the living room of your new house. Everything is +dandy, as we said. The house is much bigger than your previous +apartment, the area is nicer, you will be earning more money and, best +of all, you are leaving today on a two-week vacation, all expenses paid. +The only thing you will need is the cab fare to the airport. + +Unfortunately, due to a tiny little foul-up at the bank (which, you seem +to recall, uses software produced by your previous employers) your +change-of-address card has not been actioned by the bank. The reason? +The DP department can only accept change-of-address notifications on +official change-of-address forms. A change-of-address form has been +sent to you... at your old address, along with your checkbook and your +new credit card (which expired last week). + +Your quandary? To get hold of enough money to get a cab to the airport +to get your flight to Paris, so that you will be able to survive for a +fortnight. After all, once you start your new job, everything will be +allright. + + +In the package is a letter from your new boss, Ollie Fassbaoum, telling +you how to pick up your airline ticket. He also mentions that a check +for $75 is on its way to you in the mail. + +So you have two alternative problems. Problem A is to get your bank +either to cash you a counter cheque or to get a cheque book to you +QUICKLY so that you can get cash from your bank. Problem B is the +alternative, which is to get hold of the money order which Fassbaum has +sent. + +You can attack these problems in either order. Doesn't actually matter +which. Here they are: + +PROBLEM A: THE BANK + +STARTING INFORMATION: The bank has failed to act upon the change of +address card you sent it, because it was not on a proper form. They +HAVE used their initiative to the extent that, realising you needed a +change of address form, they sent you one. Unfortunately they sent it +to your old address. + +The new tenant of your old apartment has in fact received this form. +He has also previously received a cheque book and a credit card, among +other mail, which he politely returned to your bank with "PLEASE +FORWARD TO NEW ADDRESS" written on it. The change of address form is +the last straw. His attitude is "Fuck this; tell your bank about your +new address, I have had enough." He has gone on holiday to stalk Ai-Ai +in Zalagasa and won't be back for three weeks. + +So you might think of ringing up the bank to ask for a NEW change of +address form. If you do this, you will get Pongo the bank parrot, who +will tell you that according to their records, they sent a change of +address form to your old address (You already know this) and they can't +send another one out until the original is returned. They cannot +possibly bypass the system in your case because (A) how would it be if +everyone bypassed the system, and anyway (B) the system was manufactured +by the Deep Thought Corporation of America Inc and is notoriously +inflexible. They have had someone in to look at it but things only seem +to have got worse. Ringing the bank is therefore a no-win game play. + +You might also think of actually visiting the bank to see if they can +help. The bank staff are however completely incapable of helping you. +The systems have been automated to such an extent that the humans are +reduced to mere robots and show no initiative. They are completely +intimidated by the computer, which anyway has behaving strangely of late +so they don't want to take the risk of offending it. The only thing you +learn is that they COULD cash a money order. Since this is the thing +that Fassbaum is sending you, it is obvious that that's what you need to +find. + +If you haven't already looked in your mailbox at home, you'll perhaps do +so now. You will find that someone else's mail is in it, which might +alert you to the fact that something is wrong with the mailman. Perhaps +he is a DTC robot? Perhaps he is just a prick. Anyway, all the mail is +misdirected, and it's obvious that if you are ever going to find the +Fassbaum money order you will have to look in someone else's mail. You +will in fact NOT find the money order until you have opened all the +available mail. + +The mail problems remain exactly as they currently are except perhaps a +few more pointers ? + +The LAST batch of mail you find will contain two items: a money order +addressed to you, and an envelope addressed to someone else. The money +order will have been destroyed in one way or another, depending on where +you find it. It can have been licked by the llama, plunged into water +by the paranoid, ripped to shreds by the macaw or cut to ribbons by the +collector. Every batch of mail will also contain a special offer +suggesting that you, the lucky recipient, might have won $25,000. The +last envelope will also be another stupid thing suggesting that you have +won $25,000 and will ONLY be morally distinguishable from the other junk +mail by the fact that it is a real object. If you assume that it is +just junk, you will not ask to pick it up (**YOU AUTOMATICALLY PICK UP +THE MONEY ORDER, JUST TO MAKE THINGS SUBTLE**) and will never get to the +airport. If, however, you DO pick it up, you will find that it is +addressed to a silly name at a non-existent street address (You will be +told this in the text) so that you are perfectly justified in opening it +and taking the money order it contains. + +You then have to return to the bank with the money order and run through +the bureacratic process of cashing it. This will involve the silly +forms (siller than now but less paranoid) but in the end you will get +the money. + +Throughout this process the nerd will keep appearing and try to sell you +things to do with computing- books on protection systems, hacking +manuals, interesting terminal numbers and so forth. They will always +cost slightly more money than you have after buying your cab fare, so if +you accept his stupid offers you won't be able to get to the airport. + +Also throughout this process, pseudo DTC repair men will keep appearing +out of the corner of your eye. + +The restaurant remains the same. If you don't eat you die. The +waitress runs away after a pause because something goes wrong with the +computer terminal she is using to punch in the order. The waiter comes +out and takes your order but whatever you ask for he brings you a bill +for $475.50. When you quesiton him about the bill, he explains that the +DTC computer is fubar and the real bill is $4.50 + +>ASK WAITER ABOUT COMPUTER +"It's a DTC. As I said, it's Fubar." + +>ASK WAITER ABOUT FUBAR +"Fouled Up Beyond All Recognition. As I said, it's a DTC" + +Outside, the waitress and a pseudo-DTC engineer in a white coat with a +walkie-talkie is snigelling (a very private in-joke word which will not +be explained) over something with the waitress. They disappear when they +see you. + +DTC engineers are found everywhere. + +The general principle is that DTC is the Frobozzco of the computer world +and that companies use DTC foul-ups to excuse their own infelxibility. + +The CAB COMPANY and AIRPORT work as normal except that we will find some +way of blaming the snafu at ATC on the DTC computer. + +The AIRPLANE PUZZLE we have already dealt with. + +Perhaps the piped music system is a DTC product as well, and Boysenberry +could have been a once-creative company now absorbed into the DTC +bureacracy. + +The airplane pay-off is the stewardess telling you that it is not +actually going to crash, it is in fact a totally inexplicable computer +malfunction. + +ZALAGASA, THE SILICON MINE, THE MAZE +=================================== + +Zalagasa could be a real or a fantastical place. It is never actually +made explicit which is real, although attention is drawn to your labile +emotional state at the time. + +While you are in the cooking pot it occurs to you that a series of +bureacratic and computer foul-ups have led to this sorry plight, but on +the other hand you have at last found tranquility in a place where +neither computers nor bureacratic conventions exist. Witness the +charming primitivism of the Zalagasans dancing round the pot chanting +their age-old chant of ZBUG! ZBUG! ZBUG!. + +You solve the eclipse prediction puzzle as before and escape from the +cooking pot. One of the Zalagasans comes back and engages you in +conversation, observing that your Boysenberry is in fact a rather +primitive version and that theirs has a much more sophisticated BIOS +which was introduced to them by a mysterious nerd-like figure who +emerges periodically from a hole in the ground. He tells you that that +hole in the ground is over to the west. + +This leads you into the Silicon Mine, which is in fact the Quicksand +renamed PLUS the + + + diff --git a/formdefs.zil b/formdefs.zil new file mode 100644 index 0000000..37463eb --- /dev/null +++ b/formdefs.zil @@ -0,0 +1,131 @@ +"FORMDEFS for BUREAUCRACY: Copyright (C)1987 Infocom, Inc. All rights reserved." + + + + + + + + + + + + +"Args for field functions" + + + + + + + + + + + + +; "Structure to represent a single field." +; "Form is just a table of fields. Internally, we enforce the restriction + that there can be no more than two fields on a line." + +) + (FIELD-DUMMY-1 ANY 'NONE) + (FIELD-DUMMY-2 ANY 'NONE) + (FIELD-DUMMY-3 ANY 'NONE) + (FIELD-PROMPTLEN FIX) ; "Length of frob" + (FIELD-X FIX) + (FIELD-Y FIX) + (FIELD-MAXLEN FIX) + (FIELD-DONE FIX 0) + ; "This field can't be moved, because it makes the data in the + field look like a byte table with a length..." + (FIELD-CURLEN FIX) + (FIELD-DATA ANY 'NONE)> + + + +; "Field syntax is + (name:ATOM prompt:STRING maxlen:FIX OPT init:STRING)" + + + > + +:STRING> <3 .FIELD>:FIX 1>> + + + + )> + > + >> + + > + 1> + <- ,FORM-WIDTH 2>>> + <+ .FIELDN 1>> + > + >) + (T + + >)> + > + >> + > + +>>> + >> <- ,FORM-LENGTH 1>> + >> + ,FORM-LENGTH>)>> + + + + 2> + .LINENO>)>> + +> 1 <3 .FIELD>> + <- ,FORM-WIDTH 2>> + )> + :FIX> + (BYTE)> + FIELD>> + 'FIELD-PROMPT <2 .FIELD> + 'FIELD-PROMPTLEN <+ > 1> + 'FIELD-X .X + 'FIELD-Y .Y + 'FIELD-MAXLEN <3 .FIELD> + 'FIELD-CURLEN 0 + 'FIELD-ABUSE > TABLE> + >) + (> FORM> + >>)>> + > ATOM> + >>) + ( 1>> ATOM> + 1>>>)> + <- .FIELDNO 1>>> + >> + 3> + STRING>> + :STRING>> + )) + >>> + >> + )> + >>)>> + + diff --git a/forms.zil b/forms.zil new file mode 100644 index 0000000..9c5e318 --- /dev/null +++ b/forms.zil @@ -0,0 +1,595 @@ +"FORMS for BUREAUCRACY: Copyright (C)1987 Infocom, Inc. All rights reserved." + + + + + + + + + +> + +> + + 2>> + > + 2>> + > + + > + + > + + + + + + + + + + + ) (FIELDS ) TF) + + > + )> + > + >> + > + + > + <==? .RLINE>> + > + > + > + >)> + + > + >> + > + + + + <+ .X ,MARGIN>>> + + + > + + + + + > + +> + + + > + +) + (FIRST-NAME "First name:" 25 "Random" FF-NAME + ) + (MIDDLE-INITIAL "Middle initial:" 1 "Q" FF-MIDDLE-INITIAL) + (YOUR-SEX "Your sex (M/F):" 1 "M" FF-SEX) + (STREET-NUMBER "House number:" 4 "69" + FF-STREET-NUMBER + ) + (STREET-NAME "Street name:" 24 "Mandalay" + ) + (CITY-NAME "City:" 18 "Newton" ) + (STATE-NAME "State:" 5 "MA" FF-STATE) + (ZIP-CODE "Zip:" 6 "02174") + (PHONE-NUMBER "Phone:" 17 "646 9105" FF-PHONE-NUMBER) + (EMPLOYER-NAME "Last employer but one:" 14 "Infocom" + ) + (LEAST-FAVORITE-COLOR "Least favourite colour:" 12 "red" + FF-LEAST-FAVORITE-COLOR) + (FRIEND "Name of girl/boy friend:" 11 "Dunbar" + ) + (LAST-FRIEND "Previous girl/boy friend:" 10 "None" + )> + +> ; "True--> female" + + + + +)) + + > + + ) + (T + + )> + + ) + (T + )> + + + )> + + > + + + + + + ) + (T + + >)> + > + +) + "AUX" (CNT 0) (PTR ,FIELD-DATA-OFFSET) + MAX CHAR:FIX TBL:FIELD OLDLEN (ECHO? T)) + ) + (T + )> + > + > + ,FORM-DO-ECHO? .TBL>>> + >)> + > + >> + > + > + + + > + + + + )> + > + ; "CR?" + + + )> + + > + ) + (T + )> + ) + (T + > + )> + + + )>) + ( 14> + )> + + )> + .FF>) + ( ; "Backspace?" + + + > + ) + (T + )> + )> + > + )> + >> + > + + + )> + > 0> + ) + (<==? .CNT .MAX> + + + ) + (> + ,FORM-ADD-CHAR .TBL .CHAR>> + ; "OK to use this char?" + 1>> + 1>>> + >)> + + >)> + + > + >>) + (T + + )> + > + )>>> + +"Functions for individual fields" + + + <==? 2>> + 2) + (T T)>> + + <>) + (T T)>> + + + ; "Force street number after name..." + >>> + <>) + (T T)>) + (<==? .CONTEXT ,FORM-EXIT-FIELD> + >>>> + + + + > + > + + )> + + >> + >> + >> + >> + >> + .VAL) + (<==? .CONTEXT ,FORM-ADD-CHAR> + T) + (T + + <>)>) + (T T)>> + + + + > + %>> + T) + (T + + <>)>) + (T T)>> + +> + >> + T) + (T <>)>> + + + % %> + ) + (T + >)> + T) + (<==? .CONTEXT ,FORM-ADD-CHAR> + %> + %>> + T) + (T + + <>)>) + (T T)>> + + + > + >> + > + >>> + T) + (T + + <>)>) + (T T)>> + + + %> + > + + <>) + (T + )) + FIX> .CHAR> + + ) + (<==? .CHAR %> + ) + (T + )> + .FF-NAME>)> + >> + )> + >> + T)>) + (T T)>) + (T T)>> + +) + LEN TBL CHAR:FIX (UC? T) (ALL-UC? <>) TV) + >>> + > + + .FN>) + (T + > + + ,FORM-UPPERCASE? .TBL>>>> + >)> + )> + FIX>> + 1>> + 1>>> + + >) + ( <==? .CNT 1>> + T) + (.CAP? + >) + (T + >)>) + ( %> + + ) + (T + > + > .LEN> + )> + )>)> + + > + > + > .LEN> + )>>)>> + + + + + + + + + + > 127> + ) + (T + + + )> + + >>> + +> .LEN> + ; "If we've been through the loop too many times without a hit, + just start at the beginning and proceed until we find something + or run out (in 2nd case, return -1)" + > .LEN> + + )> + >) + (T + > + >)> + >>> + > + ,FORM-OK-TO-ENTER-FIELD? .F>>> + 1> + + )>)>> + .N> + + + +) (HIST ,FORM-HISTORY) + (HISTLEN 0) N (BOGUS-ERRORS 0)) + > + + + > + >>> + >> + ,FORM-FIELD-RESET .F>)> + 0> + > .FIELDCT> )>> + > + + ) ERRVAL) + > + > + > + + + + + )> + + >> + > + + + > + + ; "Put this field back on the list" + + ; "And find the one we were in before" + >> FIX>> + ) + (> + ,FORM-EXIT-FIELD .TBL>> + + + )> + + + + > + 3>> + )>)>)> + + + >> + > T> + )> + > .FIELDCT> + )> + + > + )>> + + + ; "Does SCREEN S-TEXT..." + + + + + )> + + > + + T> + +"Some constants to prevent number overflows" + + ;"Largest positive number on 16 bit machine." +> ;"Largest div by 10" +> ;"Largest div by 100" + +"Expects address of an ASCII byte table, 0th byte = length. Returns value. + If DOT-OK is true, allows a decimal and in fact makes it 100 times bigger + if no decimal point. Returns -1 if overflow and -2 if too many dots." + +) + "AUX" (SUM:FIX 0) LEN:FIX X:FIX (DOT-SEEN <>)) + FIX>> + FIX>> + 1>> + 1>>> + + )> + > + >> + > + )> + >) + (>> + > + ) + (T + )> + > .LEN> + > + + )> + >)> + )>> + > + +> + +)) + + + + )> + > + +> + +> + +)) + + )> + >>>> + +) "AUX" TF LEN:FIX) + + )> + > + > + " "> + + + > .LEN> )>>> + +)) + ) + (T + FIX>> + + > + > .LEN> + )>>)>> diff --git a/jet.zil b/jet.zil new file mode 100644 index 0000000..6990462 --- /dev/null +++ b/jet.zil @@ -0,0 +1,1370 @@ +"JET for + BUREAUCRACY + (c) Copyright 1985 Infocom, Inc. All Rights Reserved." + +;"ON-FLIGHT = 1 -> HIJACKED + 2 -> NO VISA + 3 -> PARACHUTE TEAM + + This GLOBAL is set up in AIRPORT, depending on your gate. The ON-FLIGHT will + determine descriptions of almost everything, as well as what happens on the + flight. +" + +;"The generic airplane" + +> + + + + + ) + ( > + + + + )>> + +> + + + + + + + )>> + + + + + )>> + + + + + > + + + >>) + (T + )> + + > + )> + > + + ) + (T + )> + > + + >)> + >> + + ) + (<1? .NS> + ) + (T + )> + )> + )>> + + 8>>> + + + > + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + )>> + + + + + )>> + + + +> + + + + + )>> + + + + + + + +> + ) + ( + + ) + (T + + ,MOVIE-TIME> CR> + + + + + ) + (T + )> + )>)>> + + + ) + ( + ) + (T + )>> + +> + +> + > + + + > + > + + + + > + > + + + + > + + > + + + + + + + + + > + > + + + + + + + ) + (T + )>> + + + + + + + ) + ( + + > + > + + ) + ( + )>) + (,FLY-HACK? + ) + (T + )>> + + + +> + +> + +> + + + ) + (,FLY-HACK? + ) + (,CHUTE-DEPLOYED? + ) + (T + )>) + ( + > 4> + + ) + (T )> + + )>)> + + + > + + ) + ( >> + + )>) + ( + + >)> + > + + ) + ( + + ) + (T + + + )>) + (> + ) + (,CHUTE-DEPLOYED? + ) + (T + )>)>> + + + + + + + ) + (,FLY-HACK? + ) + (T + + )>) + ( + )>> + + ,FLY-HACK?> + + + + ) + ( + ) + (,CHUTE-DEPLOYED? + ) + (T + )>)>> + + + + + + ) + (T + + )>) + ( + + ) + (T + + )>) + (T + ;"Will handle some more stuff here" + + + )>> + +> + + + + + > + +> 5> + ) + ( + > 5>> + ) + ( + CR> + + )> + ) + (T + CR> + + )> + )>> + + + +> + > + ) + ( > + )>) + ( + > + ) + (,IMMIGRATION-FILLED? + ) + (T + )>) + (>> + > + )>> + + + + + + > + > + + + > + + + + + + ) + (T + )>)>) + ( + + + ) + ( + ) + ( + ) + (T + )>) + (T + )>> + + + +> + +> + + + )>> + + + + + + + + )> + ) + (T + + )>)>> + +> +> + + + ) + ( + ) + (T + + )>)>> + + + + > + > + +> + + + + + + ) + ( ) + (T + )>) + ( + ) + ( + )>> + + + + + ) + ( + )>> + + + + + + ) + (T + )>) + ( + )>> + + + +> 5> + + + >)>> + + + + + )>> + + + > + + + + + ) + ( + )>> + + + + + + + +> + + + + ) + ( + + ) + (T + + )>> + + +;"Zalagasa" + +;"Parachute" +>> + + + > + +> + > + +> + ) + ( > + + + + )>> + +;"Things to ask for, in general, and global type things." + + + + + + + + + + + + + + ) + ( + ) + (T + )>) + (T + )>> + + + + ;"Seating, etc." + +> + + + +> + ) + ( + ) + ( + > + > + > + ) + ( .A>> + ) + (T + + > + ) + (T + )> + )>)>) + ( + >> + ) + (,SEATED? + ) + (T + > + > + > + ) + ( + ) + (> + ) + ( .A>> + ) + (<0? > + + > + + ) + (T + )>)>)>> + +> + > + > + >> + + + + + )>> + +> + +) (S <>)) + >)> + >)> + 4> <- .S 1>>>> + + + +> + ) + ( + ) + ( + ) + ( + + > + >>> + ) + (T + )>> + + + + + + ) + ( + ) + (T + )>)>> + + + + + )>> + + + +> + + + ) + ( > + + ) + ( + + + ) + ( 8> + + + ) + (T + )>)>> + + + + + + ) + ( > + + + + ) + ( > + + + + > + )>> + +> + + + + + + + + + diff --git a/jetdefs.zil b/jetdefs.zil new file mode 100644 index 0000000..cf128f0 --- /dev/null +++ b/jetdefs.zil @@ -0,0 +1,135 @@ + + + + + + + + + + + + + + + +) + (PHONES-PLUGGED-IN? BYTE <>) + (CURRENT-STAR BYTE 0) + (CURRENT-DESC BYTE 0) + (CURRENT-WEAPON BYTE 0) + (LOSER-CANT-LEAVE-SEAT? BYTE <>) + (PURSER-HERE? BYTE <>) + (PHONE-MUSIC:FIX BYTE 0) ; "Headphone stuff" + (PHONE-TIMER:FIX BYTE 0) ; "Random" + (LAST-ROW:FIX BYTE 0) ; "Previous row occupied" + (LAST-SEAT:FIX BYTE 0) ; "Previous seat" + (NEW-ROW:FIX BYTE 0) + (NEW-SEAT:FIX BYTE 0) + (RETURN-TO-SEAT-WAIT:FIX BYTE 0) + (SCENE-NUMBER:FIX BYTE 0); "1, 2, or 3; one is added each time" + (CURRENT-SCENE:FIX BYTE 0) ; "1, 2, or 3" + (DREAMING? BYTE T) ; "false for last scene" + ; "Variables for meal script" + (MEAL-SCRIPT:FIX BYTE 0) + (MEAL-COUNTER:FIX BYTE 0) + (SINK-CLEANED? BYTE <>) + (TEETH-BRUSHED? BYTE <>) + ; "Variables for visa script" + (VISA-SCRIPT:FIX BYTE 11) ; "Number of incidents" + (FORM-FILLED-OUT? BYTE <>) ; "Loser actually filled out form" + (ATTENDANT-COMPLAINTS BYTE 0) + (GOT-VISA-NUMBER? BYTE <>); "Got visa number from someone else" + (VISA-SLEEPING? BYTE 0) + (GRANDMA-HAPPY? BYTE <>) + (SMOKER-IRATE? BYTE <>) + (BUSINESS-IRATE? BYTE <>) + (FALL-SCRIPT:FIX BYTE 5) + (FORM-SEEN? BYTE <>) + (CURRENT-NEIGHBOR BYTE 0) + (BUSINESS-ROW BYTE 0) + (BUSINESS-SEAT BYTE 0) + (BROUGHT-COMPUTER? BYTE <>) + (GOT-RECIPE? BYTE <>) + (FLIGHT-ATTENDANT-HE/SHE:STRING "She") + (FLIGHT-ATTENDANT-HIM/HER:STRING "her") + (THROWN-OFF-ONCE? BYTE <>) + (FIRST-SCENE? BYTE T)> + +> + +> + +> + +> + + + +> +
+ ,ALL-SEATS>) + (T + + >>>)>> + +; "State of seating is low four bits; starboard passenger, if any, is next + four; port passenger is next four. Three remaining bits below the sign + bit can be used for flags." + + + + + +> + + + + + + + + diff --git a/macros.zil b/macros.zil new file mode 100644 index 0000000..4b13a6f --- /dev/null +++ b/macros.zil @@ -0,0 +1,181 @@ +"MACROS for BUREAUCRACY: (C)1987 Infocom, Inc. All rights reserved." + + + + + + + + + + + + + (N NUM) * + (C CHAR CHR) * + Q * + (D DESC) * + (A AN) * + CA * + THE * + CTHE * + THEO + CTHEO + CTHEI + THEI + ITAL *:STRING + WORD * + PONE * + PNEXT * + > + + + + + +) + (T + )>> + +> + +> + +> + +> + + + + ) + ( + ) + (ELSE + )>>)> + + )> + > + + + >>) + (T .ATM)> GVAL>) + (ELSE .ATM)>)>>> + > + 4> + )>> + !>)>>> + + >> + +; > + +; > + +; > + +; + + ) + (<==? .X FSET?> + ) + (ELSE + )>>)> + > + > + + .ATM) + (ELSE + )>> + !.O)>>> + +>>> + +> + >> + >) + (T + >>)>> + +> + +> + +> + +> + +> + + 2> 1>> + +> + +> + +> + +>> + + + ) + (T + .NUM)>> + + + >> + )>> + +> + +>> + +>>> + +> + >) + (ELSE )>> + .STR>> \ No newline at end of file diff --git a/maze-program.zil b/maze-program.zil new file mode 100644 index 0000000..e39e19f --- /dev/null +++ b/maze-program.zil @@ -0,0 +1,245 @@ +"MAZE-PROG for BUREAUCRACY: Copyright (C)1987 Infocom, Inc. + All rights reserved." + + + + + +> +> + +>>> + +> + +) N:FIX) + >> + + + ) + (ELSE .CH)>> + +)) + + + + > + > + )> + + >)> + T> + > + + > + >> + + ; + > + > + > .K> + )>> + >) + (ELSE )>>> + .TBL>> + +> + +> + + + + + > + <+ .I 1>>>>> + > ,COMPUTER-WIDTH> + > + )> + > + .UV> + .UV> + +" 0 ==> space, 1...26 ==> A...Z, 27...53 ==> a...z, + 54 ==> . + 55 ==> , + 56 ==> ; + 57...63 ==> 0...6 +" + +> + 0) + (> + >> + <- .CHAR -1>) + (> + >> + <- .CHAR -27>) + (> + >> + <- .CHAR -57>) + (<==? .CHAR > 54) + (<==? .CHAR > 55) + (<==? .CHAR > 56)>> + +TEXT.FILE"> + +>> + +> 0> )> + > + > + > + > + > + > + >> + + + + + + + +
+
+
>> + + % %>> + + + + > 0> )> + > + > + 64> *77*>> + *77777*> 2048> *17*>> + + >) + (ELSE + >)> + > + <>> + + +) N:FIX H:FIX V:FIX (I:FIX 0)) + + > 0> )> + > + > + 64> *77*>> + *77777*> 2048> *17*>> + > + ; "Just checking for top half of screen" + ; > + + ; "Know top half, so just check for left" + > + ;> + >) + (ELSE )>) + (ELSE + >)> + )>> + <>> + + +) N:FIX H:FIX V:FIX (I:FIX 0)) + + > 0> )> + > + > + ; "this tries to win with 16-bit arithmetic" + 64> *77*>> + *77777*> 2048> *17*>> + > + ; + > + + ; "If in bottom half, must be quad 2" + > + ;> + >) + (ELSE )>) + (ELSE + >)> + )>> + <>> + + + + > 0> )> + > + > + 64> *77*>> + *77777*> 2048> *17*>> + > + > + )>> + <>> + + + +> + +) SW) + > + >> + + <- ,FIELD-DATA-OFFSET 1>>> + > ,COMPUTER-WIDTH> + + ) + (T + >)>)> + >>> + >>>>)>)> + + 1>>) + (T + )>> + +> + ) + ( 1>>>) + ( 27>>>) + ( 57>>>) + (ELSE >>)> + .N> + +) + (QL:FIX ) + (QR:FIX ) + (QT:FIX ) + (QB:FIX )) + + > + T) + (ELSE <>)>> diff --git a/maze.zil b/maze.zil new file mode 100644 index 0000000..1fc4bce --- /dev/null +++ b/maze.zil @@ -0,0 +1,917 @@ +"MAZE for BUREAUCRACY: Copyright 1987 Infocom, Inc. All rights reserved." + + + + + + + + + + + +> + +) "AUX" DIF) + + ) + ( + > + + <>) + (<==? .CONTEXT ,M-ENTERING> + + + )> + + ; "Make sure the maze room number is always bigger" + :FIX + <* ,MAZE-STEPS-TAKEN:FIX 25>>> + ; "Now adjust this so the last digit of the difference is between + 0 and 5: suppose the difference is 11. We add 8, making the + difference 19, then add something between 1 and 6, giving something + from 20 to 25. Similarly, if the difference is 8, we add 1, + the difference is 9, and win again." + 10>> + :FIX>> + ,IN-CLEARING>) + ( <>) + ( + > + + >> + ) + (T + + + >) + (T + )> + )>)>> + +> + +> + + + ,MAZE-ROOM) + (T + ; "New theory: don't fall back into jungle until right number + of steps taken..." + > + ; "Losing, don't forget to screw the guy later" + )> + > + + + + > + ,IN-CLEARING) + (T + ,INNER-ROOM)>) + (T + ,MAZE-ROOM)>)>> + + LAST-MAZE-ROOM; get the last digit of the + difference" + 10>> + ) + (<==? .N 1> ) + (<==? .N 2> ) + (<==? .N 3> ) + (<==? .N 4> ) + (<==? .N 5> )> + T) + (T <>)>> + +;"ODD-GATE-SOLVED? determines whether gate appears here or not..." + + +)) + + > + ; "Gate is open" + + >)> + + ; "Trap door is open" + >)> + + ; "Only one place to enter" + + <>) + (T + ; "The complex" + )>) + (T + + <>)>> + +) "AUX" VEC) + + + + )> + > + )> + <>) + (<==? .CONTEXT ,M-LOOK> + + + + + )>) + (T <>)>> + + + + <>) + ( + ,CARD-ROOM) + (T + + <>)>> + + +> +> + +> + +> +; ;"Done a look?" + <> ;"Attempted a DROP?" + + ; + + > + ;0>> + + + + + + + ,IN-COMPLEX) + (T + + <>)>> + + + +) "AUX" (SS )) + + + + + + )> + T) + (<==? .CONTEXT ,M-CONT> + + >> + + + + T)>) + ( <>) + ( + + + + + ) + (T + )>) + ( + > + + ) + (T + )>) + (ELSE + + > + T)>) + (ELSE <>)>) + ( + + >> + + + > + + )>)>) + ( + > + + > + + + )>)>) + ( + > + ) + ( + + + ) + (T + )> + + ) + ( + + + T) + (T + + ) + ( + ) + (T + )> + + + T)>) + ( + + + + ) + (T + )> + ) + ( + + ) + (T + )>) + ( + )>) + ( + ) + (T <>)>> + + + +> + + + ) + (ELSE + + )>> + + +> +> + +) + "AUX" (POS ,COMPLEX-POS) OBJS + (LOOK? ,COMPLEX-LOOKED?) + CNT) + + + + ) + (<==? .POS ,NUM-COMPLEX-POSITIONS> ) + (T )> + + ) + (<==? .POS ,NUM-COMPLEX-POSITIONS> + ) + (ELSE + )> + + T) + (<==? .CONTEXT ,M-ENTERED> + + + )>) + (<==? .POS ,NUM-COMPLEX-POSITIONS> + <>) + (ELSE + ;> + ; + .POS>> + ; + ; + + )>)> + )> + > + T) + (<==? .CONTEXT ,M-ENTERING> + + ) + (T + )> + <>) + ( + > + >) + ;(<==? .CONTEXT ,M-BEG> + > + > + > + > + > + + + + + + >> + + ,FATAL-VALUE) + (ELSE <>)>) + (T <>)>> + +; + + >> + + + + + <>) + (ELSE + > + ;> + >)> + + ,IN-COMPLEX)>) + (<==? .X ,NUM-COMPLEX-POSITIONS> + ,UNDER-TRAP-DOOR) + (ELSE + > + ; + >)> + ,IN-COMPLEX)>> + + + + + <> + " now at Happitec ">> + + + + > + <- ,FIELD-DATA-OFFSET 1>> + > + <- ,FIELD-DATA-OFFSET 1>>> + T) + (ELSE <>)>> + + + + + +> + +>> + + + + ) + (<==? .POS ,NUM-COMPLEX-POSITIONS> + + )> + >)> + + + > + > + >) + (T + >)> + + T) + (ELSE + <>)>> + +; + > + > + > 0> + )>>)> + T> + +; + > + > + + + > 0> + )>>)> + T> + + + +> + +)) + + + + + T) + ( <>) + ( + + ) + ( + ) + ( + )>) + ( + + ) + ( + ) + ( + ) + ( + > + + )>) + (T + )>> + + + > + > + + ,IN-COMPLEX) + (T + + ,LANDING-STRIP)>> + + + + + + + ) + (T + + > + ) + (T + )>)> + >> + + <>> + + + +)) + + + + + ) + (> + )> + <>) + ( + > + + + + T) + (> 0> + + + + T) + ( + + + + T) + (<==? ,P-WALK-DIR ,P?UP> + + + T)>) + ( + + + T) + (T <>)>) + ( + <==? ,P-WALK-DIR ,P?UP>> + ) + ( + + + T) + (T <>)>) + (<==? .CONTEXT ,M-LOOK> + ) + ( <>) + ( + + ) + (T + )>)>> + + + +> 2> + ) + (<==? ,PLANE-ARRIVE-COUNT 0> + + + ) + (T + + + + + + + + + + > + + + + + + + + + + + + >) + (T + + + T)>)>) + (T <>)>> + + + + + + + T) + ( + ) + ( + > + + + T) + ( + > + + + + + + + + )> + >)>> + diff --git a/misc.zil b/misc.zil new file mode 100644 index 0000000..c2e101e --- /dev/null +++ b/misc.zil @@ -0,0 +1,1088 @@ +"MISC for BUREAUCRACY: (C)1987 Infocom, Inc. All Rights Reserved." + + + + + + + + + +"*** ZCODE STARTS HERE ***" + + + +> +> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ; "Width of screen." + ; "Height of screen." + +> + +> + >>> + +> + + >> + >) + (T + )>> + +> + +)) + > + + + > + T) + ( + ) (X2 <>)) + >>> + ,ALL-HANDLES ,HANDLE-COUNT>> + .OG?>)> + ) + ( + ) + (T + .OG?>)>) + ( + <==? .O .X2>> + .OG?>)> + + )>>)>> + +> +> + +) (FAKE? <>) + "AUX" ICNT:FIX OCNT:FIX NUM:FIX CNT:FIX OBJ TBL (V <>) + PTBL OBJ1 TMP X (OLD-THEM <>)) + + > + + > + >)> + + > + > + >)> + + > + > + + > + > + > .ICNT> + ) + (T + ,IT> + + + )>)>> + + + > .OCNT> + ) + (T + ,IT> + + )>)>>)> + )> + + .OCNT) + ( + + + >) + (T + >)> + .OCNT) + ( + > + + > + .ICNT) + (T + 1)>> + + > + >)> + + + >> + >) + ( + ,P-SONUMS>> + > + >) + ;( + + ) + (T + + + > + + ) + ( + > + >) + (T + + >>)> + + >)>) + ; ( + + > + >) + (T + + > + > + + + > + ) + ( + + > + )>)> + > + > .NUM> + + + > + )> + + > + )> + + > + ) + (T )> + ) + ( + )> + ) + (T + + >) + (T + >)> + + 0> ,W?ALL ,W?EVERYTHING>> + + > + ) + ( + > + ) + (> + ) + ( + ) + (T + + + ) + (T + + )> + )> + )>)>)> + + .OBJ1) + (T .OBJ)>> + .OBJ) + (T .OBJ1)>> + > + + )>)> + + > + )>> + ; "OLD-THEM 0 means no p-mult. -1 means THEM was + used here; -2 means no previous them object." + T) + (T >)>)> + + >)>) + (T + + )> + >)> + >)> + + + + > + > + >> + >)> + > + > + >> + +> + + + > T) + (T <>)>> + +> + +> + +> + +> + +> + +> + +> + + >) + ( + + T) + ( + T) + (> + >> + T) + (<==? .L ,LLAMA-PEN> <>) + ( + >> + T) + ( + + > + T) + ( + > T) + ( + .DA>)>) + ( + > + .DA>)>) + ( + T) + ( T) + ( T) + ( + .DA>)>) + (T + .DA>)> + T> + + ,NOT-HERE-OBJECT> + <>) + ( ,WINNER ,HERE ,GLOBAL-OBJECTS> + T) + (<==? .OBJ ,RANDOM-OBJECT> T) + ( + > T) + ( + > T) + ( + > T) + ( + T) + (T + <>)>> + + ,NOT-HERE-OBJECT> + .VIS>)> + > + T) + ( ,GLOBAL-OBJECTS> + <>) + ( + T) + ( + > + T) + ( + > + T) + (T + <>)>> + + )> + >> .MI>)>>> + + + .ML>) + ( + ) + ( + ) + (T + >)>>> + +> + + > + + + + > + ; "Doesn't do any screen output, returns len" + ; "Erase old desc." + + ; "Print new HERE desc." + + + + + ; "Back to main screen.")>> + +> 0> + )> + >> + +)) + + + + ; + ) + (T + )> + + ) + ;( + ) + (T + + + ; "Says to capitalise all words" + + ; + > + + + + )>)>> + + 80>> ; "Blood pressure." + ; "Previous blood pressure." + +> + + > + + + + > + ; "Erase old numbers." + + + + + + ; "Back to main screen.")>> + +) + (DIASTOLIC )) + > + +>> + +>> + +)) + + )> + > + ) + (T + + + )>> + +)) + + )> + > + )> + > + + + T> + + + T> + +> + + ) + (T + )>> + + + + > + +> + + + )>) + ( + ) + (T + )>)> + > + + + + + + + + + + + > + + + > + > + )> + + > + > + T) + ( + > + + > + > + + )> + + + ) + ( + )> + + >) + (T + >)> + T) + (T + + ,FATAL-VALUE)>) + (T + <>)>> + + + +> + +> + +> + > + + >> 2> + 3>> + > + +> + +> + + + + + + ;"Slightly hunger" + ;"Hungry" + ;"Very hungry" + ;"Famished" + ;"Delirious" + + ;"Offset for error messages" + ;"Offset for msgs during eating." + ;"Offset for msgs when hunger achieved." +; ;"Offset for hunger probs." +; + ;"Offset for msgs if try eating LLAMA food." + + + + + + + ; + >> + + + +> + +) "AUX" (H:FIX ,HUNGER) PR:FIX H1:FIX) + + >)> + + + > + ) + ( <==? .CONTEXT ,M-WINNER>> + ;> + ; .H1>> + + + ; + + > + > + CR> + + ,FATAL-VALUE) + (ELSE <>)>)>> + + + >)> + + <==? <* > 40> ,HUNGER:FIX>> + + )> + )> + .H1> CR> + T) + (T + > + <>)>> + + + > CR>> + +> + +> + + + + + + T) + ( + > + + ,FATAL-VALUE) + ( + + T) + (T + <>)>> + + .STR>> + +) (STRING? <>)) + + + + + + ) + ( + ) + (T + )> + + ) + ( + > + )> + ) + (T + )> + > + + + + ) + (T + )> + > + + + + > + +> + + + + + > + + + + + +> + + 5> ; "Atari ST?" + >)> + + + + + + > + > + ) + (; 8> + + + ; 8>> ; "ITALICS BIT SET?" + + > + + + + >> + + + ) + (T + )> + + )> + >> + ) + (T + > + + > + >)> + + + )> + >>)> + ;> + ; + ; + ; + ; + T> + + + <>) + (T + + T)>> + +)) + + )> + + > + +)) + + )> + + > + +)) + + )> + + > + > + +)) + + )> + + > + > + +)) + > + +)) + > + + + )> + + > + > + +> + +;)) + + )> + > + +> + +) (VOWEL T)) + + )> + + + )> + ) + (T + )> + > + +> + +> + +)) + + )> + + ) + (T + )>> + +)) + + )> + + ) + (T + )>> + + + + > 0> + )>>)> + T> + + + <>> + + + <>> + +> + +)) + + + + "ly " + PNEXT " to "> + + ) + (T + )> + > + + +
>> + +) (WORD3 <>) "AUX" WD OFWD) + + 0>> + > + > + > + >> + T) + (T <>)>) + (T <>)>> + +) (WORD3 <>) "AUX" WD OFWD) + + 0>> + > + > + > + >> + T) + (T <>)>) + (T <>)>> + +) (WORD3 <>) + "AUX" O I OOF IOF) + + ) + (T + )>> + +) (WORD3 <>) "AUX" ADJ) + + > + > + T) + (T <>)>) + (T <>)>> + +) (WORD3 <>) "AUX" ADJ) + + > + > + T) + (T <>)>) + (T <>)>> + +) (WORD3 <>)) + + ) + (T + )>> + + + + + T) + (T + <>)>) + ( + + T) + ( + + T) + ( + + T) + ( + > + + T) + (T + <>)>> + +> + > + T> + +)) + + + ) + (T + )> + + T> + +> + +; + T> + + ) + ( )> + T> + +> diff --git a/mumble.zil b/mumble.zil new file mode 100644 index 0000000..6bebd15 --- /dev/null +++ b/mumble.zil @@ -0,0 +1,295 @@ +"MAZE-PROG for BUREAUCRACY: Copyright (C)1987 Infocom, Inc. + All rights reserved." + + + + + +> +> +> +> +> +> + +>>> + +) N:FIX + (TS >) + (COLS:VECTOR ,TST) (CS <1 .COLS>)) + >> + >> + )> + 1>> + .CS> + > + >) + (> + > + > + + >) + (T + + >)>> + ) + (ELSE .CH)>> + +> + > + >) + (T + )>> + .ST>> + ,TST>> + +" 0 ==> space, 1...26 ==> A...Z, 27...53 ==> a...z, + 54 ==> . + 55 ==> , + 56 ==> ; + 57...63 ==> 0...6 +" + +> + 0) + (> + >> + <- .CHAR -1>) + (> + >> + <- .CHAR -27>) + (> + >> + <- .CHAR -57>) + (<==? .CHAR > 54) + (<==? .CHAR > 55) + (<==? .CHAR > 56)>> + +TEXT.FILE"> + +> + + + + + + + % %>> + +> + +> + +> + +> + + >> + 0 0 >> + + + + ) + (T + )> + ; "Clear written bits for appropriate quadrants" + ) RT TOP (CQ 3)) + + > + ) + (<==? .CQ 1> + + ) + (<==? .CQ 2> + + >) + (T + > + >)> + 255> + 1> 255> + .TOP>> + + *77*>> + > > + )>> + > > + )>> + > + > 0> )>> + )> + <+ .QN 1>>> + <+ <* .QN 2> 1>>> + > + ; "e.g., q0 makes 1/4 screen's worth of chars; 1/4 of those + (1/16 of total) will be good; + q1 is 1/2 & 3/16; + q2 is 3/4 & 5/16; + q3 is 1 and 7/16. q0 good chars are confined to q0; q1 to + q0&q1, etc. Further, a bad char may not overwrite an existing + good char, but q0 clears all good bits; q1 all but q0; q2 all + but q0 & q1; etc" + > 0>> + )> + > 0>> + )> + + > + )>> + <>> + +> + + )> + >> + > >> + >> + > >> + > + .X .Y>)>> + +> + > *300*>> + + > + ; "Q2 can write on stuff dumped by the Q3 and Q4 progs, but + not Q1 or Q2..." + <>) + (.SET? + > + ) + (T T)>> + +> + + + 1>>> 1>> + )> + >> + > + >> 1>> + > + > + > + > + )) + ) + (>> + + + ; "Start at virtual top left (this is actual char + addr last written in this mode, so OK to add + 1 below" + >>> + 255> + )> + >> + 255> + )> + > + >)> + > + >)> + ) + (> > + ; "End of line, so go to next" + > > + ; "End of quadrant, so go to next" + + .Y> + > + > .QN> + )> + > + > + > + ; "255 means never touched, so make sure we + get 0" + > + 255> + )> + >> + 255> + ) + (> + >)> + > + ) + (T + )> + >)>> + >) + (T + + + .Y>)> + )>>>> + + + +> + +) SW) + > + >> + + <- ,FIELD-DATA-OFFSET 1>>> + > ,COMPUTER-WIDTH> + + ) + (T + >)>)> + >>> + >>>>)>)> + + 1>>) + (T + )>> + +> + ) + ( 1>>>) + ( 27>>>) + ( 57>>>) + (ELSE >>)> + .N> + + + + > diff --git a/nairport.zil b/nairport.zil new file mode 100644 index 0000000..944c4b8 --- /dev/null +++ b/nairport.zil @@ -0,0 +1,2330 @@ +"AIRPORT for BUREAUCRACY: Copyright 1987 Infocom, Inc. All rights reserved." + + + + + + + + + + + +> + + T) + ( + T) + (T + <>)>> + + + +> + +)) + + + ,FATAL-VALUE) + ( + + + T) + (T <>)>) + ( + <>) + ( + ,PERIOD> + T) + ( + ,PERIOD> + T) + ( + + T) + (T + <>)>> + + + + + + + T> + +"IMPORTANT: The word AIRLINE must be the first non-specific airline synonym!" + +> + +> + +> + +> + +> + + + + + + + + + +>> + >) + (T + )>> + +)) + + > + .MAN>)> + > + 2>>> + >)> + > + 2>>> + >)> + > + + > + ) STR) + > + > + >> + + ) + ( + + ) + (T + )> + > + + <>) + (T + > + + <==? .NAM >> + + <==? .ADJ > + <==? .ADJ >> + + )>)> + > <- ,PSAIR-LEN 1>> + + > + )> + >>> + .OBJ)>> + + + + + + + + + + + + + + + + + + + + > + +> + + T) + ( + <>) + ( + + T) + ( + ; "See if we're at the entrance for the airline referred + to..." + >> + > + ) + (T + )>) + (T + )> + T) + (T + <>)>> + + + + + + T) + ( + <>) + ( + + + T) + ( + + T) + (T + <>)>> + +) "AUX" TBL) + + )> + > + " and " + " to the north, " " and " + " to the east, and " " and " + " to the west." CR> + T> + + + + + + + ) + ( + + )>)> + + <>) + ( + + + T) + ( + + + )> + + T) + ( + + T) + (T + <>)>> + + + + + <>) + ( + + + T) + ( + + + T) + ( + + ) + (T + )> + T) + ( + + ) + (T + )> + T) + ( + + ) + ( + ) + (T + )> + T) + ( + + ) + ( + ) + (T + )> + T) + ( + + ) + ( + ) + (T + + )> + T) + ( + + ) + (T + )> + T) + (T + <>)>> + + + +)) + + + > + + >) + (T + )> + T) + ( + <>) + ( + + + ) + (T + )> + T) + ( + > + + T) + (T + <>)>) + ( + > + + > + + ) + (T + )> + )> + + + + + ) + (T + )> + T) + ( + + ) + (T + )> + T) + ( + + ) + (T + )> + T) + ( + >> + + + T) + ( + + T) + ( + + T) + (T + <>)>> + +> + + + > + + + )> + T> + + + + + + + +> + + .X) + ( + <>) + ( + + + ) + (T + )> + + T) + ( + + + T) + (> + + ) + (T + )> + T) + (> + <>) + (T + + <>)>) + ( + + + T) + ( + + T) + (> + + + T) + (T <>)>) + (> + <>) + (T + + T)>) + ( + + + + + + ,CONNECTED> + + > + )> + T) + (T + + T)>) + (T + <>)>> + + + ) + ( + )> + <>> + +> + <>) + ( + + T) + ( + + T) + (T + + + + + > + >) + (T + + > + >)> + + > + )> + + + >) + (T + >)> + > + .X)>> + + + T> + + + + T) + ( + + + ) + (T + + )> + T) + ( + + + T) + (T + + + + + + + + + + > + + T)>> + +> + +> + + + + + + + T) + (T + <>)>) + ( + + T) + ( + > + ,FATAL-VALUE) + (T + <>)>> + + + + + +> + + " check-in desk">> + + + <>) + ( + + T) + (T + <>)>> + + + + + <>) + ( + >> + + T) + (T + <>)>> + + + + + <>) + ( + >> + + T) + (T + <>)>> + + + + + <>) + ( + + T) + ( + + ) + (T + )> + T) + ( + + ) + (T + )> + T) + ( + + ) + (T + )> + T) + ( + T) + (T + <>)>> + + + + + + T) + (T + <>)>) + ( + + T) + ( + + T) + ( + + T) + (T + <>)>> + + + +)) + + + T) + ( + <>) + ( + <>) + ( + + T) + (T + <>)>> + + + + + + ,FATAL-VALUE) + (T + + T)>> + + + + + + + T) + (T + <>)>) + ( + + T) + ( + + T) + (T + <>)>> + + + + + + + + + ,FATAL-VALUE) + ( + <>) + ( + + T) + ( + + T) + ( + > + ,FATAL-VALUE) + (T + <>)>> + +"*** AIRPORT ***" + + + +)) + + + + T) + (T + <>)>> + +) "AUX" LEN TBL) + + > + > + ) (LST2 <>) AIR) + ,HERE> + > + ; "Found an airline for this entrance" + + + ) + (T + )>) + (T + )>)> + >> + > ,PSAIR-LEN> + ) + (T + )>)> + )>> + + + ) + (T + )> + T> + + + +)) + + + + T) + (T + <>)>> + + + +)) + + + + T) + (T + <>)>> + + + +)) + + + + T) + (T + <>)>> + + + +)) + + + + T) + (T + <>)>> + + + +)) + + + + T) + (T + <>)>> + + + +)) + + + + + T) + (T + <>)>> + + "Omnia Gallia" ENT-B + ,PSAIR-GALLIA + <> "Interflug" ENT-B ,PSAIR-RANDOM + <> "Nordair" ENT-A ,PSAIR-RANDOM-NV + "Trans World" ENT-A + ,PSAIR-RANDOM-NV + "Air Caribe" ENT-A + ,PSAIR-RANDOM + <> "American" ENT-C ,PSAIR-RANDOM + "Air Toronto" ENT-C + ,PSAIR-RANDOM + "Guyana Airways" ENT-C + ,PSAIR-RANDOM-NV + "Cathay Pacific" ENT-C + ,PSAIR-RANDOM-NV + "Air Guadeloupe" ENT-B + ,PSAIR-RANDOM + "Air Zalagasa" ENT-A + ,PSAIR-ZALAGASA + "British Airways" ENT-D + ,PSAIR-RANDOM-NV + "Aer Lingus" ENT-D + ,PSAIR-RANDOM + "Nocturnal Aviation" + ENT-G ,PSAIR-RANDOM-NV + "Air Canada" ENT-D + ,PSAIR-RANDOM + <> "Alitalia" ENT-E ,PSAIR-RANDOM + <> "Icelandair" ENT-E ,PSAIR-RANDOM + <> "Lufthansa" ENT-F ,PSAIR-RANDOM-NV + <> "Braniff" ENT-E ,PSAIR-RANDOM-NV + <> "Delta" ENT-F ,PSAIR-RANDOM-NV + "Air India" ENT-F ,PSAIR-RANDOM + <> "Aeroflot" ENT-F ,PSAIR-RANDOM + <> "Continental" ENT-D ,PSAIR-RANDOM-NV + <> "Swissair" ENT-G ,PSAIR-RANDOM-NV + <> "Eastern" ENT-B ,PSAIR-RANDOM + <> "Singapore" ENT-D ,PSAIR-RANDOM-NV + <> "Qantas" ENT-G ,PSAIR-RANDOM-NV + "El Al" ENT-G ,PSAIR-RANDOM>> + +> + + + + "Room you entered concourse from." + + + + ,AIR-A> + + + ,ENTERED-FROM> + +> + + + <>> + + + + + ) + (T + > + >> + > 0> + )>>)> + <>> + +> + )> + >>> + > + .TBL> + +> + ,PSAIR-GALLIA> + > + ,PSAIR-ZALAGASA> + >>>) + (T + )>> + ,PSAIR-RANDOM-NV> + ; "Omnia Gallia, Air Zalagasa, and anything that's + PSAIR-RANDOM as opposed to PSAIR-RANDOM-NV" + )> + + ; "Copy airline's synonyms into AIRLINE-DESK object." + + + ; "Number of synonyms." + > + > + )> + > .LEN> + )>> + + ; "Copy airline's adjectives into AIRLINE-DESK and AIRCLERK." + + + ; "Number of adjectives." + > + > + + > + + )> + > .LEN> + > + )>> + + ; "Select sex of AIRCLERK randomly." + + > + + + + + ) + (T + + + + )> + <>> + +) + (ACTION AIR-A-F) + (THINGS PSEUDO-VEC)> + +)) + + + + T) + ( + + + <>) + ( + + <>) + (T + <>)>> + +) + (GLOBAL AIRPORT-CROWD SKYCAPS SIGNS AIRPORT-MUSIC) + (ACTION AIR-B-F) + (THINGS PSEUDO-VEC)> + + " Desk"> + T> + +)) + + + + ) + (T + )> + + + ) + (> + )> + + + T) + ( + + + ,PSAIR-GALLIA> + > + + ) + (T + + )> + <>) + ( + ,PSAIR-GALLIA> + > + + + ) + (T + )> + <>) + (T + <>)>> + +) + (ACTION AIR-C-F) + (THINGS PSEUDO-VEC)> + +)) + + + + T) + ( + + + <>) + ( + + <>) + (T + <>)>> + +> + + ,PILLAR-A> + +) + (GLOBAL AIRPORT-CROWD PILLAR PSIGNS AIRPORT-MUSIC) + (ACTION PILLAR-A-F) + (LDESC "You're halfway up the pillar.") + (THINGS PSEUDO-VEC)> + + + ,PILLAR-B> + + + > + + ,AIR-C) + (T + + + <>)>> + +)) + + > + + + T) + (T + <>)>) + (T + <>)>> + + + + + ,PILLAR-A> + +)) + + + + + T) + ( + > + + + T) + (T + <>)>) + (T + <>)>> + + + + + ,DUCT-B> + +)) + + + + + T) + ( + + + <>) + (T + <>)>> + + + + + ,DUCT-C> + + + ,DUCT-A> + + + + + ,DUCT-D> + + + ,DUCT-B> + + + + + ,DUCT-C> + +)) + + + + + T) + (T + <>)>> + + + +)) + + + + + T) + ( + + + )> + + > + + + + + )> + + + + + )> + + + ) + (T + )> + + T) + (T + + + )> + + + T)>) + ( + + <>) + (T + <>)>> + + + + +"*** FATSO ***" + + + +)) + + + T) + ( + <>) + ( + + + T) + (T + <>)>) + ( + + ,FATAL-VALUE) + ( + + T) + ( + + T) + (T + <>)>> + +> + +"*** AIRLINE CLERK ***" + + + + " clerk"> + T> + +)) + + + + ) + (T + )> + T) + ( + + + ) + ( + + + ) + ( + + )>) + ( + + + ) + ( + + )>)> + + + + + ,FATAL-VALUE) + ( + <>) + ( + + + T) + (T + + T)>) + (T + <>)>) + ( + + ,FATAL-VALUE) + (T + <>)>) + ( + > + )> + T) + ( + > + )> + T) + (T + <>)>> + + + + + + T) + (T + <>)>> + +)) + + )> + + + + + T> + +)) + + )> + + + + + T> + +)) + + )> + + + T> + + +"*** CONTROLLERS ***" + + + +) "AUX" (FLIGHT <>)) + + + )> + + + ,W?FLIGHT ,W?OMNIA + ,W?GALLIA>>> + )> + + + + > + + > + + + > + + + >> + + ) + ( + + > + + ) + ( + + > + + ) + ( + + + ) + ( + + )>) + ( + + + )>)> + + ,FATAL-VALUE) + ( + .CONT>) + ( + + + ) + ( + + )> + .CONT>) + ( + <>) + ( + + T) + ( + + T) + ( + + T) + (T + <>)>> + +)) + + )> + + T> + +)) + + )> + + + + T> + + + )> + T> + + + )> + T> + + + + > + + + ) + (T + )> + <>) + (T + + T)>> + +"*** FLIGHT 42 ***" + + + + > + ,P-IT-OBJECT) + ( + ,FLIGHT-42) + (T + + ,AIRLINE)>> + + + + +)) + + + > + + ) + ( + > + + ) + ( + > + + + > + + + >> + + ) + ( + > + + + ) + ( + + )>)> + + ,FATAL-VALUE) + ( + + T) + ( + + + > + ) + (T + )> + T) + ( + + T) + ( + > + ) + ( + ) + (T + + + ) + (T + )>)> + T) + ( + + T) + ( + + + T) + ( + <>) + ( + + T) + ( + + T) + (T + + T)>) + (T + + T)>) + ( + > + + >> + + T) + ( + + T) + ( + + T) + (T + <>)>> + +> + + + > + + + ) + (T + )> + T) + (T + )>> + +> + + )> + T> + +> + + )> + T> + +"*** AIRPORT CROWD ***" + + + +)) + + <>) + ( + + + T) + (T + <>)>) + ( + + ) + ( + ) + (T + )> + ,FATAL-VALUE) + ( + + ) + ( + ) + (T + )> + T) + ( + + ) + ( + ) + (T + )> + T) + (T + <>)>> + +> + + +"Airport interrupt stuff" + TERM-TABLE> + 'JUST-HEARD? <> + 'JUST-PAGED? <> + 'TERMINAL-MUZAK 0 + 'PATRONS + >> + + + > + .IT>) + ( + >) + ( + + + )> + + + + + + )> + + + )> + > +" please pick up the white courtesy phone.\"" CR> + ) + ( + > + > ,NUMBER-OF-TUNES> + )> + + + )> + + + + + )> + + ) + (T + .IT>)>> + + + + + +> + +> + + .DESK>) + ( + )> + + + + + + ) + ( + + + )> + + + ) + ( + + ) + ( + + + ) + (T + )> + + + + + ) + ( + + )> + + > + + + > + + + + + + + + + > + + + > + +> + + + ) + ( + + )> + + + > + +> + + .DESK>) + ( + )> + + + + ) + ( + + )> + + > + + + ", "> + + > + + + + > + + + + + > + +> + + + + )> + + + + ) + (T + )> + > + + + + + > + >)> + > + + + .CONSOLE>) + ( + )> + + + + ) + ( + + )> + + + )> + + + + ) + ( + + )> + + + )> + + + + + + )> + + )> + + + + )> + + + )> + + + > + + + + > + diff --git a/njet.zil b/njet.zil new file mode 100644 index 0000000..a1c71dc --- /dev/null +++ b/njet.zil @@ -0,0 +1,1028 @@ +"NJET for BUREAUCRACY: Copyright 1987 Infocom, Inc. All rights reserved." + + + + + +> + + T) + ( + T) + (T + <>)>> + + + + + <>) + ( + + T) + ( + + ) + (T + + + + + + ) + (T + )> + + + ) + (T + + )> + )> + T) + ( + + T) + ( + > + + T) + ( + + T) + (T + <>)>> + + + +)) + + + T) + ( + <>) + ( + + T) + ( + <>) + ( + + + ) + (T + )> + T) + (T + <>)>> + + + + + + + T) + (T + <>)>) + ( + > + + T) + ( + + T) + (T + <>)>> + + + + + + + > + ) + (T + + >)> + T) + ( + + > + T) + ( + + T) + ( + 6> + ) + (T + )> + T) + (T <>)>) + ( + + T) + ( + > + T) + ( + + + + T) + ( + + T) + ( + > + + T) + ( + + T) + (T + <>)>> + + + ) + ( + )> + ,SEAT> + + + + + <>) + ( + + T) + (T + <>)>> + + + + + <>) + ( + + T) + (T + <>)>> + + + + + + + <>) + ( + > + + + )> + <>) + ( + + + ) + (T + )> + + T) + ( + + <>) + (> + <>) + (T + + + + + + >)> + + T)>) + ( + + T) + ( + + T) + (T + <>)>> + +> + ) + (T + + )> + T> + + + + T) + (> + + T) + (T + + + > + )> + + + T)>> + + + + + + + T) + (T + <>)>) + ( + + + + T) + ( + + T) + ( + + T) + (T + <>)>> + + + + + + + T) + (T + <>)>) + ( + + T) + (T + <>)>> + + + + + + > + ) + (T + )> + T) + ( + > + + + ) + (T + )> + T) + ( + + T) + (T + <>)>) + ( + + ) + (T + )> + T) + (T <>)>> + + + + + +) X) + + )> + + + > + > + T) + ( + + T) + (T + <>)>) + ( + + + ) + (T + )> + + + )> + + T) + ( + + + + ) + (T + )> + T) + (T + + + + )> + + + )> + + T)>) + ( + > + ) + (T + + )> + T) + (T + <>)>> + + + + + + + T) + (T + <>)>) + ( + + T) + ( + + ) + (T + )> + T) + ( + + ) + (T + + )> + T) + ( + > + ) + (T + + )>) + (T + <>)>> + + + + + + T) + ( + + + + ) + ( + + )> + + ) + ( + + + )> + + + + ) + ( + > + > + + )> + + + )>)> + + + + )> + .CHUTE>) + ( + + + ) + ( + + )> + + + )> + + T) + ( + + T) + ( + + + T) + ( + + T) + ( + + ) + (T + )> + T) + (T <>)>> + + + + + ) + (T + + + ) + (T + + + + + + )>)> + T> + + + + ) + ( + + + )> + + + T> + + + + + <>) + ( + + + )> + + T) + ( + + T) + (T + <>)>> + + + + + <>) + ( + + T) + ( + + T) + ( + + T) + (T + <>)>> + + + + + <>) + ( + + T) + ( + + T) + ( + + T) + ( + + + T) + ( + + T) + ( + + T) + ( + + T) + (T + <>)>> + + + + + + + + + T> + + + + T> + + +"*** AIRPLANE ***" + + + +)) + + + + + )> + + T) + (T + <>)>> + + + + + ) + (T + )> + T> + +)) + + + + )> + + T) + (T + <>)>> + + + + + T> + +)) + + + + ) + (T + )> + + T) + (T + <>)>> + + + + > + T) + (T + <>)>> + + + +)) + + + T) + (T + <>)>> + + + +)) + + + T) + (T + <>)>> + + +"*** STEWARDESS ***" + + + + + +)) + + + T) + ( + + + ) + ( + + + ) + ( + + )>) + ( + + + ) + ( + + )>)> + + ,FATAL-VALUE) + ( + <>) + ( + + + T) + (T + <>)>) + ( + <>) + ( + + T) + ( + + T) + ( + + T) + (T + <>)>> + +)) + + )> + + + T) + ( + + + )> + + > + + ) + (T + )> + + + T) + (> + + + ) + (T + )> + + + T) + (T + + + ) + (T + )> + + + + + ) + (T + )> + + )>) + (T + )> + T> + +> + +)) + + )> + + ) + ( + ) + (T + )> + T> + +)) + + )> + + ) + (T + )> + T> + +"*** PURSER ***" + + + +)) + + + T) + ( + <>) + ( + + + T) + (T + <>)>) + ( + + + ,FATAL-VALUE) + ( + + T) + (T + <>)>> diff --git a/nmaze-program.zil b/nmaze-program.zil new file mode 100644 index 0000000..bc31f33 --- /dev/null +++ b/nmaze-program.zil @@ -0,0 +1,260 @@ +"MAZE-PROG for BUREAUCRACY: Copyright (C)1987 Infocom, Inc. + All rights reserved." + + + + + +> +> +> +> + 1>> +> + 1>> + 2>> +> + 4>> + 4>> + 4>> + +>>> + +>> + +> + +) N:FIX) + >> + + + ) + (ELSE .CH)>> + +)) + + + + > + > + )> + + >)> + T> + > + + > + >> + + ; + > + > + > .K> + )>> + >) + (ELSE )>>> + .TBL>> + +> +> + + )> + + <+ .J ,COMPUTER-WIDTH 1>) + (ELSE + <+ .J 1>)>> + + <- .I ,COMPUTER-HEIGHT/2 -1>) + (ELSE + <+ .I 1>)> + > <+ .I 1>>>> + > ,COMPUTER-WIDTH> + > + )>> + ,TST2> + +" 0 ==> space, 1...26 ==> A...Z, 27...53 ==> a...z, + 54 ==> . + 55 ==> , + 56 ==> ; + 57...63 ==> 0...6 +" + +> + 0) + (> + >> + <- .CHAR -1>) + (> + >> + <- .CHAR -27>) + (> + >> + <- .CHAR -57>) + (<==? .CHAR > 54) + (<==? .CHAR > 55) + (<==? .CHAR > 56)>> + +TEXT.FILE"> + +> + >>> + + + + + + +; +
+
+
>> + + % %>> + +> + +> + +> + +> + + + + > + + *77*>> + > ,COMPUTER-HEIGHT/2> + )>> + > .RANGE> )>> + + > 0> )> + 1>> + > + 1>> + + > + .MASK> + > + > + + )> + + > + )> + >)>) + (ELSE + > + > + )>> + > + + + <+ .H ,COMPUTER-HEIGHT/2>>) + (ELSE + )> + > 0> + + > 0> + )> + + 1>> + + + ,COMPUTER-HEIGHT/2-1>>) + (ELSE + + 1>>)>) + (<==? .QN 0> + 1>> + + ,COMPUTER-HEIGHT/2-1>>) + (ELSE + + ,COMPUTER-WIDTH/2-1>> + + ,COMPUTER-HEIGHT/2-1>>)> + > 0> + )> + > + > + )>> + <>> + + + +> + +) SW) + > + >> + + <- ,FIELD-DATA-OFFSET 1>>> + > ,COMPUTER-WIDTH> + + ) + (T + >)>)> + >>> + >>>>)>)> + + 1>>) + (T + )>> + +> + ) + ( 1>>>) + ( 27>>>) + ( 57>>>) + (ELSE >>)> + .N> + +;) + (QL:FIX ) + (QR:FIX ) + (QT:FIX ) + (QB:FIX )) + + > + T) + (ELSE <>)>> diff --git a/nnairport.zil b/nnairport.zil new file mode 100644 index 0000000..c5596e0 --- /dev/null +++ b/nnairport.zil @@ -0,0 +1,2815 @@ +"AIRPORT for BUREAUCRACY: Copyright 1987 Infocom, Inc. All rights reserved." + +"Current airport theory: There are N (,AIRPORT-ROOMS) parallel sets of rooms: +1 through N-1 are random airlines, N is Air Zalagasa. Every entrance except +N has a sign for Air Zalagasa; the first entrance you arrive at has a sign +for Omnia Gallia, which is accurate. +The Omnia Gallia desk is just being closed when you arrive at it; you are +directed to Air Zalagasa. Following the signs will lead you in a circle. +You have to go outside and find the entrance that isn't Air Zalagasa, where +you will find the AZ desk. +You can either exchange your ticket for a direct flight, which costs too much, +or you can get a flight through Zalagasa for the price of the ticket. Once +the ticket has been exchanged, you realise that the flight you've been hearing +about is the one you're on, and it's gonzo. The ticket agent refers you to +Omnia Gallia, since it's really their ticket. + +1) You can't exchange your ticket until Omnia Gallia has been sold, which +happens when you see their desk. +2) You can't ever arrive at your gate: when you exchange tickets, you are +informed that the flight has already left the gate, so there's no gate to go +to. This happens even when the flight is recalled. +3) You must therefore recall the flight via the controllers, and arrive at +the gate on the shoulders of the cheering crowd. If you haven't exchanged +your ticket, you won't be allowed on the airplane, and will probably have +a stroke. +" + + + + + +) + (AT-ZALAGASA? BYTE 0) + (WAITING-FOR-CASH? BYTE 0) + (TICKET-SCREW? BYTE 0) + (PILLAR-MENTIONED? BYTE <>) + (DUCT-NUMBER BYTE 0) + (FLIGHT-RECALLED? BYTE <>) + (FLIGHT-GONE? BYTE <>) + (TOWER-SCRIPT BYTE 4) + (SPEAKER-DEAD? BYTE <>) + (MUSIC-DEAD? BYTE <>) + (AOS-BP? BYTE <>) + (CHANGE-DESK? BYTE <>)> + +> +;> + +; "So courtesy phone will be known, but never found" + + + + + + +> + + + ) + (T + )>) + (T + )> + T) + ( + > + ) + ( + T) + (T + <>)>> + + + +> + +)) + + + ,FATAL-VALUE) + ( + + + T) + (T <>)>) + ( + <>) + ( + + T) + ( + + T) + ( + + T) + (T + <>)>> + +"*** AIRPORT CROWD ***" + + + +)) + + <>) + ( + + + T) + (T + <>)>) + ( + > + ) + ( + ) + (T + )> + ,FATAL-VALUE) + ( + > + ) + ( + ) + (T + )> + T) + ( + > + ) + ( + ) + (T + )> + T) + ( + + + ) + (T + )>)>) + (T + <>)>> + +> + +) "AUX" N) + >> + + 2>> + ) + (T + )> + + + > ,AIRPORT-ROOMS> + )>> + + + + )> + + ; "Is loser carrying address book?" + >)> + + + ; + + + + T) + (T + ,AIRPORT-ENTRANCE)>> + +)) + + + .LB>) + ( + ; "Still carrying it?" + + + .LB>)> + + + + + ) + (> + ) + (T )> + + + ) + (T + )>) + (> + + ) + (T )> + ) + (T + )> + )> + + T> + + + + + + ,AIRPORT-ROOMS> + ,LANDF) + (T + + <>)>> + +> 1> )> + >> + .BIT> + +> .FACT>> + > + .BIT>> + ;<0? >> + + .BIT>>) + (T + )> + T> + + ,AIRPORT-ROOMS> + + <>) + (T + )>> + + + > + ,ZALAGASA-CONCOURSE) + (T + + ,AIRPORT-CONCOURSE)>> + +)) + + + ) + (T + >> + + ,AIRPORT-ENTRANCE)>> + +)) + + > + ) + (T + >> + + ,AIRPORT-ENTRANCE)>> + +)) + + ) + (<==? .CONTEXT ,M-LOOK> + + > + + ,AIRPORT-ROOMS> + )> + + T) + (T <>)>> + +;"Theory of airlines: there are 32 airlines known about. Of these, two + are special: Omnia Gallia and Air Zalagasa. Each entrance except + AIR-ZALAGASA-ENTRANCE has a pointer to AZ and some other airlines. + At that location in the concourse, there is some desk, neither AZ nor + any of the other airlines mentioned on the sign. The exception is that + OG's desk, which is closed, is always inside the entrance marked OG. + Whenever you visit an entrance, one of the signs is being changed from + X to Y." + +> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ,OMNIA-ID + ,ZALAGASA-ID + ,NOCTURNAL-ID + ,TRANS-GALAXY-ID + + ,TRANS-GALAXY-ID + ,ALLEGHENY-ID + ,FRONTLINE-ID + ,BOXCAR-ID + ,UNTIED-ID + ,NORTHWEST-ID + ,NORTHWEST-ID + ,NORTHWEST-ID + ,MASSIVE-ID + <> ,MASSIVE-ID + ,BIG-SKY-ID + ,PAN-UNIVERSAL-ID + ,QUANTUM-ID + ,GAMMA-ID + ,DISTRESS-ID + ,DISTRESS-ID + ,NEWZORK-ID + ,NEWZORK-ID + ,BRITISH-ID + ,FROG-ID + ,WORST-ID + ,WORSTED-ID + ,MOOSEHEAD-ID + ,FOSTER-ID + ,KIRIN-ID + ,LAPHROIG-ID + ,AMERICA-ID + ,TICKOFF-ID + <> ,KIWI-ID + ,KIWI-ID + <> ,AEROTICA-ID + + ,CONTINENTAL-ID + + ,GENERAL-ID + <> ,FRED-ID + <> ,FRED-ID + <> ,FRED-ID + ,BOING-ID + <> ,BOING-ID>> + + 0>> + + 2>) + (RES 0)) + > .RES>> + > 0> + )>> + .RES> + +) "AUX" (MSK 1) (N 16)) + + ;>> + >> + )>) + (T + > + ;<0? > + )>)> + > 1> + )> + >> + .MSK> + +>> + 0) + (T + *77777*>> + + >> )> + > 16> )> + >> + .N)>> + +) + W1 W2 U1 U2 OLD NEW) + > + > + > + >> + ; "Get all bits used so far." + > + 3>> + <0? .W2>> + ; "Haven't visited this room yet" + > + >)> + > + >)> + + > + > + > + >)> + )> + + > + > + > + >)> + )>> + + .W2>) + (.CHANGE? + + + + + > + -1>> + >>> + 16>> + " to " + 16>>>) + (T + > + -1>> + >>> + > + " to " + >>)> + + + .W2>) + (T + + )>> + + + ;>> + > CR>)> + > 15> )> + >>> + + + >) + (T + )>> + + + + + +; "Move around the concourse. Always skip the zalagasa concourse, no + matter where it is." +)) + >> + + > + ) + ( + + ) + (T + + ,AIRPORT-CONCOURSE)>> + +)) + >> + + > + ) + (<==? .N 0> + > + ) + (T + + ,AIRPORT-CONCOURSE)>> + +)) + + > + )> + > + > + ) + ( + <==? + >> + )>) + (<==? .CONTEXT ,M-ENTERED> + > + > + )>) + (<==? .CONTEXT ,M-LOOK> + > "; overhead are signs pointing to various +airlines:" CR> + + ) + (T <>)>> + +> + >> ": " + CR> + > 10> )>>> + +) + (NN <* <- .RN 1> 2>) WD + (FACT 0) (CS ,CURRENT-SIGNS) SOURCE TT + DEST) + > + + + + ) + (<==? .RN + > + ; "Omnia gallia desk is always in right place" + + ) + (T + + ; "Pick one of the neighboring entrances" + + > 0> + 2>>)>) + (> <* ,AIRPORT-ROOMS 2>> + )> + + >) + (T + >> + )> + ; "Pick a random airline that's listed on one of the neighboring + entrances. Air Zalagasa & Omnia Gallia will never be used." + > .FACT>>)> + ; "This will always be positive" + + ; "Zero vector of current signs" + + > 9> )>> + ; "Put air zalagasa in somewhere" + > + > + > + + ; "If at zalagasa, use omnia gallia instead." + + > + "west">) + (T + "east">)>) + (T + + > + "west">) + (T + "east">)>)> + > + .SOURCE + >> + ; "Find the airline ID" + ) + (> .SOURCE + >> + ; "Either way" + )> + > + > + + > + > + + + + + ) + (T + + + + )> + ; "Now pick a set of random airlines that are mentioned outside." + + > + )> + > 0> + > + )> + > + > + )> + )) + >> + ) + (T + >>> + )> + >>> + .WD> + ; "Don't include the airline whose desk is here..." + >) + (T )> + )>> + + > + .RN> "east") + (T "west")>> + > + >>> + +) "AUX" (LEN 2)) + >>>> + + + )>)> + )>>> + +> + + + + + + + +> + > + + + > + + ,ACTUAL-DESK) + ( + ,ACTUAL-ZDESK)>)>> + +> " desk">> + + + + ) + (T <>)>) + ( + + T) + ( + + + ) + ( + ) + ( + ) + (T + )> + T) + ( + + ) + ( + ) + ( + ) + (T + )> + T)>) + ( + ,OMNIA-ID> + >> + ) + ( + ,OMNIA-ID> + > + ) + (T + )>) + (T + <>)>> + +; "Room function" +) "AUX" SOURCE DEST LEN DEST2 TT) + + + ,OMNIA-ID> + + )> + > + ) + (T + )> + + > + ) + (> + )> + ) + (<==? .CONTEXT ,M-EXIT> + + + + > + + + 2>> + )> + <>) + (<==? .CONTEXT ,M-ENTERING> + + )> + ,OMNIA-ID> + + > + + + + <> <> 13>)> + .ADF>) + (<==? ,HERE ,ZALAGASA-DESK> + > + >> + ) + ( 1> + )> + ) + (T + + )> + <>) + (T <>)>> + + + + + > + ) + (T <>)>> + +)) + > + > + > + + > 1> )> + >>> + +> + + <>) + (> + > + .IT>) + (> + >) + ( + + )> + + + + )> + + )> + + ) + ( + + )> + + + + + >> + )> + + ) + (T <>)>> + +> + >> + + > + .DESK>)> + )> + + + + T) + (<==? .N 3> + + T) + (<==? .N 4> + + T)>> + + + > + > ", "> + + > + + + + > + + + + + > + +> + + + ) + (T + )> + + + ) + (T + )> + > + + + +> " clerk"> + T> + +)) + + + > + ) + (T + )> + T) + ( + + + + ) + ( + + ) + ( + + + ) + ( + + )>) + ( + + + ) + ( + + )>)> + + + + + ,FATAL-VALUE) + ( + <>) + ( + + + T) + (T + + + T)>) + (T + <>)>) + (T + + + + ,FATAL-VALUE) + (T + <>)>) + ( + > + )> + T) + ( + > + )> + T) + (T + <>)>)>> + +> + + + + T) + (T + <>)>> + +)) + + )> + + > + + + + + ) + (T + + )>) + (<==? .OBJ ,AIRLINE> + + ,OMNIA-ID> + <==? ,ZALAGASA-ID>> + + ) + (<==? + > + + ) + (T + + + )>) + (> + <==? .OBJ ,THE-FLIGHT>> + + )> + + + + + T> + +)) + + )> + > + > + + )> + + + + + T> + +)) + + )> + > + >> + + + + + ) + ( + > + + + + + + + ) + (T + + )>) + (> + > + + ) + (<==? .OBJ ,TICKET> + + + ) + (<==? .OBJ ,ZTICKET> + + + ) + (T + )> + + T> + + + + + + T) + ( + <>) + ( + + + >) + (T + )>) + ( + + T) + (T <>)>> + + +> -1> + >) + (T + )>> + +)) + + > + .MAN>)> + + <==? ,P-NUMBER 42>> + )> + > + 2>>> + >)> + > + 2>>> + >)> + > + + + > + > 30> + "?" CR> + )> + > + + .OBJ) + (T + > + + <==? .NAM >> + + <==? .ADJ > + <==? .ADJ >> + ; "Make sure this is always positive or -1" + > 0> + >)> + + )>)> + > 2> + + > + )> + >> + .OBJ)>> + +> + + + +> + > + + T) + ( + <>) + ( + + )> + T) + ( + ; "See if we're at the entrance for the airline referred + to..." + > + + ,ACT?ENTER>) + ( + > + > + + >> + >) + (T + + 1>>>)> + >>> + + ;>> + ) + (T + )>) + ( + > + + T) + (T + )>) + ( + > + "east"> + ) + (T + )>) + (T + )>) + (T + ,ACT?ENTER>)> + T) + (T + <>)>> + + + > + + +"ZALAGASA SECTION" + +; "Uses same routines as normal concourse" + + +) "AUX" VAL) + > + > T) + (> + + >> + + >>> + + )>)> + .VAL> + + + + + +> + >> + + > + .DESK>)> + + > + )> + + > + + > + + 3> + ) + (T + )> + + + + )> + + + + + + + ) + (<==? .N 3> + + + )> + + ) + (<==? .N 4> + ) + (<==? .N 5> + + + ) + (T + )> + + + + + ) + (<==? .N 6> + > + + .DESK>) + (T + )> + )>) + (T + )> + T> + + + > + + + > + + + > + +> + >>> + + + > + + + + )> + > + + + + + + + + + ) + (T + + + + + T)>) + (<==? .OBJ ,ZTICKET> + + + + + + + + )> + + + + T)>> + +>> + + + + + <>) + ( + + + T) + ( + + + T) + ( + + ) + (T + )> + T) + ( + + ) + (T + )> + T) + ( + + ) + ( + ) + (T + )> + T) + ( + + ) + ( + ) + (T + )> + T) + ( + + ) + ( + ) + (T + + )> + T) + ( + + ) + (T + )> + T) + (T + <>)>> + + + +)) + + > + + + T) + (T + <>)>) + (T + <>)>> + + + + ,PILLAR-B) + (<==? ,HERE ,ZALAGASA-CONCOURSE> + + ,PILLAR-A)>> + + + + ,PILLAR-A) + (T + + > + + ,ZALAGASA-CONCOURSE) + (T + + + + ) + (T + )> + + + >> + + + <>) + (> + + + <>) + (T + + ; "you dead, Jack" + + <>)>)>)>> + + + +)) + + + + + T) + ( + > + + + T) + (T + <>)>) + (T + <>)>> + + + + + +)) + + <>) + ( + + + ) + (T + )> + T) + ( + > + + T) + (T + <>)>) + ( + > + + > + + >) + (T + )> + )> + + + + + + ) + (T + )> + T) + ( + + ) + (T + )>)> + T) + ( + > + ) + (T + )>) + ( + > + ) + (T + )> + T) + ( + >> + + + T) + ( + + T) + ( + + T) + (T + <>)>> + +)) + + + > + + >) + (T + )> + T) + ( + <>) + ( + > + ) + ( + > + + > + + >) + (T + )> + )> + T) + ( + ) + ( + >> + + + T) + (T + <>)>> + +> + + + + + + )> + T> + + + + + + + +> + + .X) + ( + <>) + ( + + + ) + (T + )> + + T) + ( + + + T) + (> + > + ) + (T + )> + T) + (> + <>) + (T + + T)>) + ( + + + T) + ( + + T) + (> + > + + T) + (T <>)>) + (> + <>) + (T + + T)>) + ( + + + + + + ,CONNECTED> + + + )> + T) + (T + + T)>) + (T + <>)>> + + + ,P-IT-OBJECT) + ( + ,BWIRE) + (T <>)>> + + + .MW>) + ( + > + + > + + + + ) + (T + + )>)>)> + + <>) + ( + + T) + (T + + T)>> + + + T> + +> + + T) + ( + + + ) + (T + + )> + T) + ( + + + T) + (T + + + + + + + + + + + T)>> + +> + +> + + + + + <>) + ( + >> + + T) + ( + + ) + ( + <==? 0>> + ) + (T + )>) + ( + + + <==? 0>>> + + > + + + <>) + (T <>)>) + (T + )>) + (T <>)>> + + + + + <>) + ( + > + ) + (T + )> + T) + ( + ) + (T + <>)>> + + + +)) + + + <>) + (<==? .DN 2> + ) + (T + )>> + +)) + + ) + (T + + <>)>> + +)) + + ) + (T + + <>)>> + + 1> + ) + (T + + <>)>> + + 1> + ) + (T + )>> + +)) + + + ,TOWER-DUCT) + (T + >> + + ,DUCT)>> + +)) + + >>)> + + > + + + <>) + (T + ,PILLAR-B)>) + (T + + + ,DUCT)>> + + + <==? 1>> T) + (T <>)>> + +) "AUX" (DN )) + + )> + ) + (T )> + <>) + (<==? .CONTEXT ,M-LOOK> + + + + ) + (<==? .DN 2> + ) + (<==? .DN 3> + )>) + ( <>) + ( + <>) + ( + + T) + ( + + ) + ( + ) + (T + )> + T) + ( + + ) + (T + )> + T) + ( + + ) + (T + )> + T) + ( + T) + (T + <>)>> + + + +)) + + + + + T) + (T + <>)>> + +"*** FATSO ***" + + + +)) + + + T) + ( + <>) + ( + + + T) + (T + <>)>) + ( + + ,FATAL-VALUE) + ( + + T) + ( + + T) + (T + <>)>> + +> + + + + + + + + T) + (T + <>)>) + ( + + + + T) + (T + <>)>> + + + +)) + + + + + T) + (<==? .CONTEXT ,M-ENTERING> + + <>) + (<==? .CONTEXT ,M-ENTERED> + + + )> + > + + + + )> + + + + + )> + + + + T) + (T + + + )> + + + T)>) + (<==? .CONTEXT ,M-EXIT> + + + <>) + ( <>) + ( + + T) + ( + T) + (T <>)>) + ( + + + T) + (T T)>) + ( + T) + (T <>)>> + +> + >> + >)> + > + >> + + + .CONSOLE>) + ( + )> + + + + ) + ( + + )> + + + )> + + + + ) + ( + + )> + + + )> + + + + + + )> + + )> + + + + )> + + + )> + + + > + + + + > + + + + + + + T) + (T + <>)>) + ( + + T) + ( + > + ,FATAL-VALUE) + (T + <>)>> + +"*** CONTROLLERS ***" + + + +) "AUX" (FLIGHT <>) + (REQUEST <>)) + + + > + )> + + )> + + + <==? ,P-NUMBER 42> + <> + ,W?FLIGHT ,W?OMNIA ,W?GALLIA>>> + ) + ( + + >> + )> + + + <==? ,P-PRSA-WORD ,W?NO> + > + + ) + ( + >> + + ) + ( + + > + + >>> + + ) + ( + + > + + ) + ( + .REQUEST> + + ) + ( + + + ) + ( + + )>) + ( + + + )>)> + + ,FATAL-VALUE) + ( + .CONT>) + ( + + + ) + ( + + )> + .CONT>) + ( + <>) + ( + + T) + ( + + T) + ( + + T) + (T + <>)>> + +)) + + )> + + T> + +)) + + )> + + + + T> + + + )> + T> + + + )> + T> + + + > + >> + + > + ) + (T + )> + <>) + (T + + T)>> + + + + > + ,P-IT-OBJECT) + ( + ,THE-FLIGHT) + (T + + ,AIRLINE)>> + +)) + + + > + + ) + ( + > + + ) + ( + > + + + > + + + >> + + ) + ( + > + + + ) + ( + + )>)> + + ,FATAL-VALUE) + ( + + + > + ) + ( <>) + (T + )> + T) + ( + + T) + ( + + T) + ( + > + ) + (> + ) + (T + + > + ) + (T + )>)> + T) + ( + + T) + ( + + > + T) + ( + <>) + ( + + T) + ( + + T) + (T + + T)>) + (T + + T)>) + ( + > + + >> + + T) + ( + + T) + ( + + T) + (T + <>)>> + +> + +> + >> + + > + ) + (T + )> + T) + (T + <>)>> + +> + + )> + T> + +> + + + )> + T> + + + +> + + + ,FATAL-VALUE) + ( + <>) + ( + + T) + ( + + T) + ( + >> + )> + ,FATAL-VALUE) + (T + <>)>> \ No newline at end of file diff --git a/nnjet.zil b/nnjet.zil new file mode 100644 index 0000000..b0fb6a9 --- /dev/null +++ b/nnjet.zil @@ -0,0 +1,3506 @@ +"NNJET for BUREAUCRACY: Copyright 1987 Infocom, Inc. All rights reserved." + + + + + +"There are three scenarios. The first two that are played out turn out to + be dreams, as you discover when you wake up just before crashing into the + ground because your parachute didn't work. The third is real, and in that + one, assuming winnage, your parachute works and you land in the stew. + The scenarios are: + 1) Hijacking. The plane is hijacked by someone who decides to escape with + a randomly-chosen hostage, namely you. Why? Who knows. If you do the + wrong thing, you get blown away (of course, in the dream sequence you + just wake up). Maybe the airplane too. + 2) Bad breath. You foolishly eat your airline food. Failure to do so gets + you thrown off for being rude to the chef. If you do, you develop severe + halitosis, forcing you to go brush your teeth; failure to do so gets you + thrown off for being a chomper. When you brush your teeth, you can either + clean out the sink (per the sign), in which case you're delayed past the + seat-belt and return-to-seat signs coming on; you get thrown off for not + obeying that. Otherwise, you get thrown off for not cleaning out the + sink. + 3) Visa. You're required to fill out some entrance form, with a visa number + that you don't have and can't get. Failure to do so results in ejection." + +; "Actually move the cretinous player onto the plane..." + + + + + + + )> + + + + + ; "Put smoker/non-smoker in next seat." + + + T> + + + + + ) + ( + > + ) + ( + > + + ) + (> + ; "Not on the plane" + + T) + ( + T) + (T <>)>> + + +"Basic airplane stuff. Aisle to move around in, seats to sit in, etc." + +; "Generic AISLE room..." + + + + + +) (NEWVAL <>)) + + ,ROW-SEEN-BIT>>> T) + (T <>)>) + (T + ,ROW-SEEN-BIT>) + (T + + >)>>)>> + + )> + + + ,STARBOARD-DIVISOR> + *17*>) + (T + + <* .NEW ,STARBOARD-DIVISOR>>>)>> + + + )> + + + ,PORT-DIVISOR> + *17*>) + (T + + >>)>> + + )> + )> + .N> + ;>>> + + ; "Starboard side" + ) + (T + )>)>> + +> + + ,ALL-SEATS>> + + + + > + ,ALL-SEATS> + ) + (<0? .SEAT-MASK> + ) + (T + > + > + > + + >) + ( + > + >>>> + + >) + (T + + .FF? + T) + (T <>)>>)> + > + > 4> + )>>)> + + ) + (<==? .RARG ,M-BEG> + + + ,ALL-SEATS>> + >>> + + + + )>> + T) + (T <>)>) + ( <>) + ( + > + > + + ,M-EXIT>>> + )> + + )> + )> + + > + + + T) + ( + ) + ( + + T) + ( + + T) + ( + + T) + (T <>)>) + (T <>)>> + +) + (T + )> + + " and " CHAR >> + " are " .TAILSTRING> + ) + (T + )>> + + + )>> + +) + "AUX" (NEW-ROW ) (NEW-SEAT )) + + <==? .NEW-ROW ,CURRENT-ROW> + <==? .NEW-SEAT ,CURRENT-SEAT>> T) + (T <>)>) + ( + + <>) + ( + > + + + <>) + (T T)>) + (T + + <>)>> + + "OPT" (ROW: <>)) + )> + )> + .SEAT> + ;>>> T) + (T <>)>> + + FF? "OPT" (LAST? <>) "AUX" PERS) + + >> + + ) + (T + )>) + (T + + )> + ) + (T + )>> + + %) + (<==? .N ,SEAT-B> %) + (<==? .N ,SEAT-C> %) + (<==? .N ,SEAT-D> %)>> + +)) + ) + (T + )> + >> + +> + +"Wander the aisle. Front goes to Galley, back goes to area outside + lavatory." +)) + ,GALLEY>> + + + + )>> + + + + + ,GALLEY) + (T + > + > + + )> + + > + ,AISLE)>) + (<==? ,P-WALK-DIR ,P?SOUTH> + + ,LAV-LOBBY) + (T + > + > + + )> + > + + ,AISLE)>)>> + +>> + >)> + > + + + ; "North is forward, so east is to C & D" + + ) + (T + + )> + > + > + > + + <>) + (> + + <>) + ( + + + ,SEAT) + ( + + + ,SEAT)>> + +; "Miscellany around the seat." + + + <>) + ( + + + T) + (T + + + + T)>) + ( + + + + + T) + (T + )>)>> + + + +)) + + + + )>) + ( <>) + ( + + + )>)>> + + + + + + + + + )>> + + + + + )>> + + + + + + + + ) + (T + )> + T) + (T <>)>> + +> + >) + (T + + CHAR >>)>> + + <>) + ( T) + (T T)>> + + + <==? ,P-WALK-DIR ,P?WEST>> + + <==? ,P-WALK-DIR ,P?EAST>> + <==? ,P-WALK-DIR ,P?OUT>> + ; "Move into the aisle" + + + ,AISLE) + ( + <==? ,CURRENT-SEAT ,SEAT-D>> + + <>) + (T + + >>) + (T + >>)> + + > + + + ) + (T + )> + <>) + (T + + + ,SEAT)>)>> + +> + ".\"" CR> + T) + (T <>)>> + + +; "The seat itself" + + + + > + + >> T) + (T <>)>> + +) "AUX" (NEW-ROW ) + (NEW-SEAT )) + + + " on your unbelievably luxurious Air Zalagasa flight to wherever it is you're going." CR> + > + ) + (T + )> + + + + )> + + + > + + > + )> + + + )> + T) + (<==? .CONTEXT ,M-BEG> + + > + ) + ( + > + + T) + (T <>)>) + (<==? .CONTEXT ,M-EXIT> + T) + (T + + + + + )>)>) + ( <>) + (> + ) + ( + + + )> + T) + ( + + > + ) + (T + + )>)>) + ( + + + T) + ( + > + ) + (T + + + T)>) + ( + + ,M-EXIT>>> + )> + + <==? ,CURRENT-ROW .NEW-ROW> + <==? ,CURRENT-SEAT .NEW-SEAT>> + ) + ( ) + ( + + + ) + (T + + + )> + + + )>) + (T + )> + + + + > + )> + + T) + ( + + <==? .NEW-ROW ,CURRENT-ROW>> + ) + ( + + 0> + + >)> + ) + (T + )>) + (> T) + ( + + ) + (T + )>) + ( + + ) + (T + )>)>> + + + + )> + + > + + + > + )> + > + + + + + >> + + >>> + + )>)>> + +> +> + +)) + + + + > + <==? ,CURRENT-SEAT > + > + ; "Just returned to previous seat, so OK" + T) + (T + > + > + )> + > + )> + + + >> 0> + + + "! Please don't let it happen again.\"" CR CR> + )>)>)>> + +)) + + "Ma'am") + (T "Sir")>) + (,SEX "ma'am") + (T "sir")>> + +"Get personal belongings out of seat, and give them to steward for return." +) + "AUX" NOBJ LEN (N 0)) + > + > + >)> + + >> + > + > + > + + )> + ) + (T + >)> + )>>)> + .N> + +> + +; "Make sure we've got a good seat number, and set things up so the + parser will like it." + + + >> + + + + + +) + (NMLEN )) + > + > + )>)>)> + + + > + T) + (T <>)>) + (T <>)>) + (T <>)>) + (T <>)>> + +) + (NMLEN ) + TAB) + + > + <>) + ( + ,LAV-LOBBY) + (> + 2>> + 2>>> + ,LAVATORY) + ( + ; "Random person/object" + ) (VEC ) + (COULD-BE-PERSON? <>) TMP (WIN? <>) ONAM) + > + ; "Kludged due to compiler bug" + <==? .ADJ >> + <==? .NAM .ONAM>> + )>)> + + <==? .NAM .ONAM>> + )>)> + > ,OBJECT-BREAK> + + ) + ( + > + + ) + ( + >> + ; "Don't recognize any of these guys except + when they're actually present." + + + ) + (T + )> + + ) + (T + ; "Allow search to continue, since there may be + other matches later in the vector." + )>)> + > 3> + )> + .MATCH>)> + > + >>) + ( + > + + <==? .ADJ ,W?INTNUM> + > + + ) + (T + + + >)> + )> + + ,SEAT-A) + (<==? .NAM ,W?C> + ,SEAT-B) + (<==? .NAM ,W?D> + ,SEAT-C) + (<==? .NAM ,W?E> + ,SEAT-D)>> + ,SEAT)>) + ( + > + + > + >)> + + + ,SEAT) + ( + <==? .NAM ,W?INTNUM>> + + > + ,FATAL-VALUE) + (T + + ,AISLE)>) + ( + > + 1>> + >> + + > + ,FATAL-VALUE) + (T + + + ,SEAT)>)>> + +;"Object for useless random objects on the airplane: the escape + hatch, etc." + +> +> +> +> +> +> +> +> +> + + + + + + + + + + +)) + + ) + (<==? .WHICH ,HATCH-OBJECT> + ) + (<==? .WHICH ,FORM-OBJECT> + ) + (<==? .WHICH ,GRANDCHILDREN-OBJECT> + ) + (<==? .WHICH ,MEAL-OBJECT> + ) + (<==? .WHICH ,VISA-NUMBER-OBJECT> + ) + (<==? .WHICH ,COMPUTER-OBJECT> + ) + (<==? .WHICH ,BABY-OBJECT> + ) + (<==? .WHICH ,MOVIE-OBJECT> + ) + (<==? .WHICH ,RECIPE-OBJECT> + )>> + + T) + (T <>)>> + +) + "AUX" (WHICH ) + STR) + + + > <>) + (> <==? ,VISA-SCENE>> + <>) + (T + )>) + (<==? .WHICH ,VISA-NUMBER-OBJECT> + ) + ( <>) + (> + >> + ) + ( <>) + ( + > + + + ) + (T + )>)>) + (<==? .WHICH ,HATCH-OBJECT> + + ) + ( <>) + (> + "the hatch">) + ( + <>) + ( + + T) + ( + + ) + (T + + + T)>) + ( + + T) + ( + + + + T) + (T + + T)>) + ( + ) + ( + <==? ,HERE ,OUTSIDE-PLANE>> + + T) + (T <>)>) + (<==? .WHICH ,MOVIE-OBJECT> + > + ) + ( <>) + ( + ) + ( + > + > + ) + (T + )>)>) + (<==? .WHICH ,BABY-OBJECT> + > + ) + ( ,MOMMA-PERSON> + ) + ( + ) + ( + )>) + ( + <==? .WHICH ,RECIPE-OBJECT>> + > + ,BUSINESS-PERSON>> + ) + ( + + ) + (T + )> + T) + ( + ) + ( + + + <==? + ,BUSINESS-PERSON>> + <>) + (T + )>) + (T <>)>)>) + (<==? .WHICH ,GRANDCHILDREN-OBJECT> + > + ) + ( + + <==? ,PRSO ,RANDOM-PERSON> + <==? + ,GRANDMA-PERSON>> + <>) + (T + )>)>> + + + ,HATCH-OBJECT + <> + ,HATCH-OBJECT + <> + ,HATCH-OBJECT + <> + ,FORM-OBJECT + + ,FORM-OBJECT + + ,FORM-OBJECT + + ,FORM-OBJECT + + ,FORM-OBJECT + + ,VISA-NUMBER-OBJECT + + ,VISA-NUMBER-OBJECT + + ,VISA-NUMBER-OBJECT + + ,VISA-NUMBER-OBJECT + + ,VISA-NUMBER-OBJECT + + ,GRANDCHILDREN-OBJECT + <> + ,GRANDCHILDREN-OBJECT + <> + ,GRANDCHILDREN-OBJECT + <> + ,GRANDCHILDREN-OBJECT + <> + ,GRANDCHILDREN-OBJECT + <> + ,GRANDCHILDREN-OBJECT + + ,GRANDCHILDREN-OBJECT + + ,GRANDCHILDREN-OBJECT + + ,GRANDMA-PERSON + <> + ,GRANDMA-PERSON + <> + ,GRANDMA-PERSON + + ,COMPUTER-OBJECT + + ,COMPUTER-OBJECT + + ,COMPUTER-OBJECT + + ,COMPUTER-OBJECT + + ,COMPUTER-OBJECT + <> + ,COMPUTER-OBJECT + + ,BUSINESS-PERSON + + ,BUSINESS-PERSON + <> + ,BUSINESS-PERSON + + ,BABY-OBJECT + + ,BABY-OBJECT + + ,BABY-OBJECT + + ,MOMMA-PERSON + <> + ,MOMMA-PERSON + + ,MOMMA-PERSON + <> + ,MOMMA-PERSON + + ,MOVIE-OBJECT + + ,MOVIE-OBJECT + + ,SMOKER-PERSON + + ,SMOKER-PERSON + <> + ,SMOKER-PERSON + + ,PURSER-PERSON + <> + ,PURSER-PERSON>> + +> + + + +)) + + + <>) + (T <>)>> + + + +)) + + + <>) + (<==? .CONTEXT ,M-EXIT> + + + + + <>) + (T <>)>) + (T <>)>> + + + +> + >> + ) + (T + )>> + + + + + ) + (T + )>) + (T + + 0 ,W?SPOTLESS> + + )>) + ( + > + >> + ) + (T + )>)>)>> + + + + + +> + + + + + > + + T) + (T <>)>> + + + + + + + + + <>) + (<==? .CONTEXT ,M-EXIT> + + + ,FOOD-SCENE> + 5> + > + >> + ; "If cleaned sink, nail for not returning to seat." + + + + + + T) + (T <>)>) + (<==? .CONTEXT ,M-BEG> + + > + ) + (T + )> + + T) + ( + > + ) + (T + )> + > + T) + ( + + + + + T)>) + ( <>) + (> + ) + ( + + + ) + (T + + )> + + + T)>)>)>> + + + + + <>) + ( + + + + T) + ( + ; "This will unlock the door, and check for waking + up at the end of the food scene." + T) + (T + + T)>) + (T + <>)>) + ( + + ) + (T + + + )>) + ( + + + + ) + (T + )>) + (T <>)>> + + + + +> + + + + + + + + > + + + )>)> + .IB>> + + + +)) + .LEN> + ,RECEPTACLE) + (T <>)>> + + + + > + ) + (T + )> + T) + ( + > + + + ) + (T + )> + T) + ( + + T) + (T + <>)>) + ( + > + ) + (T + )> + T) + ( + + T) + (T <>)>> + + + +)) + > )> + + <>) + ( + > + > + )> + <>) + ( + + ) + (T + )> + + T) + ( + + <>) + (> + <>) + (T + + + + + >)> + + T)>) + ( + > + + > + + T) + (T + + T)>) + ( + + T) + ( + > + + T) + ( + + T) + (T + <>)>> + +> + ) + (T + > + )> + T> + +> + + T) + (> + + T) + (T + + + + + T)>> + +> + > 3> + + > + > ,NUMBER-OF-TUNES> + )> + + + + >> + + + )>)> + + .PHONES>> + +)) + + >> + )> + + + ) + (T + + ) + (T + )> + + + + + ) + (T + )>)>> + +> + >> + + + + + ) + ( + + ) + ( + + + ) + ( + + )> + + + ) + (T + )> + + + > + +> + +)) + > + > + >> + + + + + ) + (T + )> + ) + ( + + ) + (T + )> + ) + ( + + > + + + + )> + + > + + + +) "AUX" STR) + + > + ) + (T + )> + T) + (<==? .CONTEXT ,M-WINNER> + ) + ( <>) + ( + > <>) + (> + ) + ( + >> + ) + ( + + + T) + (T <>)>) + ( + + ,FATAL-VALUE) + ( + + T) + (T <>)>> + + + + + + +) (MALE <>)) + + + >)> + 0 .XFEMALE>)>) + (T + + + >)> + 0 .MALE>)>)> + > + + + + > + ,W?STEWARDESS ,W?STEWARD> + + ) + (T + + )>> + +> + + > + + + "?\"" CR> + > + + + > + +) + (LEN )) + > + > + > + >> )>>> + +; "Call if loser picked up a visa number from somebody. See if it's one of + the ones he might have gotten; set GOT-VISA-NUMBER? to person he got + it from." +> + <- ,FIELD-DATA-OFFSET 1>>> + >> + > + + )>)> + > ,PERSON-COUNT> + .CHECK>)>>> + +)"AUX" LOSERS-ROW) + + + + ) + ( + ) + ( + )>) + ( <>) + ( + + <>) + ( + + > + ) + (T + )>) + (> + > + ) + (T + + ", but I'm not authorized to say anything about that.\"">)>)>) + ( + + + + + > + + >> + + ; "Return T if direction of attendant + approach and direction to loser we + got this from match." + + ". Some people just aren't +very helpful about these things.\"||"> + + > + + + ) + (T + )> + + + ,M-SHORTDESC> + + > + + + ) + (T + + + ,M-SHORTDESC> + + ; "Winning case, when not dreaming" + )> + T) + (T + + ", but I've already seen this +number "> + + ) + (T + )> + )>) + ( + ) + (T + )>)> + T) + (T <>)>)>)>) + ( + > + ) + ( + <==? ,VISA-SCENE>> + ) + (T + > + )>) + (T + + + + ,FATAL-VALUE) + (T T)>)>> + + +"Nightmares" + +) "AUX" CS) + > + >> + >> + T>)> + )> + + + > + +> + > + > + > + <==? .SCENE ,HIJACK-SCENE>> + ; "Don't do the computer scene first." + T) + (> + )> + > 20> + + > + > + <==? .SCENE ,HIJACK-SCENE>> + T) + (> + )> + > ,SCENE-COUNT> + > + )>> + )>> + > + ; "Say it's used." + + ; "Save it" + + ; "Keep track of how many we've played." + > + >> + ; "Unless it's the last one, it's just a dream." + + >) + (T + )> + ; "Let 'er rip." + > + +> + + 1>> <>>> + )>> + + + + CHAR >>) + (<==? ,HERE ,AISLE> ) + ( + ) + (T + >)> + > + +) (BLAME-COMPUTER? <>) + (DREAMING? >)) + ; "If loser didn't bring computer on board, throw off the businessman, + who did, but only if dreaming. Otherwise, need some other excuse." + + > + ; "Not in plausible location, so make him get there, and try + later." + + .START-HIJACK>)> + > + .DREAMING?> + )> + > + > + )> + + + + ) + (T + )> + + ) + (> + + + + + + + ) + (T + + + + + )> + + ) + (T + + + + )>) + (.DREAMING? + )>> + + + T> + > + > + > + > + )>> + +; "Visa scene" +> + .IRTS>)> + >)> + > + + )> + + + T> + +) "AUX" (SJ? <>)) + > <>) + ( + + + >> + + ) + (T + )> + + ". People who don't pay attention to our regulations can't be permitted to continue on the flight. Why, you could be hurt!\" " + + " looks thoughtful for an instant, and then reaches a decision" + ,PCR> + ; "You dead, Jack" + <>) + (T T)> + .SJ?> + T) + (T + + + T)>> + +> + +)) + + )>) + ( + + <>) + (T + + + + + T)>> + +;"meal-state: + 1: meal has been served (always what the loser didn't want) + 2: meal done (loser either mungs it or eats it). If doesn't + happen within five moves, give warning. If eaten, go to state 4. + 3: if meal still not eaten, throw loser off. Otherwise, to state 4. + 4: bad breath noticed--neighbor looks slightly green, rings for + stewardess, who produces toothbrush, suggests using it. + 5: after enough moves to get to lavatory, if not there, throw + off for having bad breath. + 6: in lavatory, immediately run return-to-seat. + 7: If don't wipe + sink, throw off for that as soon as leaves seat; otherwise, + too late on return to seat, throw off for that." + +> + > + )>) + (> + ; "Too late, loser" + > + )>) + (T + )> + > + +)) + + 5>> + + <>) + (T + > + >> + > + + ; "Time to serve meal" + "? The Chicken +Kiev, or the Peking Duck?\"" CR> + )) + > + + ) + ( + >) + (T + + + )> + + ", we're all out of that. Would you like the "> + ) + (T )> + + + + + >> + + ; "5 moves to eat it" + + ) + (T + + + + + ; "Naughty, naughty" + )>>) + ( + <0? .Y>> + ; "Counter ran out" + + > + ; "Meal eaten" + + + )> + + ; "Ready to offend neighbor" + ) + ( + + + <>) + (T + + + "! We can't have this! Our chef would be +mortally wounded if she discovered that one of her meals was wasted. Why +not make it easy on yourself and eat the food? I'm told it's absolutely +scrumptious.\"" CR " stands in the aisle, watching +you." CR> + ; "Now have two moves to eat the damn food, + otherwise thrown off." + + )>) + (<==? .X 3> + + > + + " takes your plate and hurries off." CR> + + + ) + (T + ".\"" + CR CR> + + ; "Tsk." + )>) + (<==? .X 4> + ; "Anybody in neighborhood notices stench." + > + + + <>) + (T + + + + T)>) + (<==? .X 5> + + + + <>) + (T + + + + ", but some of our passengers have noticed +that you're suffering from halitosis. In fact, they suggest that they may +be forced to use their discomfort bags if something isn't done about it.\" " + " is starting to +look a little green. \"I think it would be a very good idea for you +to use this, before we have to take stronger measures.\"" CR CR + + " hurries off, leaving you holding " + A ,TOOTHBRUSH ,PERIOD> + + + >) + (<==? ,HERE ,GALLEY> + ) + (T + )>)>) + (<==? .X 6> + > + + + + <>) + (T + + ", but we gave you every chance. For the +sake of everyone's health, we're going to have to do something about this.\"" + CR CR> + ; "Die" + )>)>) + (<==? .X 7> + + >> + + + ". You brushed your teeth in the lavatory, +and left quite a mess in the sink. You're being most discourteous to your +fellow passengers, " + + ". We can't tolerate this sort of behavior +on a civilized airline.\" " " is now accompanied +by a hefty young man who looks a little too eager for action" ,PCR> + ; "Too bad" + ) + (> + + + + )> + T) + (T + + <>)>)>)>)>> + + + + + + T)>> + + + + + + )>)>> + + + + + + ) + ( + + >> + > + ) + (T + )> + + 0 ,W?DIRTY> + + + + ) + (T + )>> + + + + + + )>) + ( + + ) + (T + )>)>> + + + + + + + + + + > + + + ) + (T )> + + ", but we can't permit this to continue.\"" CR CR> + + + ,FATAL-VALUE) + ( + + + + ) + (T + + + )>) + ( + )>) + ( + + )>)>> + +)> + + + <>) + (T + + + + + T)>> + +> + ; "Am I in the front of the airplane?" + + ; "Then the f.a. is headed back." + <>) + (T T)>) + ( <>) + (T T)>> + + + ; "Get the loser back into a seat." + 2> + >) + (T + )> + + .I-VISA>)> + > + >> + + .I-VISA>) + (<==? .X 10> + + + + + + > + ) + (T + )> + + " hands you " + A ,IFORM ", and walks away." CR> + + T) + (<==? .X 9> + + > + ; "Give people some leeway at this point" + )> + T) + (<==? .X 8> + > 0> + >> + + .I-VISA>)> + > + ) + (T + )> + + T) + (<==? .X 7> + > 0> + >> + + .I-VISA>)> + + T) + (<==? .X 6> + + + + T) + (T + + + " hands your form back to you, while endeavoring to look mortally offended."> + )> + + + ",\" says " THE ,FLIGHT-ATTENDANT + ", motioning to someone you can't see." CR> + T) + (<==? .X 1> + + + + + + T) + ( + + > + + "! You haven't even started to fill out " + THE ,IFORM ". "> + ) + (<==? 2> + ) + (T + + )> + + ) + ( + + T) + (<==? .X 3> + ".\"" CR> + T) + (<==? .X 2> + > + T) + (T T)>) + (T + + + + T)>)>> + + + + + T) + (T <>)>) + (<==? .CONTEXT ,FORM-EXIT-FIELD> + + + ,FATAL-VALUE) + ( + + ,FATAL-VALUE) + (T T)>) + (T T)>> + + T) + (<==? .CONTEXT ,FORM-EXIT-FIELD> + + + ,FATAL-VALUE) + ( + + ,FATAL-VALUE) + ( + + ,FATAL-VALUE) + (T T)>) + (T T)>> + + + T) + (T <>)>) + (<==? .CONTEXT ,FORM-EXIT-FIELD> + 4> + + <>) + (T T)>) + (T T)>> + + + + % + %>> T) + (T + + <>)>) + (<==? .CONTEXT ,FORM-EXIT-FIELD> + + >> + ) + (T + )> + ,FATAL-VALUE) + (T T)>) + (T T)>> + + + ) + (<==? .CONTEXT ,FORM-EXIT-FIELD> + >>) + (T T)>> + + + ) + (<==? .CONTEXT ,FORM-EXIT-FIELD> + >>) + (T T)>> + + + ) + (<==? .CONTEXT ,FORM-EXIT-FIELD> + >>) + (T T)>> + +)) + > + >> + + <>) + (T T)>> + + + + > + + + + > + )> + + + + T) + ( + > + + ) + (T + )> + T) + ( + + T)>)>> + + + ) + (T + + )> + + > + +) (STARTED-IN-JOHN? <>) + "AUX" STR + (DREAMING? ) + (SHORT? )) + > + + + + + + + > + + > + > + + + + + + )> + + + + + + + + + + + )> + > + > + + ", but I'm afraid you'll have to leave us now.\" "> + + + ,PLAYER .DREAMING?>> 0> + + + )> + )> + + ) + (T + + ". If your future travel plans call for air travel to Zalagasa, we hope you'll think of us. Have a nice day!\"" CR>)> + + + + + )> + > + + + +> + + + ) + ( + + )>) + ( + > + + T) + ( + + + + ) + ( + + )> + + ) + ( + + + )> + + + + ) + ( + > + > + + )> + + + )>)> + + + + )> + .CHUTE>) + ( + > + + ) + ( + + ) + ( + + )> + + + )> + + T) + ( + + T) + (> + ) + ( + + + T) + ( + + T) + ( + + ) + (T + )> + T) + (T <>)>> + + + + + + ) + (T + + + ) + (T + > + + + + + + > + >> + ) + (T + )>)>)> + T> + + + + ) + ( + + + )> + + + + T> + + + +> + + T) + ( + <>) + ( + + + )> + + T) + ( + + T) + (T + <>)>> + + + + + + T> + + + + T> + + + + + ) + (T + )> + T> + +)) + + + + )> + + T) + (T + <>)>> + + + +)) + + + + ) + (T + )> + + T) + (T + <>)>> + + + + > + T) + (T + <>)>> + + +"Code for other passengers" + + +"Initialize state of seating: all rows are full, except for smoker/non-smoker + rows, which we handle on boarding. Other four people are put randomly around + plane, no more than one per row." + +> + + % + % %> + ; "grandma" +
% % + % %> + ; "Business person" +
% + % % %> + ; "Momma" +
% + % %>>> + + + + > + > + > 1> + > + ) + (T + >)> + + ,ALL-SEATS> + > + ; "Seat to leave blank" + + ) + (T + )> + > + + + )> + + + >> + ; "Set up personality in seat next to blank seat" + >)> + )>>> + + + > + + + > + >> + >> + >>)> + > " " + > " with " + >>> + + + + + > + +)) + .N>> + + + <==? .N>> T) + (T <>)>> + + + <==? .N>> T) + (T <>)>> + + + <==? ,PRSI ,IFORM> + + >> + + + <==? ,PRSI ,AIRLINE-MEAL> + + >> + +> + +) + "AUX" (OWINNER ,WINNER) VAL) + + > + + .VAL> + + + >)> + + + ; "FOO, HELLO becomes HELLO FOO" + + T) + ( + > + ) + ( + > + ) + ( + + T) + ( + > + ; "FOO, GIVE ME BAR becomes TAKE BAR FROM FOO" + ) + ( + > + >> + ) + (T + + + >)>)> + T) + ( + ) + (T <>)>) + ( + >)> + + + )> + ) + (<==? .N ,GRANDMA-PERSON> + + )> + ) + (<==? .N ,BUSINESS-PERSON> + + ) + (T + )>) + (<==? .N ,MOMMA-PERSON> + + ) + (T + )>)>) + ( <>) + ( + > + + + >)> + T) + ( + > + ) + ( + + > + + + ,FATAL-VALUE) + (T <>)>) + (<==? .N ,GRANDMA-PERSON> + ) + (<==? .N ,SMOKER-PERSON> + ) + (<==? .N ,BUSINESS-PERSON> + ) + (<==? .N ,MOMMA-PERSON> + )>) + (<==? .N ,GRANDMA-PERSON> + ) + (<==? .N ,SMOKER-PERSON> + ) + (<==? .N ,BUSINESS-PERSON> + ) + (<==? .N ,MOMMA-PERSON> + )>> + + + + ) + (T + + >)>> + + + + > + ) + (T + )>) + ( + + + ) + ( + >> + + > + + + + + )> + ) + ( + + ) + (T + )> + ) + ( + ) + (T + + + )>) + ( + )>> + +> <>) + ( + + T) + (T <>)>> + +> + + + > + ) + ( + + > + + + )>) + (> + ) + (T + )>)>> + + + > + + + ; "boy touching..." + > + + ) + (T + + T)>) + (T + )>) + ( + + ) + ( + > + ) + (T + )>) + ( + >> + > + ) + (T + )>) + (T + )>) + ( + ) + ( + ) + (T <>)>> + + + > + ) + (T + )> + ) + ( + > + ) + (T + )>)>> + + + > + ) + (T + )>) + ( + + > + ) + (T + )>) + ( + > + + + ) + (> + ) + (T + + + + )>) + ( + ) + ( + > + ) + ( + > + + ) + (T + )>) + ( + ) + (T + )>) + ( + )>> + + + > + ) + (T + )>) + ( + + + + )>> + + + + > + )>) + ( + ) + (T + )>) + ( + )>> + + + 8> + )>> + + + + > + ) + (T + )>) + ( + ) + ( + > + + + + ) + (T + )>) + ( + ) + (T + )>) + ( + )>> + + + + + + + + T) + ( + + + + T) + (T + + + )>)>) + ( + ) + ( + ) + ( + + + + + T) + (T + )>)>> diff --git a/ntext.file b/ntext.file new file mode 100644 index 0000000..d61fba8 --- /dev/null +++ b/ntext.file @@ -0,0 +1 @@ +To find the entrance, from the first numbered room, go in any direction. Thenceforth, subtract the number of the previous room from the current one. Use the first digit of the difference to select one of the following strings: 1 gives NSEWUD, 2 gives NWESDU, 3 gives USDNEW, 4 gives SUNDEW, 5 gives ENUDSW, 6 gives DWEUNS. Use the second digit to select a letter from the string, and go in that direction. Thus, room 64 to 105 gives a difference of 41. Take the first letter from the fourth string, and go South. \ No newline at end of file diff --git a/old-parserdefs.zil b/old-parserdefs.zil new file mode 100644 index 0000000..50a3686 --- /dev/null +++ b/old-parserdefs.zil @@ -0,0 +1,113 @@ + + + + +> + +> + )> + + + .Y) + (T + T)>> + +"Byte offset to # of entries in LEXV" + + + +"Word offset to start of LEXV entries" + + + +"Number of words per LEXV entry" + + + + +"Offset to parts of speech byte" + + + +"Offset to first part of speech" + + + +"First part of speech bit mask in PSOFF byte" + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + .BIT>) + (T + )>> + + diff --git a/other-misc.zil b/other-misc.zil new file mode 100644 index 0000000..9320c7a --- /dev/null +++ b/other-misc.zil @@ -0,0 +1,727 @@ +"OTHER-MISC for BUREAUCRACY: (C)1987 Infocom, Inc. All Rights Reserved." + + + + + +>"> ;"'File' is not in manual." + > + + > + + >)> + + <>) + (T )>) + ( + > + + >> + )>> + + ) + (T + > + T) + (T <>)> + T>)>>> + +> + > + + + + + > + + )> + ) + (T + + + )> + + + + + + + + + + + + + ; + + + + + + + + + + + > + + + + + + + + + + + + + + > + + 202>> + + + > + + > + + > + + > + + > + + > + 201>> + + > + )>> + + > + > + +> + + + + + > + + + + + > + ) + (T + > + )> + + + > + + + +> + + ) + ( + + + ) + (T + .WALLS>)>) + ( + > + + ) + ( + > + + + ) + ( + + + )> + + ,FATAL-VALUE> + + + +> + + ,FATAL-VALUE) + ( + + T) + (T + <>)>> + + + + + + + T) + (T + <>)>) + ( + + T) + ( + + + ) + (T + )> + + T) + ( + + T) + ( + > + + T) + ( + + T) + (T + <>)>> + + + +"TOUCHED = flight described once." + + + + + T) + (T + <>)>) + ( + + T) + ( + + T) + (T + <>)>> + + + + + + + ) + ( + + )>) + ( + + ) + ( + + ) + ( + + ) + ( + + )> + + ,FATAL-VALUE> + + + + + >> + +"SEEN = given PRE-DUMB-EXAMINE admonishment." + + ,W?EYES> + + ) + ( + + ) + ( + + )>)> + + + T) + (T + + ,FATAL-VALUE)>> + + + +) "AUX" OBJ NXT (ANY <>)) + + + + T) + ( + + T) + ( + + ) + (T + )> + T) + ( + + T) + (T + <>)>) + ( + + > + + )> + > + + + )> + > + + ) + (T + + + + )> + T) + ( + + T) + ( + + T) + ( + + T) + ( + + T) + ( + + + T) + ( + T) + (T + <>)>> + + + + + + T) + ( + + T) + ( + > + + T) + (T + <>)>> + + + + + + T) + ( + + T) + ( + > + + + T) + ( + + T) + ( + + T) + (T + <>)>> + + + + + + + +> ,W?FLOOR> + ) + (T + )>> + +> + > T) + (T <>)>> + + ,W?FLOOR> + > + + )>)> + + + + T) + (T + <>)>) + ( + + > + + T) + ( + + T) + (T + <>)>> + + + + + + :FIX 3>> + + T) + (T + <>)>) + ( + > + + + ) + (T + )> + + T) + ( + + <>) + ( + + T) + ( + + T) + (T + <>)>> + +) "AUX" THING OPRSO) + > + <>) + ( <>) + (T + ) + (T )> + + + + + + <>) + (T + + ,FATAL-VALUE)>)>> + +"WINDOW [table] [left-margin], where [table] is a global PLTABLE + with the 1st element = width of window, followed by strings (0 for blank). + If [left-margin] is not specified, window is centered." + +; "Used for optional arguments to WINDOW..." +>> + +) (S2 <>) (S3 <>) + (STLINE 4) + "AUX" MARGIN (Y .STLINE) (I 2) W:FIX LINES:FIX + STR PLINES + (CT:FIX 0) (ET ,EXTRA-TEXT) SP:FIX) + + + + > + + > + 2>> ; "Center" + > ; "Set up the window." + + > + + + + + + > + + > + + + )> + > + + > + :FIX>> + ; "Number of spaces needed" + > + ; "Print half" + + > + >>) + (T + )>) + (T + + + )> + >> + + + + + + + ; "Send window to printer." + + + + + + + > + + )> + > + > + > + )> + ) + (> + > + :FIX> 2>> + )> + + )> + + >> + + + T> + + + +)) + + ,SOUNDS> + ) + (<==? ,SOUNDS> + ) + (T <>)>) + (T <>)>> + +> + + + ) + (T + )> + T) + ( + > + + T) + (T + <>)>> + + + +> + + ,FATAL-VALUE) + ( + + T) + ( + > + + T) + ( + + T) + ( + + T) + (T + <>)>> +; + +; + +; + > + + T) + (T + <>)>> + +> + + + + + T> + diff --git a/paranoid.zil b/paranoid.zil new file mode 100644 index 0000000..cbcd51f --- /dev/null +++ b/paranoid.zil @@ -0,0 +1,1602 @@ +"PARANOID for BUREAUCRACY. Copyright 1987 Infocom, Inc. All rights reserved." + + + +"*** SPY ***" + +> + +> + + ; "No passwords have been exchanged" + ; "User has correctly said the password" + ; "The spy has said his back" + + + + +)> + +> + +>> + > + >> + > + + + >> + > + + + >> + >> + >> + > + + + >> + > + >> + >> + > + >> + > + + >> + >> + + > + + + > + + > + + + >> + >> + + >> + >>>> + +> + +> + +> + +> + + + +)) + > + ) + ( + + + ) + (T + )> + + T) + ( + + + >> + <>) + ( + + T) + (T + <>)>) + ( + + + > + + >> + ) + ( <==? ,PRSO ,POWER-SAW>> + ) + ( + <==? ,PRSO ,HACKSAW> + > + ) + ( + ) + ( + + >) + (ELSE + )>) + ( + + >) + (ELSE + )>) + ( + ) + (T + )> + ,FATAL-VALUE) + ( <>) + ( + + + T) + ( + + T) + (ELSE + )>) + ( + <==? ,PRSO ,POWER-SAW>> + ) + ( + <==? ,PRSO ,HACKSAW> + > + )>) + ( + + + ) + (> + .SPY>)> + + ,FATAL-VALUE) + ( + + ,FATAL-VALUE) + (ELSE <>)>) + ( + + T) + (T + <>)>> + + + + + ) + ( + ) + (ELSE + )> + T) + (ELSE + )>> + +> + + > + + + + + + ) + ( + ) + (ELSE + + )>> + + + + ) + (T + )>> + + + + + T> + +> + +"** THE PARANOID **" + + + +) + "AUX" (SEEN? )) + + + + ) + (ELSE + + )> + T) + ( + + + T) + (T + <>)>) + ( + + ,FATAL-VALUE) + ( + <>) + ( + + + ) + (T + )> + + ,FATAL-VALUE) + ( + + ,FATAL-VALUE) + (ELSE <>)>) + ( + + T) + (T + <>)>> + + + + +)) + + + T) + ( + > + + > + + + + + T) + (T + + + <>)>) + ( > + + <>) + (T + <>)>> + +) + (EXIT-TO OUTSIDE-FORT) + (NORTH TO OUTSIDE-FORT) + (OUT TO OUTSIDE-FORT) + (DOWN TO BASEMENT) + (GLOBAL CAMHOUSE BWGATE PAR-STAIR) + (ACTION IN-FORT-F)> + +) + (EXIT-TO BASEMENT) + (GLOBAL JDOOR) + (ACTION JAIL-D)> + +)) + + + ) + (ELSE + )> + + > + )> + + T) + (<==? .CONTEXT ,M-EXIT> + + + T) + (> + + + T) + (T + + > + )> + + + )> + <>)>) + ( + <>) + ( + + ) + (T + )>) + (ELSE <>)>> + + + +)) + <>) + ( + + ) + (ELSE + )> + T) + ( + + + )> + + T) + ( > + + ) + (ELSE + + + > + + + T) + (ELSE T)>)>) + ( + + ) + (ELSE + <>)>) + ( + + ) + (T + )>) + (ELSE <>)>> + +) + (SYNONYM BASEMENT) + (GLOBAL JDOOR PAR-STAIR) + (ACTION BASE-F)> + +)) + + + + ) + (ELSE + )> + ) + ( <>) + ( + + ) + (<==? ,HERE ,JAIL> + ) + (T + )> + T)>> + + + + + + + T) + (T + <>)>) + ( + + + ) + (ELSE + )>) + (T + )> + T) + ( + + T) + ( + + + ) + (ELSE + )>) + ( + ) + (T + )> + T) + ( + + + ) + (T + )> + T) + ( + + ) + (T + )> + T) + ( + + ) + (T + )> + T) + (T + <>)>> + + + + + + + +> + > + ,MPLUG) + ( + ,P-IT-OBJECT) + ( + > + ,POWER-SAW) + (ELSE <>)>> + +)) + + )> + ) + (ELSE + )>> + + + + > + + ) + ( + + + ) + (ELSE + )>) + (ELSE + )>) + ( + + > + + )> + + ) + (<==? ,PRSI ,GENERATOR> + > + + + + + > + + )>)>) + (ELSE )> + ) + (ELSE + )>) + (T + )>) + ( + > + ) + ( > + + ) + (ELSE + )> + ) + ( + + + >> + + ) + (ELSE <>)>) + ( + + + )> + + T) + ( + + >> + )> + ) + (ELSE <>)>> + + + + + ) + ( + + ) + (ELSE + + + + + + + + + + + )>)>)> + T) + ( > + + + + ) + (ELSE + )>) + ( + + ) + (ELSE + )>) + ( + ) + ( + )>> + +) (PL )) + + + ) + (<==? .PL ,BASEMENT> + )> + + ) + (<==? .SL ,BASEMENT> + + ) + (<==? .PL ,IN-FORT> + + + )> + ) + (<==? .SL ,IN-FORT> + + + + + ) + (ELSE + + + )>)>> + + + + + )>> + + + + + + )>> + + + + + > + .SWISS>)> + + + + + ,FATAL-VALUE) + (> + + ) + (ELSE + )>) + ( + + ,FATAL-VALUE) + (> + + ) + (ELSE + )>) + (ELSE + )>) + ( + )>) + ( + + T) + ( + + ) + (ELSE + + )> + + T) + ( + + + ) + (ELSE + )> + + T)>> + +)) + + <>) + ( + + + T) + (ELSE + + + + <>)>) + ( + + + T) + (T <>)>) + (T <>)>) + (> > + ; + + ) + ( +
) + (CABADDR
) + (CABMUSIC:FIX BYTE 0) + (STNUM-VALUE:FIX 0) + (CABTIMES:FIX BYTE 0) + (CABTURNS:FIX BYTE 0) + (CABSTATE:FIX BYTE ,CAB-INIT) + (CABPREVNAME
) + (CAB-DONT:FIX BYTE 0)> + +; "Should be in PLACES..." + ,CAB-HERE> + + <>) + ( + ,FROOM) + (T + + <>)>> + +> + > + > + >> + >)> + >) + (<==? .CHR 32> )> + + > .LEN> + )>> + T> + +> + +) WORD PTR TBL LEN (STREET-OK T) + (CS ) (CD ) (TAKE-INFO T) + (CT )) + )> + > + + + + >> + > )> + + )> + + + > + + + > + + )>) + ( > + + + " "> + > + + + > + > + )> + + + + + > + + + 2>> + ) + (ELSE + + + 5>>)> + > + + ) + ( + ) + (ELSE + + + )>>) + (ELSE + + + + + + > + ,CAB-SENT> + >> + + + 2>> + ) + (ELSE + 5>>)>)>)>)> + > + + + + <>>> + > )> + + + + ) + (T + + + > + > + )> + + > + )> + + + > + + + ) + (T + )> + )> + + <>>> + > )> + + > + <- ,FIELD-DATA-OFFSET 1>> + T> + + + >)> + + > + >> + > )> + > + + + )> + + + > + 1>> + 1>>> + + <- .X %>>> + > .LEN> + > + )>) + (T + + + + + )>> + + > + > + > + > + + >) + (ELSE + )> + ) + (ELSE + )>)>> + + )> + >> + + + + + + )> + T> + +) + "AUX" (L1 ) (L2 ) (RES T) (CNT 1)) + > + <==? .L2 0>> + > + ) + (<==? .L1 0> + 32> + >)> + ) + (<==? .L2 0> + 32> + >)> + )> + > + >> + )> + > + > + >>)> + .RES> + +> + > + >> + %>>>)> + .CHR> + +)) + + )> + > + >>> + +> + + + + T> + + + + > + +) (ALPHA T) (OTBL <>) + "AUX" (OFFS 0) (DPTR 1) SPTR WORD LEN X LEXW + (WORD2 <>)) + >"> + + > + >> + > + >> + + > + + )> + ; + > + > + 1>> + 1>>> + > + > + .LEN> + )>) + (T + + + + > + )>> + + )>)> + >> + + >>) + (ELSE )> + + > + > + >) + (ELSE )>> + + + <==? .WORD ,W?HANG> + <==? .WORD2 ,W?UP> + > + + + .GCW>) + ( + ) + ( + ) + ( + ) + ( + ) + (T + )>)> + > + + + > + > + ; 1>> + 1>>> + >)> + + > + > .LEN> + + )>>)> + > + + + > 0> + > + )> + % + '>>>>) + (ELSE + ' 2>> 8> + 2> 1>>>>)> + > + ; "Don't put say and quotes in table..." + + >)> + % + '>) + (T + '>)>>) + (ELSE + > + >>)> + > + .WORD2) + (T .WORD)>)>> + +>> + >> + + + > + 1>> + 1>>> + .X %<- >>> + > + > .LEN> + )>) + (ELSE + > + )>> + .WORD> + +)) + <>) + (> <>) + ( T) + (<==? .CT 1> ) + ( T) + (T <>)>> + +; + +; "SETG HOLD-TURNS to 0 when put on hold, call this with max # of turns + allowed to hold each time decide whether to stay on hold or not..." +> .MAX> + ; "If have held too many turns, stop..." + <>) + ( + > + ; "Continue holding if first time..." + T) + (T <>)>> + +)) + > + <>) + (T + + )> + + + + + + T) + (T + + + + + + > + + " "> + > + + + >> + + + 2>> + ) + (ELSE + 5>>)>)>)>> + + + + + <>) + ( + + + + T) + (T + <>)>> + + + + + +)) + + + T) + ( + <>) + ( + > + <>) + ( + + T) + (T + + + + + T)>) + ( T) + (T + <>)>> + + + + + ) + ( + T) + (T + <>)>> + + + + + + )> + > + + + >> + + ) + ( + + > + ) + ( + + > + ) + ( + + + T)>) + ( + T) + (T + <>)>> + + + > + + T) + (ELSE + + T)>) + (T + <>)>> + + + + + ) + ( + + + T) + (T <>)>) + ( + + + + + T) + (T + <>)>> + + + + + ) + ( + + + T) + (T <>)>) + ( + + + + + T) + ( + + T) + (T + <>)>> + + + +)) + + > + + >> + + ,FATAL-VALUE) + (T <>)>)>) + (<==? .CONTEXT ,M-OBJDESC> + + + > + + )> + ) + (<==? .CONTEXT ,M-SHORT-OBJDESC> + + + > + + )> + T) + ( <>) + ( + ) + ( + + + T) + (T + <>)>) + ( + + <>> + + + + + + + T) + ( + > + + + )> + <>) + (T + <>)>> + + + + + + + + + T)>> + + + > + + > + + ) + ( + + )> + 1>> + " printed on it." CR>) + ( + ) + ( + )>)>> + +)) + + )> + 1>> " printed on it." CR>> + + + + + + + > + <>) + ( + + + + + + T) + ( + + + T) + (<==? > + > + + + T) + (T + )>) + ( ) + (T <>)>) + (T <>)>) + ( + > + > + + > + > + ) + ( + T)>) + (ELSE + + T)>) + (ELSE <>)>) + (ELSE + T)>> + +> + + + +) + "AUX" X:FIX DOLL:FIX CENT:FIX) + ) + ( + + ,PERFORMING?> + ) + (ELSE )> + > + > + + ) + (<==? .CENT 1> ) + (ELSE + )>) + ( <==? .CENT 0>> + ) + (ELSE + + ) + ( ) + (ELSE )>)> + T> + +; + +)) + )> + > + + )>> + + + + + T) + (T <>)>) + ( + <==? ,P-PRSA-WORD ,W?WITHDRAW> + > + ) + ( + > + > + ) + (ELSE + <>)>) + ( > + )> + + ) + (ELSE + + + + )> + T) + ( > + + T) + ( + + + + T) + (T + <>)>> + + + + + > + >> + ; "check in trough--check covered with llama slime" + + + > + >> + ; "check in porch--check covered with macaw dung" + + > + >> + ; "check in fort--soaked check" + + > + >>>> + +) + (S ) + (TBL ,BOSS-CHECK-WORDS)) + + + >) + (<==? ,HERE ,OUTSIDE-FARM> + >) + (<==? ,HERE ,IN-PORCH> + >) + (T + >)> + 2> > + 2> >> + + + ) + ( + ) + ( + ) + ( + )>> + +) "AUX" (L )) + + + + ) + ( + ) + (T + )> + + T) + ( <>) + ( + + + ) + (<==? .L ,IN-PORCH> + ) + (<==? .L ,IN-FLAT> + ) + (T + )> + + T) + ( + ) + ( + + ) + (<==? .L ,IN-FLAT ,IN-PORCH> + ) + (T + )>) + (T <>)>> + + + + + + + + + T) + (ELSE <>)>> + +) + (TURNS )) + + + + 1>> + ) + (ELSE + + + ) + (ELSE + >> + <>)>)>) + ( + + + + + ) + (<==? .CS ,CAB-NEEDS-ID> + + .I-CAB>) + ( + )> + >> + T) + (ELSE + >> + )>) + (<==? .CS ,CAB-INHABITED> + + + + T) + (ELSE + + <>)>) + ( + + + + + T) + (ELSE <>)>> + + + ) + (<==? ,HERE ,OUTSIDE-HOUSE> + ) + (ELSE + )> + > + + > + > + + + + ) + (ELSE + + )> + ) + (<==? .STATE ,WAITING> + + + ) + (<==? .STATE ,WANDERING> + + ) + (ELSE + + ) + (ELSE + )> + + ) + (<==? ,HERE ,OUTSIDE-HOUSE> ) + (ELSE )> + + )> + T) + (ELSE <>)>> + + + +> + > + + ,P-IT-OBJECT) + (<==? .LEN 2> + ,CAB> ) + (<==? ,CAB> )>)>> + + T) + ( + + ,CAB-HERE ,CAB-NEEDS-ID>> + T) + ;( T) + (ELSE <>)>> + +) (TURNS )) + + > + + >> + + > + ) + ( + ) + (T + )> + T) + ( + + + T) + (> + + T) + (T + )>) + (T + )>) + ( + + ) + (<==? .CS ,CAB-HERE> + ) + ( + + + ) + (ELSE + )>) + (ELSE + 1>>)>) + ( > + + + + ) + (T + )>)>) + (ELSE + <>)>) + ( + > + >> + ) + ( <>) + ( + + <==? .CS ,CAB-SENT> + > + + T) + (ELSE + + T)>> + + + + + + > + .VAL) + (ELSE + + + + + ,HERE)>> + + + +)) + + > + <==? .CS ,CAB-HERE> + >> + + + + + + + ) + (T + + )> + + > + >)> + T) + ( + + + + ,FATAL-VALUE) + ( + + > + <==? .CS ,CAB-NEEDS-ID>> + + > + <- ,FIELD-DATA-OFFSET 1>>> + + ) + (ELSE )> + + + > + ) + (ELSE + + + + + ) + (T + )> + + + ; + + + + + + )> + T) + (<==? .CS ,CAB-NEEDS-ID> + + ) + ( + > + ) + ( + > + + + ) + ( + + ) + (ELSE + )> + ) + ( + + ) + (<==? ,P-NUMBER 1750> + ) + ( + + + ) + (T + )>) + ( + ) + (T + )> + + + + >)> + T)>)>) + (ELSE + + + ,FATAL-VALUE)>> + + + + + +> + + + + + T) + (ELSE <>)>> + +) "AUX" (CS ) VAL) + + ) + (<==? .RARG ,M-BEG> + > + <==? .CS ,CAB-JUST-AT-AIRPORT>> + )> + > + ) + ( + + + + T) + (<==? .CS ,CAB-WAITING-FOR-YOUR-EXIT> + + + T) + (<==? .CS ,CAB-DRIVER-PISSED> + T T> + T)>) + (ELSE <>)>) + ( <>) + ( + ) + ( > + ) + (ELSE <>)>> + +)) + > + + <>) + ( + + + <>) + ( + )>> + +> + + + + + + > + +)) + + + + ; + ; + + + + + + ,OUTSIDE-HOUSE) + (ELSE + + )>> diff --git a/verbs.zil b/verbs.zil new file mode 100644 index 0000000..3039764 --- /dev/null +++ b/verbs.zil @@ -0,0 +1,3949 @@ +"VERBS for BUREAUCRACY: (C)1987 Infocom, Inc. All Rights Reserved." + + + + + + + + ) + ( + ) + ( + + + + )> + ) + (<==? ,P-NUMBER 3> + + + + + + + T>) + (<==? ,P-NUMBER 4> + + + + + )>) + (T + )> + T>> + + + > + + + + T> + +; "0 = super, 1 = brief, 2 = verbose." + + + ,FATAL-VALUE) + (T + + + + T)>> + + + ,FATAL-VALUE) + (T + + + T)>> + + + ,FATAL-VALUE) + (T + + + T)>> + + + ,FATAL-VALUE) + ( + ) + (T + + T)>> + + + +) (WORN? <>) OBJ NXT OLDIT) + + ,FATAL-VALUE) + (T + + > + + ; "Move all worn objects to WEARING for separate sentence." + > + + )> + > + + + )> + > + > + + + + + ; + > + + + > + ) + (T + )> + + )> + > + + )>> + + + + + + ) + (T + )>) + ( + ) + (T + )>) + (T + + + + + + + ) + (T + )>) + ( + ) + (T + )>)> + + + ) + (T + )> + + + + + T)>> + +> + + + )> + + + + + + + + ) + (T + )>) + (T + >"> + + > + > + ,W?QUIT ,W?Q>> + ) + (<==? .WRD ,W?RESTART> + + + ) + (<==? .WRD ,W?RESTORE> + > + )>) + (T + )>>)> + T> + + + ,FATAL-VALUE) + (T + + + + + + + )> + T)>> + +> +> + + "[Please type YES or NO.] >">> + +) "AUX" WORD) + + >">) + (T )> + + + > + > + T) + ( + + ) + ( + .YES>)>)> + ) + (T .YES>)>>> + + + + + > + T) + (T + <>)>> + + + > + T) + (T + <>)>> + + + ,FATAL-VALUE) + (T + + T)>> + +> + + > + + + <>) + (T T)>> + + + )> + + > + + ; "Retrofix #50" + > + + + ) + ( + + )> + + + + ,FATAL-VALUE> + + + + + )> + T> + + + + + )> + T> + + *77777*> >> + + + + + + + + + )> + + + + > + )> + + > + + ) + ( + ) + ( + ) + ( + ) + ( + ) + ( + ) + ( + ) + (T + )> + + + ) + (T + )> + + T> + + "0 = not offered, 1 = on, 2 = off." + + + ) + ( + ) + (T + )> + + + ) + (T + )> + + T> + + + +; "Because five extra points if go through complex" + + + + + + +> + > + +)) + <>) + (T + )> + + + ) + (T )> + + + + + T)>> + +) + "AUX" (SYSTOLIC:FIX ) + (DIASTOLIC:FIX ) + (ALREADY-NORMAL? <>)) + + .UPDATE>)> + + + > + )> + + > + >)> + + > 255> + )> + 2>>> + + .DIASTOLIC>> + + > + ; "Back to normal" + + 80>> + + )> + + )>)> + ) + (T + .UPDATE>)>) + ( + > + + )> + + + + + ) + ( + + )> + + + 80>> + + + )> + T) (T <>)>>> + + + ,FATAL-VALUE) + ( + + + + T) + (T + + T)>> + +)) + > "day, "> + + )> + + >) + ( + ) + (T + )> + + + )> + + + ) + (T + )> + T> + + + ,FATAL-VALUE) + (T + + + + T)>> + + + ,FATAL-VALUE) + (T + + + + T)>> + + + + + + T> + + + )> + + + + + + + + + + + + + + T> + + + + T> + + *3777*>> + + > + T> + + + + T> + + + + T> + + + > + + > + + T> + + + + > + ) + (T + )> + T) + (T + + + + ) + (T + )> + T)>> + + + ,FATAL-VALUE) + (T + + T)>> + + + ,FATAL-VALUE) + (T + + T)>> + + + ,FATAL-VALUE) + (T + + T)>> + + + ) + (> + ) + (T + >)> + T> + +;> + +;> + 80>>> + ) + (T + + + > + ) + (T + + )> + )> + T> + + + ) + (T + )> + T> + + + T> + + + ) + (T + )> + T> + +; + T> + +; + T> + +> + + ,FATAL-VALUE) + ( + ) + ( + > + ) + ( + ) + (T + )>> + +> + + ,FATAL-VALUE) + ( + + T) + ( + > + + T) + (T + + T)>> + +> + + ,PLAYER ,WALLET ,POCKET> + ) + (T + )>> + + + T> + + + ) + (T + + + + )> + T> + + + ) + ( + ) + (T + )> + T> + + + ) + (T + + + )> + T> + + + ) + (T + )> + T> + + + ) + (T + )> + T> + +> + ) + ( + ) + (T + + + )> + T> + +> + +"First and second ADJECTIVE slots must be available." +"Set to OPENED and OPEN for open objects, CLOSED and SHUT for closed." + +> + + > + ) + ( + > + )> + + > + + )> + T) + (> + + T) + ( + + T) + ( + + T) + (T + + > + + ,W?CLOSED>> + + )> + "open"> + + + > + >) + ; (> + > + >> + ) + (T + + + + )>)> + T)>> + + + + + > + + ,W?OPENED>> + + )> + "close"> + ) + (T + )>) + (T + )> + T> + + + ) + (T + )> + T> + + + T> + + + T> + + + T> + + + ) + (T + )> + T> + + + ) + (T + )>> + + + + ) + (T + )>) + (T + )> + T> + + + > + )> + + T> + + + T> + + + ,FATAL-VALUE> + +)) + + + )> + + T> + + + T> + +> ,FATAL-VALUE> + ,FATAL-VALUE) + ( + + T) + (T T)>> + + + > + ) + (T + + + ) + (T + )> + )> + T> + +> + + > + + .IDROP>) + (> + + + > + ) + (T + )> + + .IDROP>) + ( + > + )> + + ,FATAL-VALUE> + ,FATAL-VALUE) + (T <>)>) + (T + + T)>> + + + ) + (T + + > + )> + + )> + T> + +) "AUX" (OBJ ,PRSO)) + + .FF>) + ( + .FF>)> + )> + + + + + T) + ( + + + + T) + ( + + + + T) + ( + + + + T) + ( + + + + ) + (T + + )> + T) + ( + + ) + (T + )> + + + T) + (T + + + > + )> + + T)>> + + + ) + (T + )> + T> + +)) + + ) + ( + + ) + (T + )> + T> + + + ) + (T + )> + T> + + + ) + () + (T + > + + )> + )> + T> + + + T> + + + T) + (> + .LOOK>) + (T + ; "This is an LTABLE, so we don't have the cretinism of + initializing PTR to the length of a table that's defined + somewhere else and getting it wrong." + > + > + > + > + > + > + >> + + + )> + ) + (> 0> + )>>)> + > + + + )> + + + T> + + + + > + >> + )> + + T> + + + >> + +; + + ,FATAL-VALUE) + (T + <>)>> + + + + + + ) + (T + )> + + T) + ( + + + + + T) + ( + + > + ) + (T + )> + T) + ( + T) + ( + > + + + + T) + (T + + )> + T> + + + ) + (T + )> + + T> + +;> + +; + T) + (T + <>)>> + + + + + ) + (T + )> + + T> + + + ) + (T + > + + ) + ( + + > + + ) + (T + )>)> + T> + + + ; + + ) + (T + )> + T> + + + ,FATAL-VALUE) + (T + ) + ;(> + T) + ;(T + + T)>> + +> + T) + ;(> + + )> + + T> + +> + + ) + ( + ) + ( + ) + ( + + >> + ) + ( + > + > + ) + ( + > + + + ) + (T + )> + ) + (T + )> + T> + +> + + + > + + + ) + ( + ) + ( + ) + (T + )> + T> + + + T> + + + T> + + + T> + + + T> + + + + )> + + + )> + + + + T) + (T + + + ) + (T + )> + + > + ) + (T + )> + )> + T> + + + T) + (T + <>)>> + + + ) + (T + + + ) + (T + )>)> + + T> + + + T> + +)) + + > + + T) + ( + > + + <>) + (T + + T)>) + ( + > + + T) + (> + + + ) + (T + )> + + T) + ( + > + + T) + (> + > + > + T) + ( + > + + <>) + (T + <>)>> + + + T> + + + ) + ( + ) + (T + )> + T> + + + > + + T) + ( + + > + >>> + + T) + ( + + T) + ( + > + + <>) + (T + <>)>> + +> + + ) + ( + ) + (T + )> + T> + +> + + + ) + (T + )>> + +> + ) + ( + ) + (> + ) + (T + )> + T> + + + T> + + + > + + T) + ( + > + + T) + ( <>) + (> + + T) + ( + > + + T) + (> + > + > + T) + (T + <>)>> + + + T> + +)) + )> + )> + > + )>> + + + + + + + T> + +> + ) + (T + )> + T> + + + T> + + + T> + + + ) + (T + )> + T> + +> + + + >> + )> + ) + (T + )> + T> + + + + >> + )> + + T> + + + + ) + (T + )>) + ( + ) + (T + )> + T> + + + T> + + + + ) + (T + )>) + ( + > + + + ) + (T + )>) + (T + )>) + (T + )>> + + + "pause"> + ) + (T + )> + T> + +)) + + + ) + (T + )> + ,HANDS>> + )> + + T> + +> + ) + (T + )> + T> + + + ) + ( + >> + ) + (> + )> + T> + + + T> + + + T> + +)) + + > + + ) + ( + ) + (T + )>) + (T + + + )> + T> + + + > + + ) + ( + + + ) + (T + )>) + (T + )> + T> + + + + + > + + >> + + + ) + (T + )>) + (T + )> + T> + +)) + + + )> + + T> + +)) + + + )> + + T> + +; + T> + +; + T> + +; + > + )> + + T> + +; + ) + (> + + ) + (T + + + + ) + (T + )> + )>) + (T + )> + T> + + + + + + T> + + + )> + T> + + + + ,FATAL-VALUE) + ( + + + + T) + ( + + T) + (T + + + T)>> + + + + ,FATAL-VALUE) + ( + + ) + (T + )> + T) + ( + > + + T) + (T + + T)>> + + + ) + ( + ) + ( + >> + + + ) + (T + )>)> + ) + (T + )> + T> + +)) + + + ,FATAL-VALUE) + ( + > + + ) + (T + + )> + T) + (T + + T)>> + + + ) + ( + ) + ( + ) + ( + ) + ( + > + >> + ) + (T + + + )>) + ( + + ) + (T + )>) + (T + )> + T> + + + ) + ( + + + ) + (T + )>) + ( + + ) + (T + )>) + (T + )> + T> + + + T> + + + + ,FATAL-VALUE) + ( + >> + + T) + (T + + + T)>> + + + + ,FATAL-VALUE) + (T + + + T)>> + +; + T> + + + T> + + + ) + (T + )> + T> + + + T> + + + T> + + + + + ,FATAL-VALUE) + (T + + T)>) + ( + ) + (T + )>> + + + T> + + + T> + + + T> + +> + + + ) + (T + )> + T> + + + ) + (T + )> + T> + + + + + + ) + (T + )>) + (T + )>) + (T + )> + T> + + + T> + + + + + + T> + + + + ,FATAL-VALUE) + ( + + T) + ( + + T) + ( + + ) + (T + )> + T) + (T + + T)>> + + + ) + ( + ) + (> + >> + + + ) + ( + >> + ) + ( + + + + ) + (T + )>) + (T + )> + T> + + + ) + ( + ) + ( + ) + ( + + ) + (T + )>) + (T + )> + T> + +)) + + )> + + ) + ( + + ) + (T + )>) + (T + )> + T> + +> + + + + ) + (T + )> + ) + (T + + > + + + > + + )>) + ( + + ) + (T + )> + ) + (:FIX :FIX> + :FIX> + :FIX> + + + ) + (T + )> + ) + (T + + )> + + + )>> + >)> + T> + + + T> + + + T> + + + > + ) + (T + )> + T> + + + T) + ( + + T) + ( + + + + T) + (T + <>)>> + + + T> + + + + <>) + (ELSE + + T)>) + (ELSE <>)>) + (ELSE <>)>> + + + + T) + ( + + T) + ;( + + T) + ( + + T) + ( + + T) + (<==? ,PRSI ,MOUTH> <>) + ( + + T) + ( + + T) + ( + + + + + ) + (T + )> + + T) + ( <>) + ( + + >> + + T) + (<==? ,PRSI ,RANDOM-OBJECT> <>) + (> + + T) + ( + + >> + + <>) + (T + <>)>> + + + + T> + + + <>) + ( + T) + ( <>) + ( <>) + (> + + T) + (T + <>)>> + + + T> + + + ) + (T + )> + T> + +> + + + > + > + > + >>> + + ) + (> + >> + + + + + ) + ( > + :FIX> + :FIX> + + T) + ( + ) + (T + )> + + ) + (> + + + > + ) + (T + )> + + )> + + + + + )> + + T) + ( + ) + (T + )> + + T> + + + + >> <>) + ( + > + 2> + > + T) + (T + + ,FATAL-VALUE)>) + (T + + + ,FATAL-VALUE)>> + +> + + + + + + + ) + (T + )> + + T> + + + + ) + (T + )> + T> + + + + + + ) + (T + )> + + T> + + + T> + + + T> + +; + T> + + + ) + (T + )> + T> + +> + + > + ) + ( + + ) + (T + )>) + (> + ) + (> + ) + ( + >> + ) + (T + + )> + T> + + + + ,FATAL-VALUE) + (> + + ) + (T + )>> + + + + ,FATAL-VALUE) + (> + + ) + ( + + T) + (T + )>> + + + T> + + + ) + (T + + ) + (T + + )> + )> + T> + + + ) + (T + )> + T> + + + ) + (T + + )> + + T> + + + > + + + ) + (T + + + ) + (T + )> + )> + T> + + + ) + (T + )> + T> + + + T> + + + T> + + + ) + (T + + + )> + T> + +> + + + T> + + + ) + ( + > + >> + ) + (T + + + )>) + ( + + + ) + ( + ) + (T + + )> + T> + + + ) + (> + >> + ) + (T + )> + T> + + + T> + + + ) + ( + > + 3> + + >> + ) + (T + )>) + (T + )>) + (T + )> + T> + + + + + T> + +)) + + > + + ) + (T + )>) + (T + )> + T> + + + ) + (T + )> + T> + + + T> + + > + + ) + ( + ) + (ELSE + )> + T> + + + T> + + + T> + + + T> + + + ) + (T + )> + T> + + + ) + ( + + > + + + ) + (T + )> + T> + + + ) + (T + )> + T> + + + T> + + + T> + + + T> + +> + +) "AUX" OBJ) + > + > + + + ) + ( + )> + >> + + >) + ( + ) + ( + ) + ( + + > + + ) + ( + ) + (T + )>) + ( + ) + (T + )> + T> + + + T> + + + T> + +"*** CHARACTER INTERACTION DEFAULTS ***" + + <>) + ( ,ROOMS> + <>) + (> + + + T) + ( + + + T) + (T + + <>)>> + + ) + (T )> + + + ) + (T + )> + + + T> + + + ,FATAL-VALUE) + ( + + ,FATAL-VALUE) + ( + + T) + (T + + T)>> + +"CHAR = character, OBJ = object of interest, + SUB-TBL = LTABLE of tables, FLAG = char's 'told' flag." + +) + "AUX" (PTR:FIX 1) LEN:FIX TBL SUBJECT) + > + > + > + + > + + + ) + ( + ) + (T + )> + + )> + )> + "\"" CR> + ) + (> .LEN> + )>> + > + + ) + (T + )>) + (T + )> + T> + + + + + ) + (T + + + > + )> + ) + (T + + > + )> + )> + )> + + T> + + + ,FATAL-VALUE) + (T + + T)>> + +> + ) + (T + + ,FATAL-VALUE)>> + + + + ,FATAL-VALUE) + (T + + T)>> + + + )> + + ) + ( + + + ) + (T + )> + T> + + + ) + (T + )> + T> + + + T) + ( + > + ) + ( + > + + > + ) + ( + ) + (T + )>) + (T + )> + T> + + + T> + + + ,FATAL-VALUE) + ( + + T) + ( + > + + T) + ( + + T) + (T + + T)>> + + + T> + + + + + ) + ( + + ) + ( + )>) + ( + + ) + ( + )>) + (T + )>) + (T + )> + T> + +> + + ) + (T + + )> + T> + + + T> + + + T> + + + ,FATAL-VALUE) + ( + >> + + T) + (T + + T)>> + + + + > + )> + + ,FATAL-VALUE) + ( + ,FATAL-VALUE) + ( + + ) + (T + )> + T) + (T + > + ,RANDOM-PERSON> + ) + (T + >)>)> + + + + ) + (T + )> + T)>> + + + + + > + + <>) + ( + ) + (T + + + T)>> + + > + ) + (ELSE <>)>> + + +> + +> + + + ) + (T + )>) + ( + ) + (T + )> + T> + + + ,FATAL-VALUE) + ( + + >) + (T + )> + + + ) + (.OBJ + ) + (T + )> + T)>> + + + T> + + + T> + + + ,FATAL-VALUE) + (T + + T)>> + + + + T) + ( + + ; + T) + (T + )> + T> + + + T> + + + T) + (T + <>)>> + + + T> + + <>) + ( + T) + (T + <>)>> + + + + + ) + (T + )> + )> + T> + + + + )> + + T> + + + T> + +> + >> + ) + (T + )> + T> + + + ) + (T + )> + T> + +) (DIR3 <>) "AUX" X) + + > + + ,FATAL-VALUE>>> + + + > + + ,FATAL-VALUE>>> + + + >)>)> + .X> + + + + + ) + (T + )> + )> + > + + > + + > + + ) + ( + CR> + ) + ( + >> + + ) + (T + + )>) + ( + > + > + )> + > + + + ) + (T + + )>) + ( + > + > + + > + ) + ( + + + ) + (T + + )>)>) + ( + >> + + ) + ( + > + + ) + (T + + )>> + +; )) + + + )> + + > + + + + T> + +> + > ,W?ZZZP ,W?B ,W?C ,W?D ,W?E> + ) + (T .SYN)>> + +> + > + <> .SYN> + ,FATAL-VALUE) + (T + )>> + +> + + + + > + <>) + ( + > + > + + T) + ( + <==? ,HATCH-OBJECT>> + <>) + (> + > + > + > + <>) + (T + )>) + ( + + > + + > + + >> + ; "Make sure we aren't doing something ridiculous" + <>) + (T + )>) + (T <>)>> + +> + +> + + ; "Room has no enter from property" + > + ; "Or we're not in the room in question"> + ; "If we're next door, stop" + >> + ; "First follow whatever path is set up to get out of here" + + + ; "Goto failed for some reason" + .WALK-TO>)> + + ; "Stop if we're where we want to be, or if we're + supposed to enter from here." + )>) + (T )>>)> + >> + > + > >> + > + > + ; "Stop when we reach our current location" + )>) + (T + )>> + + ; "Go to the beginning of the entry path" + >>>> + )> + + >>> + )> + > 0> + )>>) + (T + )>> + + + ) + ( + ) + ( + ) + ;( + ) + (T + )> + T> + +)) + + ,FATAL-VALUE) + (T + + + > + ) + ( + + )> + >> + T)>> + + + ,FATAL-VALUE) + ( + + + ) + ( + + ) + (T + >)> + T) + ( + + + + T) + (T + + T)>> + + + > + > + > + ) + (> + ) + () + (T + + + "put") + (T "obligingly put")> + "on"> + )> + T> + + + T> + +) "AUX" WHO) + + + )> + > + + > <>) + ( + + ) + (T + + )> + + + ) + (T + )> + + T) + (<==? .L ,OTHER-TRAP-DOOR> <>) + ( + + + >> + "can't" <> T> + + T) + ( + + > + >> + + T) + (T + <>)>) + ( + + + T) + (> + + T) + (T + <>)>) + ( <>) + (> + + + <>) + (T + )>) + (T + + + + ) + (T + )> + )>) + (T + <>)>) + (T + <>)>> + +> + + + ) + ( + + + > + "take"> + + + ) + ( + > + ) + (T + )> + ) + ( + ) + (T + + + ) + ( + "pick" "up">) + (T + "take">)> + )> + ; > + ; + + )>)> + T> + +) (S1 <>) (S2 <>) (PLURAL? <>)) + + + ) + (T + + )> + )> + + + )>) + (.S1 + + )> + )>)> + > + + + + + + + + >> + + .ITAKE>)> + > + + > + + )> + <>) + ( + + >> + + )> + <>) + (> + > ,LOAD-ALLOWED>> + + + ) + (T + )> + )> + <>) + ( ,FUMBLE-NUMBER> + + )> + <>) + (T + ; "This will be a number from -1 to -4, depending on the object + (if it is mail). Or between 1 and 4 if it has been + transformed" + > + + > + > + > + + ; "Get the dir entry associated with it-- + printa, etc." + >> + ; "And stuff in there the next program to + print" + > + > + > + ; "Save the letter for the description of the + object" + + 0 + ,W?B) + (<==? .ML 2> ,W?C) + (<==? .ML 3> ,W?D) + (T ,W?E)>> + + + ; "Not the last one" + ) + (T + ; "Leave the remnants of the check + around." + + )> + + > + + ) + (ELSE + + .ITAKE>)>)> + + + + + .L)>> "So that .L an be analyzed." + +> + +"Count # objects being carried by THING." + +> + + ) + (> + >> + >)> + >> + .CNT> + +"Return total weight of objects in THING." + +> + + ) + (> + + > + >) + (T + >>)>)> + >> + > + + >)> + .WT> + +) "AUX" (V? <>) ACT STR) + + > + )> + + + .DR>) + (> + + )> + + + + + )> + + > + > + > + ; "Re-invent stuff so don't need action routine for every + room just to describe it." + + + )> + + ) + ( + )>)>)> + ;,LIT? + T> + + + + + + + + + + + + + + + +> + + + + > + +) "AUX" X) + + + ,M-EXIT>>> + ; "Let the place we are handle this first..." + )> + + + + + )> + + + ;> + ,M-ENTERING>> + > + ) + ( + + + )>)>)> + ,M-ENTERED>> + + T> + +> + )> + > + )> + > + )> + > + )> + T> + + + + + T> + +> + + + T> + +> + +; + T> + + + ) + (T + )> + + T> + + + T> + + + T> + + + T> + + + T> + + + T> + + + T> + +> + + + + + ) + (ELSE + )>) + (T + )> + + T> + + + + + + ) + (ELSE + )>) + ( ) + (T + )> + + T> + +> + + + T> + + + + + + T> + + + ) + ( + ) + (T + )> + T> + + + > + ) + (T + + + + )> + T> + + + > + >> + ) + ( + > + ) + ( + ) + ( + ) + (T + )>) + ( + ) + (> + ) + ( + ) + ( + ) + ( + ) + (T + )> + T> + + + > + ) + (> + ) + ( + ) + (T + )>> + + + ) + ( + + )> + ) + ( + <==? ,P-NUMBER 411>> + + <==? ,P-NUMBER 1212>>> + ) + (> + > + > + + + ) + (> + > + > + + ) + (T + )>) + (> + > + > + + ) + (T + )>) + (> + > + > + ) + (> + >> + + + + + + + + + + + ) + (> + >> + + + + + + + + + ) + (> + > + > + + ) + (T + )>) + ( + > + ) + (T + + + )>) + (T + + + ) + ( + ) + (T + )>)> + + + + )> + T> + +> + + + > + >> + ) + ( + + + ) + (T + )>) + (T + )> + + + + > + )> + > + )> + ) + (T + )>) + (T + )>) + (T + )> + T> + + + T> + + + ) + ( + ) + ( + + ) + (T + )>) + (T + + ,ACT?TAKE> + ,FATAL-VALUE)>> + + + >)> + + > + + + + + ,PERSON-MASK>>> + + + ) + (T + + > + )> + + )>) + (T + + )>)>)> + + ) + (T + )>> diff --git a/xjet.zil b/xjet.zil new file mode 100644 index 0000000..e6d2b4d --- /dev/null +++ b/xjet.zil @@ -0,0 +1,2967 @@ +"XJET for BUREAUCRACY: Copyright 1987 Infocom, Inc. All rights reserved." + + + + + +"New Bywater theory" + + + + + + + + + + + ; "Put smoker/non-smoker in next seat." + + T> + + + + + ) + ( + > + ) + ( + > + + ) + (> + ; "Not on the plane" + + T) + ( + T) + (T <>)>> + + +"Basic airplane stuff. Aisle to move around in, seats to sit in, etc." + +; "Generic AISLE room..." + + + + + +) (NEWVAL <>)) + + ,ROW-SEEN-BIT>>> T) + (T <>)>) + (T + ,ROW-SEEN-BIT>) + (T + + >)>>)>> + + )> + + + ,STARBOARD-DIVISOR> + *17*>) + (T + + <* .NEW ,STARBOARD-DIVISOR>>>)>> + + + )> + + + ,PORT-DIVISOR> + *17*>) + (T + + >>)>> + + )> + )> + .N> + ;>>> + + ; "Starboard side" + ) + (T + )>)>> + +> + + ,ALL-SEATS>> + + + + > + ,ALL-SEATS> + ) + (<0? .SEAT-MASK> + ) + (T + > + > + > + + >) + ( + > + >>>> + + >) + (T + + .FF? + T) + (T <>)>>)> + > + > 4> + )>>)> + + ) + (<==? .RARG ,M-BEG> + + + ,ALL-SEATS>> + >>> + + + + )>> + T) + (T <>)>) + ( <>) + ( + > + > + + ,M-EXIT>>> + )> + + )> + )> + + > + + + T) + ( + ) + ( + + T) + ( + + T) + ( + + T) + (T <>)>) + (T <>)>> + +) + (T + )> + + " and " CHAR >> + " are " .TAILSTRING> + ) + (T + )>> + + + )>> + +) + "AUX" (NEW-ROW ) (NEW-SEAT )) + + <==? .NEW-ROW ,CURRENT-ROW> + <==? .NEW-SEAT ,CURRENT-SEAT>> T) + (T <>)>) + ( + + <>) + ( + > + + + <>) + (T T)>) + (T + + <>)>> + + "OPT" (ROW: <>)) + )> + )> + .SEAT> + ;>>> T) + (T <>)>> + + FF? "OPT" (LAST? <>) "AUX" PERS) + + >> + + ) + (T + )>) + (T + + )> + ) + (T + )>> + + %) + (<==? .N ,SEAT-B> %) + (<==? .N ,SEAT-C> %) + (<==? .N ,SEAT-D> %)>> + +)) + ) + (T + )> + >> + +> + +"Wander the aisle. Front goes to Galley, back goes to area outside + lavatory." +)) + ,GALLEY>> + + + + )>> + + + + + ,GALLEY) + (T + > + > + + )> + + > + ,AISLE)>) + (<==? ,P-WALK-DIR ,P?SOUTH> + + ,LAV-LOBBY) + (T + > + > + + )> + > + + ,AISLE)>)>> + +>> + >)> + > + + + ; "North is forward, so east is to C & D" + + ) + (T + + )> + > + > + > + + <>) + (> + + <>) + ( + + + ,SEAT) + ( + + + ,SEAT)>> + +; "Miscellany around the seat." + + + <>) + ( + + + T) + (T + + + + T)>) + ( + + + + + T) + (T + )>)>> + + + +)) + + + + )>) + ( <>) + ( + + + )>)>> + + + + + + + + <>) + ( + > + > + ) + (> + ) + (T + + + )>) + ( + ) + ( + ) + (T + )>)>> + +>> + ,AISLE-COUNT) + (<==? .OFFS ,AISLE-COUNT> + .OFFS) + (T )>> + + )> + + + ) + (T + >)> + >) + (T + + ) + (T + >)> + >)>> + .START> + +) (SEAT )) + + + ) + (T + )> + + + > + +) (SEAT ) WHO) + + <==? .SEAT ,SEAT-A> + >> + + ) + (> + + + ) + (T + )> + ) + (T + )>> + +)) + + ) + (T + + > + + + ) + (T + )> + )>)>> + + 2>>> + +) + (SEAT ,CURRENT-SEAT) (BIT .SEAT) OFFS BITS WHICH) + > >)> + + >>> + + )> + >>> + .BIT> + ; "Lights already on" + >> + ) + (T + + >)> + > + +>> + + > -1> + ) + (T + )> + ) + (T <>)>> + + + + + + + )>> + + + + + )>> + + + + + + + + ) + (T + )> + T) + (T <>)>> + +> + >) + (T + + CHAR >>)>> + + T) + (T <>)>> + + + <==? ,P-WALK-DIR ,P?WEST>> + + <==? ,P-WALK-DIR ,P?EAST>> + <==? ,P-WALK-DIR ,P?OUT>> + ; "Move into the aisle" + + + ,AISLE) + ( + <==? ,CURRENT-SEAT ,SEAT-D>> + + <>) + (T + + >>) + (T + >>)> + + > + + + ) + (T + )> + <>) + (T + + + ,SEAT)>)>> + +> + ".\"" CR> + T) + (T <>)>> + + +; "The seat itself" + + + + > + + >> T) + (T <>)>> + +) "AUX" (NEW-ROW ) + (NEW-SEAT )) + + + " on your unbelievably luxurious Air Zalagasa flight to wherever it is you're going." CR> + > + ) + (T + )> + + + + )> + + + > + + > + )> + + + )> + T) + (<==? .CONTEXT ,M-BEG> + + > + ) + ( + > + + T) + (T <>)>) + (<==? .CONTEXT ,M-EXIT> + T) + (T + + + + + )>)>) + ( <>) + (> + ) + ( + + + )> + T) + ( + + > + ) + (T + + )>)>) + ( + + + T) + ( + > + ) + (T + + + T)>) + ( + + ,M-EXIT>>> + )> + + <==? ,CURRENT-ROW .NEW-ROW> + <==? ,CURRENT-SEAT .NEW-SEAT>> + ) + ( ) + ( + + + ) + (T + + + )> + + + )>) + (T + )> + + + + > + )> + + T) + ( + + <==? .NEW-ROW ,CURRENT-ROW>> + ) + ( + + 0> + + >)> + ) + (T + )>) + (> T) + ( + + ) + (T + )>) + ( + + ) + (T + )>)>> + + + + )> + + > + + + > + )> + > + + + + + <==? ,CURRENT-ROW 3> + > + >> + ) + ( + >> + + >>> + + )>)>> + +> +> + +)) + + + + > + <==? ,CURRENT-SEAT > + > + ; "Just returned to previous seat, so OK" + T) + (T + > + > + )> + > + )> + > + )> + + + >> 0> + + + "! Please don't let it happen again.\"" CR CR> + )>)>)>> + +)) + + "Ma'am") + (T "Sir")>) + (,SEX "ma'am") + (T "sir")>> + +"Get personal belongings out of seat, and give them to steward for return." +) + "AUX" NOBJ LEN (N 0)) + > + > + >)> + + >> + > + > + > + + )> + ) + (T + >)> + )>>)> + .N> + +> + +; "Make sure we've got a good seat number, and set things up so the + parser will like it." + + + >> + + + + + +) + (NMLEN )) + > + > + )>)>)> + + + > + T) + (T <>)>) + (T <>)>) + (T <>)>) + (T <>)>> + +) + (NMLEN ) + TAB) + + > + <>) + ( + ,LAV-LOBBY) + (> + 2>> + 2>>> + ,LAVATORY) + ( + ; "Random person/object" + ) (VEC ) + (COULD-BE-PERSON? <>) TMP (WIN? <>) ONAM) + > + ; "Kludged due to compiler bug" + <==? .ADJ >> + <==? .NAM .ONAM>> + )>)> + + <==? .NAM .ONAM>> + )>)> + > ,OBJECT-BREAK> + + ) + ( + >> + ; "Don't recognize any of these guys except + when they're actually present." + + + ) + (T + )> + + ) + (T + ; "Allow search to continue, since there may be + other matches later in the vector." + )>)> + > 3> + )> + .MATCH>)> + > + >>) + ( + > + + <==? .ADJ ,W?INTNUM> + > + + ) + (T + + + >)> + )> + + ,SEAT-A) + (<==? .NAM ,W?C> + ,SEAT-B) + (<==? .NAM ,W?D> + ,SEAT-C) + (<==? .NAM ,W?E> + ,SEAT-D)>> + ,SEAT)>) + ( + > + + > + >)> + + + ,SEAT) + ( + <==? .NAM ,W?INTNUM>> + + > + ,FATAL-VALUE) + (T + + ,AISLE)>) + ( + > + 1>> + >> + + > + ,FATAL-VALUE) + (T + + + ,SEAT)>)>> + +;"Object for useless random objects on the airplane: the escape + hatch, etc." + +> +> +> +> +> +> + + + + + + + + + + + + +)) + + ) + (<==? .WHICH ,HATCH-OBJECT> + ) + (<==? .WHICH ,GRANDCHILDREN-OBJECT> + ) + (<==? .WHICH ,MEAL-OBJECT> + ) + (<==? .WHICH ,BABY-OBJECT> + ) + (<==? .WHICH ,MOVIE-OBJECT> + )>> + + T) + (T <>)>> + +) + "AUX" (WHICH ) + STR) + + + ) + ( <>) + (> + "the hatch">) + ( + <>) + ( + 1> + ) + (T + )>) + ( + 0> + + ) + (T + + )>) + ( + > + + ) + (T + + > + ) + (T + )> + )>) + ( + + ) + (T + )>) + ( + + + T) + ( + + + + T) + (T + + T)>) + ( + ) + ( + <==? ,HERE ,OUTSIDE-PLANE>> + + T) + (T <>)>) + (<==? .WHICH ,MOVIE-OBJECT> + > + ) + ( <>) + ( + ) + ( + > + > + ) + (T + )>)>) + (<==? .WHICH ,BABY-OBJECT> + > + ) + ( ,MOMMA-PERSON> + ) + ( + ) + ( + )>) + ( + <==? .WHICH ,RECIPE-OBJECT>> + > + ,BUSINESS-PERSON>> + ) + ( + + ) + (T + )> + T) + ( + ) + ( + + + <==? + ,BUSINESS-PERSON>> + <>) + (T + )>) + (T <>)>)>) + (<==? .WHICH ,GRANDCHILDREN-OBJECT> + > + ) + ( + + <==? ,PRSO ,RANDOM-PERSON> + <==? + ,GRANDMA-PERSON>> + <>) + (T + )>)>> + + + ,HATCH-OBJECT + <> + ,HATCH-OBJECT + <> + ,HATCH-OBJECT + <> + ,FORM-OBJECT + + ,FORM-OBJECT + + ,FORM-OBJECT + + ,FORM-OBJECT + + ,FORM-OBJECT + + ,VISA-NUMBER-OBJECT + + ,VISA-NUMBER-OBJECT + + ,VISA-NUMBER-OBJECT + + ,VISA-NUMBER-OBJECT + + ,VISA-NUMBER-OBJECT + + ,GRANDCHILDREN-OBJECT + <> + ,GRANDCHILDREN-OBJECT + <> + ,GRANDCHILDREN-OBJECT + <> + ,GRANDCHILDREN-OBJECT + <> + ,GRANDCHILDREN-OBJECT + <> + ,GRANDCHILDREN-OBJECT + + ,GRANDCHILDREN-OBJECT + + ,GRANDCHILDREN-OBJECT + + ,GRANDMA-PERSON + <> + ,GRANDMA-PERSON + <> + ,GRANDMA-PERSON + + ,COMPUTER-OBJECT + + ,COMPUTER-OBJECT + + ,COMPUTER-OBJECT + + ,COMPUTER-OBJECT + + ,COMPUTER-OBJECT + <> + ,COMPUTER-OBJECT + + ,BUSINESS-PERSON + + ,BUSINESS-PERSON + <> + ,BUSINESS-PERSON + + ,BABY-OBJECT + + ,BABY-OBJECT + + ,BABY-OBJECT + + ,MOMMA-PERSON + <> + ,MOMMA-PERSON + + ,MOMMA-PERSON + <> + ,MOMMA-PERSON + + ,MOVIE-OBJECT + + ,MOVIE-OBJECT + + ,SMOKER-PERSON + + ,SMOKER-PERSON + <> + ,SMOKER-PERSON>> + +> + + + +)) + + + <>) + (T <>)>> + + + +) "AUX" (HO )) + + + <>) + ( + > + + + > 4> + "> + > + + + )> + T) + (T + + T)>) + (<==? .CONTEXT ,M-EXIT> + + + + + <>) + (T <>)>) + (T <>)>> + + + + + + ) + ( + )>)>> + + + +> + + + + + + + + )> + + + > + >> + )> + + <>) + (<==? .CONTEXT ,M-EXIT> + + + <>) + (<==? .CONTEXT ,M-BEG> + + > + ) + (T + )> + + T) + ( + > + ) + (T + )> + > + T) + ( + + + + + T)>) + ( <>) + (> + ) + ( + + + ) + (T + + )> + + + T)>)>)>> + + + + + <>) + ( + + + + T) + ( + ; "This will unlock the door, and check for waking + up at the end of the food scene." + T) + (T + + T)>) + (T + <>)>) + ( + + ) + (T + + + )>) + ( + + + + ) + (T + )>) + (T <>)>> + + + + +> + + + + + + + + > + + + )>)> + .IB>> + + + +)) + .LEN> + ,RECEPTACLE) + (T <>)>> + + + + > + ) + (T + )> + T) + ( + > + + + ) + (T + )> + T) + ( + + T) + (T + <>)>) + ( + > + ) + (T + )> + T) + ( + + T) + (T <>)>> + + + +)) + > )> + + <>) + ( + > + > + )> + <>) + ( + + ) + (T + )> + + T) + ( + + <>) + (> + <>) + (T + + + + + >)> + + T)>) + ( + > + + > + + T) + (T + + T)>) + ( + + T) + ( + > + + T) + ( + + T) + (T + <>)>> + +> + ) + (T + > + )> + T> + +> + + T) + (> + + T) + (T + + + + + T)>> + +> + > 3> + + > + > ,NUMBER-OF-TUNES> + )> + + + + >> + + + )>)> + + .PHONES>> + + + + + > + +> + >> + + + + + ) + ( + + ) + ( + + + ) + ( + + )> + + + ) + (T + )> + + + > + +> + +)) + > + > + >> + + + + + ) + (T + )> + ) + ( + + ) + (T + )> + ) + ( + + > + + + + )> + + > + + + + + + + + +) (MALE <>)) + + + >)> + 0 .XFEMALE>)>) + (T + + + >)> + 0 .MALE>)>)> + > + + + + > + ,W?STEWARDESS ,W?STEWARD> + + ) + (T + + )>> + +> + + > + + + "?\"" CR> + > + + + > + +)"AUX" LOSERS-ROW) + + + + ) + ( + ) + ( + )>) + ( <>) + ( + + <>) + ( + + ", but I'm not authorized to say anything about that.\"">)>)>) + ( + > + ) + (T + )>) + (T + + + + ,FATAL-VALUE) + (T T)>)>> + + + +> + .IRTS>)> + >)> + > + + )> + + + T> + +) "AUX" (SJ? <>)) + > <>) + ( + + + >> + + ) + (T + )> + + ". People who don't pay attention to our regulations can't be permitted to continue on the flight. Why, you could be hurt!\" " + + " looks thoughtful for an instant, and then reaches a decision" + ,PCR> + ; "You dead, Jack" + <>) + (T T)> + .SJ?> + T) + (T + + + T)>> + +> + +)) + + )>) + ( + + <>) + (T + + + + + T)>> + +;"meal-state: + 1: meal has been served (always what the loser didn't want) + 2: meal done (loser either mungs it or eats it). If doesn't + happen within five moves, give warning. If eaten, go to state 4. + 3: if meal still not eaten, throw loser off. Otherwise, to state 4. + 4: bad breath noticed--neighbor looks slightly green, rings for + stewardess, who produces toothbrush, suggests using it. + 5: after enough moves to get to lavatory, if not there, throw + off for having bad breath. + 6: in lavatory, immediately run return-to-seat. + 7: If don't wipe + sink, throw off for that as soon as leaves seat; otherwise, + too late on return to seat, throw off for that." + +> + > + )>) + (> + ; "Too late, loser" + > + )>) + (T + )> + > + +)) + + 5>> + + <>) + (T + > + >> + > + + ; "Time to serve meal" + "? The Chicken +Kiev, or the Peking Duck?\"" CR> + )) + > + + ) + ( + >) + (T + + + )> + + ", we're all out of that. Would you like the "> + ) + (T )> + + + + + >> + + ; "5 moves to eat it" + + ) + (T + + + + + ; "Naughty, naughty" + )>>) + ( + <0? .Y>> + ; "Counter ran out" + + > + ; "Meal eaten" + + + )> + + ; "Ready to offend neighbor" + ) + ( + + + <>) + (T + + + "! We can't have this! Our chef would be +mortally wounded if she discovered that one of her meals was wasted. Why +not make it easy on yourself and eat the food? I'm told it's absolutely +scrumptious.\"" CR " stands in the aisle, watching +you." CR> + ; "Now have two moves to eat the damn food, + otherwise thrown off." + + )>) + (<==? .X 3> + + > + + " takes your plate and hurries off." CR> + + + ) + (T + ".\"" + CR CR> + + ; "Tsk." + )>) + (<==? .X 4> + ; "Anybody in neighborhood notices stench." + > + + + <>) + (T + + + + T)>) + (<==? .X 5> + + + + <>) + (T + + + + ", but some of our passengers have noticed +that you're suffering from halitosis. In fact, they suggest that they may +be forced to use their discomfort bags if something isn't done about it.\" " + " is starting to +look a little green. \"I think it would be a very good idea for you +to use this, before we have to take stronger measures.\"" CR CR + + " hurries off, leaving you holding " + A ,TOOTHBRUSH ,PERIOD> + + + >) + (<==? ,HERE ,GALLEY> + ) + (T + )>)>) + (<==? .X 6> + > + + + + <>) + (T + + ", but we gave you every chance. For the +sake of everyone's health, we're going to have to do something about this.\"" + CR CR> + ; "Die" + )>)>) + (<==? .X 7> + + >> + + + ". You brushed your teeth in the lavatory, +and left quite a mess in the sink. You're being most discourteous to your +fellow passengers, " + + ". We can't tolerate this sort of behavior +on a civilized airline.\" " " is now accompanied +by a hefty young man who looks a little too eager for action" ,PCR> + ; "Too bad" + ) + (> + + + + )> + T) + (T + + <>)>)>)>)>> + + + + + + T)>> + + + + + + )>)>> + + + + + + ) + ( + + >> + ) + (T + )>> + + + + + + ) + ( + + + )>) + ( + + ) + ( + + )>) + ( + + ) + (T + )>)>> + + + + + + + + + + +",\" says the attendant." CR> + T) + ( + > + ) + ( + + + + T) + ( + + ) + (T + + )>) + ( + ) + ( + + ) + (T + )>)>) + ( + + )>)>> + +> + + + +> + + + ) + ( + + )>) + ( + > + + T) + ( + + + + ) + ( + + )> + + ) + ( + + + )> + + + + ) + ( + > + > + + )> + + + )>)> + + + + )> + .CHUTE>) + ( + > + + ) + ( + + ) + ( + + )> + + + )> + + T) + ( + + T) + (> + ) + ( + + + T) + ( + + T) + ( + + ) + (T + )> + T) + (T <>)>> + + + + + + ) + (T + + + ) + (T + > + + + + + + > + >> + ) + (T + )>)>)> + T> + + + + ) + ( + + + )> + + + + T> + + + +> + + T) + ( + <>) + ( + + + )> + + T) + ( + + T) + (T + <>)>> + + + + + + T> + + + + T> + + + + + ) + (T + )> + T> + +)) + + + + )> + + T) + (T + <>)>> + + + +)) + + + + ) + (T + )> + + T) + (T + <>)>> + + + + > + T) + (T + <>)>> + + +"Code for other passengers" + + +"Initialize state of seating: all rows are full, except for smoker/non-smoker + rows, which we handle on boarding. Other four people are put randomly around + plane, no more than one per row." + +> + + + + > + > + > 1> + > + ) + (T + >)> + + ,ALL-SEATS> + > + ; "Seat to leave blank" + + ) + (T + )> + > + + + )> + + + >> + ; "Set up personality in seat next to blank seat" + >)> + )>>> + + + > + + + > + >> + >> + >>)> + > " " + > " with " + >>> + + + + + > + +)) + .N>> + + + <==? .N>> T) + (T <>)>> + + + <==? .N>> T) + (T <>)>> + + + <==? ,PRSI ,AIRLINE-MEAL> + + >> + +> + +) + "AUX" (OWINNER ,WINNER) VAL) + + > + + .VAL> + + + >)> + + + ; "FOO, HELLO becomes HELLO FOO" + + T) + ( + > + ) + ( + > + ) + ( + + T) + ( + > + ; "FOO, GIVE ME BAR becomes TAKE BAR FROM FOO" + ) + ( + > + >> + ) + (T + + + >)>)> + T) + ( + ) + (T <>)>) + ( + >)> + + + )> + ) + (<==? .N ,GRANDMA-PERSON> + + )> + ) + (<==? .N ,BUSINESS-PERSON> + + ) + (T + )>) + (<==? .N ,MOMMA-PERSON> + + ) + (T + )>)>) + ( <>) + ( + > + + + >)> + T) + ( + > + ) + ( + + > + + + ,FATAL-VALUE) + (T <>)>) + (<==? .N ,GRANDMA-PERSON> + ) + (<==? .N ,SMOKER-PERSON> + ) + (<==? .N ,BUSINESS-PERSON> + ) + (<==? .N ,MOMMA-PERSON> + )>) + (<==? .N ,GRANDMA-PERSON> + ) + (<==? .N ,SMOKER-PERSON> + ) + (<==? .N ,BUSINESS-PERSON> + ) + (<==? .N ,MOMMA-PERSON> + )>> + + + + ) + (T + + >)>> + + + + > + ) + (T + )>) + ( + + + ) + ( + >> + + > + + + + + )> + ) + ( + + ) + (T + )> + ) + ( + ) + (T + + + )>) + ( + )>> + +> <>) + ( + + T) + (T <>)>> + +> + + + > + ) + ( + + > + + + )>) + (> + ) + (T + )>)>> + + + > + + + ; "boy touching..." + > + + ) + (T + + T)>) + (T + )>) + ( + + ) + ( + > + ) + (T + )>) + ( + >> + > + ) + (T + )>) + (T + )>) + ( + ) + ( + ) + (T <>)>> + + + > + ) + (T + )> + ) + ( + > + ) + (T + )>)>> + + + > + ) + (T + )>) + ( + + > + ) + (T + )>) + ( + > + + + ) + (> + ) + (T + + + + )>) + ( + ) + ( + > + ) + ( + > + + ) + (T + )>) + ( + ) + (T + )>) + ( + )>> + + + > + ) + (T + )>) + ( + + + + )>> + + + + > + )>) + ( + ) + (T + )>) + ( + )>> + + + 8> + )>> + + + + > + ) + (T + )>) + ( + ) + ( + > + + + + ) + (T + )>) + ( + ) + (T + )>) + ( + )>> + + + + + + + + T) + ( + + + + T) + (T + + + )>)>) + ( + ) + ( + ) + ( + + + + + T) + (T + )>)>> diff --git a/xjetdefs.zil b/xjetdefs.zil new file mode 100644 index 0000000..975a957 --- /dev/null +++ b/xjetdefs.zil @@ -0,0 +1,98 @@ + + + + + + + + + +) + (MEAL-HERE? BYTE <>) + (MEAL-SQUASHED? BYTE <>) + (MEAL-EATEN? BYTE <>) + (BUTTONS-OFF? BYTE <>) + (SITTING? BYTE <>) + (PHONES-PLUGGED-IN? BYTE <>) + (CURRENT-STAR BYTE 0) + (CURRENT-DESC BYTE 0) + (CURRENT-WEAPON BYTE 0) + (LOSER-CANT-LEAVE-SEAT? BYTE <>) + (PURSER-HERE? BYTE <>) + (PHONE-MUSIC:FIX BYTE 0) ; "Headphone stuff" + (PHONE-TIMER:FIX BYTE 0) ; "Random" + (LAST-ROW:FIX BYTE 0) ; "Previous row occupied" + (LAST-SEAT:FIX BYTE 0) ; "Previous seat" + (NEW-ROW:FIX BYTE 0) + (NEW-SEAT:FIX BYTE 0) + (RETURN-TO-SEAT-WAIT:FIX BYTE 0) + (GRANDMA-HAPPY? BYTE <>) + (SMOKER-IRATE? BYTE <>) + (BUSINESS-IRATE? BYTE <>) + (FALL-SCRIPT:FIX BYTE 5) + (CURRENT-NEIGHBOR BYTE 0) + (FLIGHT-ATTENDANT-HE/SHE:STRING "She") + (FLIGHT-ATTENDANT-HIM/HER:STRING "her")> + +> + +> + +> + +> + + ,ALL-SEATS>) + (T + + >>>)>> + +; "State of seating is low four bits; starboard passenger, if any, is next + four; port passenger is next four. Three remaining bits below the sign + bit can be used for flags." + + + + + +> + + + + + + + + diff --git a/xxjet.zil b/xxjet.zil new file mode 100644 index 0000000..491ab63 --- /dev/null +++ b/xxjet.zil @@ -0,0 +1,3766 @@ +"XXJET for BUREAUCRACY; Copyright 1987 Infocom, Inc. All rights reserved." + + + + + + + + + + + + + + + ; "Put smoker/non-smoker in next seat." + + + + + + + T> + + + + ; + + + + + + + + + + + + > + + + + + + ) + ( + ) + (> + ) + ( + + ) + (T + )>) + ( + ) + ( + > + ) + ( + > + + ) + (> + ; "Not on the plane" + + T) + ( + T) + (T <>)>> +\ +"Basic airplane stuff. Aisle to move around in, seats to sit in, etc." + +; "Generic AISLE room..." + + + +) (NEWVAL <>) + "AUX" (BIT )) + + .BIT> T) + (T <>)>) + ( + .BIT>>) + (T + >>)>> + + ,PERSON-MASK>> + +> 0) + (T 1)>> + +> + +) "AUX" OLD) + > + + > + > 255>)> + .ROW>)> + > + .WHO> .SEATNUM .ROW> + >> + > + .WHO> + .SEATNUM .ROW>)>> + + )> + )> + > 4> + >> + .NEW>> + + )> + )> + > 4> + >>>> + + )> + <+ + + + >> + + + <==? ,P-DIRECTION ,P?SOUTH>> + + <==? ,P-DIRECTION ,P?NORTH>>> T) + (T <>)>> + + + + > + > + > + > + + + + > + ) + ( > + ) + (T + > + T>)> + + )> + + ) + (<==? .RARG ,M-BEG> + > + + > + + + T) + (<==? ,P-DIRECTION ,P?WEST> + + T) + ( + ; "Looking up or down the aisle" + + > + + + ,PERSON-MASK> + ) + (T + + >)> + ) + (T <>)>) + ( + > + + 9> + ) + (<0? >> + ) + (T + )>) + (T <>)>)>) + (T <>)>) + ( + + > + + > + >) + (T + + )>> + + + T) + (T + <>)>) + (T <>)>) + (<==? .RARG ,M-ENTERED> + + ) + (T + >)> + + <==? ,CURRENT-ROW >> + + <==? ,CURRENT-ROW >>> + + + > + ) + (T + )> + )> + <>) + (<==? .RARG ,M-ENTERING> + + <>) + (<==? .RARG ,M-EXIT> + > + <0? >> + + )> + > + + + )> + <>) + ( <>) + ( + > + > + + )> + )> + + > + + + T) + ( + ) + ( + + T) + ( + + T) + ( + + T) + (T <>)>) + ( + ) + (T <>)>> + +> + >> + + ) + (<==? .P1 .P2> + ) + (T + > + .P2 <> .LAST?>)>> + +) + (T + )> + + " and " CHAR >> + " are " .STR> + + ) + (T + )>> + + + )>> + + + > + + >> + T) + (T <>)>> + +) + "AUX" (NEW-ROW ) (NEW-SEAT )) + + <==? .NEW-ROW ,CURRENT-ROW> + <==? .NEW-SEAT ,CURRENT-SEAT>> T) + (T <>)>) + ( + + <>) + ( + > + > + + <>) + (T T)>) + (T + + <>)>> + +>> + +)) + ) + (T + )> + >> + + + ) + (T + ) + (T + )> + + ) + (<==? .WHO ,ZALAGASANS-PERSON> + ) + (<==? .WHO ,FROBOZZCO-PERSON> + ) + (<==? .WHO ,MOMMA-PERSON> + )> + ) + (T )>)>> + + PERS FF? "OPT" (LAST? <>)) + + + ) + (<0? .PERS> + ) + (T + + )> + ) + (T + )>) + (T + )>> + +> + +"Wander the aisle. Front goes to Galley, back goes to area outside + lavatory." +)) + ,GALLEY>> + + + + + ; "In case f.a. is in galley" + + )>> + + + + + ,GALLEY) + (T + > + > + ,AISLE)>) + (<==? ,P-WALK-DIR ,P?SOUTH> + + ,LAV-LOBBY) + (T + > + > + ,AISLE)>)>> + +> + + ) + (T + )> + > + + + + ) + (T )>) + (T + + )> + > + >> + )> + > .LAST> + )>> + + + )>> + + + ; "North is forward, so east is to C & D" + + ) + (T + + )> + > + > + > + + <>) + (> + + <>) + ( + + + ,SEAT) + ( + + + ,SEAT)>> +\ +; "Miscellany around the seat." + + + <>) + ( + + + T) + (T + + + + T)>) + ( + + + + + T) + (T + )>)>> + + + +)) + + + + )>) + ( <>) + ( + + ) + ( + >> + + + T) + ( + + )>)>> + +>> + ,AISLE-COUNT) + (<==? .OFFS ,AISLE-COUNT> + .OFFS) + (T )>> + + )> + + + ) + (T + >)> + >) + (T + + ) + (T + >)> + >)>> + .START> + +) (SEAT )) + + + ) + (T + )> + + + > + + + <>> + + + + <>> + +) (SEATNUM ) WHO + (CT )) + 1>> + <==? .SEATNUM > + >> + ; "Table up" + > + > + > + + ,CURRENT-ROW> ) + (T )> + + + ) + (T + )> + > 5> + + ) + (T + )>> + + + ) + (T + )> + + >>)> + + + ) + (T + + >> + + + ,FOOD-MASK>>> + >>>>>>> + ) + (T + ,FOOD-MASK> + .SEATNUM .ROW> + + ) + (T )> + >> + " the seat in front of "> + + + ) + (T + + )> + )>)> + > + + ;"LIGHT" + > + ) + (<==? .WHICH ,LIGHT-BUTTON> ;"RECLINE" + > + >) + (T + > + >)> + >>>> + +) (SEATNUM ,CURRENT-SEAT) + DATA ON? WHICH) + > + >> + > .SEATNUM .ROW> + >) + (T + .SEATNUM .ROW> + )> + + >>> + ) + (.ON? + ) + (T + )> + > + +> + +)) + + > <>) + (T T)>) + (<0? .NEW> + >>) + (T + >)>> + +>> + + + ) + (T + )> + ) + (T <>)>> + + + + + + + > + <>) + ( + >> + )>)>> + + + + + )>> + + + + + )>> + + + + + )>> + + + + + + + + ) + (T + )> + T) + (T <>)>> + +> + >) + (T + + CHAR >>)>> + + + <==? ,P-WALK-DIR ,P?WEST>> + + <==? ,P-WALK-DIR ,P?EAST>> + <==? ,P-WALK-DIR ,P?OUT>> + ; "Move into the aisle" + + ,AISLE) + ( + <==? ,P-WALK-DIR ,P?WEST>> + + <==? ,P-WALK-DIR ,P?EAST>>> + + <>) + (T + + >>) + (T + >>)> + + > + + + ) + (T + )> + <>) + (T + + + ,SEAT)>)>> + +> + ".\"" CR> + T) + (T <>)>> + + +; "The seat itself" + + +)) + + > + <>) + (<==? <+ .SS ,CURRENT-SEAT> 5> + ; "seat 2 to seat 3, or vice versa--aisle" + + T) + (T + T T> + T)>> + +) "AUX" (NEW-ROW ) + (NEW-SEAT ) PERS) + + + + + )> + + + + + + + )>)> + > + )> + > + )> + ,LIGHT-MASK>>> + )> + + + + )> + + + > + + + + ,SEAT-C>> + + + ,SEAT-D>>> + ) + (T + )> + > + )> + + )> + + + )> + T) + (<==? .CONTEXT ,M-BEG> + + > + ) + ( + > + + T) + ( + > + + ) + (<==? ,P-DIRECTION ,P?WEST> + ) + (T <>)>) + (T <>)>) + (<==? .CONTEXT ,M-EXIT> + T) + (T + + <>)>) + (<==? .CONTEXT ,M-ENTERING> + + > + <==? ,CURRENT-ROW > + <==? ,CURRENT-SEAT > + >> + + + + + )> + )>) + ( <>) + (> + ) + ( + + ,CURRENT-SEAT> + ,CURRENT-ROW>>> + ) + ( + + + )> + T) + ( + + > + ) + (T + + )>)>) + ( + + + T) + ( + > + ) + (T + + + T)>) + ( + + <==? ,CURRENT-ROW .NEW-ROW> + <==? ,CURRENT-SEAT .NEW-SEAT>> + + ) + ( ) + (> + + + ) + (T + + + + + )>) + (T + )> + + + + > + + + T)>) + ( + + <==? .NEW-ROW ,CURRENT-ROW> + > + ) + (> + + > + ,PERSON-MASK> + + )> + ) + (T + )>) + (> T) + ( + + ) + (T + )>) + ( + + + T) + ( + + ) + (T + )>)>> + +> + <==? ,CURRENT-SEAT > + > + ".\" She looks as if she is almost tempted to +be polite, except that she doesn't know how, and walks away." CR>)>> + + ",\" she says, and walks away." CR> + + > + +> + ) + (T + + + ) + (T )> + ", we'd appreciate it. We need to talk to all the +passengers about something.\"" CR CR CTHE ,FLIGHT-ATTENDANT " seems strangely +reluctant to leave." CR> + )> + T> + + + > + +) "AUX" NEIGHBOR) + > + )> + > + + + )> + + > + + + > + )> + > + + + T) + (> + > + ) + ( + >>> + + >>>> + + )>)>> + +> +> +> + + + + + + + + ) + ( + ) + ( + + ) + (T + + + ,UNDER-SEAT>> + ) + (T + )>)>)>) + ( + > + <==? ,CURRENT-ROW > + <==? ,CURRENT-SEAT >> + ) + (T + + + )>) + ( + )>> + +)) + + + + > + <==? ,CURRENT-SEAT > + > + ; "Just returned to previous seat, so OK" + T) + (T + > + > + )> + > + )> + > + )> + + )> + + ) + (T + )> + + + > + > 0> + + + "! Please don't let it happen again.\"" CR CR> + )>)> + > + )>)>> + +)) + + "Ma'am") + (T "Sir")>) + (,SEX "ma'am") + (T "sir")>> + +"Get personal belongings out of seat, and give them to steward for return." + +> + > + >)> + + >> + > + > + > + + )> + ) + (T + >)> + )>>)> + .N> + + + +) + (NMLEN )) + > + > + )>)>)> + + + > + T) + (T <>)>) + (T <>)>) + (T <>)>) + (T <>)>> + + + + + +) + (NMLEN ) + TAB) + + > + <>) + (> + <==? .NAM ,W?BUTTON>> + ,FATAL-VALUE) + ( + <==? .NAM ,W?BUTTON>> + + ,P-NC1) + (T ,P-NC2)>> + + <>> + + ,FATAL-VALUE) + ( + ,LAV-LOBBY) + ( + ,LAV-LOBBY) + ( + > + ,AISLE) + ( + ; "Random person/object" + ) (VEC ) + (COULD-BE-PERSON? <>) TMP (WIN? <>) ONAM + PPROW) + > + ; "Kludged due to compiler bug" + <==? .ADJ >> + <==? .NAM .ONAM>> + )>)> + + <==? .NAM .ONAM>> + )>)> + > ,OBJECT-BREAK> + + ) + ( + >> + ; "Don't recognize any of these guys except + when they're actually present." + + + ) + (T + )> + + ) + (>> + ,CURRENT-ROW> + > + ) + ( + <==? .PPROW <- ,CURRENT-ROW 1>> + <==? > + .TMP>> + ) + ( + ; "Allow search to continue, since there may be + other matches later in the vector." + )>)> + > 3> + + > + + + ) + (T + )> + + ) + (.COULD-BE-PERSON? + )> + .MATCH>)> + > + >>) + ( + > + + <==? .ADJ ,W?INTNUM> + > + + ) + (T + + + >)> + )> + + ,SEAT-B) + (<==? .NAM ,W?C> + ,SEAT-C) + (<==? .NAM ,W?D> + ,SEAT-D) + (<==? .NAM ,W?E> + ,SEAT-E)>> + ,SEAT)>) + ( + > + + > + >) + (T + + )> + ,SEAT) + ( + <==? .NAM ,W?INTNUM>> + + > + ,FATAL-VALUE) + (T + + ,AISLE)>) + ( + > + 1>> + 1>> + + > + ,FATAL-VALUE) + (T + + + ,SEAT)>)>> + + T) + (T <>)>> + + + +)) + + + <>) + (T <>)>> + + + +) "AUX" (HO )) + + + + )>) + (<==? .CONTEXT ,M-ENTERING> + + + + > + + )> + <>) + ( + >> + + + <>) + (<==? .CONTEXT ,M-BEG> + + + + > + + >> + ) + ( + + + T) + ( + .LL>) + (T + + + > + ) + (T + )> + )> + > 4> + + > + "> + > + + + + + + + )> + > + + > + ) + (T + )>)> + + T)>) + (<==? .CONTEXT ,M-EXIT> + + + + + )> + + + + <>) + (T <>)>) + ( <>) + ( + ) + ( + + > + + T) + (T <>)>> + +> + + + <>> + + + + + <>) + ( + + + T) + (T + <>)>) + ( + ) + ( + ) + ( + ) + (T <>)>> + + + + +)) + .LEN> + ,RECEPTACLE) + (T <>)>> + + + + > + ) + (T + )> + T) + ( + > + + + ) + (T + )> + T) + ( + + T) + (T + <>)>) + ( + > + ) + (T + )> + T) + ( + + T) + (T <>)>> + +> + ) + (T + > + )> + T> + +> + + T) + (> + + T) + (T + + + + T)>> + + + +> ) + (T )>> + +)) + > )> + + <>) + ( + > + > + )> + <>) + ( + + + ) + (T + )> + + T) + ( + + <>) + (> + <>) + (T + + + + + )> + + T)>) + ( + > + + + + T) + (T + + T)>) + ( + + T) + ( + + + ) + (T <>)>) + ( + + T) + (T + <>)>> + +> + > 3> + + + + + >> + + + )>)> + + .PHONES>> + + + + + + + +) (MALE <>)) + + + >)> + 0 .XFEMALE>)>) + (T + + + >)> + 0 .MALE>)>)> + > + +)) + + + + + >) + (<==? .SEX 1> + )> + + + ) + (T + + )> + + > + +> + > + <>) + ( + > + )> + )>> + +)) + > + >> + > + > + >> + + + ".\" She escorts you to your seat."> + + ) + (T + + )> + + + + )>)> + > + )>> + +> + + + > + + + ) + (> + + + > + + + ) + (T + )>> + +)"AUX" LOSERS-ROW) + + ) + ( + >> + + + ,FATAL-VALUE) + ( + > + + + + + > + + + )>)> + .FAF>) + ( + + <0? + >> + + + ) + (T + )>) + ( + ) + ( + ) + ( + ) + ( + ) + (T + )> + ,FATAL-VALUE) + ( <>) + ( + + + "?\"" CR> + + T) + ( + ) + (> + + ", you can't think you have anything +valuable enough to get me to take that thing away.\"" CR> + + T) + (T + )>)>) + ( + + <>) + ( + ) + ( + + + + ) + ( + > + + > + ) + ( + > + ) + (T + + ", but I don't know "> + + "'">) + (T + )> + )>) + ( + ) + ( + ) + (T + + ", but I'm not authorised to say anything about that.\"" CR>)>)>)>) + ( + > + ) + (T + + + )>) + (T + + + + ,FATAL-VALUE) + (T T)>)>> + + +;> + .IRTS>)> + >)> + > + + )> + + + T> + +) "AUX" (SJ? <>)) + > <>) + (T + + + + + ".\" You find yourself being frog-marched back to your seat, +where you are unceremoniously dumped" ,PCR> + > + >> + )> + > + > + + + T) + (T + + + T)> + > + >)> + T)>> + +;> + +;) "AUX" CLOCKER) + > + > + )>) + (> + ; "Too late, loser" + > + )>) + (T + )> + + > + + + + + + + + + + > + ) + ( + + + + + T) + ( + + >> + ) + (> + ) + (T + + )>) + ( + ) + ( + + + + )> + + > + + ) + (T + )> + + + ) + (T + )>) + (T + )>) + ( + > + + + + + ) + (T + )> + + + ) + (T + )>) + (T + + )> + +",\" says the attendant." CR> + + T) + ( + )>) + ( + + ) + ( + )>)>> + +) + (VAL <>)) + >> + ". +Do you not know the regulations?\"" CR> + )> + + .VAL> + + + + T> + + + + + > + )> + + ) (TD? )) + > + + ) + (<==? .WD ,W?FILET> + >) + (T + + + )> + + ) + (T )> + ". Would you like the "> + ) + (T )> + + + ) + (T + )> + ". I do have a Zalagasan specialty: llama stewed with pulped roots +and other sorts of Zalagasan stuff. Would you like that?\"" CR> + + + )> + + ) + (T )> + + + + + + + + + + + + + >>> + +)) + > + >> + > + + .WARN>) + ( + ) + ( + > + >>> + )> + + ". You haven't eaten your delicious +Zalagasan dinner yet. Surely you must know the regulations.\""> + + > + > + + ) + (T + )>)> + + + T> + + +> + >> + + )>> + +)) + > 15> + + .IRP>)> + + ; "Announce meal, then force return to seat at reasonable time." + + + ) + (T + + )> + T> + + + + + + <==? .N>> T) + (T <>)>> + + + <==? .N>> T) + (T <>)>> + +)) + + ) + (<==? .WHICH ,HATCH-OBJECT> + ) + (<==? .WHICH ,GRANDCHILDREN-OBJECT> + ) + (<==? .WHICH ,BABY-OBJECT> + ) + (<==? .WHICH ,BOOK-OBJECT> + ) + (<==? .WHICH ,RECLINE-BUTTON> + ) + (<==? .WHICH ,LIGHT-BUTTON> + ) + (<==? .WHICH ,CALL-BUTTON> + ) + (<==? .WHICH ,THING-OBJECT> + ) + (<==? .WHICH ,VOICE-OBJECT> + ) + (<==? .WHICH ,BUTTONS-OBJECT> + ) + (<==? .WHICH ,FLUTE-OBJECT> + ) + (<==? .WHICH ,OTHER-FOOD-OBJECT> + ) + (<==? .WHICH ,FAKE-CHUTE-OBJECT> + + > + ) + (T + )>)>> + +) + "AUX" (WHICH ) + STR (FOOD-HERE? <>) NS FOOD-PERSON FOOD-SEAT) + + > + + >> + >> + ,FOOD-MASK>> + )>)>) + ( + >> + ,FOOD-MASK>> + )> + )> + + <==? .FOOD-PERSON ,PERSON-MASK>> + >> + > + + + + ,FOOD-MASK>> + ) + (T + >)>) + (<==? .NS ,PERSON-MASK> + + + + ,FOOD-MASK>> + ) + (T + >)>)>)>)> + + + + >>>) + (T + )> + + ) + (T + )>) + ( + .ROF>) + ( + + ) + ( + ) + (T + )>) + (.FOOD-HERE? + ) + (T + )> + ) + (T + )>) + (T + )>) + (<==? .WHICH ,FLUTE-OBJECT> + + <==? ,CURRENT-ROW 4>> + + ) + ( + )>) + (T + + T)>) + (<==? .WHICH ,BUTTONS-OBJECT> + > + + T) + ( + ) + ( + ) + (T <>)>) + ( + + >> + > + > + + + >)>) + (T + )>) + (<==? .WHICH ,BOOK-OBJECT> + + + <==? ,CURRENT-SEAT ,SEAT-D>>> + + + ) + ( <>) + ( + + + ) + ( + ) + ( + )>) + (T + )>) + (<==? .WHICH ,THING-OBJECT> + + ) + ( <>) + ( + + <==? ,CURRENT-SEAT ,SEAT-B>>> + + ) + ( + + + ) + (T <>)>) + (T + )>) + (<==? .WHICH ,HATCH-OBJECT> + + > + + ,FATAL-VALUE) + (<==? .CONTEXT ,M-OBJDESC> + ) + ( <>) + ( + + ) + (T + )>) + (> + "the hatch">) + ( + <>) + ( + + ) + ( 1> + ) + (T + )>) + ( + ) + ( + 0> + + ) + (T + + )>) + ( + > + + ) + (T + + + + + + + > + ) + (T + )> + + + + + )>) + ( + + ) + (T + )>) + ( + + + T) + ( + + + + T) + (T + + T)>) + ( + ) + ( + <==? ,HERE ,OUTSIDE-PLANE>> + + T) + ( + + ) + (T + )>) + (T <>)>) + (<==? .WHICH ,BABY-OBJECT> + > + ) + ( ,MOMMA-PERSON> + ) + ( + ) + ( + ) + ( + ) + ( + > + + 1> + + ) + (T + + )> + + + + ) + (T + )>)>) + (<==? .WHICH ,GRANDCHILDREN-OBJECT> + > + ) + ( + + <==? ,PRSO ,RANDOM-PERSON> + <==? + ,GRANDMA-PERSON>> + <>) + (T + )>) + ( + <>) + (> + ) + ( + > + 1>> + > + 1>> + ) + (> + 1>> + ) + (T + + + + + ) + (<==? .WHICH ,LIGHT-BUTTON> + ) + (T + )> + )>) + (<==? .WHICH ,CALL-BUTTON> + ) + (<==? .WHICH ,LIGHT-BUTTON> + ) + (T + )>)>)>> + + + <==? ,CURRENT-ROW 8> + + >> + + + > + >) + (T + + )> + + + T) + (T + + <>)>> + + + ,HATCH-OBJECT + + ,HATCH-OBJECT + <> + ,HATCH-OBJECT + <> + ,HATCH-OBJECT + <> + ,HATCH-OBJECT + + ,GRANDCHILDREN-OBJECT + <> + ,GRANDCHILDREN-OBJECT + <> + ,BUTTONS-OBJECT + <> + ,BUTTONS-OBJECT + + ,RECLINE-BUTTON + + ,LIGHT-BUTTON + + ,CALL-BUTTON + + ,BABY-OBJECT + + ,BABY-OBJECT + + ,BABY-OBJECT + <> + ,BOOK-OBJECT + + ,BOOK-OBJECT + + ,THING-OBJECT + <> + ,REGULATIONS-OBJECT + <> + ,VOICE-OBJECT + <> + ,VOICE-OBJECT + + ,FLUTE-OBJECT + + ,FLUTE-OBJECT + + ,OTHER-FOOD-OBJECT + + ,OTHER-FOOD-OBJECT + + ,OTHER-FOOD-OBJECT + + ,OTHER-FOOD-OBJECT + + ,OTHER-FOOD-OBJECT + + ,OTHER-FOOD-OBJECT + + ,OTHER-FOOD-OBJECT + + ,OTHER-FOOD-OBJECT + + ,OTHER-FOOD-OBJECT + + ,OTHER-FOOD-OBJECT + + ,OTHER-FOOD-OBJECT + + ,FAKE-CHUTE-OBJECT + <> + ,FAKE-CHUTE-OBJECT + <> + ,FAKE-CHUTE-OBJECT + + ,GRANDMA-PERSON + <> + ,GRANDMA-PERSON + <> + ,GRANDMA-PERSON + + ,MOMMA-PERSON + <> + ,MOMMA-PERSON + + ,MOMMA-PERSON + <> + ,MOMMA-PERSON + + ,SMOKER-PERSON + + ,SMOKER-PERSON + + ,SMOKER-PERSON + + ,SMOKER-PERSON + <> + ,SMOKER-PERSON + <> + ,POLITICIANS-PERSON + <> + ,ZALAGASANS-PERSON + ; ; + ;,BALD-PERSON + + ,FAT-PERSON + + ,FROBOZZCO-PERSON + + ,SLEEPER-PERSON>> + +> + +"Code for other passengers" + + +)) + .N>> + +> + +) + "AUX" (OWINNER ,WINNER) VAL) + + > + + .VAL> + + + <> + ;" strange, crackling sound like a pile of twigs being +stamped into a peat-bog" + ;" nice auntie who has been carefully pecking at her nice +food and admiring the thing she has bought for her nephew which she doesn't +know what it is, when" + " high-pitched, scraping sound like a large rat sliding +down a blackboard" + " doting mother who has been looking forward to a nourishing +meal after a day's hard baby-care when utterly without warning" + <> + <> + ;" nasty barking plop as if a large dog had been thrown into +a mud-hole" + ;"n angry man who has been rendered suddenly even more angry +when, while angrily consuming his irritating dinner" + " repulsive squelching mumble, as if a chattering +orangutan had suddenly had its mouth crammed full of earthworms" + " politician who has been (needless to say) talking +with his mouth full of airline food and" + " slippery sort of \"phloop!\" followed by a muffled +grunt, as if the soap had slipped out of someone's hands and hit him in +the mouth" + " Zalagasan businessman who has been making do with some +terribly dull Western food (when what he would really have liked is a nice +Zalagasan delicacy like llama stew with pulped roots and all sorts of stuff) +and all of a sudden" + ;" wet, slithery sort of clonk, as if a small +bowling-ball had been dropped onto a billiard-table smeared an inch thick +with stale peanut butter" + ;" bald man who has lost a lot of heat through his head +and has been restoring his calorific balance by consuming a nourishing +dinner when (O horrid but true)" + <> + <> + ;" wettish, muffled sound like an old llama exploding in a +fog on a distant hillside" + ;" fat man who has been innocently eating his fifth +dinner of the day when all of a sudden" + <> + <> + ;" sort of hissing, jangling \"sssplatch\" as if +a badly-made electrical device had fallen into a plate of cold porridge +and fused" + ;" Frobozzco executive who has interrupted his +discussion on how to use underhanded and manipulative marketing tricks +to foist his company's shoddy and unsafe products on the gullible public +to eat a tasteless meal at an inappropriate time of day, when, almost as +if it had been made by his own company," + " sort of damp, gurgling grunt as if a +pygmy hog had accidentally leapt into its trough on a dark, wet night" + " man who has been woken up from a refreshing sleep +over his book, asked if he would like something to eat, said \"No,\" +been brought it anyway, decided he had better eat it so that they will +take it away so that he can go back to sleep, and innocently started to +eat it when, like a bolt from the blue,">> + +) + TROW TSEAT) + + >)> + >> + .N> + ) + (<==? .N> + ) + (<==? .N> + ) + (<==? .N> + )> + ,FOOD-MASK>>> + )> + + >)> + + + + )> + ) + (T + ) + (T + )>)>) + (<==? .N ,MOMMA-PERSON> + + ) + (T + )>) + (<==? .N ,SMOKER-PERSON> + + ) + (T + )>) + (<==? .N ,POLITICIANS-PERSON> + )> + ) + (<==? .N ,ZALAGASANS-PERSON> + )> + ) + ;(<==? .N ,BALD-PERSON> + )> + ) + (<==? .N ,FAT-PERSON> + )> + ) + (<==? .N ,FROBOZZCO-PERSON> + )> + ) + (<==? .N ,SLEEPER-PERSON> + + + ) + (T + )>) + (T + )>)>) + (> + ,CURRENT-ROW> + + > + ,LIGHT-MASK>>> + )> + + + + ) + (T )> + + ,FATAL-VALUE) + (<==? .CONTEXT ,M-WINNER> + + ; "FOO, HELLO becomes HELLO FOO" + + ,FATAL-VALUE) + ( <>) + ( + > + + + ,FATAL-VALUE) + ( + > + + ,FATAL-VALUE) + ( + > + + ,FATAL-VALUE) + ( + > + + ,FATAL-VALUE) + ( + + ,FATAL-VALUE) + ( + > + ; "FOO, GIVE ME BAR becomes TAKE BAR FROM FOO" + + ,FATAL-VALUE) + ( + + > + + ) + (T + )>) + (T + )> + ,FATAL-VALUE) + ( + > + ) + (T + + ,FATAL-VALUE)>) + ( <>) + ( + + + ) + (<==? .N ,SMOKER-PERSON> + + ) + ( + + ) + ( + + + + )>) + (<==? .N ,SLEEPER-PERSON> + ) + (T + )>)> + ) + ( + > + ) + ( + > + > + + + ,FATAL-VALUE) + (<==? .N ,SLEEPER-PERSON> + + ,FATAL-VALUE) + (<==? .N ,ZALAGASANS-PERSON> + + + + ,W?STINGLAI ,W?KA\'ABI> + + )>) + (T + + )> + > + >>) + (T + )> + + ,FATAL-VALUE) + (<==? .N ,POLITICIANS-PERSON> + + ,FATAL-VALUE) + (T <>)>) + (<==? .N ,SLEEPER-PERSON> + + ,FATAL-VALUE) + (<==? .N ,ZALAGASANS-PERSON> + ) + (<==? .N ,POLITICIANS-PERSON> + ) + (<==? .N ,FROBOZZCO-PERSON> + ) + (<==? .N ,FAT-PERSON> + + > + <0? ,FOOD-MASK>>> + )> + ) + ( + + ) + (<==? .N ,SMOKER-PERSON> + ) + (<==? .N ,MOMMA-PERSON> + )>) + (<==? .N ,GRANDMA-PERSON> + ) + (<==? .N ,SMOKER-PERSON> + ) + (<==? .N ,MOMMA-PERSON> + )>> + + + + ,LIGHT-BUTTON ,CALL-BUTTON ,RECLINE-BUTTON + ,BUTTONS-OBJECT>>> + + + + + )> + ) + ( + + ) + ( + <>)>)>> + + + ) + ( + ) + ( + + ) + ( + ) + ( + ) + ( + ) + ( + ) + ( + + + )>)>> + + + > + + + ; "boy touching..." + > + + ) + (T + + T)>) + (T + )>) + ( + + ) + ( + ) + ( + ) + (T + )>) + ( + ) + (T <>)>> + + + > + ) + (T + )> + ) + ( + + > + ) + (T + + )>)>)>> + + + ) + ( + )>> + + + ) + ( + + ) + ( + ) + ( + ) + ( + ) + (T + )>)>> + + + + + + + + + T) + ( + + + + T) + (T + + + )>)>) + ( + ) + ( + ) + ( + + + T) + ( + + >>> + > + > + + + + + > + + + + > + + > + ) + (T + )> + + + + + ) + (T + )>) + (T + )>) + (T + )> + T) + ( + + + + + + + + )> + ) + (T + )>)>> + + + > + > + + )> + + ,SEAT-D> + ) + (T + )> + + > + + + T) + (T <>)>> + + + +> + + + .CHUTE>) + (> + + + ) + ( + + )>) + ( + > + + T) + ( + + + ) + ( + ) + ( + ) + ( + ) + (T + )> + ) + ( + + + )> + + + + ) + ( + > + > + + )> + + + + ) + (T + )> + )>)> + + + + )> + .CHUTE>) + ( + > + + ) + ( + + ) + ( + + )> + + + )> + + T) + (> + ) + ( + + + + + + ) + (T + )> + T) + ( + <>) + (T + )>) + ( + + T) + ( + + ) + (T + )> + T) + ( + + + >> + ; "Make sure we're not wearing the chute, and haven't + already scored this point" + + + + T) + (T <>)>> + + + + + + ) + (T + + + ) + (T + > + + + + + + > + >> + ) + (T + )>)>)> + T> + + + + + ) + ( + + ) + ( + + + ) + (> + + + )> + + + + T> + + + +> + + T) + ( + <>) + ( + + + )> + + T) + ( + + T) + (T + <>)>> + + + + + + T> + + + + T> + + + + + ) + (T + )> + T> + +)) + + + + )> + + T) + ( + > + + + T) + (T + <>)>> + + + +)) + + + + ) + (T + )> + + T) + (T + <>)>> + + + + > + T) + (T + <>)>> + + + + + + > + +> + >> + + + + + ) + ( + + ) + ( + + + ) + ( + + )> + + + ) + (T + )> + + + > + +> + +) (VAL <>)) + > + > + >> + >> + + + + + )> + + + + )> + ) + ( + + ) + (T + )> + ) + ( + + > + + + + )> + + > + + T) + (T <>)>> \ No newline at end of file diff --git a/xxjetdefs.zil b/xxjetdefs.zil new file mode 100644 index 0000000..22c6cec --- /dev/null +++ b/xxjetdefs.zil @@ -0,0 +1,112 @@ + + + + + + + + + + + + + + + + + + +> + + + + + % + % %>> + + + >> + + +> +> +> +> +> +> +> +> +> +> +> +> +> +> +> + + + + + + + + + +; "Bald guy removed" + + + + + + + + + (BYTE)>> + +) + (DING-ROW BYTE 0) + (SPLAT-COUNT BYTE 0) + (MEAL-HERE? BYTE <>) + (MEAL-SQUASHED? BYTE <>) + (MEAL-EATEN? BYTE <>) + (MEAL-ROW BYTE <>) + (MEAL-SEAT BYTE <>) + (LOOKED-AT-FOOD? BYTE <>) + (LOSER-CANT-LEAVE-SEAT? BYTE <>) + (FALL-SCRIPT BYTE 5) + (RETURN-TO-SEAT-ROUTINE <>) + (ATTENDANT-WORKING? BYTE <>) + (ATTENDANT-MENTIONED-REGULATIONS? BYTE 3) + (MIND-READ? BYTE <>) + (BABY-DISTURBED? BYTE 0) + (NEXT-TO-BABY? BYTE <>) + (AIRPHONE-RINGING? BYTE <>) + (VOICES-ONLINE? BYTE <>) + (FLIGHT-ATTENDANT-HE/SHE:STRING) + (FLIGHT-ATTENDANT-HIM/HER:STRING) + (HATCH-OPEN? BYTE 0) + (HATCH-LOSER? BYTE <>) + (CRASH-COMING? BYTE <>) + (NERD-FLEW-BY? BYTE <>) + (RETURN-TO-SEAT-WAIT BYTE 0) + (GOT-RECIPE? BYTE <>) + (SPLATTED-ROW BYTE 0) + (SPLATTED-PERSON BYTE 0) + (ATTENDANT-AT-ROW BYTE 0) + (RUN-PLANE-COUNT 0) + (SMOKER-IRATE? BYTE <>) + (IN-SEAT? BYTE <>)> + + \ No newline at end of file diff --git a/zalagasa.zil b/zalagasa.zil new file mode 100644 index 0000000..d2d9ee7 --- /dev/null +++ b/zalagasa.zil @@ -0,0 +1,564 @@ +"ZALAGASA for BUREAUCRACY. Copyright 1987 Infocom, Inc. All rights reserved." + + + + + + + +)) + <>) + (> + ) + ( + + + ) + (T + )> + )>> + + + + T> + + + +" TOUCHED ==> Natives are amused with recipe cartridge" + + + + ,IN-CLEARING) + (ELSE + + <>)>> + +) "AUX" RM) + + + + ) + (T + )> + ) + ( <>) + ( + ) + ( + + ) + (T + )>) + ( + > + ) + (T T)>) + ( + + ) + ( + ) + (T <>)>) + (ELSE <>)>> + + + +)) + + .ZALAG>) + ( + + ) + ( + ) + (T + )>) + ( + + ) + ( + ) + (T + )>) + (T + )> + ,FATAL-VALUE) + ( + <>) + ( + + + ) + (T + )>) + ( + + ) + ( + )>) + (T <>)>) + ( + <>) + ( + ) + ( + + T) + ( + + T) + (T + <>)>> + + + ) + (T + + + ) + (<==? .OBJ ,RECIPE> + + + + + + + + + + T) + (<==? .OBJ ,ADVENTURE> + )>)>)>> + + + + T) + ( + + T) + (T + + T)>> + + + ) + (T + + + ) + (T + )> + )> + T> + + + + T) + (<==? .OBJ ,ME> + + T) + (<==? .OBJ ,NERD> + ) + (<==? .OBJ ,COMPUTER> + ) + (ELSE + )>> + + + + + +)) + + + + ) + (T <>)>> + +> + + + + + + ) + ( + )>)>> + + + + + >> + ) + (T + )> + > + +)) + + + ) + (T + + + + + + + )>) + ( <>) + ( + + <>) + (> + + + >)> + + T)>) + ( + + + + > + + ) + (T + + )>) + ( + + + ) + (T + )> + + + ) + ( + ) + ( + + ) + (T + )> + T) + ( + )>) + (T <>)>> + + + + + + + +> + + + +> + + +) + (VAL 0)) + > + )> + + + ) + (T )> + > + + + ; "Losing" + > + > + >> + ; "Back in initial state" + + T) + (T <>)>) + (T + + > + + + )> + > + + + <==? .H2 ,MIDDLE-HANDLE>> + T) + ( + <==? .H2 ,RIGHT-HANDLE>> + T) + (T <>)>) + (<==? ,HANDLE-TURNS 2> + + <==? .H2 ,RIGHT-HANDLE>> + T) + (T <>)>) + (<==? ,HANDLE-TURNS 3> + > + > + >> + T) + (T <>)>)>)>> + + + ,HANDLE-COUNT> + ,LEFT-HANDLE) + (T <>)>) + ( + ,P-IT-OBJECT) + (T <>)>> + + + + + > + ; "TURN HANDLES BECOMES TURN ALL HANDLES" + + + + + )> + + ) + ( + + ; "TURNING ONE OR TWO HANDLES" + 2> + >> + >> + > + + ) + (<==? ,HANDLE-TURNS 3> + + ) + (T + )> + ) + (<==? 3> + + )>)> + + T) + ( + ) + ( + ) + ( + > + ; "ALL PREVIOUS RESPONSES PLAUSIBLE FOR MORE THAN ONE; NOW + CAUSE DEFAULTS TO BE APPLIED TO EACH IN TURN" + + T) + ( + + )>> + + + + + > + + + + + + + ,ODD-GATE-SOLVED?) + (T + + <>)>> + +)) + + + + ) + (<==? .CONTEXT ,M-ENTERING> + + + + <>) + (<==? .CONTEXT ,M-EXIT> + + + + <>) + (T <>)>> + + + + + )>> + + + + + ) + (T <>)>> + + IMPURE>> + IMPURE>> + IMPURE>> + IMPURE>> + +> +> + +>