#include <stdio.h> | |
#include <string.h> | |
#include <stdlib.h> | |
int main( int argc, const char * argv [] ) | |
{ | |
const char * varname; | |
int i = 0; | |
int c; | |
int id = 0; | |
if(argv[1] && strcmp(argv[1],"-i")==0) | |
{ | |
argv++; | |
argc--; | |
id=1; | |
} | |
if(argc==1) | |
{ | |
fprintf(stderr, "bin2hex: [-i] firmware\n"); | |
exit(1); | |
} | |
varname = argv[1]; | |
printf( "/* automatically generated by bin2hex */\n" ); | |
printf( "static unsigned char %s [] %s =\n{\n", varname , id?"__initdata":""); | |
while ( ( c = getchar( ) ) != EOF ) | |
{ | |
if ( i != 0 && i % 10 == 0 ) | |
printf( "\n" ); | |
printf( "0x%02lx,", c & 0xFFl ); | |
i++; | |
} | |
printf( "};\nstatic int %sLen = %d;\n", varname, i ); | |
return 0; | |
} |