| Newsgroups |
gmane.comp.hardware.rabbit-semiconductor |
| Message-ID |
<[email protected]> |
On 6/16/2015 5:24 AM, [email protected] [rabbit-semi] wrote:
> Hi,
>
> I'm trying to initialize a large float array in Dynamic C V10.70 on
> Win XP for a RCM6700 target as follow :
>
> far float crosstable[4096]={\
> -250.000,-249.622,-249.244,-248.897,-248.606,-248.315,-248.025,-247.753,\
> -247.483,-247.213,-246.950,-246.714,-246.477,-246.241,-246.005,-245.782,\
> -245.560,-245.337,-245.115,-244.904,-244.705,-244.506,-244.307,-244.108,\
> -243.914,-243.725,-243.536,-243.347,-243.158,-242.970,-242.790,-242.610,\
> and so on until the last array element.
>
> When I compile, it gives me the message ""not enough memory for long
> line".
>
> I suppose it is a line size limitation in the compiler. Am I right ?
> can it be changed ?
> Is there a way to split the initialization in smaller lines ? I think no.
> So what can I do ?
>
> Thx.
Is the table constant? (never modified?)
you could #ximport the data then copy it into a RAM array to initialize it.
If it is constants, #ximport it then declare a pointer to the data.
To use ximport, you would have to create a binary file with the values.
you could write PC program in C to generate the file.
.
--
------------------------------------------
Scott G. Henion, Consultant
Web site: http://SHDesigns.org
------------------------------------------