~ubuntu-branches/ubuntu/wily/sflphone/wily

« back to all changes in this revision

Viewing changes to daemon/libs/pjproject-2.1.0/third_party/gsm/src/gsm_print.c

  • Committer: Package Import Robot
  • Author(s): Mark Purcell
  • Date: 2014-01-28 18:23:36 UTC
  • mfrom: (1.1.11)
  • mto: This revision was merged to the branch mainline in revision 24.
  • Revision ID: package-import@ubuntu.com-20140128182336-3xenud1kbnwmf3mz
* New upstream release 
  - Fixes "New Upstream Release" (Closes: #735846)
  - Fixes "Ringtone does not stop" (Closes: #727164)
  - Fixes "[sflphone-kde] crash on startup" (Closes: #718178)
  - Fixes "sflphone GUI crashes when call is hung up" (Closes: #736583)
* Build-Depends: ensure GnuTLS 2.6
  - libucommon-dev (>= 6.0.7-1.1), libccrtp-dev (>= 2.0.6-3)
  - Fixes "FTBFS Build-Depends libgnutls{26,28}-dev" (Closes: #722040)
* Fix "boost 1.49 is going away" unversioned Build-Depends: (Closes: #736746)
* Add Build-Depends: libsndfile-dev, nepomuk-core-dev

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
 * Copyright 1992 by Jutta Degener and Carsten Bormann, Technische
 
3
 * Universitaet Berlin.  See the accompanying file "COPYRIGHT" for
 
4
 * details.  THERE IS ABSOLUTELY NO WARRANTY FOR THIS SOFTWARE.
 
5
 */
 
6
 
 
7
/* $Header: /tmp_amd/presto/export/kbs/jutta/src/gsm/RCS/gsm_print.c,v 1.1 1992/10/28 00:15:50 jutta Exp $ */
 
8
 
 
9
#include        <stdio.h>
 
10
 
 
11
#include "private.h"
 
12
 
 
13
#include "gsm.h"
 
14
#include "proto.h"
 
15
 
 
16
int gsm_print P3((f, s, c), FILE * f, gsm s, gsm_byte * c)
 
17
{
 
18
        word    LARc[8], Nc[4], Mc[4], bc[4], xmaxc[4], xmc[13*4];
 
19
 
 
20
        /* GSM_MAGIC  = (*c >> 4) & 0xF; */
 
21
 
 
22
        if (((*c >> 4) & 0x0F) != GSM_MAGIC) return -1;
 
23
 
 
24
        LARc[0]  = (*c++ & 0xF) << 2;           /* 1 */
 
25
        LARc[0] |= (*c >> 6) & 0x3;
 
26
        LARc[1]  = *c++ & 0x3F;
 
27
        LARc[2]  = (*c >> 3) & 0x1F;
 
28
        LARc[3]  = (*c++ & 0x7) << 2;
 
29
        LARc[3] |= (*c >> 6) & 0x3;
 
30
        LARc[4]  = (*c >> 2) & 0xF;
 
31
        LARc[5]  = (*c++ & 0x3) << 2;
 
32
        LARc[5] |= (*c >> 6) & 0x3;
 
33
        LARc[6]  = (*c >> 3) & 0x7;
 
34
        LARc[7]  = *c++ & 0x7;
 
35
 
 
36
 
 
37
        Nc[0]  = (*c >> 1) & 0x7F;
 
38
        bc[0]  = (*c++ & 0x1) << 1;
 
39
        bc[0] |= (*c >> 7) & 0x1;
 
40
        Mc[0]  = (*c >> 5) & 0x3;
 
41
        xmaxc[0]  = (*c++ & 0x1F) << 1;
 
42
        xmaxc[0] |= (*c >> 7) & 0x1;
 
43
        xmc[0]  = (*c >> 4) & 0x7;
 
44
        xmc[1]  = (*c >> 1) & 0x7;
 
45
        xmc[2]  = (*c++ & 0x1) << 2;
 
46
        xmc[2] |= (*c >> 6) & 0x3;
 
47
        xmc[3]  = (*c >> 3) & 0x7;
 
48
        xmc[4]  = *c++ & 0x7;
 
49
        xmc[5]  = (*c >> 5) & 0x7;
 
50
        xmc[6]  = (*c >> 2) & 0x7;
 
51
        xmc[7]  = (*c++ & 0x3) << 1;            /* 10 */
 
52
        xmc[7] |= (*c >> 7) & 0x1;
 
53
        xmc[8]  = (*c >> 4) & 0x7;
 
54
        xmc[9]  = (*c >> 1) & 0x7;
 
55
        xmc[10]  = (*c++ & 0x1) << 2;
 
56
        xmc[10] |= (*c >> 6) & 0x3;
 
57
        xmc[11]  = (*c >> 3) & 0x7;
 
58
        xmc[12]  = *c++ & 0x7;
 
59
 
 
60
        Nc[1]  = (*c >> 1) & 0x7F;
 
61
        bc[1]  = (*c++ & 0x1) << 1;
 
62
        bc[1] |= (*c >> 7) & 0x1;
 
63
        Mc[1]  = (*c >> 5) & 0x3;
 
64
        xmaxc[1]  = (*c++ & 0x1F) << 1;
 
65
        xmaxc[1] |= (*c >> 7) & 0x1;
 
66
        xmc[13]  = (*c >> 4) & 0x7;
 
67
        xmc[14]  = (*c >> 1) & 0x7;
 
68
        xmc[15]  = (*c++ & 0x1) << 2;
 
69
        xmc[15] |= (*c >> 6) & 0x3;
 
70
        xmc[16]  = (*c >> 3) & 0x7;
 
71
        xmc[17]  = *c++ & 0x7;
 
72
        xmc[18]  = (*c >> 5) & 0x7;
 
73
        xmc[19]  = (*c >> 2) & 0x7;
 
74
        xmc[20]  = (*c++ & 0x3) << 1;
 
75
        xmc[20] |= (*c >> 7) & 0x1;
 
76
        xmc[21]  = (*c >> 4) & 0x7;
 
77
        xmc[22]  = (*c >> 1) & 0x7;
 
78
        xmc[23]  = (*c++ & 0x1) << 2;
 
79
        xmc[23] |= (*c >> 6) & 0x3;
 
80
        xmc[24]  = (*c >> 3) & 0x7;
 
81
        xmc[25]  = *c++ & 0x7;
 
82
 
 
83
 
 
84
        Nc[2]  = (*c >> 1) & 0x7F;
 
85
        bc[2]  = (*c++ & 0x1) << 1;             /* 20 */
 
86
        bc[2] |= (*c >> 7) & 0x1;
 
87
        Mc[2]  = (*c >> 5) & 0x3;
 
88
        xmaxc[2]  = (*c++ & 0x1F) << 1;
 
89
        xmaxc[2] |= (*c >> 7) & 0x1;
 
90
        xmc[26]  = (*c >> 4) & 0x7;
 
91
        xmc[27]  = (*c >> 1) & 0x7;
 
92
        xmc[28]  = (*c++ & 0x1) << 2;
 
93
        xmc[28] |= (*c >> 6) & 0x3;
 
94
        xmc[29]  = (*c >> 3) & 0x7;
 
95
        xmc[30]  = *c++ & 0x7;
 
96
        xmc[31]  = (*c >> 5) & 0x7;
 
97
        xmc[32]  = (*c >> 2) & 0x7;
 
98
        xmc[33]  = (*c++ & 0x3) << 1;
 
99
        xmc[33] |= (*c >> 7) & 0x1;
 
100
        xmc[34]  = (*c >> 4) & 0x7;
 
101
        xmc[35]  = (*c >> 1) & 0x7;
 
102
        xmc[36]  = (*c++ & 0x1) << 2;
 
103
        xmc[36] |= (*c >> 6) & 0x3;
 
104
        xmc[37]  = (*c >> 3) & 0x7;
 
105
        xmc[38]  = *c++ & 0x7;
 
106
 
 
107
        Nc[3]  = (*c >> 1) & 0x7F;
 
108
        bc[3]  = (*c++ & 0x1) << 1;
 
109
        bc[3] |= (*c >> 7) & 0x1;
 
110
        Mc[3]  = (*c >> 5) & 0x3;
 
111
        xmaxc[3]  = (*c++ & 0x1F) << 1;
 
112
        xmaxc[3] |= (*c >> 7) & 0x1;
 
113
 
 
114
        xmc[39]  = (*c >> 4) & 0x7;
 
115
        xmc[40]  = (*c >> 1) & 0x7;
 
116
        xmc[41]  = (*c++ & 0x1) << 2;
 
117
        xmc[41] |= (*c >> 6) & 0x3;
 
118
        xmc[42]  = (*c >> 3) & 0x7;
 
119
        xmc[43]  = *c++ & 0x7;                  /* 30  */
 
120
        xmc[44]  = (*c >> 5) & 0x7;
 
121
        xmc[45]  = (*c >> 2) & 0x7;
 
122
        xmc[46]  = (*c++ & 0x3) << 1;
 
123
        xmc[46] |= (*c >> 7) & 0x1;
 
124
        xmc[47]  = (*c >> 4) & 0x7;
 
125
        xmc[48]  = (*c >> 1) & 0x7;
 
126
        xmc[49]  = (*c++ & 0x1) << 2;
 
127
        xmc[49] |= (*c >> 6) & 0x3;
 
128
        xmc[50]  = (*c >> 3) & 0x7;
 
129
        xmc[51]  = *c & 0x7;                    /* 33 */
 
130
 
 
131
        fprintf(f,
 
132
              "LARc:\t%2.2d  %2.2d  %2.2d  %2.2d  %2.2d  %2.2d  %2.2d  %2.2d\n",
 
133
               LARc[0],LARc[1],LARc[2],LARc[3],LARc[4],LARc[5],LARc[6],LARc[7]);
 
134
 
 
135
        fprintf(f, "#1:         Nc %4.4d    bc %d    Mc %d    xmaxc %d\n",
 
136
                Nc[0], bc[0], Mc[0], xmaxc[0]);
 
137
        fprintf(f,
 
138
"\t%.2d %.2d %.2d %.2d %.2d %.2d %.2d %.2d %.2d %.2d %.2d %.2d %.2d\n",
 
139
                xmc[0],xmc[1],xmc[2],xmc[3],xmc[4],xmc[5],xmc[6],
 
140
                xmc[7],xmc[8],xmc[9],xmc[10],xmc[11],xmc[12] );
 
141
 
 
142
        fprintf(f, "#2:         Nc %4.4d    bc %d    Mc %d    xmaxc %d\n",
 
143
                Nc[1], bc[1], Mc[1], xmaxc[1]);
 
144
        fprintf(f,
 
145
"\t%.2d %.2d %.2d %.2d %.2d %.2d %.2d %.2d %.2d %.2d %.2d %.2d %.2d\n",
 
146
                xmc[13+0],xmc[13+1],xmc[13+2],xmc[13+3],xmc[13+4],xmc[13+5],
 
147
                xmc[13+6], xmc[13+7],xmc[13+8],xmc[13+9],xmc[13+10],xmc[13+11],
 
148
                xmc[13+12] );
 
149
 
 
150
        fprintf(f, "#3:         Nc %4.4d    bc %d    Mc %d    xmaxc %d\n",
 
151
                Nc[2], bc[2], Mc[2], xmaxc[2]);
 
152
        fprintf(f,
 
153
"\t%.2d %.2d %.2d %.2d %.2d %.2d %.2d %.2d %.2d %.2d %.2d %.2d %.2d\n",
 
154
                xmc[26+0],xmc[26+1],xmc[26+2],xmc[26+3],xmc[26+4],xmc[26+5],
 
155
                xmc[26+6], xmc[26+7],xmc[26+8],xmc[26+9],xmc[26+10],xmc[26+11],
 
156
                xmc[26+12] );
 
157
 
 
158
        fprintf(f, "#4:         Nc %4.4d    bc %d    Mc %d    xmaxc %d\n",
 
159
                Nc[3], bc[3], Mc[3], xmaxc[3]);
 
160
        fprintf(f,
 
161
"\t%.2d %.2d %.2d %.2d %.2d %.2d %.2d %.2d %.2d %.2d %.2d %.2d %.2d\n",
 
162
                xmc[39+0],xmc[39+1],xmc[39+2],xmc[39+3],xmc[39+4],xmc[39+5],
 
163
                xmc[39+6], xmc[39+7],xmc[39+8],xmc[39+9],xmc[39+10],xmc[39+11],
 
164
                xmc[39+12] );
 
165
 
 
166
        return 0;
 
167
}