|
|
1.1 ! root 1: |associate(author; ! 2: incr A, clear T, ! 3: clear string T1 T2 T3 ! 4: T4 T5 T6; ! 5: store string A\nA T1, ! 6: store string I\nA T2, ! 7: store string L\nA T3, ! 8: store string D\nA T4, ! 9: store string E\nA T5, ! 10: store string R\nA T6; ! 11: [name $; ! 12: incr T, set string T1 $;] ! 13: [initials $; ! 14: incr T, set string T2 $;] ! 15: [location $; ! 16: incr T, set string T3 $;] ! 17: [department $; ! 18: incr T, set string T4 $;] ! 19: [extension $; ! 20: incr T, set string T5 $;] ! 21: [room $; ! 22: incr T, set string T6 $;] ! 23: [$; ! 24: incr T, ! 25: set string T\nT $;]) ! 26: |associate(document; ! 27: incr D, clear T, ! 28: clear string T1 T2 T3; ! 29: store string S\nD T1, ! 30: store string F\nD T2, ! 31: store string W\nD T3; ! 32: [number $; ! 33: incr T, set string T1 $;] ! 34: [file_case $; ! 35: incr T, set string T2 $;] ! 36: [work_program $; ! 37: incr T, set string T3 $;] ! 38: [$; ! 39: incr T, ! 40: set string T\nT $;]) ! 41: |environment(title; ! 42: divert.input on TI;) ! 43: |environment(date; ! 44: divert.string DT;) ! 45: |environment(abstract; ! 46: divert.input on AS; ! 47: sawabstract on) ! 48: |environment(keywords; ! 49: divert.input on KW; ! 50: sawkeywords on) ! 51: |environment(titlebox; ! 52: ; ! 53: new.page, indent.line +4.375i, string LO, ! 54: blank.lines 2, size -2, remember P0, ! 55: page.offset -.5i, text "subject:", new.line, ! 56: return P0, indent +4.875i, text "date:", blank.lines, ! 57: text "from:", indent -4.875i, new.line, page.offset +.5i, size +2, ! 58: line.length -3i, font bold, return P0, fill off, ! 59: macro TI, fill on, line.length +3i, new.line, ! 60: size -1, ! 61: |for i in 1 2 3 4 5 6 7 8 9 [ ! 62: if begin "\nD>=$i", ! 63: new.line, text "Work Program ", string W$i, ! 64: text " File Case ", string F$i, ! 65: if end, ! 66: ] ! 67: size +1, ! 68: return P0, indent +4.75i, line.length +3i, ! 69: string DT, ! 70: |for i in 1 2 3 4 5 6 7 8 9 [ ! 71: if begin "\nA>=$i", ! 72: blank.lines, ! 73: string A$i, new.line, ! 74: string L$i, text " ", ! 75: string D$i, new.line, ! 76: string R$i, text " ", ! 77: string E$i, ! 78: if end, ! 79: ] ! 80: line.length -3i, spacing on, blank.lines, fill off, ! 81: string S1, fill on, indent -4.75i, blank.lines 3, ! 82: center on, font roman, text italics "TECHNICAL MEMORANDUM", ! 83: center off, minimum.lines 2) ! 84: |associate(mercury; ! 85: clear T, clear string T0 T1 ! 86: T2 T3 T4 T5 ! 87: T6 T7 T8 T9; ! 88: if begin "@\*(T0@yes@", ! 89: incr M, ! 90: set string M\nM ! 91: "CHM - Chemistry and Materials", ! 92: if end, ! 93: if begin "@\*(T1@yes@", ! 94: incr M, set string M\nM ! 95: "CMM - Communications", ! 96: if end, ! 97: if begin "@\*(T2@yes@", ! 98: incr M, set string M\nM ! 99: "CMP - Computing", ! 100: if end, ! 101: if begin "@\*(T3@yes@", ! 102: incr M, set string M\nM ! 103: "ELC - Electronics", ! 104: if end, ! 105: if begin "@\*(T4@yes@", ! 106: incr M, set string M\nM ! 107: "LFS - Life Sciences", ! 108: if end, ! 109: if begin "@\*(T5@yes@", ! 110: incr M, ! 111: set string M\nM ! 112: "MAN - Manufacturing", ! 113: if end, ! 114: if begin "@\*(T6@yes@", ! 115: incr M, ! 116: set string M\nM ! 117: "MAS - Mathematics and Statistics", ! 118: if end, ! 119: if begin "@\*(T7@yes@", ! 120: incr M, set string M\nM ! 121: "MKT - Marketing", ! 122: if end, ! 123: if begin "@\*(T8@yes@", ! 124: incr M, set string M\nM ! 125: "PHY - Physics", ! 126: if end, ! 127: if begin "@\*(T9@yes@", ! 128: incr M, set string M\nM ! 129: "STD - Standards", ! 130: if end; ! 131: [chm; ! 132: incr T, incr M, ! 133: set string M\nM ! 134: "CHM - Chemistry and Materials";] ! 135: [cmm; ! 136: incr T, incr M, ! 137: set string M\nM "CMM - Communications";] ! 138: [cmp; ! 139: incr T, incr M, ! 140: set string M\nM "CMP - Computing";] ! 141: [elc; ! 142: incr T, incr M, ! 143: set string M\nM "ELC - Electronics";] ! 144: [lfs; ! 145: incr T, incr M, ! 146: set string M\nM "LFS - Life Sciences";] ! 147: [man; ! 148: incr T, incr M, ! 149: set string M\nM "MAN - Manufacturing";] ! 150: [mas; ! 151: incr T, incr M, ! 152: set string M\nM ! 153: "MAS - Mathematics and Statistics";] ! 154: [mkt; ! 155: incr T, incr M, ! 156: set string M\nM "MKT - Marketing";] ! 157: [phy; ! 158: incr T, incr M, ! 159: set string M\nM "PHY - Physics";] ! 160: [std; ! 161: incr T, incr M, ! 162: set string M\nM "STD - Standards";] ! 163: [yes; ! 164: incr T, ! 165: set string T\nT yes;] ! 166: [no; ! 167: incr T, ! 168: set string T\nT no;]) ! 169: |associate(proprietary_class;;; ! 170: [yes; ! 171: set string PC yes;] ! 172: [no; ! 173: set string PC no;]) ! 174: |associate(government_security;;; ! 175: [yes; ! 176: set string GS yes;] ! 177: [no; ! 178: set string GS no;]) ! 179: |associate(earlier;;; ! 180: [document_number $; ! 181: set string EN $;] ! 182: [$; ! 183: set string EN $;]) ! 184: |associate(att;;; ! 185: [is_release yes; ! 186: set string AR yes;] ! 187: [is_release no; ! 188: set string AR no;] ! 189: [yes; ! 190: set string AR yes;] ! 191: [no; ! 192: set string AR no;]) ! 193: |environment(dh_name; ! 194: divert.string DH;) ! 195: |environment(director_name; ! 196: divert.string DN;) ! 197: |environment(distribute_complete_memo; ! 198: divert.input on CM;) ! 199: |environment(distribute_cover_sheet; ! 200: divert.input on CS;) ! 201: |associate(add_totals;;; ! 202: [text $; ! 203: add constant TP $, add constant OM $;] ! 204: [other $; ! 205: add constant OC $;] ! 206: [figures $; ! 207: add constant FG $;] ! 208: [tables $; ! 209: add constant TB $;] ! 210: [references $; ! 211: add constant RF $;]) ! 212: |environment(other; ! 213: store OM P;) ! 214: |environment(cover_sheet; ! 215: clear string PH PF, new.page, line.spacing 1, ! 216: inline off, size 10, inline on, font.family helvetica, ! 217: line.length 7.5i, page.length +.75i, page.offset .3i, indent 0, ! 218: cs_heading_page1, ! 219: cs_title, ! 220: cs_authors, ! 221: cs_numbers, ! 222: cs_keywords, ! 223: cs_mercury, ! 224: cs_abstract_part1, ! 225: cs_footer_page1, ! 226: cs_abstract_part2, ! 227: cs_heading_page2, ! 228: cs_distribution_list, ! 229: cs_spacing, ! 230: cs_government, ! 231: cs_att, ! 232: cs_signatures, ! 233: cs_proprietary, ! 234: cs_earlier, ! 235: cs_footer_page2, ! 236: cs_abstract_continuation, ! 237: cs_distribution_continuation;) ! 238: |environment(cs_heading_page1; ! 239: spacing on, goto 0.2i, inline off, size 16, space 18, font bold, ! 240: title "AT&T Bell Laboratories" " " "Document Cover Sheet", ! 241: title " " " " "for Technical Memorandum"; ! 242: thick.line) ! 243: |environment(cs_title; ! 244: new.line, remember P0, ! 245: text bold "Title:", horizontal.motion 5.5i, ! 246: text bold "Author's Date:", ! 247: return P0, ! 248: indent +.5i, line.length 5.0i, ! 249: macro TI, ! 250: line.length 7.5i, indent -.5i, ! 251: return P0, blank.lines, indent.line 6i, ! 252: string DT, new.line; ! 253: blank.lines -0.1i, thick.line) ! 254: |environment(cs_authors; ! 255: tab.stops 1.5i 4.45i 5.7i 6.95i, ! 256: if else "\nA>1", ! 257: set string SS "s", ! 258: if else, ! 259: clear string SS, ! 260: tab, text bold "Author", ! 261: string bold SS, ! 262: tab, text bold "Location", tab, text bold "Ext.", ! 263: tab, text bold "Dept.", ! 264: tab.stops 4.2i 4.5i 5.5i 6.7i, indent .2i, ! 265: |for i in 1 2 3 4 5 6 7 8 9 [ ! 266: if begin "\nA>=$i", ! 267: new.line, string A$i, tab, ! 268: string L$i, text " ", string R$i, tab, ! 269: string E$i, tab, string D$i, ! 270: if end, ! 271: ] ! 272: new.line; ! 273: blank.lines -0.1i, thick.line) ! 274: |environment(cs_numbers; ! 275: tab.stops 0.9i 3.4i 5.65i, ! 276: if else "\nD>1", ! 277: set string SS "s", ! 278: if else, ! 279: clear string SS, ! 280: tab, text bold "Document No", ! 281: string bold SS, text bold ".", ! 282: tab, text bold "Filing Case No", ! 283: string bold SS, text bold ".", ! 284: tab, text bold "Project No", ! 285: string bold SS, text bold ".", ! 286: tab.stops 0.8i 3.5i 5.75i, ! 287: |for i in 1 2 3 4 5 6 7 8 9 [ ! 288: if begin "\nD>=$i", ! 289: new.line, tab, string S$i, ! 290: tab, string F$i, tab, string W$i, ! 291: if end, ! 292: ] ! 293: new.line; ! 294: blank.lines -0.1i, thick.line) ! 295: |environment(cs_keywords; ! 296: text bold "Keywords:", ! 297: blank.lines 0.1i, indent.line .2i, adjust off, ! 298: macro KW, new.line; ! 299: blank.lines -0.1i, thick.line) ! 300: |environment(cs_mercury; ! 301: tab.stops 2i 4i, ! 302: text bold "MERCURY Announcement Bulletin Sections:", ! 303: blank.lines 0.1i, indent .9i, inline off, size 8, space 10, ! 304: |for i in 1 4 7 [ ! 305: if begin "\nM>=$i", ! 306: set i $i+1, ! 307: set j $i+2, ! 308: string M$i, tab, ! 309: string M\ni, tab, ! 310: string M\nj, ! 311: if end, ! 312: ] ! 313: ; ! 314: blank.lines -0.1i, thick.line) ! 315: |environment(cs_abstract_part1; ! 316: text bold "Abstract:", minimum.lines 0, paragraph, ! 317: remember P0;) ! 318: |environment(cs_footer_page1; ! 319: goto 9.375i, ! 320: remember P1, ! 321: thick.line, ! 322: store TT P, decr TT, ! 323: add TT TP, add TT OC, ! 324: add constant TT 2, ! 325: store OC TT, sub OC OM, ! 326: store TP TT, sub TP OC, ! 327: size -2, ! 328: text bold "Total Pages ", text "(including document cover sheet): ", ! 329: size +2, number TT, ! 330: return P1, blank.lines .5i, indent .6i, ! 331: if else begin "@\*(PC@yes@", ! 332: text bold " AT&T \(em PROPRIETARY (Restricted)", ! 333: indent -.1i, ! 334: new.line, text "Solely for authorized persons having a need to know", ! 335: new.line, text "Use pursuant to Company Instructions.", ! 336: new.line, text "Requires Department Head approval (see below).", ! 337: if end, ! 338: if else begin, ! 339: text bold " AT&T \(em PROPRIETARY", ! 340: indent -.1i, ! 341: new.line, text "Use pursuant to Company Instructions", ! 342: if end, ! 343: indent 0, ! 344: return P1, blank.lines .2i, indent.line 5.25i, ! 345: text bold "Mailing Label";) ! 346: |environment(cs_abstract_part2; ! 347: return P0, indent .2i, line.length 7i, ! 348: invoke at constant 9.375i C0, macro AS, ! 349: if begin "@\n(.z@CO@", ! 350: invoke end, rename CO AS, ! 351: store diversionheight MA, ! 352: if end; ! 353: invoke off C0, line.length 7.5i) ! 354: |environment(cs_heading_page2; ! 355: new.page, spacing on, goto 0.2i, ! 356: text bold "Initial Distribution Specifications", ! 357: horizontal.motion 3.0i, ! 358: string bold S1, ! 359: new.line; ! 360: blank.lines -0.1i, thick.line) ! 361: |environment(cs_distribution_list; ! 362: horizontal.motion 1.25i, ! 363: text bold "Complete Copy", horizontal.motion 2.75i, ! 364: text bold "Cover Sheet Only", ! 365: new.line, remember P0, fill off, indent .2i, ! 366: set T 6.25i, ! 367: if "!@\*(PC@yes@", ! 368: if "@\*(DH@@", ! 369: if "@\*(DN@@", ! 370: add constant T 0.6875i, ! 371: if "!@\*(GS@yes@", ! 372: add constant T 0.25i, ! 373: if "\nA<=3", ! 374: add constant T 0.4375i, ! 375: if "\nA<=6", ! 376: add constant T 0.4375i, ! 377: if "@\*(EN@@", ! 378: add constant T 0.25i, ! 379: invoke on number T C0, ! 380: macro CM, ! 381: if else begin "@\n(.z@CO@", ! 382: invoke end, rename CO CM, ! 383: store diversionheight MM, ! 384: if end, ! 385: if else, ! 386: clear string CM, ! 387: return P0, indent 4i, ! 388: invoke on number T C0, ! 389: macro CS, ! 390: if else begin "@\n(.z@CO@", ! 391: invoke end, rename CO CS, ! 392: store diversionheight MS, ! 393: if end, ! 394: if else, ! 395: clear string CS; ! 396: indent 0, invoke off C0) ! 397: |environment(cs_spacing; ! 398: goto 6.75i, ! 399: if "!@\*(PC@yes@", ! 400: if "@\*(DH@@", ! 401: if "@\*(DN@@", ! 402: blank.lines 0.6875i, ! 403: if "!@\*(GS@yes@", ! 404: blank.lines 0.25i, ! 405: if "\nA<=3", ! 406: blank.lines 0.4375i, ! 407: if "\nA<=6", ! 408: blank.lines 0.4375i, ! 409: if "@\*(EN@@", ! 410: blank.lines 0.25i; ! 411: thick.line) ! 412: |environment(cs_government; ! 413: if begin "@\*(GS@yes@", ! 414: text bold "Government Security Classified", ! 415: blank.lines -0.1i, thick.line, ! 416: if end;) ! 417: |environment(cs_att; ! 418: if else begin "@\*(AR@no@", ! 419: text bold "Future AT&T Distribution by ITDS - ", ! 420: text "Obtain approval for release to any AT&T employee", ! 421: blank.lines -0.1i, thick.line, ! 422: if end, ! 423: if else begin, ! 424: text bold "Future AT&T Distribution by ITDS - ", ! 425: text "Release to any AT&T employee (excluding contract employees)", ! 426: blank.lines -0.1i, thick.line, ! 427: if end;) ! 428: |environment(cs_signatures; ! 429: if else "\nA>1", ! 430: set string SS "s", ! 431: if else, ! 432: clear string SS, ! 433: text bold "Author Signature", ! 434: string bold SS, new.line, ! 435: if "\nA=0", ! 436: blank.lines 0.4375i, ! 437: |for i in 0 3 6 [ ! 438: tab.stops 2.635i 5.25i, ! 439: if "\nA>$i", ! 440: blank.lines 0.1i, ! 441: if "\nA=($i+1)", ! 442: line 2.25i, ! 443: if begin "\nA=($i+2)", ! 444: line 2.25i, tab, line 2.25i, ! 445: if end, ! 446: if begin "\nA>($i+2)", ! 447: line 2.25i, tab, line 2.25i, tab, line 2.25i, ! 448: if end, ! 449: new.line, ! 450: if begin "\nA>$i", ! 451: tab.stops 0.25i 2.875i 5.5i, ! 452: set i $i+1, ! 453: set j $i+2, ! 454: set k $i+3, ! 455: tab, string A\ni, ! 456: tab, string A\nj, ! 457: tab, string A\nk, ! 458: if end, ! 459: ] ! 460: ; ! 461: blank.lines -0.1i, thick.line) ! 462: |environment(cs_proprietary; ! 463: if begin "@\*(PC@yes@", ! 464: text bold "Organizational Approval ", ! 465: size -1, text "(Department Head approval required)", size +1, ! 466: if begin "@\*(DH@@", ! 467: if begin "@\*(DN@@", ! 468: tab.stops .5i 4i, ! 469: blank.lines 0.1i, ! 470: tab, tab, line 3i, ! 471: new.line, tab.stops 7iR, ! 472: tab, text "Department Head", ! 473: blank.lines -0.1i, thick.line, ! 474: if end, ! 475: if end, ! 476: if end, ! 477: if begin "!@\*(DH\*(DN@@", ! 478: if begin "!@\*(PC@yes@", ! 479: text bold "Organizational Approval ", ! 480: size -1, text "(Optional)", size +1, ! 481: if end, ! 482: tab.stops .5i 4i, ! 483: blank.lines 0.1i, ! 484: if else begin "!@\*(DH@@", ! 485: if else begin "!@\*(DN@@", ! 486: tab, line 3i, tab, line 3i, ! 487: if end, ! 488: if else begin, ! 489: tab, tab, line 3i, ! 490: if end, ! 491: if end, ! 492: if else begin, ! 493: tab, tab, line 3i, ! 494: if end, ! 495: new.line, tab.stops .8i 4.3i, ! 496: if else begin "!@\*(DH@@", ! 497: if else begin "!@\*(DN@@", ! 498: tab, ! 499: string DH, text ", Department Head", ! 500: tab, ! 501: string DN, text ", Director", ! 502: if end, ! 503: if else begin, ! 504: tab, tab, ! 505: string DH, text ", Department Head", ! 506: if end, ! 507: if end, ! 508: if else begin, ! 509: tab, tab, ! 510: string DN, text ", Director", ! 511: if end, ! 512: blank.lines -0.1i, thick.line, ! 513: if end;) ! 514: |environment(cs_earlier; ! 515: if begin "!@\*(EN@@", ! 516: text bold ! 517: "Supersedes or amends document number ", ! 518: string EN, ! 519: new.line, blank.lines -0.1i, thick.line, ! 520: if end;) ! 521: |environment(cs_footer_page2; ! 522: text bold "For Use by Recipient of Cover Sheet:", ! 523: new.line, remember P0, size -3, space -4, ! 524: blank.lines -.1i, line.length 3.5i, indent .1i, indent.line -.1i, ! 525: text "Computing network users may order copies via the ", ! 526: text italics "library -k ", text "command;", ! 527: new.line, text "for information, type ", ! 528: text italics "man library ", text "after the ", ! 529: size -1, text "UNIX", size +1, text " prompt.", ! 530: new.line, blank.lines 0.05i, indent.line -.1i, ! 531: text "Otherwise:", ! 532: new.line, ! 533: text "Enter ", size -1, text "PAN", size +1, text " if ", ! 534: size -1, text "AT&T-BL (SS#", size +1, text " if non ", ! 535: size -1, text "AT&T-BL.) ", size +1, line 1.2i, ! 536: new.line, text "Return this sheet to any ", ! 537: size -1, text "ITDS", size +1, text " location.", ! 538: new.line, return P0, line.length 8.0i, indent 4i, ! 539: text "\ Internal Technical Document Service", ! 540: blank.lines, tab.stops 1i 2i 3i, ! 541: text "( ) AK 2H-28", tab, text "( ) IH 7M-103", tab, ! 542: text "( ) DR 2F-19", tab, text "( ) NW-ITDS", new.line, ! 543: text "( ) ALC 1B-102", tab, text "( ) MV 3L-19", tab, ! 544: text "( ) INH 1C-114", tab, text "( ) PR 5-2120", new.line, ! 545: text "( ) CB 30-2011", tab, text "( ) WH 3E-204", tab, ! 546: text "( ) IW 2Z-156", new.line, ! 547: text "( ) HO 4F-112", tab, tab, text "( ) MT 3B-117", new.line, ! 548: line.length 7.5i; ! 549: indent 0, SPACE) ! 550: |environment(cs_abstract_continuation; ! 551: if begin "\n(MA>0", ! 552: new.page, spacing on, goto 0.2i, ! 553: horizontal.motion 5.2i, string bold S1, ! 554: new.line, blank.lines -0.1i, thick.line, ! 555: new.line, text bold "Title:", ! 556: horizontal.motion 0.375i, macro TI, ! 557: new.line, blank.lines -0.1i, thick.line, ! 558: center on, text bold "Abstract (continued)", new.line, center off, ! 559: fill off, macro AS, fill on, ! 560: blank.lines -0.1i, thick.line, ! 561: if end;) ! 562: |environment(cs_distribution_continuation; ! 563: store T MM, ! 564: store totrap P0, ! 565: if "\n(MS>\nT", ! 566: store T MS, ! 567: if begin "\nT>0", ! 568: if begin "\nT>=\n(P0", ! 569: new.page, spacing on, goto 0.2i, ! 570: horizontal.motion 5.2i, string bold S1, ! 571: new.line, blank.lines -0.1i, thick.line, ! 572: new.line, text bold "Title:", ! 573: horizontal.motion 0.375i, macro TI, ! 574: new.line, blank.lines -0.1i, thick.line, ! 575: if end, ! 576: new.line, ! 577: remember P0, ! 578: if begin "\n(MM>0", ! 579: horizontal.motion 1.25i, ! 580: text bold "Complete Copy (continued)", new.line, ! 581: fill off, macro CM, fill on, ! 582: if begin "\n(MM>\n(MS", ! 583: blank.lines -0.1i, thick.line, ! 584: if end, ! 585: if end, ! 586: if begin "\n(MS>0", ! 587: return P0, horizontal.motion 4.5i, ! 588: text bold "Cover Sheet Only (continued)", new.line, ! 589: fill off, macro CS, fill on, ! 590: if begin "\n(MS>=\n(MM", ! 591: blank.lines -0.1i, thick.line, ! 592: if end, ! 593: if end, ! 594: if end, ! 595: new.line;) ! 596: |environment(signature; ! 597: here on, minimum.lines 1, indent +30, line.length +3i, ! 598: |for i in 1 2 3 4 5 6 7 8 9 [ ! 599: if begin "\nA>=$i", ! 600: blank.lines 3, ! 601: string bold A$i, ! 602: if end, ! 603: ] ! 604: line.length -3i, indent -30, blank.lines -1; ! 605: minimum.lines 3) ! 606: |environment(:document; ! 607: clear A D M ! 608: OC TP OM, ! 609: clear string GS PC;) ! 610: |environment(:document_save; ! 611: ;) ! 612: |environment(:document_restore; ! 613: ;)
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.