2001-04-10 05:04:59 +04:00
|
|
|
<HTML>
|
|
|
|
<HEAD>
|
|
|
|
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
|
|
|
|
<META NAME="Author" CONTENT="Kevin Lawton">
|
2001-09-11 02:12:59 +04:00
|
|
|
<TITLE>Help on installing Minix 2.0 in Bochs</TITLE>
|
2001-04-10 05:04:59 +04:00
|
|
|
</HEAD>
|
|
|
|
<BODY TEXT="#000000" BGCOLOR="#ececec" LINK="#3333cc" VLINK="#666666">
|
|
|
|
|
|
|
|
<H1>
|
|
|
|
<CENTER>
|
|
|
|
Help on installing Minix 2.0 in Bochs
|
|
|
|
</CENTER>
|
|
|
|
</H1>
|
|
|
|
|
|
|
|
<PRE>
|
|
|
|
For questions about Minix in general, to obtain Minix distribution files,
|
|
|
|
and other issues, check out <A HREF="http://www.cs.vu.nl/~ast/minix.html">http://www.cs.vu.nl/~ast/minix.html</A>
|
|
|
|
|
|
|
|
<B>NOTE: Please read message regarding licensing of software packages
|
|
|
|
which you run within Bochs, and use of temporary files created to
|
|
|
|
facilitate installation. <A HREF="3rdparty.license.html">3rd Party Software Licensing and Temporary Files</A></B>
|
|
|
|
|
|
|
|
What you will need before you start:
|
|
|
|
|
|
|
|
* ROOT, USR
|
|
|
|
Minix 2.0 ROOT & USR boot floppy image files. These image
|
|
|
|
files represent a bootable Minix root (/) floppy, and a (/usr)
|
|
|
|
partition - just enough to get you up and running to begin
|
|
|
|
installing the rest.
|
|
|
|
|
|
|
|
* USR.TAZ (The rest of the necessary Minix distribution files to provide
|
|
|
|
a full Minix system.)
|
|
|
|
|
|
|
|
* SYS.TAZ (optional) system sources
|
|
|
|
* CMD.TAZ (optional) command sources
|
|
|
|
|
|
|
|
* A '.bochsrc' files something like:
|
|
|
|
|
|
|
|
megs: 8
|
|
|
|
boot: c
|
|
|
|
diskc: file=../30M.minix2.0, cyl=615, heads=6, spt=17
|
|
|
|
floppya: 1_44=../1.44
|
|
|
|
#log: /dev/null
|
|
|
|
log: ./bochs.out
|
|
|
|
hga_update_interval: 250000
|
|
|
|
keyboard_serial_delay: 200
|
|
|
|
vgaromimage: bios/VGABIOS-elpin-2.00A
|
|
|
|
romimage: bios/rombios.bin
|
|
|
|
|
|
|
|
* Compile Bochs and setup for the Minix environment
|
|
|
|
<A HREF="install.html#Compiling source code">Compiling source code</A>
|
|
|
|
<A HREF="install.html#Setting up environment">Setting up environment before running</A>
|
|
|
|
|
|
|
|
Getting down to business, you need to break up the 'USR.TAZ' distribution
|
|
|
|
into chunks big enough to fit on your 1.44Meg floppy. Use "dd" for this.
|
|
|
|
Basically you supply a block-size of 1.44Megs, read in and write out only
|
|
|
|
one block (the size of a whole floppy). You have to do this multiple
|
|
|
|
times, each time telling "dd" to skip one more chunk than before. I
|
|
|
|
had to create 3 files, the last of which will be only partially full:
|
|
|
|
|
|
|
|
dd if=USR.TAZ of=USR.00 bs=1440k count=1 skip=0
|
|
|
|
dd if=USR.TAZ of=USR.01 bs=1440k count=1 skip=1
|
|
|
|
dd if=USR.TAZ of=USR.02 bs=1440k count=1 skip=2
|
|
|
|
|
|
|
|
|
|
|
|
Create a combined root/usr boot floppy. Combined,
|
|
|
|
both files equal the size of a 1.2Meg floppy, but you
|
|
|
|
can just combine them and use them as a 1.44Meg floppy.
|
|
|
|
|
|
|
|
cat ROOT USR > 1.44 # same path as 'floppya:' directive in '.bochsrc'.
|
|
|
|
|
|
|
|
Create an empty 30Meg hard disk image file with same path
|
|
|
|
as 'diskc:' directive in '.bochsrc'.
|
|
|
|
|
|
|
|
dd if=/dev/zero of=30M.minix2.0 bs=512 count=62730
|
|
|
|
|
|
|
|
Boot from the root/usr floppy boot floppy.
|
|
|
|
|
|
|
|
bochs boot:a
|
|
|
|
|
|
|
|
At the boot monitor, type '=' key to continue.
|
|
|
|
|
|
|
|
Minix boot monitor 2.5
|
|
|
|
|
|
|
|
Press ESC to enter the monitor
|
|
|
|
|
|
|
|
Hit a key as follows:
|
|
|
|
|
|
|
|
= Start Minix
|
|
|
|
|
|
|
|
Minix will partially boot, then ask:
|
|
|
|
|
|
|
|
Finish the name of device to mount as /usr: /dev/
|
|
|
|
|
|
|
|
Type 'fd0c', which is the second (/usr) partition on the boot floppy
|
|
|
|
you made (the USR disk).
|
|
|
|
|
|
|
|
Minix should be fully booted to the login prompt:
|
|
|
|
|
|
|
|
noname login:
|
|
|
|
|
|
|
|
Type 'root', no password is needed.
|
|
|
|
|
|
|
|
Now, since I don't yet support hardware scrolling under VGA text
|
|
|
|
emulation, type the F3 key, which will turn on software scrolling.
|
|
|
|
The following message will be displayed:
|
|
|
|
|
|
|
|
Software scrolling enabled.
|
|
|
|
|
|
|
|
You can type an optional Return, to get to a new line, since that
|
|
|
|
message popped up, but you don't need to.
|
|
|
|
|
|
|
|
Now enter the setup utility, by typing 'setup'.
|
|
|
|
A series of notes are printed and a ':'. After you read the
|
|
|
|
messages, type a Return.
|
|
|
|
|
|
|
|
Minix now asks you what kind of keyboard you have. Type Return
|
|
|
|
to accept the default (us-std).
|
|
|
|
|
|
|
|
You are now informed that you'll be put in the program 'part',
|
|
|
|
which can partition your hard disk image file for you. Just
|
|
|
|
type 'Return'.
|
|
|
|
|
|
|
|
You should be in 'part'. Type 'r', to read the partition table off
|
|
|
|
of /dev/hd0. Don't worry about a message like
|
|
|
|
|
|
|
|
'dev/hd0: Invalid partition table (reset).
|
|
|
|
|
|
|
|
Since you have a blank disk image, that is to be expected.
|
|
|
|
Unfortunately, I don't implement the cursor for VGA text mode yet,
|
|
|
|
so you'll have to trust me on this one. Type:
|
|
|
|
|
|
|
|
'down-arrow' once displays "Active flag" in the top left corner
|
|
|
|
'right-arrow' once displays "Hex partition type"
|
|
|
|
'8' '1' displays a partition type of "MINIX"
|
|
|
|
'right-arrow' over until "Starting Head" is displayed
|
|
|
|
'1' to change the starting head to 1 (leave track #0 free)
|
|
|
|
'right-arrow' over until "Kb" is displayed
|
|
|
|
'm' until the fields are maximized
|
|
|
|
|
|
|
|
'w' to write partition table to disk.
|
|
|
|
|
|
|
|
(you'll see a warning message)
|
|
|
|
Warning: About to write a new table on /dev/hd0
|
|
|
|
Save partition table? (y/n)
|
|
|
|
|
|
|
|
'y' to accept
|
|
|
|
'q' to quit "part" program
|
|
|
|
|
|
|
|
Minix should be now asking you to type in the partition you created:
|
|
|
|
|
|
|
|
Please finish the name of the primary partition you have created:
|
|
|
|
(Just type RETURN if you want to rerun "part") /dev/
|
|
|
|
|
|
|
|
Type 'hd1' and Return to complete the device path. A message is then
|
|
|
|
displayed telling you setup will carve up the partition you just created,
|
|
|
|
into two sub-partitions. This is OK. Type Return.
|
|
|
|
|
|
|
|
Scanning /dev/hd1c for bad blocks...
|
|
|
|
|
|
|
|
You can let this take it's course or type the 'Del' key if it works,
|
|
|
|
to skip. Next setup wants to know about your memory size.
|
|
|
|
|
|
|
|
What is the memory size of this system in kilobytes? [4096 or more]
|
|
|
|
|
|
|
|
Providing you're running Bochs emulating >= 4Megs of memory, just type Return.
|
|
|
|
Now you should see the final message:
|
|
|
|
|
|
|
|
Please insert the installation ROOT floppy and type 'halt' to exit Minix.
|
|
|
|
You can type 'boot hd1' to try the newly installed Minix system. See
|
|
|
|
"TESTING" in the usage manual.
|
|
|
|
|
|
|
|
You already have the root/boot floppy image in place. Type 'halt'.
|
|
|
|
Then type 'boot hd1', then '=' at the boot monitor to continue with the
|
|
|
|
boot. You should be back at the login prompt, only this time you just
|
|
|
|
booted from the hard disk image.
|
|
|
|
|
|
|
|
noname login:
|
|
|
|
|
|
|
|
Login as root, no password needed.
|
|
|
|
|
|
|
|
NOTE: You'll need to keep typing the F3 key to turn on Software
|
|
|
|
Scrolling every time you fire up Minix. Type it now.
|
|
|
|
|
|
|
|
Complete the setup process by typing 'setup /usr'.
|
|
|
|
|
|
|
|
What is the size of the images on the diskettes? [all]
|
|
|
|
|
|
|
|
Type Return, since you're using the whole diskette.
|
|
|
|
|
|
|
|
What floppy drive to use? [0]
|
|
|
|
|
|
|
|
Type Return since you're using floppy #0. (A:)
|
|
|
|
|
|
|
|
Please insert input volume 1 and hit return
|
|
|
|
|
|
|
|
OK, now whenever setup asks for a new volume, you just go to
|
|
|
|
your workstation, and copy the next volume in the series, overwriting
|
|
|
|
the 1.44Meg floppy image file.
|
|
|
|
|
|
|
|
unix-> cp USR.00 /path/1.44
|
|
|
|
|
|
|
|
Then type Return in the bochs window to continue. Just continue
|
|
|
|
doing this until setup is done. For example:
|
|
|
|
|
|
|
|
[Please insert input volume 2 and hit return]
|
|
|
|
unix-> cp USR.01 /path/1.44
|
|
|
|
[Return in Bochs window]
|
|
|
|
|
|
|
|
[Please insert input volume 3 and hit return]
|
|
|
|
unix-> cp USR.02 /path/1.44
|
|
|
|
[Return in Bochs window]
|
|
|
|
|
|
|
|
When setup is completed, you should see the message:
|
|
|
|
|
|
|
|
Done.
|
|
|
|
|
|
|
|
and a root prompt '#'. At this point, halt the system and
|
|
|
|
try one more boot if you'd like:
|
|
|
|
|
|
|
|
# halt
|
|
|
|
|
|
|
|
Type a couple Ctrl-C's in the the window you fired up bochs in.
|
|
|
|
Now fire up Bochs again, this time booting the hard drive directly:
|
|
|
|
|
|
|
|
bochs boot:c
|
|
|
|
|
|
|
|
As usual, type '=' to continue the boot process.
|
|
|
|
|
|
|
|
Go nuts!
|
|
|
|
</PRE>
|
|
|
|
|
|
|
|
</BODY>
|
|
|
|
</HTML>
|