Subject: CF and my z50. Rants, Raves, tips, and tricks.
To: None <port-hpcmips@netbsd.org>
From: Todd Whitesel <toddpw@best.com>
List: port-hpcmips
Date: 04/20/2000 05:08:04
Dunno what other experiences people have had with buy.com, but I just had
a great one. The 192 MB SanDisk CF seems to finally be in mass production,
as the glossy catalogs are touting it as NEW! and all that.

Anyway, I saw buy.com offering it for well under $400, so I ordered one
this weekend.  With tax & shipping the total was just under $400, and it
is in my z50 already, barely four days after I placed the order.

First impression: compact flash is SLOW. Like 200K/second, if you're lucky.
Usually it's more like 180K/second. It actually slows down FTP because my
ne0 card can easily do 550K/second.

BUT! It's silent and doesn't suck power, which is half of why I bought it.
Previously I'd been using an ancient 160 MB Type III drive which has some
bad blocks; this drive was just quiet enough for me to use it in meetings,
but total silence is sooo much better. Mmm, solid state.

What's the other half of why I bought it, you ask? Well... 192 MB CF happens
to be the magic size at which it becomes possible to fit a _complete_ netbsd
distribution on CF. You can even keep an emergency install kernel on the DOS
partition and have space left over, if you're clever.

This assumes a 48 meg z50, the 20000315 snapshot, and a 192 MB CF (which is
actually 183.5 MB in real kilobytes and not disk drive vendor 1000 speak).

Step 1. boot install kernel and use sysinst to partition the CF (use sectors).
    a. make DOS partition 2.5 megs minus MBR sectors. (offset 32, size 5088)
    b. make DOS partition "FAT < 32MB" and mark it active.
    c. give NetBSD the rest of the CF: 181 MB. (offset 5120, size 370688)
    d. give wd0a all but the last megabyte. (size 368640)
    e. give wd0b just the last megabyte. (size 2048)
    f. change wd0a Bsize/Fsize to 4096/512.
    g. set up wd0h to be offset 32, size 5088, type msdos, mount point /c.

Step 2. let sysinst set up the partitions, and pick 'full installation',
	but then for install media choose 'none' and exit from sysinst.

Step 3. wipe DOS partition so WinCE does not see old FAT data and try to
	use the entire CF (!):	dd if=/dev/zero of=/dev/wd0h bs=1m count=1

Step 4. reformat wd0a to get more space back:	newfs -i 12288 -m 1 /dev/rwd0a

Step 5. start setting up wd0a:
    a. mount /dev/wd0a /mnt
    b. cd /mnt
    c. mkdir /c /kern /proc
    d. sets="kern etc base comp games man misc text xbase xcomp xcontrib xfont"
    e. for s in $sets; do ftp -o - URL/$s.tgz | tar xzBpf - ; done
    f. cd dev
    g. sh MAKEDEV all
    h. df -i .
	Note how there are 17 megs free and nearly 5000 free inodes.

Step 6. finish manual setup in /etc:
    a. cd /mnt/etc
    b. vi rc.conf	# change rc_configured=NO to YES
    c. cp fstab.wd fstab
    d. vi fstab		# add "/dev/wd0h /c msdos rw,noauto 0 0"
    e. vi ttys		# change console terminal type to vt220
    f. do any other setup you like to do before your first boot.

Step 7. reboot to WinCE and let it format the DOS partition.
	it will contain "approximately 2 Mb of space".

Step 8. prepare netbsd.zip and punzip.exe on some other unix machine.
    a. download netbsd.gz from 20000315 snapshot and gunzip.
    b. zip -9 netbsd.zip netbsd		# pkgsrc/archivers/zip
    c. download "pocket unzip" from http://stevemiller.net/punzip.html

Step 9. download pbsdboot.exe to CF DOS partition and boot /netbsd, then:
    a. use ftp to get netbsd.zip and punzip.exe onto /c.
	There should a be a few hundred K left on /c for other WinCE files.
    b. to boot install kernel for emergencies, use punzip to extract netbsd
	to My Documents folder, and boot "\My Documents\netbsd".

Enjoy.  Finally, something I can take lots of places and it still feels
like a real laptop, thanks to NetBSD!

Todd Whitesel
toddpw @ best.com