Вести с полей, если кому интересно.
С реестром пока есть затык. В девайсе Ram-based registry, что значит, что он не сохраняется в файл и теряется при каждом power-off. Чтоб переконфигурить на Hive-based type (т.е. сохраняемый в файл), и эта настройка не терялась при power-off, надо изменить некоторые файлы в папке windows. Но беда в том, что эта папка также расположена в памяти и при включении восстанавливается в первозданном виде из образа системы. Извлекать образ из устройства, чтоб изменить его и шить обратно, у меня пока пороху не хватает
Пока вижу одну корявую лазейку - переписывать NandFlachPartition/loader.exe и в нем переключать на hive-based registry и тут же делать рестарт без очистки памяти (это удалось при помощи утилиты rmsg.exe снятой с другого КПК). Т.е. процесс загрузки несколько удлинится... буду пробовать.
С запуском многих приложений дела понемногу проясняются. Поскольку на устройстве только ядро WinCE, то не хватает ряда DLL для их запуска. Их надо подбирать к приложениям индивидуально (помогает утилита DependencyWalker) и располагать в корневых папках приложений. DLL первой необходимости - aygshell.dll, в инете бродит масса вариантов ее (я уже нашел 18 штук).
Экран повернуть удалось - это производится изменением ключа регистри "HKLM\System\GDI\Rotation\Angle" и рестартом без выключения (пока применить изменения этой настройки без рестарта не нашел как, но это однозначно возможно, поскольку есть утилиты которые это делают).
Кстати, если кого раздражает, что INavi постоянно выставляет время на девайсе без учета часового пояса (уменя по кр. мере все время двигает на 3 часа назад), то добавление строчки
RegWriteDWord ("HKCU", "Software\iNavi\", "FixupClock", "00000000")
перед
Run ("\Storage Card\AutoGuidance\i-Navi.exe")
в AutoGuidance.mscr отключит эту функцию.