Linux loader for Pocket PC How to compile: 1. Two asm files from asm directory has to be compiled with armasm.exe. This will create two obj files, that should be copied into lib directory(and will be included in the project) 2. Compile & link project The c++ source file also contains some routines to read physical memory and to translate virtual mem to phys. However, the translation is limited and not fully implemented. The booting of Linux begins IMMEDIATELLY after program is started. zImage filename is "image2" (without "") initrd filename is "initrd" If it for some reason freezes try removing pieces of code that write into Frame buffer on Axim (this fb is beyond limits of physical memory and should not cause problems on IPAQ. adr=0x14042000) Limitations: There are some limitations of file sizes. If a screen with Hello World appears, there was a problem in booting. Check filenames. To make it work for SA11x0 you will have to change these lines in asm.asm: ldr r5, =0xa0000100 ldr r7, =0xa0400000 with proper adresses and limits of memory( just change the "a" with "8" I think) Also KERNELCOPY and INITRD macros have to be changed. author: Demo; cooldemo@inmail.sk ================================================================================ Amendment by Pigeon: linexec has been changed a lot and therefore some stuff in the above readme might not be true anymore. But anyway, here is how you use linexec: To use linexec, you need 4 files. linexec config file: params Create a file called "params", and put it under either "\My Documents\", or "\CF Card\". If you really care where and what this file is called, edit tester1.cpp and look for load_boot() call. This params file specifies three lines of config for: kernel image initrd image kernel args For example, my params looks like this: \My Documents\zimage \My Documents\initrd.gz init=/linuxrc keepinitrd root=/dev/rd/0 (This is what I actually have in my params file, but remember this might not work for your kernel/device) (Also a note for the params file, seems that the code is only happy if the file is in unix format, i.e. newline as \r, but not dos format) And yes, if you see "Hello World", you've got something wrong. Pigeon.