This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

CCS4 how to use fastRTS.lib and DSPBIOS?

Hi,  I would like to use the fastRTS library for my application.  I read in another post that to do this in CCS4 I have to use the Properties->CCS Build->Link Order and explicitly set the order to:

link_bios_dsplib_rts_rom.cmd  (user config script with fastRTS specified)

Generated Linker Command files

This does seem seem to result in the fastRTS library being used.  Is there something else I am missing?  Do I have to set anything in the the BIOS config file?  Or are there other compiler/linker settings to modify?

Thanks!

  • CT said:
    This does seem seem to result in the fastRTS library being used. 

    Did you mean that is is NOT working?

  • Sorry, I meant to write that it does not work.  However, after a bit more testing I think that the fastRTS is working but my problem is with the rts67plus library.  I was not expecting so much memory consumption.  I see many objects in the map file that I wasn't expecting.

                      1000c260    00000540     rts67plus.lib : _printfi.obj (.text:__getarg_diouxp)
                      1000c7a0    00000540                   : _printfi.obj (.text:__setfield)

    ...

                      10012b80    00000220     rts67plus.lib : trgdrv.obj (.text:_HOSTrename)
                      10012da0    00000220                   : _printfi.obj (.text:__mcpy)
                      10012fc0    00000220                   : memcpy62.obj (.text:_memcpy)

    ...

                      10018860    00000020     rts67plus.lib : error.obj (.text:___abort_execution)
                      10018880    00000020                   : newhandler.obj (.text:___default_new_handler__Fv)
                      100188a0    00000020                   : delete.obj (.text:___dl__FPv)
                      100188c0    00000020                   : pure_virt.obj (.text:___pure_virtual_called)
                      100188e0    00000020                   : negll.obj (.text:__negll)
                      10018900    00000020                   : _lock.obj (.text:__nop)
                      10018920    00000020                   : fprintf.obj (.text:__outc)
                      10018940    00000020                   : printf.obj (.text:__outc)
                      10018960    00000020                   : sprintf.obj (.text:__outc)
                      10018980    00000020                   : vsprintf.obj (.text:__outc)
                      100189a0    00000020                   : fprintf.obj (.text:__outs)
                      100189c0    00000020                   : printf.obj (.text:__outs)
                      100189e0    00000020                   : _lock.obj (.text:__register_lock)
                      10018a00    00000020                   : _lock.obj (.text:__register_unlock)
                      10018a20    00000020                   : exit.obj (.text:_abort)
                      10018a40    00000020                   : remove.obj (.text:_remove)

    etc...

    I realize now that the fastRTS lib does not include any print* support.  I am not familiar with all the objects being linked (e.g. trgdrv.obj and error.obj).  I will have to take a closer look at where they may be used.  Thanks.