summaryrefslogtreecommitdiff
path: root/mpg2c.c
diff options
context:
space:
mode:
Diffstat (limited to 'mpg2c.c')
-rw-r--r--mpg2c.c50
1 files changed, 50 insertions, 0 deletions
diff --git a/mpg2c.c b/mpg2c.c
new file mode 100644
index 00000000..830ca7e0
--- /dev/null
+++ b/mpg2c.c
@@ -0,0 +1,50 @@
+/*
+ * Copyright (C) 2003-2006 Petri Hintukainen <phintuka@cc.hut.fi>
+ *
+ * This code is distributed under the terms and conditions of the
+ * GNU GENERAL PUBLIC LICENSE. See the file COPYING for details.
+ *
+ * mpg2.c:
+ *
+ * $Id: mpg2c.c,v 1.1 2006-06-03 10:01:17 phintuka Exp $
+ *
+ */
+
+#include <stdio.h>
+
+#define LINELEN 20
+
+int main(int argc, char *argv[])
+{
+ int ch;
+ int pos=1;
+
+ if(argc != 4) {
+ printf("%s - convert binary file to C code\n\n"
+ "usage: %s variable inputfile outputfile\n",
+ argv[0],argv[0]);
+ return -1;
+ }
+
+ FILE *fi = fopen(argv[2],"rb");
+ FILE *fo = fopen(argv[3],"wt");
+ if(!fi ||!fo) {
+ printf("Error opening files\n");
+ return -1;
+ }
+ fprintf(fo, "unsigned char v_mpg_%s[] = \n \"", argv[1]);
+ while(EOF != (ch = fgetc(fi))) {
+ fprintf(fo, "\\x%02x", ch);
+ if(pos++ > LINELEN) {
+ fprintf(fo, "\"\n \"");
+ pos=1;
+ }
+ }
+ fprintf(fo, "\";\n\nint v_mpg_%s_length = sizeof(v_mpg_%s);\n\n",
+ argv[1], argv[1]);
+
+ fclose(fi);
+ fclose(fo);
+
+ return 0;
+}