    NIC 9929                                                Ira Cotton
    NWG/RFC #336                                            Mitre
    Level 0 Graphic Input Protocol                          5 May 1972

            Level 0 Graphic Input Protocol

               At its meeting on April 16-18 the network Graphics working
               group began to consider the definition of levels of protocol
               for graphic Input Protocol.  The following describes the
               Level 0 graphics input protocol.

               The philosophy guiding the establishment of this protocol is
               the same as suggested in RFC #178, "Network Graphic Attention
               Handling." Briefly, all input will be described by type,
               origin, and length, followed by the actual data.

               Only two types of input are defined at Level 0: text and
               simple position.

                  Text Input

                      Text input will be conveyed in the following format:

                       TEXTIN : DEVICE : COUNT: Text String

                     TEXTIN is a protocol code indicating the nature of this
                     input string.  For the present this code is defined to
                     be 1.

                     DEVICE is a code indicating the device from which the
                     input originated.  The following codes are presently
                     defined:

                          0 - unspecified device
                          1 - primary keyboard
                          2 - tablet
                          3 - mouse
                          4 - joystick
                          5 - lightpen
                          6 - cursor
                          7 - keyset
                          8 - mouse & keyset

                                                                    [Page 1]

    NIC 9929
    NWG/RFC# 336
    Level 0 Graphic Input Protocol

                     Count is an integer number indicating the number of
                     characters (bytes) which follow.

                     Text String is a string of "Count" bytes of characters
                     in network ASCII.

                  Position Input

                       Simple position data will be conveyed in the
                  following format:

                       POSIT : DEVICE : COUNT : x : y

                     POSIT is a protocol code indicating that this string
                     contains position data.  For the present this code is
                     defined to be 2.

                     DEVICE is a code indicating the input device on which
                     this data was generated.  The codes are as defined
                     above.

                     COUNT is an integer number indicating the number of
                     bytes of data which follow.  This includes data for
                     both x and y coordinates.  Thus, the number of bytes of
                     x coordinate data is COUNT divided by 2.  At level 0,
                     COUNT should always be 4, since at this level all
                     coordinates are expressed in 2 bytes of data.

                     x and y coordinate data are represented as signed
                     fractions in the same fashion that position data is
                     represented in the Level 0 graphic output protocol.

               It should be emphasized that input data from a level 0
               graphics user which is not in a format described above should
               be sent on a different link than the graphics input link.
               This may be desirable for certain applications to avoid the
               overhead of the protocol.

           [ This RFC was put into machine readable form for entry ]
           [ into the online RFC archives by BBN Corp. under the   ]
           [ direction of Alex McKenzie.                   12/96   ]

                                                                    [Page 2]