Add qemu 2.4.0
[kvmfornfv.git] / qemu / roms / openbios / README
diff --git a/qemu/roms/openbios/README b/qemu/roms/openbios/README
new file mode 100644 (file)
index 0000000..b6a9978
--- /dev/null
@@ -0,0 +1,132 @@
+Welcome to OpenBIOS
+-------------------
+
+OpenBIOS is a free, portable implementation of IEEE 1275-1994 
+(Open Firmware). Find detailed information about OpenBIOS at 
+http://www.openbios.org/
+
+What is OpenBIOS?
+-----------------
+
+OpenBIOS can replace your system firmware (BIOS) partly or completely. It
+can also be used as a bootloader to create an Open Firmware compatible
+interface between legacy firmware and an operating system.
+
+This is achieved by a modular concept that consists of a portable Forth
+kernel and three interfaces for user interaction, device initialization
+and client (operating system) control.
+
+While far not all possible applications of OpenBIOS are implemented yet,
+a lot of functionality is already there. OpenBIOS can be used to enhance
+LinuxBIOS (http://www.linuxbios.org), or be booted from any multiboot
+capable bootloader to bring Open Firmware to your machine. OpenBIOS can
+also be used when an operating system is already running. It provides
+the needed OpenFirmware functionality to MOL (MacOnLinux) to boot MacOS
+9 and X on PPC machines, as well as Linux (all supported platforms)
+
+OpenBIOS build options
+---------------------
+
+   config/scripts/switch-arch <platform>  - build for specified platform
+                                           Look in config/example for
+                                           platforms.
+
+   make            - build all configured binaries
+
+   make run        - run unix example.
+
+   
+How OpenBIOS works
+------------------
+
+ The OpenBIOS forth core is split into a forth kernel written in portable 
+ C and a forth dictionary which operated on by the kernel.
+
+ When building the forth core, you get different versions of
+ the forth kernel: 
+
+ * a unix executable program
+
+   - to execute a forth dictionary from a file. This can be used for
+     easily testing and developing OpenBIOS on a unix host.
+
+   - to create a dictionary file. Such a dictionary file sets up
+     all of the forth language. Primitives are indexed to save relocations.
+
+     The default is to create a forth dictionary forth.dict from
+     forth/start.fs. This file includes all of the basic forth language
+     constructs from forth/bootstrap.fs and starts the interpreter.
+
+     To achieve this, the hosted unix version contains a basic set of
+     forth words coded in C that allow creating a full dictionary.
+
+ * a varying number of target specific binaries. On x86 you can start 
+   openbios for example from GRUB or LinuxBIOS. They are all based on
+   the same forth engine consisting of a dictionary scheduler, primitive 
+   words needed to build the forth environment, 2 stacks and a simple 
+   set of console functions. These binaries can not be started directly
+   in the unix host environment.
+
+Requirements
+------------
+ * gcc
+ * gnu make
+ * OpenBIOS FCode Utils
+   Download with svn co svn://openbios.org/openbios/fcode-utils
+ * grub or any other multiboot loader to run the multiboot
+   binary "openbios.multiboot" with it's module "openbios-<platform>.dict"
+ * xsltproc
+Building & Usage
+----------------
+
+ * make
+
+   this builds "openbios.multiboot", the standalone image and "openbios-unix", 
+   the hosted image. Additionally it creates a forth dictionary
+   file from forth/start.fs. All generated files are written to 
+   the absolute directory held by the variable BUILDDIR, which defaults
+   to obj-[platform]. Some compile time parameters can be tweaked in
+   include/config.h
+   
+ * use "openbios-unix" to create a forth dictionary on your own:
+   $ obj-x86/openbios-unix -Iforth start.fs
+   creates the file forth.dict from forth source forth/start.fs.
+
+ * use "openbios-unix" to run a created dictionary: 
+   $ obj-x86/openbios-unix obj-x86/openbios-unix.dict
+   This is useful for testing
+ * booting openbios
+   You can boot openbios i.e. in grub. Add the following lines to
+   your menu.lst:
+
+    title openbios
+      kernel (hd0,2)/boot/openbios.multiboot
+      module (hd0,2)/boot/openbios-x86.dict
+
+   Note: change (hd0,2) to the partition you copied the openbios image and
+   openbios-x86.dict to.
+
+   To boot OpenBIOS from LinuxBIOS/etherboot, you can either use
+   "openbios-plain.elf" or "openbios-builtin.elf":
+
+   - openbios-plain.elf is the pure kernel that loads the dictionary from a 
+     hardcoded address in flash memory (0xfffe0000)
+
+   - openbios-builtin.elf also includes the dictionary directly so that it
+     can be easily used from etherboot or the LinuxBIOS builtin ELF
+     loader without taking care of the dictionary
+
+CREDITS
+-------
+OpenBIOS was developed by Stefan Reinauer, Samuel Rydh and Patrick Mauritz.
+The OpenBIOS IDE driver was written by Jens Axboe.
+For license details on this piece of software, see Documentation/COPYING.
+
+
+If you have patches, questions, comments, feel free to contact the OpenBIOS
+mailinglist.
+
+Regards,
+     the OpenBIOS team