15e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh/*
25e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh * Copyright 1992 by Jutta Degener and Carsten Bormann, Technische
35e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh * Universitaet Berlin.  See the accompanying file "COPYRIGHT" for
45e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh * details.  THERE IS ABSOLUTELY NO WARRANTY FOR THIS SOFTWARE.
55e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh */
65e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh
75e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh/* $Header: /tmp_amd/presto/export/kbs/jutta/src/gsm/RCS/gsm_encode.c,v 1.2 1996/07/02 09:59:05 jutta Exp $ */
85e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh
95e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh#include "private.h"
105e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh#include "gsm.h"
115e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh#include "proto.h"
125e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh
135e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yehvoid gsm_encode P3((s, source, c), gsm s, gsm_signal * source, gsm_byte * c)
145e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh{
155e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh	word	 	LARc[8], Nc[4], Mc[4], bc[4], xmaxc[4], xmc[13*4];
165e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh
175e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh	Gsm_Coder(s, source, LARc, Nc, bc, Mc, xmaxc, xmc);
185e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh
195e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh
205e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh	/*	variable	size
215e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh
225e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		GSM_MAGIC	4
235e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh
245e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		LARc[0]		6
255e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		LARc[1]		6
265e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		LARc[2]		5
275e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		LARc[3]		5
285e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		LARc[4]		4
295e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		LARc[5]		4
305e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		LARc[6]		3
315e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		LARc[7]		3
325e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh
335e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		Nc[0]		7
345e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		bc[0]		2
355e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		Mc[0]		2
365e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmaxc[0]	6
375e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[0]		3
385e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[1]		3
395e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[2]		3
405e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[3]		3
415e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[4]		3
425e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[5]		3
435e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[6]		3
445e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[7]		3
455e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[8]		3
465e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[9]		3
475e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[10]		3
485e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[11]		3
495e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[12]		3
505e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh
515e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		Nc[1]		7
525e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		bc[1]		2
535e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		Mc[1]		2
545e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmaxc[1]	6
555e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[13]		3
565e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[14]		3
575e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[15]		3
585e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[16]		3
595e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[17]		3
605e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[18]		3
615e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[19]		3
625e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[20]		3
635e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[21]		3
645e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[22]		3
655e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[23]		3
665e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[24]		3
675e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[25]		3
685e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh
695e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		Nc[2]		7
705e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		bc[2]		2
715e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		Mc[2]		2
725e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmaxc[2]	6
735e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[26]		3
745e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[27]		3
755e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[28]		3
765e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[29]		3
775e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[30]		3
785e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[31]		3
795e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[32]		3
805e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[33]		3
815e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[34]		3
825e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[35]		3
835e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[36]		3
845e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[37]		3
855e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[38]		3
865e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh
875e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		Nc[3]		7
885e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		bc[3]		2
895e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		Mc[3]		2
905e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmaxc[3]	6
915e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[39]		3
925e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[40]		3
935e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[41]		3
945e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[42]		3
955e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[43]		3
965e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[44]		3
975e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[45]		3
985e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[46]		3
995e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[47]		3
1005e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[48]		3
1015e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[49]		3
1025e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[50]		3
1035e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		xmc[51]		3
1045e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh	*/
1055e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh
1065e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh#ifdef WAV49
1075e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh
1085e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh	if (s->wav_fmt) {
1095e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		s->frame_index = !s->frame_index;
1105e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		if (s->frame_index) {
1115e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh
1125e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			uword sr;
1135e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh
1145e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = 0;
1155e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 6 | LARc[0] << 10;
1165e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 6 | LARc[1] << 10;
1175e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 4;
1185e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 5 | LARc[2] << 11;
1195e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 7;
1205e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 5 | LARc[3] << 11;
1215e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 4 | LARc[4] << 12;
1225e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 6;
1235e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 4 | LARc[5] << 12;
1245e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | LARc[6] << 13;
1255e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 7;
1265e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | LARc[7] << 13;
1275e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 7 | Nc[0] << 9;
1285e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 5;
1295e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 2 | bc[0] << 14;
1305e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 2 | Mc[0] << 14;
1315e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 6 | xmaxc[0] << 10;
1325e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 3;
1335e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[0] << 13;
1345e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 8;
1355e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[1] << 13;
1365e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[2] << 13;
1375e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[3] << 13;
1385e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 7;
1395e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[4] << 13;
1405e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[5] << 13;
1415e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[6] << 13;
1425e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 6;
1435e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[7] << 13;
1445e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[8] << 13;
1455e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 8;
1465e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[9] << 13;
1475e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[10] << 13;
1485e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[11] << 13;
1495e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 7;
1505e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[12] << 13;
1515e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 7 | Nc[1] << 9;
1525e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 5;
1535e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 2 | bc[1] << 14;
1545e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 2 | Mc[1] << 14;
1555e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 6 | xmaxc[1] << 10;
1565e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 3;
1575e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[13] << 13;
1585e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 8;
1595e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[14] << 13;
1605e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[15] << 13;
1615e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[16] << 13;
1625e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 7;
1635e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[17] << 13;
1645e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[18] << 13;
1655e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[19] << 13;
1665e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 6;
1675e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[20] << 13;
1685e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[21] << 13;
1695e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 8;
1705e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[22] << 13;
1715e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[23] << 13;
1725e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[24] << 13;
1735e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 7;
1745e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[25] << 13;
1755e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 7 | Nc[2] << 9;
1765e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 5;
1775e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 2 | bc[2] << 14;
1785e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 2 | Mc[2] << 14;
1795e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 6 | xmaxc[2] << 10;
1805e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 3;
1815e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[26] << 13;
1825e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 8;
1835e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[27] << 13;
1845e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[28] << 13;
1855e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[29] << 13;
1865e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 7;
1875e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[30] << 13;
1885e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[31] << 13;
1895e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[32] << 13;
1905e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 6;
1915e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[33] << 13;
1925e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[34] << 13;
1935e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 8;
1945e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[35] << 13;
1955e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[36] << 13;
1965e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[37] << 13;
1975e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 7;
1985e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[38] << 13;
1995e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 7 | Nc[3] << 9;
2005e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 5;
2015e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 2 | bc[3] << 14;
2025e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 2 | Mc[3] << 14;
2035e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 6 | xmaxc[3] << 10;
2045e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 3;
2055e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[39] << 13;
2065e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 8;
2075e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[40] << 13;
2085e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[41] << 13;
2095e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[42] << 13;
2105e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 7;
2115e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[43] << 13;
2125e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[44] << 13;
2135e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[45] << 13;
2145e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 6;
2155e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[46] << 13;
2165e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[47] << 13;
2175e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 8;
2185e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[48] << 13;
2195e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[49] << 13;
2205e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[50] << 13;
2215e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 7;
2225e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[51] << 13;
2235e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 4;
2245e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c = sr >> 8;
2255e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			s->frame_chain = *c;
2265e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		}
2275e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		else {
2285e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			uword sr;
2295e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh
2305e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = 0;
2315e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 4 | s->frame_chain << 12;
2325e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 6 | LARc[0] << 10;
2335e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 6;
2345e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 6 | LARc[1] << 10;
2355e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 8;
2365e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 5 | LARc[2] << 11;
2375e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 5 | LARc[3] << 11;
2385e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 6;
2395e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 4 | LARc[4] << 12;
2405e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 4 | LARc[5] << 12;
2415e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 6;
2425e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | LARc[6] << 13;
2435e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | LARc[7] << 13;
2445e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 8;
2455e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 7 | Nc[0] << 9;
2465e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 2 | bc[0] << 14;
2475e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 7;
2485e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 2 | Mc[0] << 14;
2495e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 6 | xmaxc[0] << 10;
2505e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 7;
2515e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[0] << 13;
2525e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[1] << 13;
2535e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[2] << 13;
2545e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 6;
2555e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[3] << 13;
2565e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[4] << 13;
2575e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 8;
2585e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[5] << 13;
2595e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[6] << 13;
2605e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[7] << 13;
2615e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 7;
2625e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[8] << 13;
2635e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[9] << 13;
2645e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[10] << 13;
2655e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 6;
2665e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[11] << 13;
2675e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[12] << 13;
2685e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 8;
2695e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 7 | Nc[1] << 9;
2705e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 2 | bc[1] << 14;
2715e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 7;
2725e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 2 | Mc[1] << 14;
2735e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 6 | xmaxc[1] << 10;
2745e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 7;
2755e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[13] << 13;
2765e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[14] << 13;
2775e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[15] << 13;
2785e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 6;
2795e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[16] << 13;
2805e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[17] << 13;
2815e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 8;
2825e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[18] << 13;
2835e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[19] << 13;
2845e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[20] << 13;
2855e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 7;
2865e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[21] << 13;
2875e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[22] << 13;
2885e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[23] << 13;
2895e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 6;
2905e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[24] << 13;
2915e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[25] << 13;
2925e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 8;
2935e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 7 | Nc[2] << 9;
2945e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 2 | bc[2] << 14;
2955e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 7;
2965e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 2 | Mc[2] << 14;
2975e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 6 | xmaxc[2] << 10;
2985e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 7;
2995e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[26] << 13;
3005e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[27] << 13;
3015e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[28] << 13;
3025e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 6;
3035e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[29] << 13;
3045e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[30] << 13;
3055e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 8;
3065e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[31] << 13;
3075e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[32] << 13;
3085e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[33] << 13;
3095e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 7;
3105e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[34] << 13;
3115e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[35] << 13;
3125e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[36] << 13;
3135e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 6;
3145e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[37] << 13;
3155e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[38] << 13;
3165e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 8;
3175e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 7 | Nc[3] << 9;
3185e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 2 | bc[3] << 14;
3195e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 7;
3205e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 2 | Mc[3] << 14;
3215e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 6 | xmaxc[3] << 10;
3225e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 7;
3235e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[39] << 13;
3245e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[40] << 13;
3255e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[41] << 13;
3265e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 6;
3275e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[42] << 13;
3285e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[43] << 13;
3295e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 8;
3305e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[44] << 13;
3315e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[45] << 13;
3325e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[46] << 13;
3335e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 7;
3345e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[47] << 13;
3355e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[48] << 13;
3365e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[49] << 13;
3375e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 6;
3385e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[50] << 13;
3395e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			sr = sr >> 3 | xmc[51] << 13;
3405e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh			*c++ = sr >> 8;
3415e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		}
3425e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh	}
3435e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh
3445e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh	else
3455e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh
3465e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh#endif	/* WAV49 */
3475e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh	{
3485e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh
3495e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		*c++ =   ((GSM_MAGIC & 0xF) << 4)		/* 1 */
3505e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((LARc[0] >> 2) & 0xF);
3515e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		*c++ =   ((LARc[0] & 0x3) << 6)
3525e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | (LARc[1] & 0x3F);
3535e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		*c++ =   ((LARc[2] & 0x1F) << 3)
3545e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((LARc[3] >> 2) & 0x7);
3555e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		*c++ =   ((LARc[3] & 0x3) << 6)
3565e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((LARc[4] & 0xF) << 2)
3575e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((LARc[5] >> 2) & 0x3);
3585e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		*c++ =   ((LARc[5] & 0x3) << 6)
3595e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((LARc[6] & 0x7) << 3)
3605e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | (LARc[7] & 0x7);
3615e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		*c++ =   ((Nc[0] & 0x7F) << 1)
3625e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((bc[0] >> 1) & 0x1);
3635e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		*c++ =   ((bc[0] & 0x1) << 7)
3645e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((Mc[0] & 0x3) << 5)
3655e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((xmaxc[0] >> 1) & 0x1F);
3665e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		*c++ =   ((xmaxc[0] & 0x1) << 7)
3675e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((xmc[0] & 0x7) << 4)
3685e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((xmc[1] & 0x7) << 1)
3695e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((xmc[2] >> 2) & 0x1);
3705e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		*c++ =   ((xmc[2] & 0x3) << 6)
3715e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((xmc[3] & 0x7) << 3)
3725e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | (xmc[4] & 0x7);
3735e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		*c++ =   ((xmc[5] & 0x7) << 5)			/* 10 */
3745e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((xmc[6] & 0x7) << 2)
3755e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((xmc[7] >> 1) & 0x3);
3765e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		*c++ =   ((xmc[7] & 0x1) << 7)
3775e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((xmc[8] & 0x7) << 4)
3785e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((xmc[9] & 0x7) << 1)
3795e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((xmc[10] >> 2) & 0x1);
3805e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		*c++ =   ((xmc[10] & 0x3) << 6)
3815e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((xmc[11] & 0x7) << 3)
3825e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | (xmc[12] & 0x7);
3835e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		*c++ =   ((Nc[1] & 0x7F) << 1)
3845e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((bc[1] >> 1) & 0x1);
3855e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		*c++ =   ((bc[1] & 0x1) << 7)
3865e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((Mc[1] & 0x3) << 5)
3875e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((xmaxc[1] >> 1) & 0x1F);
3885e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		*c++ =   ((xmaxc[1] & 0x1) << 7)
3895e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((xmc[13] & 0x7) << 4)
3905e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((xmc[14] & 0x7) << 1)
3915e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((xmc[15] >> 2) & 0x1);
3925e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		*c++ =   ((xmc[15] & 0x3) << 6)
3935e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((xmc[16] & 0x7) << 3)
3945e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | (xmc[17] & 0x7);
3955e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		*c++ =   ((xmc[18] & 0x7) << 5)
3965e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((xmc[19] & 0x7) << 2)
3975e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((xmc[20] >> 1) & 0x3);
3985e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		*c++ =   ((xmc[20] & 0x1) << 7)
3995e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((xmc[21] & 0x7) << 4)
4005e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((xmc[22] & 0x7) << 1)
4015e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((xmc[23] >> 2) & 0x1);
4025e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		*c++ =   ((xmc[23] & 0x3) << 6)
4035e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((xmc[24] & 0x7) << 3)
4045e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | (xmc[25] & 0x7);
4055e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		*c++ =   ((Nc[2] & 0x7F) << 1)			/* 20 */
4065e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((bc[2] >> 1) & 0x1);
4075e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		*c++ =   ((bc[2] & 0x1) << 7)
4085e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((Mc[2] & 0x3) << 5)
4095e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((xmaxc[2] >> 1) & 0x1F);
4105e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		*c++ =   ((xmaxc[2] & 0x1) << 7)
4115e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((xmc[26] & 0x7) << 4)
4125e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((xmc[27] & 0x7) << 1)
4135e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((xmc[28] >> 2) & 0x1);
4145e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		*c++ =   ((xmc[28] & 0x3) << 6)
4155e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((xmc[29] & 0x7) << 3)
4165e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | (xmc[30] & 0x7);
4175e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		*c++ =   ((xmc[31] & 0x7) << 5)
4185e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((xmc[32] & 0x7) << 2)
4195e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((xmc[33] >> 1) & 0x3);
4205e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		*c++ =   ((xmc[33] & 0x1) << 7)
4215e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((xmc[34] & 0x7) << 4)
4225e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((xmc[35] & 0x7) << 1)
4235e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((xmc[36] >> 2) & 0x1);
4245e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		*c++ =   ((xmc[36] & 0x3) << 6)
4255e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((xmc[37] & 0x7) << 3)
4265e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | (xmc[38] & 0x7);
4275e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		*c++ =   ((Nc[3] & 0x7F) << 1)
4285e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((bc[3] >> 1) & 0x1);
4295e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		*c++ =   ((bc[3] & 0x1) << 7)
4305e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((Mc[3] & 0x3) << 5)
4315e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((xmaxc[3] >> 1) & 0x1F);
4325e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		*c++ =   ((xmaxc[3] & 0x1) << 7)
4335e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((xmc[39] & 0x7) << 4)
4345e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((xmc[40] & 0x7) << 1)
4355e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((xmc[41] >> 2) & 0x1);
4365e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		*c++ =   ((xmc[41] & 0x3) << 6)			/* 30 */
4375e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((xmc[42] & 0x7) << 3)
4385e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | (xmc[43] & 0x7);
4395e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		*c++ =   ((xmc[44] & 0x7) << 5)
4405e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((xmc[45] & 0x7) << 2)
4415e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((xmc[46] >> 1) & 0x3);
4425e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		*c++ =   ((xmc[46] & 0x1) << 7)
4435e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((xmc[47] & 0x7) << 4)
4445e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((xmc[48] & 0x7) << 1)
4455e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((xmc[49] >> 2) & 0x1);
4465e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		*c++ =   ((xmc[49] & 0x3) << 6)
4475e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | ((xmc[50] & 0x7) << 3)
4485e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh		       | (xmc[51] & 0x7);
4495e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh
4505e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh	}
4515e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh}
452