mirror of
https://github.com/hsoft/collapseos.git
synced 2024-10-06 11:31:04 +11:00
f65c189e9b
`xxd' is not available on all systems, and on others does not support the `-i' flag. Since bin2c.sh relied on a tool that I can't seem to find a compatible version of, I have included a simple, portable replacement in C. Usage remains the same: bin2c ARRAYNAME < inputfile > outputfile. This change is also reflected in emul/Makefile.
34 lines
603 B
C
34 lines
603 B
C
#include <stdio.h>
|
|
#include <stdlib.h>
|
|
|
|
#define BUFSZ 32
|
|
|
|
static const char intro[] = "static const unsigned char %s[] = {\n ";
|
|
|
|
int main(int argc, char **argv) {
|
|
int n;
|
|
int col = 0;
|
|
uint8_t buf[BUFSZ];
|
|
|
|
if (argc < 2) {
|
|
fprintf(stderr, "Specify a name for the data structure...\n");
|
|
return 1;
|
|
}
|
|
|
|
printf(intro, argv[1]);
|
|
|
|
while(!feof(stdin)) {
|
|
n = fread(buf, 1, BUFSZ, stdin);
|
|
for(int i = 0; i < n; ++i) {
|
|
if (col+4 >= 76) {
|
|
printf("\n ");
|
|
col = 0;
|
|
}
|
|
printf("0x%.2x, ", buf[i]);
|
|
col += 6;
|
|
}
|
|
}
|
|
|
|
printf("};\n");
|
|
}
|