=============================================================================== RESTORING WINDOWS CE ON A netBook PRO For a machine whose internal NAND flash has been erased or repartitioned =============================================================================== If your netBook Pro still boots Windows CE, YOU DO NOT NEED THIS. Running PsionLX from a CF card does not touch the internal flash. Close this file. This is here because it was needed. During this project a NAND partitioning script written for the 64 MB LX prototype was run on a standard 32 MB machine. It erased Windows CE. What follows is the procedure that got it back, written down while it was fresh. ------------------------------------------------------------------------------- THE THING THAT GOES WRONG, AND WHY ------------------------------------------------------------------------------- The netBook Pro's internal NAND is 32 MB: 0x800 blocks of 0x4000 bytes. The document that circulates for booting Linux on this machine (netbook-booting.txt) describes the LX *prototype*, which had 64 MB, and gives partition values to match. The most commonly copied line is: nand partition 7e8 On a 64 MB machine that leaves room for Windows CE. On a standard 32 MB machine it claims essentially the whole chip, and CE has nowhere to go. The symptom is distinctive and misleading: the machine reaches the CE splash screen and then dies. It looks like a bad CE image. It is not -- the partition is simply too small. The correct value for a 32 MB machine is: nand partition 540 Do not take that on trust either. Dump your own machine's NAND geometry first and look at it. That is what stepA does. ------------------------------------------------------------------------------- WHAT YOU NEED ------------------------------------------------------------------------------- * A CompactFlash card (small is fine -- 32 MB upwards), FAT16 formatted. * A serial cable and a terminal emulator, to reach the BooSt prompt. 115200 8N1, no flow control. * nbpce-404-int-20051129.zip from this folder: Psion's official -404 International restore set, dated 29 November 2005. nbkproce.img Windows CE image 1000932-404 k295q nbkprobt.img BooSt bootloader 1000981-404 k295q nbkpropc.img PCon 1000985-404 k295q * The BooSt scripts in boost-scripts/ in this folder. The -404 set is the International build. Check your machine's existing version before assuming it is right for you; the read-me files inside the zip give the engineering references. ------------------------------------------------------------------------------- REACHING BooSt ------------------------------------------------------------------------------- Connect serial, open the terminal, then reset the machine. You get the netBook Pro boot menu. BooSt runs a script called nbkpro.img from the root of the CF card automatically -- that is how each step below is driven. You do not type the commands; you put the right nbkpro.img on the card and let BooSt run it. If your terminal shows the boot menu but you cannot type "load", that is expected: you are at the menu, not a shell. Press F to run the card's script. ------------------------------------------------------------------------------- STEP A -- LOOK BEFORE YOU TOUCH ANYTHING ------------------------------------------------------------------------------- Copy boost-scripts/stepA-dump/nbkpro.img to the root of the CF card. It contains one command: nand Boot it. BooSt prints the NAND geometry and current partitioning. Write that down. This tells you the real size of YOUR chip rather than the size in somebody's forum post. A standard machine reports 0x800 blocks. If yours reports 0x1000 you have a 64 MB machine and the 7e8 value is the correct one for you. ------------------------------------------------------------------------------- STEP B -- REPARTITION ------------------------------------------------------------------------------- Copy boost-scripts/stepB-repartition-540/nbkpro.img to the card. nand partition 540 nand Boot it. It repartitions, then prints the result so you can confirm it took. The correct 540 value is used here; the wrong 7e8 script is deliberately NOT included in this release. If BooSt answers "NAND error, invalid block(s) specified!", the value is out of range for your chip. Go back to step A and read the geometry again. ------------------------------------------------------------------------------- STEP 2 -- WRITE BooSt, WINDOWS CE AND PCon ------------------------------------------------------------------------------- Unzip nbpce-404-int-20051129.zip and copy these to the root of the card, together with the upgrade script: nbkprobt.img BooSt nbkproce.img Windows CE nbkpropc.img PCon nbkpro.img from boost-scripts/step2-upgrade/ The script is Psion's own upgrade sequence: load nBkProBt.img run load nBkProCE.img nand -w ecc load nBkProPC.img load /nand0-0/nBkProOS.img run BooSt is written first, deliberately -- Psion's read-me is explicit that on units earlier than -310 BooSt MUST be upgraded first, and the script guarantees that ordering as long as all the files are on the card. Boot it and let it finish. It takes a while and writes several images in succession. DO NOT INTERRUPT IT AND DO NOT LET THE BATTERY DIE. PCon is the step that can leave the machine genuinely unrecoverable; make sure the machine is on mains power throughout. When it completes, Windows CE boots. ------------------------------------------------------------------------------- AFTERWARDS ------------------------------------------------------------------------------- Take the CF card out, or at least delete nbkpro.img from it. Otherwise BooSt runs the script again on every boot. From Psion's own read-me, all of which applies: * Every application on the unit must be reinstalled. * All settings must be reconfigured. * The main battery needs recalibration. * Flash Disk contents survive an upgrade, but back them up anyway. * ActiveSync partnerships are removed; delete them on the desktop too. * Total Recall profiles made by -402 or earlier will not restore. ------------------------------------------------------------------------------- boost-scripts/psionlx-autoboot ------------------------------------------------------------------------------- Not part of the restore. It contains: load nBkProOS.img run which is simply "boot the Linux kernel from this card". It is included for reference, because it shows what a safe netBook Pro boot script looks like: one line, loading the OS image, touching nothing else. Compare it with the LX prototype script that caused all this, preserved in 3-PSION-SOURCES/original-images/ under a deliberately unmissable name. Both are the same kind of file. Only one of them erases your machine.