annotate dev/efr-tidsp.c @ 242:f081a6850fb5

libgsmfrp: new refined implementation The previous implementation exhibited the following defects, which are now fixed: 1) The last received valid SID was cached forever for the purpose of handling future invalid SIDs - we could have received some valid SID ages ago, then lots of speech or NO_DATA, and if we then get an invalid SID, we would resurrect the last valid SID from ancient history - a bad design. In our new design, we handle invalid SID based on the current state, much like BFI. 2) GSM 06.11 spec says clearly that after the second lost SID (received BFI=1 && TAF=1 in CN state) we need to gradually decrease the output level, rather than jump directly to emitting silence frames - we previously failed to implement such logic. 3) Per GSM 06.12 section 5.2, Xmaxc should be the same in all 4 subframes in a SID frame. What should we do if we receive an otherwise valid SID frame with different Xmaxc? Our previous approach would replicate this Xmaxc oddity in every subsequent generated CN frame, which is rather bad. In our new design, the very first CN frame (which can be seen as a transformation of the SID frame itself) retains the original 4 distinct Xmaxc, but all subsequent CN frames are based on the Xmaxc from the last subframe of the most recent SID.
author Mychaela Falconia <falcon@freecalypso.org>
date Tue, 09 May 2023 05:16:31 +0000
parents 68215020852b
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
138
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
1 /*
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
2 * This program constructs a table for extracting a 244-bit EFR codec frame
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
3 * from a 33-byte frame that has been read out of Calypso DSP buffer on a
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
4 * TCH/EFS downlink. Our starting material is Osmocom's rendition of
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
5 * GSM 05.03 Table 6.
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
6 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
7
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
8 #include <stdio.h>
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
9 #include <stdlib.h>
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
10
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
11 /* GSM EFR - subjective importance bit ordering */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
12 /* This array encodes GSM 05.03 Table 6.
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
13 *
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
14 * It converts between serial parameter output (as described in
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
15 * GSM 06.60 Table 6 and GSM 05.03 Table 5) and the order needed
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
16 * before channel encoding. CRC poly and bit repetition must be
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
17 * applied prior to this table, as in GSM 05.03 3.1.1, to get 260
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
18 * bits from a 244 bits raw EFR frame.
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
19 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
20 const unsigned short gsm660_bitorder[260] = {
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
21 38, 39, 40, 41, 42, 43, /* 0 -> LTP-LAG 1: b8..b3 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
22 145, 146, 147, 148, 149, 150, /* 6 -> LTP-LAG 3: b8..b3 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
23 93, 94, /* 12 -> LTP-LAG 2: b5..b4 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
24 200, 201, /* 14 -> LTP-LAG 4: b5..b4 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
25 47, /* 16 -> LTP-GAIN 1: b3 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
26 88, /* 17 -> FCB-GAIN 1: b4 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
27 99, /* 18 -> LTP-GAIN 2: b3 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
28 140, /* 19 -> FCB-GAIN 2: b4 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
29 44, /* 20 -> LTP-LAG 1: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
30 151, /* 21 -> LTP-LAG 3: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
31 95, /* 22 -> LTP-LAG 2: b3 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
32 202, /* 23 -> LTP-LAG 4: b3 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
33 1, 2, /* 24 -> LPC 1: b5..b4 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
34 7, /* 26 -> LPC 2: b7 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
35 9, /* 27 -> LPC 2: b5 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
36 17, 18, /* 28 -> LPC 3: b6..b5 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
37 23, /* 30 -> LPC 3: b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
38 45, 46, /* 31 -> LTP-LAG 1: b1..b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
39 152, 153, /* 33 -> LTP-LAG 3: b1..b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
40 96, /* 35 -> LTP-LAG 2: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
41 203, /* 36 -> LTP-LAG 4: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
42 3, 4, /* 37 -> LPC 1: b3..b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
43 10, 11, /* 39 -> LPC 2: b4..b3 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
44 15, /* 41 -> LPC 3: b8 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
45 8, /* 42 -> LPC 2: b6 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
46 5, 6, /* 43 -> LPC 1: b1..b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
47 12, /* 45 -> LPC 2: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
48 16, /* 46 -> LPC 3: b7 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
49 19, /* 47 -> LPC 3: b4 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
50 97, /* 48 -> LTP-LAG 2: b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
51 204, /* 49 -> LTP-LAG 4: b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
52 0, /* 50 -> LPC 1: b6 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
53 13, 14, /* 51 -> LPC 2: b1..b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
54 20, /* 53 -> LPC 3: b3 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
55 24, 25, /* 54 -> LPC 4: b7..b6 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
56 27, /* 56 -> LPC 4: b4 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
57 154, /* 57 -> LTP-GAIN 3: b3 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
58 206, /* 58 -> LTP-GAIN 4: b3 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
59 195, /* 59 -> FCB-GAIN 3: b4 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
60 247, /* 60 -> FCB-GAIN 4: b4 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
61 89, /* 61 -> FCB-GAIN 1: b3 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
62 141, /* 62 -> FCB-GAIN 2: b3 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
63 196, /* 63 -> FCB-GAIN 3: b3 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
64 248, /* 64 -> FCB-GAIN 4: b3 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
65 252, 253, 254, 255, 256, 257, 258, 259, /* 65 -> CRC-POLY: b7..b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
66 48, /* 73 -> LTP-GAIN 1: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
67 100, /* 74 -> LTP-GAIN 2: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
68 155, /* 75 -> LTP-GAIN 3: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
69 207, /* 76 -> LTP-GAIN 4: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
70 21, 22, /* 77 -> LPC 3: b2..b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
71 26, /* 79 -> LPC 4: b5 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
72 28, /* 80 -> LPC 4: b3 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
73 51, /* 81 -> PULSE 1_1: b3 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
74 55, /* 82 -> PULSE 1_2: b3 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
75 59, /* 83 -> PULSE 1_3: b3 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
76 63, /* 84 -> PULSE 1_4: b3 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
77 67, /* 85 -> PULSE 1_5: b3 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
78 103, /* 86 -> PULSE 2_1: b3 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
79 107, /* 87 -> PULSE 2_2: b3 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
80 111, /* 88 -> PULSE 2_3: b3 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
81 115, /* 89 -> PULSE 2_4: b3 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
82 119, /* 90 -> PULSE 2_5: b3 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
83 158, /* 91 -> PULSE 3_1: b3 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
84 162, /* 92 -> PULSE 3_2: b3 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
85 166, /* 93 -> PULSE 3_3: b3 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
86 170, /* 94 -> PULSE 3_4: b3 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
87 174, /* 95 -> PULSE 3_5: b3 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
88 210, /* 96 -> PULSE 4_1: b3 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
89 214, /* 97 -> PULSE 4_2: b3 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
90 218, /* 98 -> PULSE 4_3: b3 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
91 222, /* 99 -> PULSE 4_4: b3 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
92 226, /* 100 -> PULSE 4_5: b3 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
93 90, /* 101 -> FCB-GAIN 1: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
94 142, /* 102 -> FCB-GAIN 2: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
95 197, /* 103 -> FCB-GAIN 3: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
96 249, /* 104 -> FCB-GAIN 4: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
97 49, /* 105 -> LTP-GAIN 1: b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
98 101, /* 106 -> LTP-GAIN 2: b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
99 156, /* 107 -> LTP-GAIN 3: b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
100 208, /* 108 -> LTP-GAIN 4: b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
101 29, 30, 31, /* 109 -> LPC 4: b2..b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
102 32, 33, 34, 35, /* 112 -> LPC 5: b5..b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
103 98, /* 116 -> LTP-LAG 2: b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
104 205, /* 117 -> LTP-LAG 4: b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
105 52, /* 118 -> PULSE 1_1: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
106 56, /* 119 -> PULSE 1_2: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
107 60, /* 120 -> PULSE 1_3: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
108 64, /* 121 -> PULSE 1_4: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
109 68, /* 122 -> PULSE 1_5: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
110 104, /* 123 -> PULSE 2_1: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
111 108, /* 124 -> PULSE 2_2: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
112 112, /* 125 -> PULSE 2_3: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
113 116, /* 126 -> PULSE 2_4: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
114 120, /* 127 -> PULSE 2_5: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
115 159, /* 128 -> PULSE 3_1: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
116 163, /* 129 -> PULSE 3_2: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
117 167, /* 130 -> PULSE 3_3: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
118 171, /* 131 -> PULSE 3_4: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
119 175, /* 132 -> PULSE 3_5: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
120 211, /* 133 -> PULSE 4_1: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
121 215, /* 134 -> PULSE 4_2: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
122 219, /* 135 -> PULSE 4_3: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
123 223, /* 136 -> PULSE 4_4: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
124 227, /* 137 -> PULSE 4_5: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
125 53, /* 138 -> PULSE 1_1: b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
126 57, /* 139 -> PULSE 1_2: b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
127 61, /* 140 -> PULSE 1_3: b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
128 65, /* 141 -> PULSE 1_4: b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
129 105, /* 142 -> PULSE 2_1: b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
130 109, /* 143 -> PULSE 2_2: b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
131 113, /* 144 -> PULSE 2_3: b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
132 117, /* 145 -> PULSE 2_4: b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
133 160, /* 146 -> PULSE 3_1: b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
134 164, /* 147 -> PULSE 3_2: b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
135 168, /* 148 -> PULSE 3_3: b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
136 172, /* 149 -> PULSE 3_4: b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
137 212, /* 150 -> PULSE 4_1: b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
138 220, /* 151 -> PULSE 4_3: b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
139 224, /* 152 -> PULSE 4_4: b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
140 91, /* 153 -> FCB-GAIN 1: b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
141 143, /* 154 -> FCB-GAIN 2: b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
142 198, /* 155 -> FCB-GAIN 3: b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
143 250, /* 156 -> FCB-GAIN 4: b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
144 50, /* 157 -> LTP-GAIN 1: b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
145 102, /* 158 -> LTP-GAIN 2: b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
146 157, /* 159 -> LTP-GAIN 3: b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
147 209, /* 160 -> LTP-GAIN 4: b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
148 92, /* 161 -> FCB-GAIN 1: b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
149 144, /* 162 -> FCB-GAIN 2: b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
150 199, /* 163 -> FCB-GAIN 3: b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
151 251, /* 164 -> FCB-GAIN 4: b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
152 54, /* 165 -> PULSE 1_1: b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
153 58, /* 166 -> PULSE 1_2: b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
154 62, /* 167 -> PULSE 1_3: b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
155 66, /* 168 -> PULSE 1_4: b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
156 106, /* 169 -> PULSE 2_1: b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
157 110, /* 170 -> PULSE 2_2: b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
158 114, /* 171 -> PULSE 2_3: b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
159 118, /* 172 -> PULSE 2_4: b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
160 161, /* 173 -> PULSE 3_1: b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
161 165, /* 174 -> PULSE 3_2: b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
162 169, /* 175 -> PULSE 3_3: b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
163 173, /* 176 -> PULSE 3_4: b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
164 213, /* 177 -> PULSE 4_1: b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
165 221, /* 178 -> PULSE 4_3: b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
166 225, /* 179 -> PULSE 4_4: b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
167 36, 37, /* 180 -> LPC 5: b1..b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
168 69, /* 182 -> PULSE 1_5: b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
169 71, 72, /* 183 -> PULSE 1_5: b1..b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
170 121, /* 185 -> PULSE 2_5: b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
171 123, 124, /* 186 -> PULSE 2_5: b1..b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
172 176, /* 188 -> PULSE 3_5: b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
173 178, 179, /* 189 -> PULSE 3_5: b1..b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
174 228, /* 191 -> PULSE 4_5: b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
175 230, 231, /* 192 -> PULSE 4_5: b1..b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
176 216, 217, /* 194 -> PULSE 4_2: b1..b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
177 70, /* 196 -> PULSE 1_5: b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
178 122, /* 197 -> PULSE 2_5: b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
179 177, /* 198 -> PULSE 3_5: b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
180 229, /* 199 -> PULSE 4_5: b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
181 73, /* 200 -> PULSE 1_6: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
182 76, /* 201 -> PULSE 1_7: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
183 79, /* 202 -> PULSE 1_8: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
184 82, /* 203 -> PULSE 1_9: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
185 85, /* 204 -> PULSE 1_10: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
186 125, /* 205 -> PULSE 2_6: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
187 128, /* 206 -> PULSE 2_7: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
188 131, /* 207 -> PULSE 2_8: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
189 134, /* 208 -> PULSE 2_9: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
190 137, /* 209 -> PULSE 2_10: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
191 180, /* 210 -> PULSE 3_6: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
192 183, /* 211 -> PULSE 3_7: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
193 186, /* 212 -> PULSE 3_8: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
194 189, /* 213 -> PULSE 3_9: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
195 192, /* 214 -> PULSE 3_10: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
196 232, /* 215 -> PULSE 4_6: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
197 235, /* 216 -> PULSE 4_7: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
198 238, /* 217 -> PULSE 4_8: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
199 241, /* 218 -> PULSE 4_9: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
200 244, /* 219 -> PULSE 4_10: b2 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
201 74, /* 220 -> PULSE 1_6: b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
202 77, /* 221 -> PULSE 1_7: b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
203 80, /* 222 -> PULSE 1_8: b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
204 83, /* 223 -> PULSE 1_9: b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
205 86, /* 224 -> PULSE 1_10: b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
206 126, /* 225 -> PULSE 2_6: b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
207 129, /* 226 -> PULSE 2_7: b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
208 132, /* 227 -> PULSE 2_8: b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
209 135, /* 228 -> PULSE 2_9: b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
210 138, /* 229 -> PULSE 2_10: b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
211 181, /* 230 -> PULSE 3_6: b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
212 184, /* 231 -> PULSE 3_7: b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
213 187, /* 232 -> PULSE 3_8: b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
214 190, /* 233 -> PULSE 3_9: b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
215 193, /* 234 -> PULSE 3_10: b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
216 233, /* 235 -> PULSE 4_6: b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
217 236, /* 236 -> PULSE 4_7: b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
218 239, /* 237 -> PULSE 4_8: b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
219 242, /* 238 -> PULSE 4_9: b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
220 245, /* 239 -> PULSE 4_10: b1 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
221 75, /* 240 -> PULSE 1_6: b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
222 78, /* 241 -> PULSE 1_7: b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
223 81, /* 242 -> PULSE 1_8: b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
224 84, /* 243 -> PULSE 1_9: b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
225 87, /* 244 -> PULSE 1_10: b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
226 127, /* 245 -> PULSE 2_6: b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
227 130, /* 246 -> PULSE 2_7: b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
228 133, /* 247 -> PULSE 2_8: b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
229 136, /* 248 -> PULSE 2_9: b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
230 139, /* 249 -> PULSE 2_10: b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
231 182, /* 250 -> PULSE 3_6: b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
232 185, /* 251 -> PULSE 3_7: b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
233 188, /* 252 -> PULSE 3_8: b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
234 191, /* 253 -> PULSE 3_9: b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
235 194, /* 254 -> PULSE 3_10: b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
236 234, /* 255 -> PULSE 4_6: b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
237 237, /* 256 -> PULSE 4_7: b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
238 240, /* 257 -> PULSE 4_8: b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
239 243, /* 258 -> PULSE 4_9: b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
240 246, /* 259 -> PULSE 4_10: b0 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
241 };
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
242
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
243 unsigned short new_table[244];
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
244
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
245 static void
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
246 gen_new_table()
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
247 {
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
248 int i, w, s, ti;
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
249
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
250 for (i = 0; i < 260; i++) {
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
251 w = gsm660_bitorder[i];
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
252 /* not doing CRC bits */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
253 if (w >= 252)
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
254 continue;
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
255 /* not doing repetition bits */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
256 if (w == 71 || w == 72)
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
257 continue;
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
258 if (w == 123 || w == 124)
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
259 continue;
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
260 if (w == 178 || w == 179)
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
261 continue;
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
262 if (w == 230 || w == 231)
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
263 continue;
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
264 /* get s number back from w */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
265 if (w >= 232)
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
266 s = w - 8;
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
267 else if (w >= 180)
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
268 s = w - 6;
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
269 else if (w >= 125)
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
270 s = w - 4;
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
271 else if (w >= 73)
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
272 s = w - 2;
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
273 else
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
274 s = w;
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
275 /* TI bit number: gap of 4 between 182 and 78 */
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
276 if (i >= 182)
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
277 ti = i + 4;
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
278 else
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
279 ti = i;
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
280 new_table[s] = ti;
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
281 }
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
282 }
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
283
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
284 static void
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
285 emit_output()
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
286 {
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
287 int i;
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
288
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
289 for (i = 0; i < 244; i++) {
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
290 if (i % 12)
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
291 putchar(' ');
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
292 else {
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
293 putchar('\n');
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
294 putchar('\t');
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
295 }
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
296 printf("%3u,", new_table[i]);
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
297 }
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
298 putchar('\n');
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
299 }
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
300
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
301 main(argc, argv)
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
302 char **argv;
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
303 {
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
304 gen_new_table();
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
305 emit_output();
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
306 exit(0);
68215020852b dev: add efr-tidsp table generator program
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
307 }