X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=Pico%2Fcd%2Fpcm.c;h=7bd8685fa8a3573e5fdf41bf23a40e263156b038;hb=b06778874d140bd5187cb74444ddc40931b9bd1d;hp=8f17a7e261a455bf6db750b8b8e59e0569c19b48;hpb=6cadc2da0070781cf2d8fcff84265d3ca1f423b9;p=picodrive.git diff --git a/Pico/cd/pcm.c b/Pico/cd/pcm.c index 8f17a7e..7bd8685 100644 --- a/Pico/cd/pcm.c +++ b/Pico/cd/pcm.c @@ -7,7 +7,7 @@ static unsigned int g_rate = 0; // 18.14 fixed point -void pcm_write(unsigned int a, unsigned int d) +PICO_INTERNAL_ASM void pcm_write(unsigned int a, unsigned int d) { //printf("pcm_write(%i, %02x)\n", a, d); @@ -50,19 +50,17 @@ void pcm_write(unsigned int a, unsigned int d) } -void pcm_set_rate(int rate) +PICO_INTERNAL void pcm_set_rate(int rate) { float step = 31.8 * 1024.0 / (float) rate; // max <4 @ 8000Hz step *= 256*256/4; g_rate = (unsigned int) step; if (step - (float) g_rate >= 0.5) g_rate++; - printf("g_rate: %f %08x\n", (double)step, g_rate); + elprintf(EL_STATUS, "g_rate: %f %08x\n", (double)step, g_rate); } -// TODO: make use of the fact that max_length == 3 - -void pcm_update(int *buffer, int length, int stereo) +PICO_INTERNAL void pcm_update(int *buffer, int length, int stereo) { struct pcm_chan *ch; unsigned int step, addr;