diff options
Diffstat (limited to 'sound/oss/bin2hex.c')
-rw-r--r-- | sound/oss/bin2hex.c | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/sound/oss/bin2hex.c b/sound/oss/bin2hex.c new file mode 100644 index 000000000000..b59109eb0db4 --- /dev/null +++ b/sound/oss/bin2hex.c | |||
@@ -0,0 +1,39 @@ | |||
1 | #include <stdio.h> | ||
2 | #include <string.h> | ||
3 | #include <stdlib.h> | ||
4 | |||
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 | } | ||