uint datatowrite = spacefree > __n ? __n : spacefree;
memcpy(&buffer[bufferoffset], towrite, datatowrite);
bufferoffset += datatowrite;
uint datatowrite = spacefree > __n ? __n : spacefree;
memcpy(&buffer[bufferoffset], towrite, datatowrite);
bufferoffset += datatowrite;