> Services

Title; Serial device service calls
Author; David De Vorchik
History;
        14-Apr-91 DDV Created


The serial support and serial device module have an extra layer of communication within the RISC OS system.  When each modyle is installed a service call is issued:


Service_SerialDevice
--------------------

 in:    r1  = reason code
        r2  = source;   =0 from device driver
                       <>0 from support module

 out:   if r1 = Service_Servied
                r0  = handle of the serial device module

To speed up communication with the serial device driver the support module
issues this service call to find out the device handle of the serial module,
this way a direct call can be made via DeviceFS_CallDevice rather than it
having too look up the device name (therefore saving speed).
                      r2 is used to indicate the source as each module will
issue the service call when it is installed.  On service reset the support
module will reset its copy of the handle and then issue the call asking for
a new copy of the handle.

If the service call is claimed then it is assumed that r0 is setup to
contain the copy of the handle.


