[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Creating a floppy image for bochs

From: Niels Möller
Subject: Creating a floppy image for bochs
Date: 18 Jan 2004 16:11:02 +0100
User-agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.2

I've installed bochs now. Since I didn't find any quick start
instructions, I'll describe how I attempt to boot hurd-l4 on it.

First, I installed bochs, grub (it need not be installed on any real
bootsector, I just need the grub shell and the stage1 and stage2
files), and pistachio-0.3.

I checked out the hurd-l4 with something like lsh -G -B -z
address@hidden, export CVS_RSH=lshg, cvs -d
address@hidden:/cvsroot/hurd co hurd-l4. Building went
smoothly. To make automake 1.8 happier, some quotes should be added to


Next, I created a subdirectoty "hurd-l4/boot", and copied ia32-kernel
and sigma0 into it (from the pistachio build tree). I also wrote a

  title Hurd-L4
  root (fd0)
  kernel /boot/laden
  module /boot/ia32-kernel
  module /boot/sigma0
  module /boot/wortel
  # Dummy module line
  module /boot/wortel

Next I had to figure out how to make a boot floppy image. With
inspiration from
http://mail.gnu.org/archive/html/bug-grub/2003-10/msg00045.html, I
wrote the following mkbootfloppy shell script, which I ran in the
hurd-l4 directory:

  #! /bin/sh
  # Copies files from the build tree and from boot into a floppy image.
  # boot is expected to contain the l4 kernel, as well as servers like
  # sigma0 that comes from the pistachio dist.
  set -e
  die () {
      echo "$@"
      exit 1
  mkdir -p "$ROOT"
  cp -r boot "$ROOT"
  cp "$GRUBDIR/stage1" "$ROOT/boot"
  cp "$GRUBDIR/stage2" "$ROOT/boot"
  cp boot/menu.lst "$ROOT/boot"
  cp laden/laden wortel/wortel "$ROOT/boot"
  genext2fs -r 0 -d "$ROOT" -b 1440 boot.img
  "$GRUB" --device-map=/dev/null << EOF
  device (fd0) boot.img
  root (fd0)
  setup --prefix=/boot (fd0)

Then I point "floppya" in the .bochsrc file to this image, and run
"bochs boot:a". GRUB is able to load the modules, but then the virtual
machine crashes, I guess next thing to do is to read up on the patches
that were needed for pistatchio-0.3.

Some questions: I turned on the obvious debug flags when building the
else need I do to get more verbose output during the startup? Would it
be better to use serial output, and somehow let bochs redirect the
serial output to somewhere I can read it?


reply via email to

[Prev in Thread] Current Thread [Next in Thread]