[OpenBIOS] Fcode evaluator Information

Stefan Reinauer stepan at openbios.org
Sat Jul 24 03:18:05 CEST 2004

* madhu.kiran at soc-soft.com <madhu.kiran at soc-soft.com> [040722 11:08]:
> 1)       We need FCode Evaluator information. We are confused from the
> spec about how to develop FCode evaluator for particular target hard
> ware. Please share with us any documentation regarding FCode evaluator. 

There is several information available: 
* IEEE 1275-1994 Open Firmware Core specification. Find more
  information at http://www.openbios.org/docs/1275.html
* SUN provides some fine books on fcode programming, ie. "Writing FCode
  3.x Programs" which is also available as PDF on the SUN website

But there is no need to develop a new FCode evaluator, since quite some
exist already.. See unstable/forth/device/feval.fs:byte-load in the
OpenBIOS bitkeeper tree or get tar balls at

> 2)       According OpenBIOS software, kernel developed both in C and
> Forth. WE understand that C language used for generic Kernel, Forth is
> for Open Firmware specification interfaces. How did you compile both
> together to put on target? ( If u compile C code separately for target
> by using cross compiler and  FCode translated through the evaluator how
> link form between these at run time)

On target you have two choices, either you use the "builtin image" which
contains the forth dictionary within the kernel image, or you can choose
to read a dictionary at a fixed address in flash. 
The dictionary contains all of the Open Firmare interface code including
the fcode evaluator, and the ans forth implementation. It is created by
the forth kernel itself during compilation.

Cross compilation in OpenBIOS is untested, and needs a bit of work.
Currently you have to bootstrap at least on a machine with equal
bitwidth (32/64) and endianess (big/little endian)


More information about the OpenBIOS mailing list