diff options
Diffstat (limited to 'tools/bin2asm/data')
-rw-r--r-- | tools/bin2asm/data | 52 |
1 files changed, 0 insertions, 52 deletions
diff --git a/tools/bin2asm/data b/tools/bin2asm/data deleted file mode 100644 index 3be865f..0000000 --- a/tools/bin2asm/data +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Convert a data file into a .S file suitable for assembly. - * This reads from stdin and writes to stdout and takes a single - * argument for the name of the symbol in the assembly file. - */ - -#include <stdio.h> - -int main(int argc, char *argv[]) { - unsigned char buf[4096]; - size_t amt; - size_t i; - int col = 0; - char *name = argv[1]; - - printf("\ -#ifdef __APPLE_CC__\n\ -/*\n\ - * The mid-2007 version of gcc that ships with Macs requires a\n\ - * comma on the .section line, but the rest of the world thinks\n\ - * that's a syntax error. It also wants globals to be explicitly\n\ - * prefixed with \"_\" as opposed to modern gccs that do the\n\ - * prefixing for you.\n\ - */\n\ -.globl _%s\n\ - .section .rodata,\n\ - .align 8\n\ -_%s:\n\ -#else\n\ -.globl %s\n\ - .section .rodata\n\ - .align 8\n\ -%s:\n\ -#endif\n\ -", name, name, name, name); - - while (! feof(stdin)) { - amt = fread(buf, 1, sizeof(buf), stdin); - for (i = 0; i < amt; i++) { - printf((col == 0) ? ".byte %3d" : ",%3d", buf[i]); - col++; - if (col == 16) { - printf("\n"); - col = 0; - } - } - } - - if (col != 0) { - printf("\n"); - } -} |