40 lines
		
	
	
	
		
			755 B
			
		
	
	
	
		
			C
		
	
	
	
	
	
		
		
			
		
	
	
			40 lines
		
	
	
	
		
			755 B
			
		
	
	
	
		
			C
		
	
	
	
	
	
| 
								 | 
							
								#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;
							 | 
						||
| 
								 | 
							
								}
							 |