InitStruct(initTable, memory, size);
      
    void InitStruct(struct InitStruct *, APTR, ULONG);
    
 
  
    Clear a memory area, then set up default values according to the data and offset values in the initTable.  Typically only assembly programs take advantage of this function, and only with the macros defined in 
exec/initializers.i.
    The initialization table has byte commands to
      
        
        |a    ||byte|      |given||byte|         |once         |
        
       
    
    load |count||word| into |next ||rptr| offset, |repetitively |
      
    
    Not all combinations are supported.  The offset, when specified, is relative to the memory pointer provided (Memory), and is initially zero.  The initialization data (InitTable) contains byte commands whose 8 bits are interpreted as follows:
    
    ddssnnnn
      
        
        dd  the destination type (and size):
          
            
            00  no offset, use next destination, nnnn is count
            01  no offset, use next destination, nnnn is repeat
            10  destination offset is in the next byte, nnnn is count
            11  destination offset is in the next 24-bits, nnnn is count
            
           
        ss  the size and location of the source:
          
            
            00  long, from the next two aligned words
            01  word, from the next aligned word
            10  byte, from the next byte
            11  ERROR - will cause an ALERT on Kickstart 1.1-1.3 (see below)
            
           
        nnnn  the count or repeat:
          
            
            count  the (number+1) of source items to copy
            repeat  the source is copied (number+1) times.
            
           
         
    
    initTable commands are always read from the next even byte. Given destination offsets are always relative to the memory pointer (A2).
    The command %00000000 ends the InitTable stream: use %00010001 if you really want to copy one longword without a new offset.
    The Kickstart 1.0 era legacy 24 bit APTR (with the byte command using %11 as the size and location of the source) is not supported for 68020 compatibility on Kickstart 1.1-1.3, causing an 
Alert of type AN_InitAPtr.
    Do not use the byte command %11. Use the byte command %00 instead, which will copy a 32 bit word (long).
  
    The macros defined in the 
exec/initializers.h header file which correspond to the assembly language macros in the 
exec/initializers.i file are only suitable for use with integer constants. The INITLONG() macro does not work with pointer values.
    Illegal size and location of the source no longer cause an 
Alert on Kickstart 2.0 and beyond. InitStruct() will instead stop further processing of the initialization data and return.