If you are using the Windows FTP client you should type 'bin' to select binary mode before downloading the files.
If you are using some other method you may find it easier to download the boot.fs.gz file and use winzip to uncompress into boot.fs.
The BIOS in PCs can only cope with a certain number of cylinders, heads, and sectors per disk (see table). (This includes BIOSes on SCSI cards).
Since many drives' real geometry cannot fit within these limitations a modern BIOS will 'translate' the geometry by picking fictitious values that multiply out to the same total size (or slightly less).
If a disk has a valid DOS MBR partition, (created by DOS, Windows, pfdisk, or similar) it will contain the "correct" BIOS geometry. NetBSD will use this as the BIOS geometry during sysinst. Unfortunately on an empty disk, or one without the MBR set up properly, NetBSD will get the BIOS geometry wrong. Ideally this information should be passed in from the boot program, but there is no certain method of determining the mapping of bios disk to netbsd disk, though it should be possible to improve on the current 0% hitrate.
One method of determining the "correct" translated geometry is to use 'pfdisk':
Parameter | Bits used | Max value |
---|---|---|
Cylinders | 10 | 1023 |
Heads | 8 | 255 |
Sectors per track | 6 | 63 |
(This limits drives to 8GBytes, at least from the BIOS' perspective).
To access another filesystem you have to set up a correct "disklabel" which tells the system where to find the data on the disk. With a correct "disklabel" you are able to "mount" it for use with NetBSD.
Setting up the disklabel
NetBSD disklabel disk geometry: cylinders: 16938 heads: 15 sectors/track: 63 (945 sectors/cylinder) BIOS disk geometry: cylinders: 1023 heads: 240 sectors/track: 63 (15120 sectors/cylinder) Partition table: 0: sysid 7 (OS/2 HPFS or NTFS or QNX2 or Advanced UNIX) start 63, size 3190257 (1557 MB), flag 0x80 beg: cylinder 0, head 1, sector 1 end: cylinder 210, head 239, sector 63 1: sysid 169 (NetBSD) start 3193155, size 4096575 (2000 MB), flag 0x0 beg: cylinder 211, head 45, sector 1 end: cylinder 482, head 29, sector 63 2: sysid 6 (Primary 'big' DOS, 16-bit FAT (> 32MB)) start 7302960, size 4596480 (2244 MB), flag 0x0 beg: cylinder 483, head 0, sector 1 end: cylinder 786, head 239, sector 63 3: sysid 15 (Ext. partition - LBA) start 11899440, size 4097520 (2000 MB), flag 0x0 beg: cylinder 787, head 0, sector 1 end: cylinder 1023, head 239, sector 63The example is from a disk with 4 partitions:
# disklabel wd0physical disk information
8 partitions: # size offset fstype [fsize bsize cpg] a: 410130 3193155 4.2BSD 1024 8192 16 # (Cyl. 3379 - 3812) b: 409185 3603285 swap # (Cyl. 3813 - 4245) c: 4096575 3193155 unused 0 0 # (Cyl. 3379 - 7713) d: 16006410 0 unused 0 0 # (Cyl. 0 - 16937) e: 3274425 4012470 4.2BSD 2048 16384 32 # (Cyl. 4246 - 7710)If your needed fstypes already are defined (i.e. MSDOS) you can skip down to partition mounting.
If you do this before the NetBSD installation is up and running, you may want to use the mbrlabel(8) utility to synthesize a temporary in-core disklabel describing all the fdisk partitions on a disk. You can then use that information for creating a new disklabel consisting of the BSD and other-OS partitions.
You need two things:
Add a new line at the bottom that for NTFS reads:
<PARTITION>: <SIZE> <OFFSET> NTFSA suitable entry for the above example would be (fsize, bsize and cpg are blank):
f: 3190257 63 NTFSAdd another line for MSDOS:
<PARTITION>: <SIZE> <OFFSET> MSDOSFrom the example the entry would be:
g: 4596480 7302960 MSDOSNotes on partitions: NetBSD/i386 currently only supports eight partitions per disk ('a' - 'h'), also the 'number of partitions' line directly above the partition table should be greater or equal to the number of partitions defined.
Every disk partition has a device entry in '/dev', the form of such an entry is '/dev/' followed by the diskname, followed by the partition letter. In the above example the device entry for the NTFS and MS-DOS partitions would be '/dev/wd0f' and '/dev/wd0g' respectively.
<DEVICE> <MOUNTPOINT> msdos rw <DEVICE> <MOUNTPOINT> ntfs rwAgain, in the above example this would be:
/dev/wd0g /msdos msdos rw /dev/wd0f /nt4 ntfs rw
If you have a disk or partition with more than 8GB or NetBSD should be installed at more than 2GB from the start of the disk, you might consider directly using the NetBSD bootmenu.
You should now be presented with the boot menu when the machine boots.
Another way, present since NetBSD 1.4 is to use the new NetBSD bootmenu:
See also the fdisk(8) manpage.
First, you need to create the bootblocks with the following command in single user mode
dd if=/dev/rXXYa of=nbsdY.bb count=1 bs=512where XX is the disk type (usually sd or wd), and Y is the disk number (usually 0).
Please note that if you don't have NetBSD on your first disk, you'll have to recompile the bootblock and install it, before you can run the above command. (For the recompiling you need some minor tweaking in /usr/src/sys/arch/i386/boot).
Note: We only provide the bootblocks nbsd0.bb(harddisk 0), nbsd1.bb(harddisk 1) and nbsd2.bb(harddisk 2) for old versions of NetBSD. You can't use them for NetBSD 1.4 or later.
Second, put the bootblocks on your Windows NT partition. Note: You can't write the bootblocks to the NT partition from NetBSD.
Finally, add the following to the NT boot menu. E.g. If NetBSD is installed on the second disk (wd1), you only need to add nbsd1.bb to the boot.ini file as follow.
[boot loader] default=c:\nbsd0.bb [operating systems] c:\nbsd0.bb="NetBSD (harddisk 0)" c:\nbsd1.bb="NetBSD (harddisk 1)" c:\nbsd2.bb="NetBSD (harddisk 2)"
The steps involved in this are
If your kernel does not have 'options INSECURE' enabled you will need to shutdown to single user mode:
Where {DISK} is wd0 for the first ATA (IDE) disk, sd0 for the first SCSI disk, etc.
X: sysid 165 (FreeBSD or 386BSD or old NetBSD)Where X will be 0, 1, 2, or most likely 3. Run 'fdisk -u -X {DISK}'
There are two images that you can download from the main NetBSD ftp site. The ADSL router image has enough on it to provide a basic ADSL router system. The NAT router image is designed to provide a simple NAT router.
The images can be put onto a floppy using the dd command. For example,
dd if=adslrouter.img of=/dev/rfd0a bs=18k
Although both one-floppy NetBSD systems contain all the files required for proper operation, some customization is required (e. g. to define IP addresses and ipf filter rules). Please refer to Ken'ichi Fukamachi's fdgw home page for details.
If you have this problem, you have three options:
Many 386 motherboards (and CPUs) were too primitive to care about CPU cache coherency, requiring the DLC to flush its cache any time a bus hold was asserted by any bus device (indicating that a bus-master transaction was potentially in progress). This obviously results in a speed cost compared to running with full cache coherency.
There are two kernel options that can be set to affect the Cyrix cache:
By leaving them both undefined, the chip will run with whatever the BIOS sets up. Most BIOSs will not set any of the cache options, which is safest, but will give the least performance boost. If you have a true 486DLC/486DRX motherboard, or a DLC/DRX-aware BIOS, you may automatically get some of the performance boost listed above.
It's worth some experimentation. The system should fail fairly quickly after boot if the motherboard cannot support the option. Then just build a kernel with less aggressive optimizations. (Of course, don't overwrite your non-optimized kernel -- you'll need it to reboot if your new kernel doesn't work!)
'#pms0 at pckbd? irq 12'remove the initial '#', then continue building the kernel.
When setting up Xfree86 you should select the 'wsmouse' Mouse Device and the 'wsmouse' protocol.
Option "Buttons" "5" Option "ZAxisMapping" "4 5"to the
Section "InputDevice" Identifier "Mouse1"section of the file.
Mozilla, where the source code is publically available, has been ported to run on NetBSD natively, and pre-built binary packages of Mozilla are available through the NetBSD packages collection (see www/mozilla).
The two easiest ways to get Netscape Navigator (stand-alone browser) or Netscape Communicator running on NetBSD/i386 are through BSDi binary emulation or Linux binary emulation. To run a BSDi version, you'll only need the kernel options for BSDi emulation in your kernel configuration file (the GENERIC kernel that gets installed with NetBSD has done this). Linux binary emulation under NetBSD/i386 relies on Linux libraries being under /emul/linux (see compat_linux(8)). The Linux versions are available through the NetBSD packages collection; if you install www/navigator or www/communicator, the dependencies of those packages will set up /emul/linux for you (or you can "make install" in emulators/suse_linux).
If you'd like to run binary-only plug-ins, such as Macromedia Flash, you'll need to have the Linux version of navigator / communicator.
Other (especially later) versions will probably work at least as well.
Some caveats before you start:
Above all, read the instructions that came with Quake II.
Tips and trouble shooting.
The best approach is to find (and support) a reseller who can provide a PC without Windows altogether.
|
|