Hi all: I am using uvision C51 evaluation software. I wrote a simple program to use AT89C2051 as the target and try out the software. However, the output hex file shows that the program address starts at 0x0800. The AT89c2051 has an internal Flash of 2k memory and the address is from 0x0000 to 0x07ff. In the target option I select "use on-chip ROM(0X0-0X7FF)" and the linker gave me ""Address space overflow" error. If I do not make that selection, then there is no error but the code starts at 0X800 which is obviously wrong. Can anyone help me? Is there anything to do with the startup file "startup.a51"? Or is there anything in the Option for target that I need to set? Thanks for any advice. Andy