diff --git a/tools/bin2asm/data b/tools/bin2asm/data
new file mode 100644
index 0000000..3be865f
--- /dev/null
+++ b/tools/bin2asm/data
@@ -0,0 +1,52 @@
+/*
+ * 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");
+    }
+}
