Annotation of researchv10no/games/atc/atc.doc, revision 1.1

1.1     ! root        1:                                -1-
        !             2: 
        !             3: 
        !             4:                       AIR TRAFFIC CONTROL SIMULATION
        !             5: 
        !             6:                              James J. Gillogly
        !             7: 
        !             8: 
        !             9: 1_. Introduction____________
        !            10: 
        !            11:      ATC is a real-time simulation game running under UNIX on the VAX and
        !            12: 
        !            13: PDP-11/45 at Rand.  The user, as an air traffic controller, manages the
        !            14: 
        !            15: area around one or more airports.  He must issue commands to the twenty-six
        !            16: 
        !            17: airplanes that appear during the course of the game, guiding each to the
        !            18: 
        !            19: destination listed on its flight plan, while maintaining a high level of
        !            20: 
        !            21: safety (i.e., observing all the relevant FAA regulations).  The airspace
        !            22: 
        !            23: includes airways linking entry/exit fixes at the edges of the screen,
        !            24: 
        !            25: airports, and navaids (navigational aids, radio beacons).  ATC simulates
        !            26: 
        !            27: the controller's radar terminal on the Ann Arbor screen, using cursor
        !            28: 
        !            29: positioning to move the planes.  ATC is based on a game by David Mannering,
        !            30: 
        !            31: a former air traffic controller.  This version benefitted from design
        !            32: 
        !            33: decisions and helpful suggestions by Bob Wesson (project leader), Keith
        !            34: 
        !            35: Wescourt, Stockton Gaines, and others in the Air Traffic Control project.
        !            36: 
        !            37: 
        !            38: 2_. Usage_____
        !            39: 
        !            40:      To start ATC from the UNIX command level, give the command
        !            41: 
        !            42:         % atc
        !            43: 
        !            44: This will bring the simulated radar display to the screen.  ATC prompts for
        !            45: 
        !            46: the game time with:
        !            47: 
        !            48:         <  >
        !            49: 
        !            50:      Enter the time in minutes -- the value must be between 16 and 99.  In
        !            51: 
        !            52: a 99-minute game the planes will be spaced out rather well; a 30-minute
        !            53: 
        !            54: game is difficult, even for an experienced player.  ATC continually
        !            55: 
        !            56: displays the amount of time remaining.
        !            57: 
        !            58: 
        !            59: 
        !            60: 
        !            61:                                -2-
        !            62: 
        !            63: 
        !            64:      Several options are available as flags on the "atc" command.
        !            65: 
        !            66: 
        !            67:         -u=<string>    :  Use the file specified by the string to find
        !            68:                           the airspace, which is either specified with
        !            69:                           -a (below) or defaulted.  The default file is
        !            70:                           ~jim/atc/airspaces on the VAX, and
        !            71:                           /mnt/jim/atc/airspaces on the PDP-11/45.
        !            72: 
        !            73:         -a=<string>    :  Use the airspace identified by the string.
        !            74:                           (The default airspace is called "Apple1"
        !            75:                           and corresponds to the first airspace in
        !            76:                           Mannering's version of ATC.)
        !            77: 
        !            78:         -s=<seed>      :  The seed is a string of digits (32 bits worth)
        !            79:                           to start the random number generator.  If it isn't
        !            80:                           supplied the program uses the number of seconds
        !            81:                           since 1970.
        !            82: 
        !            83:         -t=<time>      :  Mainly useful for program control - sets the
        !            84:                           game time to the specified number of minutes.
        !            85:                           If it isn't provided the program will prompt in
        !            86:                           the usual way for the time.
        !            87: 
        !            88: 
        !            89: 3_. Reading_______ the___ radar_____
        !            90: 
        !            91:      The initial display of a typical airspace looks like this:
        !            92: 
        !            93: 
        !            94:               . 0 . . . . . . 1 . . . . . . . . . . . . . .
        !            95:               . . , . . . . . , . . . . . . . . . . . . . .
        !            96:               . . . , . . . . , . . . . . . . . . . . . . 2
        !            97:               . . . . , . . . , . . . . . . . . . . . . , .
        !            98:               . . . . . , . . , . . . . . . . . . . . , . .
        !            99:               . . . . . . , . , . . . . . . . . . . , . . .
        !           100:               . . . . . . . , , . . . . . . . . . , . . . .
        !           101:               6 , , , , , , , * , , , , , , , , , , , , , 3
        !           102:               . . . . . . . . , , . . . . . . , . . . . . .
        !           103:               . . . . . . . . , . , . . . . , . . . . . . .
        !           104:               . . . . . . . . , . . , . . % . . . . . . . .
        !           105:               . . . . . . . . , . . . , , . . . . . . . . .
        !           106:               . . . . . . . . , . . . , , . . . . . . . . .
        !           107:               . . . . . . . . , . . , . . , . . . . . . . .
        !           108:               . . . . . . . . , . , . . . . , . . . . . . .
        !           109:               . . . . . . . . , , . . . . . . , . . . . . .
        !           110:               4 , , , , , , , * , , , , , # , , , , , , , 5
        !           111:               . . . . . . . , , . . . . . . . . . , . . . .
        !           112:               . . . . . . , . , . . . . . . . . . . , . . .
        !           113:               . . . . . , . . , . . . . . . . . . . . , . .
        !           114:               . . . . , . . . , . . . . . . . . . . . . , .
        !           115:               . . . , . . . . , . . . . . . . . . . . . . 9
        !           116:               . . 7 . . . . . 8 . . . . . . . . . . . . . .
        !           117: 
        !           118: 
        !           119: 
        !           120: 
        !           121:                                -3-
        !           122: 
        !           123: 
        !           124: % and # indicate the airports.  Navaids are indicated with an "*", and
        !           125: 
        !           126: airways show up as lines of commas with entry/exit fixes on each end
        !           127: 
        !           128: indicated by the digits 0-9.  In this example the numbers on the ends of
        !           129: 
        !           130: each airway are 9's complements, to make them easier to locate, but the
        !           131: 
        !           132: airspace designer need not observe this convention.  The distance between
        !           133: 
        !           134: adjacent dots is one mile -- horizontally, vertically, or diagonally.
        !           135: 
        !           136:      Airplanes are indicated by the call letter of the plane (A through Z)
        !           137: 
        !           138: followed by its altitude in thousands of feet.  For example, the symbol
        !           139: 
        !           140: "X3" on the screen means that airplane X is in the location shown, and is
        !           141: 
        !           142: flying at 3000 feet.  Two airplanes in the same horizontal location obscure
        !           143: 
        !           144: each other, so that only one appears on the radar screen - be careful!
        !           145: 
        !           146: 
        !           147: 4_. Airplane________ Types_____
        !           148: 
        !           149:      There are two kinds of planes: jets and props (light propeller
        !           150: 
        !           151: planes).  Jets travel at 240 knots (i.e., one mile every 15 real seconds)
        !           152: 
        !           153: and props travel at 120 knots.  A jet turns at the rate of three degrees
        !           154: 
        !           155: per second.  Since the screen updates every 15 seconds, it will turn 45
        !           156: 
        !           157: degrees each tick.  Props turn half as fast, so that they also turn 45
        !           158: 
        !           159: degrees each time they are updated (a prop takes 30 seconds to move one
        !           160: 
        !           161: mile).  Each has sufficient fuel to get to any destination: jets have fuel
        !           162: 
        !           163: for 15 minutes of real time, and props have 21 minutes of fuel.  Note,
        !           164: 
        !           165: however, that a plane sitting on the runway burns fuel at the same rate as
        !           166: 
        !           167: a plane in the air.
        !           168: 
        !           169: 
        !           170: 5_. Object______ of__ the___ Game____
        !           171: 
        !           172:      To complete his shift successfully, the controller must handle all 26
        !           173: 
        !           174: airplanes without running out of time, violating FAA regulations, letting
        !           175: 
        !           176: any plane run out of fuel, or sending any plane out the wrong destination
        !           177: 
        !           178: 
        !           179: 
        !           180: 
        !           181:                                -4-
        !           182: 
        !           183: 
        !           184: or at the wrong altitude.  This means either landing each plane at its
        !           185: 
        !           186: desired airport, or sending it out the desired fix in the right direction
        !           187: 
        !           188: (i.e., along the airway) at 5000 feet.
        !           189: 
        !           190:      The FAA requires planes to be separated either by three miles
        !           191: 
        !           192: horizontal distance or 1000 feet of altitude.  If they come closer it is
        !           193: 
        !           194: logged as a "system error", which is serious trouble.  NOTE that a plane
        !           195: 
        !           196: changing altitude is considered (by FAA regs) to be at both its old and new
        !           197: 
        !           198: altitudes; thus two planes may be 2000 feet apart, but still cause a system
        !           199: 
        !           200: error because they were at the same altitude on the previous tick, where
        !           201: 
        !           202: one was climbing and the other descending.
        !           203: 
        !           204:      Allowing a plane to run out of fuel, either on the runway or in the
        !           205: 
        !           206: air, is a serious error.  Planes on the runway burn fuel at the same rate
        !           207: 
        !           208: as when they are airborne.
        !           209: 
        !           210:      A "boundary error" is serious, but not as likely to be fatal. It
        !           211: 
        !           212: occurs when a plane is sent out at the wrong fix, the wrong altitude, or in
        !           213: 
        !           214: the wrong direction.  A plane must be headed out the correct exit fix in
        !           215: 
        !           216: the direction opposite to that fix's entry direction.  This will be along
        !           217: 
        !           218: the airway to that exit fix.  All planes must leave the airspace at 5000
        !           219: 
        !           220: feet, so controllers of neighboring airspaces will know what to expect.
        !           221: 
        !           222: 
        !           223: 6_. Basic_____ Flight______ Plans_____
        !           224: 
        !           225:      The right side of the screen is reserved for flight plans.  A typical
        !           226: 
        !           227: flight plan looks like:
        !           228: 
        !           229:         Fj 7->3  4  NE     +
        !           230: 
        !           231: The first letter is the aircraft ID, which can be any letter from A through
        !           232: 
        !           233: Z.  The next letter is the airplane type: either "j" for jet or "p" for
        !           234: 
        !           235: propeller.
        !           236: 
        !           237:      The next field (e.g. 7->3) gives the plane's intentions: this one is
        !           238: 
        !           239: 
        !           240: 
        !           241:                                -5-
        !           242: 
        !           243: 
        !           244: entering at (or is now at) fix 7 and leaving at fix 3.  A plane enters the
        !           245: 
        !           246: airspace at any fix and continues along the airway until given other
        !           247: 
        !           248: instructions.  The controller may need to give course corrections (below)
        !           249: 
        !           250: to enable the plane to leave at the desired fix.  Either the origin or
        !           251: 
        !           252: destination (or both) can be the symbol for an airport, indicating that
        !           253: 
        !           254: this plane will be taking off or landing.  The "origin" character is the
        !           255: 
        !           256: entry fix if the plane has not yet entered the airspace; otherwise it is a
        !           257: 
        !           258: symbol for the plane's location on the screen: "*" if it is over a beacon,
        !           259: 
        !           260: "." if it is in some random location, "," if it is on an airway, or the
        !           261: 
        !           262: appropriate airport symbol if it is flying over an airport.
        !           263: 
        !           264:      Next is the altitude in thousands of feet.  Plane F in this example is
        !           265: 
        !           266: at 4000 feet.
        !           267: 
        !           268:      The bearing is given as a compass direction: N, S, E, W, NE, NW, SE,
        !           269: 
        !           270: or SW, with north at the top of the radar screen.  The plane in the example
        !           271: 
        !           272: above is headed northeast.
        !           273: 
        !           274:      The final character is the amount of fuel left.  If it is a "+", as
        !           275: 
        !           276: here, the plane has more than 10 minutes of fuel left; otherwise it shows
        !           277: 
        !           278: the number of minutes of fuel remaining.
        !           279: 
        !           280:      The flight plans are separated into two groups: the top group previews
        !           281: 
        !           282: the planes that will become active within the next minute, and the bottom
        !           283: 
        !           284: group is for planes that are already active.  Flight strips in the preview
        !           285: 
        !           286: area are preceded by a digit from 0 to 4, indicating how many "ticks"
        !           287: 
        !           288: (15-second intervals) before the plane enters the airspace.  Planes may be
        !           289: 
        !           290: cleared for takeoff as soon as they appear in the preview area.
        !           291: 
        !           292: 
        !           293: 7_.  Airplane________ Commands________
        !           294: 
        !           295:      In order to maintain safety and route the planes to their designated
        !           296: 
        !           297: goals, the controller issues commands telling the pilots to turn, change
        !           298: 
        !           299: 
        !           300: 
        !           301:                                -6-
        !           302: 
        !           303: 
        !           304: altitude, take off, and land.  Each command is terminated by a <RETURN>.
        !           305: 
        !           306: <BACK SPACE> may be used to correct errors on the command line.  Either
        !           307: 
        !           308: upper or lower case is allowed.  The radar screen is updated every 15
        !           309: 
        !           310: seconds; if the update occurs while a command is being typed, a beep will
        !           311: 
        !           312: indicate that the command may no longer be timely.
        !           313: 
        !           314: 
        !           315: 7_.1_ Command_______ Summary_______
        !           316: 
        !           317:      The following kinds of commands can be issued.  Each is described in
        !           318: 
        !           319: more detail below.
        !           320: 
        !           321: 
        !           322:     $        End the game and exit to UNIX
        !           323:     W        Print flight strip for airplane W
        !           324:     XA3      X will change altitude to 3000 feet
        !           325:     QA0      Q will land (go to 0 feet altitude)
        !           326:     HRE      H will turn right until it is heading east
        !           327:     ALNW     A will turn left until it is heading northwest
        !           328:     CTS      C will turn south through the smallest angle
        !           329:     T*7      T will take exit bearing for fix 7 at next navaid
        !           330:     P*W      P will take landing bearing for White at next navaid
        !           331:     DH       D will circle (hold) at next navaid
        !           332:     MR0      Aborts pending hold, clearance, or turn for plane M
        !           333:     <SPACE>  Speed up the game by advancing 15 seconds
        !           334: 
        !           335: 7_.2_ Terminating___________ the___ Game____
        !           336: 
        !           337:      The command "$" terminates the game and restores the terminal to its
        !           338: 
        !           339: normal state (mainly leaving raw mode).  The game will also terminate when
        !           340: 
        !           341: the shift is over (i.e., time runs out or all traffic has been handled).
        !           342: 
        !           343: 
        !           344: 7_.3_ Information___________
        !           345: 
        !           346:      Individual planes may be selected from the flight strips by typing the
        !           347: 
        !           348: ID of the plane followed by a <RETURN>.  The command "g<RETURN>" will print
        !           349: 
        !           350: the flight strip for plane G under the command line.
        !           351: 
        !           352: 
        !           353: 7_.4_ Changing________ Altitude________
        !           354: 
        !           355:      Airplanes normally enter the airspace at 6000 feet.  If two or more
        !           356: 
        !           357: planes are entering from a fix in a short period, they will be separated by
        !           358: 
        !           359: 
        !           360: 
        !           361:                                -7-
        !           362: 
        !           363: 
        !           364: 1000 feet, and all will be at 6000 feet or above.  Airplanes taking off
        !           365: 
        !           366: from an airport are at 0 feet.  Planes will stay in level flight unless
        !           367: 
        !           368: told to change altitude.  They climb or descend at the rate of 1000 feet
        !           369: 
        !           370: per mile.
        !           371: 
        !           372:      To change altitude, give the plane's ID followed by the letter "a"
        !           373: 
        !           374: followed by the desired new altitude.  For example,
        !           375: 
        !           376:         <18> Command: XA5
        !           377: 
        !           378: tells plane X to go to 5000 feet.
        !           379: 
        !           380:      Taking off and landing are special cases of the altitude command.  If
        !           381: 
        !           382: the plane is waiting to take off, its altitude is 0.  Giving it any change
        !           383: 
        !           384: of altitude will cause it to take off in the normal direction for that
        !           385: 
        !           386: airport.  The takeoff/landing direction is shown for each airport in the
        !           387: 
        !           388: bottom right section of the screen at the beginning of the game; it is also
        !           389: 
        !           390: shown in the flight strip for planes taking off.
        !           391: 
        !           392:      To land a plane, make sure it is (or will be) heading toward the
        !           393: 
        !           394: correct airport in the correct direction, then send it to altitude 0.  This
        !           395: 
        !           396: is the last command that can be given to the airplane, since it passes
        !           397: 
        !           398: control to the airport tower.  To land, the plane must be at 0 altitude one
        !           399: 
        !           400: mile before the airport.  If the plane flies over the airport at altitude 0
        !           401: 
        !           402: from the wrong direction, it will go back up to 1000 feet and give the
        !           403: 
        !           404: controller another chance to land it.  This is logged as a "go-around"
        !           405: 
        !           406: error.
        !           407: 
        !           408:      The flight strip reflects changing altitude.  For example,
        !           409: 
        !           410:         Dp :->2  7v3  S     9
        !           411: 
        !           412: indicates that plane D is now at altitude 7000 feet and is descending to
        !           413: 
        !           414: 3000.
        !           415: 
        !           416: 
        !           417: 
        !           418: 
        !           419: 
        !           420: 
        !           421:                                -8-
        !           422: 
        !           423: 
        !           424: 7_.5_ Turning_______
        !           425: 
        !           426:      Turning planes will turn at the rate of 45 degrees per mile.  To turn
        !           427: 
        !           428: a plane, give the plane's ID, the direction of turn, and the new bearing.
        !           429: 
        !           430: The direction of turn is one of the letters "l", "r", or "t".  "l" and "r"
        !           431: 
        !           432: specify a turn to the pilot's left or right, and "t" means to turn through
        !           433: 
        !           434: the minimum angle to reach the specified bearing.  ("t" is useful for
        !           435: 
        !           436: people who have trouble with left and right.) For example,
        !           437: 
        !           438:         <47> Command: ULNE
        !           439: 
        !           440: tells the pilot of plane U to turn to his left until he is heading
        !           441: 
        !           442: northeast.  If plane Y is heading north, the command
        !           443: 
        !           444:         <47> Command: YTE
        !           445: 
        !           446: will cause the plane to turn right 90 degrees; if it is heading south the
        !           447: 
        !           448: same command will cause it to turn left 90 degrees.
        !           449: 
        !           450:      Changes of direction are indicated in the flight strip.  For example,
        !           451: 
        !           452:         Nj :->5  5  S r W   +
        !           453: 
        !           454: indicates that jet N is heading south, and will turn 90 degrees to the
        !           455: 
        !           456: right.
        !           457: 
        !           458:      To cancel the remaining part of a turn, give the command (for plane
        !           459: 
        !           460: N):
        !           461: 
        !           462:         <23> Command: NR0
        !           463: 
        !           464: The Ann Arbor keypad used for +/- PAGE, cursor motion, etc., may be used to
        !           465: 
        !           466: supply the new bearing.  The usual N/S/E/W correspondence is used:
        !           467: 
        !           468: 
        !           469:                           ----------------
        !           470:                           |-PAG|HOME|+PAG|
        !           471:                           | NW | N  | NE |
        !           472:                           |----+----+----|
        !           473:                           |-SCH| UP |+SCH|
        !           474:                           |  W |STRT|  E |
        !           475:                           |----+----+----|
        !           476:                           |LEFT|DOWN|RGHT|
        !           477:                           | SW |  S | SE |
        !           478: 
        !           479: 
        !           480: 
        !           481:                                -9-
        !           482: 
        !           483: 
        !           484:                           ----------------
        !           485: 
        !           486: 7_.6_ Using_____ Navaids_______
        !           487: 
        !           488:      Navaids (navigational aids, VORs, or radio beacons) are very useful
        !           489: 
        !           490: for giving longer-range plans to the pilot.  All incoming planes are on
        !           491: 
        !           492: airways that will intersect one or more navaids.  The navaids may be used
        !           493: 
        !           494: to tell the plane where to "hold", or to vector it toward an airport or an
        !           495: 
        !           496: exit fix.  "Holding" means continuously making left turns, which will cause
        !           497: 
        !           498: the plane to pass over the navaid every eight updates until it is given a
        !           499: 
        !           500: direction or runs out of fuel.
        !           501: 
        !           502:      Any plane can be told to hold at the next navaid it encounters by
        !           503: 
        !           504: giving it the command (for airplane A):
        !           505: 
        !           506:         <18> Command: AH
        !           507: 
        !           508: This will show up on the flight strip as
        !           509: 
        !           510:         Ap :->2  5  S *    7
        !           511: 
        !           512:      After beginning to hold, the "*" will change to an "h" and the
        !           513: 
        !           514: direction of turn will be indicated.  To override the automatic hold give
        !           515: 
        !           516: the command (for plane N)
        !           517: 
        !           518:         <23> Command: NR0
        !           519: 
        !           520: This is the same command used to cancel a turn.
        !           521: 
        !           522:      Every incoming plane that will be landing automatically holds at a
        !           523: 
        !           524: navaid unless the controller gives it other instructions.
        !           525: 
        !           526:      An airplane can be told to proceed toward any known fix when it
        !           527: 
        !           528: reaches the next navaid.  This is called "clearing" the plane.  To clear
        !           529: 
        !           530: plane X for the approach to # Airport, give the command
        !           531: 
        !           532:         <18> Command: X*#
        !           533: 
        !           534: Use % for % Airport, or the symbol of an exit fix to vector the plane in
        !           535: 
        !           536: that direction.  A plane cleared to turn at a navaid will turn sharply.
        !           537: 
        !           538: 
        !           539: 
        !           540: 
        !           541:                               -10-
        !           542: 
        !           543: 
        !           544:      If a plane is cleared through a navaid, it will show up with an
        !           545: 
        !           546: asterisk on the flight strip.  For example,
        !           547: 
        !           548:         Hj .->2  5  S *5    +
        !           549: 
        !           550: indicates that plane H will head in the exit direction for fix 5 when it
        !           551: 
        !           552: encounters a navaid.  Note that H must encounter a navaid for the command
        !           553: 
        !           554: to take effect.
        !           555: 
        !           556:      A holding aircraft given a clearance will continue around to the
        !           557: 
        !           558: navaid, then immediately assume the specified bearing.  If a cleared
        !           559: 
        !           560: aircraft is given a turn, any clearance or hold is immediately cancelled.
        !           561: 
        !           562: 
        !           563: 7_.7_ Speeding________ up__ the___ clock_____
        !           564: 
        !           565:      During quiet spells when everything is under control, typing a space
        !           566: 
        !           567: followed by return advances the clock to the next 15-second tick.
        !           568: 
        !           569: 
        !           570: 8_. Designing_________ new___ airspaces_________
        !           571: 
        !           572:      The system airspaces are stored in /usr/rand/jim/atc/airspaces on the
        !           573: 
        !           574: VAX, and /mnt/jim/atc/airspaces on the PDP-11/45.  Users may define their
        !           575: 
        !           576: own airspaces and use them (Section 2), or have them included at the end of
        !           577: 
        !           578: the system airspace file.
        !           579: 
        !           580: 
        !           581: 
        !           582: 
        !           583: 
        !           584: 
        !           585: 
        !           586: 
        !           587: 
        !           588: 
        !           589: 
        !           590: 
        !           591: 
        !           592: 
        !           593: 
        !           594: 
        !           595: 
        !           596: 
        !           597: 
        !           598: 
        !           599: 
        !           600: 
        !           601:                               -11-
        !           602: 
        !           603: 
        !           604: The coordinate system for an MxN screen is:
        !           605: 
        !           606: 
        !           607:                      ---------------------
        !           608:                      |0,0             M,0|
        !           609:                      |                   |
        !           610:                      |                   |
        !           611:                      |                   |
        !           612:                      |                   |
        !           613:                      |                   |
        !           614:                      |                   |
        !           615:                      |                   |
        !           616:                      |                   |
        !           617:                      |                   |
        !           618:                      |                   |
        !           619:                      |0,N             M,N|
        !           620:                      ---------------------
        !           621: 
        !           622: 
        !           623: 
        !           624: The different objects on the screen are defined as follows:
        !           625: 
        !           626: Apple1
        !           627:         size: 15x24
        !           628:         airway: 1=(0,13) SE 8=(10,23)
        !           629:         airway: 0=(4,0) S 9=(4,23)
        !           630:         airway: 2=(14,15) NW 7=(0,1)
        !           631:         airway: 3=(0,9) NE 6=(9,0)
        !           632:         airway: 4=(14,7) SW 5=(0,21)
        !           633:         airport: %=(4,11) S
        !           634:         airport: #=(10,11) NE
        !           635:         navaid: *=(4,5)
        !           636:         navaid: *=(4,17)
        !           637: 
        !           638: The size field is restricted only by the size of the Ann Arbor screen.  The
        !           639: 
        !           640: direction on an airway is the entry direction from the first fix; the
        !           641: 
        !           642: designer must ensure that each airway connects two entry/exit fixes, and
        !           643: 
        !           644: that each entry/exit fix is on an airway.  If more than 20 entry/exit
        !           645: 
        !           646: fixes, 5 airports, or 5 navaids are desired, the program must be recompiled
        !           647: 
        !           648: after the change to EMAX, AMAX, or NMAX respectively in the source file
        !           649: 
        !           650: "ahdr.h".
        !           651: 
        !           652: 
        !           653: 9_. Things______ to__ come____
        !           654: 
        !           655:      Several additions are planned to the ATC simulation in the near
        !           656: 
        !           657: future.  The most important is definition of the "Clearance Directive
        !           658: 
        !           659: 
        !           660: 
        !           661:                               -12-
        !           662: 
        !           663: 
        !           664: List," a list of absolute locations on the screen and actions to take at
        !           665: 
        !           666: the location.  The user will use this feature to establish plans for
        !           667: 
        !           668: airplanes without having to monitor for completion of each part.
        !           669: 
        !           670:      Another major modification will enable ATC to be run by another
        !           671: 
        !           672: program, using a data transfer protocol designed to minimize the
        !           673: 
        !           674: communication requirements.
        !           675: 
        !           676:      These features will be documented as they are implemented.
        !           677: 
        !           678: 
        !           679: 
        !           680: 
        !           681: 
        !           682: 
        !           683: 
        !           684: 
        !           685: 
        !           686: 
        !           687: 
        !           688: 
        !           689: 
        !           690: 
        !           691: 
        !           692: 
        !           693: 
        !           694: 
        !           695: 
        !           696: 
        !           697: 
        !           698: 
        !           699: 
        !           700: 
        !           701: 
        !           702: 
        !           703: 
        !           704: 
        !           705: 
        !           706: 
        !           707: 
        !           708: 
        !           709: 
        !           710: 
        !           711: 
        !           712: 
        !           713: 
        !           714: 
        !           715: 
        !           716: 
        !           717: 
        !           718: 
        !           719: 
        !           720: 
        !           721: 
        !           722: 

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.