1 #include <stdio.h>
2 #include <stdlib.h>
3 #include <string.h>
4
main(int argc,const char * argv[])5 int main( int argc, const char * argv [] )
6 {
7 const char * varname;
8 int i = 0;
9 int c;
10 int id = 0;
11
12 if(argv[1] && strcmp(argv[1],"-i")==0)
13 {
14 argv++;
15 argc--;
16 id=1;
17 }
18
19 if(argc==1)
20 {
21 fprintf(stderr, "bin2hex: [-i] firmware\n");
22 exit(1);
23 }
24
25 varname = argv[1];
26 printf( "/* automatically generated by bin2hex */\n" );
27 printf( "static unsigned char %s [] %s =\n{\n", varname , id?"__initdata":"");
28
29 while ( ( c = getchar( ) ) != EOF )
30 {
31 if ( i != 0 && i % 10 == 0 )
32 printf( "\n" );
33 printf( "0x%02lx,", c & 0xFFl );
34 i++;
35 }
36
37 printf( "};\nstatic int %sLen = %d;\n", varname, i );
38 return 0;
39 }
40