•  Back 
  •  The device driver (MX_DEV) 
  •  Index 
  •  Tree View 
  •  Cross references 
  •  Help page 
  •  Show info about hypertext 
  •  View a new file 
Topic       : TOS - The Operating System
Author      : 
Version     : tos.hyp (December 19, 2008)
Subject     : Programmieren/Atari
Nodes       : 3010
Index Size  : 93790
HCP-Version : 5
Compiled on : Atari
@charset    : atarist
@lang       : 
@default    : Title
@help       : 
@options    : +g -i -s +x +zz -t4
@width      : 70
View Ref-File11.5.16.39.27  mxk_evnt_mIO                                        TOS

 Name:        »evnt_mIO«

 Parameters:

               d0 =  long ticks_50hz
               a0 =  void *unsel
               d1 =  int cnt

              or

               a0 =  APPL *ap

 Description: mxk_evnt_mIO makes it possible to wait for several 
              external events; this function is used by Fselect 
              (several files!) for instance.

              Procedure:

                1. Create a LONGword table for n events with a length 
                   of 2*n.
                2. Enter the clean-up routine (unselect routine) for 
                   each event (followed by an optional LONGword 
                   parameter) and set up the interrupt. The order is 
                   important: one must prevent the unselect address 
                   overwriting the return value of an already arrived 
                   interrupt - if necessary block interrupts.
                3. Call evnt_mIO. The parameters are the same as in 
                   evnt_IO: in d1.w the number of events is passed, a0 
                   is the start of the table.
                4. evnt_mIO offers no return value. The table must be 
                   searched through and the interrupts deinstalled 
                   (e.g. call the unselect routines); during this one 
                   can check which interrupts have arrived already.
                5. Call evnt_emIO with the current application. This 
                   call ensures that after deinstallation of all the 
                   interrupts their now useless messages to the 
                   application are deleted.

              Applications waiting for evnt_(m)IO events appear in the 
              program manager as waiting for 'io' (input/output) or 
              'io ti' (input/output with timeout).

 Group:       Kernel functions

 See also:    -