tag:blogger.com,1999:blog-62738186848314543062024-03-18T11:48:25.542+02:00cat **/*Akshaalhttp://www.blogger.com/profile/05677582369584740657noreply@blogger.comBlogger1125tag:blogger.com,1999:blog-6273818684831454306.post-8160793863540759232009-03-22T13:49:00.004+02:002009-03-22T14:41:01.532+02:00CeBootLin - Linux autoloader for WinCE on Loox 5XX (560/550)Here is the "bootloader" for wince to boot linux automatically on startup of PDA. It is not real bootloader because it has nothing to do with boot sectors, it is just a wince program which is able to boot linux as soon as possible. I have implemented it in this way because I didn't want to brick my PDA meddling with boot sectors or something. Also I wanted to have a way to skip loading of linux and let wince load itself. So here we are. It works. The code is based on haret (thanks guys!) but I cut off the parts I not used. Because the laoder uses hardware registers (GPIO/CPLD for leds and keybaord) of Fujitsu Siemens Loox N560/C550, it will not work for other PDAs. When CeBootLin is installed and PDA is turned on, wince begins boot process loading applications defined under the HKEY_LOCAL_MACHINE\init registery key. This way it loads CeBootLin. CeBootLin waits for 1 second, blinking with keyboard led. During the keyboard blinking, user can press any button to stop CeBootLin from loading Linux. If no button has been pressed during keyboard blinking, CeBootLin will search for \CeBootLin\default.txt and use this haret script to load Linux.<br /><br />So, in essence, you should complete the following steps in order to install CeBootLin:<br />1. <a href="http://downloads.akshaal.info/linux-n560-c550/CeBootLin-1.zip?attredirects=0">Download</a> CeBootLin.<ad2></ad2><br />2. Unpack the downloaded archive into the PDA root. The CeBootLin.exe must be reachable with the path \CeBootLin\CeBootLin.exe.<br />3. Place default.txt under the \CeBootLin directory. The default txt might looks like this (if the Andorid is what you are going to load with CeBootLin):<pre><br />set MTYPE 1454<br />set KERNEL "\CeBootLin\zImage"<br />set CMDLINE "root=179:3 mem=62M rootdelay=3 boot_delay=0 init=/init console=tty0 fbcon=rotate:0 androidboot.console=tty0 android.checkjni=1"<br />set RAMADDR 0xA0200000<br />bootlinux<br /></pre><br />4. Place zImage under the directory \CeBootLin\.<br /><a href="http://picasaweb.google.com/lh/photo/11wJSVlZKWbWAN3DhaJXSw?authkey=Gv1sRgCMTt-MKs5cTh6wE&feat=embedwebsite"><img src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjdZkRMSUr62jBL1ImUfJijSiLy1sAyMvuJweLyHjt__DZsgJGu3IqK5XugDSAFD9l-l4zwYkF-8SaGBN1MbhWh_3YJ23B4ZGo3nbAyIhIdP1IlmqViNyvkn3I-d-Vw9pPYk3_yyxivlpuZ/s400/CeBootEdit-1.png" /></a><br />5. Modify HKEY_LOCAL_MACHINE\init adding Launch82 ="CeBootLin.exe" and Depend82 = 14 00.<br /><a href="http://picasaweb.google.com/lh/photo/00DSupXz9qiOXs43h5f5cA?authkey=Gv1sRgCMTt-MKs5cTh6wE&feat=embedwebsite"><img src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj2MZwhAf19ZPkhV9j-m4gtQF_cMBrMeznzwFzLQii9YHqoEQLPJ2QIoPoWIgLtUmbsYoQGmC8xRLQRHzTwy9OFEujuzUHD8VnPJh0Q5ktDlcnN6x3wrJRYUCU8DU2qXOSmE9Yy5YE0LFZA/s400/CeBootEdit-3.png" /></a><br /><a href="http://picasaweb.google.com/lh/photo/0Rc2C1G2xiQKk5R0RmvaZg?authkey=Gv1sRgCMTt-MKs5cTh6wE&feat=embedwebsite"><img src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg3JQlgO-EaIaUIakTQIDY5USc81MrvtjKqNvlzHD-V4FGNw4h5HspvDoC7xL1k1TpHvhnt0kIXfuMvYQtXBIvRDFsJ7oEhjdG9WarTWBdSnylug8LHyxB2I9zGXyw2-HDaCYjm6M92cFyE/s400/CeBootEdit-4.png" /></a><br />6. Modify HKEY_LOCAL_MACHINE\Loader\SystemPath adding a new directory \CeBootLin\ to the multi-string list.<br /><a href="http://picasaweb.google.com/lh/photo/hbLfmcNrlr6RpUPvLX_-5A?authkey=Gv1sRgCMTt-MKs5cTh6wE&feat=embedwebsite"><img src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjpiM0VaWjfzE7Bi5tf1yqRESsPgvTNPywQqJID1Kra0bws22Ch58GrCupZo-lPHO4ygmXhyphenhyphenrjO6ABQTE0C08ywidwkle-WHwSpiDRAOFGGc8L2VSK-LJjVQ85oNe4Z2EHuMOHiCuhape5N/s400/CeBootEdit-2.png" /></a><br />7. Wait for 5 minutes (WinCE needs time to persist changes to registry).<br />8. Feel free to reboot your PDA<br /><br />To test that CeBootLin is able to boot linux at all, run CeBootLin.exe manually.<br /><br />It looks little bit complicated but later, setup program might be created to ship automatically bootable Andorid on Loox550. But before, Andorid must be polished.<br /><br /><a href="http://downloads.akshaal.info/linux-n560-c550/CeBootLin-1.tar.gz?attredirects=0">Here</a> is the source code of CeBootLinux. CeBootLinux is licensed with GNU GPL.<ad></ad>Akshaalhttp://www.blogger.com/profile/05677582369584740657noreply@blogger.com10