diff options
Diffstat (limited to 'kernel/sound/oss/bin2hex.c')
-rw-r--r-- | kernel/sound/oss/bin2hex.c | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/kernel/sound/oss/bin2hex.c b/kernel/sound/oss/bin2hex.c new file mode 100644 index 000000000..b59109eb0 --- /dev/null +++ b/kernel/sound/oss/bin2hex.c @@ -0,0 +1,39 @@ +#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; +} |