FreeCalypso > hg > gsm-codec-lib
comparison hrutil/dec-parse.c @ 564:30c57cf6e87d
gsmhr-dec-parse: read native endian by default
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Wed, 12 Feb 2025 00:33:32 +0000 |
parents | 2d703e1e9107 |
children |
comparison
equal
deleted
inserted
replaced
563:a563c7b17e16 | 564:30c57cf6e87d |
---|---|
6 #include <stdio.h> | 6 #include <stdio.h> |
7 #include <stdint.h> | 7 #include <stdint.h> |
8 #include <stdlib.h> | 8 #include <stdlib.h> |
9 #include <string.h> | 9 #include <string.h> |
10 #include <strings.h> | 10 #include <strings.h> |
11 #include <unistd.h> | |
11 #include "../libgsmhr1/tw_gsmhr.h" | 12 #include "../libgsmhr1/tw_gsmhr.h" |
13 #include "../libtest/local_endian.h" | |
12 | 14 |
13 main(argc, argv) | 15 main(argc, argv) |
14 char **argv; | 16 char **argv; |
15 { | 17 { |
16 char *infname; | 18 char *infname; |
17 FILE *inf; | 19 FILE *inf; |
18 int big_endian; | 20 int big_endian; |
19 unsigned frame_no; | 21 unsigned frame_no; |
20 int16_t params[GSMHR_NUM_PARAMS_DEC]; | 22 int16_t params[GSMHR_NUM_PARAMS_DEC]; |
21 int rc; | 23 int opt, rc; |
24 extern int optind; | |
22 | 25 |
23 if (argc == 2 && argv[1][0] != '-') { | 26 big_endian = is_native_big_endian(); |
24 big_endian = 0; | 27 while ((opt = getopt(argc, argv, "bl")) != EOF) { |
25 infname = argv[1]; | 28 switch (opt) { |
26 } else if (argc == 3 && !strcmp(argv[1], "-b")) { | 29 case 'b': |
27 big_endian = 1; | 30 big_endian = 1; |
28 infname = argv[2]; | 31 continue; |
29 } else { | 32 case 'l': |
30 fprintf(stderr, "usage: %s [-b] file.dec\n", argv[0]); | 33 big_endian = 0; |
31 exit(1); | 34 continue; |
35 default: | |
36 usage: | |
37 fprintf(stderr, "usage: %s [-b|-l] file.dec\n", | |
38 argv[0]); | |
39 exit(1); | |
40 } | |
32 } | 41 } |
42 if (argc != optind + 1) | |
43 goto usage; | |
44 infname = argv[optind]; | |
33 inf = fopen(infname, "r"); | 45 inf = fopen(infname, "r"); |
34 if (!inf) { | 46 if (!inf) { |
35 perror(infname); | 47 perror(infname); |
36 exit(1); | 48 exit(1); |
37 } | 49 } |