view jmix_post_c.h @ 49:033c660c25f5

Restructure module playing, removing 8bit sample mixing (output can still be 8bit, but samples are internally upconverted to 16bit after module loading.) Also prepare for floating point mixing support.
author Matti Hamalainen <ccr@tnsp.org>
date Mon, 01 Oct 2012 02:51:41 +0300
parents ee87513fff15
children
line wrap: on
line source

/*
 * miniJSS - Post-processing routine template
 * Programmed and designed by Matti 'ccr' Hamalainen
 * (C) Copyright 2005-2007 Tecnic Software productions (TNSP)
 */

#ifdef JMIXER_HEADER
void JMIXER_NAME (JMIXER_ADDBUF_TYPE *, void *, const int);
#else
void JMIXER_NAME (JMIXER_ADDBUF_TYPE *addBuffer, void *mixBuffer, const int mixLength)
{
    int strideLength = mixLength;
    JMIXER_ADDBUF_TYPE *ap = addBuffer, t;
    JMIXER_TYPE *sp = (JMIXER_TYPE *) mixBuffer;

    while (strideLength--)
    {
        t = *(ap++);
        JMIXER_CLAMP
        JMIXER_FUNCTION
    }
}
#endif

#undef JMIXER_NAME
#undef JMIXER_TYPE
#undef JMIXER_FUNCTION