Microsoft KB Archive/248992

From BetaArchive Wiki
Knowledge Base

INFO: Migration of Boot Loader from Windows CE 2.11 to 2.12

Article ID: 248992

Article Last Modified on 12/26/2003


  • Microsoft Windows CE Platform Builder 2.11
  • Microsoft Windows CE Platform Builder 2.12

This article was previously published under Q248992


When migrating your boot loader from Windows CE 2.11 to Windows CE 2.12, you must ensure that the following change is made:

Before compiling, make a code change to the SOURCES file for Nk.exe and the boot loader as shown below to reflect the LDEFINE flags as appropriate:

!IF "$(_WINCEOSVER)"=="300" || "$(_WINCEOSVER)"=="212"






ROMIMAGE gives unpredictable results if EXEBASE is not specified for Nk.exe. The EXEBASE value is also ignored if KERNELFIXUPS=on (default case). On x86 systems, the definition of EXEBASE is very significant because in the Init.asm file, EXEBASE is used by OFFSET32 in the following line:

mov ebx, OFFSET32 PagingEnabled

However, OFFSET32 is resolved at link time and EXEBASE is used to determine the 32-bit number. If EXEBASE is not present as a definite value when ROMIMAGE is executed, the system will malfunction. Updating EXEBASE works around this issue.

Keywords: kbinfo KB248992