I'm using the EZ-USB 2131 with the 8051 core. The C variable init routine in init.a51 stops part of my software working unless I add an extra eight bytes or more after the c_init terminator at the bottom of init.a51. I'm assuming that, for some reason, some of the C variables are not being initialised which in turn is causing my code to fail. The startup.a51 and init.a51 are the last to be linked in and the problem occurred after I introduced bank switching. Anyone else had this problem ??
Take a look to: http://www.keil.com/support/docs/2266.htm. Maybe it applies also to your case.
Thanks for that, but I don't think thats my problem. I don't include any run time libraries in my project list. I do, however, use a makefile instead of compiling/assembling via the uV2 IDE. Is it possible that the uV2 IDE does someting I'm not aware off ??
You can create a batch file to see what uVision generates. http://www.keil.com/support/docs/2594.htm There is notthing strange or hidden.