•  Back 
  •  Eingabefunktionen 
  •  Index 
  •  Tree View 
  •  Cross references 
  •  Help page 
  •  Show info about hypertext 
  •  View a new file 
Topic       : TOS - das Betriebssystem
Author      : 
Version     : tos.hyp (5. März 2013)
Subject     : Programmieren/Atari
Nodes       : 3001
Index Size  : 93602
HCP-Version : 5
Compiled on : Atari
@charset    : atarist
@lang       : 
@default    : Titel
@help       : 
@options    : +g -i -s +x +zz -t4
@width      : 70
View Ref-File7.7.30  Bindings für vsm_locator                                   TOS

 C:         int16_t vsm_locator ( int16_t handle, int16_t x, int16_t 
            y, int16_t *xout, int16_t *yout, int16_t *term );

 Umsetzung:

            int16_t vsm_locator (int16_t handle, int16_t x, int16_t y,
                                 int16_t *xout, int16_t *yout,
                                 int16_t *term)
            {
               ptsin[0] = x;
               ptsin[1] = y;
 
               contrl[0] = 28;
               contrl[1] = 1;
               contrl[3] = 0;
               contrl[6] = handle;
 
               vdi ();
 
               *xout = ptsout[0];
               *yout = ptsout[1];
               *term = intout[0];
 
               return ( (contrl[4] << 1) | (contrl[2]) );
            }

 GEM-Arrays:

             Adresse    Feldelement  Belegung 
             contrl     contrl[0]    28        # Opcode der Funktion 
             contrl+2   contrl[1]    1         # Einträge in ptsin 
             contrl+4   contrl[2]    0 oder 1  # Einträge in ptsout 
             contrl+6   contrl[3]    0         # Einträge in intin 
             contrl+8   contrl[4]    0 oder 1  # Einträge in intout 
             contrl+12  contrl[6]    handle 
             ptsin      ptsin[0]     x 
             ptsin+2    ptsin[1]     y 
             intout     intout[0]    term 
             ptsout     ptsout[0]    xout 
             ptsout+2   ptsout[1]    yout