VAIO 505 and FreeBSD

So... now you have that cool, cool, and utterly cool (not to mention slick) vaio.. and you want to get an OS on it that actually works... But still; you are not quite ready to take the plunge and zap the evil empire completely.

The instructions below worked for me; (Disclaimer; it might not work for you... but if it breaks you get to keep all the pieces).

Step 1. Making space
The issue is that my vaio did not have a CDRom, but the OEM windows version is on cdrom only. So repartitioning the disk and reformating each partition was not an option. With FIPS you can dynamically resize a partition without nuking it.

Defragment your disk in Win 95. ('my computer' -> right click over the icon -> properties -> tools -> defrag...)

Get a very fresh version of 'fips.exe', which supports FAT32 to repartition your disk into two pieces. I used

ftp://ftp.freebsd.org/pub/FreeBSD/tools/srcs/fips

Read the docs ! And follow all instructions, in particular about how to back out.

Then split the disk into two pieces; Take into account that from the second slice you will lose some 40 Mbyte in the next step for the hibernate section.

Also making them differently sized makes it easier later to recognize which partition is which when it comes to installing freebsd. Write down their sizes.

After the split, use phdisk.exe, which comes with the OEM package of SONY to recreate the hybernate partition.

cd c:\dd
phdisk /delete /file /noreboot
phdisk /create /partition

This creates a suspend partition; it seems to appear as a 0xA0 section at the _end_ of the last partition on the disk.

Do not worry about the long status count during the 'reformatting' of phdisk; it went up to about a Gigabyte rather than the annouced 35Mb for me.... but no ill effects. (Update; this is a known bug; the count is off by a factor.)

Use fdisk.exe and check that you have three partitions;

Step 2.
Get the PAO boot flop (http://www.jp.freebsd.org/PAO) for a recent version (2.2.5 at the time of writing this). Update 3.2/PAO stable works fine

This will work just fine. Make sure you do _not_ delete the (RAM-size + 3) Mbyte =(35 for me) sized parition at the end of the disk; this is the hypernate parition This implies that the FreeBSD partition will be sandwitched between the first (W95) and last (hypernate) partition.

If you gave the paritions different size; this will reassure you at this moment as to which is which.

Just install whatever; make sure you put the kernel sources there as you will need them later to get the PCMCIA support patched in (i.e. the actual PAO patch). I used a network install as I had no CDrom. (Update; with 3.2/PAO things are a lot simpler; just make the two floppies as directed and that is all.)

Reboot; go back into /stand/sysinstall and do the PC card stuff (PAO kernel patch and all that). Note that during boot, 'booteasy' will show three partitions under F1,F2 and F3. F1 and F3 are both ?? as the 2.2.5 version of boot easy does not know about Fat32 and hybernate partitions SysIDs.

But pressing F1 and F2 works. The 'F3' could be fixed by hacking the boot easy sources.

Step 3. X11
The good news is; XFree86 3.3.1 and 3.3.2 will work; the VGA16 server works just fine. (Though you'll have to use the Fn+F to reposition the screen as it will appear to far to the right at first.) Newer releases of XFree86 support the neomagic chipset directly. But you have to use Fn+F to reposition the screen.

The even better news is that xig (http://www.xig.com) has a special accelerated server for the NeoMagic chipset, and this one is truly awesome ! and well worth the 100$ asked for.

I got mine through an italian supplier; which, after giving him my credit card details, send me the copy within 3 hours by email, with the real box to follow by snail-mail. Talk about instant gratification there !

(Update; the more recent Xfree's, from 3.2 stable, support the neomagic out of the box, and get the screen right. But IMHO the xig is still way faster/cooler.)

Step 4. Goodies
When making a new kernel; you might want to do a reboot; and use F2 to enter the bios. I just copied the values shown for IRQ and Base/IO for the various ports (IRda, Modem, COMs, Printer, soundblaster card) and put them into the sio0,1,2 and lpt0 lines.

Works like a dream. The build in modem and PPP seem quite reliable; even on the trouble prone phone system whe have over here.

One word of warning though; when you compile in the IRda port, do not be surprized to see warnings in your log when not in use; at least in my environment there seems to be plenty of noise picked up by the sensor. (Printers, Psion PDA's, etc) It shows up as buffer overruns.

PCMCIA toys, such as a Adaptec SlimSCSI and various Flash cards work fine. As does a LinkSys and 3Com ethernet card.

So I presume the Cardbus/PCMCIA/PC-Card compatibility issues are solved.

FAT32 Issues; Mark Tinguely <tinguely@plains.NoDak.edu> just informs me that Hideki Yamamoto (hyama99@aol.com) has made a patch for 2.2.5 whereas for current you can use msdosfs-netbsd.diff.gz as a patch. This allows you to mount the fips repartition-ed windows 95 disk directly.

From 3.x you do no longer need this.

Step 5.
Use it :-)
dirkx@webweaving.org
Credits
This is the results of many a question asked at freebsd-{hackers, hardware, questions and mobile} and the replies from various people on those lists as well as those at http://www.fumi.org and in particular masa@fumi.org who provided the missing clue; a hint about Fn+F which was to hard to guess from the Japanese manual.

As an aside, the internet is speedy; I ordered the laptop from http://www.jpd.com. It arrived (in italy) within a week. And it just took two evenings and an afternoon to get all of the above done with several steps of support, questions asked and answered from the friendly BSD folks. Now try that; I still have an M$ question unanswered after three months... and that is with a real support contract. (update: 13 months later; trouble ticked is still open (windows suspends the hard-disk and then looses a write on re-wakeup). (update: 17 months later; the ticked was closed with a standard message indicating that the bug possibly was fixed in W98. The reasoning was that they fixed 1200 other bugs, so yours was propably one. I've not tried this. As powerpoint works fine when you are carefull with suspend.).