Add 'ntldr-img/' from commit '0f07f4f2cfebc14bbf14b0f013c015302b16f70c'
[grub-extras.git] / ntldr-img / bin2h.c
blobf713b559857f9b8873398d12d744ba52902bc5eb
1 /*
2 * Copyright (C) 2008 Robert Millan
4 * This program is free software: you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation, either version 3 of the License, or
7 * (at your option) any later version.
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
14 * You should have received a copy of the GNU General Public License
15 * along with this program. If not, see <http://www.gnu.org/licenses/>.
18 #include <stdio.h>
19 #include <stdlib.h>
21 int
22 main (int argc, char *argv[])
24 int b, i;
25 char *sym;
26 unsigned int len;
28 if (argc != 3)
30 fprintf (stderr, "Usage: %s symbol_name length\n", argv[0]);
31 exit (1);
34 sym = argv[1];
35 len = atoi (argv[2]);
37 b = getchar ();
38 if (b == EOF)
39 goto abort;
41 printf ("/* THIS CHUNK OF BYTES IS AUTOMATICALY GENERATED */\n"
42 "unsigned char %s[%u] =\n{\n", sym, len);
44 while (1)
46 printf ("0x%02x", b);
48 b = getchar ();
49 if (b == EOF)
50 goto end;
52 for (i = 0; i < 16 - 1; i++)
54 printf (", 0x%02x", b);
56 b = getchar ();
57 if (b == EOF)
58 goto end;
61 printf (",\n");
64 end:
65 printf ("\n};\n");
67 abort:
68 exit (0);