•  Back 
  •  Inquire functions 
  •  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-File7.6.40  Bindings for vqt_ext_name                                  TOS

 C:          int16_t vqt_ext_name ( int16_t handle, int16_t index, 
             int8_t *name, uint16_t *font_format, uint16_t *flags );

 Binding:

             int16_t vqt_ext_name (int16_t handle, int16_t index,
                                   int8_t *name, uint16_t *font_format,
                                   uint16_t *flags)
             {
                intin[0] = index;
                intin[1] = 0;         /* Reserved */
 
                contrl[0] = 130;
                contrl[1] = 0;
                contrl[3] = 2;
                contrl[5] = 1;
                contrl[6] = handle;
 
                vdi ();
 
                name[0..31]  = intout[1..32];
                name[32]     = intout[33];
                *flags       = (intout[34] >> 8) & 0xff;
                *font_format = intout[34] & 0xff;
 
                return ( intout[0] );
             }

 GEM-Arrays:

              Address    Element        Contents 
              contrl     contrl[0]      130   # Function Opcode 
              contrl+2   contrl[1]      0     # Entry in ptsin 
              contrl+4   contrl[2]      0     # Entry in ptsout 
              contrl+6   contrl[3]      2     # Entry in intin 
              contrl+8   contrl[4]      35    # Entry in intout 
              contrl+10  contrl[5]      1     # Sub-opcode 
              contrl+12  contrl[6]      handle 
              intin      intin[0]       index 
              intin+2    intin[1]       0 
              intout     intout[0]      Return Value 
              intout+2   intout[1..16]  name[0..31] 
              intout+64  intout[33]     name[32] 
              intout+66  intout[34]     flags/font_format 

             Notes: The high byte of intout[34] returns flags; the low 
             byte of intout[34] returns font_format.

             To ascertain what type of font one is dealing with, one 
             has to note the number of entries in intout (contrl[4]). 
             If contrl[4] is 33, then no additional information is 
             present, and hence we are dealing with a bitmap font. If 
             contrl[4] == 34, then additionally intout[33] (name[32]) 
             just communicates whether we are dealing with a vector 
             font. Only if contrl[4] == 35, one can ascertain from 
             intout[34] (flags) the font type more exactly, and 
             recognize immediately whether the font is monospaced.

             intout[34] is only returned when contrl[3] > 1 and 
             contrl[5] = 1!