dmitrysobolev / forthos

x386 OS developed in Forth

Home Page:forthos

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

FORTHOS:
========

A forth operative system (and, in the future, 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 which is in public domain, and 
in Bran's Kernel Development Tutorial, by Brandon Friesen at 
http://www.osdever.net/bkerndev/Docs/title.htm

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)
August (augustulus@freenet) tested the kernel with  qemu.


CURRENT STATUS:
===============

In this point, forthos initialize the GDT, IDT and PIT. It has drivers for 
text video and keyboard.

Grub is used to load an simple text file as an 'module' to ram. 
(see http://lowlevel.brainsware.org/wiki/index.php/Multiboot)
So at the time grub passes the control to main, in ebx the pointer to Multiboot-header is stored in var > module.
The var_GRUB holds the adress of the header simply adding 0x18 we get pointer to 'mbs_mods_addr '.
There is the beginning and end of the "module". Now simply show it ! 

REQUIREMENTS:
=============

*) nasm
*) GNU make
*) python >= 2.4
*) qemu >= 0.11


GETTING FORTHOS:
================

To get forthos, you'll need git. You can get a copy from 
git@github.com:jdinuncio/forthos.git. In linux you can type:

    $ git clone git@github.com:jdinuncio/forthos.git


COMPILATION:
============

    $ cd forthos
    $ make clean
    $ make kernel
    $ make image


INSTALATION AND RUNNING:
========================

forthos runs as a virtual machine inside qemu. It doesn't need to be installed
and it doesn't touch any file outside its directory. To run it, type:

    $ make run


About

x386 OS developed in Forth

forthos

License:Other


Languages

Language:Forth 52.0%Language:Assembly 38.1%Language:Python 7.4%Language:Makefile 2.0%Language:Shell 0.3%Language:Objective-C 0.2%