Sound is now reliably playing back samples on TLV320AIC20K.
[firmerware] / src / codec / l8l16.c
index 327cf5b..ba66ece 100644 (file)
@@ -35,7 +35,7 @@
 void l8_decode (struct codec *hdl, int16_t *pcm, uint16_t *pcmlen, uint8_t *pkt, uint16_t *pktlen) {
        while ((*pktlen >= 1) && (*pcmlen >= 1)) {
                // Note: The 0x00ff masks away extra bits from 16-bit DSPs like tic55x
-               *pcm++ = ((((uint16_t) *pkt++) & 0x00ff) ^ 0x0080) << 8;
+               *pcm++ = (((uint16_t) ((*pkt++) & 0x00ff)) ^ 0x0080) << 8;
                (*pcmlen) --;
                (*pktlen) --;
        }
@@ -53,7 +53,7 @@ void l8_encode (struct codec *hdl, int16_t *pcm, uint16_t *pcmlen, uint8_t *pkt,
 void l16_decode (struct codec *hdl, int16_t *pcm, uint16_t *pcmlen, uint8_t *pkt, uint16_t *pktlen) {
        while ((*pktlen >= 2) && (*pcmlen >= 1)) {
                // Note: The 0xff masks away extra bits from 16-bit DSPs like tic55x
-               *pcm++ = (int16_t) ((((uint16_t) *pkt++) << 8) | ((*pkt++) & 0xff));
+               *pcm++ = (int16_t) ((((uint16_t) (*pkt++)) << 8) | ((*pkt++) & 0xff));
                (*pcmlen) --;
                (*pktlen) -= 2;
        }