doc: Add xmodem documentation.
[bertos.git] / README.bertos
index fc6e8f181c5c096a141ee4d09d294e47f7f56ead..65edccce173bdbd65b734aafc134564f61c7e98c 100644 (file)
@@ -1,8 +1,12 @@
-/*
- * This document is automatically processed by Doxygen (http://www.doxygen.org/).
- * Don't remove special formatting tags.
- */
 /*!
+<!--
+This document is automatically processed by Doxygen (http://www.doxygen.org/).
+Don't remove special formatting tags.
+This section won't be processed unless enabled.
+
+See STATUS for further information and tips about Doxygen tags.
+-->
+
 
 \mainpage
 
@@ -17,10 +21,11 @@ environments, from 8-bit processor to Linux and Win32 hosted application
 
 \section history History and Motivation
 
-BeRTOS was born as a collection of useful, highly optimized and fine-tuned
-libraries for embedded systems.  Each library had its own scope and could be
-used singularly in a project, though they were also meant to cooperate to
-build the whole underlying software layer commonly called "operating system".
+BeRTOS was born as a extremely modular, highly optimized and fine-tuned
+operating system for embedded programming.
+As a result, each module has its own scope and can be used alone or in
+cooperation with other modules.
+It's even possible to use most of the drivers without activating the kernel module.
 
 We have grown it following our guidelines: simplicity and beauty.
 These guidelines made it possible to evolve it in a full-featured real
@@ -29,14 +34,14 @@ without giving up reliability and performace.
 
 To achieve the highest possible reusability, most BeRTOS components are
 designed for fine-grained modularity and minimal external dependencies.
-Most non-essential features can be configured out for application with small
+Most non-essential features can be configured out for applications with small
 memory footprint requirements.
 
 \section features Features
 
   - multitasking kernel with IPC, semaphores, priority levels;
-  - a comprehensive set of generic drivers for a wide range of devices, 
-    which can be easily customized to the actual hardware: timer, serial, 
+  - a comprehensive set of generic drivers for a wide range of devices,
+    which can be easily customized to the actual hardware: timer, serial,
     adc, ntc, pwm, stepper motors, dc motors, lcd, keyboards, buzzer, eeprom;
   - full graphic subsystem for simple displays, with font support, bitmaps,
     clipping, text formatting, interactive menus;
@@ -53,28 +58,29 @@ memory footprint requirements.
 
 The modules are sorted in subdirectories by their category:
 
-  - algos/   : algorithms;
-  - app/     : demo application;
-  - cfg/     : configuration stuff;
-  - cxxutil/ : c++ libraries;
-  - doc/     : documentation;
-  - drv/     : hardware drivers;
-  - dt/             : ?
-  - emul/    : Qt-based emulator framework for embedded applications;
-  - fonts/   : fonts
-  - gfx/     : general purpose graphics routines;
-  - gui/     : widgets for simple displays;
-  - hw/             : hardware-specific declarations;
-  - icons/   : conversion tool from image TXT format to LCD bitmap;
-  - io/             : infrastructure of I/O-related modules for hosted applications;
-  - kern/    : multitasking kernel;
-  - mware/   : algorithms, containers and other standalone code;
-  - os/             : OS-abstraction layers for hosted environments;
-  - qtext    : ?
+  - app/            : demo applications;
+  - bertos/algo/    : algorithms;
+  - bertos/cfg/     : configuration stuff;
+  - bertos/drv/     : hardware drivers;
+  - bertos/dt/     : experimental object oriented gui toolkit;
+  - bertos/emul/    : Qt-based emulator framework for embedded applications;
+  - bertos/fonts/   : fonts;
+  - bertos/fs/      : file system related stuff;
+  - bertos/gfx/     : general purpose graphics routines;
+  - bertos/gui/     : widgets for simple displays;
+  - bertos/hw/     : hardware-specific declarations;
+  - bertos/icons/   : conversion tool from image TXT format to LCD bitmap;
+  - bertos/kern/    : multitasking kernel;
+  - bertos/mware/   : algorithms, other standalone code;
+  - bertos/struct/  : containers and other data structures;
+  - bertos/os/     : OS-abstraction layers for hosted environments;
+  - doc/            : documentation;
 
 The top-level directory contains a few support headers that are meant to be
 usable by any C/C++ embedded or hosted application.
 
+See the \ref dev_status page for information about the various drivers.
+
 \section license License
 
 BeRTOS is provided under the term of the GNU General Public License