Alexandre Lision | d204ea5 | 2013-10-15 10:16:25 -0400 | [diff] [blame] | 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/toast_alaw.c,v 1.1 1992/10/28 00:15:50 jutta Exp $ */ |
| 8 | |
| 9 | #include "toast.h" |
| 10 | |
| 11 | /* toast_alaw.c -- manipulate A-law encoded sound. |
| 12 | */ |
| 13 | |
| 14 | extern FILE * in, * out; |
| 15 | |
| 16 | #define A2S(x) (a2s[ (unsigned char )(x) ]) |
| 17 | #define S2A(x) (s2a[ ((unsigned short)(x)) >> 4 ]) |
| 18 | |
| 19 | static unsigned short a2s[] = { |
| 20 | |
| 21 | 5120,60160, 320,65200,20480,44032, 1280,64192, |
| 22 | 2560,62848, 64,65456,10240,54784, 640,64864, |
| 23 | 7168,58112, 448,65072,28672,35840, 1792,63680, |
| 24 | 3584,61824, 192,65328,14336,50688, 896,64608, |
| 25 | 4096,61184, 256,65264,16384,48128, 1024,64448, |
| 26 | 2048,63360, 0,65520, 8192,56832, 512,64992, |
| 27 | 6144,59136, 384,65136,24576,39936, 1536,63936, |
| 28 | 3072,62336, 128,65392,12288,52736, 768,64736, |
| 29 | 5632,59648, 352,65168,22528,41984, 1408,64064, |
| 30 | 2816,62592, 96,65424,11264,53760, 704,64800, |
| 31 | 7680,57600, 480,65040,30720,33792, 1920,63552, |
| 32 | 3840,61568, 224,65296,15360,49664, 960,64544, |
| 33 | 4608,60672, 288,65232,18432,46080, 1152,64320, |
| 34 | 2304,63104, 32,65488, 9216,55808, 576,64928, |
| 35 | 6656,58624, 416,65104,26624,37888, 1664,63808, |
| 36 | 3328,62080, 160,65360,13312,51712, 832,64672, |
| 37 | 5376,59904, 336,65184,21504,43008, 1344,64128, |
| 38 | 2688,62720, 80,65440,10752,54272, 672,64832, |
| 39 | 7424,57856, 464,65056,29696,34816, 1856,63616, |
| 40 | 3712,61696, 208,65312,14848,50176, 928,64576, |
| 41 | 4352,60928, 272,65248,17408,47104, 1088,64384, |
| 42 | 2176,63232, 16,65504, 8704,56320, 544,64960, |
| 43 | 6400,58880, 400,65120,25600,38912, 1600,63872, |
| 44 | 3200,62208, 144,65376,12800,52224, 800,64704, |
| 45 | 5888,59392, 368,65152,23552,40960, 1472,64000, |
| 46 | 2944,62464, 112,65408,11776,53248, 736,64768, |
| 47 | 7936,57344, 496,65024,31744,32768, 1984,63488, |
| 48 | 3968,61440, 240,65280,15872,49152, 992,64512, |
| 49 | 4864,60416, 304,65216,19456,45056, 1216,64256, |
| 50 | 2432,62976, 48,65472, 9728,55296, 608,64896, |
| 51 | 6912,58368, 432,65088,27648,36864, 1728,63744, |
| 52 | 3456,61952, 176,65344,13824,51200, 864,64640 |
| 53 | }; |
| 54 | |
| 55 | |
| 56 | static unsigned char s2a[] = { |
| 57 | |
| 58 | 170, 42,234,106,138, 10,202, 74,186, 58,250,122,154, 26,218, 90, |
| 59 | 162, 34,226, 98,130, 2,194, 66,178, 50,242,114,146, 18,210, 82, |
| 60 | 174, 46, 46,238,238,110,110,142,142, 14, 14,206,206, 78, 78,190, |
| 61 | 190, 62, 62,254,254,126,126,158,158, 30, 30,222,222, 94, 94,166, |
| 62 | 166, 38, 38, 38, 38,230,230,230,230,102,102,102,102,134,134,134, |
| 63 | 134, 6, 6, 6, 6,198,198,198,198, 70, 70, 70, 70,182,182,182, |
| 64 | 182, 54, 54, 54, 54,246,246,246,246,118,118,118,118,150,150,150, |
| 65 | 150, 22, 22, 22, 22,214,214,214,214, 86, 86, 86, 86,168,168,168, |
| 66 | 168, 40, 40, 40, 40, 40, 40, 40, 40,232,232,232,232,232,232,232, |
| 67 | 232,104,104,104,104,104,104,104,104,136,136,136,136,136,136,136, |
| 68 | 136, 8, 8, 8, 8, 8, 8, 8, 8,200,200,200,200,200,200,200, |
| 69 | 200, 72, 72, 72, 72, 72, 72, 72, 72,184,184,184,184,184,184,184, |
| 70 | 184, 56, 56, 56, 56, 56, 56, 56, 56,248,248,248,248,248,248,248, |
| 71 | 248,120,120,120,120,120,120,120,120,152,152,152,152,152,152,152, |
| 72 | 152, 24, 24, 24, 24, 24, 24, 24, 24,216,216,216,216,216,216,216, |
| 73 | 216, 88, 88, 88, 88, 88, 88, 88, 88,160,160,160,160,160,160,160, |
| 74 | 160, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, |
| 75 | 32,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, |
| 76 | 224, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, |
| 77 | 96,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128, |
| 78 | 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
| 79 | 0,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, |
| 80 | 192, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, |
| 81 | 64,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176, |
| 82 | 176, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, |
| 83 | 48,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, |
| 84 | 240,112,112,112,112,112,112,112,112,112,112,112,112,112,112,112, |
| 85 | 112,144,144,144,144,144,144,144,144,144,144,144,144,144,144,144, |
| 86 | 144, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, |
| 87 | 16,208,208,208,208,208,208,208,208,208,208,208,208,208,208,208, |
| 88 | 208, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, |
| 89 | 80,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172, |
| 90 | 172, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, |
| 91 | 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, |
| 92 | 44,236,236,236,236,236,236,236,236,236,236,236,236,236,236,236, |
| 93 | 236,236,236,236,236,236,236,236,236,236,236,236,236,236,236,236, |
| 94 | 236,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108, |
| 95 | 108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108, |
| 96 | 108,140,140,140,140,140,140,140,140,140,140,140,140,140,140,140, |
| 97 | 140,140,140,140,140,140,140,140,140,140,140,140,140,140,140,140, |
| 98 | 140, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, |
| 99 | 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, |
| 100 | 12,204,204,204,204,204,204,204,204,204,204,204,204,204,204,204, |
| 101 | 204,204,204,204,204,204,204,204,204,204,204,204,204,204,204,204, |
| 102 | 204, 76, 76, 76, 76, 76, 76, 76, 76, 76, 76, 76, 76, 76, 76, 76, |
| 103 | 76, 76, 76, 76, 76, 76, 76, 76, 76, 76, 76, 76, 76, 76, 76, 76, |
| 104 | 76,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188, |
| 105 | 188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188, |
| 106 | 188, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, |
| 107 | 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, |
| 108 | 60,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252, |
| 109 | 252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252, |
| 110 | 252,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124, |
| 111 | 124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124, |
| 112 | 124,156,156,156,156,156,156,156,156,156,156,156,156,156,156,156, |
| 113 | 156,156,156,156,156,156,156,156,156,156,156,156,156,156,156,156, |
| 114 | 156, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, |
| 115 | 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, |
| 116 | 28,220,220,220,220,220,220,220,220,220,220,220,220,220,220,220, |
| 117 | 220,220,220,220,220,220,220,220,220,220,220,220,220,220,220,220, |
| 118 | 220, 92, 92, 92, 92, 92, 92, 92, 92, 92, 92, 92, 92, 92, 92, 92, |
| 119 | 92, 92, 92, 92, 92, 92, 92, 92, 92, 92, 92, 92, 92, 92, 92, 92, |
| 120 | 92,164,164,164,164,164,164,164,164,164,164,164,164,164,164,164, |
| 121 | 164,164,164,164,164,164,164,164,164,164,164,164,164,164,164,164, |
| 122 | 164, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, |
| 123 | 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, |
| 124 | 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, |
| 125 | 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, |
| 126 | 36,228,228,228,228,228,228,228,228,228,228,228,228,228,228,228, |
| 127 | 228,228,228,228,228,228,228,228,228,228,228,228,228,228,228,228, |
| 128 | 228,228,228,228,228,228,228,228,228,228,228,228,228,228,228,228, |
| 129 | 228,228,228,228,228,228,228,228,228,228,228,228,228,228,228,228, |
| 130 | 228,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100, |
| 131 | 100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100, |
| 132 | 100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100, |
| 133 | 100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100, |
| 134 | 100,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132, |
| 135 | 132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132, |
| 136 | 132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132, |
| 137 | 132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132, |
| 138 | 132, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, |
| 139 | 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, |
| 140 | 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, |
| 141 | 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, |
| 142 | 4,196,196,196,196,196,196,196,196,196,196,196,196,196,196,196, |
| 143 | 196,196,196,196,196,196,196,196,196,196,196,196,196,196,196,196, |
| 144 | 196,196,196,196,196,196,196,196,196,196,196,196,196,196,196,196, |
| 145 | 196,196,196,196,196,196,196,196,196,196,196,196,196,196,196,196, |
| 146 | 196, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, |
| 147 | 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, |
| 148 | 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, |
| 149 | 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, |
| 150 | 68,180,180,180,180,180,180,180,180,180,180,180,180,180,180,180, |
| 151 | 180,180,180,180,180,180,180,180,180,180,180,180,180,180,180,180, |
| 152 | 180,180,180,180,180,180,180,180,180,180,180,180,180,180,180,180, |
| 153 | 180,180,180,180,180,180,180,180,180,180,180,180,180,180,180,180, |
| 154 | 180, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, |
| 155 | 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, |
| 156 | 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, |
| 157 | 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, |
| 158 | 52,244,244,244,244,244,244,244,244,244,244,244,244,244,244,244, |
| 159 | 244,244,244,244,244,244,244,244,244,244,244,244,244,244,244,244, |
| 160 | 244,244,244,244,244,244,244,244,244,244,244,244,244,244,244,244, |
| 161 | 244,244,244,244,244,244,244,244,244,244,244,244,244,244,244,244, |
| 162 | 244,116,116,116,116,116,116,116,116,116,116,116,116,116,116,116, |
| 163 | 116,116,116,116,116,116,116,116,116,116,116,116,116,116,116,116, |
| 164 | 116,116,116,116,116,116,116,116,116,116,116,116,116,116,116,116, |
| 165 | 116,116,116,116,116,116,116,116,116,116,116,116,116,116,116,116, |
| 166 | 116,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148, |
| 167 | 148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148, |
| 168 | 148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148, |
| 169 | 148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148, |
| 170 | 148, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, |
| 171 | 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, |
| 172 | 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, |
| 173 | 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, |
| 174 | 20,212,212,212,212,212,212,212,212,212,212,212,212,212,212,212, |
| 175 | 212,212,212,212,212,212,212,212,212,212,212,212,212,212,212,212, |
| 176 | 212,212,212,212,212,212,212,212,212,212,212,212,212,212,212,212, |
| 177 | 212,212,212,212,212,212,212,212,212,212,212,212,212,212,212,212, |
| 178 | 212, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, |
| 179 | 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, |
| 180 | 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, |
| 181 | 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, |
| 182 | 84, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, |
| 183 | 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, |
| 184 | 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, |
| 185 | 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, |
| 186 | 85,213,213,213,213,213,213,213,213,213,213,213,213,213,213,213, |
| 187 | 213,213,213,213,213,213,213,213,213,213,213,213,213,213,213,213, |
| 188 | 213,213,213,213,213,213,213,213,213,213,213,213,213,213,213,213, |
| 189 | 213,213,213,213,213,213,213,213,213,213,213,213,213,213,213,213, |
| 190 | 213, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, |
| 191 | 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, |
| 192 | 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, |
| 193 | 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, |
| 194 | 21,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149, |
| 195 | 149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149, |
| 196 | 149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149, |
| 197 | 149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149, |
| 198 | 149,117,117,117,117,117,117,117,117,117,117,117,117,117,117,117, |
| 199 | 117,117,117,117,117,117,117,117,117,117,117,117,117,117,117,117, |
| 200 | 117,117,117,117,117,117,117,117,117,117,117,117,117,117,117,117, |
| 201 | 117,117,117,117,117,117,117,117,117,117,117,117,117,117,117,117, |
| 202 | 117,245,245,245,245,245,245,245,245,245,245,245,245,245,245,245, |
| 203 | 245,245,245,245,245,245,245,245,245,245,245,245,245,245,245,245, |
| 204 | 245,245,245,245,245,245,245,245,245,245,245,245,245,245,245,245, |
| 205 | 245,245,245,245,245,245,245,245,245,245,245,245,245,245,245,245, |
| 206 | 245, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, |
| 207 | 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, |
| 208 | 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, |
| 209 | 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, |
| 210 | 53,181,181,181,181,181,181,181,181,181,181,181,181,181,181,181, |
| 211 | 181,181,181,181,181,181,181,181,181,181,181,181,181,181,181,181, |
| 212 | 181,181,181,181,181,181,181,181,181,181,181,181,181,181,181,181, |
| 213 | 181,181,181,181,181,181,181,181,181,181,181,181,181,181,181,181, |
| 214 | 181, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, |
| 215 | 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, |
| 216 | 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, |
| 217 | 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, |
| 218 | 69,197,197,197,197,197,197,197,197,197,197,197,197,197,197,197, |
| 219 | 197,197,197,197,197,197,197,197,197,197,197,197,197,197,197,197, |
| 220 | 197,197,197,197,197,197,197,197,197,197,197,197,197,197,197,197, |
| 221 | 197,197,197,197,197,197,197,197,197,197,197,197,197,197,197,197, |
| 222 | 197, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, |
| 223 | 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, |
| 224 | 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, |
| 225 | 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, |
| 226 | 5,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133, |
| 227 | 133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133, |
| 228 | 133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133, |
| 229 | 133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133, |
| 230 | 133,101,101,101,101,101,101,101,101,101,101,101,101,101,101,101, |
| 231 | 101,101,101,101,101,101,101,101,101,101,101,101,101,101,101,101, |
| 232 | 101,101,101,101,101,101,101,101,101,101,101,101,101,101,101,101, |
| 233 | 101,101,101,101,101,101,101,101,101,101,101,101,101,101,101,101, |
| 234 | 101,229,229,229,229,229,229,229,229,229,229,229,229,229,229,229, |
| 235 | 229,229,229,229,229,229,229,229,229,229,229,229,229,229,229,229, |
| 236 | 229,229,229,229,229,229,229,229,229,229,229,229,229,229,229,229, |
| 237 | 229,229,229,229,229,229,229,229,229,229,229,229,229,229,229,229, |
| 238 | 229, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, |
| 239 | 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, |
| 240 | 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, |
| 241 | 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, |
| 242 | 37,165,165,165,165,165,165,165,165,165,165,165,165,165,165,165, |
| 243 | 165,165,165,165,165,165,165,165,165,165,165,165,165,165,165,165, |
| 244 | 165,165,165,165,165,165,165,165,165,165,165,165,165,165,165,165, |
| 245 | 165,165,165,165,165,165,165,165,165,165,165,165,165,165,165,165, |
| 246 | 165, 93, 93, 93, 93, 93, 93, 93, 93, 93, 93, 93, 93, 93, 93, 93, |
| 247 | 93, 93, 93, 93, 93, 93, 93, 93, 93, 93, 93, 93, 93, 93, 93, 93, |
| 248 | 93, 93, 93, 93, 93, 93, 93, 93, 93, 93, 93, 93, 93, 93, 93, 93, |
| 249 | 93, 93, 93, 93, 93, 93, 93, 93, 93, 93, 93, 93, 93, 93, 93, 93, |
| 250 | 93,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221, |
| 251 | 221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221, |
| 252 | 221, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, |
| 253 | 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, |
| 254 | 29,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157, |
| 255 | 157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157, |
| 256 | 157,125,125,125,125,125,125,125,125,125,125,125,125,125,125,125, |
| 257 | 125,125,125,125,125,125,125,125,125,125,125,125,125,125,125,125, |
| 258 | 125,253,253,253,253,253,253,253,253,253,253,253,253,253,253,253, |
| 259 | 253,253,253,253,253,253,253,253,253,253,253,253,253,253,253,253, |
| 260 | 253, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, |
| 261 | 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, |
| 262 | 61,189,189,189,189,189,189,189,189,189,189,189,189,189,189,189, |
| 263 | 189,189,189,189,189,189,189,189,189,189,189,189,189,189,189,189, |
| 264 | 189, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, |
| 265 | 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, |
| 266 | 77,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205, |
| 267 | 205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205, |
| 268 | 205, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, |
| 269 | 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, |
| 270 | 13,141,141,141,141,141,141,141,141,141,141,141,141,141,141,141, |
| 271 | 141,141,141,141,141,141,141,141,141,141,141,141,141,141,141,141, |
| 272 | 141,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109, |
| 273 | 109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109, |
| 274 | 109,237,237,237,237,237,237,237,237,237,237,237,237,237,237,237, |
| 275 | 237,237,237,237,237,237,237,237,237,237,237,237,237,237,237,237, |
| 276 | 237, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, |
| 277 | 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, |
| 278 | 45,173,173,173,173,173,173,173,173,173,173,173,173,173,173,173, |
| 279 | 173,173,173,173,173,173,173,173,173,173,173,173,173,173,173,173, |
| 280 | 173, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, |
| 281 | 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, |
| 282 | 81,209,209,209,209,209,209,209,209,209,209,209,209,209,209,209, |
| 283 | 209, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, |
| 284 | 17,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145, |
| 285 | 145,113,113,113,113,113,113,113,113,113,113,113,113,113,113,113, |
| 286 | 113,241,241,241,241,241,241,241,241,241,241,241,241,241,241,241, |
| 287 | 241, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, |
| 288 | 49,177,177,177,177,177,177,177,177,177,177,177,177,177,177,177, |
| 289 | 177, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, |
| 290 | 65,193,193,193,193,193,193,193,193,193,193,193,193,193,193,193, |
| 291 | 193, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, |
| 292 | 1,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129, |
| 293 | 129, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, |
| 294 | 97,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225, |
| 295 | 225, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, |
| 296 | 33,161,161,161,161,161,161,161,161,161,161,161,161,161,161,161, |
| 297 | 161, 89, 89, 89, 89, 89, 89, 89, 89, 89, 89, 89, 89, 89, 89, 89, |
| 298 | 89,217,217,217,217,217,217,217,217, 25, 25, 25, 25, 25, 25, 25, |
| 299 | 25,153,153,153,153,153,153,153,153,121,121,121,121,121,121,121, |
| 300 | 121,249,249,249,249,249,249,249,249, 57, 57, 57, 57, 57, 57, 57, |
| 301 | 57,185,185,185,185,185,185,185,185, 73, 73, 73, 73, 73, 73, 73, |
| 302 | 73,201,201,201,201,201,201,201,201, 9, 9, 9, 9, 9, 9, 9, |
| 303 | 9,137,137,137,137,137,137,137,137,105,105,105,105,105,105,105, |
| 304 | 105,233,233,233,233,233,233,233,233, 41, 41, 41, 41, 41, 41, 41, |
| 305 | 41,169,169,169,169,169,169,169,169, 87, 87, 87, 87, 87, 87, 87, |
| 306 | 87,215,215,215,215, 23, 23, 23, 23,151,151,151,151,119,119,119, |
| 307 | 119,247,247,247,247, 55, 55, 55, 55,183,183,183,183, 71, 71, 71, |
| 308 | 71,199,199,199,199, 7, 7, 7, 7,135,135,135,135,103,103,103, |
| 309 | 103,231,231,231,231, 39, 39, 39, 39,167,167,167,167, 95, 95, 95, |
| 310 | 95,223,223, 31, 31,159,159,127,127,255,255, 63, 63,191,191, 79, |
| 311 | 79,207,207, 15, 15,143,143,111,111,239,239, 47, 47,175,175, 83, |
| 312 | 83,211, 19,147,115,243, 51,179, 67,195, 3,131, 99,227, 35,163, |
| 313 | 91,219, 27,155,123,251, 59,187, 75,203, 11,139,107,235, 43,171 |
| 314 | }; |
| 315 | |
| 316 | int alaw_input P1((buf), gsm_signal * buf) |
| 317 | { |
| 318 | int i, c; |
| 319 | |
| 320 | for (i = 0; i < 160 && (c = fgetc(in)) != EOF; i++) buf[i] = A2S( c ); |
| 321 | if (c == EOF && ferror(in)) return -1; |
| 322 | return i; |
| 323 | } |
| 324 | |
| 325 | int alaw_output P1((buf), gsm_signal * buf) |
| 326 | { |
| 327 | int i; |
| 328 | |
| 329 | for (i = 0; i < 160; i++, buf++) |
| 330 | if (fputc( S2A( *buf ), out) == EOF) return -1; |
| 331 | return 0; |
| 332 | } |
| 333 | |