[openfirmware] r1281 - cpu/x86 dev/hdaudio

svn at openfirmware.info svn at openfirmware.info
Thu Aug 6 02:14:04 CEST 2009


Author: wmb
Date: 2009-08-06 02:14:04 +0200 (Thu, 06 Aug 2009)
New Revision: 1281

Modified:
   cpu/x86/firfilter.fth
   dev/hdaudio/core.fth
Log:
Use FIR upsampling filter for HD Audio.











Modified: cpu/x86/firfilter.fth
===================================================================
--- cpu/x86/firfilter.fth	2009-08-06 00:13:06 UTC (rev 1280)
+++ cpu/x86/firfilter.fth	2009-08-06 00:14:04 UTC (rev 1281)
@@ -46,7 +46,8 @@
 
       d# 24 [sp]   di  mov   \ Output pointer
       op:          ax  stos  \ Store output value
-      di   d# 24 [sp]  mov   \ Update output pointer
+      d# 20 [sp]   ax  mov   \ Stride
+      ax   d# 24 [sp]  add   \ Update output pointer
 
    d# 04 [sp] dec            \ Phase counter
    0= until

Modified: dev/hdaudio/core.fth
===================================================================
--- dev/hdaudio/core.fth	2009-08-06 00:13:06 UTC (rev 1280)
+++ dev/hdaudio/core.fth	2009-08-06 00:14:04 UTC (rev 1281)
@@ -391,9 +391,11 @@
 ;
 
 : upsample-channel  ( -- )
-   /src 4 /  1 do
-      i copy-sample
-   loop
+   upsample-factor 6 =  if
+      src /src dst 4 " 8khz>48khz" evaluate
+   else
+      /src 4 /  1 do  i copy-sample  loop
+   then
 ;
 
 : upsample  ( adr len factor -- adr len )




More information about the openfirmware mailing list