rem: *buffer = voice->buffer->log_base + (buf * stream->bufframes * sample_size);
add: *buffer = (char*)voice->buffer->log_base + (buf * stream->bufframes * sample_size);
context: emuxki_stream_get_nth_buffer(emuxki_stream *stream, uint8 chan, uint8 buf, 					char** buffer, size_t *stride){	emuxki_voice *voice = NULL;	uint8 i, sample_size;	LOG(("emuxki_stream_get_nth_buffer\n"));		sample_size = stream->b16 + 1;	if(buf >= stream->bufcount)		return B_BAD_INDEX;		if(stream->stereo) {		i = stream->nstereo - 1;		if(chan/2 > i)			return B_BAD_INDEX;		LIST_FOREACH(voice, &stream->voices, next)			if(i != chan/2)				i--;			else 				break;		if(voice) {			*buffer = voice->buffer->log_base + (buf * stream->bufframes * sample_size * 2);			if(chan % 2 == 1)				*buffer += sample_size;			*stride = sample_size * 2;		} else			return B_ERROR;	} else {		i = stream->nmono - 1;		if(chan > i)			return B_BAD_INDEX;		LIST_FOREACH(voice, &stream->voices, next)			if(i != chan)				i--;			else 				break;		if(voice) {			*buffer = voice->buffer->log_base + (buf * stream->bufframes * sample_size);			*stride = sample_size;		} else			return B_ERROR;	}		return B_OK;}