I have a large structure I wish to locate in code space. The problem appears to be the linker intreprets the accesses to this structure as a subroutine call. I get the error "Too many recursive calls to segment...". The structure works fine in XDATA. It also worked fine in code space until there were enough routines accessing the structure. Anyone have a clue?
Ah! The old read the manual routine. This is great; however, I have about 200 references to my structure, from 60 or so subroutines. This does not seem like a very user friendly solution. This may be what I have to do, .... doesn't mean I have to like it. I have never run into this problem before using the Keil compiler. I do embedded systems "stuff" (obviously) and it is very common to place structures in the code space. Thanks for the pointer.
Is the error message this one?
FATAL ERROR 232: APPLICATION CONTAINS TOO MANY RECURSIONS.
That the one. I will take a look as soon as I can figure our where the macro assembler book is hidden. Short term memory problems as well. Thanks a bunch to all who have responded. Perhaps someday I can reciprocate.
You may use OVERLAY (segname ! *) to exclude the segment from overlay analysis. That's all you'll need to do. The segment name will be something like ?CO?filename. Jon
See on-line document here: http://www.keil.com/support/man/docs/lx51/lx51_recursions.htm
Thanks again. I found my book and tried bumping the recursions to 200 and it works. My cup runneth over with information. (I have mail) Here comes some more!
Wow, I love this country. I ask for a little help and all you generous, kind people, offer up an abundance of information. Thanks to all.
"Wow, I love this country." Which country? So far, you have answers from at least two Continents! :-)
"Which country?" America, of course. The third world doesn't have internet. Besides, all the replies were in English, they must be from Americans. The only other people who can speak it are the Brits, but see the note above about the third world. Stefan
"The only other people who can speak it are the Brits" Yes, but the only people who can spell it are the Brits! ;-)
Yes, but the only people who can spell it are the Brits appreciate your humour. Erik
Pardon my faux pas. You are correct, i assumed all the responses were from the USA. My (tongue in cheek) quote is from a Russian commedian. It was from a commercial he did many years ago. Yakov Smirnoff http://www.yakov.com/default.html Fred