X-Git-Url: http://www2.svjatoslav.eu/gitweb/?p=fifth.git;a=blobdiff_plain;f=doc%2Findex.org;fp=doc%2Findex.org;h=63039470098d584b0551076679b20c977d68a453;hp=79b559293f7645a1b97353658b45f9829a36ddc9;hb=be12874c4742b31507e81536b80db7de4b800d24;hpb=1a9256b173a7c94a017d6480acdf2f67d49bae36 diff --git a/doc/index.org b/doc/index.org index 79b5592..6303947 100644 --- a/doc/index.org +++ b/doc/index.org @@ -1,14 +1,5 @@ #+TITLE: Fifth - virtual machine, operating system, programming language -* (document settings) :noexport: -** use dark style for TWBS-HTML exporter -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: * General - This program is free software: released under Creative Commons Zero (CC0) license @@ -110,14 +101,22 @@ tree similar to this: - Lots of enthusiasm. * Numbers representation within Fifth +Because we are in full experimentation mode here (no regard for +compatibility whatsoever), why not to try also alternative number +representation ? + +Here alternative hexadecimal number representation format is devised: + [[file:numbers.png][file:numbers.png]] -Because I can define everything, starting from CPU, why not try also -alternative and unique number representation ? +Essentially square is split into 4 triangles. Each triangle represents +one bit. + +Fifth uses this hexadecimal format as primary throughout entire +system. + +See also: [[https://en.wikipedia.org/wiki/Bibi-binary][Bibi-binary]]. -Fifth uses its hexdecimal number representation as primary. Numbers -shape is formed by dividing a square into four parts. And manipulating -their color (black or white). * Disk file map, and it's data structures Core and high-level boot code is stored outside of the filesystem to allow easy access to it, at early booting time, when filesystem is not @@ -928,24 +927,32 @@ mousedo ( -- ) Updates mouse coordinates and keys. Parse mouse click buffer, and draw mouse cursor to "screen". #+END_VERSE ** 2D graphic library -#+BEGIN_VERSE -lineh ( color len x y imgbuf -- ) draws horisontal line - from X,Y coordinates to right, with specified length. -linev ( color len x y imgbuf -- ) draws vertical line - down, from coordinates X,Y, with specified length. -box ( color x2 x1 y2 y1 imgbuf -- ) draws rectangular - box. x2 bust be >= x1, y2 must be >= y1. - x1,y1-----------+ - | | - | | - +-----------x2,y2 - -flipv ( imgbuf -- ) flip image vertically. -imgcoltrans ( ImgBuf Color ToColor -- ) Translate all pixels in - specified image with "Color" into "ToColor". -imgfill ( color x y imgbuf -- ) Fill image region starting at location - X & Y with specified color. -#+END_VERSE + ++ lineh ( color len x y imgbuf -- ) :: draws horisontal line from X,Y + coordinates to right, with specified length. + ++ linev ( color len x y imgbuf -- ) :: draws vertical line down, from + coordinates X,Y, with specified length. + ++ box ( color x2 x1 y2 y1 imgbuf -- ) :: draws rectangular box. x2 + bust be >= x1, y2 must be >= y1. + + #+begin_example + x1,y1-----------+ + | | + | | + +-----------x2,y2 + #+end_example + ++ flipv ( imgbuf -- ) :: flip image vertically. + ++ imgcoltrans ( ImgBuf Color ToColor -- ) :: Translate all pixels in + specified image with "Color" into "ToColor". + ++ imgfill ( color x y imgbuf -- ) :: Fill image region starting at + location X & Y with specified color. + + ** Trigonometry functions *** sin ( a -- result ) :PROPERTIES: