https://openfirmware.info/api.php?action=feedcontributions&user=Stepan&feedformat=atomOpenBIOS - User contributions [en]2024-03-28T15:28:21ZUser contributionsMediaWiki 1.40.0https://openfirmware.info/index.php?title=FCODE_suite&diff=271FCODE suite2016-01-16T01:35:32Z<p>Stepan: </p>
<hr />
<div>== What is the OpenBIOS FCODE Suite? ==<br />
<br />
OpenBIOS provides a sophisticated set of FCODE utilities: <br />
* the tokenizer '''toke'''<br />
* the detokenizer '''detok'''<br />
* and a PCI rom header utility.<br />
* a portable implementation of forth local values<br />
<br />
These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]].<br />
<br />
<br />
== Downloading the OpenBIOS FCode Suite ==<br />
<br />
'''The latest version of the OpenBIOS FCode Suite is 1.0.2 (released 2006-10-30)'''<br />
<br />
=== Source Code ===<br />
<br />
View the [https://github.com/openbios/fcode-utils Sources] online. Available as a ZIP-File: [https://github.com/openbios/fcode-utils/archive/v1.0.2.zip FCode-utils 1.0.2]<br />
<br />
See the [https://raw.githubusercontent.com/openbios/fcode-utils/v1.0.2/ChangeLog ChangeLog] for a list of changes since 1.0.1.<br />
A hand crafted html document describes [http://www.openbios.org/data/visiblediffs/V01_versus_V2x/ some more changes].<br />
<br />
=== Documentation ===<br />
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.<br />
<br />
It is important that these be kept in the same directory, as there are some links from one file to another.<br />
<br />
The documents are User's Guides to:<br />
* the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer],<br />
* [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and<br />
* the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.<br />
<br />
These documents are also part of the source code repository.<br />
<br />
There is also doxygen generated documentation available<br />
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] <br />
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]<br />
* TODO: doxygen documentation for toke 1.0.2<br />
<br />
=== Executables for three platforms ===<br />
<br />
While you can find a couple of executables here we strongly recommend that you compile the FCode toolchain from the sources above so you gain from the integration work and fixes that have been done since these executables have been created.<br />
<br />
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])<br />
<br />
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.<br />
<br />
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.<br />
<br />
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.<br />
<br />
There are separate directories for the Debug and Optim(ized Level)2 variants.<br />
<br />
Under each are sub-directories for the different platforms, within which the executable images reside.<br />
<br />
All binaries are also available in a single Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]<br />
<br />
=== Local Value Support ===<br />
<br />
Includ-able tokenizer-source files for [https://github.com/openbios/fcode-utils/tree/master/localvalues Local Values Support] (explained in one of the User's Guide documents). Five files: <br />
* One supplies the [https://github.com/openbios/fcode-utils/tree/master/localvalues/LocalValuesSupport.fth basic functionality]<br />
* the second adds a [https://github.com/openbios/fcode-utils/tree/master/localvalues/LocalValuesDevelSupport.fth development-time facility]<br />
* the third generates a variant behavior ([https://github.com/openbios/fcode-utils/tree/master/localvalues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node) <br />
* and the fourth [https://github.com/openbios/fcode-utils/tree/master/localvalues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility]. <br />
* The fifth [https://github.com/openbios/fcode-utils/tree/master/localvalues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.<br />
<br />
There is commentation in each one explaining how it is to be used.<br />
<br />
Available as part of the OpenBIOS FCODE suite.<br />
<br />
=== Todo ===<br />
<br />
A list of "Still To Be Done" items, excerpted from the commentation in the Sources<br />
<br />
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. <br />
<br />
This file is a [https://github.com/openbios/fcode-utils/tree/master/TODO collection of all of them] in a single convenient location.<br />
<br />
== Unit-Test Suite ==<br />
<br />
=== The suite of unit-test cases ===<br />
This is the [https://github.com/openbios/fcode-utils/tree/master/testsuite accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.<br />
<br />
Run the unit-test cases with<br />
<br />
$ make tests<br />
<br />
=== Test Tools ===<br />
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run.<br />
<br />
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: <br />
<br />
* [https://github.com/openbios/fcode-utils/tree/master/testsuite/AutoExec AutoExec] automates the execution, and <br />
* [https://github.com/openbios/fcode-utils/tree/master/testsuite/AutoCompare AutoCompare] automates the comparison.<br />
<br />
There is commentation in each explaining how it is used.<br />
<br />
== Unit-Test Suite Logs ==<br />
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. <br />
<br />
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.<br />
<br />
All in all, five or six file differences will be expected to be reported by AutoCompare.<br />
<br />
* The results from a run of the Unit-Test Suite on the [https://github.com/openbios/fcode-utils/tree/master/testlogs/testlogs-x86-cygwin X86/Cygwin] platform.<br />
<br />
* The results from a run of the Unit-Test Suite on the [https://github.com/openbios/fcode-utils/tree/master/testlogs/testlogs-ppc-linux PowerPC/Linux] platform. <br />
<br />
* The results from a run of the Unit-Test Suite on the [https://github.com/openbios/fcode-utils/tree/master/testlogs/testlogs-ppc-aix PowerPC/AIX] platform.<br />
<br />
== Coverage Reports ==<br />
<br />
The test suite has been run using gcov/lcov to produce graphical code coverage reports.<br />
<br />
* [http://www.openbios.org/data/coverage-fcode-suite-1.0.2/ coverage report for FCODE suite 1.0.2]<br />
* [http://www.openbios.org/data/coverage-toke-1.0.2/ coverage report for toke 1.0.2]<br />
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]<br />
<br />
<br />
== Kudos and Thanks ==<br />
<br />
<div style="margin-top:0.5em; margin-bottom:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;"><br />
The OpenBIOS FCODE Suite has been significantly enhanced to meet commercial grade requirements by [mailto:David@paktor.biz David Paktor]. Regarding to code readability and stability, he made the FCODE suite the best part of OpenBIOS. And it's probably the best FCODE development environment out there. '''Thank you, David!'''<br />
</div><br />
<br />
<br />
__NOEDITSECTION__</div>Stepanhttps://openfirmware.info/index.php?title=On_the_Net&diff=309On the Net2010-08-31T11:19:41Z<p>Stepan: </p>
<hr />
<div>__NOTOC__<br />
== Open Firmware Companies/Vendor support ==<br />
* [http://www.codegen.com CodeGen]<br />
* [http://www.firmworks.com FirmWorks]<br />
* [http://www.sun.com SUN]<br />
* [http://www.ibm.com IBM]<br />
* [http://www.coresystems.de coresystems GmbH]<br />
<br />
== Open Firmware Documentation ==<br />
* [http://www.firmworks.com/www/ofw.htm What is Open Firmware?]<br />
* [http://playground.sun.com/pub/1275/mejohnson/ Hardware Independant Boot Code] - - An Open Firmware description at an introductory level by Matthew Johnson<br />
* [http://www.openfirmware.org/ Open Firmware homepage]<br />
* [http://playground.sun.com/pub/1275/ The OpenFirmware IEEE 1275-1994]<br />
* [ftp://docs-pdf.sun.com/806-1379-10/806-1379-10.pdf Writing FCode 3.x Programs]<br />
* [ftp://docs-pdf.sun.com/806-1377-10/806-1377-10.pdf OpenBoot 3.x Command Reference Manual]<br />
* [ftp://docs-pdf.sun.com/806-2908-10/806-2908-10.pdf OpenBoot 3.x Quick Reference]<br />
<br />
== Forth ==<br />
* [http://www.faqs.org/faqs/computer-lang/forth-faq/ Forth FAQ]<br />
* [http://ccreweb.org/software/kforth/kforth4.html kForth] - programming examples<br />
* DPANS'94 [ [http://forth.sourceforge.net/standard/dpans/index.html HTML] ] | [ [http://www.openfirmware.info/data/docs/dpans94.pdf PDF] ] - very interesting: annex D and E.<br />
* [http://www.jwdt.com/~paysan/gforth.html Gforth] - Forth implementation of the GNU project<br />
* [http://pfe.sourceforge.net/ PFE] - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments.<br />
* [http://www.geocities.com/simon_baldwin/packages/ vnpforth] - contains a traditional compiler, which turns Forth into standard object (.o) files<br />
* [http://zetetics.com/bj/papers/ Moving Forth] - Article on writing Forth Kernels by Brad Rodriguez<br />
* [http://www.taygeta.com/forth.html Hayes ANS compliance test] - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test.<br />
* [ftp://ftp.taygeta.com/pub/Forth/Tools/gfob-0.1.0.tar.gz gfob] - a forth source obfuscator<br />
* [http://www.ultratechnology.com/forth.htm Thoughtful Programming and Forth] - an essay by Jeff Fox.<br />
* [http://www.theforthsource.com/fp000.html Selected Forth Papers] - at theforthsource.com<br />
<br />
== Stack Machines == <br />
* [http://www-2.cs.cmu.edu/~koopman/stack_computers/ Stack Computers: the new wave] - Philip J. Koopman Jr's book on stack computers offered as pdf and html.<br />
<br />
== Booting ==<br />
* [ftp://flux.cs.utah.edu/flux/multiboot/MultiBoot.html Multiboot standard]<br />
* [http://www.gnu.org/software/grub/ GRUB - GRand Unified Bootloader]<br />
* GRUB2<br />
* [http://www.nilo.org/ Nilo] - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard.<br />
* [http://www.etherboot.org Etherboot]<br />
* Redboot<br />
<br />
== Flashing on Linux Systems ==<br />
* [http://www.linux-mtd.infradead.org/ MTD] - Memory Technology Device Subsystem for Linux<br />
* /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware) (obsolete)<br />
* [http://www.uniflash.org/ Uniflash] (nonlinux)<br />
* flashrom ([http://www.coreboot.org/Flashrom coreboot])<br />
<br />
== Other Open Source Firmware Implementations ==<br />
* [http://www.coreboot.org/ coreboot] - The coreboot project bootstraps systems to the point where they can run an OS kernel or any other application or bootloader from flash.<br />
* [http://sourceforge.net/projects/utcboot/ TIARA] - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?)<br />
* [http://people.redhat.com/zaitcev/linux/ Proll] - Proll is a firmware replacement for SUN JavaStations to boot Linux<br />
* [http://gnufi.blogspot.com/ GNUFI], an open source EFI implementation<br />
* [http://cygwin.com/redboot/ redboot]<br />
* SLOF<br />
* [http://perso.magic.fr/l_indien/OpenHackWare/ Open Hackware]<br />
* SUN OpenBoot<br />
* [http://www.humboldt.co.uk/gbios.html GBIOS] - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus. (dead?)<br />
* ...<br />
<br />
== Virtual Machines and Emulation ==<br />
* [http://www.qemu.com/ QEMU]<br />
* [http://www.cl.cam.ac.uk/research/srg/netos/xen/ XEN] Virtualization<br />
* [http://bochs.sourceforge.net/ Bochs] - portable open source IA-32 (x86) PC emulator<br />
* [http://www.dosemu.org/ DOSemu] - DOS Emulation for Linux<br />
* Hypervisor<br />
* ...<br />
<br />
== OpenBIOS tutorial ==<br />
* [http://www.openfirmware.info/Adding_words_to_openbios How to add words to OpenBIOS]</div>Stepanhttps://openfirmware.info/index.php?title=On_the_Net&diff=308On the Net2010-08-31T11:19:00Z<p>Stepan: /* Forth */</p>
<hr />
<div>__NOTOC__<br />
== Open Firmware Companies/Vendor support ==<br />
* [http://www.codegen.com CodeGen]<br />
* [http://www.firmworks.com FirmWorks]<br />
* [http://www.sun.com SUN]<br />
* [http://www.ibm.com IBM]<br />
* [http://www.coresystems.de coresystems GmbH]<br />
<br />
== Open Firmware Documentation ==<br />
* [http://www.firmworks.com/www/ofw.htm What is Open Firmware?]<br />
* [http://playground.sun.com/pub/1275/mejohnson/ Hardware Independant Boot Code] - - An Open Firmware description at an introductory level by Matthew Johnson<br />
* [http://www.openfirmware.org/ Open Firmware homepage]<br />
* [http://playground.sun.com/pub/1275/ The OpenFirmware IEEE 1275-1994]<br />
* [ftp://docs-pdf.sun.com/806-1379-10/806-1379-10.pdf Writing FCode 3.x Programs]<br />
* [ftp://docs-pdf.sun.com/806-1377-10/806-1377-10.pdf OpenBoot 3.x Command Reference Manual]<br />
* [ftp://docs-pdf.sun.com/806-2908-10/806-2908-10.pdf OpenBoot 3.x Quick Reference]<br />
<br />
== Forth ==<br />
* [http://www.faqs.org/faqs/computer-lang/forth-faq/ Forth FAQ]<br />
* [http://ccreweb.org/software/kforth/kforth4.html kForth] - programming examples<br />
* DPANS'94 [ [http://forth.sourceforge.net/standard/dpans/index.html HTML] ] | [ [http://openfirmware.info/data/dpans94.pdf PDF] ] - very interesting: annex D and E.<br />
* [http://www.jwdt.com/~paysan/gforth.html Gforth] - Forth implementation of the GNU project<br />
* [http://pfe.sourceforge.net/ PFE] - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments.<br />
* [http://www.geocities.com/simon_baldwin/packages/ vnpforth] - contains a traditional compiler, which turns Forth into standard object (.o) files<br />
* [http://zetetics.com/bj/papers/ Moving Forth] - Article on writing Forth Kernels by Brad Rodriguez<br />
* [http://www.taygeta.com/forth.html Hayes ANS compliance test] - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test.<br />
* [ftp://ftp.taygeta.com/pub/Forth/Tools/gfob-0.1.0.tar.gz gfob] - a forth source obfuscator<br />
* [http://www.ultratechnology.com/forth.htm Thoughtful Programming and Forth] - an essay by Jeff Fox.<br />
* [http://www.theforthsource.com/fp000.html Selected Forth Papers] - at theforthsource.com<br />
<br />
== Stack Machines == <br />
* [http://www-2.cs.cmu.edu/~koopman/stack_computers/ Stack Computers: the new wave] - Philip J. Koopman Jr's book on stack computers offered as pdf and html.<br />
<br />
== Booting ==<br />
* [ftp://flux.cs.utah.edu/flux/multiboot/MultiBoot.html Multiboot standard]<br />
* [http://www.gnu.org/software/grub/ GRUB - GRand Unified Bootloader]<br />
* GRUB2<br />
* [http://www.nilo.org/ Nilo] - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard.<br />
* [http://www.etherboot.org Etherboot]<br />
* Redboot<br />
<br />
== Flashing on Linux Systems ==<br />
* [http://www.linux-mtd.infradead.org/ MTD] - Memory Technology Device Subsystem for Linux<br />
* /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware) (obsolete)<br />
* [http://www.uniflash.org/ Uniflash] (nonlinux)<br />
* flashrom ([http://www.coreboot.org/Flashrom coreboot])<br />
<br />
== Other Open Source Firmware Implementations ==<br />
* [http://www.coreboot.org/ coreboot] - The coreboot project bootstraps systems to the point where they can run an OS kernel or any other application or bootloader from flash.<br />
* [http://sourceforge.net/projects/utcboot/ TIARA] - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?)<br />
* [http://people.redhat.com/zaitcev/linux/ Proll] - Proll is a firmware replacement for SUN JavaStations to boot Linux<br />
* [http://gnufi.blogspot.com/ GNUFI], an open source EFI implementation<br />
* [http://cygwin.com/redboot/ redboot]<br />
* SLOF<br />
* [http://perso.magic.fr/l_indien/OpenHackWare/ Open Hackware]<br />
* SUN OpenBoot<br />
* [http://www.humboldt.co.uk/gbios.html GBIOS] - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus. (dead?)<br />
* ...<br />
<br />
== Virtual Machines and Emulation ==<br />
* [http://www.qemu.com/ QEMU]<br />
* [http://www.cl.cam.ac.uk/research/srg/netos/xen/ XEN] Virtualization<br />
* [http://bochs.sourceforge.net/ Bochs] - portable open source IA-32 (x86) PC emulator<br />
* [http://www.dosemu.org/ DOSemu] - DOS Emulation for Linux<br />
* Hypervisor<br />
* ...<br />
<br />
== OpenBIOS tutorial ==<br />
* [http://www.openfirmware.info/Adding_words_to_openbios How to add words to OpenBIOS]</div>Stepanhttps://openfirmware.info/index.php?title=FlashRom&diff=337FlashRom2010-02-09T14:17:47Z<p>Stepan: /* Flash Updates with Linux */</p>
<hr />
<div>{{stub}}<br />
__NOTOC__<br />
<br />
= Flash Updates with Linux =<br />
<br />
Formerly OpenBIOS provided its own flashing facility implemented as a device driver called '''/dev/bios'''. One big disadvantage of '''/dev/bios''' was that it needed to be recompiled for every minor kernel update.<br />
<br />
Ollie Lho, back when working at SIS, started a new effort which he called '''flash_and_burn'''. This utility became part of the [http://www.coreboot.org coreboot project] and evolved to work with non-SIS chipsets.<br />
<br />
[[User:Stepan|Stefan Reinauer]] added a lot of new features to Ollie's utility and renamed it to '''flashrom'''. This utility still lacks some features the old '''/dev/bios''' driver was having, but it can easily be used from userspace without recompiling the kernel.<br />
<br />
For more information about flashrom see http://www.flashrom.org/</div>Stepanhttps://openfirmware.info/index.php?title=Project_Statement&diff=392Project Statement2008-09-12T21:33:43Z<p>Stepan: Project Statement moved to Code of Conduct</p>
<hr />
<div>#REDIRECT [[Code of Conduct]]</div>Stepanhttps://openfirmware.info/index.php?title=Code_of_Conduct&diff=98Code of Conduct2008-09-12T21:33:43Z<p>Stepan: Project Statement moved to Code of Conduct</p>
<hr />
<div>Dear OpenBIOS project members and other interested parties,<br />
<br />
For the ease of development and for information on what can be expected from this project we want to set down the following ground rules in order to achieve a high quality implementation of our project objectives.<br />
<br />
1. The objective of this project is to develop a free, open source, architecture independant firmware implementation following, if possible, the IEEE Standard for Boot (Initialization Configuration) Firmware (IEEE 1275-1994). Including not only the implementation of the standard itself but also the required toolkit consisting of a C to FCode compiler, an FCode tokenizer and an FCode detokenizer. This toolkit will simplify driver and API development implementing ANSI C as the development language instead of implementing Forth/FCode directly as suggested by the IEEE standard.<br />
<br />
2. We cannot allow _any_ discussion or use of _any_ copyrighted, patented, or otherwise protected Firmware or BIOS implementations without an OSI approved license in this project or on the mailing list associated with this project. All members of this project and/or the according mailing lists agree to not disclose or use any copyrighted, patented, or otherwise protected information, ideas or concepts.<br />
<br />
3. We do not intend to implement any of the ideas or concepts expressed in the current Intel 32bit architechture, except when these are necessary to insure the compatability with existing hardware. Such ideas and concepts will only be used if such use is not restricted by _any_ laws, copyrights or patents.<br />
<br />
4. In order to assure truly universal implementation and/or optimize the functionality and performance it is our expressed wish to work in conjunction with other open source (firmware) projects, such as LinuxBIOS or U-Boot.<br />
<br />
5. Cooperation with hardware vendors is necessary to implement this project on an architecture-independent basis. In certain cases this may include signing non-disclosure agreements with the aforementioned hardware vendors in an attempt to acquire hardware specific information or support that may not otherwise be available although the results of such cooperation must be freely redistributable.<br />
<br />
6. Cooperation with any university, research project, or organization is desired except in such cases where the resulting information is restricted in use or redistributability.<br />
<br />
If, for whatever reasons, any of the above statements are unacceptable or seem to be incorrect or unclear in _any_ way please do not hesitate to discuss this matter on the mailing list, we are open for suggestions. This is simply an attempt to assure the legal status of this project, protecting those involved from legal prosecution as well as to state the general objectives of the project.<br />
<br />
OpenBIOS development team.</div>Stepanhttps://openfirmware.info/index.php?title=FCODE_suite&diff=266FCODE suite2008-07-11T23:25:36Z<p>Stepan: </p>
<hr />
<div>== What is the OpenBIOS FCODE Suite? ==<br />
<br />
OpenBIOS provides a sophisticated set of FCODE utilities: <br />
* the tokenizer '''toke'''<br />
* the detokenizer '''detok'''<br />
* and a PCI rom header utility.<br />
* a portable implementation of forth local values<br />
<br />
These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]].<br />
<br />
<br />
== Downloading the OpenBIOS FCode Suite ==<br />
<br />
'''The latest version of the OpenBIOS FCode Suite is 1.0.2 (released 2006-10-30)'''<br />
<br />
=== Source Code ===<br />
<br />
View the [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=197 Sources] online. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=113 FCode-utils 1.0.2]<br />
<br />
See the [http://www.openbios.org/viewvc/fcode-utils/ChangeLog?revision=197&root=OpenBIOS&view=markup ChangeLog] for a list of changes since 1.0.1.<br />
A hand crafted html document describes [http://www.openbios.org/data/visiblediffs/V01_versus_V2x/ some more changes].<br />
<br />
=== Documentation ===<br />
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.<br />
<br />
It is important that these be kept in the same directory, as there are some links from one file to another.<br />
<br />
The documents are User's Guides to:<br />
* the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer],<br />
* [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and<br />
* the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.<br />
<br />
Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive]<br />
<br />
There is also doxygen generated documentation available<br />
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] <br />
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]<br />
* TODO: doxygen documentation for toke 1.0.2<br />
<br />
=== Executables for three platforms ===<br />
<br />
While you can find a couple of executables here we strongly recommend that you compile the FCode toolchain from the sources above so you gain from the integration work and fixes that have been done since these executables have been created.<br />
<br />
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])<br />
<br />
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.<br />
<br />
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.<br />
<br />
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.<br />
<br />
There are separate directories for the Debug and Optim(ized Level)2 variants.<br />
<br />
Under each are sub-directories for the different platforms, within which the executable images reside.<br />
<br />
All binaries are also available in a single Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]<br />
<br />
=== Local Value Support ===<br />
<br />
Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files: <br />
* One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality]<br />
* the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility]<br />
* the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node) <br />
* and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility]. <br />
* The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.<br />
<br />
There is commentation in each one explaining how it is to be used.<br />
<br />
Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz]<br />
<br />
=== Todo ===<br />
<br />
A list of "Still To Be Done" items, excerpted from the commentation in the Sources<br />
<br />
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. <br />
<br />
This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location.<br />
<br />
== Unit-Test Suite ==<br />
<br />
=== The suite of unit-test cases ===<br />
This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.<br />
<br />
Run the unit-test cases with<br />
<br />
$ make tests<br />
<br />
=== Test Tools ===<br />
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run.<br />
<br />
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: <br />
<br />
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and <br />
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison.<br />
<br />
There is commentation in each explaining how it is used.<br />
<br />
== Unit-Test Suite Logs ==<br />
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. <br />
<br />
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.<br />
<br />
All in all, five or six file differences will be expected to be reported by AutoCompare.<br />
<br />
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-x86-cygwin/?root=OpenBIOS X86/Cygwin] platform.<br />
<br />
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-linux/?root=OpenBIOS PowerPC/Linux] platform. <br />
<br />
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-aix/?root=OpenBIOS PowerPC/AIX] platform.<br />
<br />
== Coverage Reports ==<br />
<br />
The test suite has been run using gcov/lcov to produce graphical code coverage reports.<br />
<br />
* [http://www.openbios.org/data/coverage-fcode-suite-1.0.2/ coverage report for FCODE suite 1.0.2]<br />
* [http://www.openbios.org/data/coverage-toke-1.0.2/ coverage report for toke 1.0.2]<br />
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]<br />
<br />
<br />
== Kudos and Thanks ==<br />
<br />
<div style="margin-top:0.5em; margin-bottom:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;"><br />
The OpenBIOS FCODE Suite has been significantly enhanced to meet commercial grade requirements by [mailto:dlpaktor@netscape.net David Paktor]. Regarding to code readability and stability, he made the FCODE suite the best part of OpenBIOS. And it's probably the best FCODE development environment out there. '''Thank you, David!'''<br />
</div><br />
<br />
<br />
__NOEDITSECTION__</div>Stepanhttps://openfirmware.info/index.php?title=FCODE_suite&diff=265FCODE suite2008-07-11T23:24:39Z<p>Stepan: </p>
<hr />
<div>== What is the OpenBIOS FCODE Suite? ==<br />
<br />
OpenBIOS provides a sophisticated set of FCODE utilities: <br />
* the tokenizer '''toke'''<br />
* the detokenizer '''detok'''<br />
* and a PCI rom header utility.<br />
* a portable implementation of forth local values<br />
<br />
These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]].<br />
<br />
<br />
== Downloading the OpenBIOS FCode Suite ==<br />
<br />
'''The latest version of the OpenBIOS FCode Suite is 1.0.2 (released 2006-10-30)'''<br />
<br />
=== Source Code ===<br />
<br />
View the [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=197 Sources] online. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=113 FCode-utils 1.0.2]<br />
<br />
See the [http://www.openbios.org/viewvc/fcode-utils/ChangeLog?revision=197&root=OpenBIOS&view=markup ChangeLog] for a list of changes since 1.0.1.<br />
A hand crafted html document describes [http://www.openbios.org/data/visiblediffs/V01_versus_V2x/ some more changes].<br />
<br />
=== Documentation ===<br />
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.<br />
<br />
It is important that these be kept in the same directory, as there are some links from one file to another.<br />
<br />
The documents are User's Guides to:<br />
* the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer],<br />
* [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and<br />
* the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.<br />
<br />
Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive]<br />
<br />
There is also doxygen generated documentation available<br />
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] <br />
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]<br />
* TODO: doxygen documentation for toke 1.0.2<br />
<br />
=== Executables for three platforms ===<br />
<br />
While you can find a couple of executables here we strongly recommend that you compile the FCode toolchain from the sources above so you gain from the integration work and fixes that have been done since these executables have been created.<br />
<br />
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])<br />
<br />
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.<br />
<br />
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.<br />
<br />
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.<br />
<br />
There are separate directories for the Debug and Optim(ized Level)2 variants.<br />
<br />
Under each are sub-directories for the different platforms, within which the executable images reside.<br />
<br />
All binaries are also available in a single Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]<br />
<br />
=== Local Value Support ===<br />
<br />
Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files: <br />
* One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality]<br />
* the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility]<br />
* the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node) <br />
* and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility]. <br />
* The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.<br />
<br />
There is commentation in each one explaining how it is to be used.<br />
<br />
Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz]<br />
<br />
=== Todo ===<br />
<br />
A list of "Still To Be Done" items, excerpted from the commentation in the Sources<br />
<br />
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. <br />
<br />
This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location.<br />
<br />
== Unit-Test Suite ==<br />
<br />
=== The suite of unit-test cases ===<br />
This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.<br />
<br />
Run the unit-test cases with<br />
<br />
$ make tests<br />
<br />
=== Test Tools ===<br />
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run.<br />
<br />
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: <br />
<br />
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and <br />
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison.<br />
<br />
There is commentation in each explaining how it is used.<br />
<br />
== Unit-Test Suite Logs ==<br />
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. <br />
<br />
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.<br />
<br />
All in all, five or six file differences will be expected to be reported by AutoCompare.<br />
<br />
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-x86-cygwin/?root=OpenBIOS X86/Cygwin] platform.<br />
<br />
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-linux/?root=OpenBIOS PowerPC/Linux] platform. <br />
<br />
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-aix/?root=OpenBIOS PowerPC/AIX] platform.<br />
<br />
== Coverage Reports ==<br />
<br />
The test suite has been run using gcov/lcov to produce graphical code coverage reports.<br />
<br />
* [http://www.openbios.org/data/coverage-fcode-suite-1.0.2/ coverage report for FCODE suite 1.0.2]<br />
* [http://www.openbios.org/data/coverage-toke-1.0.2/ coverage report for toke 1.0.2]<br />
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]<br />
<br />
<br />
== Kudos and Thanks ==<br />
<br />
<div style="margin-top:0.5em; margin-bottom:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;"><br />
The OpenBIOS FCODE Suite has been significantly enhanced to meet commercial grade requirements by [mailto:dlpaktor@netscape.net|David Paktor]. Regarding to code readability and stability, he made the FCODE suite the best part of OpenBIOS. And it's probably the best FCODE development environment out there. '''Thank you, David!'''<br />
</div><br />
<br />
<br />
__NOEDITSECTION__</div>Stepanhttps://openfirmware.info/index.php?title=FCODE_suite&diff=264FCODE suite2008-07-11T12:02:01Z<p>Stepan: </p>
<hr />
<div>== What is the OpenBIOS FCODE Suite? ==<br />
<br />
OpenBIOS provides a sophisticated set of FCODE utilities: <br />
* the tokenizer '''toke'''<br />
* the detokenizer '''detok'''<br />
* and a PCI rom header utility.<br />
* a portable implementation of forth local values<br />
<br />
These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]].<br />
<br />
<br />
== Downloading the OpenBIOS FCode Suite ==<br />
<br />
'''The latest version of the OpenBIOS FCode Suite is 1.0.2 (released 2006-10-30)'''<br />
<br />
=== Source Code ===<br />
<br />
View the [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=113 Sources] online. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=113 FCode-utils 1.0.2]<br />
<br />
See the [http://www.openbios.org/viewvc/fcode-utils/ChangeLog?revision=111&root=OpenBIOS&view=markup ChangeLog] for a list of changes since 1.0.1.<br />
A hand crafted html document describes [http://www.openbios.org/data/visiblediffs/V01_versus_V2x/ some more changes].<br />
<br />
=== Documentation ===<br />
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.<br />
<br />
It is important that these be kept in the same directory, as there are some links from one file to another.<br />
<br />
The documents are User's Guides to:<br />
* the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer],<br />
* [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and<br />
* the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.<br />
<br />
Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive]<br />
<br />
There is also doxygen generated documentation available<br />
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] <br />
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]<br />
* TODO: doxygen documentation for toke 1.0.2<br />
<br />
=== Executables for three platforms ===<br />
<br />
While you can find a couple of executables here we strongly recommend that you compile the FCode toolchain from the sources above so you gain from the integration work and fixes that have been done since these executables have been created.<br />
<br />
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])<br />
<br />
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.<br />
<br />
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.<br />
<br />
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.<br />
<br />
There are separate directories for the Debug and Optim(ized Level)2 variants.<br />
<br />
Under each are sub-directories for the different platforms, within which the executable images reside.<br />
<br />
All binaries are also available in a single Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]<br />
<br />
=== Local Value Support ===<br />
<br />
Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files: <br />
* One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality]<br />
* the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility]<br />
* the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node) <br />
* and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility]. <br />
* The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.<br />
<br />
There is commentation in each one explaining how it is to be used.<br />
<br />
Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz]<br />
<br />
=== Todo ===<br />
<br />
A list of "Still To Be Done" items, excerpted from the commentation in the Sources<br />
<br />
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. <br />
<br />
This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location.<br />
<br />
== Unit-Test Suite ==<br />
<br />
=== The suite of unit-test cases ===<br />
This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.<br />
<br />
Run the unit-test cases with<br />
<br />
$ make tests<br />
<br />
=== Test Tools ===<br />
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run.<br />
<br />
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: <br />
<br />
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and <br />
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison.<br />
<br />
There is commentation in each explaining how it is used.<br />
<br />
== Unit-Test Suite Logs ==<br />
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. <br />
<br />
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.<br />
<br />
All in all, five or six file differences will be expected to be reported by AutoCompare.<br />
<br />
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-x86-cygwin/?root=OpenBIOS X86/Cygwin] platform.<br />
<br />
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-linux/?root=OpenBIOS PowerPC/Linux] platform. <br />
<br />
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-aix/?root=OpenBIOS PowerPC/AIX] platform.<br />
<br />
== Coverage Reports ==<br />
<br />
The test suite has been run using gcov/lcov to produce graphical code coverage reports.<br />
<br />
* [http://www.openbios.org/data/coverage-fcode-suite-1.0.2/ coverage report for FCODE suite 1.0.2]<br />
* [http://www.openbios.org/data/coverage-toke-1.0.2/ coverage report for toke 1.0.2]<br />
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]<br />
<br />
<br />
== Kudos and Thanks ==<br />
<br />
<div style="margin-top:0.5em; margin-bottom:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;"><br />
The OpenBIOS FCODE Suite has been significantly enhanced to meet commercial grade requirements by [mailto:dlpaktor@netscape.net|David Paktor]. Regarding to code readability and stability, he made the FCODE suite the best part of OpenBIOS. And it's probably the best FCODE development environment out there. '''Thank you, David!'''<br />
</div><br />
<br />
<br />
__NOEDITSECTION__</div>Stepanhttps://openfirmware.info/index.php?title=OpenBIOS&diff=174OpenBIOS2008-01-28T20:22:10Z<p>Stepan: </p>
<hr />
<div>= OpenBIOS - Code Releases =<br />
<br />
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.<br />
<br />
We are heading towards the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs (mostly LinuxBIOS issues nowadays).<br />
<br />
= OpenBIOS =<br />
<br />
Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface.<br />
<br />
Latest release version is: [http://www.openbios.org/viewvc/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=131 OpenBIOS 1.0alpha2] (2007-04-27)<br />
<br />
'''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok.<br />
<br />
== Kernel ==<br />
There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''.<br />
<br />
The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). <br />
<br />
'''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86.<br />
<br />
= Development Environment =<br />
<br />
== FCode Suite ==<br />
<br />
To ownload the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]].<br />
<br />
== Flashing ==<br />
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''.<br />
<br />
= Development Repository =<br />
<br />
OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below.<br />
<br />
== Anonymous access ==<br />
<br />
You can check it out as follows:<br />
$ svn co svn://openbios.org/openbios/openbios-devel<br />
<br />
if you want a specific revision: (see the Confirmed working svn revisions page)<br />
$ svn co svn://openbios.org/openbios/openbios-devel -r 4<br />
<br />
or for checking out the source code for the OpenBIOS FCode Suite:<br />
$ svn co svn://openbios.org/openbios/fcode-utils<br />
<br />
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:<br />
<br />
$ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki><br />
<br />
or<br />
<br />
$ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-utils</nowiki><br />
<br />
== Developer access ==<br />
<br />
Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository:<br />
$ svn co svn://username@openbios.org/openbios/openbios-devel<br />
<br />
Subversion has commands very similar to CVS.<br />
<br />
= Source code browsing =<br />
<br />
You can also browse the [http://www.openbios.org/viewvc/?root=OpenBIOS OpenBIOS subversion repository] online.<br />
<br />
= Snapshots =<br />
<br />
There is currently no archive of snapshots available for OpenBIOS. You can use the [http://www.openbios.org/viewvc/?root=OpenBIOS source code browser] to download a gzipped tar archive of any revision.<br />
<br />
Alternatively you can also download the [http://www.openbios.org/viewvc/openbios-devel.tar.gz?root=OpenBIOS&view=tar most current snapshot] directly.<br />
<br />
= More on Subversion =<br />
<br />
* [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online.<br />
* [http://subversion.tigris.org/ Subversion homepage]<br />
<br />
__NOEDITSECTION__</div>Stepanhttps://openfirmware.info/index.php?title=Open_Firmware&diff=369Open Firmware2007-08-13T15:27:31Z<p>Stepan: </p>
<hr />
<div>== Introduction ==<br />
<br />
In 2006 the company of Open Firmware inventor Mitch Bradley, [http://firmworks.com/ Firmworks, Inc], released their Open Firmware implementation under a BSD license. This code shares some code with SUN's OpenBOOT implementation. It supports the x86 architecture and runs, amongst others, as a LinuxBIOS payload. It is the firmware implementation on the OLPC.<br />
<br />
== Download ==<br />
<br />
The code can be browsed online with the [http://openbios.org/viewvc/?root=OpenFirmware ViewVC facility]. <br />
<br />
The repository is available through Subversion:<br />
<br />
You can check it out as follows:<br />
$ svn co svn://openbios.org/openfirmware/<br />
<br />
if you want a specific revision: <br />
$ svn co svn://openbios.org/openfirmware -r 35<br />
<br />
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:<br />
<br />
$ svn co <nowiki>https://www.openbios.org/openfirmware-svn/ openfirmware</nowiki><br />
<br />
<br />
== LinuxBIOS ==<br />
<br />
You should change openfirmware/cpu/x86/pc/biosload/config.fth:<br />
<br />
Index: config.fth<br />
===================================================================<br />
--- config.fth (revision 533)<br />
+++ config.fth (working copy)<br />
@@ -9,7 +9,7 @@<br />
\ - Image Format - Example Media - previous stage bootloader<br />
<br />
\ - (Syslinux) COM32 format - USB Key w/ FAT FS - Syslinux<br />
-create syslinux-loaded<br />
+\ create syslinux-loaded<br />
<br />
\ - Linux kernel format - USB Key w/ FAT FS - LinuxBIOS w/ stripped Linux payload <br />
\ create bzimage-loaded<br />
@@ -19,7 +19,7 @@<br />
\ create etherboot-variant \ Enable additional tweaks for Etherboot<br />
<br />
\ - ELF format (no pheader) - ROM - LinuxBIOS direct<br />
-\ create linuxbios-loaded<br />
+create linuxbios-loaded<br />
<br />
\ Load and run in qemu<br />
\ create qemu-loaded <br />
<br />
<br />
== Building ==<br />
<br />
$ cd openfirmware/cpu/x86/pc/biosload/build<br />
$ make<br />
<br />
This will result in an ELF payload oflb.elf in the current directory.<br />
<br />
<br />
<br />
__NOEDITSECTION__</div>Stepanhttps://openfirmware.info/index.php?title=Open_Firmware&diff=368Open Firmware2007-08-13T15:21:27Z<p>Stepan: </p>
<hr />
<div>== Introduction ==<br />
<br />
In 2006 the company of Open Firmware inventor Mitch Bradley, [http://firmworks.com/ Firmworks, Inc], released their Open Firmware implementation under a BSD license. This code shares some code with SUN's OpenBOOT implementation. It supports the x86 architecture and runs, amongst others, as a LinuxBIOS payload. It is the firmware implementation on the OLPC.<br />
<br />
== Download ==<br />
<br />
The code can be browsed online with the [http://openbios.org/viewvc/?root=OpenFirmware ViewVC facility]. <br />
<br />
The repository is available through Subversion:<br />
<br />
You can check it out as follows:<br />
$ svn co svn://openbios.org/openfirmware/<br />
<br />
if you want a specific revision: <br />
$ svn co svn://openbios.org/openfirmware -r 35<br />
<br />
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:<br />
<br />
$ svn co <nowiki>https://www.openbios.org/openfirmware-svn/ openfirmware</nowiki><br />
<br />
<br />
== LinuxBIOS ==<br />
<br />
You should change openfirmware/cpu/x86/pc/biosload/config.fth:<br />
<br />
Index: config.fth<br />
===================================================================<br />
--- config.fth (revision 533)<br />
+++ config.fth (working copy)<br />
@@ -9,7 +9,7 @@<br />
\ - Image Format - Example Media - previous stage bootloader<br />
<br />
\ - (Syslinux) COM32 format - USB Key w/ FAT FS - Syslinux<br />
-create syslinux-loaded<br />
+\ create syslinux-loaded<br />
<br />
\ - Linux kernel format - USB Key w/ FAT FS - LinuxBIOS w/ stripped Linux payload <br />
\ create bzimage-loaded<br />
@@ -19,7 +19,7 @@<br />
\ create etherboot-variant \ Enable additional tweaks for Etherboot<br />
<br />
\ - ELF format (no pheader) - ROM - LinuxBIOS direct<br />
-\ create linuxbios-loaded<br />
+create linuxbios-loaded<br />
<br />
\ Load and run in qemu<br />
\ create qemu-loaded <br />
<br />
<br />
== Building ==<br />
<br />
$ cd openfirmware/cpu/x86/pc/biosload/build<br />
$ make<br />
<br />
This will result in oflb.elf<br />
<br />
<br />
<br />
__NOEDITSECTION__</div>Stepanhttps://openfirmware.info/index.php?title=Open_Firmware&diff=367Open Firmware2007-08-13T15:20:44Z<p>Stepan: some initial explanation on how to build it.</p>
<hr />
<div>== Introduction ==<br />
<br />
In 2006 the company of Open Firmware inventor Mitch Bradley, [http://firmworks.com/ Firmworks, Inc], released their Open Firmware implementation under a BSD license. This code shares some code with SUN's OpenBOOT implementation. It supports the x86 architecture and runs, amongst others, as a LinuxBIOS payload. It is the firmware implementation on the OLPC.<br />
<br />
== Download ==<br />
<br />
The code can be browsed online with the [http://openbios.org/viewvc/?root=OpenFirmware ViewVC facility]. <br />
<br />
The repository is available through Subversion:<br />
<br />
You can check it out as follows:<br />
$ svn co svn://openbios.org/openfirmware/<br />
<br />
if you want a specific revision: <br />
$ svn co svn://openbios.org/openfirmware -r 35<br />
<br />
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:<br />
<br />
$ svn co <nowiki>https://www.openbios.org/openfirmware-svn/ openfirmware</nowiki><br />
<br />
<br />
== LinuxBIOS ==<br />
<br />
You should change openfirmware/cpu/x86/pc/biosload/config.fth:<br />
<br />
Index: config.fth<br />
===================================================================<br />
--- config.fth (revision 533)<br />
+++ config.fth (working copy)<br />
@@ -9,7 +9,7 @@<br />
\ - Image Format - Example Media - previous stage bootloader<br />
<br />
\ - (Syslinux) COM32 format - USB Key w/ FAT FS - Syslinux<br />
-create syslinux-loaded<br />
+\ create syslinux-loaded<br />
<br />
\ - Linux kernel format - USB Key w/ FAT FS - LinuxBIOS w/ stripped Linux payload <br />
\ create bzimage-loaded<br />
@@ -19,7 +19,7 @@<br />
\ create etherboot-variant \ Enable additional tweaks for Etherboot<br />
<br />
\ - ELF format (no pheader) - ROM - LinuxBIOS direct<br />
-\ create linuxbios-loaded<br />
+create linuxbios-loaded<br />
<br />
\ Load and run in qemu<br />
\ create qemu-loaded <br />
<br />
<br />
== Building ==<br />
<br />
$ cd /home/stepan/svn/openfirmware/cpu/x86/pc/biosload/build<br />
$ make<br />
<br />
This will result in oflb.elf<br />
<br />
<br />
<br />
__NOEDITSECTION__</div>Stepanhttps://openfirmware.info/index.php?title=On_the_Net&diff=303On the Net2007-08-12T11:00:08Z<p>Stepan: /* Other Open Source Firmware Implementations */</p>
<hr />
<div>__NOTOC__<br />
== Open Firmware Companies/Vendor support ==<br />
* [http://www.codegen.com CodeGen]<br />
* [http://www.firmworks.com FirmWorks]<br />
* [http://www.sun.com SUN]<br />
* [http://www.ibm.com IBM]<br />
* [http://www.coresystems.de coresystems GmbH]<br />
<br />
== Open Firmware Documentation ==<br />
* [http://www.firmworks.com/www/ofw.htm What is Open Firmware?]<br />
* [http://playground.sun.com/pub/1275/mejohnson/ Hardware Independant Boot Code] - - An Open Firmware description at an introductory level by Matthew Johnson<br />
* [http://www.openfirmware.org/ Open Firmware homepage]<br />
* [http://playground.sun.com/pub/1275/ The OpenFirmware IEEE 1275-1994]<br />
* [ftp://docs-pdf.sun.com/806-1379-10/806-1379-10.pdf Writing FCode 3.x Programs]<br />
* [ftp://docs-pdf.sun.com/806-1377-10/806-1377-10.pdf OpenBoot 3.x Command Reference Manual]<br />
* [ftp://docs-pdf.sun.com/806-2908-10/806-2908-10.pdf OpenBoot 3.x Quick Reference]<br />
<br />
== Forth ==<br />
* [http://www.faqs.org/faqs/computer-lang/forth-faq/ Forth FAQ]<br />
* [http://ccreweb.org/software/kforth/kforth4.html kForth] - programming examples<br />
* [http://forth.sourceforge.net/standard/dpans/index.html DPANS'94] - very interesting: annex D and E.<br />
* [http://www.jwdt.com/~paysan/gforth.html Gforth] - Forth implementation of the GNU project<br />
* [http://pfe.sourceforge.net/ PFE] - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments.<br />
* [http://www.geocities.com/simon_baldwin/packages/ vnpforth] - contains a traditional compiler, which turns Forth into standard object (.o) files<br />
* [http://zetetics.com/bj/papers/ Moving Forth] - Article on writing Forth Kernels by Brad Rodriguez<br />
* [http://www.taygeta.com/forth.html Hayes ANS compliance test] - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test.<br />
* [ftp://ftp.taygeta.com/pub/Forth/Tools/gfob-0.1.0.tar.gz gfob] - a forth source obfuscator<br />
* [http://www.phys.virginia.edu/classes/55.jvn.fall01/primer.htm Primer] - A Beginner's Guide to Forth by J.V. Noble<br />
* [http://hermantom.homeip.net/~guest/forth/ Forth engines] - written in several languages.<br />
* [http://www.ultratechnology.com/forth.htm Thoughtful Programming and Forth] - an essay by Jeff Fox.<br />
* [http://www.theforthsource.com/fp000.html Selected Forth Papers] - at theforthsource.com<br />
<br />
== Stack Machines == <br />
* [http://www-2.cs.cmu.edu/~koopman/stack_computers/ Stack Computers: the new wave] - Philip J. Koopman Jr's book on stack computers offered as pdf and html.<br />
<br />
== Booting ==<br />
* [ftp://flux.cs.utah.edu/flux/multiboot/MultiBoot.html Multiboot standard]<br />
* [http://www.gnu.org/software/grub/ GRUB - GRand Unified Bootloader]<br />
* GRUB2<br />
* [http://www.nilo.org/ Nilo] - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard.<br />
* [http://www.etherboot.org Etherboot]<br />
* Redboot<br />
<br />
== Flashing on Linux Systems ==<br />
* [http://www.linux-mtd.infradead.org/ MTD] - Memory Technology Device Subsystem for Linux<br />
* /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware) (obsolete)<br />
* [http://www.uniflash.org/ Uniflash] (nonlinux)<br />
* flashrom ([http://linuxbios.org/ LinuxBIOS])<br />
<br />
== Other Open Source Firmware Implementations ==<br />
* [http://linuxbios.org/ LinuxBIOS] - The LinuxBIOS project bootstraps systems to the point where they can run an OS kernel or any other application or bootloader from flash.<br />
* [http://sourceforge.net/projects/utcboot/ TIARA] - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?)<br />
* [http://people.redhat.com/zaitcev/linux/ Proll] - Proll is a firmware replacement for SUN JavaStations to boot Linux<br />
* [http://gnufi.blogspot.com/ GNUFI], an open source EFI implementation<br />
* [http://cygwin.com/redboot/ redboot]<br />
* SLOF<br />
* [http://perso.magic.fr/l_indien/OpenHackWare/ Open Hackware]<br />
* SUN OpenBoot<br />
* [http://www.humboldt.co.uk/gbios.html GBIOS] - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus. (dead?)<br />
* ...<br />
<br />
== Virtual Machines and Emulation ==<br />
* [http://www.qemu.com/ QEMU]<br />
* [http://www.cl.cam.ac.uk/research/srg/netos/xen/ XEN] Virtualization<br />
* [http://bochs.sourceforge.net/ Bochs] - portable open source IA-32 (x86) PC emulator<br />
* [http://www.dosemu.org/ DOSemu] - DOS Emulation for Linux<br />
* Hypervisor<br />
* ...</div>Stepanhttps://openfirmware.info/index.php?title=On_the_Net&diff=302On the Net2007-08-12T10:53:45Z<p>Stepan: /* Open Firmware Companies/Vendor support */</p>
<hr />
<div>__NOTOC__<br />
== Open Firmware Companies/Vendor support ==<br />
* [http://www.codegen.com CodeGen]<br />
* [http://www.firmworks.com FirmWorks]<br />
* [http://www.sun.com SUN]<br />
* [http://www.ibm.com IBM]<br />
* [http://www.coresystems.de coresystems GmbH]<br />
<br />
== Open Firmware Documentation ==<br />
* [http://www.firmworks.com/www/ofw.htm What is Open Firmware?]<br />
* [http://playground.sun.com/pub/1275/mejohnson/ Hardware Independant Boot Code] - - An Open Firmware description at an introductory level by Matthew Johnson<br />
* [http://www.openfirmware.org/ Open Firmware homepage]<br />
* [http://playground.sun.com/pub/1275/ The OpenFirmware IEEE 1275-1994]<br />
* [ftp://docs-pdf.sun.com/806-1379-10/806-1379-10.pdf Writing FCode 3.x Programs]<br />
* [ftp://docs-pdf.sun.com/806-1377-10/806-1377-10.pdf OpenBoot 3.x Command Reference Manual]<br />
* [ftp://docs-pdf.sun.com/806-2908-10/806-2908-10.pdf OpenBoot 3.x Quick Reference]<br />
<br />
== Forth ==<br />
* [http://www.faqs.org/faqs/computer-lang/forth-faq/ Forth FAQ]<br />
* [http://ccreweb.org/software/kforth/kforth4.html kForth] - programming examples<br />
* [http://forth.sourceforge.net/standard/dpans/index.html DPANS'94] - very interesting: annex D and E.<br />
* [http://www.jwdt.com/~paysan/gforth.html Gforth] - Forth implementation of the GNU project<br />
* [http://pfe.sourceforge.net/ PFE] - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments.<br />
* [http://www.geocities.com/simon_baldwin/packages/ vnpforth] - contains a traditional compiler, which turns Forth into standard object (.o) files<br />
* [http://zetetics.com/bj/papers/ Moving Forth] - Article on writing Forth Kernels by Brad Rodriguez<br />
* [http://www.taygeta.com/forth.html Hayes ANS compliance test] - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test.<br />
* [ftp://ftp.taygeta.com/pub/Forth/Tools/gfob-0.1.0.tar.gz gfob] - a forth source obfuscator<br />
* [http://www.phys.virginia.edu/classes/55.jvn.fall01/primer.htm Primer] - A Beginner's Guide to Forth by J.V. Noble<br />
* [http://hermantom.homeip.net/~guest/forth/ Forth engines] - written in several languages.<br />
* [http://www.ultratechnology.com/forth.htm Thoughtful Programming and Forth] - an essay by Jeff Fox.<br />
* [http://www.theforthsource.com/fp000.html Selected Forth Papers] - at theforthsource.com<br />
<br />
== Stack Machines == <br />
* [http://www-2.cs.cmu.edu/~koopman/stack_computers/ Stack Computers: the new wave] - Philip J. Koopman Jr's book on stack computers offered as pdf and html.<br />
<br />
== Booting ==<br />
* [ftp://flux.cs.utah.edu/flux/multiboot/MultiBoot.html Multiboot standard]<br />
* [http://www.gnu.org/software/grub/ GRUB - GRand Unified Bootloader]<br />
* GRUB2<br />
* [http://www.nilo.org/ Nilo] - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard.<br />
* [http://www.etherboot.org Etherboot]<br />
* Redboot<br />
<br />
== Flashing on Linux Systems ==<br />
* [http://www.linux-mtd.infradead.org/ MTD] - Memory Technology Device Subsystem for Linux<br />
* /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware) (obsolete)<br />
* [http://www.uniflash.org/ Uniflash] (nonlinux)<br />
* flashrom ([http://linuxbios.org/ LinuxBIOS])<br />
<br />
== Other Open Source Firmware Implementations ==<br />
* [http://linuxbios.org/ LinuxBIOS] - The LinuxBIOS project bootstraps systems to the point where they can run an OS kernel or any other application or bootloader from flash.<br />
* [http://sourceforge.net/projects/utcboot/ TIARA] - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?)<br />
* [http://people.redhat.com/zaitcev/linux/ Proll] - Proll is a firmware replacement for SUN JavaStations to boot Linux<br />
* [http://gnufi.blogspot.com/ GNUFI], an open source EFI implementation<br />
* redboot<br />
* SLOF<br />
* Open Hackware<br />
* SUN OpenBoot<br />
* GBIOS - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus. (dead?)<br />
* ...<br />
<br />
== Virtual Machines and Emulation ==<br />
* [http://www.qemu.com/ QEMU]<br />
* [http://www.cl.cam.ac.uk/research/srg/netos/xen/ XEN] Virtualization<br />
* [http://bochs.sourceforge.net/ Bochs] - portable open source IA-32 (x86) PC emulator<br />
* [http://www.dosemu.org/ DOSemu] - DOS Emulation for Linux<br />
* Hypervisor<br />
* ...</div>Stepanhttps://openfirmware.info/index.php?title=Forth/FCode&diff=282Forth/FCode2007-08-12T10:52:57Z<p>Stepan: /* Why bytecode? */</p>
<hr />
<div>__NOTOC__<br />
= What is Forth? =<br />
<br />
From the [http://www.faqs.org/faqs/computer-lang/forth-faq/part1/ Forth FAQ]: Forth is a stack-based, extensible language without type-checking. It is probably best known for its "reverse Polish" (postfix) arithmetic notation, familiar to users of Hewlett-Packard calculators: to add two numbers in Forth, you would type 3 5 + instead of 3+5. The fundamental program unit in Forth is the "word": a named data item, subroutine, or operator. Programming in Forth consists of defining new words in terms of existing ones.<br />
<br />
= Why and where is Forth used? =<br />
<br />
Although invented in 1970, Forth became widely known with the advent of personal computers, where its high performance and economy of memory were attractive. These advantages still make Forth popular in embedded microcontroller systems, in locations ranging from the Space Shuttle to the bar-code reader used by your Federal Express driver. Forth's interactive nature streamlines the test and development of new hardware. Incremental development, a fast program-debug cycle, full interactive access to any level of the program, and the ability to work at a high "level of abstraction," all contribute to Forth's reputation for very high programmer productivity. These, plus the flexibility and malleability of the language, are the reasons most cited for choosing Forth for embedded systems. Find more information [http://www.complang.tuwien.ac.at/forth/faq/why-forth here].<br />
<br />
= FCode =<br />
<br />
FCode is a Forth dialect compliant to ANS Forth, that is available in two different forms: source and bytecode. FCode bytecode is the compiled form of FCode source.<br />
<br />
= Why bytecode? =<br />
<br />
Bytecode is small and efficient. And an evaluator (bytecode virtual machine) is almost trivial to implement. For example, putting a 1 to the stack only takes one byte in an FCode bytecode binary. This is especially valuable on combined system or expansion hardware roms where the available space is limited.<br />
<br />
__NOEDITSECTION__</div>Stepanhttps://openfirmware.info/index.php?title=FCODE_suite&diff=263FCODE suite2007-08-12T10:51:55Z<p>Stepan: /* Coverage Reports */</p>
<hr />
<div>== What is the OpenBIOS FCODE Suite? ==<br />
<br />
OpenBIOS provides a sophisticated set of FCODE utilities: <br />
* the tokenizer '''toke'''<br />
* the detokenizer '''detok'''<br />
* and a PCI rom header utility.<br />
* a portable implementation of forth local values<br />
<br />
These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]].<br />
<br />
== Downloading the OpenBIOS FCode Suite ==<br />
<br />
'''The latest version of the OpenBIOS FCode Suite is 1.0.2 (released 2006-10-30)'''<br />
=== Source Code ===<br />
<br />
View the [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=113 Sources] online. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=113 FCode-utils 1.0.2]<br />
<br />
See the [http://www.openbios.org/viewvc/fcode-utils/ChangeLog?revision=111&root=OpenBIOS&view=markup ChangeLog] for a list of changes since 1.0.1.<br />
A hand crafted html document describes [http://www.openbios.org/data/visiblediffs/V01_versus_V2x/ some more changes].<br />
<br />
=== Documentation ===<br />
There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support.<br />
<br />
It is important that these be kept in the same directory, as there are some links from one file to another.<br />
<br />
The documents are User's Guides to:<br />
* the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer],<br />
* [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and<br />
* the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document.<br />
<br />
Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive]<br />
<br />
There is also doxygen generated documentation available<br />
* [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] <br />
* [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0]<br />
* TODO: doxygen documentation for toke 1.0.2<br />
<br />
=== Executables for three platforms ===<br />
<br />
While you can find a couple of executables here we strongly recommend that you compile the FCode toolchain from the sources above so you gain from the integration work and fixes that have been done since these executables have been created.<br />
<br />
There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries])<br />
<br />
There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC.<br />
<br />
There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping.<br />
<br />
And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension.<br />
<br />
There are separate directories for the Debug and Optim(ized Level)2 variants.<br />
<br />
Under each are sub-directories for the different platforms, within which the executable images reside.<br />
<br />
All binaries are also available in a single Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2]<br />
<br />
=== Local Value Support ===<br />
<br />
Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files: <br />
* One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality]<br />
* the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility]<br />
* the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node) <br />
* and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility]. <br />
* The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments.<br />
<br />
There is commentation in each one explaining how it is to be used.<br />
<br />
Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz]<br />
<br />
=== Todo ===<br />
<br />
A list of "Still To Be Done" items, excerpted from the commentation in the Sources<br />
<br />
The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. <br />
<br />
This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location.<br />
<br />
== Unit-Test Suite ==<br />
<br />
=== The suite of unit-test cases ===<br />
This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories.<br />
<br />
Run the unit-test cases with<br />
<br />
$ make tests<br />
<br />
=== Test Tools ===<br />
The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run.<br />
<br />
The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: <br />
<br />
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and <br />
* [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison.<br />
<br />
There is commentation in each explaining how it is used.<br />
<br />
== Unit-Test Suite Logs ==<br />
These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. <br />
<br />
Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others.<br />
<br />
All in all, five or six file differences will be expected to be reported by AutoCompare.<br />
<br />
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-x86-cygwin/?root=OpenBIOS X86/Cygwin] platform.<br />
<br />
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-linux/?root=OpenBIOS PowerPC/Linux] platform. <br />
<br />
* The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-aix/?root=OpenBIOS PowerPC/AIX] platform.<br />
<br />
== Coverage Reports ==<br />
<br />
The test suite has been run using gcov/lcov to produce graphical code coverage reports.<br />
<br />
* [http://www.openbios.org/data/coverage-fcode-suite-1.0.2/ coverage report for FCODE suite 1.0.2]<br />
* [http://www.openbios.org/data/coverage-toke-1.0.2/ coverage report for toke 1.0.2]<br />
* [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0]<br />
<br />
__NOEDITSECTION__</div>Stepanhttps://openfirmware.info/index.php?title=OpenBIOS&diff=173OpenBIOS2007-08-12T10:50:49Z<p>Stepan: /* More on Subversion */</p>
<hr />
<div>= OpenBIOS - Code Releases =<br />
<br />
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.<br />
<br />
We are heading towards the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs (mostly LinuxBIOS issues nowadays).<br />
<br />
= OpenBIOS =<br />
<br />
Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface.<br />
<br />
Latest release version is: [http://www.openbios.org/viewvc/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=131 OpenBIOS 1.0alpha2] (2007-04-27)<br />
<br />
'''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok.<br />
<br />
== Kernel ==<br />
There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''.<br />
<br />
The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). <br />
<br />
'''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86.<br />
<br />
= Development Environment =<br />
<br />
== FCode Suite ==<br />
<br />
To ownload the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]].<br />
<br />
== Flashing ==<br />
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''.<br />
<br />
= Development Repository =<br />
<br />
OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below.<br />
<br />
== Anonymous access ==<br />
<br />
You can check it out as follows:<br />
$ svn co svn://openbios.org/openbios/openbios-devel<br />
<br />
if you want a specific revision: (see the Confirmed working svn revisions page)<br />
$ svn co svn://openbios.org/openbios/openbios-devel -r 4<br />
<br />
or for checking out the source code for the OpenBIOS FCode Suite:<br />
$ svn co svn://openbios.org/openbios/fcode-suite<br />
<br />
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:<br />
<br />
$ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki><br />
<br />
or<br />
<br />
$ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-suite</nowiki><br />
<br />
== Developer access ==<br />
<br />
Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository:<br />
$ svn co svn://username@openbios.org/openbios/openbios-devel<br />
<br />
Subversion has commands very similar to CVS.<br />
<br />
= Source code browsing =<br />
<br />
You can also browse the [http://www.openbios.org/viewvc/?root=OpenBIOS OpenBIOS subversion repository] online.<br />
<br />
= Snapshots =<br />
<br />
There is currently no archive of snapshots available for OpenBIOS. You can use the [http://www.openbios.org/viewvc/?root=OpenBIOS source code browser] to download a gzipped tar archive of any revision.<br />
<br />
Alternatively you can also download the [http://www.openbios.org/viewvc/openbios-devel.tar.gz?root=OpenBIOS&view=tar most current snapshot] directly.<br />
<br />
= More on Subversion =<br />
<br />
* [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online.<br />
* [http://subversion.tigris.org/ Subversion homepage]<br />
<br />
__NOEDITSECTION__</div>Stepanhttps://openfirmware.info/index.php?title=OpenBOOT&diff=363OpenBOOT2007-08-12T10:50:35Z<p>Stepan: /* Download */</p>
<hr />
<div>== Introduction ==<br />
<br />
In 2006 [http://sun.com/ Sun Microsystems] released their Open Firmware implementation OpenBoot under a BSL like license. Their code supports the sun4v architecture running on a hypervisor.<br />
<br />
== Download ==<br />
<br />
The code can be browsed online with the [http://openbios.org/viewvc/?root=OpenBOOT ViewVC facility]. <br />
<br />
The repository is available through Subversion:<br />
<br />
You can check it out as follows:<br />
$ svn co svn://openbios.org/openboot/<br />
<br />
if you want a specific revision: <br />
$ svn co svn://openbios.org/openboot -r 1<br />
<br />
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:<br />
<br />
$ svn co <nowiki>https://www.openbios.org/openboot-svn/ openboot</nowiki><br />
<br />
__NOEDITSECTION__</div>Stepanhttps://openfirmware.info/index.php?title=SmartFirmware&diff=358SmartFirmware2007-08-12T10:50:23Z<p>Stepan: /* Download */</p>
<hr />
<div>== Introduction ==<br />
<br />
In 2006 [http://codegen.com/ CodeGen, Inc] released their Open Firmware implementation under a BSL like license. Their code, entirely written in ANSI C, contains the following components:<br />
<br />
* [http://www.codegen.com/SmartFirmware/index.html SmartFirmwareâ˘]: an ANSI C implementation of the IEEE-1275 Open Firmware boot firmware standard. Dramatically reduce and ease your firmware development and system bring-up times and costs.<br />
* An [http://www.codegen.com/SmartFirmware/ccfcode.html ANSI C compiler] that generates Open Firmware compatible Forth/Fcode makes it easy to develop drivers for PCI cards and PMC modules.<br />
<br />
== Download ==<br />
<br />
The code can be browsed online with the [http://openbios.org/viewvc/?root=SmartFirmware ViewVC facility]. <br />
<br />
The repository is available through Subversion:<br />
<br />
You can check it out as follows:<br />
$ svn co svn://openbios.org/smartfirmware/<br />
<br />
if you want a specific revision: <br />
$ svn co svn://openbios.org/smartfirmware -r 1<br />
<br />
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:<br />
<br />
$ svn co <nowiki>https://www.openbios.org/smartfirmware-svn/ smartfirmware</nowiki><br />
<br />
__NOEDITSECTION__</div>Stepanhttps://openfirmware.info/index.php?title=FlashRom&diff=335FlashRom2007-08-12T10:49:25Z<p>Stepan: /* Flash Updates in Linux */</p>
<hr />
<div>{{stub}}<br />
__NOTOC__<br />
<br />
= Flash Updates in Linux =<br />
<br />
Formerly OpenBIOS provided its own flashing facility implemented as a device driver called '''/dev/bios'''. One big disadvantage of '''/dev/bios''' was that it needed to be recompiled for every minor kernel update.<br />
<br />
Ollie Lho, back when working at SIS, started a new effort which he called '''flash_and_burn'''. This utility became part of the [http://linuxbios.org LinuxBIOS project] and evolved to work with non-SIS chipsets.<br />
<br />
[[User:Stepan|Stefan Reinauer]] added a lot of new features to Ollie's utility and renamed it to '''flashrom'''. This utility still lacks some features the old '''/dev/bios''' driver was having, but it can easily be used from userspace without recompiling the kernel.<br />
<br />
You can download the latest version of '''flashrom''' [http://www.openbios.org/viewvc/trunk/util/flashrom.tar.gz?view=tar from the LinuxBIOS svn repository]</div>Stepanhttps://openfirmware.info/index.php?title=OpenBIOS&diff=172OpenBIOS2007-08-12T10:48:36Z<p>Stepan: /* FCode Suite */</p>
<hr />
<div>= OpenBIOS - Code Releases =<br />
<br />
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.<br />
<br />
We are heading towards the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs (mostly LinuxBIOS issues nowadays).<br />
<br />
= OpenBIOS =<br />
<br />
Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface.<br />
<br />
Latest release version is: [http://www.openbios.org/viewvc/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=131 OpenBIOS 1.0alpha2] (2007-04-27)<br />
<br />
'''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok.<br />
<br />
== Kernel ==<br />
There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''.<br />
<br />
The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). <br />
<br />
'''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86.<br />
<br />
= Development Environment =<br />
<br />
== FCode Suite ==<br />
<br />
To ownload the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]].<br />
<br />
== Flashing ==<br />
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''.<br />
<br />
= Development Repository =<br />
<br />
OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below.<br />
<br />
== Anonymous access ==<br />
<br />
You can check it out as follows:<br />
$ svn co svn://openbios.org/openbios/openbios-devel<br />
<br />
if you want a specific revision: (see the Confirmed working svn revisions page)<br />
$ svn co svn://openbios.org/openbios/openbios-devel -r 4<br />
<br />
or for checking out the source code for the OpenBIOS FCode Suite:<br />
$ svn co svn://openbios.org/openbios/fcode-suite<br />
<br />
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:<br />
<br />
$ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki><br />
<br />
or<br />
<br />
$ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-suite</nowiki><br />
<br />
== Developer access ==<br />
<br />
Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository:<br />
$ svn co svn://username@openbios.org/openbios/openbios-devel<br />
<br />
Subversion has commands very similar to CVS.<br />
<br />
= Source code browsing =<br />
<br />
You can also browse the [http://www.openbios.org/viewvc/?root=OpenBIOS OpenBIOS subversion repository] online.<br />
<br />
= Snapshots =<br />
<br />
There is currently no archive of snapshots available for OpenBIOS. You can use the [http://www.openbios.org/viewvc/?root=OpenBIOS source code browser] to download a gzipped tar archive of any revision.<br />
<br />
Alternatively you can also download the [http://www.openbios.org/viewvc/openbios-devel.tar.gz?root=OpenBIOS&view=tar most current snapshot] directly.<br />
<br />
= More on Subversion =<br />
<br />
* [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online.<br />
* [http://subversion.tigris.org/ Subversion homepage]</div>Stepanhttps://openfirmware.info/index.php?title=Open_Firmware&diff=366Open Firmware2007-08-12T10:46:37Z<p>Stepan: /* Download */</p>
<hr />
<div>== Introduction ==<br />
<br />
In 2006 the company of Open Firmware inventor Mitch Bradley, [http://firmworks.com/ Firmworks, Inc], released their Open Firmware implementation under a BSD license. This code shares some code with SUN's OpenBOOT implementation. It supports the x86 architecture and runs, amongst others, as a LinuxBIOS payload. It is the firmware implementation on the OLPC.<br />
<br />
== Download ==<br />
<br />
The code can be browsed online with the [http://openbios.org/viewvc/?root=OpenFirmware ViewVC facility]. <br />
<br />
The repository is available through Subversion:<br />
<br />
You can check it out as follows:<br />
$ svn co svn://openbios.org/openfirmware/<br />
<br />
if you want a specific revision: <br />
$ svn co svn://openbios.org/openfirmware -r 35<br />
<br />
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:<br />
<br />
$ svn co <nowiki>https://www.openbios.org/openfirmware-svn/ openfirmware</nowiki><br />
<br />
__NOEDITSECTION__</div>Stepanhttps://openfirmware.info/index.php?title=Licensing&diff=111Licensing2007-08-12T10:46:22Z<p>Stepan: /* View the license */</p>
<hr />
<div>= OpenBIOS Licensing =<br />
<br />
OpenBIOS is licensed under the GNU General Public License v2. If you adapt OpenBIOS to your needs, please contact us with your changes so that you can contribute your changes back to the community.<br />
<br />
= Why GPL? =<br />
We see the GPL giving OpenBIOS a big competitive advantage over other firmware solutions:<br />
<br />
* As a hardware vendor you get the warranty that nobody hiddenly improves the code you have been contributing without giving those improvements back. Thus, GPL guarantees that you keep control over your work and contributions.<br />
* End users / customers get great benefit from OpenBIOS being GPL licensed: The GPL insures customers that a given platform will act like all other OpenBIOS platforms. BSD is a negative marketing point where BIOS is concerned.<br />
<br />
= View the license =<br />
Have a look at the [[About:License|complete license]]<br />
<br />
__NOEDITSECTION__</div>Stepanhttps://openfirmware.info/index.php?title=Contact_us&diff=90Contact us2007-08-12T10:46:01Z<p>Stepan: /* Project Maintainer */</p>
<hr />
<div>== The OpenBIOS Project ==<br />
The OpenBIOS project coordinates all free and open source implementations of the Open Firmware standard. Yet our development team is rather small. You are welcome to contact us, if you<br />
<br />
* want to help developing drivers, support for new systems, write documentation.<br />
* need help porting Open Firmware to your custom hardware and are looking for specialists to get it done.<br />
<br />
Of course we appreciate any help, hints, patches, comments, etc.<br />
<br />
NOTE: Please read our [[Project Statement]].<br />
<br />
== Mailinglist ==<br />
Development and other things about OpenBIOS are discussed on the [[mailinglist|OpenBIOS mailing list]]. If you want to contribute, ask questions, get information or have some ideas, please subscribe to this list. It's currently very low traffic. If you have patches, feel free to send them to the list, too. Please note: To keep the amount of spam as low as possible, only subscribed users are allowed to post to the list.<br />
<br />
== Internet Relay Chat ==<br />
Currently most of the discussion moved over to Internet Relay Chat (IRC). You can find us on [http://www.freenode.net/ irc.freenode.net] in #OpenBIOS. Most people are in CET timezone, so don't give up when this channels seems very quiet for some time.<br />
<br />
Here you have the chance to talk to people being involved or interested in this project. Most of the discussion is tech talk. There's no need to ask whether you are allowed to ask. Questions on OpenBIOS, LinuxBIOS, firmware and related topics are welcome.<br />
<br />
== Project Maintainer ==<br />
<br />
The OpenBIOS Project is maintained by [[User:Stepan|Stefan Reinauer]] from [http://www.coresystems.de coresystems GmbH]. If you have any questions regarding the project that are beyond the scope of the mailing list, please contact [[User:Stepan|Stefan]]<br />
<br />
__NOTOC__<br />
__NOEDITSECTION__</div>Stepanhttps://openfirmware.info/index.php?title=Welcome_to_OpenBIOS&diff=39Welcome to OpenBIOS2007-04-26T22:30:00Z<p>Stepan: </p>
<hr />
<div><div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;"><br />
The '''OpenBIOS''' project provides you with most free and open source Open Firmware implementations available. Here you find several implementations of IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. <br />
<br />
Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. <br />
<br />
It is Open Firmware's goal to work on all common platforms, like x86, AMD64, <nowiki>PowerPC</nowiki>, ARM and Mips. With its flexible and modular design, Open Firmware targets servers, workstations and embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably.<br />
<br />
Open Firmware is found on many servers and workstations and there are several commercial implementations from [[OpenBOOT|SUN]], [[Open Firmware|Firmworks]], [[SmartFirmware|CodeGen]], Apple, IBM and others.<br />
<br />
In most cases, the Open Firmware implementations provided on this site rely on an additional low-level firmware for hardware initialization, such as [http://linuxbios.org/ LinuxBIOS] or [http://u-boot.sourceforge.net/ U-Boot].<br />
</div><br />
<br />
{| cellspacing=5 cellpadding=5 border=0 valign="top" width=100%<br />
|-<br />
|style="vertical-align:top"|<br />
== Download ==<br />
<br />
Get the latest version of OpenBIOS. See the [[OpenBIOS|development download page]]. Have a look at the Implementations section on the left side.<br />
<br />
== Contact ==<br />
<br />
The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page.<br />
<br />
== Credits ==<br />
<br />
Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc.<br />
<br />
|style="vertical-align:top"|<br />
== News ==<br />
<small><br />
'''FCODE suite 1.0.2 released''' (2006-10-30)<br />
<br />
[mailto:dlpaktor@netscape.net David Paktor] added tracing support to the [[FCODE suite|OpenBIOS FCODE suite]].<br />
<br />
'''LinuxBIOS Symposium 2006''' (2006-10-01)<br />
<br />
The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH].<br />
<br />
'''FCODE suite 1.0.1 available''' (2006-09-21)<br />
<br />
[mailto:dlpaktor@netscape.net David Paktor], when he was with the IBM Corporation, contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code.<br />
<br />
'''SUN released OpenBOOT source code''' (2006-09-06)<br />
<br />
[http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB).<br />
<br />
[[News|[older news]]]<br />
</small><br />
|}<br />
__NOTOC__ <br />
__NOEDITSECTION__</div>Stepanhttps://openfirmware.info/index.php?title=OpenBIOS&diff=171OpenBIOS2007-04-26T22:27:59Z<p>Stepan: /* OpenBIOS - Code Releases */</p>
<hr />
<div>= OpenBIOS - Code Releases =<br />
<br />
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.<br />
<br />
We are heading towards the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs (mostly LinuxBIOS issues nowadays).<br />
<br />
= OpenBIOS =<br />
<br />
Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface.<br />
<br />
Latest release version is: [http://www.openbios.org/viewvc/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=131 OpenBIOS 1.0alpha2] (2007-04-27)<br />
<br />
'''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok.<br />
<br />
== Kernel ==<br />
There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''.<br />
<br />
The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). <br />
<br />
'''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86.<br />
<br />
= Development Environment =<br />
<br />
== FCode Suite ==<br />
<br />
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.<br />
<br />
Go to the [[FCODE suite|FCode Suite page]] (2006-09-21)<br />
<br />
=== detok ===<br />
Download the latest release of detok, the OpenBIOS FCode detokenizer.<br />
<br />
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15)<br />
<br />
=== toke ===<br />
Download the latest release of toke, the OpenBIOS FCode tokenizer.<br />
<br />
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15)<br />
<br />
=== romheaders ===<br />
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now.<br />
<br />
== Flashing ==<br />
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''.<br />
<br />
= Development Repository =<br />
<br />
OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below.<br />
<br />
== Anonymous access ==<br />
<br />
You can check it out as follows:<br />
$ svn co svn://openbios.org/openbios/openbios-devel<br />
<br />
if you want a specific revision: (see the Confirmed working svn revisions page)<br />
$ svn co svn://openbios.org/openbios/openbios-devel -r 4<br />
<br />
or for checking out the source code for the OpenBIOS FCode Suite:<br />
$ svn co svn://openbios.org/openbios/fcode-suite<br />
<br />
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:<br />
<br />
$ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki><br />
<br />
or<br />
<br />
$ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-suite</nowiki><br />
<br />
== Developer access ==<br />
<br />
Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository:<br />
$ svn co svn://username@openbios.org/openbios/openbios-devel<br />
<br />
Subversion has commands very similar to CVS.<br />
<br />
= Source code browsing =<br />
<br />
You can also browse the [http://www.openbios.org/viewvc/?root=OpenBIOS OpenBIOS subversion repository] online.<br />
<br />
= Snapshots =<br />
<br />
There is currently no archive of snapshots available for OpenBIOS. You can use the [http://www.openbios.org/viewvc/?root=OpenBIOS source code browser] to download a gzipped tar archive of any revision.<br />
<br />
Alternatively you can also download the [http://www.openbios.org/viewvc/openbios-devel.tar.gz?root=OpenBIOS&view=tar most current snapshot] directly.<br />
<br />
= More on Subversion =<br />
<br />
* [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online.<br />
* [http://subversion.tigris.org/ Subversion homepage]</div>Stepanhttps://openfirmware.info/index.php?title=OpenBIOS&diff=170OpenBIOS2007-04-26T22:27:24Z<p>Stepan: /* OpenBIOS */</p>
<hr />
<div>= OpenBIOS - Code Releases =<br />
<br />
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.<br />
<br />
We are heading towards the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs (mostly LinuxBIOS issues nowadays).<br />
<br />
'''Note:''' The OpenBIOS releases on this page are rather old. It is suggested that you have a look at the [[#Snapshots|snapshots section]] to get a development snapshot of OpenBIOS. You might also want to have a look at the other Open Firmware implementations in the Implementations section on the left side of this page.<br />
<br />
= OpenBIOS =<br />
<br />
Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface.<br />
<br />
Latest release version is: [http://www.openbios.org/viewvc/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=131 OpenBIOS 1.0alpha2] (2007-04-27)<br />
<br />
'''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok.<br />
<br />
== Kernel ==<br />
There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''.<br />
<br />
The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). <br />
<br />
'''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86.<br />
<br />
= Development Environment =<br />
<br />
== FCode Suite ==<br />
<br />
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.<br />
<br />
Go to the [[FCODE suite|FCode Suite page]] (2006-09-21)<br />
<br />
=== detok ===<br />
Download the latest release of detok, the OpenBIOS FCode detokenizer.<br />
<br />
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15)<br />
<br />
=== toke ===<br />
Download the latest release of toke, the OpenBIOS FCode tokenizer.<br />
<br />
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15)<br />
<br />
=== romheaders ===<br />
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now.<br />
<br />
== Flashing ==<br />
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''.<br />
<br />
= Development Repository =<br />
<br />
OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below.<br />
<br />
== Anonymous access ==<br />
<br />
You can check it out as follows:<br />
$ svn co svn://openbios.org/openbios/openbios-devel<br />
<br />
if you want a specific revision: (see the Confirmed working svn revisions page)<br />
$ svn co svn://openbios.org/openbios/openbios-devel -r 4<br />
<br />
or for checking out the source code for the OpenBIOS FCode Suite:<br />
$ svn co svn://openbios.org/openbios/fcode-suite<br />
<br />
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:<br />
<br />
$ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki><br />
<br />
or<br />
<br />
$ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-suite</nowiki><br />
<br />
== Developer access ==<br />
<br />
Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository:<br />
$ svn co svn://username@openbios.org/openbios/openbios-devel<br />
<br />
Subversion has commands very similar to CVS.<br />
<br />
= Source code browsing =<br />
<br />
You can also browse the [http://www.openbios.org/viewvc/?root=OpenBIOS OpenBIOS subversion repository] online.<br />
<br />
= Snapshots =<br />
<br />
There is currently no archive of snapshots available for OpenBIOS. You can use the [http://www.openbios.org/viewvc/?root=OpenBIOS source code browser] to download a gzipped tar archive of any revision.<br />
<br />
Alternatively you can also download the [http://www.openbios.org/viewvc/openbios-devel.tar.gz?root=OpenBIOS&view=tar most current snapshot] directly.<br />
<br />
= More on Subversion =<br />
<br />
* [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online.<br />
* [http://subversion.tigris.org/ Subversion homepage]</div>Stepanhttps://openfirmware.info/index.php?title=OpenBIOS&diff=169OpenBIOS2007-04-26T22:25:47Z<p>Stepan: /* Development Repository */</p>
<hr />
<div>= OpenBIOS - Code Releases =<br />
<br />
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.<br />
<br />
We are heading towards the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs (mostly LinuxBIOS issues nowadays).<br />
<br />
'''Note:''' The OpenBIOS releases on this page are rather old. It is suggested that you have a look at the [[#Snapshots|snapshots section]] to get a development snapshot of OpenBIOS. You might also want to have a look at the other Open Firmware implementations in the Implementations section on the left side of this page.<br />
<br />
= OpenBIOS =<br />
<br />
Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface.<br />
<br />
Latest release version is: [http://www.openbios.org/viewvc/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha2] (2007-04-27)<br />
<br />
'''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok.<br />
<br />
== Kernel ==<br />
There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''.<br />
<br />
The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). <br />
<br />
'''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86.<br />
<br />
= Development Environment =<br />
<br />
== FCode Suite ==<br />
<br />
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.<br />
<br />
Go to the [[FCODE suite|FCode Suite page]] (2006-09-21)<br />
<br />
=== detok ===<br />
Download the latest release of detok, the OpenBIOS FCode detokenizer.<br />
<br />
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15)<br />
<br />
=== toke ===<br />
Download the latest release of toke, the OpenBIOS FCode tokenizer.<br />
<br />
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15)<br />
<br />
=== romheaders ===<br />
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now.<br />
<br />
== Flashing ==<br />
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''.<br />
<br />
= Development Repository =<br />
<br />
OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below.<br />
<br />
== Anonymous access ==<br />
<br />
You can check it out as follows:<br />
$ svn co svn://openbios.org/openbios/openbios-devel<br />
<br />
if you want a specific revision: (see the Confirmed working svn revisions page)<br />
$ svn co svn://openbios.org/openbios/openbios-devel -r 4<br />
<br />
or for checking out the source code for the OpenBIOS FCode Suite:<br />
$ svn co svn://openbios.org/openbios/fcode-suite<br />
<br />
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:<br />
<br />
$ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki><br />
<br />
or<br />
<br />
$ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-suite</nowiki><br />
<br />
== Developer access ==<br />
<br />
Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository:<br />
$ svn co svn://username@openbios.org/openbios/openbios-devel<br />
<br />
Subversion has commands very similar to CVS.<br />
<br />
= Source code browsing =<br />
<br />
You can also browse the [http://www.openbios.org/viewvc/?root=OpenBIOS OpenBIOS subversion repository] online.<br />
<br />
= Snapshots =<br />
<br />
There is currently no archive of snapshots available for OpenBIOS. You can use the [http://www.openbios.org/viewvc/?root=OpenBIOS source code browser] to download a gzipped tar archive of any revision.<br />
<br />
Alternatively you can also download the [http://www.openbios.org/viewvc/openbios-devel.tar.gz?root=OpenBIOS&view=tar most current snapshot] directly.<br />
<br />
= More on Subversion =<br />
<br />
* [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online.<br />
* [http://subversion.tigris.org/ Subversion homepage]</div>Stepanhttps://openfirmware.info/index.php?title=OpenBIOS&diff=168OpenBIOS2007-04-26T22:24:19Z<p>Stepan: /* OpenBIOS */</p>
<hr />
<div>= OpenBIOS - Code Releases =<br />
<br />
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.<br />
<br />
We are heading towards the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs (mostly LinuxBIOS issues nowadays).<br />
<br />
'''Note:''' The OpenBIOS releases on this page are rather old. It is suggested that you have a look at the [[#Snapshots|snapshots section]] to get a development snapshot of OpenBIOS. You might also want to have a look at the other Open Firmware implementations in the Implementations section on the left side of this page.<br />
<br />
= OpenBIOS =<br />
<br />
Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface.<br />
<br />
Latest release version is: [http://www.openbios.org/viewvc/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha2] (2007-04-27)<br />
<br />
'''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok.<br />
<br />
== Kernel ==<br />
There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''.<br />
<br />
The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). <br />
<br />
'''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86.<br />
<br />
= Development Environment =<br />
<br />
== FCode Suite ==<br />
<br />
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.<br />
<br />
Go to the [[FCODE suite|FCode Suite page]] (2006-09-21)<br />
<br />
=== detok ===<br />
Download the latest release of detok, the OpenBIOS FCode detokenizer.<br />
<br />
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15)<br />
<br />
=== toke ===<br />
Download the latest release of toke, the OpenBIOS FCode tokenizer.<br />
<br />
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15)<br />
<br />
=== romheaders ===<br />
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now.<br />
<br />
== Flashing ==<br />
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''.<br />
<br />
= Development Repository =<br />
<br />
OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[Downloads#Snapshots|Snapshots]] below.<br />
<br />
== Anonymous access ==<br />
<br />
You can check it out as follows:<br />
$ svn co svn://openbios.org/openbios/openbios-devel<br />
<br />
if you want a specific revision: (see the Confirmed working svn revisions page)<br />
$ svn co svn://openbios.org/openbios/openbios-devel -r 4<br />
<br />
or for checking out the source code for the OpenBIOS FCode Suite:<br />
$ svn co svn://openbios.org/openbios/fcode-suite<br />
<br />
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:<br />
<br />
$ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki><br />
<br />
or<br />
<br />
$ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-suite</nowiki><br />
<br />
== Developer access ==<br />
<br />
Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository:<br />
$ svn co svn://username@openbios.org/openbios/openbios-devel<br />
<br />
Subversion has commands very similar to CVS.<br />
<br />
= Source code browsing =<br />
<br />
You can also browse the [http://www.openbios.org/viewvc/?root=OpenBIOS OpenBIOS subversion repository] online.<br />
<br />
= Snapshots =<br />
<br />
There is currently no archive of snapshots available for OpenBIOS. You can use the [http://www.openbios.org/viewvc/?root=OpenBIOS source code browser] to download a gzipped tar archive of any revision.<br />
<br />
Alternatively you can also download the [http://www.openbios.org/viewvc/openbios-devel.tar.gz?root=OpenBIOS&view=tar most current snapshot] directly.<br />
<br />
= More on Subversion =<br />
<br />
* [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online.<br />
* [http://subversion.tigris.org/ Subversion homepage]</div>Stepanhttps://openfirmware.info/index.php?title=OpenBIOS&diff=167OpenBIOS2007-04-26T22:22:57Z<p>Stepan: /* OpenBIOS - Code Releases */</p>
<hr />
<div>= OpenBIOS - Code Releases =<br />
<br />
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.<br />
<br />
We are heading towards the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs (mostly LinuxBIOS issues nowadays).<br />
<br />
'''Note:''' The OpenBIOS releases on this page are rather old. It is suggested that you have a look at the [[#Snapshots|snapshots section]] to get a development snapshot of OpenBIOS. You might also want to have a look at the other Open Firmware implementations in the Implementations section on the left side of this page.<br />
<br />
= OpenBIOS =<br />
<br />
Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface.<br />
<br />
Latest release version is: [http://www.openbios.org/viewvc/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha1] (2006-10-12)<br />
<br />
'''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok.<br />
<br />
== Kernel ==<br />
There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''.<br />
<br />
The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). <br />
<br />
'''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86.<br />
<br />
= Development Environment =<br />
<br />
== FCode Suite ==<br />
<br />
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.<br />
<br />
Go to the [[FCODE suite|FCode Suite page]] (2006-09-21)<br />
<br />
=== detok ===<br />
Download the latest release of detok, the OpenBIOS FCode detokenizer.<br />
<br />
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15)<br />
<br />
=== toke ===<br />
Download the latest release of toke, the OpenBIOS FCode tokenizer.<br />
<br />
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15)<br />
<br />
=== romheaders ===<br />
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now.<br />
<br />
== Flashing ==<br />
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''.<br />
<br />
= Development Repository =<br />
<br />
OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[Downloads#Snapshots|Snapshots]] below.<br />
<br />
== Anonymous access ==<br />
<br />
You can check it out as follows:<br />
$ svn co svn://openbios.org/openbios/openbios-devel<br />
<br />
if you want a specific revision: (see the Confirmed working svn revisions page)<br />
$ svn co svn://openbios.org/openbios/openbios-devel -r 4<br />
<br />
or for checking out the source code for the OpenBIOS FCode Suite:<br />
$ svn co svn://openbios.org/openbios/fcode-suite<br />
<br />
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:<br />
<br />
$ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki><br />
<br />
or<br />
<br />
$ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-suite</nowiki><br />
<br />
== Developer access ==<br />
<br />
Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository:<br />
$ svn co svn://username@openbios.org/openbios/openbios-devel<br />
<br />
Subversion has commands very similar to CVS.<br />
<br />
= Source code browsing =<br />
<br />
You can also browse the [http://www.openbios.org/viewvc/?root=OpenBIOS OpenBIOS subversion repository] online.<br />
<br />
= Snapshots =<br />
<br />
There is currently no archive of snapshots available for OpenBIOS. You can use the [http://www.openbios.org/viewvc/?root=OpenBIOS source code browser] to download a gzipped tar archive of any revision.<br />
<br />
Alternatively you can also download the [http://www.openbios.org/viewvc/openbios-devel.tar.gz?root=OpenBIOS&view=tar most current snapshot] directly.<br />
<br />
= More on Subversion =<br />
<br />
* [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online.<br />
* [http://subversion.tigris.org/ Subversion homepage]</div>Stepanhttps://openfirmware.info/index.php?title=OpenBIOS&diff=166OpenBIOS2007-04-26T22:20:38Z<p>Stepan: /* OpenBIOS - Code Releases */</p>
<hr />
<div>= OpenBIOS - Code Releases =<br />
<br />
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.<br />
<br />
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.<br />
<br />
All the releases on this page are rather old. It is suggested that you have a look at the [[#Snapshots|snapshots section]] to get a development snapshot of OpenBIOS.<br />
<br />
= OpenBIOS =<br />
<br />
Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface.<br />
<br />
Latest release version is: [http://www.openbios.org/viewvc/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha1] (2006-10-12)<br />
<br />
'''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok.<br />
<br />
== Kernel ==<br />
There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''.<br />
<br />
The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). <br />
<br />
'''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86.<br />
<br />
= Development Environment =<br />
<br />
== FCode Suite ==<br />
<br />
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.<br />
<br />
Go to the [[FCODE suite|FCode Suite page]] (2006-09-21)<br />
<br />
=== detok ===<br />
Download the latest release of detok, the OpenBIOS FCode detokenizer.<br />
<br />
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15)<br />
<br />
=== toke ===<br />
Download the latest release of toke, the OpenBIOS FCode tokenizer.<br />
<br />
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15)<br />
<br />
=== romheaders ===<br />
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now.<br />
<br />
== Flashing ==<br />
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''.<br />
<br />
= Development Repository =<br />
<br />
OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[Downloads#Snapshots|Snapshots]] below.<br />
<br />
== Anonymous access ==<br />
<br />
You can check it out as follows:<br />
$ svn co svn://openbios.org/openbios/openbios-devel<br />
<br />
if you want a specific revision: (see the Confirmed working svn revisions page)<br />
$ svn co svn://openbios.org/openbios/openbios-devel -r 4<br />
<br />
or for checking out the source code for the OpenBIOS FCode Suite:<br />
$ svn co svn://openbios.org/openbios/fcode-suite<br />
<br />
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:<br />
<br />
$ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki><br />
<br />
or<br />
<br />
$ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-suite</nowiki><br />
<br />
== Developer access ==<br />
<br />
Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository:<br />
$ svn co svn://username@openbios.org/openbios/openbios-devel<br />
<br />
Subversion has commands very similar to CVS.<br />
<br />
= Source code browsing =<br />
<br />
You can also browse the [http://www.openbios.org/viewvc/?root=OpenBIOS OpenBIOS subversion repository] online.<br />
<br />
= Snapshots =<br />
<br />
There is currently no archive of snapshots available for OpenBIOS. You can use the [http://www.openbios.org/viewvc/?root=OpenBIOS source code browser] to download a gzipped tar archive of any revision.<br />
<br />
Alternatively you can also download the [http://www.openbios.org/viewvc/openbios-devel.tar.gz?root=OpenBIOS&view=tar most current snapshot] directly.<br />
<br />
= More on Subversion =<br />
<br />
* [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online.<br />
* [http://subversion.tigris.org/ Subversion homepage]</div>Stepanhttps://openfirmware.info/index.php?title=OpenBIOS&diff=165OpenBIOS2007-04-26T22:19:57Z<p>Stepan: /* OpenBIOS - Code Releases */</p>
<hr />
<div>= OpenBIOS - Code Releases =<br />
<br />
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.<br />
<br />
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.<br />
<br />
All the releases on this page are rather old. It is suggested that you have a look at the [[#snapshots|snapshots section]] to get a development snapshot of OpenBIOS.<br />
<br />
= OpenBIOS =<br />
<br />
Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface.<br />
<br />
Latest release version is: [http://www.openbios.org/viewvc/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha1] (2006-10-12)<br />
<br />
'''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok.<br />
<br />
== Kernel ==<br />
There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''.<br />
<br />
The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). <br />
<br />
'''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86.<br />
<br />
= Development Environment =<br />
<br />
== FCode Suite ==<br />
<br />
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.<br />
<br />
Go to the [[FCODE suite|FCode Suite page]] (2006-09-21)<br />
<br />
=== detok ===<br />
Download the latest release of detok, the OpenBIOS FCode detokenizer.<br />
<br />
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15)<br />
<br />
=== toke ===<br />
Download the latest release of toke, the OpenBIOS FCode tokenizer.<br />
<br />
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15)<br />
<br />
=== romheaders ===<br />
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now.<br />
<br />
== Flashing ==<br />
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''.<br />
<br />
= Development Repository =<br />
<br />
OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[Downloads#Snapshots|Snapshots]] below.<br />
<br />
== Anonymous access ==<br />
<br />
You can check it out as follows:<br />
$ svn co svn://openbios.org/openbios/openbios-devel<br />
<br />
if you want a specific revision: (see the Confirmed working svn revisions page)<br />
$ svn co svn://openbios.org/openbios/openbios-devel -r 4<br />
<br />
or for checking out the source code for the OpenBIOS FCode Suite:<br />
$ svn co svn://openbios.org/openbios/fcode-suite<br />
<br />
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:<br />
<br />
$ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki><br />
<br />
or<br />
<br />
$ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-suite</nowiki><br />
<br />
== Developer access ==<br />
<br />
Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository:<br />
$ svn co svn://username@openbios.org/openbios/openbios-devel<br />
<br />
Subversion has commands very similar to CVS.<br />
<br />
= Source code browsing =<br />
<br />
You can also browse the [http://www.openbios.org/viewvc/?root=OpenBIOS OpenBIOS subversion repository] online.<br />
<br />
= Snapshots =<br />
<br />
There is currently no archive of snapshots available for OpenBIOS. You can use the [http://www.openbios.org/viewvc/?root=OpenBIOS source code browser] to download a gzipped tar archive of any revision.<br />
<br />
Alternatively you can also download the [http://www.openbios.org/viewvc/openbios-devel.tar.gz?root=OpenBIOS&view=tar most current snapshot] directly.<br />
<br />
= More on Subversion =<br />
<br />
* [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online.<br />
* [http://subversion.tigris.org/ Subversion homepage]</div>Stepanhttps://openfirmware.info/index.php?title=OpenBIOS&diff=164OpenBIOS2007-04-18T09:28:02Z<p>Stepan: /* OpenBIOS */</p>
<hr />
<div>= OpenBIOS - Code Releases =<br />
<br />
Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components.<br />
<br />
We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs.<br />
<br />
All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS.<br />
<br />
= OpenBIOS =<br />
<br />
Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface.<br />
<br />
Latest release version is: [http://www.openbios.org/viewvc/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha1] (2006-10-12)<br />
<br />
'''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok.<br />
<br />
== Kernel ==<br />
There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''.<br />
<br />
The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). <br />
<br />
'''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86.<br />
<br />
= Development Environment =<br />
<br />
== FCode Suite ==<br />
<br />
Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility.<br />
<br />
Go to the [[FCODE suite|FCode Suite page]] (2006-09-21)<br />
<br />
=== detok ===<br />
Download the latest release of detok, the OpenBIOS FCode detokenizer.<br />
<br />
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15)<br />
<br />
=== toke ===<br />
Download the latest release of toke, the OpenBIOS FCode tokenizer.<br />
<br />
Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15)<br />
<br />
=== romheaders ===<br />
Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now.<br />
<br />
== Flashing ==<br />
/dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''.<br />
<br />
= Development Repository =<br />
<br />
OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[Downloads#Snapshots|Snapshots]] below.<br />
<br />
== Anonymous access ==<br />
<br />
You can check it out as follows:<br />
$ svn co svn://openbios.org/openbios/openbios-devel<br />
<br />
if you want a specific revision: (see the Confirmed working svn revisions page)<br />
$ svn co svn://openbios.org/openbios/openbios-devel -r 4<br />
<br />
or for checking out the source code for the OpenBIOS FCode Suite:<br />
$ svn co svn://openbios.org/openbios/fcode-suite<br />
<br />
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:<br />
<br />
$ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki><br />
<br />
or<br />
<br />
$ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-suite</nowiki><br />
<br />
== Developer access ==<br />
<br />
Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository:<br />
$ svn co svn://username@openbios.org/openbios/openbios-devel<br />
<br />
Subversion has commands very similar to CVS.<br />
<br />
= Source code browsing =<br />
<br />
You can also browse the [http://www.openbios.org/viewvc/?root=OpenBIOS OpenBIOS subversion repository] online.<br />
<br />
= Snapshots =<br />
<br />
There is currently no archive of snapshots available for OpenBIOS. You can use the [http://www.openbios.org/viewvc/?root=OpenBIOS source code browser] to download a gzipped tar archive of any revision.<br />
<br />
Alternatively you can also download the [http://www.openbios.org/viewvc/openbios-devel.tar.gz?root=OpenBIOS&view=tar most current snapshot] directly.<br />
<br />
= More on Subversion =<br />
<br />
* [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online.<br />
* [http://subversion.tigris.org/ Subversion homepage]</div>Stepanhttps://openfirmware.info/index.php?title=Bindings&diff=390Bindings2007-04-05T14:10:45Z<p>Stepan: /* Recommended Practice */</p>
<hr />
<div>__NOTOC__<br />
== Bindings and Supplements for Bus Systems ==<br />
<br />
* [http://www.openbios.org/data/docs/bus.pci.pdf PCI - Approved Version 2.1]<br />
* [http://www.openbios.org/data/docs/bus.usb.pdf USB 1.0]<br />
* [http://www.openbios.org/data/docs/bus.isa.pdf ISA - Draft 0.4]<br />
* [http://www.openbios.org/data/docs/bus.pccard.pdf PC-Card]<br />
<br />
== Bindings and Supplements for CPU Architectures ==<br />
* [http://www.openbios.org/data/docs/12756d5.ps Open Firmware 64bit extensions]<br />
* [http://www.openbios.org/data/docs/arm0_3d.pdf ARM bindings]<br />
* [http://www.openbios.org/data/docs/ppc-2_1.ps PPC bindings]<br />
* [http://www.openbios.org/data/docs/PREP.ps PPC PREP bindings]<br />
* [http://www.openbios.org/data/docs/CHRP.ps PPC CHRP bindings]<br />
* [http://www.openbios.org/data/docs/12751d1a.pdf Sparc 32bit Supplement - IEEE 1754 ISA]<br />
<br />
== Device Bindings ==<br />
* [http://www.openbios.org/data/docs/8042-1_0d.ps 8042] - ISA Keyboard/Mouse Controller<br />
* [http://www.openbios.org/data/docs/audio-1_0d.ps Audio] - ISA Audio<br />
* [http://www.openbios.org/data/docs/fdc-1_0d.ps Floppy] - ISA Floppy Controller<br />
* [http://www.openbios.org/data/docs/isa-dma-1_0d.ps ISA DMA] - ISA DMA Controller<br />
* [http://www.openbios.org/data/docs/isa-pic-1_1d.ps ISA PIC] - ISA Interrupt Controller<br />
* [http://www.openbios.org/data/docs/lfb-1_0d.ps Linear Framebuffer]<br />
* [http://www.openbios.org/data/docs/parallel-1_0d.ps Parallel] - ISA Parallel Port<br />
* [http://www.openbios.org/data/docs/serial-1_0d.ps Serial] - ISA Serial Port<br />
* [http://www.openbios.org/data/docs/vga-1_0d.ps VGA] - VGA Display<br />
<br />
== Recommended Practice ==<br />
* [http://www.openbios.org/data/docs/rec.16color.d12.pdf 16 Color Text Extension] - Draft 1.2<br />
* [http://www.openbios.org/data/docs/rec.8bgraph.d12.pdf 8 Bit Graphics Extension] - Draft 1.2<br />
* [http://www.openbios.org/data/docs/rec.dse.app10.pdf Device Support Extensions] - Approved Version 1.0<br />
* [http://www.openbios.org/data/docs/rec.gennames.app14.pdf Generic Names] - Approved Version 1.4<br />
* [http://www.openbios.org/data/docs/rec.intmap.d09.pdf Interrupt Mapping] - Draft 0.9<br />
* [http://www.openbios.org/data/docs/rec.intpos.d02.pdf Interposition] - Draft 0.2<br />
* [http://www.openbios.org/data/docs/rec.scsi3pi.10.pdf SCSI-3 Parallel Interface] - Version 1.0 - bug: last page first!!<br />
* [http://www.openbios.org/data/docs/rec.tftp.10.pdf TFTP Booting Extension] - Version 1.0<br />
* [http://playground.sun.com/1275/proposals/Closed/Accepted/410-it.txt dma-ranges]</div>Stepanhttps://openfirmware.info/index.php?title=Bindings&diff=389Bindings2007-01-24T12:12:26Z<p>Stepan: /* Recommended Practice */</p>
<hr />
<div>__NOTOC__<br />
== Bindings and Supplements for Bus Systems ==<br />
<br />
* [http://www.openbios.org/data/docs/bus.pci.pdf PCI - Approved Version 2.1]<br />
* [http://www.openbios.org/data/docs/bus.usb.pdf USB 1.0]<br />
* [http://www.openbios.org/data/docs/bus.isa.pdf ISA - Draft 0.4]<br />
* [http://www.openbios.org/data/docs/bus.pccard.pdf PC-Card]<br />
<br />
== Bindings and Supplements for CPU Architectures ==<br />
* [http://www.openbios.org/data/docs/12756d5.ps Open Firmware 64bit extensions]<br />
* [http://www.openbios.org/data/docs/arm0_3d.pdf ARM bindings]<br />
* [http://www.openbios.org/data/docs/ppc-2_1.ps PPC bindings]<br />
* [http://www.openbios.org/data/docs/PREP.ps PPC PREP bindings]<br />
* [http://www.openbios.org/data/docs/CHRP.ps PPC CHRP bindings]<br />
* [http://www.openbios.org/data/docs/12751d1a.pdf Sparc 32bit Supplement - IEEE 1754 ISA]<br />
<br />
== Device Bindings ==<br />
* [http://www.openbios.org/data/docs/8042-1_0d.ps 8042] - ISA Keyboard/Mouse Controller<br />
* [http://www.openbios.org/data/docs/audio-1_0d.ps Audio] - ISA Audio<br />
* [http://www.openbios.org/data/docs/fdc-1_0d.ps Floppy] - ISA Floppy Controller<br />
* [http://www.openbios.org/data/docs/isa-dma-1_0d.ps ISA DMA] - ISA DMA Controller<br />
* [http://www.openbios.org/data/docs/isa-pic-1_1d.ps ISA PIC] - ISA Interrupt Controller<br />
* [http://www.openbios.org/data/docs/lfb-1_0d.ps Linear Framebuffer]<br />
* [http://www.openbios.org/data/docs/parallel-1_0d.ps Parallel] - ISA Parallel Port<br />
* [http://www.openbios.org/data/docs/serial-1_0d.ps Serial] - ISA Serial Port<br />
* [http://www.openbios.org/data/docs/vga-1_0d.ps VGA] - VGA Display<br />
<br />
== Recommended Practice ==<br />
* [http://www.openbios.org/data/docs/rec.16color.d12.pdf 16 Color Text Extension] - Draft 1.2<br />
* [http://www.openbios.org/data/docs/rec.8bgraph.d12.pdf 8 Bit Graphics Extension] - Draft 1.2<br />
* [http://www.openbios.org/data/docs/rec.dse.app10.pdf Device Support Extensions] - Approved Version 1.0<br />
* [http://www.openbios.org/data/docs/rec.gennames.app14.pdf Generic Names] - Approved Version 1.4<br />
* [http://www.openbios.org/data/docs/rec.intmap.d09.pdf Interrupt Mapping] - Draft 0.9<br />
* [http://www.openbios.org/data/docs/rec.intpos.d02.pdf Interposition] - Draft 0.2<br />
* [http://www.openbios.org/data/docs/rec.scsi3pi.10.pdf SCSI-3 Parallel Interface] - Version 1.0 - bug: last page first!!<br />
* [http://www.openbios.org/data/docs/rec.tftp.10.pdf TFTP Booting Extension] - Version 1.0</div>Stepanhttps://openfirmware.info/index.php?title=Bindings&diff=388Bindings2007-01-24T12:11:51Z<p>Stepan: /* Device Bindings */</p>
<hr />
<div>__NOTOC__<br />
== Bindings and Supplements for Bus Systems ==<br />
<br />
* [http://www.openbios.org/data/docs/bus.pci.pdf PCI - Approved Version 2.1]<br />
* [http://www.openbios.org/data/docs/bus.usb.pdf USB 1.0]<br />
* [http://www.openbios.org/data/docs/bus.isa.pdf ISA - Draft 0.4]<br />
* [http://www.openbios.org/data/docs/bus.pccard.pdf PC-Card]<br />
<br />
== Bindings and Supplements for CPU Architectures ==<br />
* [http://www.openbios.org/data/docs/12756d5.ps Open Firmware 64bit extensions]<br />
* [http://www.openbios.org/data/docs/arm0_3d.pdf ARM bindings]<br />
* [http://www.openbios.org/data/docs/ppc-2_1.ps PPC bindings]<br />
* [http://www.openbios.org/data/docs/PREP.ps PPC PREP bindings]<br />
* [http://www.openbios.org/data/docs/CHRP.ps PPC CHRP bindings]<br />
* [http://www.openbios.org/data/docs/12751d1a.pdf Sparc 32bit Supplement - IEEE 1754 ISA]<br />
<br />
== Device Bindings ==<br />
* [http://www.openbios.org/data/docs/8042-1_0d.ps 8042] - ISA Keyboard/Mouse Controller<br />
* [http://www.openbios.org/data/docs/audio-1_0d.ps Audio] - ISA Audio<br />
* [http://www.openbios.org/data/docs/fdc-1_0d.ps Floppy] - ISA Floppy Controller<br />
* [http://www.openbios.org/data/docs/isa-dma-1_0d.ps ISA DMA] - ISA DMA Controller<br />
* [http://www.openbios.org/data/docs/isa-pic-1_1d.ps ISA PIC] - ISA Interrupt Controller<br />
* [http://www.openbios.org/data/docs/lfb-1_0d.ps Linear Framebuffer]<br />
* [http://www.openbios.org/data/docs/parallel-1_0d.ps Parallel] - ISA Parallel Port<br />
* [http://www.openbios.org/data/docs/serial-1_0d.ps Serial] - ISA Serial Port<br />
* [http://www.openbios.org/data/docs/vga-1_0d.ps VGA] - VGA Display<br />
<br />
== Recommended Practice ==<br />
* [http://www.openbios.org/docs/rec.16color.d12.pdf 16 Color Text Extension] - Draft 1.2<br />
* [http://www.openbios.org/docs/rec.8bgraph.d12.pdf 8 Bit Graphics Extension] - Draft 1.2<br />
* [http://www.openbios.org/docs/rec.dse.app10.pdf Device Support Extensions] - Approved Version 1.0<br />
* [http://www.openbios.org/docs/rec.gennames.app14.pdf Generic Names] - Approved Version 1.4<br />
* [http://www.openbios.org/docs/rec.intmap.d09.pdf Interrupt Mapping] - Draft 0.9<br />
* [http://www.openbios.org/docs/rec.intpos.d02.pdf Interposition] - Draft 0.2<br />
* [http://www.openbios.org/docs/rec.scsi3pi.10.pdf SCSI-3 Parallel Interface] - Version 1.0 - bug: last page first!!<br />
* [http://www.openbios.org/docs/rec.tftp.10.pdf TFTP Booting Extension] - Version 1.0</div>Stepanhttps://openfirmware.info/index.php?title=Bindings&diff=387Bindings2007-01-24T12:11:10Z<p>Stepan: /* Bindings and Supplements for CPU Architectures */</p>
<hr />
<div>__NOTOC__<br />
== Bindings and Supplements for Bus Systems ==<br />
<br />
* [http://www.openbios.org/data/docs/bus.pci.pdf PCI - Approved Version 2.1]<br />
* [http://www.openbios.org/data/docs/bus.usb.pdf USB 1.0]<br />
* [http://www.openbios.org/data/docs/bus.isa.pdf ISA - Draft 0.4]<br />
* [http://www.openbios.org/data/docs/bus.pccard.pdf PC-Card]<br />
<br />
== Bindings and Supplements for CPU Architectures ==<br />
* [http://www.openbios.org/data/docs/12756d5.ps Open Firmware 64bit extensions]<br />
* [http://www.openbios.org/data/docs/arm0_3d.pdf ARM bindings]<br />
* [http://www.openbios.org/data/docs/ppc-2_1.ps PPC bindings]<br />
* [http://www.openbios.org/data/docs/PREP.ps PPC PREP bindings]<br />
* [http://www.openbios.org/data/docs/CHRP.ps PPC CHRP bindings]<br />
* [http://www.openbios.org/data/docs/12751d1a.pdf Sparc 32bit Supplement - IEEE 1754 ISA]<br />
<br />
== Device Bindings ==<br />
* [http://www.openbios.org/docs/8042-1_0d.ps 8042] - ISA Keyboard/Mouse Controller<br />
* [http://www.openbios.org/docs/audio-1_0d.ps Audio] - ISA Audio<br />
* [http://www.openbios.org/docs/fdc-1_0d.ps Floppy] - ISA Floppy Controller<br />
* [http://www.openbios.org/docs/isa-dma-1_0d.ps ISA DMA] - ISA DMA Controller<br />
* [http://www.openbios.org/docs/isa-pic-1_1d.ps ISA PIC] - ISA Interrupt Controller<br />
* [http://www.openbios.org/docs/lfb-1_0d.ps Linear Framebuffer]<br />
* [http://www.openbios.org/docs/parallel-1_0d.ps Parallel] - ISA Parallel Port<br />
* [http://www.openbios.org/docs/serial-1_0d.ps Serial] - ISA Serial Port<br />
* [http://www.openbios.org/docs/vga-1_0d.ps VGA] - VGA Display<br />
<br />
== Recommended Practice ==<br />
* [http://www.openbios.org/docs/rec.16color.d12.pdf 16 Color Text Extension] - Draft 1.2<br />
* [http://www.openbios.org/docs/rec.8bgraph.d12.pdf 8 Bit Graphics Extension] - Draft 1.2<br />
* [http://www.openbios.org/docs/rec.dse.app10.pdf Device Support Extensions] - Approved Version 1.0<br />
* [http://www.openbios.org/docs/rec.gennames.app14.pdf Generic Names] - Approved Version 1.4<br />
* [http://www.openbios.org/docs/rec.intmap.d09.pdf Interrupt Mapping] - Draft 0.9<br />
* [http://www.openbios.org/docs/rec.intpos.d02.pdf Interposition] - Draft 0.2<br />
* [http://www.openbios.org/docs/rec.scsi3pi.10.pdf SCSI-3 Parallel Interface] - Version 1.0 - bug: last page first!!<br />
* [http://www.openbios.org/docs/rec.tftp.10.pdf TFTP Booting Extension] - Version 1.0</div>Stepanhttps://openfirmware.info/index.php?title=Bindings&diff=386Bindings2007-01-24T12:10:29Z<p>Stepan: /* Bindings and Supplements for Bus Systems */</p>
<hr />
<div>__NOTOC__<br />
== Bindings and Supplements for Bus Systems ==<br />
<br />
* [http://www.openbios.org/data/docs/bus.pci.pdf PCI - Approved Version 2.1]<br />
* [http://www.openbios.org/data/docs/bus.usb.pdf USB 1.0]<br />
* [http://www.openbios.org/data/docs/bus.isa.pdf ISA - Draft 0.4]<br />
* [http://www.openbios.org/data/docs/bus.pccard.pdf PC-Card]<br />
<br />
== Bindings and Supplements for CPU Architectures ==<br />
* [http://www.openbios.org/docs/12756d5.ps Open Firmware 64bit extensions]<br />
* [http://www.openbios.org/docs/arm0_3d.pdf ARM bindings]<br />
* [http://www.openbios.org/docs/ppc-2_1.ps PPC bindings]<br />
* [http://www.openbios.org/docs/PREP.ps PPC PREP bindings]<br />
* [http://www.openbios.org/docs/CHRP.ps PPC CHRP bindings]<br />
* [http://www.openbios.org/docs/12751d1a.pdf Sparc 32bit Supplement - IEEE 1754 ISA]<br />
<br />
== Device Bindings ==<br />
* [http://www.openbios.org/docs/8042-1_0d.ps 8042] - ISA Keyboard/Mouse Controller<br />
* [http://www.openbios.org/docs/audio-1_0d.ps Audio] - ISA Audio<br />
* [http://www.openbios.org/docs/fdc-1_0d.ps Floppy] - ISA Floppy Controller<br />
* [http://www.openbios.org/docs/isa-dma-1_0d.ps ISA DMA] - ISA DMA Controller<br />
* [http://www.openbios.org/docs/isa-pic-1_1d.ps ISA PIC] - ISA Interrupt Controller<br />
* [http://www.openbios.org/docs/lfb-1_0d.ps Linear Framebuffer]<br />
* [http://www.openbios.org/docs/parallel-1_0d.ps Parallel] - ISA Parallel Port<br />
* [http://www.openbios.org/docs/serial-1_0d.ps Serial] - ISA Serial Port<br />
* [http://www.openbios.org/docs/vga-1_0d.ps VGA] - VGA Display<br />
<br />
== Recommended Practice ==<br />
* [http://www.openbios.org/docs/rec.16color.d12.pdf 16 Color Text Extension] - Draft 1.2<br />
* [http://www.openbios.org/docs/rec.8bgraph.d12.pdf 8 Bit Graphics Extension] - Draft 1.2<br />
* [http://www.openbios.org/docs/rec.dse.app10.pdf Device Support Extensions] - Approved Version 1.0<br />
* [http://www.openbios.org/docs/rec.gennames.app14.pdf Generic Names] - Approved Version 1.4<br />
* [http://www.openbios.org/docs/rec.intmap.d09.pdf Interrupt Mapping] - Draft 0.9<br />
* [http://www.openbios.org/docs/rec.intpos.d02.pdf Interposition] - Draft 0.2<br />
* [http://www.openbios.org/docs/rec.scsi3pi.10.pdf SCSI-3 Parallel Interface] - Version 1.0 - bug: last page first!!<br />
* [http://www.openbios.org/docs/rec.tftp.10.pdf TFTP Booting Extension] - Version 1.0</div>Stepanhttps://openfirmware.info/index.php?title=SLOF&diff=391SLOF2007-01-14T14:33:15Z<p>Stepan: </p>
<hr />
<div>Slimline Open Firmware (SLOF) is initialization and boot source code based on the IEEE-1275 (Open Firmware) standard, developed by engineers of the IBM Corporation.<br />
<br />
The SLOF source code provides illustrates what's needed to initialize and boot Linux or a hypervisor on the industry Open Firmware boot standard.<br />
<br />
The two links below offer:<br />
<br />
* Documentation<br />
* Pseudo Open Firmware for prototyping, test, and debug<br />
* Low Level Firmware for IBM's JS20 (closed source)<br />
<br />
Note: You need an IBM ID to continue to the download.<br />
<br />
* http://www-128.ibm.com/developerworks/power/pa-slof/<br />
* http://www-128.ibm.com/developerworks/power/pa-slof-js20/</div>Stepanhttps://openfirmware.info/index.php?title=Welcome_to_OpenBIOS&diff=34Welcome to OpenBIOS2007-01-09T15:12:43Z<p>Stepan: </p>
<hr />
<div><div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;"><br />
'''OpenBIOS''' is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. <br />
<br />
Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. <br />
<br />
It is OpenBIOS' goal to work on all common platforms, like x86, AMD64, <nowiki>PowerPC</nowiki>, ARM and Mips. With its flexible and modular design, OpenBIOS targets servers, workstations and embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably.<br />
<br />
Open Firmware is found on many servers and workstations and there are several commercial implementations from [[OpenBoot|SUN]], [[Open Firmware|Firmworks]], [[SmartFirmware|CodeGen]], Apple, IBM and others.<br />
<br />
OpenBIOS relies on an additional low-level firmware for hardware initialization, such as [http://linuxbios.org/ LinuxBIOS] or [http://u-boot.sourceforge.net/ U-Boot].<br />
</div><br />
<br />
{| cellspacing=5 cellpadding=5 border=0 valign="top" width=100%<br />
|-<br />
|style="vertical-align:top"|<br />
== Download ==<br />
<br />
Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]].<br />
<br />
== Contact ==<br />
<br />
The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page.<br />
<br />
== Project Statement ==<br />
<br />
Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project.<br />
<br />
== Credits ==<br />
<br />
Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc.<br />
<br />
|style="vertical-align:top"|<br />
== News ==<br />
<small><br />
'''FCODE suite 1.0.2 released''' (2006-10-30)<br />
<br />
[mailto:dlpaktor@netscape.net David Paktor] added tracing support to the [[FCODE suite|OpenBIOS FCODE suite]].<br />
<br />
'''LinuxBIOS Symposium 2006''' (2006-10-01)<br />
<br />
The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH].<br />
<br />
'''FCODE suite 1.0.1 available''' (2006-09-21)<br />
<br />
[mailto:dlpaktor@netscape.net David Paktor], when he was with the IBM Corporation, contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code.<br />
<br />
'''SUN released OpenBOOT source code''' (2006-09-06)<br />
<br />
[http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB).<br />
<br />
[[News|[older news]]]<br />
</small><br />
|}<br />
__NOTOC__ <br />
__NOEDITSECTION__</div>Stepanhttps://openfirmware.info/index.php?title=Welcome_to_OpenBIOS&diff=33Welcome to OpenBIOS2007-01-09T15:12:03Z<p>Stepan: </p>
<hr />
<div><div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;"><br />
'''OpenBIOS''' is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. <br />
<br />
Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. <br />
<br />
It is OpenBIOS' goal to work on all common platforms, like x86, AMD64, <nowiki>PowerPC</nowiki>, ARM and Mips. With its flexible and modular design, OpenBIOS targets servers, workstations and embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably.<br />
<br />
Open Firmware is found on many servers and workstations and there are several commercial implementations from [[OpenBoot|SUN]], [[Open Firmware|Firmworks]], [[SmartFirmware|CodeGen]], Apple, IBM and others.<br />
<br />
OpenBIOS relies on an additional low-level firmware for hardware bring-up, such as [http://linuxbios.org/ LinuxBIOS] or [http://u-boot.sourceforge.net/ U-Boot].<br />
</div><br />
<br />
{| cellspacing=5 cellpadding=5 border=0 valign="top" width=100%<br />
|-<br />
|style="vertical-align:top"|<br />
== Download ==<br />
<br />
Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]].<br />
<br />
== Contact ==<br />
<br />
The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page.<br />
<br />
== Project Statement ==<br />
<br />
Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project.<br />
<br />
== Credits ==<br />
<br />
Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc.<br />
<br />
|style="vertical-align:top"|<br />
== News ==<br />
<small><br />
'''FCODE suite 1.0.2 released''' (2006-10-30)<br />
<br />
[mailto:dlpaktor@netscape.net David Paktor] added tracing support to the [[FCODE suite|OpenBIOS FCODE suite]].<br />
<br />
'''LinuxBIOS Symposium 2006''' (2006-10-01)<br />
<br />
The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH].<br />
<br />
'''FCODE suite 1.0.1 available''' (2006-09-21)<br />
<br />
[mailto:dlpaktor@netscape.net David Paktor], when he was with the IBM Corporation, contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code.<br />
<br />
'''SUN released OpenBOOT source code''' (2006-09-06)<br />
<br />
[http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB).<br />
<br />
[[News|[older news]]]<br />
</small><br />
|}<br />
__NOTOC__ <br />
__NOEDITSECTION__</div>Stepanhttps://openfirmware.info/index.php?title=Welcome_to_OpenBIOS&diff=31Welcome to OpenBIOS2006-12-11T10:20:52Z<p>Stepan: </p>
<hr />
<div><div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;"><br />
'''OpenBIOS''' is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. <br />
<br />
Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. <br />
<br />
It is OpenBIOS' goal to work on all common platforms, like x86, AMD64, <nowiki>PowerPC</nowiki>, ARM and Mips. With its flexible and modular design, OpenBIOS targets servers, workstations and embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably.<br />
<br />
Open Firmware is found on many servers and workstations and there are several commercial implementations from [[OpenBoot|SUN]], [[Open Firmware|Firmworks]], [[SmartFirmware|CodeGen]], Apple, IBM and others.<br />
<br />
OpenBIOS relies on an additional low-level firmware for hardware bringup, such as [http://linuxbios.org/ LinuxBIOS] or [http://u-boot.sourceforge.net/ U-Boot].<br />
</div><br />
<br />
{| cellspacing=5 cellpadding=5 border=0 valign="top" width=100%<br />
|-<br />
|style="vertical-align:top"|<br />
== Download ==<br />
<br />
Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]].<br />
<br />
== Contact ==<br />
<br />
The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page.<br />
<br />
== Project Statement ==<br />
<br />
Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project.<br />
<br />
== Credits ==<br />
<br />
Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc.<br />
<br />
|style="vertical-align:top"|<br />
== News ==<br />
<small><br />
'''FCODE suite 1.0.2 released''' (2006-10-30)<br />
<br />
David Paktor added tracing support to the [[FCODE suite|OpenBIOS FCODE suite]].<br />
<br />
'''LinuxBIOS Symposium 2006''' (2006-10-01)<br />
<br />
The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH].<br />
<br />
'''FCODE suite 1.0.1 available''' (2006-09-21)<br />
<br />
David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code.<br />
<br />
'''SUN released OpenBOOT source code''' (2006-09-06)<br />
<br />
[http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB).<br />
<br />
[[News|[older news]]]<br />
</small><br />
|}<br />
__NOTOC__ <br />
__NOEDITSECTION__</div>Stepanhttps://openfirmware.info/index.php?title=Welcome_to_OpenBIOS&diff=30Welcome to OpenBIOS2006-12-11T10:17:04Z<p>Stepan: </p>
<hr />
<div><div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;"><br />
'''OpenBIOS''' is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. <br />
<br />
Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. <br />
<br />
It is OpenBIOS' goal to work on all common platforms, like x86, AMD64, <nowiki>PowerPC</nowiki>, ARM and Mips. With its flexible and modular design, OpenBIOS targets servers, workstations and embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably.<br />
<br />
Open Firmware is found on many servers and workstations and there are several commercial implementations from [[OpenBoot|SUN]], [[Open Firmware|Firmworks]], [[SmartFirmware|CodeGen]], Apple, IBM and others.<br />
</div><br />
<br />
{| cellspacing=5 cellpadding=5 border=0 valign="top" width=100%<br />
|-<br />
|style="vertical-align:top"|<br />
== Download ==<br />
<br />
Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]].<br />
<br />
== Contact ==<br />
<br />
The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page.<br />
<br />
== Project Statement ==<br />
<br />
Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project.<br />
<br />
== Credits ==<br />
<br />
Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc.<br />
<br />
|style="vertical-align:top"|<br />
== News ==<br />
<small><br />
'''FCODE suite 1.0.2 released''' (2006-10-30)<br />
<br />
David Paktor added tracing support to the [[FCODE suite|OpenBIOS FCODE suite]].<br />
<br />
'''LinuxBIOS Symposium 2006''' (2006-10-01)<br />
<br />
The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH].<br />
<br />
'''FCODE suite 1.0.1 available''' (2006-09-21)<br />
<br />
David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code.<br />
<br />
'''SUN released OpenBOOT source code''' (2006-09-06)<br />
<br />
[http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB).<br />
<br />
[[News|[older news]]]<br />
</small><br />
|}<br />
__NOTOC__ <br />
__NOEDITSECTION__</div>Stepanhttps://openfirmware.info/index.php?title=Open_Firmware&diff=365Open Firmware2006-12-11T09:36:45Z<p>Stepan: </p>
<hr />
<div>== Introduction ==<br />
<br />
In 2006 the company of Open Firmware inventor Mitch Bradley, [http://firmworks.com/ Firmworks, Inc], released their Open Firmware implementation under a BSD license. This code shares some code with SUN's OpenBOOT implementation. It supports the x86 architecture and runs, amongst others, as a LinuxBIOS payload. It is the firmware implementation on the OLPC.<br />
<br />
== Download ==<br />
<br />
The code can be browsed online with the [http://openbios.org/viewvc/?root=OpenFirmware ViewVC facility]. <br />
<br />
The repository is available through Subversion:<br />
<br />
You can check it out as follows:<br />
$ svn co svn://openbios.org/openfirmware/<br />
<br />
if you want a specific revision: <br />
$ svn co svn://openbios.org/openfirmware -r 35<br />
<br />
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:<br />
<br />
$ svn co <nowiki>https://www.openbios.org/openfirmware-svn/ openfirmware</nowiki></div>Stepanhttps://openfirmware.info/index.php?title=Welcome_to_OpenBIOS&diff=29Welcome to OpenBIOS2006-12-11T09:20:01Z<p>Stepan: </p>
<hr />
<div><div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;"><br />
'''OpenBIOS''' is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably.<br />
<br />
Open Firmware is found on many servers and workstations and there are several commercial implementations from [[OpenBoot|SUN]], [[Open Firmware|Firmworks]], [[SmartFirmware|CodeGen]], Apple, IBM and others.<br />
</div><br />
<br />
{| cellspacing=5 cellpadding=5 border=0 valign="top" width=100%<br />
|-<br />
|style="vertical-align:top"|<br />
== Download ==<br />
<br />
Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]].<br />
<br />
== Contact ==<br />
<br />
The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page.<br />
<br />
== Project Statement ==<br />
<br />
Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project.<br />
<br />
== Credits ==<br />
<br />
Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc.<br />
<br />
|style="vertical-align:top"|<br />
== News ==<br />
<small><br />
'''FCODE suite 1.0.2 released''' (2006-10-30)<br />
<br />
David Paktor added tracing support to the [[FCODE suite|OpenBIOS FCODE suite]].<br />
<br />
'''LinuxBIOS Symposium 2006''' (2006-10-01)<br />
<br />
The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH].<br />
<br />
'''FCODE suite 1.0.1 available''' (2006-09-21)<br />
<br />
David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code.<br />
<br />
'''SUN released OpenBOOT source code''' (2006-09-06)<br />
<br />
[http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB).<br />
<br />
[[News|[older news]]]<br />
</small><br />
|}<br />
__NOTOC__ <br />
__NOEDITSECTION__</div>Stepanhttps://openfirmware.info/index.php?title=OpenBOOT&diff=361OpenBOOT2006-12-11T09:18:46Z<p>Stepan: /* Download */</p>
<hr />
<div>== Introduction ==<br />
<br />
In 2006 [http://sun.com/ Sun Microsystems] released their Open Firmware implementation OpenBoot under a BSL like license. Their code supports the sun4v architecture running on a hypervisor.<br />
<br />
== Download ==<br />
<br />
The code can be browsed online with the [http://openbios.org/viewvc/?root=OpenBOOT ViewVC facility]. <br />
<br />
The repository is available through Subversion:<br />
<br />
You can check it out as follows:<br />
$ svn co svn://openbios.org/openboot/<br />
<br />
if you want a specific revision: <br />
$ svn co svn://openbios.org/openboot -r 1<br />
<br />
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:<br />
<br />
$ svn co <nowiki>https://www.openbios.org/openboot-svn/ openboot</nowiki></div>Stepanhttps://openfirmware.info/index.php?title=OpenBOOT&diff=360OpenBOOT2006-12-11T09:18:19Z<p>Stepan: </p>
<hr />
<div>== Introduction ==<br />
<br />
In 2006 [http://sun.com/ Sun Microsystems] released their Open Firmware implementation OpenBoot under a BSL like license. Their code supports the sun4v architecture running on a hypervisor.<br />
<br />
== Download ==<br />
<br />
The code can be browsed online with the [http://openbios.org/viewvc/?root=OpenBoot ViewVC facility]. <br />
<br />
The repository is available through Subversion:<br />
<br />
You can check it out as follows:<br />
$ svn co svn://openbios.org/openboot/<br />
<br />
if you want a specific revision: <br />
$ svn co svn://openbios.org/openboot -r 1<br />
<br />
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:<br />
<br />
$ svn co <nowiki>https://www.openbios.org/openboot-svn/ openboot</nowiki></div>Stepanhttps://openfirmware.info/index.php?title=Welcome_to_OpenBIOS&diff=28Welcome to OpenBIOS2006-12-11T09:15:59Z<p>Stepan: </p>
<hr />
<div><div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;"><br />
'''OpenBIOS''' is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably.<br />
<br />
Open Firmware is found on many servers and workstations and there are several commercial implementations from SUN, Firmworks, [[SmartFirmware|CodeGen]], Apple, IBM and others.<br />
</div><br />
<br />
{| cellspacing=5 cellpadding=5 border=0 valign="top" width=100%<br />
|-<br />
|style="vertical-align:top"|<br />
== Download ==<br />
<br />
Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]].<br />
<br />
== Contact ==<br />
<br />
The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page.<br />
<br />
== Project Statement ==<br />
<br />
Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project.<br />
<br />
== Credits ==<br />
<br />
Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc.<br />
<br />
|style="vertical-align:top"|<br />
== News ==<br />
<small><br />
'''FCODE suite 1.0.2 released''' (2006-10-30)<br />
<br />
David Paktor added tracing support to the [[FCODE suite|OpenBIOS FCODE suite]].<br />
<br />
'''LinuxBIOS Symposium 2006''' (2006-10-01)<br />
<br />
The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH].<br />
<br />
'''FCODE suite 1.0.1 available''' (2006-09-21)<br />
<br />
David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code.<br />
<br />
'''SUN released OpenBOOT source code''' (2006-09-06)<br />
<br />
[http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB).<br />
<br />
[[News|[older news]]]<br />
</small><br />
|}<br />
__NOTOC__ <br />
__NOEDITSECTION__</div>Stepanhttps://openfirmware.info/index.php?title=SmartFirmware&diff=357SmartFirmware2006-12-11T09:15:14Z<p>Stepan: /* Introduction */</p>
<hr />
<div>== Introduction ==<br />
<br />
In 2006 [http://codegen.com/ CodeGen, Inc] released their Open Firmware implementation under a BSL like license. Their code, entirely written in ANSI C, contains the following components:<br />
<br />
* [http://www.codegen.com/SmartFirmware/index.html SmartFirmwareâ˘]: an ANSI C implementation of the IEEE-1275 Open Firmware boot firmware standard. Dramatically reduce and ease your firmware development and system bring-up times and costs.<br />
* An [http://www.codegen.com/SmartFirmware/ccfcode.html ANSI C compiler] that generates Open Firmware compatible Forth/Fcode makes it easy to develop drivers for PCI cards and PMC modules.<br />
<br />
== Download ==<br />
<br />
The code can be browsed online with the [http://openbios.org/viewvc/?root=SmartFirmware ViewVC facility]. <br />
<br />
The repository is available through Subversion:<br />
<br />
You can check it out as follows:<br />
$ svn co svn://openbios.org/smartfirmware/<br />
<br />
if you want a specific revision: <br />
$ svn co svn://openbios.org/smartfirmware -r 1<br />
<br />
If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend:<br />
<br />
$ svn co <nowiki>https://www.openbios.org/smartfirmware-svn/ smartfirmware</nowiki></div>Stepan