[TriEmbed] TriEmbed Digest, Vol 36, Issue 5

Alex Davis alexd at matrixwide.com
Thu May 5 13:15:22 CDT 2016


> 
> http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0475c/BAJFHFDI.html
> 
> If we click on the right side-middle link "ISO C Features missing from 
> microlib" the list is available. If " |#pragma import(__use_full_stdio)" 
> |is used then full FILE* support is available except for  feof() and 
> ferror().
> 
> Seems like you just got very unlucky needing feof. The floating point 
> compromises could also be a major pain, but the other stuff seems pretty 
> minor (e.g. what would we expect to get out of a call to system or
> getenv?)

Pete,

thanks for the link to the doc. I worked around feof in the library I
wanted as follows:
change this:
if (READ_U32_BE(p->fp, &chunk_id) != 0) {
            if (feof(p->fp)) {
                /*
                 * 
                 */
                result = WavFileResultErrorNoDataChunk;
                goto finalize;
            } else {

to this:
if (READ_U32_BE(p->fp, &chunk_id) != 0) {
            if (ferror(p->fp)) {
                /*
                 * 
                 */
                result = WavFileResultErrorNoDataChunk;
                goto finalize;
            }

Seems to play a wav file to the end just fine. Next step is to try to
get it working using the RTOS library.

Not sure on the IEEE 754 compliance. I'll have to try something which
uses the DSP-like functions of the FPU and see if there's issues. I also
see a note on mutexes. I wonder if that breaks them in the MBED RTOS
library? I haven't tried them yet myself.

Alex

-- 
"The theater of noise is proof of our potential."
|\ |  (¯  \/ |¯\  |V| |\ ¯|¯ |¯) | \/ | | | |¯\ (¯   /¯  /\ |V|
|-||_ (_  /\ |_/ @| | |-| |  | \ | /\ |^| | |_/ (_ . \_  \/ | |

You won't find me on Facebook.




More information about the TriEmbed mailing list