From: Bernhard H. <Ber...@be...> - 2001-08-23 19:51:52
|
I switched to sdcc-user. > I can think of an initialized part of data/xdata that is memcpy-ed from cseg > during startup... >This proposal of using code segment to store initialized data and then >move it to external memory has been mentioned before in a similar but >dissimilar context by others. It seems strange to me to have to have >the data in twice and moreover have to suffer the problem of copying it >as an initialization! Just to make it clear: this is not a mcs51-specific or embedded-controller-specific problem. Initialisation of data, this means copying data from one memory segment to another, is required by C and is an absolute normal thing. You will find it everywhere, where C is used. >Again could be my ignorance of E^2 / ROM / RAM devices but it seems to >me that there needs to be a way of saying that different parts of the >external memory are ROM and different parts E^2, etc. The ihx file then >contains all the right information to do the blowing of the system. This >is particularly true when dealing with flash silicon. You probably have to split up the IHX-file into two parts. One for the ROM and one for the E^2. Or your programer is clever enough to exclude a memory adress range from programming. Bernhard |