•  Back 
  •  fslx_open 
  •  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-File8.10.5.1  Bindings für fslx_open                                   TOS

 C:          void *fslx_open ( int8_t *title, int16_t x, int16_t y, 
             int16_t *whdl, int8_t *path, int16_t pathlen, int8_t 
             *fname, int16_t fnamelen, int8_t *patterns, XFSL_FILTER 
             *filter, int8_t *paths, int16_t sort_mode, int16_t flags 
             );

 Umsetzung:

             void *fslx_open ( int8_t *title, int16_t x, int16_t y, int16_t *whdl,
                               int8_t *path, int16_t pathlen, int8_t *fname,
                               int16_t fnamelen, int8_t *patterns,
                               XFSL_FILTER *filter, int8_t *paths,
                               int16_t sort_mode, int16_t flags )
             {
                addr_in[0] = title;
                addr_in[1] = path;
                addr_in[2] = fname;
                addr_in[3] = patterns;
                addr_in[4] = filter;
                addr_in[5] = paths;
 
                int_in[0] = x;
                int_in[1] = y;
                int_in[2] = pathlen;
                int_in[3] = fnamelen;
                int_in[4] = sort_mode;
                int_in[5] = flags;
 
                crys_if (190);
 
                *whdl = int_out[0];
                return ( (void *) addr_out[0] );
             }

 GEM-Arrays:

              Adresse     Feldelement  Belegung 
              control     control[0]   190   # Opcode der Funktion 
              control+2   control[1]   6     # Einträge in int_in 
              control+4   control[2]   1     # Einträge in int_out 
              control+6   control[3]   6     # Einträge in addr_in 
              control+8   control[4]   1     # Einträge in addr_out 
              addr_in     addr_in[0]   title 
              addr_in+4   addr_in[1]   path 
              addr_in+8   addr_in[2]   fname 
              addr_in+12  addr_in[3]   patterns 
              addr_in+16  addr_in[4]   filter 
              addr_in+20  addr_in[5]   paths 
              int_in      int_in[0]    x 
              int_in+2    int_in[1]    y 
              int_in+4    int_in[2]    pathlen 
              int_in+6    int_in[3]    fnamelen 
              int_in+8    int_in[4]    sort_mode 
              int_in+10   int_in[5]    flags 
              addr_out    addr_out[0]  Return-Wert 
              int_out     int_out[0]   whdl