Skip to content

Commit

Permalink
Updated instructions to reflect current reality.
Browse files Browse the repository at this point in the history
  • Loading branch information
Michael Brown committed Apr 26, 2006
1 parent 0eb0dd0 commit 82c4afc
Showing 1 changed file with 24 additions and 57 deletions.
81 changes: 24 additions & 57 deletions contrib/bochs/README
Expand Up @@ -15,39 +15,24 @@ but it doesn't seem to quite work.)
To get bochs running is fairly simple:

1. Get the bochs source code:
a) cvs -d:pserver:anonymous:@cvs.sourceforge.net:/cvsroot/bochs login
b) cvs -d:pserver:anonymous:@cvs.sourceforge.net:/cvsroot/bochs co bochs
cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/bochs login
cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/bochs co bochs

2. Configure bochs with
./configure --enable-all-optimisations --enable-pci \
--enable-ne2000 --enable-pnic
Other potentially useful configure options:
--prefix=/usr
to force use of standard file locations
--enable-debugger
to enable the internal debugger
pushd bochs
./configure --enable-all-optimisations --enable-pci --enable-pnic
--enable-debugger --enable-magic-breakpoints --enable-disasm
popd

3. Build bochs:
make
make -C bochs

4. Configure Etherboot with CONFIG_PCI_DIRECT: add the line
CFLAGS += -DCONFIG_PCI_DIRECT
to the end of src/arch/i386/Config.

5. Build bin/pnic.zrom:
make bin/pnic.zrom

6. Load the TUN/TAP kernel module:
4. Set up a TAP virtual network device:
modprobe tun
You should see the device /dev/net/tun is created automatically if
you're using devfs, otherwise you may have to create it by hand with:
mknod /dev/net/tun c 10 200

7. Grant yourself write access to /dev/net/tun:
su -c 'chown <your user id> /dev/net/tun'
The alternative to this is to run Bochs as root. Don't do that.
tunctl -u <username> -t tap0
ifconfig tap0 up 10.254.254.2 netmask 255.255.255.0

8. Add the following fragment to /etc/dhcpd.conf:
5. Add the following fragment to /etc/dhcpd.conf:
subnet 10.254.254.0 netmask 255.255.255.252 {
range dynamic-bootp 10.254.254.1 10.254.254.1;
}
Expand All @@ -57,39 +42,21 @@ To get bochs running is fairly simple:
machine you are using for running Bochs. If not, then you're on
your own.

9. Change back to this directory and run bochs from your Bochs source tree:
cd /path/to/Etherboot/contrib/bochs
/path/to/bochs/source/tree/bochs

10. Select option 5 (Begin simulation). You will be prompted for your
root password. This is required in order to configure the tun1
network interface and to restart the DHCP server.

11. You should see Bochs start up and attempt to boot from the network,
with a screen that looks like:

VGA BIOS - Version 2.40
Copyright (C) 1990-2000 Elpin Systems, Inc.
All rights reserved.

Licensed for use with bochs, courtesy of MandrakeSoft.

For information on this or other VGA development products, contact
Elpin Systems at: (800) 723-9038 or www.elpin.com

Bochs BIOS, 1 cpu, $Revision$ $Date$

6. Restart dhcpd
/etc/init.d/dhcpd restart

Etherboot 5.3.6 (GPL) http://etherboot.org Tagged ELF for [PNIC]
Relocating _text from: [00091020,0009fb50) to [01ef14d0,01f00000)
Boot from (N)etwork or (Q)uit?
7. Build Etherboot images
pushd ../../src
make bin/pnic.dsk
popd

Probing pci nic...
[pnic] - Detected Bochs Pseudo NIC MAC FE:FD:00:00:00:01 (API v1.0) at 0xdc00
Searching for server (DHCP)...
..Me: 10.254.254.1, Server: 10.254.254.2
Loading 10.254.254.2:/tftpboot/kernel
8. Start Bochs
./bochs/bochs -q
You should get to the debugger prompt "<bochs:1>". Type "c" to
start running Bochs.

You should see Bochs start up, load up Etherboot and attempt to boot
from the network.



Expand All @@ -101,7 +68,7 @@ console for Etherboot running within Bochs. Simply run
"./serial-console" on a spare tty (e.g. a separate xterm window)
before starting Bochs, and ensure that you have compiled Etherboot
with appropriate settings such as
CFLAGS+= -DCONSOLE_DUAL -DCOMCONSOLE=0x3F8 -DCONSPEED=9600
CFLAGS+= -DCONSOLE_DUAL -DCOMCONSOLE=0x3F8 -DCONSPEED=9600

There is a manual page for "serial-console"; use
"man ./serial-console.1" to view it.
Expand Down

0 comments on commit 82c4afc

Please sign in to comment.