/my_forth_-os-

forth standalone for 386

Primary LanguageAssemblyOtherNOASSERTION

"MY-FORTHOS"

(A forth interpreter as a operative system.) Standalone forth interpreter.

This is based on :
"A FORTH compiler and tutorial - a step-by-step implementation of a FORTH language system."
on http://annexia.org/forth

and in Bran's Kernel Development Tutorial, by Brandon Friesen at 
http://www.osdever.net/bkerndev/Docs/title.htm

and on BB4Wforth by Richard Russell, October 2009  http://www.rtrussell.co.uk/ (http://www.rtrussell.co.uk/bb4wforth.zip)
	"The following standard Forth words, absent from Jonesforth, have been
	added in (BB4Wforth) : M*  UM*  */MOD  U/MOD  UM/MOD  SM/MOD  FM/MOD  D+  D-
	ROLL  R@  DO  ?DO  I  J  LEAVE  UNLOOP  LOOP  +LOOP   (->added in forth_words.s )
	 <BUILDS  DOES>  ABS MAX  MIN  PAGE  AT-XY  MS  TYPE  INCLUDED  [CHAR]  2OVER  CELL+  CHARS
	CHAR+  2!  2@  LSHIFT  RSHIFT  >BODY  MOVE  FILL  .(  C"  <#  #  #S  HOLD
	SIGN  #>  DIGIT  >NUMBER  POSTPONE  EVALUATE  ACCEPT  2R>  2>R  CONVERT (-> added in forth.f) "

Important: ROT and -ROT are swaped!! meens ROT  used in "http://annexia.org/forth" is now -ROT
(see also  http://lambda-the-ultimate.org/node/2452   >>  
"ROT reversed?"
"Am I crazy, or is ROT/-ROT swapped compared to the standard (as in Starting Forth)?
By kotlinski at Thu, 2009-01-15 10:38 ")

Port to nasm started by jdinuncio (José Dinuncio)

At moment some  bugs;
Only for learning and hobby.
My intention was to learn nasm and forth basics and NaturalDocs.
The forth is not very usefull. There is no floppy acces , no memory menager,   no ports  etc.... available.
I think it is only for learning.

Added : Now  grub loads the file forth.f as an 'module' to memory.
		with some simple compiling loops it is now  possible to get an more powerfull 
		standalone forth.
		Still some bugs
forth.f : Is the file jonesforth.f without '\' comments and some words deleted.
		  Still bugs .

Thats it.

REMARK

for compiling the source you need nasm ver.2.0x 
compiling with nasm 0.98 in UBUNTU 8.04 failed!!!

August (augustulus@freenet) tested the kernel with  qemu.

LICENCE of  jonesforth.S.txt:
 "/*	A sometimes minimal FORTH compiler and tutorial for Linux / i386 systems. -*- asm -*-
	By Richard W.M. Jones <rich@annexia.org> http://annexia.org/forth
	This is PUBLIC DOMAIN (see public domain release statement below).
	$Id: jonesforth.S,v 1.47 2009-09-11 08:33:13 rich Exp $

	...
	
	
	PUBLIC DOMAIN ----------------------------------------------------------------------

	I, the copyright holder of this work, hereby release it into the public domain. This applies worldwide.

	In case this is not legally possible, I grant any entity the right to use this work for any purpose,
	without any conditions, unless such conditions are required by law.  
	...."