ACI_Layer_Params

Top  Previous  Next

typedef struct tagACI_Layer_Params

{

 UINT   Size;                   // (in)  Size of structure, in bytes

 UINT   BufferNumber;           // (in)  Number of buffer of interest, the first buffer number is 0

 UINT   LayerNumber;            // (in)  Number of layer of interest, the first layer number is 0

 DWORD  LayerSizeLow;           // (out) Low 32 bits of layer size, in bytes

 DWORD  LayerSizeHigh;          // (out) High 32 bits of layer size, in bytes

 DWORD  DeviceStartAddrLow;     // (out) Low 32 bits of device start address for this layer

 DWORD  DeviceStartAddrHigh;    // (out) High 32 bits of device start address for this layer

 DWORD  DeviceEndAddrLow;       // (out) Low 32 bits of device end address for this layer

 DWORD  DeviceEndAddrHigh;      // (out) High 32 bits of device end address for this layer

 DWORD  DeviceBufStartAddrLow;  // (out) Low 32 bits of device memory start address in buffer for this layer

 DWORD  DeviceBufStartAddrHigh; // (out) High 32 bits of device memory start address in buffer for this layer

 UINT   UnitSize;               // (out) Size of layer unit, in bits (8, 16 or 32)

 BOOL   FixedSize;              // (out) Size of layer cannot be changed with ACI_ReallocBuffer()

 CHAR   BufferName[64];         // (out) Buffer name

 CHAR   LayerName[64];          // (out) Layer name, cannot be changed

 UINT   NumBuffers;             // (out) Total number of currently allocated buffers

 UINT   NumLayers;              // (out) Total number of layers in a buffer

} ACI_Layer_Params;

 

BufferNumber

The ordinal number of the memory buffer, content of which is required by the ACI_GetLayer function. Numbers of ChipProg memory buffers begin from #0.

LayerNumber

The ordinal number of the layer in the memory buffer, the content of which is required by the ACI_GetLayer function. The layer numbers begins from #0.

LayerSizeLow,

LayerSizeHigh

Here the function returns the range of the memory layer's addresses in bytes.

 

DeviceStartAddrLow,

DeviceStartAddrHigh

Here the function returns the device's start address for the selected memory layer. This address is the device's property and strictly depends on the device type; usually this value is zero. Do not mix it up with the start address of a programming operation that can be shifted by a certain offset value.

DeviceEndAddrLow,

DeviceEndAddrHigh

Here the function returns the device's end address for the selected memory layer. This address is the device's property and strictly depends on the device type. Do not mix it up with the end address of a programming operation editable in the setup dialog. The selected layer's address range can be defined as a difference between the end address and the start address plus 1.

DeviceBufStartAddrLow,

DeviceBufStartAddrHigh

Here the function returns the start address for the selected memory buffer - usually this value is zero.

UnitSize

This structure member specifies formats of the data in a memory layer: 8 for the 8-bit devices, 16 - for 16-bit devices and 32 for 32-bit devices.

FixedSize

This flag, if TRUE, disables resizing the memory layer by the ACI_ReallocBuffer function. There is one restriction on use of this flag: since the layer #0 is always resizeable the FixedSize is always FALSE for the layer #0.

BufferName

The name of the memory buffer as it was defined in the ChipProg interface or by the ACI_CreateBuffer function call.

LayerName

Reserved name of the memory buffer's layer. It cannot be changed by the ACI.DLL user.

NumBuffers

The number of the assigned memory buffers.

NumLayers

The number of layers in the programmer's memory buffers. This is a pre-defined device-specific value that is  the same for all memory buffers.

 

See also: ACI_GetLayer