I have an application with the AT89C51CC03 using LX51 linker in an banking mode (2 banks of 64K size). I want to extract from a generated file the application code (to be downloaded in the ATMEL controller) and the constant datas (to be programmed in the external flash memory). LX51 linker classes is: XDATA (X:0x0-X:0x7FF), HDATA (X:0x0-X:0x7FF), CODE (C:0x0-C:0xFFFF), ECODE (C:0x0-C:0xFFFF),HCONST (B1:0x0000-B1:0xFFFF) At the end of the link, i have the following information: code size=33934 const size=56744 The generated hex file (in mode H386) doesn't show adresses above 0x10000 while the complete applcation size is 33934+56744=90678=0x16236. Is there a manner to extract from the generated file the code area end the banked area
Check if the HEX file is correctly generated when you are using the example: C:\Keil\c51\Examples\FarMemory\1MB Constants on Classic 8051 You should see records with the type '04' such as: :020000040000FA :020000040001F9 More information: http://www.keil.com/support/docs/1584.htm