DSPRelated.com
Forums

RE: reading a .dat file_URGENT

Started by Jeff Brower January 14, 2008
Christian-

>>> i need a help in my project...
>>>
>>> i'm using TMS320VC5416...
>>>
>>> i have a problem, i want to read a .dat-file. Data on the .dat-file is integer...
>>>
>>> i'm using a linker cmd-file from tutorial, it works, but i have 2 warnings, they are :
>>>
>>> ---------------------------- AMdemod.pjt - Debug ----------------------------
>>> [AMdemod2.c] "C:\CCStudio_v3.1\C5400\cgtools\bin\cl500" -g -fr"C:/CCStudio_v3.1/AMdemod/Debug" -d"DEBUG"
>>> -@"Debug.lkf"
>>> "AMdemod2.c"
>>>
>>> [Linking...] "C:\CCStudio_v3.1\C5400\cgtools\bin\cl500" -@"Debug.lkf"
>>>
>>>>> c5416dsk.cmd, line 87: warning: fill value for SECTION '.sysmem' truncated to
>>> 4 bytes: 0x0000DEAD
>>>>> c5416dsk.cmd, line 88: warning: fill value for SECTION '.stack' truncated to
>>> 4 bytes: 0x0000BEEF
>>>
>>> Build Complete,
>>> 0 Errors, 2 Warnings, 0 Remarks.
>>
>> The C5416 is a 16-bit device, so I don't think a constant can be declared more than 2 bytes. It looks to me like you
>> might have got the .cmd file from a C6x tutorial?
>>
>> -Jeff
>>
>> hi...
>>
>> no, i get it the .cmd-file from the tutorial/dsk5416/shared
>>
>> can you help me?
>>
>> what should i change so i can make the warnings disappear?
>
> Please cut-and-paste lines 80-90 of your .cmd file.
>
> -Jeff
>
> this is the line 80-90 :
>
> .intvecs :> VECS0 PAGE 0 /* interrupt vector table */
>
> .text :> DARAM0 PAGE 0 /* User code */
> .rtdx_text :> DARAM0 PAGE 0 /* RTDX code */
> .cinit :> DARAM0 PAGE 0 /* initialization tables */
> .pinit :> DARAM0 PAGE 0 /* initialization functions */
> .switch :> DARAM0 PAGE 0 /* for C-switch tables */
> .sysmem :> DARAM2 PAGE 1 fill = 0DEADh /* dynamic heap */
> .stack :> DARAM2 PAGE 1 fill = 0BEEFh /* system stack */
> .const :> DARAM2 PAGE 1 /* C constant tables */
> .cio :> DARAM2 PAGE 1 /* C-IO Buffer */
> .bss :> DARAM2 PAGE 1 /* global & static vars */
> .data :> DARAM2 PAGE 1 /* asm data area */
> .rtdx_data :> DARAM2 PAGE 1 /* RTDX data area */
> }

Well, if CCS says it's truncating to 4 bytes, then I'm not sure what's wrong with the fill definition you're using.
Maybe it's just a syntax issue. You might try:

.sysmem :> DARAM2 PAGE 1 fill = 0xDEAD /* dynamic heap */
.stack :> DARAM2 PAGE 1 fill = 0xBEEF /* system stack */

Also you can try 0xDE and 0xBE (2 bytes) and see if that works.

-Jeff

Check Out Industry's First Single-Chip, Multi-Format, Real-Time HD Video Transcoding Solution for Commercial & Consumer End Equipment: www.ti.com/dm6467
Christian-

>>> i need a help in my project...
>>>
>>> i'm using TMS320VC5416...
>>>
>>> i have a problem, i want to read a .dat-file. Data on the .dat-file is integer...
>>>
>>> i'm using a linker cmd-file from tutorial, it works, but i have 2 warnings, they are :
>>>
>>> ---------------------------- AMdemod.pjt - Debug ----------------------------
>>> [AMdemod2.c] "C:\CCStudio_v3.1\C5400\cgtools\bin\cl500" -g -fr"C:/CCStudio_v3.1/AMdemod/Debug" -d"DEBUG"
>>> -@"Debug.lkf"
>>> "AMdemod2.c"
>>>
>>> [Linking...] "C:\CCStudio_v3.1\C5400\cgtools\bin\cl500" -@"Debug.lkf"
>>>
>>>>> c5416dsk.cmd, line 87: warning: fill value for SECTION '.sysmem' truncated to
>>> 4 bytes: 0x0000DEAD
>>>>> c5416dsk.cmd, line 88: warning: fill value for SECTION '.stack' truncated to
>>> 4 bytes: 0x0000BEEF
>>>
>>> Build Complete,
>>> 0 Errors, 2 Warnings, 0 Remarks.
>>
>> The C5416 is a 16-bit device, so I don't think a constant can be declared more than 2 bytes. It looks to me like you
>> might have got the .cmd file from a C6x tutorial?
>>
>> -Jeff
>>
>> hi...
>>
>> no, i get it the .cmd-file from the tutorial/dsk5416/shared
>>
>> can you help me?
>>
>> what should i change so i can make the warnings disappear?
>
> Please cut-and-paste lines 80-90 of your .cmd file.
>
> -Jeff
>
> this is the line 80-90 :
>
> .intvecs :> VECS0 PAGE 0 /* interrupt vector table */
>
> .text :> DARAM0 PAGE 0 /* User code */
> .rtdx_text :> DARAM0 PAGE 0 /* RTDX code */
> .cinit :> DARAM0 PAGE 0 /* initialization tables */
> .pinit :> DARAM0 PAGE 0 /* initialization functions */
> .switch :> DARAM0 PAGE 0 /* for C-switch tables */
> .sysmem :> DARAM2 PAGE 1 fill = 0DEADh /* dynamic heap */
> .stack :> DARAM2 PAGE 1 fill = 0BEEFh /* system stack */
> .const :> DARAM2 PAGE 1 /* C constant tables */
> .cio :> DARAM2 PAGE 1 /* C-IO Buffer */
> .bss :> DARAM2 PAGE 1 /* global & static vars */
> .data :> DARAM2 PAGE 1 /* asm data area */
> .rtdx_data :> DARAM2 PAGE 1 /* RTDX data area */
> }

Well, if CCS says it's truncating to 4 bytes, then I'm not sure what's wrong with the fill definition you're using.
Maybe it's just a syntax issue. You might try:

.sysmem :> DARAM2 PAGE 1 fill = 0xDEAD /* dynamic heap */
.stack :> DARAM2 PAGE 1 fill = 0xBEEF /* system stack */

Also you can try 0xDE and 0xBE (2 bytes) and see if that works.

-Jeff

thanks...
i'll try it...

actually i tried to make a little change on this .cmd-file...
i change the
-stack0x0400 to -stack0x1000
-heap0x0400 to -heap0x1000

could it be affected to the byte size?

thanks...
Check Out Industry's First Single-Chip, Multi-Format, Real-Time HD Video Transcoding Solution for Commercial & Consumer End Equipment: www.ti.com/dm6467