Minix on Bochs 2.1 on Linux

modified: 06 Feb 2004

Rob van der Leek <robvanderleek@yahoo.com> posted to the comp.os.minix newsgroup the following notes on using Minix on Bochs 2.1 on a Linux host:
I. Bochs installation instructions for Linux

1. 	Get the latest source distribution from the Bochs website 
	At the time of writing this was version 2.1.

2.	Unpack the source distribution. Configure the package and build 

	$ tar xvfz bochs-2.1.tar.gz
	$ cd bochs-2.1
	$ ./configure
	$ make

3.	Hopefully everything went fine. The next step is to install 

	$ sudo make install

II. Installing Minix under Bochs

1.	Create a new directory for the Minix installation:

	$ mkdir minix
	$ cd minix

2.	Create a new hard disk file for Minix, for which you must use 
	the 'bximage' program (included with Bochs). The listing below 
	shows my input for bximage where I create an 80 Mb hard disk 

	$ bximage
	Please type hd or fd. [hd] <enter>
	Please type flat, sparse or growing. [flat] <enter>
	Enter the hard disk size in megabytes, between 1 and 32255
	[10] 80
	What should I name the image?
	[c.img] minix.img

	You'll need the cyl, heads and sectors per track numbers in step 
	4 so be sure to write them down somewhere (for an 80 Mb hard 
	disk they are 162, 16 and 63).

3.	Copy the VGA and BIOS ROM images that are included with the 
	Bochs distribution to the current directory:

	$ cp /usr/local/share/bochs/BIOS-bochs-latest .
	$ cp /usr/local/share/bochs/VGABIOS-elpin-2.40 .

4.	Create a new '.bochsrc' file in the current directory, it should 
	look like this:

	romimage: file=BIOS-bochs-latest, address=0xf0000
	megs: 32
	vgaromimage: VGABIOS-elpin-2.40
	floppya: 1_44=floppy.img, status=inserted
	ata0-master: type=disk, path=minix.img, cylinders=162, heads=16, spt=63
	boot: floppy
	log: out.bochs
	mouse: enabled=0
	ips: 15000000

	As you can see I used the cylinder, head and sector information 
	from step 2 here.

5.	Next you'll need the installation disk images for Minix.  I used 
	Minix version 2.0.3 and copied the disk images (ROOT.MNX, 
	USR.MNX, USR.TAZ, SYS.TAZ, CMD.TAZ, NET.TAZ) to the current 

	Create a symbolic link called 'floppy.img' to the Minix Root disk

	$ ln -s ROOT.MNX floppy.img

	Now you can boot minix (by starting Bochs with the 'bochs' command).

	When Minix asks for the next disk (the USR disk), disable the 
	floppy in Bochs (click on the floppy icon, there should appear 
	a cross through it). Unlink ROOT.MNX and create a new link to 
	the USR disk image. Finally, make the disk active again in Bochs 
	and continue the installation process. Step-wise this means:

	5a.	(Click on the floppy icon in Bochs)
	5b.	$ rm -f floppy.img
	5c.	$ ln -s USR.MNX floppy.img
	5d.	(Click again on the floppy icon in Bochs)

	Now you can finish the installation process for Minix as described
	in other documents.

	Note: Remember to change the boot option in '.bochsrc' to disk 
	when you want to boot from the hard disk.

III. Notes on installing the optional Minix packages

The Minix software packages are sometimes larger than the capacity of a 
1.4 Mb disk. For example the USR.TAZ package is 3.9 Mb. To install this 
package I used the following procedure:

1. 	Remove 'floppy.img' (if present).

	$ rm -f floppy.img

2. 	Disable the floppy disk in Bochs, and create the first floppy 
	$ dd if=USR.TAZ of=floppy.img count=1440 bs=1024 skip=0

3. 	Enable the floppy disk in Bochs, and start the installation.
	When it's time to change disks disable the floppy in 
	Bochs, remove the old image and create a new one skipping the 
	amount of blocks that make up the number of disks you already 
	read from the package. 
	For example, to read the second 'disk' from the image, skip 
	1440 blocks:

	$ rm -f floppy.img
	$ dd if=USR.TAZ of=floppy.img count=1440 bs=1024 skip=1440
	Enable the floppy in Bochs ans continue as usual. Increase the 
	skip value to extract next disk images from the archive, e.g.  
	use 2880 for the third disk, 4320 for the fourth disk, and so 

[From comp.os.minix 2004-02-05. Original newsgroup headers follow]

Path: news.umass.edu!news-out.cwix.com!newsfeed.cwix.com!newsfeed.stueberl.de!newsfeed.wxs.nl!newsfeed.multikabel.nl!news.tudelft.nl!tudelft.nl!not-for-mail
Message-ID: <bvs2ig$md3$1@news.tudelft.nl>
From: robvanderleek@yahoo.com (Rob van der Leek)
Newsgroups: comp.os.minix
Subject: Re: Bochs 2.1 works with Minix
Date: Thu, 5 Feb 2004 00:25:52 +0000 (UTC)
References: <cgspvb.hf2.ln@>
Lines: 152
Organization: University of Delft, The Netherlands
NNTP-Posting-Host: centerfold.its-s.tudelft.nl
X-Trace: news.tudelft.nl 1075940752 22947 (5 Feb 2004 00:25:52 GMT)
X-Complaints-To: usenet@news.tudelft.nl
NNTP-Posting-Date: Thu, 5 Feb 2004 00:25:52 +0000 (UTC)
X-Newsreader: trn 4.0-test76 (Apr 2, 2001)
Click for additional articles on this site: Minix on Bochs

All material on this site not otherwise attributed is copyright ©1994-2004 Albert S. Woodhull
Click here for information on copying and other use.
Mail comments on this page to: Al Woodhull <awoodhull@hampshire.edu>
Viewable With Any Browser    [Valid HTML 4.0!]