메뉴 바로가기 본문 바로가기

기술자료

WinCE6.0에서 BiosLoader 수정하기
kdh5001 2008-01-08 오후 4:19:04 조회 11844
부트 이미지인 NK.Bin을 올리기 위해서 부트로더가 필요한데, X86에서는 BiosLoader를 사용합니다.
바로 Bldr 이 파일이 핵심입니다. 이것을 수정하고 빌드하여 완성하는 과정에 대해서 알아보겠습니다.
이 강좌는 WinCE6.0 기반으로 되어 있지만, BiosLoader는 하위 버전에서도 사용이 가능합니다.

간단한 과정을 먼저 살펴보겠습니다.

1. BiosLoader 소스 수정
2. Build -> bldr.bin 생성
3. viewbin을 사용하여 시작 주소 체크
4. cvrtbin을 사용하여 bldr.bin을 bldr.nb0로 변경
5. debug 후 bldr.nb0를 bldr로 이름 변경
6. Floppy Disk에 복사 또는 Disk 이미지 생성

위와 같은 단계를 거쳐서 변경 할 수 있습니다.
물론 Build 과정에서 bldr 파일이 생성되기는 하지만, 안되는 경우가 있기에 따로 강좌를 만들어 봤습니다. 
본래 bldr이 생성되는 폴더는 아래와 같습니다.
 C:\WINCE600\PLATFORM\CEPC\SRC\BOOTLOADER\BIOSLOADER\LOADER
cepc에서는 생성이 되지만 x86용 BSP를 따로 사용하시는 분들에게는 생성이 되지 않을 수 있습니다.

이제부터 자세하게 살펴 보도록 하겠습니다.

1. 소스 수정.
VS2005를 실행하여 하나의 프로젝트를 만든다. 여기에서 프로젝트는 중요하지 않으므로 CEPC로 하나 만듭니다.
C:\WINCE600\PLATFORM\CEPC\SRC\BOOTLOADER\BIOSLOADER\LOADER 의 소스를 수정합니다.


2. 소스 수정을 다 했다면 위의 Loader를 우측버튼을 눌러 Build를 선택합니다.
여기서 주의해야 할 점은 solution Build를 하지 않았다면 Fail이 날 수 있습니다.
또한 Debug 모드가 아닌 Release모드로 하십시오.


3. C:\WinCE600\PLATFORM\CEPC\target\x86\retail 에서 BLDR.nb0 파일이 있는지 확인합니다.
만약 없다면 아래와 같이 변환을 하면 되고, 있다면 5번으로 가시면 됩니다.


nb0로 변환하기 위해서는 viewbin을 통해서 주소값을 확인합니다.
viewbin은 C:\wINCE600\PUBLIC\COMMON\OAK\BIN\I386에 포함되어 있습니다.
사용법은 viewbin [경로&파일명] 입니다.


4. cvrtbin을 이용하여 bldr.bin파일을 변환합니다.
cvrtbin의 사용법은 cvrtbin [option] <FileName> 입니다.

cvrtbin -r -a 00001000 -l 00005000 -w 32

r
옵션은 BIN파일을 ROM으로 변환해 줍니다.
a 옵션은 시작주소를 나타냅니다. viewbin에서 보여줬던 Image Start 값을 입력하시면 됩니다.
l 옵션은 length을 값을 나타냅니다.
length 값은 C:\WINCE600\PLATFORM\CEPC\SRC\BOOTLOADER\BIOSLOADER\LOADER\boot.bib 파일에서 BLDR의 사이즈를 입력하시면 됩니다.

w 옵션은 width값을 나타냅니다. boot.bib파일에 보면 width = 32 라고 되어 있는것을 보실 수 있습니다.


완료가 되면 bldr.nb0가 생성 될 것입니다.

5. 이제 bldr.nb0bldr로 이름을 변경합니다.
그리고  debug를 이용하여 핵사 값을 변경해주면 됩니다.


6. bldr이 완성되었습니다.
이제 이것을 Floppy Disk에 덮어쓰기 하신 후 mkdisk를 하시면 됩니다.
더 간단한 방법은 플래시나 하드디스크에 bldr파일을 기존 bldr에 덮어쓰기 하셔도 됩니다.

다음 강좌에는 BIOSLOADER를 이용하여 부팅하는 방법에 대해서 소개하도록 하겠습니다.


답변 목록

회원가입