How do I get uvision3 to NOT put any code at the reset vector? i.e. completely leave 0-7FFh alone.
The reason is that I want to build only the application part of my program and exclude the bootloader segment that lives between 0-7FFh. The map file shows that indeed everything in the application is where it should be, except the compiler keeps trying to save me from myself and sticks an LJMP at 0x0000 - which I don't want.
How do I keep the C_STARTUP segment from being part of the build?
Keils .hex is not "in order" Damn.
as far as starting the app, you NEED startup.a51 and, by the method I described, you can place it anywhere you want and jump to it from whatever zero branches to.
I think I see what you mean. I will play with the CSEG AT 0 part of the startup file.
Thanks.
Gene; There is one other thing that clicks in the back of my pea sized brain. At one time Keil FORCED a LJMP to 0x0000 in their default code. The purpose was for the coders that forgot to have a forever while loop of some type in main. After running the code would go off to never never land. Keil added a forced LJMP just in case the forever loop exited. It did not matter if you had a proper loop or not, the code was still added. That is probably the LJMP you are seeing in your map. Bradford
.. are made by i.. eh individuals that did not read the spec for Intel hex before they made their crap.
The result of that is, of course, that utilities have been made that will make a .hex file sequential. Some have been mentioned in this forum.
Erik
PS in your scheme there should be no requirement for a sequential .hex file.