*BSD News Article 15761


Return to BSD News archive

Path: sserve!newshost.anu.edu.au!munnari.oz.au!constellation!osuunx.ucc.okstate.edu!moe.ksu.ksu.edu!zaphod.mps.ohio-state.edu!darwin.sura.net!news-feed-1.peachnet.edu!umn.edu!math.fu-berlin.de!news.th-darmstadt.de!hotb.RoBIN.de!alvman.RoBIN.de!not-for-mail
From: ah@alvman.RoBIN.de (Andreas Haakh)
Newsgroups: comp.unix.bsd
Subject: Re: BSD386 mit OS/2 auf einer Platte
Date: 5 May 1993 03:16:30 +0200
Lines: 93
Message-ID: <1s74hsINN238@alvman.RoBIN.de>
References: <1s2gejINN16oi@rs2.hrz.th-darmstadt.de> <1993May3.130225.22032@gmd.de>
NNTP-Posting-Host: alvman.robin.de
Keywords: BSD OS/2

veit@mururoa.gmd.de (Holger Veit) writes:

>BTW: It is common practice to post in English in this newsgroup. Use de.comp.os.unix 
>for a German reply.

>|> ihn nicht mehr. Meine Absicht ist, eine Partition OS/2, eine
>|> MS-DOS und eine BSD386 auf einer Platte unter zu bringen und alle drei ueber den
>|> Bootmanager zu starten. 

>The question asked here was how it can be done to make BSD386 (I believe 386bsd),
>OS/2 and MSDOS coexisting on one disk, and start any of them it separately 
>from the (OS/2-) boot manager.

>|> 
>|> Wenn ich dieses nun so einrichte und von der Tiny Bsd Disk installiere, bootet
>|> aber die Platte nicht. Stattdessen erscheint ein "b" links oben und der Rechner
>|> scheint sich anderweitig zu beschaeftigen. 

>When having installed all, the BSD boot fails with a 'b' in the upper left corner.

>|> 
>|> Wenn mir jemand hierzu nocheinmal den passenden Trick veraten koennte, waere ich
>|> ihm sehr dankbar.
>|> 

>My answer: The OS/2 boot manager was found to be incompatible with anything other
>than DOS / OS/2 long ago, in particular with 386bsd. You should use a different
>partition switcher like booteasy or os-bs which are available from many
>386bsd archive sites (ask archie).

As a matter of fact: this is exactly what I have on my first disk and
it really works. 
I had to look through the boot code in order to find out what I had
to do.
What I have configured on wd0 is:
Partition	1: MSDOS ~34 MB
		2: OS/2  ~42 MB
		3: BSD   ~ 3 MB - I just use it to boot...
		4: Bootmanager.

What happens is the following:

The master boot record (MBR) contains the primary bootcode and information
on the partitioning scheme. As set up it chains to the bootmanager in
partition 4. The bootmanager gets loaded, moves itself 'out of the way'
and loads the appropriate bootcode from the desired partition.

Now the tricky part: the bsd bootcode consists of two parts. The first
one (512 bytes) will be loaded and started by the bootmanager. But this
piece of code assumes, that part two is located on the second sector
of the disk. This shouldnt be a problem if your bsd-partition is the first
on your disk. In my case I did the following:

dd  if=/dev/rwd0d of=save_orogonal_boot count=1

cat bootwd >>save_original_boot (append it)

and then something like

cat save_original_boot >/dev/rwd0d or
dd if=save_original_boot of=/dev/rwd0d.

This puts the original bootcode and the 2nd stage bsd-boot at the beginning
of the disk.

You must now change the id of your bsd-partition e.g using the fdisk
utility supplied with julians scsi-driver and add the 1st stage boot-
code using 

disklabel ... /dev/rwd0a ...    /usr/mdec/wdboot /usr/mdec/bootwd

if this should't work do a 

dd if=/usr/mdec/wdboot of=/dev/rwd0a  

and then (well I actually don't remember exactly)

disklabel ... /dev/rwd0a ...   and
newfs /dev/rwd0a

You should now have what you wanted.

Much fun (It took me hours or even days to figure this out :-)

Andreas.

P.S.: If you should succed, please post an exact description of the
      necessary steps for all those who want to know.

-- 
  Andreas Haakh                 \           ah@alvman.RoBIN.de
  In den Wingerten 21             \           +49 6150 82904
  6100 Darmstadt-Wixhausen          \____________________________________