Home N.AESN.AES form_error in N.AESform_error in N.AES The N.AES configuration fileThe N.AES configuration file

12.2 The N.AES cookie

N.AES creates a cookie with the name 'nAES'. Its value is a pointer to a structure (readable), which is made up as follows:

typedef struct {
    unsigned int    version;
    unsigned int    date;
    unsigned int    time;
    unsigned int    flags;
    CNF_VAR         **config;
    unsigned long   unused_2;
} N_AESINFO;
version: The hexadecimal-coded version number of N.AES. A value of 0x0058 would mean a version number 0.5.8, a value of 0x0107 the version 1.0.7
 
date/time: The creation date and the creation time in TOS format, i.e. as returned by Tgetdate and Tgettime.
 
Note:
The time that is output on booting N.AES corresponds to the time of compilation of a given N.AES source file; the time value that is found in the cookie is set by means of a patch program and is actually the relevant specification.
 
flags: Bit mask, whose bits have the following meaning:

 
Bit  0 = 0: ST-version
Bit  0 = 1: TT030-version (compiler option '68020')
Bit  1 = 0: Normal version
Bit  1 = 1: Debug version
Bit 15 = If this bit is TRUE then this cookie was created by XaAES
config: Pointer to a list of the CNF variables, which may be altered while the system is running. Memory is allocated as (global). The bundled N_CONTRL.CPX uses it.
 
/* cnf types */
#define CNF_TEND  0   /* Marks the end of the list. */
#define CNF_TBOOL 1   /* True/false.                */
#define CNF_TWORD 2   /* 16-bit signed value        */
#define CNF_TLONG 3
/* Further ones may follow!  */

typedef enum {false, true} bool;

typedef struct
{
  union cnf_typ { bool b; WORD w; LONG l; }
          val;            /* The contents           */
  WORD    typ;            /* Type, CNF_T...         */
  BYTE    text[22];       /* Name, as in N_AES.CNF. */
} CNF_INF;

typedef struct
{
  BYTE    typ[16];  /* Category, text from the strings *
                     * of the dialog tree CNF_TREE of  *
                     * N_AESSYS.RSC.                   *
                     * e.g. 'Fenster' or 'System'.     */
  CNF_INF *cnf_inf; /* The variables themselves        */
} CNF_VAR;

The end of the list is signalled by a NULL-pointer.
 
unused_2: Free space for later N.AES versions
 

Home N.AESN.AES form_error in N.AESform_error in N.AES The N.AES configuration fileThe N.AES configuration file