2006-07-13 03:01 AM
2011-05-17 02:50 AM
I am using the upsd3234. I have written a boot loader that sets bit 8 (swap) in the page register. When bit 8 is set my second program is loaded into boot space. I am sure that the second program resets the page register to 0 and bit 8. This causes my boot loader to start again. I did a test with a simple ASM program as the second program and this functions correct so my conclusion is that Keil C51 resets the page register.
Paging is not enabled in uVison because once loaded into boot space it does not require any further paging at this stage. Any advice ?2011-05-17 02:50 AM
Is there no evidence of changing the page register in the listfiles (especially startuXX.lst)?
Alternatively, doesnt' the external ram definition overlap with the PSD register space, so it gets cleared during the startup clear-everything routine? Jan Waclawek2011-05-17 02:50 AM
Fixed the problem. :) C51 did not change or reset the page but an error in the code when swapping page caused the page register to change. (I did not expect this because the test with a small ASM program was found working correctly.)