allocation_header
buffer->allocation_header = header;
release_data_header(buffer->allocation_header);
data_header* allocation_header;
node = add_first_data_node(buffer->allocation_header);
node = add_first_data_node(buffer->allocation_header);
uint8* allocated = alloc_data_header_space(buffer->allocation_header, size);
release_data_header(buffer->allocation_header);
buffer->allocation_header = header;
allocated = alloc_data_header_space(buffer->allocation_header, size);
*_header = buffer->allocation_header;
allocation_header* header = (allocation_header*)address - 1;
allocation_header* fBase; // actually base - 1, so that index 0 is
struct free_entry : allocation_header {
fBase = (allocation_header*)heap - 1;
allocation_header* header = &fBase[fLastFree];