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

Article translations Article translations
Article ID: 248992 - View products that this article applies to.
This article was previously published under Q248992
Expand all | Collapse all

SUMMARY

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"

LDEFINES=-subsystem:native /DEBUG /DEBUGTYPE:CV /FIXED:NO

!ELSE

LDEFINES=-subsystem:native /DEBUG /DEBUGTYPE:BOTH,FIXUP

!ENDIF
				

MORE INFORMATION

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.

Properties

Article ID: 248992 - Last Review: December 26, 2003 - Revision: 2.1
APPLIES TO
  • Microsoft Windows CE Platform Builder 2.11
  • Microsoft Windows CE Platform Builder 2.12
Keywords: 
kbinfo KB248992
Retired KB Content Disclaimer
This article was written about products for which Microsoft no longer offers support. Therefore, this article is offered "as is" and will no longer be updated.

Give Feedback

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com