in src/dxapi/native/util/logger.cpp [150:174]
static void binlog(struct Logger * const self, const void * data, unsigned datalen)
{
static const char sep[17] = " - - - ";
int j, linelen;
unsigned tmp;
if (NULL == self) return;
DxCriticalSectionEnterSpin(&self->crit_section);
while (datalen) {
linelen = datalen <16 ? datalen : 16;
for (j = 0; j < linelen; j++) {
fprintf(self->file, "%c%02X", sep[j], ((uint8_t *)data)[j]);
}
for (j = 0; j < 16 - linelen; j++)
fprintf(self->file, " ");
fprintf(self->file, " |"); // print separator
for (j = 0; j < linelen; j++) {
tmp = ((uint8_t *)data)[j];
fprintf(self->file, "%1c", tmp >= 0x20 ? tmp : '.');
}
fprintf(self->file, "\n");
data = (uint8_t *)data + linelen;
datalen -= linelen;
}
DxCriticalSectionLeave(&self->crit_section);
}