From d11df55c15234c0aaf81d58737cd854f5f098ea7 Mon Sep 17 00:00:00 2001
From: Terraneo Federico <fede.tft@hotmail.it>
Date: Wed, 1 May 2013 19:45:22 +0200
Subject: [PATCH] Reorganized directory structure

---
 Readme.txt                                    |   3 -
 miosix/Makefile                               |   2 +-
 miosix/{doc => _doc}/doxygen/Doxyfile         |   0
 .../{doc => _doc}/doxygen/documentation.dox   |   0
 miosix/_doc/doxygen/html/annotated.html       |  66 ++
 .../_doc/doxygen/html/arch__registers_8h.html |  46 ++
 miosix/_doc/doxygen/html/bc_s.png             | Bin 0 -> 677 bytes
 miosix/_doc/doxygen/html/bsp_8h.html          |  58 ++
 miosix/_doc/doxygen/html/classes.html         |  55 ++
 ...miosix_1_1_condition_variable-members.html |  45 ++
 .../classmiosix_1_1_condition_variable.html   | 206 ++++++
 .../html/classmiosix_1_1_console-members.html |  46 ++
 .../doxygen/html/classmiosix_1_1_console.html | 239 ++++++
 ..._1_control_scheduler_priority-members.html |  43 ++
 ...miosix_1_1_control_scheduler_priority.html | 144 ++++
 .../classmiosix_1_1_directory-members.html    |  44 ++
 .../html/classmiosix_1_1_directory.html       | 213 ++++++
 ..._1_1_e_d_f_scheduler_priority-members.html |  43 ++
 ...ssmiosix_1_1_e_d_f_scheduler_priority.html | 144 ++++
 ...x_1_1_exception_handling_data-members.html |  41 ++
 ...assmiosix_1_1_exception_handling_data.html |  98 +++
 ...1_fast_interrupt_disable_lock-members.html |  41 ++
 ...iosix_1_1_fast_interrupt_disable_lock.html | 101 +++
 ..._1_fast_interrupt_enable_lock-members.html |  41 ++
 ...miosix_1_1_fast_interrupt_enable_lock.html | 108 +++
 .../classmiosix_1_1_fast_mutex-members.html   |  47 ++
 .../html/classmiosix_1_1_fast_mutex.html      | 193 +++++
 .../classmiosix_1_1_filesystem-members.html   |  43 ++
 .../html/classmiosix_1_1_filesystem.html      | 150 ++++
 ...ix_1_1_interrupt_disable_lock-members.html |  41 ++
 ...lassmiosix_1_1_interrupt_disable_lock.html | 101 +++
 ...six_1_1_interrupt_enable_lock-members.html |  41 ++
 ...classmiosix_1_1_interrupt_enable_lock.html | 124 ++++
 .../html/classmiosix_1_1_lock-members.html    |  42 ++
 .../doxygen/html/classmiosix_1_1_lock.html    | 137 ++++
 ...lassmiosix_1_1_lower_priority-members.html |  40 +
 .../html/classmiosix_1_1_lower_priority.html  | 100 +++
 ...ssmiosix_1_1_memory_profiling-members.html |  46 ++
 .../classmiosix_1_1_memory_profiling.html     | 204 ++++++
 .../html/classmiosix_1_1_mutex-members.html   |  46 ++
 .../doxygen/html/classmiosix_1_1_mutex.html   | 177 +++++
 ...smiosix_1_1_pause_kernel_lock-members.html |  41 ++
 .../classmiosix_1_1_pause_kernel_lock.html    | 101 +++
 ...1_priority_scheduler_priority-members.html |  43 ++
 ...iosix_1_1_priority_scheduler_priority.html | 144 ++++
 .../html/classmiosix_1_1_queue-members.html   |  52 ++
 .../doxygen/html/classmiosix_1_1_queue.html   | 420 +++++++++++
 ...iosix_1_1_restart_kernel_lock-members.html |  41 ++
 .../classmiosix_1_1_restart_kernel_lock.html  | 124 ++++
 ...classmiosix_1_1_software_i2_c-members.html |  45 ++
 .../html/classmiosix_1_1_software_i2_c.html   | 206 ++++++
 ...lassmiosix_1_1_software_s_p_i-members.html |  45 ++
 .../html/classmiosix_1_1_software_s_p_i.html  | 223 ++++++
 .../html/classmiosix_1_1_thread-members.html  |  66 ++
 .../doxygen/html/classmiosix_1_1_thread.html  | 686 ++++++++++++++++++
 .../html/classmiosix_1_1_timer-members.html   |  45 ++
 .../doxygen/html/classmiosix_1_1_timer.html   | 183 +++++
 .../html/classmiosix_1_1_unlock-members.html  |  43 ++
 .../doxygen/html/classmiosix_1_1_unlock.html  | 183 +++++
 ...__private_1_1_auxiliary_timer-members.html |  40 +
 ...ssmiosix__private_1_1_auxiliary_timer.html |  82 +++
 miosix/_doc/doxygen/html/closed.png           | Bin 0 -> 126 bytes
 miosix/_doc/doxygen/html/console_8h.html      |  51 ++
 miosix/_doc/doxygen/html/delays_8h.html       |  52 ++
 miosix/_doc/doxygen/html/disk_8h.html         |  47 ++
 miosix/_doc/doxygen/html/doxygen.css          | 656 +++++++++++++++++
 miosix/_doc/doxygen/html/doxygen.png          | Bin 0 -> 3942 bytes
 miosix/_doc/doxygen/html/endianness_8h.html   |  59 ++
 miosix/_doc/doxygen/html/files.html           |  49 ++
 miosix/_doc/doxygen/html/ftv2blank.png        | Bin 0 -> 174 bytes
 miosix/_doc/doxygen/html/ftv2doc.png          | Bin 0 -> 255 bytes
 miosix/_doc/doxygen/html/ftv2folderclosed.png | Bin 0 -> 259 bytes
 miosix/_doc/doxygen/html/ftv2folderopen.png   | Bin 0 -> 261 bytes
 miosix/_doc/doxygen/html/ftv2lastnode.png     | Bin 0 -> 233 bytes
 miosix/_doc/doxygen/html/ftv2link.png         | Bin 0 -> 358 bytes
 miosix/_doc/doxygen/html/ftv2mlastnode.png    | Bin 0 -> 160 bytes
 miosix/_doc/doxygen/html/ftv2mnode.png        | Bin 0 -> 194 bytes
 miosix/_doc/doxygen/html/ftv2node.png         | Bin 0 -> 235 bytes
 miosix/_doc/doxygen/html/ftv2plastnode.png    | Bin 0 -> 165 bytes
 miosix/_doc/doxygen/html/ftv2pnode.png        | Bin 0 -> 200 bytes
 miosix/_doc/doxygen/html/ftv2vertline.png     | Bin 0 -> 229 bytes
 miosix/_doc/doxygen/html/functions.html       | 504 +++++++++++++
 miosix/_doc/doxygen/html/functions_enum.html  |  50 ++
 miosix/_doc/doxygen/html/functions_eval.html  |  57 ++
 miosix/_doc/doxygen/html/functions_func.html  | 478 ++++++++++++
 miosix/_doc/doxygen/html/functions_vars.html  |  54 ++
 miosix/_doc/doxygen/html/globals.html         |  97 +++
 miosix/_doc/doxygen/html/globals_defs.html    |  88 +++
 miosix/_doc/doxygen/html/globals_func.html    |  52 ++
 miosix/_doc/doxygen/html/gpio_8h.html         |  92 +++
 miosix/_doc/doxygen/html/group___drivers.html |  37 +
 .../_doc/doxygen/html/group___filesystem.html |  97 +++
 .../_doc/doxygen/html/group___hardware.html   |  37 +
 .../_doc/doxygen/html/group___interfaces.html | 405 +++++++++++
 miosix/_doc/doxygen/html/group___kernel.html  | 254 +++++++
 .../_doc/doxygen/html/group___settings.html   | 235 ++++++
 miosix/_doc/doxygen/html/group___sync.html    |  51 ++
 miosix/_doc/doxygen/html/group___util.html    | 102 +++
 miosix/_doc/doxygen/html/index.html           |  16 +
 miosix/_doc/doxygen/html/main.html            |  34 +
 .../doxygen/html/miosix__settings_8h.html     |  73 ++
 miosix/_doc/doxygen/html/modules.html         |  42 ++
 .../_doc/doxygen/html/namespacemembers.html   | 278 +++++++
 .../doxygen/html/namespacemembers_enum.html   |  51 ++
 .../doxygen/html/namespacemembers_eval.html   |  96 +++
 .../doxygen/html/namespacemembers_func.html   | 108 +++
 .../doxygen/html/namespacemembers_vars.html   |  66 ++
 miosix/_doc/doxygen/html/namespacemiosix.html | 389 ++++++++++
 .../doxygen/html/namespacemiosix__pivate.html |  47 ++
 miosix/_doc/doxygen/html/namespaces.html      |  42 ++
 miosix/_doc/doxygen/html/nav_f.png            | Bin 0 -> 159 bytes
 miosix/_doc/doxygen/html/nav_h.png            | Bin 0 -> 97 bytes
 miosix/_doc/doxygen/html/open.png             | Bin 0 -> 118 bytes
 miosix/_doc/doxygen/html/portability_8h.html  |  54 ++
 miosix/_doc/doxygen/html/tab_a.png            | Bin 0 -> 140 bytes
 miosix/_doc/doxygen/html/tab_b.png            | Bin 0 -> 178 bytes
 miosix/_doc/doxygen/html/tab_h.png            | Bin 0 -> 192 bytes
 miosix/_doc/doxygen/html/tab_s.png            | Bin 0 -> 189 bytes
 miosix/_doc/doxygen/html/tabs.css             |  59 ++
 miosix/_doc/doxygen/html/tree.html            | 131 ++++
 miosix/{doc => _doc}/doxygen/index.html       |   0
 .../pdfdoc/features/Miosix features.odt       | Bin
 .../pdfdoc/features/Miosix features.pdf       | Bin
 miosix/{doc => _doc}/textdoc/Changelog.txt    |   8 +
 miosix/{doc => _doc}/textdoc/Directories.txt  |   0
 .../textdoc/Disable exceptions.txt            |   0
 miosix/{doc => _doc}/textdoc/Error debug.txt  |   0
 .../textdoc/Filesystem benchmarks.txt         |   0
 miosix/{doc => _doc}/textdoc/Todo.txt         |   0
 .../textdoc/gcc threadsafety.txt              |   0
 .../textdoc/newlib threadsafety.txt           |   0
 .../textdoc/stm32-bootloader.txt              |   0
 miosix/{examples => _examples}/asm/Readme.txt |   0
 miosix/{examples => _examples}/asm/main.s     |   0
 .../sad_trombone/Makefile                     |   0
 .../sad_trombone/Readme.txt                   |   0
 .../sad_trombone/adpcm.c                      |   0
 .../sad_trombone/adpcm.h                      |   0
 .../sad_trombone/circuit.jpeg                 | Bin
 .../sad_trombone/convert.cpp                  |   0
 .../sad_trombone/main.cpp                     |   0
 .../sad_trombone/player.cpp                   |   0
 .../sad_trombone/player.h                     |   0
 .../sad_trombone/sad_trombone.h               |   0
 .../sad_trombone/sad_trombone.wav             | Bin
 .../thread_native/Readme.txt                  |   0
 .../thread_native/native_thread_example.cpp   |   0
 .../thread_pthread/Readme.txt                 |   0
 .../thread_pthread/pthread_example.cpp        |   0
 .../{ => _tools}/bootloaders/stm32/Readme.txt |   0
 .../stm32/pc_loader/CMakeLists.txt            |   0
 .../bootloaders/stm32/pc_loader/main.cpp      |   0
 .../bootloaders/stm32/pc_loader/pc_loader     | Bin
 .../stm32/pc_loader/serialstream.cpp          |   0
 .../stm32/pc_loader/serialstream.h            |   0
 .../stm32/uc_loader_ethboardv2/bootloader.bin | Bin
 .../stm32/uc_loader_ethboardv2/bootloader.hex |   0
 .../uc_loader_stm3210e-eval/bootloader.bin    | Bin
 .../uc_loader_stm3210e-eval/bootloader.hex    |   0
 .../uc_loader_stm3220g-eval/bootloader.bin    | Bin
 .../uc_loader_stm3220g-eval/bootloader.hex    |   0
 miosix/{ => _tools}/check_global_objects.pl   |   0
 miosix/{ => _tools}/compiler/Readme.txt       |   0
 miosix/{ => _tools}/compiler/cleanup.sh       |   0
 miosix/{ => _tools}/compiler/download.sh      |   0
 .../{ => _tools}/compiler/install-script.sh   |   0
 .../compiler/lpc21isp_148_src.zip             | Bin
 .../{ => _tools}/compiler/patches/gcc.patch   |   0
 miosix/{ => _tools}/compiler/patches/gcc.txt  |   0
 .../compiler/patches/newlib.patch             |   0
 .../{ => _tools}/compiler/patches/newlib.txt  |   0
 miosix/{ => _tools}/compiler/uninstall.sh     |   0
 .../delay_test/delay_test.cpp                 |   0
 .../feedforward_profiling/CMakeLists.txt      |   0
 .../feedforward_profiling/Readme.txt          |   0
 .../feedforward_profiling/fdstream.h          |   0
 .../feedforward_profiling/fdstream.tcc        |   0
 .../feedforward_profiling/feedforward.png     | Bin
 .../feedforward_profiling/ff_off.txt          |   0
 .../feedforward_profiling/ff_on.txt           |   0
 .../feedforward_profiling/ff_reinit.txt       |   0
 .../feedforward_profiling/gdb_init.script     |   0
 .../feedforward_profiling/jtag_profiler.cpp   |   0
 .../feedforward_profiling/plot.sci            |   0
 .../feedforward_profiling/plot.sh             |   0
 .../feedforward_profiling/test.cpp            |   0
 miosix/{temp => _tools}/loc_counter.sh        |   0
 miosix/{temp => _tools}/ram_test/main.cpp     |   0
 miosix/{temp => _tools}/ram_test/sha1.cpp     |   0
 miosix/{temp => _tools}/ram_test/sha1.h       |   0
 miosix/{ => _tools}/testsuite/Readme.txt      |   2 +-
 miosix/{ => _tools}/testsuite/testsuite.cpp   |   0
 .../unused}/conflict_table.cpp                |   0
 .../{temp => _tools/unused}/conflict_table.h  |   0
 .../{temp => _tools/unused}/pthread_key.cpp   |   0
 .../doc/pdfdoc/suspend/Suspend to FLASH.odt   | Bin 59878 -> 0 bytes
 .../doc/pdfdoc/suspend/Suspend to FLASH.pdf   | Bin 116706 -> 0 bytes
 miosix/temp/simulation.sci                    | 236 ------
 198 files changed, 11267 insertions(+), 241 deletions(-)
 rename miosix/{doc => _doc}/doxygen/Doxyfile (100%)
 rename miosix/{doc => _doc}/doxygen/documentation.dox (100%)
 create mode 100644 miosix/_doc/doxygen/html/annotated.html
 create mode 100644 miosix/_doc/doxygen/html/arch__registers_8h.html
 create mode 100644 miosix/_doc/doxygen/html/bc_s.png
 create mode 100644 miosix/_doc/doxygen/html/bsp_8h.html
 create mode 100644 miosix/_doc/doxygen/html/classes.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix_1_1_condition_variable-members.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix_1_1_condition_variable.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix_1_1_console-members.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix_1_1_console.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix_1_1_control_scheduler_priority-members.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix_1_1_control_scheduler_priority.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix_1_1_directory-members.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix_1_1_directory.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix_1_1_e_d_f_scheduler_priority-members.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix_1_1_e_d_f_scheduler_priority.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix_1_1_exception_handling_data-members.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix_1_1_exception_handling_data.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix_1_1_fast_interrupt_disable_lock-members.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix_1_1_fast_interrupt_disable_lock.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix_1_1_fast_interrupt_enable_lock-members.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix_1_1_fast_interrupt_enable_lock.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix_1_1_fast_mutex-members.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix_1_1_fast_mutex.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix_1_1_filesystem-members.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix_1_1_filesystem.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix_1_1_interrupt_disable_lock-members.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix_1_1_interrupt_disable_lock.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix_1_1_interrupt_enable_lock-members.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix_1_1_interrupt_enable_lock.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix_1_1_lock-members.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix_1_1_lock.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix_1_1_lower_priority-members.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix_1_1_lower_priority.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix_1_1_memory_profiling-members.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix_1_1_memory_profiling.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix_1_1_mutex-members.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix_1_1_mutex.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix_1_1_pause_kernel_lock-members.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix_1_1_pause_kernel_lock.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix_1_1_priority_scheduler_priority-members.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix_1_1_priority_scheduler_priority.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix_1_1_queue-members.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix_1_1_queue.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix_1_1_restart_kernel_lock-members.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix_1_1_restart_kernel_lock.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix_1_1_software_i2_c-members.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix_1_1_software_i2_c.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix_1_1_software_s_p_i-members.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix_1_1_software_s_p_i.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix_1_1_thread-members.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix_1_1_thread.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix_1_1_timer-members.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix_1_1_timer.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix_1_1_unlock-members.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix_1_1_unlock.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix__private_1_1_auxiliary_timer-members.html
 create mode 100644 miosix/_doc/doxygen/html/classmiosix__private_1_1_auxiliary_timer.html
 create mode 100644 miosix/_doc/doxygen/html/closed.png
 create mode 100644 miosix/_doc/doxygen/html/console_8h.html
 create mode 100644 miosix/_doc/doxygen/html/delays_8h.html
 create mode 100644 miosix/_doc/doxygen/html/disk_8h.html
 create mode 100644 miosix/_doc/doxygen/html/doxygen.css
 create mode 100644 miosix/_doc/doxygen/html/doxygen.png
 create mode 100644 miosix/_doc/doxygen/html/endianness_8h.html
 create mode 100644 miosix/_doc/doxygen/html/files.html
 create mode 100644 miosix/_doc/doxygen/html/ftv2blank.png
 create mode 100644 miosix/_doc/doxygen/html/ftv2doc.png
 create mode 100644 miosix/_doc/doxygen/html/ftv2folderclosed.png
 create mode 100644 miosix/_doc/doxygen/html/ftv2folderopen.png
 create mode 100644 miosix/_doc/doxygen/html/ftv2lastnode.png
 create mode 100644 miosix/_doc/doxygen/html/ftv2link.png
 create mode 100644 miosix/_doc/doxygen/html/ftv2mlastnode.png
 create mode 100644 miosix/_doc/doxygen/html/ftv2mnode.png
 create mode 100644 miosix/_doc/doxygen/html/ftv2node.png
 create mode 100644 miosix/_doc/doxygen/html/ftv2plastnode.png
 create mode 100644 miosix/_doc/doxygen/html/ftv2pnode.png
 create mode 100644 miosix/_doc/doxygen/html/ftv2vertline.png
 create mode 100644 miosix/_doc/doxygen/html/functions.html
 create mode 100644 miosix/_doc/doxygen/html/functions_enum.html
 create mode 100644 miosix/_doc/doxygen/html/functions_eval.html
 create mode 100644 miosix/_doc/doxygen/html/functions_func.html
 create mode 100644 miosix/_doc/doxygen/html/functions_vars.html
 create mode 100644 miosix/_doc/doxygen/html/globals.html
 create mode 100644 miosix/_doc/doxygen/html/globals_defs.html
 create mode 100644 miosix/_doc/doxygen/html/globals_func.html
 create mode 100644 miosix/_doc/doxygen/html/gpio_8h.html
 create mode 100644 miosix/_doc/doxygen/html/group___drivers.html
 create mode 100644 miosix/_doc/doxygen/html/group___filesystem.html
 create mode 100644 miosix/_doc/doxygen/html/group___hardware.html
 create mode 100644 miosix/_doc/doxygen/html/group___interfaces.html
 create mode 100644 miosix/_doc/doxygen/html/group___kernel.html
 create mode 100644 miosix/_doc/doxygen/html/group___settings.html
 create mode 100644 miosix/_doc/doxygen/html/group___sync.html
 create mode 100644 miosix/_doc/doxygen/html/group___util.html
 create mode 100644 miosix/_doc/doxygen/html/index.html
 create mode 100644 miosix/_doc/doxygen/html/main.html
 create mode 100644 miosix/_doc/doxygen/html/miosix__settings_8h.html
 create mode 100644 miosix/_doc/doxygen/html/modules.html
 create mode 100644 miosix/_doc/doxygen/html/namespacemembers.html
 create mode 100644 miosix/_doc/doxygen/html/namespacemembers_enum.html
 create mode 100644 miosix/_doc/doxygen/html/namespacemembers_eval.html
 create mode 100644 miosix/_doc/doxygen/html/namespacemembers_func.html
 create mode 100644 miosix/_doc/doxygen/html/namespacemembers_vars.html
 create mode 100644 miosix/_doc/doxygen/html/namespacemiosix.html
 create mode 100644 miosix/_doc/doxygen/html/namespacemiosix__pivate.html
 create mode 100644 miosix/_doc/doxygen/html/namespaces.html
 create mode 100644 miosix/_doc/doxygen/html/nav_f.png
 create mode 100644 miosix/_doc/doxygen/html/nav_h.png
 create mode 100644 miosix/_doc/doxygen/html/open.png
 create mode 100644 miosix/_doc/doxygen/html/portability_8h.html
 create mode 100644 miosix/_doc/doxygen/html/tab_a.png
 create mode 100644 miosix/_doc/doxygen/html/tab_b.png
 create mode 100644 miosix/_doc/doxygen/html/tab_h.png
 create mode 100644 miosix/_doc/doxygen/html/tab_s.png
 create mode 100644 miosix/_doc/doxygen/html/tabs.css
 create mode 100644 miosix/_doc/doxygen/html/tree.html
 rename miosix/{doc => _doc}/doxygen/index.html (100%)
 rename miosix/{doc => _doc}/pdfdoc/features/Miosix features.odt (100%)
 rename miosix/{doc => _doc}/pdfdoc/features/Miosix features.pdf (100%)
 rename miosix/{doc => _doc}/textdoc/Changelog.txt (98%)
 rename miosix/{doc => _doc}/textdoc/Directories.txt (100%)
 rename miosix/{doc => _doc}/textdoc/Disable exceptions.txt (100%)
 rename miosix/{doc => _doc}/textdoc/Error debug.txt (100%)
 rename miosix/{doc => _doc}/textdoc/Filesystem benchmarks.txt (100%)
 rename miosix/{doc => _doc}/textdoc/Todo.txt (100%)
 rename miosix/{doc => _doc}/textdoc/gcc threadsafety.txt (100%)
 rename miosix/{doc => _doc}/textdoc/newlib threadsafety.txt (100%)
 rename miosix/{doc => _doc}/textdoc/stm32-bootloader.txt (100%)
 rename miosix/{examples => _examples}/asm/Readme.txt (100%)
 rename miosix/{examples => _examples}/asm/main.s (100%)
 rename miosix/{examples => _examples}/sad_trombone/Makefile (100%)
 rename miosix/{examples => _examples}/sad_trombone/Readme.txt (100%)
 rename miosix/{examples => _examples}/sad_trombone/adpcm.c (100%)
 rename miosix/{examples => _examples}/sad_trombone/adpcm.h (100%)
 rename miosix/{examples => _examples}/sad_trombone/circuit.jpeg (100%)
 rename miosix/{examples => _examples}/sad_trombone/convert.cpp (100%)
 rename miosix/{examples => _examples}/sad_trombone/main.cpp (100%)
 rename miosix/{examples => _examples}/sad_trombone/player.cpp (100%)
 rename miosix/{examples => _examples}/sad_trombone/player.h (100%)
 rename miosix/{examples => _examples}/sad_trombone/sad_trombone.h (100%)
 rename miosix/{examples => _examples}/sad_trombone/sad_trombone.wav (100%)
 rename miosix/{examples => _examples}/thread_native/Readme.txt (100%)
 rename miosix/{examples => _examples}/thread_native/native_thread_example.cpp (100%)
 rename miosix/{examples => _examples}/thread_pthread/Readme.txt (100%)
 rename miosix/{examples => _examples}/thread_pthread/pthread_example.cpp (100%)
 rename miosix/{ => _tools}/bootloaders/stm32/Readme.txt (100%)
 rename miosix/{ => _tools}/bootloaders/stm32/pc_loader/CMakeLists.txt (100%)
 rename miosix/{ => _tools}/bootloaders/stm32/pc_loader/main.cpp (100%)
 rename miosix/{ => _tools}/bootloaders/stm32/pc_loader/pc_loader (100%)
 rename miosix/{ => _tools}/bootloaders/stm32/pc_loader/serialstream.cpp (100%)
 rename miosix/{ => _tools}/bootloaders/stm32/pc_loader/serialstream.h (100%)
 rename miosix/{ => _tools}/bootloaders/stm32/uc_loader_ethboardv2/bootloader.bin (100%)
 rename miosix/{ => _tools}/bootloaders/stm32/uc_loader_ethboardv2/bootloader.hex (100%)
 rename miosix/{ => _tools}/bootloaders/stm32/uc_loader_stm3210e-eval/bootloader.bin (100%)
 rename miosix/{ => _tools}/bootloaders/stm32/uc_loader_stm3210e-eval/bootloader.hex (100%)
 rename miosix/{ => _tools}/bootloaders/stm32/uc_loader_stm3220g-eval/bootloader.bin (100%)
 rename miosix/{ => _tools}/bootloaders/stm32/uc_loader_stm3220g-eval/bootloader.hex (100%)
 rename miosix/{ => _tools}/check_global_objects.pl (100%)
 rename miosix/{ => _tools}/compiler/Readme.txt (100%)
 rename miosix/{ => _tools}/compiler/cleanup.sh (100%)
 rename miosix/{ => _tools}/compiler/download.sh (100%)
 rename miosix/{ => _tools}/compiler/install-script.sh (100%)
 rename miosix/{ => _tools}/compiler/lpc21isp_148_src.zip (100%)
 rename miosix/{ => _tools}/compiler/patches/gcc.patch (100%)
 rename miosix/{ => _tools}/compiler/patches/gcc.txt (100%)
 rename miosix/{ => _tools}/compiler/patches/newlib.patch (100%)
 rename miosix/{ => _tools}/compiler/patches/newlib.txt (100%)
 rename miosix/{ => _tools}/compiler/uninstall.sh (100%)
 rename miosix/{temp => _tools}/delay_test/delay_test.cpp (100%)
 rename miosix/{temp => _tools}/feedforward_profiling/CMakeLists.txt (100%)
 rename miosix/{temp => _tools}/feedforward_profiling/Readme.txt (100%)
 rename miosix/{temp => _tools}/feedforward_profiling/fdstream.h (100%)
 rename miosix/{temp => _tools}/feedforward_profiling/fdstream.tcc (100%)
 rename miosix/{temp => _tools}/feedforward_profiling/feedforward.png (100%)
 rename miosix/{temp => _tools}/feedforward_profiling/ff_off.txt (100%)
 rename miosix/{temp => _tools}/feedforward_profiling/ff_on.txt (100%)
 rename miosix/{temp => _tools}/feedforward_profiling/ff_reinit.txt (100%)
 rename miosix/{temp => _tools}/feedforward_profiling/gdb_init.script (100%)
 rename miosix/{temp => _tools}/feedforward_profiling/jtag_profiler.cpp (100%)
 rename miosix/{temp => _tools}/feedforward_profiling/plot.sci (100%)
 rename miosix/{temp => _tools}/feedforward_profiling/plot.sh (100%)
 rename miosix/{temp => _tools}/feedforward_profiling/test.cpp (100%)
 rename miosix/{temp => _tools}/loc_counter.sh (100%)
 rename miosix/{temp => _tools}/ram_test/main.cpp (100%)
 rename miosix/{temp => _tools}/ram_test/sha1.cpp (100%)
 rename miosix/{temp => _tools}/ram_test/sha1.h (100%)
 rename miosix/{ => _tools}/testsuite/Readme.txt (80%)
 rename miosix/{ => _tools}/testsuite/testsuite.cpp (100%)
 rename miosix/{temp => _tools/unused}/conflict_table.cpp (100%)
 rename miosix/{temp => _tools/unused}/conflict_table.h (100%)
 rename miosix/{temp => _tools/unused}/pthread_key.cpp (100%)
 delete mode 100644 miosix/doc/pdfdoc/suspend/Suspend to FLASH.odt
 delete mode 100644 miosix/doc/pdfdoc/suspend/Suspend to FLASH.pdf
 delete mode 100644 miosix/temp/simulation.sci

diff --git a/Readme.txt b/Readme.txt
index 5935fb13..cfdc1412 100644
--- a/Readme.txt
+++ b/Readme.txt
@@ -4,6 +4,3 @@ Welcome to the Miosix kernel
 
 You can find information on how to configure and use the kernel
 at the following url: http://miosix.org
-
-The testsuite has been moved in the miosix/testsuite directory.
-The examples have been moved in the miosix/examples directory. 
diff --git a/miosix/Makefile b/miosix/Makefile
index 7949d1eb..9b86fe83 100644
--- a/miosix/Makefile
+++ b/miosix/Makefile
@@ -48,7 +48,7 @@ AFLAGS   :=  $(AFLAGS_BASE)
 ## The file stage_1_boot.o is compiled separately because
 ## it must not end up in libmiosix.a
 all: $(OBJ) $(BOOT_FILE)
-	perl check_global_objects.pl $(OBJ)
+	perl tools/check_global_objects.pl $(OBJ)
 	$(AR) rcs libmiosix.a $(OBJ)
 
 clean:
diff --git a/miosix/doc/doxygen/Doxyfile b/miosix/_doc/doxygen/Doxyfile
similarity index 100%
rename from miosix/doc/doxygen/Doxyfile
rename to miosix/_doc/doxygen/Doxyfile
diff --git a/miosix/doc/doxygen/documentation.dox b/miosix/_doc/doxygen/documentation.dox
similarity index 100%
rename from miosix/doc/doxygen/documentation.dox
rename to miosix/_doc/doxygen/documentation.dox
diff --git a/miosix/_doc/doxygen/html/annotated.html b/miosix/_doc/doxygen/html/annotated.html
new file mode 100644
index 00000000..0f6cdbf6
--- /dev/null
+++ b/miosix/_doc/doxygen/html/annotated.html
@@ -0,0 +1,66 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Class List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li class="current"><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="headertitle">
+<h1>Class List</h1>  </div>
+</div>
+<div class="contents">
+Here are the classes, structs, unions and interfaces with brief descriptions:<table>
+  <tr><td class="indexkey"><a class="el" href="classmiosix__private_1_1_auxiliary_timer.html">miosix_private::AuxiliaryTimer</a></td><td class="indexvalue"></td></tr>
+  <tr><td class="indexkey"><a class="el" href="classmiosix_1_1_condition_variable.html">miosix::ConditionVariable</a></td><td class="indexvalue"></td></tr>
+  <tr><td class="indexkey"><a class="el" href="classmiosix_1_1_console.html">miosix::Console</a></td><td class="indexvalue"></td></tr>
+  <tr><td class="indexkey"><a class="el" href="classmiosix_1_1_control_scheduler_priority.html">miosix::ControlSchedulerPriority</a></td><td class="indexvalue"></td></tr>
+  <tr><td class="indexkey"><a class="el" href="classmiosix_1_1_directory.html">miosix::Directory</a></td><td class="indexvalue"></td></tr>
+  <tr><td class="indexkey"><a class="el" href="classmiosix_1_1_e_d_f_scheduler_priority.html">miosix::EDFSchedulerPriority</a></td><td class="indexvalue"></td></tr>
+  <tr><td class="indexkey"><a class="el" href="classmiosix_1_1_exception_handling_data.html">miosix::ExceptionHandlingData</a></td><td class="indexvalue"></td></tr>
+  <tr><td class="indexkey"><a class="el" href="classmiosix_1_1_fast_interrupt_disable_lock.html">miosix::FastInterruptDisableLock</a></td><td class="indexvalue"></td></tr>
+  <tr><td class="indexkey"><a class="el" href="classmiosix_1_1_fast_interrupt_enable_lock.html">miosix::FastInterruptEnableLock</a></td><td class="indexvalue"></td></tr>
+  <tr><td class="indexkey"><a class="el" href="classmiosix_1_1_fast_mutex.html">miosix::FastMutex</a></td><td class="indexvalue"></td></tr>
+  <tr><td class="indexkey"><a class="el" href="classmiosix_1_1_filesystem.html">miosix::Filesystem</a></td><td class="indexvalue"></td></tr>
+  <tr><td class="indexkey"><a class="el" href="classmiosix_1_1_interrupt_disable_lock.html">miosix::InterruptDisableLock</a></td><td class="indexvalue"></td></tr>
+  <tr><td class="indexkey"><a class="el" href="classmiosix_1_1_interrupt_enable_lock.html">miosix::InterruptEnableLock</a></td><td class="indexvalue"></td></tr>
+  <tr><td class="indexkey"><a class="el" href="classmiosix_1_1_lock.html">miosix::Lock&lt; T &gt;</a></td><td class="indexvalue"></td></tr>
+  <tr><td class="indexkey"><a class="el" href="classmiosix_1_1_lower_priority.html">miosix::LowerPriority</a></td><td class="indexvalue"></td></tr>
+  <tr><td class="indexkey"><a class="el" href="classmiosix_1_1_memory_profiling.html">miosix::MemoryProfiling</a></td><td class="indexvalue"></td></tr>
+  <tr><td class="indexkey"><a class="el" href="classmiosix_1_1_mutex.html">miosix::Mutex</a></td><td class="indexvalue"></td></tr>
+  <tr><td class="indexkey"><a class="el" href="classmiosix_1_1_pause_kernel_lock.html">miosix::PauseKernelLock</a></td><td class="indexvalue"></td></tr>
+  <tr><td class="indexkey"><a class="el" href="classmiosix_1_1_priority_scheduler_priority.html">miosix::PrioritySchedulerPriority</a></td><td class="indexvalue"></td></tr>
+  <tr><td class="indexkey"><a class="el" href="classmiosix_1_1_queue.html">miosix::Queue&lt; T, len &gt;</a></td><td class="indexvalue"></td></tr>
+  <tr><td class="indexkey"><a class="el" href="classmiosix_1_1_restart_kernel_lock.html">miosix::RestartKernelLock</a></td><td class="indexvalue"></td></tr>
+  <tr><td class="indexkey"><a class="el" href="classmiosix_1_1_software_i2_c.html">miosix::SoftwareI2C&lt; SDA, SCL &gt;</a></td><td class="indexvalue"></td></tr>
+  <tr><td class="indexkey"><a class="el" href="classmiosix_1_1_software_s_p_i.html">miosix::SoftwareSPI&lt; SI, SO, SCK, CE, numNops &gt;</a></td><td class="indexvalue"></td></tr>
+  <tr><td class="indexkey"><a class="el" href="classmiosix_1_1_thread.html">miosix::Thread</a></td><td class="indexvalue"></td></tr>
+  <tr><td class="indexkey"><a class="el" href="classmiosix_1_1_timer.html">miosix::Timer</a></td><td class="indexvalue"></td></tr>
+  <tr><td class="indexkey"><a class="el" href="classmiosix_1_1_unlock.html">miosix::Unlock&lt; T &gt;</a></td><td class="indexvalue"></td></tr>
+</table>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/arch__registers_8h.html b/miosix/_doc/doxygen/html/arch__registers_8h.html
new file mode 100644
index 00000000..febc2871
--- /dev/null
+++ b/miosix/_doc/doxygen/html/arch__registers_8h.html
@@ -0,0 +1,46 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: arch_registers.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&nbsp;List</span></a></li>
+      <li><a href="globals.html"><span>File&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="headertitle">
+<h1>arch_registers.h File Reference</h1>  </div>
+</div>
+<div class="contents">
+<code>#include &quot;interfaces-impl/arch_registers_impl.h&quot;</code><br/>
+<table class="memberdecls">
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<p>This file should contain the list of hardware registers of the selected architecture, to allow application to directly access the hardware.</p>
+<p>The list of these registers is usually provided by the chip vendor in the form of one or more header files.</p>
+<p>To include these registers in a portable way, here we only include arch_registers_impl.h, which will be an header file in arch/arch name/board name/interfaces_impl</p>
+<p>The usual implementation of arch_registers_impl.h is simply to include the header files provided by the chip vendor. </p>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/bc_s.png b/miosix/_doc/doxygen/html/bc_s.png
new file mode 100644
index 0000000000000000000000000000000000000000..e4018628b5b45cb4301037485a29d7d74ac22138
GIT binary patch
literal 677
zcmeAS@N?(olHy`uVBq!ia0y~yVBlb2U{K&-V_;y=|6qB6fq^N<)5S5Qg7NKLZ;y~%
z3HA^FKhG;qJ13d`?2P34rxtyeXH4%h`>5+Aa%&66M3&eTfoURPQDVM{tuAb$g0=V4
zcVs+tTCz>+;@_mFOG7QYrW-f+xd~L-Ebf-zJR~wJ@!5+_Z#P%U|M-9I^Sq;<->v+6
z@c7fY|4JA>^sl<b#G^Vz-Xbh(s?VJqp&#3i$~(I`<jy_(zeDU^^py91I1iYw%Gw`v
zVCrvY27{1Cp(5RpJAOo7{WXd4e{oq||1qX_I=3?!G#m8Fd6*hzc04Qp5yO-mBFK{|
z%z5G0|AamH<>|M-?Us4uVX(wh^}y2qc1M24=xsQ8iRro)gTKKV-Q-%Q2lswI(U#9G
zKHVC2@rtR~H7kaObN6ef^JwKvT6z5WwB&;m!gfe9H25ElJDT|D&6S9XkD6QWNE$Rf
zez~cl$UE)Uor;Q$U9<A{nlgC`yvW`dp4f9yE^F7%V;l?*wprf}d$=W<ZN<l9tIs+t
zJ)D;J?a7V(8_otXT-9q|v1XmqQsL|IQqD6wo_W{kt@*oYzSO$C22IA2T_N+AdMxae
z+}qZ-&DOkW!TrZuW?E#=m~%1y^2F8WCml9geL}u!yH%K4+7~AVfwJlHer#_oB{Rd$
zMNSv%<z;5Ly49|;U9T~)qIw?_gX`qYznB;}cApXwmJ)5Bq25`Ol4W*l?v3_a2Od}0
zKRsXU)#Olmd16MAXUnC%?bnRnOxD@swk<m8^27{<RQ1*8zcM@YTi=dLnOd=3s`KA$
zCcbT7(v92__q)gaU*OQI^HOuctDO6-Jj+8~Pttw->Q2z#w&|fa??`K%nCg0NrJ2cg
rlN^>iM{aT{zsPdAFYs^fFW#dQHsx1O@#AD*U|{fc^>bP0l+XkKx86dR

literal 0
HcmV?d00001

diff --git a/miosix/_doc/doxygen/html/bsp_8h.html b/miosix/_doc/doxygen/html/bsp_8h.html
new file mode 100644
index 00000000..583aa683
--- /dev/null
+++ b/miosix/_doc/doxygen/html/bsp_8h.html
@@ -0,0 +1,58 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: bsp.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&nbsp;List</span></a></li>
+      <li><a href="globals.html"><span>File&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="summary">
+<a href="#namespaces">Namespaces</a> &#124;
+<a href="#func-members">Functions</a>  </div>
+  <div class="headertitle">
+<h1>bsp.h File Reference</h1>  </div>
+</div>
+<div class="contents">
+<code>#include &quot;interfaces-impl/bsp_impl.h&quot;</code><br/>
+<table class="memberdecls">
+<tr><td colspan="2"><h2><a name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">namespace &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemiosix.html">miosix</a></td></tr>
+<tr><td colspan="2"><h2><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___interfaces.html#gae0495cbfc806a0db0cdf2ff023945516">miosix::shutdown</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___interfaces.html#ga6f70fdbc3b5d6afa41b5dbc5272cc6a0">miosix::reboot</a> ()</td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<p>This file contains architecture specific board support package. It must at least provide these four functions:</p>
+<p>IRQbspInit(), to initialize the board to a known state early in the boot process (before the kernel is started, and when interrupts are disabled)</p>
+<p>bspInit2(), to perform the remaining part of the initialization, once the kernel is started</p>
+<p><a class="el" href="group___interfaces.html#gae0495cbfc806a0db0cdf2ff023945516">shutdown()</a>, for system shutdown. This function is called in case main() returns, and is available to be called by user code.</p>
+<p><a class="el" href="group___interfaces.html#ga6f70fdbc3b5d6afa41b5dbc5272cc6a0">reboot()</a>, a function that can be called to reboot the system under normal (non error) conditions. It should sync and unmount the filesystem, and perform a reboot. This function is available for user code.</p>
+<p>Other than this, the board support package might contain other functions, classes, macros etc. to support peripherals and or board hardware. </p>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classes.html b/miosix/_doc/doxygen/html/classes.html
new file mode 100644
index 00000000..4a37794d
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classes.html
@@ -0,0 +1,55 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Alphabetical List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="headertitle">
+<h1>Class Index</h1>  </div>
+</div>
+<div class="contents">
+<div class="qindex"><a class="qindex" href="#letter_A">A</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_C">C</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_D">D</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_E">E</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_F">F</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_I">I</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_L">L</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_M">M</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_P">P</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_Q">Q</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_R">R</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_S">S</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_T">T</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_U">U</a></div>
+<table align="center" width="95%" border="0" cellspacing="0" cellpadding="0">
+<tr><td><a name="letter_A"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;A&nbsp;&nbsp;</div></td></tr></table>
+</td><td><a name="letter_E"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;E&nbsp;&nbsp;</div></td></tr></table>
+</td><td><a name="letter_I"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;I&nbsp;&nbsp;</div></td></tr></table>
+</td><td><a class="el" href="classmiosix_1_1_mutex.html">Mutex</a> (<a class="el" href="namespacemiosix.html">miosix</a>)&nbsp;&nbsp;&nbsp;</td><td><a name="letter_S"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;S&nbsp;&nbsp;</div></td></tr></table>
+</td></tr><tr><td><a class="el" href="classmiosix__private_1_1_auxiliary_timer.html">AuxiliaryTimer</a> (miosix_private)&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classmiosix_1_1_e_d_f_scheduler_priority.html">EDFSchedulerPriority</a> (<a class="el" href="namespacemiosix.html">miosix</a>)&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classmiosix_1_1_interrupt_disable_lock.html">InterruptDisableLock</a> (<a class="el" href="namespacemiosix.html">miosix</a>)&nbsp;&nbsp;&nbsp;</td><td><a name="letter_P"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;P&nbsp;&nbsp;</div></td></tr></table>
+</td><td><a class="el" href="classmiosix_1_1_software_i2_c.html">SoftwareI2C</a> (<a class="el" href="namespacemiosix.html">miosix</a>)&nbsp;&nbsp;&nbsp;</td></tr><tr><td><a name="letter_C"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;C&nbsp;&nbsp;</div></td></tr></table>
+</td><td><a class="el" href="classmiosix_1_1_exception_handling_data.html">ExceptionHandlingData</a> (<a class="el" href="namespacemiosix.html">miosix</a>)&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classmiosix_1_1_interrupt_enable_lock.html">InterruptEnableLock</a> (<a class="el" href="namespacemiosix.html">miosix</a>)&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classmiosix_1_1_pause_kernel_lock.html">PauseKernelLock</a> (<a class="el" href="namespacemiosix.html">miosix</a>)&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classmiosix_1_1_software_s_p_i.html">SoftwareSPI</a> (<a class="el" href="namespacemiosix.html">miosix</a>)&nbsp;&nbsp;&nbsp;</td></tr><tr><td><a class="el" href="classmiosix_1_1_condition_variable.html">ConditionVariable</a> (<a class="el" href="namespacemiosix.html">miosix</a>)&nbsp;&nbsp;&nbsp;</td><td><a name="letter_F"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;F&nbsp;&nbsp;</div></td></tr></table>
+</td><td><a name="letter_L"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;L&nbsp;&nbsp;</div></td></tr></table>
+</td><td><a class="el" href="classmiosix_1_1_priority_scheduler_priority.html">PrioritySchedulerPriority</a> (<a class="el" href="namespacemiosix.html">miosix</a>)&nbsp;&nbsp;&nbsp;</td><td><a name="letter_T"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;T&nbsp;&nbsp;</div></td></tr></table>
+</td></tr><tr><td><a class="el" href="classmiosix_1_1_console.html">Console</a> (<a class="el" href="namespacemiosix.html">miosix</a>)&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classmiosix_1_1_fast_interrupt_disable_lock.html">FastInterruptDisableLock</a> (<a class="el" href="namespacemiosix.html">miosix</a>)&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classmiosix_1_1_lock.html">Lock</a> (<a class="el" href="namespacemiosix.html">miosix</a>)&nbsp;&nbsp;&nbsp;</td><td><a name="letter_Q"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;Q&nbsp;&nbsp;</div></td></tr></table>
+</td><td><a class="el" href="classmiosix_1_1_thread.html">Thread</a> (<a class="el" href="namespacemiosix.html">miosix</a>)&nbsp;&nbsp;&nbsp;</td></tr><tr><td><a class="el" href="classmiosix_1_1_control_scheduler_priority.html">ControlSchedulerPriority</a> (<a class="el" href="namespacemiosix.html">miosix</a>)&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classmiosix_1_1_fast_interrupt_enable_lock.html">FastInterruptEnableLock</a> (<a class="el" href="namespacemiosix.html">miosix</a>)&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classmiosix_1_1_lower_priority.html">LowerPriority</a> (<a class="el" href="namespacemiosix.html">miosix</a>)&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classmiosix_1_1_queue.html">Queue</a> (<a class="el" href="namespacemiosix.html">miosix</a>)&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classmiosix_1_1_timer.html">Timer</a> (<a class="el" href="namespacemiosix.html">miosix</a>)&nbsp;&nbsp;&nbsp;</td></tr><tr><td><a name="letter_D"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;D&nbsp;&nbsp;</div></td></tr></table>
+</td><td><a class="el" href="classmiosix_1_1_fast_mutex.html">FastMutex</a> (<a class="el" href="namespacemiosix.html">miosix</a>)&nbsp;&nbsp;&nbsp;</td><td><a name="letter_M"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;M&nbsp;&nbsp;</div></td></tr></table>
+</td><td><a name="letter_R"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;R&nbsp;&nbsp;</div></td></tr></table>
+</td><td><a name="letter_U"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;U&nbsp;&nbsp;</div></td></tr></table>
+</td></tr><tr><td><a class="el" href="classmiosix_1_1_directory.html">Directory</a> (<a class="el" href="namespacemiosix.html">miosix</a>)&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classmiosix_1_1_filesystem.html">Filesystem</a> (<a class="el" href="namespacemiosix.html">miosix</a>)&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classmiosix_1_1_memory_profiling.html">MemoryProfiling</a> (<a class="el" href="namespacemiosix.html">miosix</a>)&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classmiosix_1_1_restart_kernel_lock.html">RestartKernelLock</a> (<a class="el" href="namespacemiosix.html">miosix</a>)&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classmiosix_1_1_unlock.html">Unlock</a> (<a class="el" href="namespacemiosix.html">miosix</a>)&nbsp;&nbsp;&nbsp;</td></tr></table><div class="qindex"><a class="qindex" href="#letter_A">A</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_C">C</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_D">D</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_E">E</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_F">F</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_I">I</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_L">L</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_M">M</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_P">P</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_Q">Q</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_R">R</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_S">S</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_T">T</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_U">U</a></div>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix_1_1_condition_variable-members.html b/miosix/_doc/doxygen/html/classmiosix_1_1_condition_variable-members.html
new file mode 100644
index 00000000..1fa3c3c7
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix_1_1_condition_variable-members.html
@@ -0,0 +1,45 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="headertitle">
+<h1>miosix::ConditionVariable Member List</h1>  </div>
+</div>
+<div class="contents">
+This is the complete list of members for <a class="el" href="classmiosix_1_1_condition_variable.html">miosix::ConditionVariable</a>, including all inherited members.<table>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_condition_variable.html#adb8897a2ff31ecc320ff624285924600">broadcast</a>()</td><td><a class="el" href="classmiosix_1_1_condition_variable.html">miosix::ConditionVariable</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_condition_variable.html#a071791f7cf57c7f6eed03b17cbb4bb5e">ConditionVariable</a>()</td><td><a class="el" href="classmiosix_1_1_condition_variable.html">miosix::ConditionVariable</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_condition_variable.html#adbc51a45a48f6afe98fea4581fc4f16d">signal</a>()</td><td><a class="el" href="classmiosix_1_1_condition_variable.html">miosix::ConditionVariable</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_condition_variable.html#ae1e16bdd5262ac2918117db06ed01cd3">wait</a>(Lock&lt; T &gt; &amp;l)</td><td><a class="el" href="classmiosix_1_1_condition_variable.html">miosix::ConditionVariable</a></td><td><code> [inline]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_condition_variable.html#a690ff38de87f884855d6c72bde694116">wait</a>(Mutex &amp;m)</td><td><a class="el" href="classmiosix_1_1_condition_variable.html">miosix::ConditionVariable</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_condition_variable.html#a87382101d2526494b8fe04e056426ccb">wait</a>(FastMutex &amp;m)</td><td><a class="el" href="classmiosix_1_1_condition_variable.html">miosix::ConditionVariable</a></td><td></td></tr>
+</table></div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix_1_1_condition_variable.html b/miosix/_doc/doxygen/html/classmiosix_1_1_condition_variable.html
new file mode 100644
index 00000000..6812f5ef
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix_1_1_condition_variable.html
@@ -0,0 +1,206 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: miosix::ConditionVariable Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+  <div class="navpath">
+    <ul>
+      <li><a class="el" href="namespacemiosix.html">miosix</a>      </li>
+      <li><a class="el" href="classmiosix_1_1_condition_variable.html">miosix::ConditionVariable</a>      </li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a>  </div>
+  <div class="headertitle">
+<h1>miosix::ConditionVariable Class Reference<br/>
+<small>
+[<a class="el" href="group___sync.html">Syncronization</a>]</small>
+</h1>  </div>
+</div>
+<div class="contents">
+<!-- doxytag: class="miosix::ConditionVariable" -->
+<p><code>#include &lt;sync.h&gt;</code></p>
+
+<p><a href="classmiosix_1_1_condition_variable-members.html">List of all members.</a></p>
+<table class="memberdecls">
+<tr><td colspan="2"><h2><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_condition_variable.html#a071791f7cf57c7f6eed03b17cbb4bb5e">ConditionVariable</a> ()</td></tr>
+<tr><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
+<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_condition_variable.html#ae1e16bdd5262ac2918117db06ed01cd3">wait</a> (<a class="el" href="classmiosix_1_1_lock.html">Lock</a>&lt; T &gt; &amp;l)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_condition_variable.html#a690ff38de87f884855d6c72bde694116">wait</a> (<a class="el" href="classmiosix_1_1_mutex.html">Mutex</a> &amp;m)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_condition_variable.html#a87382101d2526494b8fe04e056426ccb">wait</a> (<a class="el" href="classmiosix_1_1_fast_mutex.html">FastMutex</a> &amp;m)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_condition_variable.html#adbc51a45a48f6afe98fea4581fc4f16d">signal</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_condition_variable.html#adb8897a2ff31ecc320ff624285924600">broadcast</a> ()</td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<p>A condition variable class for thread synchronization, available from Miosix 1.53.<br/>
+ One or more threads can wait on the condition variable, and the <a class="el" href="classmiosix_1_1_condition_variable.html#adbc51a45a48f6afe98fea4581fc4f16d">signal()</a> and <a class="el" href="classmiosix_1_1_condition_variable.html#adb8897a2ff31ecc320ff624285924600">broadcast()</a> allow to wake ne or all the waiting threads.<br/>
+ This class is meant to be a static or global class. Dynamically creating a <a class="el" href="classmiosix_1_1_condition_variable.html">ConditionVariable</a> with new or on the stack must be done with care, to avoid deleting a <a class="el" href="classmiosix_1_1_condition_variable.html">ConditionVariable</a> while some threads are waiting, and to avoid situations where a thread tries to wait on a deleted <a class="el" href="classmiosix_1_1_condition_variable.html">ConditionVariable</a>.<br/>
+ </p>
+<hr/><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a071791f7cf57c7f6eed03b17cbb4bb5e"></a><!-- doxytag: member="miosix::ConditionVariable::ConditionVariable" ref="a071791f7cf57c7f6eed03b17cbb4bb5e" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">miosix::ConditionVariable::ConditionVariable </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Constructor, initializes the <a class="el" href="classmiosix_1_1_condition_variable.html">ConditionVariable</a>. </p>
+
+</div>
+</div>
+<hr/><h2>Member Function Documentation</h2>
+<a class="anchor" id="adb8897a2ff31ecc320ff624285924600"></a><!-- doxytag: member="miosix::ConditionVariable::broadcast" ref="adb8897a2ff31ecc320ff624285924600" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void miosix::ConditionVariable::broadcast </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Wakeup all waiting threads. </p>
+
+</div>
+</div>
+<a class="anchor" id="adbc51a45a48f6afe98fea4581fc4f16d"></a><!-- doxytag: member="miosix::ConditionVariable::signal" ref="adbc51a45a48f6afe98fea4581fc4f16d" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void miosix::ConditionVariable::signal </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Wakeup one waiting thread. Currently implemented policy is fifo. </p>
+
+</div>
+</div>
+<a class="anchor" id="a690ff38de87f884855d6c72bde694116"></a><!-- doxytag: member="miosix::ConditionVariable::wait" ref="a690ff38de87f884855d6c72bde694116" args="(Mutex &amp;m)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void miosix::ConditionVariable::wait </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classmiosix_1_1_mutex.html">Mutex</a> &amp;&nbsp;</td>
+          <td class="paramname"> <em>m</em></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p><a class="el" href="classmiosix_1_1_unlock.html">Unlock</a> the <a class="el" href="classmiosix_1_1_mutex.html">Mutex</a> and wait. If more threads call <a class="el" href="classmiosix_1_1_condition_variable.html#ae1e16bdd5262ac2918117db06ed01cd3">wait()</a> they must do so specifying the same mutex, otherwise the behaviour is undefined. </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>m</em>&nbsp;</td><td>a locked <a class="el" href="classmiosix_1_1_mutex.html">Mutex</a> </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="a87382101d2526494b8fe04e056426ccb"></a><!-- doxytag: member="miosix::ConditionVariable::wait" ref="a87382101d2526494b8fe04e056426ccb" args="(FastMutex &amp;m)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void miosix::ConditionVariable::wait </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classmiosix_1_1_fast_mutex.html">FastMutex</a> &amp;&nbsp;</td>
+          <td class="paramname"> <em>m</em></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p><a class="el" href="classmiosix_1_1_unlock.html">Unlock</a> the <a class="el" href="classmiosix_1_1_fast_mutex.html">FastMutex</a> and wait. If more threads call <a class="el" href="classmiosix_1_1_condition_variable.html#ae1e16bdd5262ac2918117db06ed01cd3">wait()</a> they must do so specifying the same mutex, otherwise the behaviour is undefined. </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>m</em>&nbsp;</td><td>a locked <a class="el" href="classmiosix_1_1_mutex.html">Mutex</a> </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="ae1e16bdd5262ac2918117db06ed01cd3"></a><!-- doxytag: member="miosix::ConditionVariable::wait" ref="ae1e16bdd5262ac2918117db06ed01cd3" args="(Lock&lt; T &gt; &amp;l)" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">void miosix::ConditionVariable::wait </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classmiosix_1_1_lock.html">Lock</a>&lt; T &gt; &amp;&nbsp;</td>
+          <td class="paramname"> <em>l</em></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p><a class="el" href="classmiosix_1_1_unlock.html">Unlock</a> the mutex and wait. If more threads call <a class="el" href="classmiosix_1_1_condition_variable.html#ae1e16bdd5262ac2918117db06ed01cd3">wait()</a> they must do so specifying the same mutex, otherwise the behaviour is undefined. </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>l</em>&nbsp;</td><td>A <a class="el" href="classmiosix_1_1_lock.html">Lock</a> instance that locked a <a class="el" href="classmiosix_1_1_mutex.html">Mutex</a> </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li>sync.h</li>
+<li>sync.cpp</li>
+</ul>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix_1_1_console-members.html b/miosix/_doc/doxygen/html/classmiosix_1_1_console-members.html
new file mode 100644
index 00000000..a4865c4d
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix_1_1_console-members.html
@@ -0,0 +1,46 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="headertitle">
+<h1>miosix::Console Member List</h1>  </div>
+</div>
+<div class="contents">
+This is the complete list of members for <a class="el" href="classmiosix_1_1_console.html">miosix::Console</a>, including all inherited members.<table>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_console.html#a138cf29290498b2adc23bad89b7f1225">IRQtxComplete</a>()</td><td><a class="el" href="classmiosix_1_1_console.html">miosix::Console</a></td><td><code> [static]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_console.html#a24a570ed29296d941477d90637c7f87d">IRQwrite</a>(const char *str)</td><td><a class="el" href="classmiosix_1_1_console.html">miosix::Console</a></td><td><code> [static]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_console.html#a4c62717fe282211b1b8b13c9897d4036">readChar</a>()</td><td><a class="el" href="classmiosix_1_1_console.html">miosix::Console</a></td><td><code> [static]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_console.html#a7b901496782fb87e9b8f62db0b694c15">readCharNonBlocking</a>(char &amp;c)</td><td><a class="el" href="classmiosix_1_1_console.html">miosix::Console</a></td><td><code> [static]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_console.html#a139a35d7febd53431f04fd83c7d2955b">txComplete</a>()</td><td><a class="el" href="classmiosix_1_1_console.html">miosix::Console</a></td><td><code> [static]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_console.html#ad064039cfbaa9db84cb021944aa85bd1">write</a>(const char *str)</td><td><a class="el" href="classmiosix_1_1_console.html">miosix::Console</a></td><td><code> [static]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_console.html#adcfaf32a1fdaafdf3340095a906b836f">write</a>(const char *data, int length)</td><td><a class="el" href="classmiosix_1_1_console.html">miosix::Console</a></td><td><code> [static]</code></td></tr>
+</table></div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix_1_1_console.html b/miosix/_doc/doxygen/html/classmiosix_1_1_console.html
new file mode 100644
index 00000000..0f4d0835
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix_1_1_console.html
@@ -0,0 +1,239 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: miosix::Console Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+  <div class="navpath">
+    <ul>
+      <li><a class="el" href="namespacemiosix.html">miosix</a>      </li>
+      <li><a class="el" href="classmiosix_1_1_console.html">miosix::Console</a>      </li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="summary">
+<a href="#pub-static-methods">Static Public Member Functions</a>  </div>
+  <div class="headertitle">
+<h1>miosix::Console Class Reference<br/>
+<small>
+[<a class="el" href="group___interfaces.html">Interfaces</a>]</small>
+</h1>  </div>
+</div>
+<div class="contents">
+<!-- doxytag: class="miosix::Console" -->
+<p><code>#include &lt;console.h&gt;</code></p>
+
+<p><a href="classmiosix_1_1_console-members.html">List of all members.</a></p>
+<table class="memberdecls">
+<tr><td colspan="2"><h2><a name="pub-static-methods"></a>
+Static Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_console.html#ad064039cfbaa9db84cb021944aa85bd1">write</a> (const char *str)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_console.html#adcfaf32a1fdaafdf3340095a906b836f">write</a> (const char *data, int length)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_console.html#a139a35d7febd53431f04fd83c7d2955b">txComplete</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_console.html#a24a570ed29296d941477d90637c7f87d">IRQwrite</a> (const char *str)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_console.html#a138cf29290498b2adc23bad89b7f1225">IRQtxComplete</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_console.html#a4c62717fe282211b1b8b13c9897d4036">readChar</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_console.html#a7b901496782fb87e9b8f62db0b694c15">readCharNonBlocking</a> (char &amp;c)</td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<p>This is an abstraction over a character device. The kernel uses it to implement stdin/stdout/stderr I/O of the C and C++ standard library, and if bootlogs/error logs are enabled in <a class="el" href="miosix__settings_8h.html">miosix_settings.h</a> also these logs are redirected here. The underlying implementation depends on the architecture chosen when compiling Miosix and can be for example a serial port, an USB endpoint or can also be empty (/dev/null like behaviour).</p>
+<p>The implementation of this class is in arch/arch name/board name/interfaces-impl </p>
+<hr/><h2>Member Function Documentation</h2>
+<a class="anchor" id="a138cf29290498b2adc23bad89b7f1225"></a><!-- doxytag: member="miosix::Console::IRQtxComplete" ref="a138cf29290498b2adc23bad89b7f1225" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">static bool miosix::Console::IRQtxComplete </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [static]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Can ONLY be called when the kernel is not yet started, paused or within an interrupt. Since the implementation of the <a class="el" href="classmiosix_1_1_console.html">Console</a> class can use buffering, this memeber function is provided to know if all data has been sent, for example to wait until all data has been sent before performing a reboot. </p>
+<dl class="return"><dt><b>Returns:</b></dt><dd>true if all write buffers are empty. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a24a570ed29296d941477d90637c7f87d"></a><!-- doxytag: member="miosix::Console::IRQwrite" ref="a24a570ed29296d941477d90637c7f87d" args="(const char *str)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">static void miosix::Console::IRQwrite </td>
+          <td>(</td>
+          <td class="paramtype">const char *&nbsp;</td>
+          <td class="paramname"> <em>str</em></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [static]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Write a string to the <a class="el" href="classmiosix_1_1_console.html">Console</a>. Can ONLY be called when the kernel is not yet started, paused or within an interrupt. If the underlying communication channel is not open this function returns without doing anything. If for some reason in an architecture Miosix is ported to it is not possible to access the underlying communication channel when the kernel is not started it is possible that this function always returns without doing anything. </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>str</em>&nbsp;</td><td>the string to write. The string must be NUL terminated. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="a4c62717fe282211b1b8b13c9897d4036"></a><!-- doxytag: member="miosix::Console::readChar" ref="a4c62717fe282211b1b8b13c9897d4036" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">static char miosix::Console::readChar </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [static]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Read a character from the <a class="el" href="classmiosix_1_1_console.html">Console</a>. Blocking. Can be safely called by multiple threads. If the underlying communication channel is not open this function blocks until it is opened and data arrives. </p>
+<dl class="return"><dt><b>Returns:</b></dt><dd>the character read. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a7b901496782fb87e9b8f62db0b694c15"></a><!-- doxytag: member="miosix::Console::readCharNonBlocking" ref="a7b901496782fb87e9b8f62db0b694c15" args="(char &amp;c)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">static bool miosix::Console::readCharNonBlocking </td>
+          <td>(</td>
+          <td class="paramtype">char &amp;&nbsp;</td>
+          <td class="paramname"> <em>c</em></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [static]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Read a character from the <a class="el" href="classmiosix_1_1_console.html">Console</a>. Nonblocking. Can be safely called by multiple threads. </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>c</em>&nbsp;</td><td>a reference to the character to read. If the function returns true then the read character is stored here. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="return"><dt><b>Returns:</b></dt><dd>true if the underlying communication channel was open and there was data available. False otherwise. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a139a35d7febd53431f04fd83c7d2955b"></a><!-- doxytag: member="miosix::Console::txComplete" ref="a139a35d7febd53431f04fd83c7d2955b" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">static bool miosix::Console::txComplete </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [static]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Since the implementation of the <a class="el" href="classmiosix_1_1_console.html">Console</a> class can use buffering, this memeber function is provided to know if all data has been sent, for example to wait until all data has been sent before performing a reboot. </p>
+<dl class="return"><dt><b>Returns:</b></dt><dd>true if all write buffers are empty. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ad064039cfbaa9db84cb021944aa85bd1"></a><!-- doxytag: member="miosix::Console::write" ref="ad064039cfbaa9db84cb021944aa85bd1" args="(const char *str)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">static void miosix::Console::write </td>
+          <td>(</td>
+          <td class="paramtype">const char *&nbsp;</td>
+          <td class="paramname"> <em>str</em></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [static]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Write a string to the <a class="el" href="classmiosix_1_1_console.html">Console</a>. Can be safely called by multiple threads. If the underlying communication channel is not open this function returns without doing anything. </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>str</em>&nbsp;</td><td>the string to write. The string must be NUL terminated. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="adcfaf32a1fdaafdf3340095a906b836f"></a><!-- doxytag: member="miosix::Console::write" ref="adcfaf32a1fdaafdf3340095a906b836f" args="(const char *data, int length)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">static void miosix::Console::write </td>
+          <td>(</td>
+          <td class="paramtype">const char *&nbsp;</td>
+          <td class="paramname"> <em>data</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">int&nbsp;</td>
+          <td class="paramname"> <em>length</em></td><td>&nbsp;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td><td><code> [static]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Write data to the <a class="el" href="classmiosix_1_1_console.html">Console</a>. Can be safely called by multiple threads. If the underlying communication channel is not open this function returns without doing anything. </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>data</em>&nbsp;</td><td>data to write </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>length of data </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li><a class="el" href="console_8h.html">console.h</a></li>
+</ul>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix_1_1_control_scheduler_priority-members.html b/miosix/_doc/doxygen/html/classmiosix_1_1_control_scheduler_priority-members.html
new file mode 100644
index 00000000..029a3e50
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix_1_1_control_scheduler_priority-members.html
@@ -0,0 +1,43 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="headertitle">
+<h1>miosix::ControlSchedulerPriority Member List</h1>  </div>
+</div>
+<div class="contents">
+This is the complete list of members for <a class="el" href="classmiosix_1_1_control_scheduler_priority.html">miosix::ControlSchedulerPriority</a>, including all inherited members.<table>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_control_scheduler_priority.html#a4bd3eb3d3d89cf2082f9cbfc09ddb3ed">ControlSchedulerPriority</a>(short int priority)</td><td><a class="el" href="classmiosix_1_1_control_scheduler_priority.html">miosix::ControlSchedulerPriority</a></td><td><code> [inline]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_control_scheduler_priority.html#adee560c11f29f0b29b6a119742d39934">ControlSchedulerPriority</a>()</td><td><a class="el" href="classmiosix_1_1_control_scheduler_priority.html">miosix::ControlSchedulerPriority</a></td><td><code> [inline]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_control_scheduler_priority.html#ad15885f4c536e5e3ee7b6f95f5542209">get</a>() const </td><td><a class="el" href="classmiosix_1_1_control_scheduler_priority.html">miosix::ControlSchedulerPriority</a></td><td><code> [inline]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_control_scheduler_priority.html#ae7b24bc4e0861dc5ca7ae50a758f9244">validate</a>() const </td><td><a class="el" href="classmiosix_1_1_control_scheduler_priority.html">miosix::ControlSchedulerPriority</a></td><td><code> [inline]</code></td></tr>
+</table></div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix_1_1_control_scheduler_priority.html b/miosix/_doc/doxygen/html/classmiosix_1_1_control_scheduler_priority.html
new file mode 100644
index 00000000..09fe2d3c
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix_1_1_control_scheduler_priority.html
@@ -0,0 +1,144 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: miosix::ControlSchedulerPriority Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+  <div class="navpath">
+    <ul>
+      <li><a class="el" href="namespacemiosix.html">miosix</a>      </li>
+      <li><a class="el" href="classmiosix_1_1_control_scheduler_priority.html">miosix::ControlSchedulerPriority</a>      </li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a>  </div>
+  <div class="headertitle">
+<h1>miosix::ControlSchedulerPriority Class Reference</h1>  </div>
+</div>
+<div class="contents">
+<!-- doxytag: class="miosix::ControlSchedulerPriority" -->
+<p><code>#include &lt;control_scheduler_types.h&gt;</code></p>
+
+<p><a href="classmiosix_1_1_control_scheduler_priority-members.html">List of all members.</a></p>
+<table class="memberdecls">
+<tr><td colspan="2"><h2><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_control_scheduler_priority.html#a4bd3eb3d3d89cf2082f9cbfc09ddb3ed">ControlSchedulerPriority</a> (short int priority)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_control_scheduler_priority.html#adee560c11f29f0b29b6a119742d39934">ControlSchedulerPriority</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">short int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_control_scheduler_priority.html#ad15885f4c536e5e3ee7b6f95f5542209">get</a> () const </td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_control_scheduler_priority.html#ae7b24bc4e0861dc5ca7ae50a758f9244">validate</a> () const </td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<p>This class models the concept of priority for the control based scheduler. In this scheduler the priority is simply a short int with values ranging from 0 to PRIORITY_MAX-1, higher values mean higher priority, and the special value -1 reserved for the idle thread. Higher values of priority mean that the scheduler assigns a larger fraction of the round time to the thread. </p>
+<hr/><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a4bd3eb3d3d89cf2082f9cbfc09ddb3ed"></a><!-- doxytag: member="miosix::ControlSchedulerPriority::ControlSchedulerPriority" ref="a4bd3eb3d3d89cf2082f9cbfc09ddb3ed" args="(short int priority)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">miosix::ControlSchedulerPriority::ControlSchedulerPriority </td>
+          <td>(</td>
+          <td class="paramtype">short int&nbsp;</td>
+          <td class="paramname"> <em>priority</em></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Constructor. Not explicit for backward compatibility. </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>priority</em>&nbsp;</td><td>the desired priority value. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="adee560c11f29f0b29b6a119742d39934"></a><!-- doxytag: member="miosix::ControlSchedulerPriority::ControlSchedulerPriority" ref="adee560c11f29f0b29b6a119742d39934" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">miosix::ControlSchedulerPriority::ControlSchedulerPriority </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Default constructor. </p>
+
+</div>
+</div>
+<hr/><h2>Member Function Documentation</h2>
+<a class="anchor" id="ad15885f4c536e5e3ee7b6f95f5542209"></a><!-- doxytag: member="miosix::ControlSchedulerPriority::get" ref="ad15885f4c536e5e3ee7b6f95f5542209" args="() const " -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">short int miosix::ControlSchedulerPriority::get </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td> const<code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<dl class="return"><dt><b>Returns:</b></dt><dd>the priority value </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ae7b24bc4e0861dc5ca7ae50a758f9244"></a><!-- doxytag: member="miosix::ControlSchedulerPriority::validate" ref="ae7b24bc4e0861dc5ca7ae50a758f9244" args="() const " -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool miosix::ControlSchedulerPriority::validate </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td> const<code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<dl class="return"><dt><b>Returns:</b></dt><dd>true if this objects represents a valid priority. Note that the value -1 is considered not valid, because it is reserved for the idle thread. </dd></dl>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>control_scheduler_types.h</li>
+</ul>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix_1_1_directory-members.html b/miosix/_doc/doxygen/html/classmiosix_1_1_directory-members.html
new file mode 100644
index 00000000..c2705758
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix_1_1_directory-members.html
@@ -0,0 +1,44 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="headertitle">
+<h1>miosix::Directory Member List</h1>  </div>
+</div>
+<div class="contents">
+This is the complete list of members for <a class="el" href="classmiosix_1_1_directory.html">miosix::Directory</a>, including all inherited members.<table>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_directory.html#a4511c8727dc6fc565a415d5e258d612b">Directory</a>()</td><td><a class="el" href="classmiosix_1_1_directory.html">miosix::Directory</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_directory.html#abd96a4eb6ce45869b55ebe5fa1c6c43f">exists</a>(const char *name)</td><td><a class="el" href="classmiosix_1_1_directory.html">miosix::Directory</a></td><td><code> [static]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_directory.html#a079e87e4cbc008d223a03c54d87577bf">FILENAME_LEN</a></td><td><a class="el" href="classmiosix_1_1_directory.html">miosix::Directory</a></td><td><code> [static]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_directory.html#ace4d75cdcad650213a294c2fe7a41381">next</a>(char *name, unsigned int &amp;size, unsigned char &amp;attrib)</td><td><a class="el" href="classmiosix_1_1_directory.html">miosix::Directory</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_directory.html#ab3b8f627404f790ca9e309dd90d4e8a0">open</a>(const char *name)</td><td><a class="el" href="classmiosix_1_1_directory.html">miosix::Directory</a></td><td></td></tr>
+</table></div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix_1_1_directory.html b/miosix/_doc/doxygen/html/classmiosix_1_1_directory.html
new file mode 100644
index 00000000..fe878803
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix_1_1_directory.html
@@ -0,0 +1,213 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: miosix::Directory Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+  <div class="navpath">
+    <ul>
+      <li><a class="el" href="namespacemiosix.html">miosix</a>      </li>
+      <li><a class="el" href="classmiosix_1_1_directory.html">miosix::Directory</a>      </li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
+<a href="#pub-static-attribs">Static Public Attributes</a>  </div>
+  <div class="headertitle">
+<h1>miosix::Directory Class Reference<br/>
+<small>
+[<a class="el" href="group___filesystem.html">Filesystem</a>]</small>
+</h1>  </div>
+</div>
+<div class="contents">
+<!-- doxytag: class="miosix::Directory" -->
+<p><code>#include &lt;filesystem.h&gt;</code></p>
+
+<p><a href="classmiosix_1_1_directory-members.html">List of all members.</a></p>
+<table class="memberdecls">
+<tr><td colspan="2"><h2><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_directory.html#a4511c8727dc6fc565a415d5e258d612b">Directory</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_directory.html#ab3b8f627404f790ca9e309dd90d4e8a0">open</a> (const char *name)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_directory.html#ace4d75cdcad650213a294c2fe7a41381">next</a> (char *name, unsigned int &amp;size, unsigned char &amp;attrib)</td></tr>
+<tr><td colspan="2"><h2><a name="pub-static-methods"></a>
+Static Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_directory.html#abd96a4eb6ce45869b55ebe5fa1c6c43f">exists</a> (const char *name)</td></tr>
+<tr><td colspan="2"><h2><a name="pub-static-attribs"></a>
+Static Public Attributes</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static const unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_directory.html#a079e87e4cbc008d223a03c54d87577bf">FILENAME_LEN</a> = 13</td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<p>This class represent a directory. It has methods for listing files inside them. All methods can be called only if the filesystem is mounted.</p>
+<p>IMPORTANT:<br/>
+ Name of files and directories is limited to old DOS 8.3 format. The name of the file must not exceed 8 chracter, and the extension must not exceed 3 chars. Also the name must not contain spaces.</p>
+<p>The directory listing function will return the name of file truncated if necessary (example "My_long_file_name.txt" will be reported as "MY_LON~1.TXT")</p>
+<p>To open a file created on a computer, that has a long file name, you must use the truncated name too. </p>
+<hr/><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a4511c8727dc6fc565a415d5e258d612b"></a><!-- doxytag: member="miosix::Directory::Directory" ref="a4511c8727dc6fc565a415d5e258d612b" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">miosix::Directory::Directory </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Constructor. </p>
+
+</div>
+</div>
+<hr/><h2>Member Function Documentation</h2>
+<a class="anchor" id="abd96a4eb6ce45869b55ebe5fa1c6c43f"></a><!-- doxytag: member="miosix::Directory::exists" ref="abd96a4eb6ce45869b55ebe5fa1c6c43f" args="(const char *name)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool miosix::Directory::exists </td>
+          <td>(</td>
+          <td class="paramtype">const char *&nbsp;</td>
+          <td class="paramname"> <em>name</em></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [static]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>name and path of directory in unix notation (example: "/mydir" and not "C:\mydir")<br/>
+ Note that name of files and directories is limited to old DOS 8.3 format. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="return"><dt><b>Returns:</b></dt><dd>true if directory exists. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ace4d75cdcad650213a294c2fe7a41381"></a><!-- doxytag: member="miosix::Directory::next" ref="ace4d75cdcad650213a294c2fe7a41381" args="(char *name, unsigned int &amp;size, unsigned char &amp;attrib)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool miosix::Directory::next </td>
+          <td>(</td>
+          <td class="paramtype">char *&nbsp;</td>
+          <td class="paramname"> <em>name</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">unsigned int &amp;&nbsp;</td>
+          <td class="paramname"> <em>size</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">unsigned char &amp;&nbsp;</td>
+          <td class="paramname"> <em>attrib</em></td><td>&nbsp;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td><td></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Get next directory entry. </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>a string where the file name will be copied. The string size must be &gt;=FILENAME_LEN </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>size</em>&nbsp;</td><td>size of the entry </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>attrib</em>&nbsp;</td><td>entry attributes (allow undrstanding if entry is a file or directory) </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="return"><dt><b>Returns:</b></dt><dd>true while there are entries in the directory Note that if the return value is false, name size and attrib are not valid </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ab3b8f627404f790ca9e309dd90d4e8a0"></a><!-- doxytag: member="miosix::Directory::open" ref="ab3b8f627404f790ca9e309dd90d4e8a0" args="(const char *name)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">char miosix::Directory::open </td>
+          <td>(</td>
+          <td class="paramtype">const char *&nbsp;</td>
+          <td class="paramname"> <em>name</em></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Open a directory, to list its content </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>name and path of directory in unix notation (example: "/mydir" and not "C:\mydir")<br/>
+ Note that name of files and directories is limited to old DOS 8.3 format. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="return"><dt><b>Returns:</b></dt><dd>0 on success. Error codes are:<ul>
+<li>1 = Error</li>
+<li>3 = <a class="el" href="classmiosix_1_1_filesystem.html">Filesystem</a> not mounted </li>
+</ul>
+</dd></dl>
+
+</div>
+</div>
+<hr/><h2>Member Data Documentation</h2>
+<a class="anchor" id="a079e87e4cbc008d223a03c54d87577bf"></a><!-- doxytag: member="miosix::Directory::FILENAME_LEN" ref="a079e87e4cbc008d223a03c54d87577bf" args="" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">const unsigned int <a class="el" href="classmiosix_1_1_directory.html#a079e87e4cbc008d223a03c54d87577bf">miosix::Directory::FILENAME_LEN</a> = 13<code> [static]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>This is the maximum length of entry name reported by <a class="el" href="classmiosix_1_1_directory.html#ace4d75cdcad650213a294c2fe7a41381">Directory::next()</a>. Use it to create buffers to pass to <a class="el" href="classmiosix_1_1_directory.html#ace4d75cdcad650213a294c2fe7a41381">Directory::next()</a>. This dimension includes the null termination character. </p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li>filesystem.h</li>
+<li>filesystem.cpp</li>
+</ul>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix_1_1_e_d_f_scheduler_priority-members.html b/miosix/_doc/doxygen/html/classmiosix_1_1_e_d_f_scheduler_priority-members.html
new file mode 100644
index 00000000..fc113054
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix_1_1_e_d_f_scheduler_priority-members.html
@@ -0,0 +1,43 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="headertitle">
+<h1>miosix::EDFSchedulerPriority Member List</h1>  </div>
+</div>
+<div class="contents">
+This is the complete list of members for <a class="el" href="classmiosix_1_1_e_d_f_scheduler_priority.html">miosix::EDFSchedulerPriority</a>, including all inherited members.<table>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_e_d_f_scheduler_priority.html#ac3b95b8d504e71004d2b64c8f4553074">EDFSchedulerPriority</a>(long long deadline)</td><td><a class="el" href="classmiosix_1_1_e_d_f_scheduler_priority.html">miosix::EDFSchedulerPriority</a></td><td><code> [inline]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_e_d_f_scheduler_priority.html#ab53c3d57ccdf2f5fac67c796afb73e91">EDFSchedulerPriority</a>()</td><td><a class="el" href="classmiosix_1_1_e_d_f_scheduler_priority.html">miosix::EDFSchedulerPriority</a></td><td><code> [inline]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_e_d_f_scheduler_priority.html#a1e1fa5e57a39e9bbec09eaca3043fe79">get</a>() const </td><td><a class="el" href="classmiosix_1_1_e_d_f_scheduler_priority.html">miosix::EDFSchedulerPriority</a></td><td><code> [inline]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_e_d_f_scheduler_priority.html#a87c2a3428d3d3af53391494e81cf3687">validate</a>() const </td><td><a class="el" href="classmiosix_1_1_e_d_f_scheduler_priority.html">miosix::EDFSchedulerPriority</a></td><td><code> [inline]</code></td></tr>
+</table></div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix_1_1_e_d_f_scheduler_priority.html b/miosix/_doc/doxygen/html/classmiosix_1_1_e_d_f_scheduler_priority.html
new file mode 100644
index 00000000..d677d140
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix_1_1_e_d_f_scheduler_priority.html
@@ -0,0 +1,144 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: miosix::EDFSchedulerPriority Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+  <div class="navpath">
+    <ul>
+      <li><a class="el" href="namespacemiosix.html">miosix</a>      </li>
+      <li><a class="el" href="classmiosix_1_1_e_d_f_scheduler_priority.html">miosix::EDFSchedulerPriority</a>      </li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a>  </div>
+  <div class="headertitle">
+<h1>miosix::EDFSchedulerPriority Class Reference</h1>  </div>
+</div>
+<div class="contents">
+<!-- doxytag: class="miosix::EDFSchedulerPriority" -->
+<p><code>#include &lt;edf_scheduler_types.h&gt;</code></p>
+
+<p><a href="classmiosix_1_1_e_d_f_scheduler_priority-members.html">List of all members.</a></p>
+<table class="memberdecls">
+<tr><td colspan="2"><h2><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_e_d_f_scheduler_priority.html#ac3b95b8d504e71004d2b64c8f4553074">EDFSchedulerPriority</a> (long long deadline)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_e_d_f_scheduler_priority.html#ab53c3d57ccdf2f5fac67c796afb73e91">EDFSchedulerPriority</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">long long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_e_d_f_scheduler_priority.html#a1e1fa5e57a39e9bbec09eaca3043fe79">get</a> () const </td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_e_d_f_scheduler_priority.html#a87c2a3428d3d3af53391494e81cf3687">validate</a> () const </td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<p>This class models the concept of priority for the EDF scheduler. Therefore, it represents a deadline, which is the absolute time withi which the thread should have completed its computation. </p>
+<hr/><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="ac3b95b8d504e71004d2b64c8f4553074"></a><!-- doxytag: member="miosix::EDFSchedulerPriority::EDFSchedulerPriority" ref="ac3b95b8d504e71004d2b64c8f4553074" args="(long long deadline)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">miosix::EDFSchedulerPriority::EDFSchedulerPriority </td>
+          <td>(</td>
+          <td class="paramtype">long long&nbsp;</td>
+          <td class="paramname"> <em>deadline</em></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Constructor. Not explicit for backward compatibility. </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>deadline</em>&nbsp;</td><td>the thread deadline. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="ab53c3d57ccdf2f5fac67c796afb73e91"></a><!-- doxytag: member="miosix::EDFSchedulerPriority::EDFSchedulerPriority" ref="ab53c3d57ccdf2f5fac67c796afb73e91" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">miosix::EDFSchedulerPriority::EDFSchedulerPriority </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Default constructor. </p>
+
+</div>
+</div>
+<hr/><h2>Member Function Documentation</h2>
+<a class="anchor" id="a1e1fa5e57a39e9bbec09eaca3043fe79"></a><!-- doxytag: member="miosix::EDFSchedulerPriority::get" ref="a1e1fa5e57a39e9bbec09eaca3043fe79" args="() const " -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">long long miosix::EDFSchedulerPriority::get </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td> const<code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<dl class="return"><dt><b>Returns:</b></dt><dd>the priority value </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a87c2a3428d3d3af53391494e81cf3687"></a><!-- doxytag: member="miosix::EDFSchedulerPriority::validate" ref="a87c2a3428d3d3af53391494e81cf3687" args="() const " -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool miosix::EDFSchedulerPriority::validate </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td> const<code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<dl class="return"><dt><b>Returns:</b></dt><dd>true if this objects represents a valid deadline. </dd></dl>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>edf_scheduler_types.h</li>
+</ul>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix_1_1_exception_handling_data-members.html b/miosix/_doc/doxygen/html/classmiosix_1_1_exception_handling_data-members.html
new file mode 100644
index 00000000..78393816
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix_1_1_exception_handling_data-members.html
@@ -0,0 +1,41 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="headertitle">
+<h1>miosix::ExceptionHandlingData Member List</h1>  </div>
+</div>
+<div class="contents">
+This is the complete list of members for <a class="el" href="classmiosix_1_1_exception_handling_data.html">miosix::ExceptionHandlingData</a>, including all inherited members.<table>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_exception_handling_data.html#a24ba3640e643b05fa9212a213c012101">ExceptionHandlingData</a>()</td><td><a class="el" href="classmiosix_1_1_exception_handling_data.html">miosix::ExceptionHandlingData</a></td><td><code> [inline]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_exception_handling_data.html#a61144e6db2029974d7988aa079db59e3">~ExceptionHandlingData</a>()</td><td><a class="el" href="classmiosix_1_1_exception_handling_data.html">miosix::ExceptionHandlingData</a></td><td><code> [inline]</code></td></tr>
+</table></div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix_1_1_exception_handling_data.html b/miosix/_doc/doxygen/html/classmiosix_1_1_exception_handling_data.html
new file mode 100644
index 00000000..869d4e69
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix_1_1_exception_handling_data.html
@@ -0,0 +1,98 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: miosix::ExceptionHandlingData Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+  <div class="navpath">
+    <ul>
+      <li><a class="el" href="namespacemiosix.html">miosix</a>      </li>
+      <li><a class="el" href="classmiosix_1_1_exception_handling_data.html">miosix::ExceptionHandlingData</a>      </li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a>  </div>
+  <div class="headertitle">
+<h1>miosix::ExceptionHandlingData Class Reference</h1>  </div>
+</div>
+<div class="contents">
+<!-- doxytag: class="miosix::ExceptionHandlingData" -->
+<p><code>#include &lt;syscalls_types.h&gt;</code></p>
+
+<p><a href="classmiosix_1_1_exception_handling_data-members.html">List of all members.</a></p>
+<table class="memberdecls">
+<tr><td colspan="2"><h2><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_exception_handling_data.html#a24ba3640e643b05fa9212a213c012101">ExceptionHandlingData</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_exception_handling_data.html#a61144e6db2029974d7988aa079db59e3">~ExceptionHandlingData</a> ()</td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<p>This is a wrapper class that contains all per-thread data required to make C++ exceptions thread safe, irrespective of the ABI. </p>
+<hr/><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a24ba3640e643b05fa9212a213c012101"></a><!-- doxytag: member="miosix::ExceptionHandlingData::ExceptionHandlingData" ref="a24ba3640e643b05fa9212a213c012101" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">miosix::ExceptionHandlingData::ExceptionHandlingData </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Constructor, initializes the exception related data to their default value </p>
+
+</div>
+</div>
+<a class="anchor" id="a61144e6db2029974d7988aa079db59e3"></a><!-- doxytag: member="miosix::ExceptionHandlingData::~ExceptionHandlingData" ref="a61144e6db2029974d7988aa079db59e3" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">miosix::ExceptionHandlingData::~ExceptionHandlingData </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Destructor, checks that no memory is leaked (should never happen) </p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>syscalls_types.h</li>
+</ul>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix_1_1_fast_interrupt_disable_lock-members.html b/miosix/_doc/doxygen/html/classmiosix_1_1_fast_interrupt_disable_lock-members.html
new file mode 100644
index 00000000..dfb63cbc
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix_1_1_fast_interrupt_disable_lock-members.html
@@ -0,0 +1,41 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="headertitle">
+<h1>miosix::FastInterruptDisableLock Member List</h1>  </div>
+</div>
+<div class="contents">
+This is the complete list of members for <a class="el" href="classmiosix_1_1_fast_interrupt_disable_lock.html">miosix::FastInterruptDisableLock</a>, including all inherited members.<table>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_fast_interrupt_disable_lock.html#ac10ca2ad58013504750550337bdaf6cf">FastInterruptDisableLock</a>()</td><td><a class="el" href="classmiosix_1_1_fast_interrupt_disable_lock.html">miosix::FastInterruptDisableLock</a></td><td><code> [inline]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_fast_interrupt_disable_lock.html#aa060c8983f93de1724b51c361de76477">~FastInterruptDisableLock</a>()</td><td><a class="el" href="classmiosix_1_1_fast_interrupt_disable_lock.html">miosix::FastInterruptDisableLock</a></td><td><code> [inline]</code></td></tr>
+</table></div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix_1_1_fast_interrupt_disable_lock.html b/miosix/_doc/doxygen/html/classmiosix_1_1_fast_interrupt_disable_lock.html
new file mode 100644
index 00000000..29e45ef7
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix_1_1_fast_interrupt_disable_lock.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: miosix::FastInterruptDisableLock Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+  <div class="navpath">
+    <ul>
+      <li><a class="el" href="namespacemiosix.html">miosix</a>      </li>
+      <li><a class="el" href="classmiosix_1_1_fast_interrupt_disable_lock.html">miosix::FastInterruptDisableLock</a>      </li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a>  </div>
+  <div class="headertitle">
+<h1>miosix::FastInterruptDisableLock Class Reference<br/>
+<small>
+[<a class="el" href="group___kernel.html">Kernel</a>]</small>
+</h1>  </div>
+</div>
+<div class="contents">
+<!-- doxytag: class="miosix::FastInterruptDisableLock" -->
+<p><code>#include &lt;kernel.h&gt;</code></p>
+
+<p><a href="classmiosix_1_1_fast_interrupt_disable_lock-members.html">List of all members.</a></p>
+<table class="memberdecls">
+<tr><td colspan="2"><h2><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_fast_interrupt_disable_lock.html#ac10ca2ad58013504750550337bdaf6cf">FastInterruptDisableLock</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_fast_interrupt_disable_lock.html#aa060c8983f93de1724b51c361de76477">~FastInterruptDisableLock</a> ()</td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<p>This class is a RAII lock for disabling interrupts. This call avoids the error of not reenabling interrupts since it is done automatically. As opposed to <a class="el" href="classmiosix_1_1_interrupt_disable_lock.html">InterruptDisableLock</a>, this version doesn't support nesting </p>
+<hr/><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="ac10ca2ad58013504750550337bdaf6cf"></a><!-- doxytag: member="miosix::FastInterruptDisableLock::FastInterruptDisableLock" ref="ac10ca2ad58013504750550337bdaf6cf" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">miosix::FastInterruptDisableLock::FastInterruptDisableLock </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Constructor, disables interrupts. </p>
+
+</div>
+</div>
+<a class="anchor" id="aa060c8983f93de1724b51c361de76477"></a><!-- doxytag: member="miosix::FastInterruptDisableLock::~FastInterruptDisableLock" ref="aa060c8983f93de1724b51c361de76477" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">miosix::FastInterruptDisableLock::~FastInterruptDisableLock </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Destructor, reenables interrupts </p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>kernel.h</li>
+</ul>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix_1_1_fast_interrupt_enable_lock-members.html b/miosix/_doc/doxygen/html/classmiosix_1_1_fast_interrupt_enable_lock-members.html
new file mode 100644
index 00000000..7af2379b
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix_1_1_fast_interrupt_enable_lock-members.html
@@ -0,0 +1,41 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="headertitle">
+<h1>miosix::FastInterruptEnableLock Member List</h1>  </div>
+</div>
+<div class="contents">
+This is the complete list of members for <a class="el" href="classmiosix_1_1_fast_interrupt_enable_lock.html">miosix::FastInterruptEnableLock</a>, including all inherited members.<table>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_fast_interrupt_enable_lock.html#a1d0dc9ea0ee452a36d300b84c5e30a83">FastInterruptEnableLock</a>(FastInterruptDisableLock &amp;l)</td><td><a class="el" href="classmiosix_1_1_fast_interrupt_enable_lock.html">miosix::FastInterruptEnableLock</a></td><td><code> [inline]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_fast_interrupt_enable_lock.html#afb021a03eb3c46a8b8ee8d7854190f8c">~FastInterruptEnableLock</a>()</td><td><a class="el" href="classmiosix_1_1_fast_interrupt_enable_lock.html">miosix::FastInterruptEnableLock</a></td><td><code> [inline]</code></td></tr>
+</table></div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix_1_1_fast_interrupt_enable_lock.html b/miosix/_doc/doxygen/html/classmiosix_1_1_fast_interrupt_enable_lock.html
new file mode 100644
index 00000000..43a11db9
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix_1_1_fast_interrupt_enable_lock.html
@@ -0,0 +1,108 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: miosix::FastInterruptEnableLock Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+  <div class="navpath">
+    <ul>
+      <li><a class="el" href="namespacemiosix.html">miosix</a>      </li>
+      <li><a class="el" href="classmiosix_1_1_fast_interrupt_enable_lock.html">miosix::FastInterruptEnableLock</a>      </li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a>  </div>
+  <div class="headertitle">
+<h1>miosix::FastInterruptEnableLock Class Reference<br/>
+<small>
+[<a class="el" href="group___kernel.html">Kernel</a>]</small>
+</h1>  </div>
+</div>
+<div class="contents">
+<!-- doxytag: class="miosix::FastInterruptEnableLock" -->
+<p><code>#include &lt;kernel.h&gt;</code></p>
+
+<p><a href="classmiosix_1_1_fast_interrupt_enable_lock-members.html">List of all members.</a></p>
+<table class="memberdecls">
+<tr><td colspan="2"><h2><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_fast_interrupt_enable_lock.html#a1d0dc9ea0ee452a36d300b84c5e30a83">FastInterruptEnableLock</a> (<a class="el" href="classmiosix_1_1_fast_interrupt_disable_lock.html">FastInterruptDisableLock</a> &amp;l)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_fast_interrupt_enable_lock.html#afb021a03eb3c46a8b8ee8d7854190f8c">~FastInterruptEnableLock</a> ()</td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<p>This class allows to temporarily re enable interrpts in a scope where they are disabled with an <a class="el" href="classmiosix_1_1_fast_interrupt_disable_lock.html">FastInterruptDisableLock</a>. </p>
+<hr/><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a1d0dc9ea0ee452a36d300b84c5e30a83"></a><!-- doxytag: member="miosix::FastInterruptEnableLock::FastInterruptEnableLock" ref="a1d0dc9ea0ee452a36d300b84c5e30a83" args="(FastInterruptDisableLock &amp;l)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">miosix::FastInterruptEnableLock::FastInterruptEnableLock </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classmiosix_1_1_fast_interrupt_disable_lock.html">FastInterruptDisableLock</a> &amp;&nbsp;</td>
+          <td class="paramname"> <em>l</em></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Constructor, enables back interrupts. </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>l</em>&nbsp;</td><td>the InteruptDisableLock that disabled interrupts. Note that this parameter is not used internally. It is only required to prevent erroneous use of this class by making an instance of it without an active InterruptEnabeLock </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="afb021a03eb3c46a8b8ee8d7854190f8c"></a><!-- doxytag: member="miosix::FastInterruptEnableLock::~FastInterruptEnableLock" ref="afb021a03eb3c46a8b8ee8d7854190f8c" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">miosix::FastInterruptEnableLock::~FastInterruptEnableLock </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Destructor. Disable back interrupts. </p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>kernel.h</li>
+</ul>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix_1_1_fast_mutex-members.html b/miosix/_doc/doxygen/html/classmiosix_1_1_fast_mutex-members.html
new file mode 100644
index 00000000..62631dbf
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix_1_1_fast_mutex-members.html
@@ -0,0 +1,47 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="headertitle">
+<h1>miosix::FastMutex Member List</h1>  </div>
+</div>
+<div class="contents">
+This is the complete list of members for <a class="el" href="classmiosix_1_1_fast_mutex.html">miosix::FastMutex</a>, including all inherited members.<table>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_fast_mutex.html#a981dd8f3190f81f16a773b3de6ae0891a3e00b8e92574e595293459333b1e9182">DEFAULT</a> enum value</td><td><a class="el" href="classmiosix_1_1_fast_mutex.html">miosix::FastMutex</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_fast_mutex.html#aca5cd49cdb704db34488ac7ef16bbd12">FastMutex</a>(Options opt=DEFAULT)</td><td><a class="el" href="classmiosix_1_1_fast_mutex.html">miosix::FastMutex</a></td><td><code> [inline]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_fast_mutex.html#a0ad94f95d78f1316da8b622928b6ff61">lock</a>()</td><td><a class="el" href="classmiosix_1_1_fast_mutex.html">miosix::FastMutex</a></td><td><code> [inline]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_fast_mutex.html#a981dd8f3190f81f16a773b3de6ae0891">Options</a> enum name</td><td><a class="el" href="classmiosix_1_1_fast_mutex.html">miosix::FastMutex</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_fast_mutex.html#a981dd8f3190f81f16a773b3de6ae0891aa70c27d1982ebadac457d4f1c45fa2c8">RECURSIVE</a> enum value</td><td><a class="el" href="classmiosix_1_1_fast_mutex.html">miosix::FastMutex</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_fast_mutex.html#a41f2a4d790a2a7ee8695768d2deae95a">tryLock</a>()</td><td><a class="el" href="classmiosix_1_1_fast_mutex.html">miosix::FastMutex</a></td><td><code> [inline]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_fast_mutex.html#a080ce00d76c005a73917038908fd824c">unlock</a>()</td><td><a class="el" href="classmiosix_1_1_fast_mutex.html">miosix::FastMutex</a></td><td><code> [inline]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_fast_mutex.html#ad320fd1b0d905f2d4fa9e8e0567181d2">~FastMutex</a>()</td><td><a class="el" href="classmiosix_1_1_fast_mutex.html">miosix::FastMutex</a></td><td><code> [inline]</code></td></tr>
+</table></div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix_1_1_fast_mutex.html b/miosix/_doc/doxygen/html/classmiosix_1_1_fast_mutex.html
new file mode 100644
index 00000000..f62d1dc9
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix_1_1_fast_mutex.html
@@ -0,0 +1,193 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: miosix::FastMutex Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+  <div class="navpath">
+    <ul>
+      <li><a class="el" href="namespacemiosix.html">miosix</a>      </li>
+      <li><a class="el" href="classmiosix_1_1_fast_mutex.html">miosix::FastMutex</a>      </li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="summary">
+<a href="#pub-types">Public Types</a> &#124;
+<a href="#pub-methods">Public Member Functions</a>  </div>
+  <div class="headertitle">
+<h1>miosix::FastMutex Class Reference<br/>
+<small>
+[<a class="el" href="group___sync.html">Syncronization</a>]</small>
+</h1>  </div>
+</div>
+<div class="contents">
+<!-- doxytag: class="miosix::FastMutex" -->
+<p><code>#include &lt;sync.h&gt;</code></p>
+
+<p><a href="classmiosix_1_1_fast_mutex-members.html">List of all members.</a></p>
+<table class="memberdecls">
+<tr><td colspan="2"><h2><a name="pub-types"></a>
+Public Types</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_fast_mutex.html#a981dd8f3190f81f16a773b3de6ae0891">Options</a> { <a class="el" href="classmiosix_1_1_fast_mutex.html#a981dd8f3190f81f16a773b3de6ae0891a3e00b8e92574e595293459333b1e9182">DEFAULT</a>, 
+<a class="el" href="classmiosix_1_1_fast_mutex.html#a981dd8f3190f81f16a773b3de6ae0891aa70c27d1982ebadac457d4f1c45fa2c8">RECURSIVE</a>
+ }</td></tr>
+<tr><td colspan="2"><h2><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_fast_mutex.html#aca5cd49cdb704db34488ac7ef16bbd12">FastMutex</a> (<a class="el" href="classmiosix_1_1_fast_mutex.html#a981dd8f3190f81f16a773b3de6ae0891">Options</a> opt=DEFAULT)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_fast_mutex.html#a0ad94f95d78f1316da8b622928b6ff61">lock</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_fast_mutex.html#a41f2a4d790a2a7ee8695768d2deae95a">tryLock</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_fast_mutex.html#a080ce00d76c005a73917038908fd824c">unlock</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_fast_mutex.html#ad320fd1b0d905f2d4fa9e8e0567181d2">~FastMutex</a> ()</td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<p>Fast mutex without support for priority inheritance </p>
+<hr/><h2>Member Enumeration Documentation</h2>
+<a class="anchor" id="a981dd8f3190f81f16a773b3de6ae0891"></a><!-- doxytag: member="miosix::FastMutex::Options" ref="a981dd8f3190f81f16a773b3de6ae0891" args="" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">enum <a class="el" href="classmiosix_1_1_fast_mutex.html#a981dd8f3190f81f16a773b3de6ae0891">miosix::FastMutex::Options</a></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p><a class="el" href="classmiosix_1_1_mutex.html">Mutex</a> options, passed to the constructor to set additional options.<br/>
+ The DEFAULT option indicates the default <a class="el" href="classmiosix_1_1_mutex.html">Mutex</a> type. </p>
+<dl><dt><b>Enumerator: </b></dt><dd><table border="0" cellspacing="2" cellpadding="0">
+<tr><td valign="top"><em><a class="anchor" id="a981dd8f3190f81f16a773b3de6ae0891a3e00b8e92574e595293459333b1e9182"></a><!-- doxytag: member="DEFAULT" ref="a981dd8f3190f81f16a773b3de6ae0891a3e00b8e92574e595293459333b1e9182" args="" -->DEFAULT</em>&nbsp;</td><td>
+<p>Default mutex. </p>
+</td></tr>
+<tr><td valign="top"><em><a class="anchor" id="a981dd8f3190f81f16a773b3de6ae0891aa70c27d1982ebadac457d4f1c45fa2c8"></a><!-- doxytag: member="RECURSIVE" ref="a981dd8f3190f81f16a773b3de6ae0891aa70c27d1982ebadac457d4f1c45fa2c8" args="" -->RECURSIVE</em>&nbsp;</td><td>
+<p><a class="el" href="classmiosix_1_1_mutex.html">Mutex</a> is recursive. </p>
+</td></tr>
+</table>
+</dd>
+</dl>
+
+</div>
+</div>
+<hr/><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="aca5cd49cdb704db34488ac7ef16bbd12"></a><!-- doxytag: member="miosix::FastMutex::FastMutex" ref="aca5cd49cdb704db34488ac7ef16bbd12" args="(Options opt=DEFAULT)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">miosix::FastMutex::FastMutex </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classmiosix_1_1_fast_mutex.html#a981dd8f3190f81f16a773b3de6ae0891">Options</a>&nbsp;</td>
+          <td class="paramname"> <em>opt</em> = <code>DEFAULT</code></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Constructor, initializes the mutex. </p>
+
+</div>
+</div>
+<a class="anchor" id="ad320fd1b0d905f2d4fa9e8e0567181d2"></a><!-- doxytag: member="miosix::FastMutex::~FastMutex" ref="ad320fd1b0d905f2d4fa9e8e0567181d2" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">miosix::FastMutex::~FastMutex </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Destructor </p>
+
+</div>
+</div>
+<hr/><h2>Member Function Documentation</h2>
+<a class="anchor" id="a0ad94f95d78f1316da8b622928b6ff61"></a><!-- doxytag: member="miosix::FastMutex::lock" ref="a0ad94f95d78f1316da8b622928b6ff61" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void miosix::FastMutex::lock </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Locks the critical section. If the critical section is already locked, the thread will be queued in a wait list. </p>
+
+</div>
+</div>
+<a class="anchor" id="a41f2a4d790a2a7ee8695768d2deae95a"></a><!-- doxytag: member="miosix::FastMutex::tryLock" ref="a41f2a4d790a2a7ee8695768d2deae95a" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool miosix::FastMutex::tryLock </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Acquires the lock only if the critical section is not already locked by other threads. Attempting to lock again a recursive mutex will fail, and the mutex' lock count will not be incremented. </p>
+<dl class="return"><dt><b>Returns:</b></dt><dd>true if the lock was acquired </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a080ce00d76c005a73917038908fd824c"></a><!-- doxytag: member="miosix::FastMutex::unlock" ref="a080ce00d76c005a73917038908fd824c" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void miosix::FastMutex::unlock </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Unlocks the critical section. </p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>sync.h</li>
+</ul>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix_1_1_filesystem-members.html b/miosix/_doc/doxygen/html/classmiosix_1_1_filesystem-members.html
new file mode 100644
index 00000000..3221a24e
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix_1_1_filesystem-members.html
@@ -0,0 +1,43 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="headertitle">
+<h1>miosix::Filesystem Member List</h1>  </div>
+</div>
+<div class="contents">
+This is the complete list of members for <a class="el" href="classmiosix_1_1_filesystem.html">miosix::Filesystem</a>, including all inherited members.<table>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_filesystem.html#a83ab051fd94eb41f38fb37c4c3c206b9">instance</a>()</td><td><a class="el" href="classmiosix_1_1_filesystem.html">miosix::Filesystem</a></td><td><code> [static]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_filesystem.html#abaa17c0d791fabf357b0ed7ab7738d94">isMounted</a>() const </td><td><a class="el" href="classmiosix_1_1_filesystem.html">miosix::Filesystem</a></td><td><code> [inline]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_filesystem.html#a4506b58ded0e57ce555c9d21a0683801">mount</a>()</td><td><a class="el" href="classmiosix_1_1_filesystem.html">miosix::Filesystem</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_filesystem.html#a47abdaf552093b29eb78c722789324e7">umount</a>()</td><td><a class="el" href="classmiosix_1_1_filesystem.html">miosix::Filesystem</a></td><td></td></tr>
+</table></div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix_1_1_filesystem.html b/miosix/_doc/doxygen/html/classmiosix_1_1_filesystem.html
new file mode 100644
index 00000000..03c6b7ff
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix_1_1_filesystem.html
@@ -0,0 +1,150 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: miosix::Filesystem Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+  <div class="navpath">
+    <ul>
+      <li><a class="el" href="namespacemiosix.html">miosix</a>      </li>
+      <li><a class="el" href="classmiosix_1_1_filesystem.html">miosix::Filesystem</a>      </li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-static-methods">Static Public Member Functions</a>  </div>
+  <div class="headertitle">
+<h1>miosix::Filesystem Class Reference<br/>
+<small>
+[<a class="el" href="group___filesystem.html">Filesystem</a>]</small>
+</h1>  </div>
+</div>
+<div class="contents">
+<!-- doxytag: class="miosix::Filesystem" -->
+<p><code>#include &lt;filesystem.h&gt;</code></p>
+
+<p><a href="classmiosix_1_1_filesystem-members.html">List of all members.</a></p>
+<table class="memberdecls">
+<tr><td colspan="2"><h2><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_filesystem.html#a4506b58ded0e57ce555c9d21a0683801">mount</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_filesystem.html#a47abdaf552093b29eb78c722789324e7">umount</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_filesystem.html#abaa17c0d791fabf357b0ed7ab7738d94">isMounted</a> () const </td></tr>
+<tr><td colspan="2"><h2><a name="pub-static-methods"></a>
+Static Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classmiosix_1_1_filesystem.html">Filesystem</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_filesystem.html#a83ab051fd94eb41f38fb37c4c3c206b9">instance</a> ()</td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<p>This class allows low level access to the filesystem. It contains member functions to mount and unmount the filesystem, and to check if it is mounted. There are also functions to perform file access that are primarily meant to be used by the C/C++ standard library integration layer (syscalls.cpp). </p>
+<hr/><h2>Member Function Documentation</h2>
+<a class="anchor" id="a83ab051fd94eb41f38fb37c4c3c206b9"></a><!-- doxytag: member="miosix::Filesystem::instance" ref="a83ab051fd94eb41f38fb37c4c3c206b9" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classmiosix_1_1_filesystem.html">Filesystem</a> &amp; miosix::Filesystem::instance </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [static]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<dl class="return"><dt><b>Returns:</b></dt><dd>the instance of the filesystem (singleton). </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="abaa17c0d791fabf357b0ed7ab7738d94"></a><!-- doxytag: member="miosix::Filesystem::isMounted" ref="abaa17c0d791fabf357b0ed7ab7738d94" args="() const " -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool miosix::Filesystem::isMounted </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td> const<code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<dl class="return"><dt><b>Returns:</b></dt><dd>true if the filesystem is mounted </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a4506b58ded0e57ce555c9d21a0683801"></a><!-- doxytag: member="miosix::Filesystem::mount" ref="a4506b58ded0e57ce555c9d21a0683801" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">char miosix::Filesystem::mount </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Try to mount the flesystem. Might take a long time (~ 1 sec if no errors, up to 3 sec in case of errors) </p>
+<dl class="return"><dt><b>Returns:</b></dt><dd><ul>
+<li>0 = on success</li>
+<li>1 = in case of errors</li>
+<li>2 = if no drive was found (for example there is no uSD card)</li>
+<li>3 = if the filesystem is already mounted </li>
+</ul>
+</dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a47abdaf552093b29eb78c722789324e7"></a><!-- doxytag: member="miosix::Filesystem::umount" ref="a47abdaf552093b29eb78c722789324e7" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void miosix::Filesystem::umount </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Unmounts the filesystem if it is mounted. All files that are open at this point are closed, and their file descriptors are invalidated. Allows safely removing the drive (example uSD card) </p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li>filesystem.h</li>
+<li>filesystem.cpp</li>
+</ul>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix_1_1_interrupt_disable_lock-members.html b/miosix/_doc/doxygen/html/classmiosix_1_1_interrupt_disable_lock-members.html
new file mode 100644
index 00000000..add722f5
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix_1_1_interrupt_disable_lock-members.html
@@ -0,0 +1,41 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="headertitle">
+<h1>miosix::InterruptDisableLock Member List</h1>  </div>
+</div>
+<div class="contents">
+This is the complete list of members for <a class="el" href="classmiosix_1_1_interrupt_disable_lock.html">miosix::InterruptDisableLock</a>, including all inherited members.<table>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_interrupt_disable_lock.html#aeee39d909e99f88789419bb2bbad59c7">InterruptDisableLock</a>()</td><td><a class="el" href="classmiosix_1_1_interrupt_disable_lock.html">miosix::InterruptDisableLock</a></td><td><code> [inline]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_interrupt_disable_lock.html#a8989ce6efe8d4930cf045e01b157b288">~InterruptDisableLock</a>()</td><td><a class="el" href="classmiosix_1_1_interrupt_disable_lock.html">miosix::InterruptDisableLock</a></td><td><code> [inline]</code></td></tr>
+</table></div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix_1_1_interrupt_disable_lock.html b/miosix/_doc/doxygen/html/classmiosix_1_1_interrupt_disable_lock.html
new file mode 100644
index 00000000..c93e7941
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix_1_1_interrupt_disable_lock.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: miosix::InterruptDisableLock Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+  <div class="navpath">
+    <ul>
+      <li><a class="el" href="namespacemiosix.html">miosix</a>      </li>
+      <li><a class="el" href="classmiosix_1_1_interrupt_disable_lock.html">miosix::InterruptDisableLock</a>      </li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a>  </div>
+  <div class="headertitle">
+<h1>miosix::InterruptDisableLock Class Reference<br/>
+<small>
+[<a class="el" href="group___kernel.html">Kernel</a>]</small>
+</h1>  </div>
+</div>
+<div class="contents">
+<!-- doxytag: class="miosix::InterruptDisableLock" -->
+<p><code>#include &lt;kernel.h&gt;</code></p>
+
+<p><a href="classmiosix_1_1_interrupt_disable_lock-members.html">List of all members.</a></p>
+<table class="memberdecls">
+<tr><td colspan="2"><h2><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_interrupt_disable_lock.html#aeee39d909e99f88789419bb2bbad59c7">InterruptDisableLock</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_interrupt_disable_lock.html#a8989ce6efe8d4930cf045e01b157b288">~InterruptDisableLock</a> ()</td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<p>This class is a RAII lock for disabling interrupts. This call avoids the error of not reenabling interrupts since it is done automatically. </p>
+<hr/><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="aeee39d909e99f88789419bb2bbad59c7"></a><!-- doxytag: member="miosix::InterruptDisableLock::InterruptDisableLock" ref="aeee39d909e99f88789419bb2bbad59c7" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">miosix::InterruptDisableLock::InterruptDisableLock </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Constructor, disables interrupts. </p>
+
+</div>
+</div>
+<a class="anchor" id="a8989ce6efe8d4930cf045e01b157b288"></a><!-- doxytag: member="miosix::InterruptDisableLock::~InterruptDisableLock" ref="a8989ce6efe8d4930cf045e01b157b288" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">miosix::InterruptDisableLock::~InterruptDisableLock </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Destructor, reenables interrupts </p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>kernel.h</li>
+</ul>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix_1_1_interrupt_enable_lock-members.html b/miosix/_doc/doxygen/html/classmiosix_1_1_interrupt_enable_lock-members.html
new file mode 100644
index 00000000..5e939ae4
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix_1_1_interrupt_enable_lock-members.html
@@ -0,0 +1,41 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="headertitle">
+<h1>miosix::InterruptEnableLock Member List</h1>  </div>
+</div>
+<div class="contents">
+This is the complete list of members for <a class="el" href="classmiosix_1_1_interrupt_enable_lock.html">miosix::InterruptEnableLock</a>, including all inherited members.<table>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_interrupt_enable_lock.html#ae02c7390bbaf3839a4401b4ea3172173">InterruptEnableLock</a>(InterruptDisableLock &amp;l)</td><td><a class="el" href="classmiosix_1_1_interrupt_enable_lock.html">miosix::InterruptEnableLock</a></td><td><code> [inline]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_interrupt_enable_lock.html#a0e1b60ac838afe74d1f7a906e3bb2282">~InterruptEnableLock</a>()</td><td><a class="el" href="classmiosix_1_1_interrupt_enable_lock.html">miosix::InterruptEnableLock</a></td><td><code> [inline]</code></td></tr>
+</table></div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix_1_1_interrupt_enable_lock.html b/miosix/_doc/doxygen/html/classmiosix_1_1_interrupt_enable_lock.html
new file mode 100644
index 00000000..c67efad4
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix_1_1_interrupt_enable_lock.html
@@ -0,0 +1,124 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: miosix::InterruptEnableLock Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+  <div class="navpath">
+    <ul>
+      <li><a class="el" href="namespacemiosix.html">miosix</a>      </li>
+      <li><a class="el" href="classmiosix_1_1_interrupt_enable_lock.html">miosix::InterruptEnableLock</a>      </li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a>  </div>
+  <div class="headertitle">
+<h1>miosix::InterruptEnableLock Class Reference<br/>
+<small>
+[<a class="el" href="group___kernel.html">Kernel</a>]</small>
+</h1>  </div>
+</div>
+<div class="contents">
+<!-- doxytag: class="miosix::InterruptEnableLock" -->
+<p><code>#include &lt;kernel.h&gt;</code></p>
+
+<p><a href="classmiosix_1_1_interrupt_enable_lock-members.html">List of all members.</a></p>
+<table class="memberdecls">
+<tr><td colspan="2"><h2><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_interrupt_enable_lock.html#ae02c7390bbaf3839a4401b4ea3172173">InterruptEnableLock</a> (<a class="el" href="classmiosix_1_1_interrupt_disable_lock.html">InterruptDisableLock</a> &amp;l)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_interrupt_enable_lock.html#a0e1b60ac838afe74d1f7a906e3bb2282">~InterruptEnableLock</a> ()</td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<p>This class allows to temporarily re enable interrpts in a scope where they are disabled with an <a class="el" href="classmiosix_1_1_interrupt_disable_lock.html">InterruptDisableLock</a>.<br/>
+ Example: </p>
+<div class="fragment"><pre class="fragment"> <span class="comment">//Interrupts enabled</span>
+ {
+     InterruptDisableLock dLock;
+
+     <span class="comment">//Now interrupts disabled</span>
+
+     {
+         <a class="code" href="classmiosix_1_1_interrupt_enable_lock.html#ae02c7390bbaf3839a4401b4ea3172173">InterruptEnableLock</a> eLock(dLock);
+
+         <span class="comment">//Now interrupts back enabled</span>
+     }
+
+     <span class="comment">//Now interrupts again disabled</span>
+ }
+ <span class="comment">//Finally interrupts enabled</span>
+</pre></div> <hr/><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="ae02c7390bbaf3839a4401b4ea3172173"></a><!-- doxytag: member="miosix::InterruptEnableLock::InterruptEnableLock" ref="ae02c7390bbaf3839a4401b4ea3172173" args="(InterruptDisableLock &amp;l)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">miosix::InterruptEnableLock::InterruptEnableLock </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classmiosix_1_1_interrupt_disable_lock.html">InterruptDisableLock</a> &amp;&nbsp;</td>
+          <td class="paramname"> <em>l</em></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Constructor, enables back interrupts. </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>l</em>&nbsp;</td><td>the InteruptDisableLock that disabled interrupts. Note that this parameter is not used internally. It is only required to prevent erroneous use of this class by making an instance of it without an active InterruptEnabeLock </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="a0e1b60ac838afe74d1f7a906e3bb2282"></a><!-- doxytag: member="miosix::InterruptEnableLock::~InterruptEnableLock" ref="a0e1b60ac838afe74d1f7a906e3bb2282" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">miosix::InterruptEnableLock::~InterruptEnableLock </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Destructor. Disable back interrupts. </p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>kernel.h</li>
+</ul>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix_1_1_lock-members.html b/miosix/_doc/doxygen/html/classmiosix_1_1_lock-members.html
new file mode 100644
index 00000000..0db3fb0f
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix_1_1_lock-members.html
@@ -0,0 +1,42 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="headertitle">
+<h1>miosix::Lock&lt; T &gt; Member List</h1>  </div>
+</div>
+<div class="contents">
+This is the complete list of members for <a class="el" href="classmiosix_1_1_lock.html">miosix::Lock&lt; T &gt;</a>, including all inherited members.<table>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_lock.html#a28807e63ba20acd9df2b55bccf8af2bf">get</a>()</td><td><a class="el" href="classmiosix_1_1_lock.html">miosix::Lock&lt; T &gt;</a></td><td><code> [inline]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_lock.html#aefcff605f9b21d592febe4c1bffa7807">Lock</a>(T &amp;m)</td><td><a class="el" href="classmiosix_1_1_lock.html">miosix::Lock&lt; T &gt;</a></td><td><code> [inline, explicit]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_lock.html#ad8e9566c5eead737472fda2fce2a0c88">~Lock</a>()</td><td><a class="el" href="classmiosix_1_1_lock.html">miosix::Lock&lt; T &gt;</a></td><td><code> [inline]</code></td></tr>
+</table></div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix_1_1_lock.html b/miosix/_doc/doxygen/html/classmiosix_1_1_lock.html
new file mode 100644
index 00000000..c341d0d7
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix_1_1_lock.html
@@ -0,0 +1,137 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: miosix::Lock&lt; T &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+  <div class="navpath">
+    <ul>
+      <li><a class="el" href="namespacemiosix.html">miosix</a>      </li>
+      <li><a class="el" href="classmiosix_1_1_lock.html">miosix::Lock&lt; T &gt;</a>      </li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a>  </div>
+  <div class="headertitle">
+<h1>miosix::Lock&lt; T &gt; Class Template Reference<br/>
+<small>
+[<a class="el" href="group___sync.html">Syncronization</a>]</small>
+</h1>  </div>
+</div>
+<div class="contents">
+<!-- doxytag: class="miosix::Lock" -->
+<p><code>#include &lt;sync.h&gt;</code></p>
+
+<p><a href="classmiosix_1_1_lock-members.html">List of all members.</a></p>
+<table class="memberdecls">
+<tr><td colspan="2"><h2><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_lock.html#aefcff605f9b21d592febe4c1bffa7807">Lock</a> (T &amp;m)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_lock.html#ad8e9566c5eead737472fda2fce2a0c88">~Lock</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">T &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_lock.html#a28807e63ba20acd9df2b55bccf8af2bf">get</a> ()</td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<h3>template&lt;typename T&gt;<br/>
+ class miosix::Lock&lt; T &gt;</h3>
+
+<p>Very simple RAII style class to lock a mutex in an exception-safe way. <a class="el" href="classmiosix_1_1_mutex.html">Mutex</a> is acquired by the constructor and released by the destructor. </p>
+<hr/><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="aefcff605f9b21d592febe4c1bffa7807"></a><!-- doxytag: member="miosix::Lock::Lock" ref="aefcff605f9b21d592febe4c1bffa7807" args="(T &amp;m)" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classmiosix_1_1_lock.html">miosix::Lock</a>&lt; T &gt;::<a class="el" href="classmiosix_1_1_lock.html">Lock</a> </td>
+          <td>(</td>
+          <td class="paramtype">T &amp;&nbsp;</td>
+          <td class="paramname"> <em>m</em></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline, explicit]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Constructor: locks the mutex </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>m</em>&nbsp;</td><td>mutex to lock </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="ad8e9566c5eead737472fda2fce2a0c88"></a><!-- doxytag: member="miosix::Lock::~Lock" ref="ad8e9566c5eead737472fda2fce2a0c88" args="()" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classmiosix_1_1_lock.html">miosix::Lock</a>&lt; T &gt;::~<a class="el" href="classmiosix_1_1_lock.html">Lock</a> </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Destructor: unlocks the mutex </p>
+
+</div>
+</div>
+<hr/><h2>Member Function Documentation</h2>
+<a class="anchor" id="a28807e63ba20acd9df2b55bccf8af2bf"></a><!-- doxytag: member="miosix::Lock::get" ref="a28807e63ba20acd9df2b55bccf8af2bf" args="()" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">T&amp; <a class="el" href="classmiosix_1_1_lock.html">miosix::Lock</a>&lt; T &gt;::get </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<dl class="return"><dt><b>Returns:</b></dt><dd>the locked mutex </dd></dl>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>sync.h</li>
+</ul>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix_1_1_lower_priority-members.html b/miosix/_doc/doxygen/html/classmiosix_1_1_lower_priority-members.html
new file mode 100644
index 00000000..ecbc7ce1
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix_1_1_lower_priority-members.html
@@ -0,0 +1,40 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="headertitle">
+<h1>miosix::LowerPriority Member List</h1>  </div>
+</div>
+<div class="contents">
+This is the complete list of members for <a class="el" href="classmiosix_1_1_lower_priority.html">miosix::LowerPriority</a>, including all inherited members.<table>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_lower_priority.html#ae223edc017a90abdf70ab8996438cef2">operator()</a>(Thread *a, Thread *b)</td><td><a class="el" href="classmiosix_1_1_lower_priority.html">miosix::LowerPriority</a></td><td><code> [inline]</code></td></tr>
+</table></div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix_1_1_lower_priority.html b/miosix/_doc/doxygen/html/classmiosix_1_1_lower_priority.html
new file mode 100644
index 00000000..e523c230
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix_1_1_lower_priority.html
@@ -0,0 +1,100 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: miosix::LowerPriority Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+  <div class="navpath">
+    <ul>
+      <li><a class="el" href="namespacemiosix.html">miosix</a>      </li>
+      <li><a class="el" href="classmiosix_1_1_lower_priority.html">miosix::LowerPriority</a>      </li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a>  </div>
+  <div class="headertitle">
+<h1>miosix::LowerPriority Class Reference<br/>
+<small>
+[<a class="el" href="group___kernel.html">Kernel</a>]</small>
+</h1>  </div>
+</div>
+<div class="contents">
+<!-- doxytag: class="miosix::LowerPriority" -->
+<p><code>#include &lt;kernel.h&gt;</code></p>
+
+<p><a href="classmiosix_1_1_lower_priority-members.html">List of all members.</a></p>
+<table class="memberdecls">
+<tr><td colspan="2"><h2><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_lower_priority.html#ae223edc017a90abdf70ab8996438cef2">operator()</a> (<a class="el" href="classmiosix_1_1_thread.html">Thread</a> *a, <a class="el" href="classmiosix_1_1_thread.html">Thread</a> *b)</td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<p>Function object to compare the priority of two threads. </p>
+<hr/><h2>Member Function Documentation</h2>
+<a class="anchor" id="ae223edc017a90abdf70ab8996438cef2"></a><!-- doxytag: member="miosix::LowerPriority::operator()" ref="ae223edc017a90abdf70ab8996438cef2" args="(Thread *a, Thread *b)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool miosix::LowerPriority::operator() </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classmiosix_1_1_thread.html">Thread</a> *&nbsp;</td>
+          <td class="paramname"> <em>a</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="classmiosix_1_1_thread.html">Thread</a> *&nbsp;</td>
+          <td class="paramname"> <em>b</em></td><td>&nbsp;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td><td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>a</em>&nbsp;</td><td>first thread to compare </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>b</em>&nbsp;</td><td>second thread to compare </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="return"><dt><b>Returns:</b></dt><dd>true if a-&gt;getPriority() &lt; b-&gt;getPriority()</dd></dl>
+<p>Can be called when the kernel is paused. or with interrupts disabled </p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>kernel.h</li>
+</ul>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix_1_1_memory_profiling-members.html b/miosix/_doc/doxygen/html/classmiosix_1_1_memory_profiling-members.html
new file mode 100644
index 00000000..ab54f8af
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix_1_1_memory_profiling-members.html
@@ -0,0 +1,46 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="headertitle">
+<h1>miosix::MemoryProfiling Member List</h1>  </div>
+</div>
+<div class="contents">
+This is the complete list of members for <a class="el" href="classmiosix_1_1_memory_profiling.html">miosix::MemoryProfiling</a>, including all inherited members.<table>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_memory_profiling.html#af09789fc33f2a1768cad7fad8cf7488b">getAbsoluteFreeHeap</a>()</td><td><a class="el" href="classmiosix_1_1_memory_profiling.html">miosix::MemoryProfiling</a></td><td><code> [static]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_memory_profiling.html#af653e0d570d4cf3c358871c5c56e7f87">getAbsoluteFreeStack</a>()</td><td><a class="el" href="classmiosix_1_1_memory_profiling.html">miosix::MemoryProfiling</a></td><td><code> [static]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_memory_profiling.html#ab49f252e7a4800d3b076102eb6562fed">getCurrentFreeHeap</a>()</td><td><a class="el" href="classmiosix_1_1_memory_profiling.html">miosix::MemoryProfiling</a></td><td><code> [static]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_memory_profiling.html#ab4a3fc09f4d48b7761c52fbe18e683ee">getCurrentFreeStack</a>()</td><td><a class="el" href="classmiosix_1_1_memory_profiling.html">miosix::MemoryProfiling</a></td><td><code> [static]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_memory_profiling.html#acc5945c41f0ccf00c35d256fe8dbf30a">getHeapSize</a>()</td><td><a class="el" href="classmiosix_1_1_memory_profiling.html">miosix::MemoryProfiling</a></td><td><code> [static]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_memory_profiling.html#ab01517dcb40ae74f6cb17a54baf5d00d">getStackSize</a>()</td><td><a class="el" href="classmiosix_1_1_memory_profiling.html">miosix::MemoryProfiling</a></td><td><code> [static]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_memory_profiling.html#ad49f0f486487a4fa165883eb45ad5f4e">print</a>()</td><td><a class="el" href="classmiosix_1_1_memory_profiling.html">miosix::MemoryProfiling</a></td><td><code> [static]</code></td></tr>
+</table></div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix_1_1_memory_profiling.html b/miosix/_doc/doxygen/html/classmiosix_1_1_memory_profiling.html
new file mode 100644
index 00000000..667628d0
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix_1_1_memory_profiling.html
@@ -0,0 +1,204 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: miosix::MemoryProfiling Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+  <div class="navpath">
+    <ul>
+      <li><a class="el" href="namespacemiosix.html">miosix</a>      </li>
+      <li><a class="el" href="classmiosix_1_1_memory_profiling.html">miosix::MemoryProfiling</a>      </li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="summary">
+<a href="#pub-static-methods">Static Public Member Functions</a>  </div>
+  <div class="headertitle">
+<h1>miosix::MemoryProfiling Class Reference<br/>
+<small>
+[<a class="el" href="group___util.html">Utilities</a>]</small>
+</h1>  </div>
+</div>
+<div class="contents">
+<!-- doxytag: class="miosix::MemoryProfiling" -->
+<p><code>#include &lt;util.h&gt;</code></p>
+
+<p><a href="classmiosix_1_1_memory_profiling-members.html">List of all members.</a></p>
+<table class="memberdecls">
+<tr><td colspan="2"><h2><a name="pub-static-methods"></a>
+Static Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_memory_profiling.html#ad49f0f486487a4fa165883eb45ad5f4e">print</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_memory_profiling.html#ab01517dcb40ae74f6cb17a54baf5d00d">getStackSize</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_memory_profiling.html#af653e0d570d4cf3c358871c5c56e7f87">getAbsoluteFreeStack</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_memory_profiling.html#ab4a3fc09f4d48b7761c52fbe18e683ee">getCurrentFreeStack</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_memory_profiling.html#acc5945c41f0ccf00c35d256fe8dbf30a">getHeapSize</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_memory_profiling.html#af09789fc33f2a1768cad7fad8cf7488b">getAbsoluteFreeHeap</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_memory_profiling.html#ab49f252e7a4800d3b076102eb6562fed">getCurrentFreeHeap</a> ()</td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<p>This class allows to gather memory statistics useful when developing embedded code. </p>
+<hr/><h2>Member Function Documentation</h2>
+<a class="anchor" id="af09789fc33f2a1768cad7fad8cf7488b"></a><!-- doxytag: member="miosix::MemoryProfiling::getAbsoluteFreeHeap" ref="af09789fc33f2a1768cad7fad8cf7488b" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">unsigned int miosix::MemoryProfiling::getAbsoluteFreeHeap </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [static]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<dl class="return"><dt><b>Returns:</b></dt><dd>absolute (not current) free heap.<br/>
+ Absolute free heap is the minimum free heap since the program started. <br/>
+The heap is shared among all threads, therefore this function returns the same value regardless which thread is called in. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="af653e0d570d4cf3c358871c5c56e7f87"></a><!-- doxytag: member="miosix::MemoryProfiling::getAbsoluteFreeStack" ref="af653e0d570d4cf3c358871c5c56e7f87" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">unsigned int miosix::MemoryProfiling::getAbsoluteFreeStack </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [static]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<dl class="return"><dt><b>Returns:</b></dt><dd>absolute free stack of current thread.<br/>
+ Absolute free stack is the minimum free stack since the thread was created. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ab49f252e7a4800d3b076102eb6562fed"></a><!-- doxytag: member="miosix::MemoryProfiling::getCurrentFreeHeap" ref="ab49f252e7a4800d3b076102eb6562fed" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">unsigned int miosix::MemoryProfiling::getCurrentFreeHeap </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [static]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<dl class="return"><dt><b>Returns:</b></dt><dd>current free heap.<br/>
+ Current free heap is the free heap at the moment when the this function is called.<br/>
+ The heap is shared among all threads, therefore this function returns the same value regardless which thread is called in. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ab4a3fc09f4d48b7761c52fbe18e683ee"></a><!-- doxytag: member="miosix::MemoryProfiling::getCurrentFreeStack" ref="ab4a3fc09f4d48b7761c52fbe18e683ee" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">unsigned int miosix::MemoryProfiling::getCurrentFreeStack </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [static]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<dl class="return"><dt><b>Returns:</b></dt><dd>current free stack of current thread.<br/>
+ Current free stack is the free stack at the moment when the this function is called. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="acc5945c41f0ccf00c35d256fe8dbf30a"></a><!-- doxytag: member="miosix::MemoryProfiling::getHeapSize" ref="acc5945c41f0ccf00c35d256fe8dbf30a" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">unsigned int miosix::MemoryProfiling::getHeapSize </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [static]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<dl class="return"><dt><b>Returns:</b></dt><dd>heap size which is defined in the linker script.<br/>
+The heap is shared among all threads, therefore this function returns the same value regardless which thread is called in. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ab01517dcb40ae74f6cb17a54baf5d00d"></a><!-- doxytag: member="miosix::MemoryProfiling::getStackSize" ref="ab01517dcb40ae74f6cb17a54baf5d00d" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">unsigned int miosix::MemoryProfiling::getStackSize </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [static]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<dl class="return"><dt><b>Returns:</b></dt><dd>stack size of current thread. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ad49f0f486487a4fa165883eb45ad5f4e"></a><!-- doxytag: member="miosix::MemoryProfiling::print" ref="ad49f0f486487a4fa165883eb45ad5f4e" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void miosix::MemoryProfiling::print </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [static]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Prints a summary of the information that can be gathered from this class. </p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li>util.h</li>
+<li>util.cpp</li>
+</ul>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix_1_1_mutex-members.html b/miosix/_doc/doxygen/html/classmiosix_1_1_mutex-members.html
new file mode 100644
index 00000000..307fb36a
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix_1_1_mutex-members.html
@@ -0,0 +1,46 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="headertitle">
+<h1>miosix::Mutex Member List</h1>  </div>
+</div>
+<div class="contents">
+This is the complete list of members for <a class="el" href="classmiosix_1_1_mutex.html">miosix::Mutex</a>, including all inherited members.<table>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_mutex.html#acdb0fa35e637a14b1504a8f58c8bba2fa84dda8357cdf60e9ce2b81c0f78c36d8">DEFAULT</a> enum value</td><td><a class="el" href="classmiosix_1_1_mutex.html">miosix::Mutex</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_mutex.html#a6ff0ea4734654c2048ef44cec62b5ed6">lock</a>()</td><td><a class="el" href="classmiosix_1_1_mutex.html">miosix::Mutex</a></td><td><code> [inline]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_mutex.html#a63a4d940d2bbb57522dcb23f0fc704a2">Mutex</a>(Options opt=DEFAULT)</td><td><a class="el" href="classmiosix_1_1_mutex.html">miosix::Mutex</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_mutex.html#acdb0fa35e637a14b1504a8f58c8bba2f">Options</a> enum name</td><td><a class="el" href="classmiosix_1_1_mutex.html">miosix::Mutex</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_mutex.html#acdb0fa35e637a14b1504a8f58c8bba2fadadaee3cc9d507680b8652a09c3de4a5">RECURSIVE</a> enum value</td><td><a class="el" href="classmiosix_1_1_mutex.html">miosix::Mutex</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_mutex.html#a3e7e51aa095528a36e49dd5f672ddc74">tryLock</a>()</td><td><a class="el" href="classmiosix_1_1_mutex.html">miosix::Mutex</a></td><td><code> [inline]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_mutex.html#a10974326b33d887fa7ad1f910b70ed50">unlock</a>()</td><td><a class="el" href="classmiosix_1_1_mutex.html">miosix::Mutex</a></td><td><code> [inline]</code></td></tr>
+</table></div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix_1_1_mutex.html b/miosix/_doc/doxygen/html/classmiosix_1_1_mutex.html
new file mode 100644
index 00000000..22afef21
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix_1_1_mutex.html
@@ -0,0 +1,177 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: miosix::Mutex Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+  <div class="navpath">
+    <ul>
+      <li><a class="el" href="namespacemiosix.html">miosix</a>      </li>
+      <li><a class="el" href="classmiosix_1_1_mutex.html">miosix::Mutex</a>      </li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="summary">
+<a href="#pub-types">Public Types</a> &#124;
+<a href="#pub-methods">Public Member Functions</a>  </div>
+  <div class="headertitle">
+<h1>miosix::Mutex Class Reference<br/>
+<small>
+[<a class="el" href="group___sync.html">Syncronization</a>]</small>
+</h1>  </div>
+</div>
+<div class="contents">
+<!-- doxytag: class="miosix::Mutex" -->
+<p><code>#include &lt;sync.h&gt;</code></p>
+
+<p><a href="classmiosix_1_1_mutex-members.html">List of all members.</a></p>
+<table class="memberdecls">
+<tr><td colspan="2"><h2><a name="pub-types"></a>
+Public Types</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_mutex.html#acdb0fa35e637a14b1504a8f58c8bba2f">Options</a> { <a class="el" href="classmiosix_1_1_mutex.html#acdb0fa35e637a14b1504a8f58c8bba2fa84dda8357cdf60e9ce2b81c0f78c36d8">DEFAULT</a>, 
+<a class="el" href="classmiosix_1_1_mutex.html#acdb0fa35e637a14b1504a8f58c8bba2fadadaee3cc9d507680b8652a09c3de4a5">RECURSIVE</a>
+ }</td></tr>
+<tr><td colspan="2"><h2><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_mutex.html#a63a4d940d2bbb57522dcb23f0fc704a2">Mutex</a> (<a class="el" href="classmiosix_1_1_mutex.html#acdb0fa35e637a14b1504a8f58c8bba2f">Options</a> opt=DEFAULT)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_mutex.html#a6ff0ea4734654c2048ef44cec62b5ed6">lock</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_mutex.html#a3e7e51aa095528a36e49dd5f672ddc74">tryLock</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_mutex.html#a10974326b33d887fa7ad1f910b70ed50">unlock</a> ()</td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<p>A mutex class with support for priority inheritance. If a thread tries to enter a critical section which is not free, it will be put to sleep and added to a queue of sleeping threads, ordered by priority. The thread that is into the critical section inherits the highest priority among the threads that are waiting if it is higher than its original priority.<br/>
+ This mutex is meant to be a static or global class. Dynamically creating a mutex with new or on the stack must be done with care, to avoid deleting a locked mutex, and to avoid situations where a thread tries to lock a deleted mutex.<br/>
+ </p>
+<hr/><h2>Member Enumeration Documentation</h2>
+<a class="anchor" id="acdb0fa35e637a14b1504a8f58c8bba2f"></a><!-- doxytag: member="miosix::Mutex::Options" ref="acdb0fa35e637a14b1504a8f58c8bba2f" args="" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">enum <a class="el" href="classmiosix_1_1_mutex.html#acdb0fa35e637a14b1504a8f58c8bba2f">miosix::Mutex::Options</a></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p><a class="el" href="classmiosix_1_1_mutex.html">Mutex</a> options, passed to the constructor to set additional options.<br/>
+ The DEFAULT option indicates the default <a class="el" href="classmiosix_1_1_mutex.html">Mutex</a> type. </p>
+<dl><dt><b>Enumerator: </b></dt><dd><table border="0" cellspacing="2" cellpadding="0">
+<tr><td valign="top"><em><a class="anchor" id="acdb0fa35e637a14b1504a8f58c8bba2fa84dda8357cdf60e9ce2b81c0f78c36d8"></a><!-- doxytag: member="DEFAULT" ref="acdb0fa35e637a14b1504a8f58c8bba2fa84dda8357cdf60e9ce2b81c0f78c36d8" args="" -->DEFAULT</em>&nbsp;</td><td>
+<p>Default mutex. </p>
+</td></tr>
+<tr><td valign="top"><em><a class="anchor" id="acdb0fa35e637a14b1504a8f58c8bba2fadadaee3cc9d507680b8652a09c3de4a5"></a><!-- doxytag: member="RECURSIVE" ref="acdb0fa35e637a14b1504a8f58c8bba2fadadaee3cc9d507680b8652a09c3de4a5" args="" -->RECURSIVE</em>&nbsp;</td><td>
+<p><a class="el" href="classmiosix_1_1_mutex.html">Mutex</a> is recursive. </p>
+</td></tr>
+</table>
+</dd>
+</dl>
+
+</div>
+</div>
+<hr/><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a63a4d940d2bbb57522dcb23f0fc704a2"></a><!-- doxytag: member="miosix::Mutex::Mutex" ref="a63a4d940d2bbb57522dcb23f0fc704a2" args="(Options opt=DEFAULT)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">miosix::Mutex::Mutex </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classmiosix_1_1_mutex.html#acdb0fa35e637a14b1504a8f58c8bba2f">Options</a>&nbsp;</td>
+          <td class="paramname"> <em>opt</em> = <code>DEFAULT</code></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Constructor, initializes the mutex. </p>
+
+</div>
+</div>
+<hr/><h2>Member Function Documentation</h2>
+<a class="anchor" id="a6ff0ea4734654c2048ef44cec62b5ed6"></a><!-- doxytag: member="miosix::Mutex::lock" ref="a6ff0ea4734654c2048ef44cec62b5ed6" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void miosix::Mutex::lock </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Locks the critical section. If the critical section is already locked, the thread will be queued in a wait list. </p>
+
+</div>
+</div>
+<a class="anchor" id="a3e7e51aa095528a36e49dd5f672ddc74"></a><!-- doxytag: member="miosix::Mutex::tryLock" ref="a3e7e51aa095528a36e49dd5f672ddc74" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool miosix::Mutex::tryLock </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Acquires the lock only if the critical section is not already locked by other threads. Attempting to lock again a recursive mutex will fail, and the mutex' lock count will not be incremented. </p>
+<dl class="return"><dt><b>Returns:</b></dt><dd>true if the lock was acquired </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a10974326b33d887fa7ad1f910b70ed50"></a><!-- doxytag: member="miosix::Mutex::unlock" ref="a10974326b33d887fa7ad1f910b70ed50" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void miosix::Mutex::unlock </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Unlocks the critical section. </p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li>sync.h</li>
+<li>sync.cpp</li>
+</ul>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix_1_1_pause_kernel_lock-members.html b/miosix/_doc/doxygen/html/classmiosix_1_1_pause_kernel_lock-members.html
new file mode 100644
index 00000000..069520fb
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix_1_1_pause_kernel_lock-members.html
@@ -0,0 +1,41 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="headertitle">
+<h1>miosix::PauseKernelLock Member List</h1>  </div>
+</div>
+<div class="contents">
+This is the complete list of members for <a class="el" href="classmiosix_1_1_pause_kernel_lock.html">miosix::PauseKernelLock</a>, including all inherited members.<table>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_pause_kernel_lock.html#a6666bc670b9eb36ce7797b9b231e4bf8">PauseKernelLock</a>()</td><td><a class="el" href="classmiosix_1_1_pause_kernel_lock.html">miosix::PauseKernelLock</a></td><td><code> [inline]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_pause_kernel_lock.html#a0980986878a2bc171af039d70a1e9e7a">~PauseKernelLock</a>()</td><td><a class="el" href="classmiosix_1_1_pause_kernel_lock.html">miosix::PauseKernelLock</a></td><td><code> [inline]</code></td></tr>
+</table></div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix_1_1_pause_kernel_lock.html b/miosix/_doc/doxygen/html/classmiosix_1_1_pause_kernel_lock.html
new file mode 100644
index 00000000..684cf8b9
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix_1_1_pause_kernel_lock.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: miosix::PauseKernelLock Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+  <div class="navpath">
+    <ul>
+      <li><a class="el" href="namespacemiosix.html">miosix</a>      </li>
+      <li><a class="el" href="classmiosix_1_1_pause_kernel_lock.html">miosix::PauseKernelLock</a>      </li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a>  </div>
+  <div class="headertitle">
+<h1>miosix::PauseKernelLock Class Reference<br/>
+<small>
+[<a class="el" href="group___kernel.html">Kernel</a>]</small>
+</h1>  </div>
+</div>
+<div class="contents">
+<!-- doxytag: class="miosix::PauseKernelLock" -->
+<p><code>#include &lt;kernel.h&gt;</code></p>
+
+<p><a href="classmiosix_1_1_pause_kernel_lock-members.html">List of all members.</a></p>
+<table class="memberdecls">
+<tr><td colspan="2"><h2><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_pause_kernel_lock.html#a6666bc670b9eb36ce7797b9b231e4bf8">PauseKernelLock</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_pause_kernel_lock.html#a0980986878a2bc171af039d70a1e9e7a">~PauseKernelLock</a> ()</td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<p>This class is a RAII lock for pausing the kernel. This call avoids the error of not restarting the kernel since it is done automatically. </p>
+<hr/><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a6666bc670b9eb36ce7797b9b231e4bf8"></a><!-- doxytag: member="miosix::PauseKernelLock::PauseKernelLock" ref="a6666bc670b9eb36ce7797b9b231e4bf8" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">miosix::PauseKernelLock::PauseKernelLock </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Constructor, pauses the kernel. </p>
+
+</div>
+</div>
+<a class="anchor" id="a0980986878a2bc171af039d70a1e9e7a"></a><!-- doxytag: member="miosix::PauseKernelLock::~PauseKernelLock" ref="a0980986878a2bc171af039d70a1e9e7a" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">miosix::PauseKernelLock::~PauseKernelLock </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Destructor, restarts the kernel </p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>kernel.h</li>
+</ul>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix_1_1_priority_scheduler_priority-members.html b/miosix/_doc/doxygen/html/classmiosix_1_1_priority_scheduler_priority-members.html
new file mode 100644
index 00000000..32d9d30c
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix_1_1_priority_scheduler_priority-members.html
@@ -0,0 +1,43 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="headertitle">
+<h1>miosix::PrioritySchedulerPriority Member List</h1>  </div>
+</div>
+<div class="contents">
+This is the complete list of members for <a class="el" href="classmiosix_1_1_priority_scheduler_priority.html">miosix::PrioritySchedulerPriority</a>, including all inherited members.<table>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_priority_scheduler_priority.html#aaed4edb129dd8ceadc7b36dc63e74cc5">get</a>() const </td><td><a class="el" href="classmiosix_1_1_priority_scheduler_priority.html">miosix::PrioritySchedulerPriority</a></td><td><code> [inline]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_priority_scheduler_priority.html#a206ab3dfa014606172a906aef6c99545">PrioritySchedulerPriority</a>(short int priority)</td><td><a class="el" href="classmiosix_1_1_priority_scheduler_priority.html">miosix::PrioritySchedulerPriority</a></td><td><code> [inline]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_priority_scheduler_priority.html#a0f2dc299a1f8dbfcb3e44ef3b22d5d49">PrioritySchedulerPriority</a>()</td><td><a class="el" href="classmiosix_1_1_priority_scheduler_priority.html">miosix::PrioritySchedulerPriority</a></td><td><code> [inline]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_priority_scheduler_priority.html#a17300acc93554e4a115a40f99a84f392">validate</a>() const </td><td><a class="el" href="classmiosix_1_1_priority_scheduler_priority.html">miosix::PrioritySchedulerPriority</a></td><td><code> [inline]</code></td></tr>
+</table></div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix_1_1_priority_scheduler_priority.html b/miosix/_doc/doxygen/html/classmiosix_1_1_priority_scheduler_priority.html
new file mode 100644
index 00000000..30c6dede
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix_1_1_priority_scheduler_priority.html
@@ -0,0 +1,144 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: miosix::PrioritySchedulerPriority Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+  <div class="navpath">
+    <ul>
+      <li><a class="el" href="namespacemiosix.html">miosix</a>      </li>
+      <li><a class="el" href="classmiosix_1_1_priority_scheduler_priority.html">miosix::PrioritySchedulerPriority</a>      </li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a>  </div>
+  <div class="headertitle">
+<h1>miosix::PrioritySchedulerPriority Class Reference</h1>  </div>
+</div>
+<div class="contents">
+<!-- doxytag: class="miosix::PrioritySchedulerPriority" -->
+<p><code>#include &lt;priority_scheduler_types.h&gt;</code></p>
+
+<p><a href="classmiosix_1_1_priority_scheduler_priority-members.html">List of all members.</a></p>
+<table class="memberdecls">
+<tr><td colspan="2"><h2><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_priority_scheduler_priority.html#a206ab3dfa014606172a906aef6c99545">PrioritySchedulerPriority</a> (short int priority)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_priority_scheduler_priority.html#a0f2dc299a1f8dbfcb3e44ef3b22d5d49">PrioritySchedulerPriority</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">short int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_priority_scheduler_priority.html#aaed4edb129dd8ceadc7b36dc63e74cc5">get</a> () const </td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_priority_scheduler_priority.html#a17300acc93554e4a115a40f99a84f392">validate</a> () const </td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<p>This class models the concept of priority for the priority scheduler. In this scheduler the priority is simply a short int with values ranging from 0 to PRIORITY_MAX-1, higher values mean higher priority, and the special value -1 reserved for the idle thread. </p>
+<hr/><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a206ab3dfa014606172a906aef6c99545"></a><!-- doxytag: member="miosix::PrioritySchedulerPriority::PrioritySchedulerPriority" ref="a206ab3dfa014606172a906aef6c99545" args="(short int priority)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">miosix::PrioritySchedulerPriority::PrioritySchedulerPriority </td>
+          <td>(</td>
+          <td class="paramtype">short int&nbsp;</td>
+          <td class="paramname"> <em>priority</em></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Constructor. Not explicit for backward compatibility. </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>priority</em>&nbsp;</td><td>the desired priority value. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="a0f2dc299a1f8dbfcb3e44ef3b22d5d49"></a><!-- doxytag: member="miosix::PrioritySchedulerPriority::PrioritySchedulerPriority" ref="a0f2dc299a1f8dbfcb3e44ef3b22d5d49" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">miosix::PrioritySchedulerPriority::PrioritySchedulerPriority </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Default constructor. </p>
+
+</div>
+</div>
+<hr/><h2>Member Function Documentation</h2>
+<a class="anchor" id="aaed4edb129dd8ceadc7b36dc63e74cc5"></a><!-- doxytag: member="miosix::PrioritySchedulerPriority::get" ref="aaed4edb129dd8ceadc7b36dc63e74cc5" args="() const " -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">short int miosix::PrioritySchedulerPriority::get </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td> const<code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<dl class="return"><dt><b>Returns:</b></dt><dd>the priority value </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a17300acc93554e4a115a40f99a84f392"></a><!-- doxytag: member="miosix::PrioritySchedulerPriority::validate" ref="a17300acc93554e4a115a40f99a84f392" args="() const " -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool miosix::PrioritySchedulerPriority::validate </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td> const<code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<dl class="return"><dt><b>Returns:</b></dt><dd>true if this objects represents a valid priority. Note that the value -1 is considered not valid, because it is reserved for the idle thread. </dd></dl>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>priority_scheduler_types.h</li>
+</ul>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix_1_1_queue-members.html b/miosix/_doc/doxygen/html/classmiosix_1_1_queue-members.html
new file mode 100644
index 00000000..7de5da4a
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix_1_1_queue-members.html
@@ -0,0 +1,52 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="headertitle">
+<h1>miosix::Queue&lt; T, len &gt; Member List</h1>  </div>
+</div>
+<div class="contents">
+This is the complete list of members for <a class="el" href="classmiosix_1_1_queue.html">miosix::Queue&lt; T, len &gt;</a>, including all inherited members.<table>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_queue.html#ade3ad87c4c3fdac0a2bdd755ff3c8971">get</a>(T &amp;elem)</td><td><a class="el" href="classmiosix_1_1_queue.html">miosix::Queue&lt; T, len &gt;</a></td><td><code> [inline]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_queue.html#a545ed38e44e319303e0d657de8195cec">IRQget</a>(T &amp;elem)</td><td><a class="el" href="classmiosix_1_1_queue.html">miosix::Queue&lt; T, len &gt;</a></td><td><code> [inline]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_queue.html#a2875b9df92f6a5db148b3e4f7ad989bf">IRQget</a>(T &amp;elem, bool &amp;hppw)</td><td><a class="el" href="classmiosix_1_1_queue.html">miosix::Queue&lt; T, len &gt;</a></td><td><code> [inline]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_queue.html#aebf1e9ff8643933b679b5d6e2ecfe343">IRQput</a>(T elem)</td><td><a class="el" href="classmiosix_1_1_queue.html">miosix::Queue&lt; T, len &gt;</a></td><td><code> [inline]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_queue.html#a8a0fd6d06459b6a2c72ed07afaad76fd">IRQput</a>(T elem, bool &amp;hppw)</td><td><a class="el" href="classmiosix_1_1_queue.html">miosix::Queue&lt; T, len &gt;</a></td><td><code> [inline]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_queue.html#a8d7aea4c62e78d4221dbaab13538e695">IRQreset</a>()</td><td><a class="el" href="classmiosix_1_1_queue.html">miosix::Queue&lt; T, len &gt;</a></td><td><code> [inline]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_queue.html#a8d18f593639d0d7eef52b6267f83ce34">isEmpty</a>() const </td><td><a class="el" href="classmiosix_1_1_queue.html">miosix::Queue&lt; T, len &gt;</a></td><td><code> [inline]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_queue.html#affa922a8101a173168daca418eed8c4b">isFull</a>() const </td><td><a class="el" href="classmiosix_1_1_queue.html">miosix::Queue&lt; T, len &gt;</a></td><td><code> [inline]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_queue.html#a40eac0f03500a45a6ec3a5af3e0909be">put</a>(T elem)</td><td><a class="el" href="classmiosix_1_1_queue.html">miosix::Queue&lt; T, len &gt;</a></td><td><code> [inline]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_queue.html#a45ac6bfe191bc6d52089215b52863732">Queue</a>()</td><td><a class="el" href="classmiosix_1_1_queue.html">miosix::Queue&lt; T, len &gt;</a></td><td><code> [inline]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_queue.html#a36d52ae7f77126add31096faa97e45b0">reset</a>()</td><td><a class="el" href="classmiosix_1_1_queue.html">miosix::Queue&lt; T, len &gt;</a></td><td><code> [inline]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_queue.html#af77abf62e5999b15fa5fcb3101f4801d">waitUntilNotEmpty</a>()</td><td><a class="el" href="classmiosix_1_1_queue.html">miosix::Queue&lt; T, len &gt;</a></td><td><code> [inline]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_queue.html#af3809d4c8d0ae31774ca5e985b1810e5">waitUntilNotFull</a>()</td><td><a class="el" href="classmiosix_1_1_queue.html">miosix::Queue&lt; T, len &gt;</a></td><td><code> [inline]</code></td></tr>
+</table></div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix_1_1_queue.html b/miosix/_doc/doxygen/html/classmiosix_1_1_queue.html
new file mode 100644
index 00000000..59885b6d
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix_1_1_queue.html
@@ -0,0 +1,420 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: miosix::Queue&lt; T, len &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+  <div class="navpath">
+    <ul>
+      <li><a class="el" href="namespacemiosix.html">miosix</a>      </li>
+      <li><a class="el" href="classmiosix_1_1_queue.html">miosix::Queue&lt; T, len &gt;</a>      </li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a>  </div>
+  <div class="headertitle">
+<h1>miosix::Queue&lt; T, len &gt; Class Template Reference<br/>
+<small>
+[<a class="el" href="group___sync.html">Syncronization</a>]</small>
+</h1>  </div>
+</div>
+<div class="contents">
+<!-- doxytag: class="miosix::Queue" -->
+<p><code>#include &lt;sync.h&gt;</code></p>
+
+<p><a href="classmiosix_1_1_queue-members.html">List of all members.</a></p>
+<table class="memberdecls">
+<tr><td colspan="2"><h2><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_queue.html#a45ac6bfe191bc6d52089215b52863732">Queue</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_queue.html#a8d18f593639d0d7eef52b6267f83ce34">isEmpty</a> () const </td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_queue.html#affa922a8101a173168daca418eed8c4b">isFull</a> () const </td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_queue.html#af77abf62e5999b15fa5fcb3101f4801d">waitUntilNotEmpty</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_queue.html#af3809d4c8d0ae31774ca5e985b1810e5">waitUntilNotFull</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_queue.html#ade3ad87c4c3fdac0a2bdd755ff3c8971">get</a> (T &amp;elem)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_queue.html#a40eac0f03500a45a6ec3a5af3e0909be">put</a> (T elem)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_queue.html#a545ed38e44e319303e0d657de8195cec">IRQget</a> (T &amp;elem)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_queue.html#a2875b9df92f6a5db148b3e4f7ad989bf">IRQget</a> (T &amp;elem, bool &amp;hppw)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_queue.html#aebf1e9ff8643933b679b5d6e2ecfe343">IRQput</a> (T elem)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_queue.html#a8a0fd6d06459b6a2c72ed07afaad76fd">IRQput</a> (T elem, bool &amp;hppw)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_queue.html#a36d52ae7f77126add31096faa97e45b0">reset</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_queue.html#a8d7aea4c62e78d4221dbaab13538e695">IRQreset</a> ()</td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<h3>template&lt;typename T, unsigned int len&gt;<br/>
+ class miosix::Queue&lt; T, len &gt;</h3>
+
+<p>A queue, used to transfer data between TWO threads, or between ONE thread and an IRQ.<br/>
+ If you need to tranfer data between more than two threads, you need to use mutexes to ensure that only one thread at a time calls get, and only one thread at a time calls put.<br/>
+ This queue is meant to be a static or global class. Dynamically creating a queue with new or on the stack must be done with care, to avoid deleting a queue with a waiting thread, and to avoid situations where a thread tries to access a deleted queue. </p>
+<dl><dt><b>Template Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>T</em>&nbsp;</td><td>the type of elements in the queue </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>len</em>&nbsp;</td><td>the length of the <a class="el" href="classmiosix_1_1_queue.html">Queue</a> </td></tr>
+  </table>
+  </dd>
+</dl>
+<hr/><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a45ac6bfe191bc6d52089215b52863732"></a><!-- doxytag: member="miosix::Queue::Queue" ref="a45ac6bfe191bc6d52089215b52863732" args="()" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , unsigned int len&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classmiosix_1_1_queue.html">miosix::Queue</a>&lt; T, len &gt;::<a class="el" href="classmiosix_1_1_queue.html">Queue</a> </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Constructor, create a new empty queue. </p>
+
+</div>
+</div>
+<hr/><h2>Member Function Documentation</h2>
+<a class="anchor" id="ade3ad87c4c3fdac0a2bdd755ff3c8971"></a><!-- doxytag: member="miosix::Queue::get" ref="ade3ad87c4c3fdac0a2bdd755ff3c8971" args="(T &amp;elem)" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , unsigned int len&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">void <a class="el" href="classmiosix_1_1_queue.html">miosix::Queue</a>&lt; T, len &gt;::get </td>
+          <td>(</td>
+          <td class="paramtype">T &amp;&nbsp;</td>
+          <td class="paramname"> <em>elem</em></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Get an element from the queue. If the queue is empty, then sleep until an element becomes available. </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>elem</em>&nbsp;</td><td>an element from the queue </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="a2875b9df92f6a5db148b3e4f7ad989bf"></a><!-- doxytag: member="miosix::Queue::IRQget" ref="a2875b9df92f6a5db148b3e4f7ad989bf" args="(T &amp;elem, bool &amp;hppw)" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , unsigned int len&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">bool <a class="el" href="classmiosix_1_1_queue.html">miosix::Queue</a>&lt; T, len &gt;::IRQget </td>
+          <td>(</td>
+          <td class="paramtype">T &amp;&nbsp;</td>
+          <td class="paramname"> <em>elem</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">bool &amp;&nbsp;</td>
+          <td class="paramname"> <em>hppw</em></td><td>&nbsp;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td><td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Get an element from the queue, only if the queue is not empty.<br/>
+ Can ONLY be used inside an IRQ, or when interrupts are disabled. </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>elem</em>&nbsp;</td><td>an element from the queue. The element is valid only if the return value is true </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>hppw</em>&nbsp;</td><td>is not modified if no thread is woken or if the woken thread has a lower or equal priority than the currently running thread, else is set to true </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="return"><dt><b>Returns:</b></dt><dd>true if the queue was not empty </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a545ed38e44e319303e0d657de8195cec"></a><!-- doxytag: member="miosix::Queue::IRQget" ref="a545ed38e44e319303e0d657de8195cec" args="(T &amp;elem)" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , unsigned int len&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">bool <a class="el" href="classmiosix_1_1_queue.html">miosix::Queue</a>&lt; T, len &gt;::IRQget </td>
+          <td>(</td>
+          <td class="paramtype">T &amp;&nbsp;</td>
+          <td class="paramname"> <em>elem</em></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Get an element from the queue, only if the queue is not empty.<br/>
+ Can ONLY be used inside an IRQ, or when interrupts are disabled. </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>elem</em>&nbsp;</td><td>an element from the queue. The element is valid only if the return value is true </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="return"><dt><b>Returns:</b></dt><dd>true if the queue was not empty </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="aebf1e9ff8643933b679b5d6e2ecfe343"></a><!-- doxytag: member="miosix::Queue::IRQput" ref="aebf1e9ff8643933b679b5d6e2ecfe343" args="(T elem)" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , unsigned int len&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">bool <a class="el" href="classmiosix_1_1_queue.html">miosix::Queue</a>&lt; T, len &gt;::IRQput </td>
+          <td>(</td>
+          <td class="paramtype">T&nbsp;</td>
+          <td class="paramname"> <em>elem</em></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Put an element to the queue, only if th queue is not full.<br/>
+ Can ONLY be used inside an IRQ, or when interrupts are disabled. </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>elem</em>&nbsp;</td><td>element to add. The element has been added only if the return value is true </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="return"><dt><b>Returns:</b></dt><dd>true if the queue was not full. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a8a0fd6d06459b6a2c72ed07afaad76fd"></a><!-- doxytag: member="miosix::Queue::IRQput" ref="a8a0fd6d06459b6a2c72ed07afaad76fd" args="(T elem, bool &amp;hppw)" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , unsigned int len&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">bool <a class="el" href="classmiosix_1_1_queue.html">miosix::Queue</a>&lt; T, len &gt;::IRQput </td>
+          <td>(</td>
+          <td class="paramtype">T&nbsp;</td>
+          <td class="paramname"> <em>elem</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">bool &amp;&nbsp;</td>
+          <td class="paramname"> <em>hppw</em></td><td>&nbsp;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td><td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Put an element to the queue, only if th queue is not full.<br/>
+ Can ONLY be used inside an IRQ, or when interrupts are disabled. </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>elem</em>&nbsp;</td><td>element to add. The element has been added only if the return value is true </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>hppw</em>&nbsp;</td><td>is not modified if no thread is woken or if the woken thread has a lower or equal priority than the currently running thread, else is set to true </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="return"><dt><b>Returns:</b></dt><dd>true if the queue was not full. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a8d7aea4c62e78d4221dbaab13538e695"></a><!-- doxytag: member="miosix::Queue::IRQreset" ref="a8d7aea4c62e78d4221dbaab13538e695" args="()" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , unsigned int len&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">void <a class="el" href="classmiosix_1_1_queue.html">miosix::Queue</a>&lt; T, len &gt;::IRQreset </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Same as <a class="el" href="classmiosix_1_1_queue.html#a36d52ae7f77126add31096faa97e45b0">reset()</a>, but to be used only inside IRQs or when interrupts are disabled. </p>
+
+</div>
+</div>
+<a class="anchor" id="a8d18f593639d0d7eef52b6267f83ce34"></a><!-- doxytag: member="miosix::Queue::isEmpty" ref="a8d18f593639d0d7eef52b6267f83ce34" args="() const " -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , unsigned int len&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">bool <a class="el" href="classmiosix_1_1_queue.html">miosix::Queue</a>&lt; T, len &gt;::isEmpty </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td> const<code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<dl class="return"><dt><b>Returns:</b></dt><dd>true if the queue is empty </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="affa922a8101a173168daca418eed8c4b"></a><!-- doxytag: member="miosix::Queue::isFull" ref="affa922a8101a173168daca418eed8c4b" args="() const " -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , unsigned int len&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">bool <a class="el" href="classmiosix_1_1_queue.html">miosix::Queue</a>&lt; T, len &gt;::isFull </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td> const<code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<dl class="return"><dt><b>Returns:</b></dt><dd>true if the queue is full </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a40eac0f03500a45a6ec3a5af3e0909be"></a><!-- doxytag: member="miosix::Queue::put" ref="a40eac0f03500a45a6ec3a5af3e0909be" args="(T elem)" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , unsigned int len&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">void <a class="el" href="classmiosix_1_1_queue.html">miosix::Queue</a>&lt; T, len &gt;::put </td>
+          <td>(</td>
+          <td class="paramtype">T&nbsp;</td>
+          <td class="paramname"> <em>elem</em></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Put an element to the queue. If the queue is full, then sleep until a place becomes available. </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>elem</em>&nbsp;</td><td>element to add to the queue </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="a36d52ae7f77126add31096faa97e45b0"></a><!-- doxytag: member="miosix::Queue::reset" ref="a36d52ae7f77126add31096faa97e45b0" args="()" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , unsigned int len&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">void <a class="el" href="classmiosix_1_1_queue.html">miosix::Queue</a>&lt; T, len &gt;::reset </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Clear all items in the queue.<br/>
+ Cannot be used inside an IRQ </p>
+
+</div>
+</div>
+<a class="anchor" id="af77abf62e5999b15fa5fcb3101f4801d"></a><!-- doxytag: member="miosix::Queue::waitUntilNotEmpty" ref="af77abf62e5999b15fa5fcb3101f4801d" args="()" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , unsigned int len&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">void <a class="el" href="classmiosix_1_1_queue.html">miosix::Queue</a>&lt; T, len &gt;::waitUntilNotEmpty </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>If a queue is empty, waits until the queue is not empty. </p>
+
+</div>
+</div>
+<a class="anchor" id="af3809d4c8d0ae31774ca5e985b1810e5"></a><!-- doxytag: member="miosix::Queue::waitUntilNotFull" ref="af3809d4c8d0ae31774ca5e985b1810e5" args="()" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , unsigned int len&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">void <a class="el" href="classmiosix_1_1_queue.html">miosix::Queue</a>&lt; T, len &gt;::waitUntilNotFull </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>If a queue is full, waits until the queue is not full </p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>sync.h</li>
+</ul>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix_1_1_restart_kernel_lock-members.html b/miosix/_doc/doxygen/html/classmiosix_1_1_restart_kernel_lock-members.html
new file mode 100644
index 00000000..969feefc
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix_1_1_restart_kernel_lock-members.html
@@ -0,0 +1,41 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="headertitle">
+<h1>miosix::RestartKernelLock Member List</h1>  </div>
+</div>
+<div class="contents">
+This is the complete list of members for <a class="el" href="classmiosix_1_1_restart_kernel_lock.html">miosix::RestartKernelLock</a>, including all inherited members.<table>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_restart_kernel_lock.html#a56fdd23f84789f624cf85cd3ff54d045">RestartKernelLock</a>(PauseKernelLock &amp;l)</td><td><a class="el" href="classmiosix_1_1_restart_kernel_lock.html">miosix::RestartKernelLock</a></td><td><code> [inline]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_restart_kernel_lock.html#ac026033adfae754118e6025ad7ce01bb">~RestartKernelLock</a>()</td><td><a class="el" href="classmiosix_1_1_restart_kernel_lock.html">miosix::RestartKernelLock</a></td><td><code> [inline]</code></td></tr>
+</table></div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix_1_1_restart_kernel_lock.html b/miosix/_doc/doxygen/html/classmiosix_1_1_restart_kernel_lock.html
new file mode 100644
index 00000000..9400a74c
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix_1_1_restart_kernel_lock.html
@@ -0,0 +1,124 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: miosix::RestartKernelLock Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+  <div class="navpath">
+    <ul>
+      <li><a class="el" href="namespacemiosix.html">miosix</a>      </li>
+      <li><a class="el" href="classmiosix_1_1_restart_kernel_lock.html">miosix::RestartKernelLock</a>      </li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a>  </div>
+  <div class="headertitle">
+<h1>miosix::RestartKernelLock Class Reference<br/>
+<small>
+[<a class="el" href="group___kernel.html">Kernel</a>]</small>
+</h1>  </div>
+</div>
+<div class="contents">
+<!-- doxytag: class="miosix::RestartKernelLock" -->
+<p><code>#include &lt;kernel.h&gt;</code></p>
+
+<p><a href="classmiosix_1_1_restart_kernel_lock-members.html">List of all members.</a></p>
+<table class="memberdecls">
+<tr><td colspan="2"><h2><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_restart_kernel_lock.html#a56fdd23f84789f624cf85cd3ff54d045">RestartKernelLock</a> (<a class="el" href="classmiosix_1_1_pause_kernel_lock.html">PauseKernelLock</a> &amp;l)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_restart_kernel_lock.html#ac026033adfae754118e6025ad7ce01bb">~RestartKernelLock</a> ()</td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<p>This class allows to temporarily restart kernel in a scope where it is paused with an <a class="el" href="classmiosix_1_1_interrupt_disable_lock.html">InterruptDisableLock</a>.<br/>
+ Example: </p>
+<div class="fragment"><pre class="fragment"> <span class="comment">//Kernel started</span>
+ {
+     PauseKernelLock dLock;
+
+     <span class="comment">//Now kernel paused</span>
+
+     {
+         <a class="code" href="classmiosix_1_1_restart_kernel_lock.html#a56fdd23f84789f624cf85cd3ff54d045">RestartKernelLock</a> eLock(dLock);
+
+         <span class="comment">//Now kernel back started</span>
+     }
+
+     <span class="comment">//Now kernel again paused</span>
+ }
+ <span class="comment">//Finally kernel started</span>
+</pre></div> <hr/><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a56fdd23f84789f624cf85cd3ff54d045"></a><!-- doxytag: member="miosix::RestartKernelLock::RestartKernelLock" ref="a56fdd23f84789f624cf85cd3ff54d045" args="(PauseKernelLock &amp;l)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">miosix::RestartKernelLock::RestartKernelLock </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classmiosix_1_1_pause_kernel_lock.html">PauseKernelLock</a> &amp;&nbsp;</td>
+          <td class="paramname"> <em>l</em></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Constructor, restarts kernel. </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>l</em>&nbsp;</td><td>the <a class="el" href="classmiosix_1_1_pause_kernel_lock.html">PauseKernelLock</a> that disabled interrupts. Note that this parameter is not used internally. It is only required to prevent erroneous use of this class by making an instance of it without an active <a class="el" href="classmiosix_1_1_pause_kernel_lock.html">PauseKernelLock</a> </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="ac026033adfae754118e6025ad7ce01bb"></a><!-- doxytag: member="miosix::RestartKernelLock::~RestartKernelLock" ref="ac026033adfae754118e6025ad7ce01bb" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">miosix::RestartKernelLock::~RestartKernelLock </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Destructor. Disable back interrupts. </p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>kernel.h</li>
+</ul>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix_1_1_software_i2_c-members.html b/miosix/_doc/doxygen/html/classmiosix_1_1_software_i2_c-members.html
new file mode 100644
index 00000000..89d0463c
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix_1_1_software_i2_c-members.html
@@ -0,0 +1,45 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="headertitle">
+<h1>miosix::SoftwareI2C&lt; SDA, SCL &gt; Member List</h1>  </div>
+</div>
+<div class="contents">
+This is the complete list of members for <a class="el" href="classmiosix_1_1_software_i2_c.html">miosix::SoftwareI2C&lt; SDA, SCL &gt;</a>, including all inherited members.<table>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_software_i2_c.html#affca2c005e549cf0d244064d69808313">init</a>()</td><td><a class="el" href="classmiosix_1_1_software_i2_c.html">miosix::SoftwareI2C&lt; SDA, SCL &gt;</a></td><td><code> [static]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_software_i2_c.html#ad16eb98c9e1089e21571d1f7c552a151">recvWithAck</a>()</td><td><a class="el" href="classmiosix_1_1_software_i2_c.html">miosix::SoftwareI2C&lt; SDA, SCL &gt;</a></td><td><code> [static]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_software_i2_c.html#a48d8aeebedba01e3dc11866710b873fb">recvWithNack</a>()</td><td><a class="el" href="classmiosix_1_1_software_i2_c.html">miosix::SoftwareI2C&lt; SDA, SCL &gt;</a></td><td><code> [static]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_software_i2_c.html#a6e0535020ec3adf027a4ac77481e6e01">send</a>(unsigned char data)</td><td><a class="el" href="classmiosix_1_1_software_i2_c.html">miosix::SoftwareI2C&lt; SDA, SCL &gt;</a></td><td><code> [static]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_software_i2_c.html#abcbeb09130637bce45c8827e8098a5ff">sendStart</a>()</td><td><a class="el" href="classmiosix_1_1_software_i2_c.html">miosix::SoftwareI2C&lt; SDA, SCL &gt;</a></td><td><code> [static]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_software_i2_c.html#a66a312f667a52046e45035588caff0b4">sendStop</a>()</td><td><a class="el" href="classmiosix_1_1_software_i2_c.html">miosix::SoftwareI2C&lt; SDA, SCL &gt;</a></td><td><code> [static]</code></td></tr>
+</table></div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix_1_1_software_i2_c.html b/miosix/_doc/doxygen/html/classmiosix_1_1_software_i2_c.html
new file mode 100644
index 00000000..7c0312b5
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix_1_1_software_i2_c.html
@@ -0,0 +1,206 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: miosix::SoftwareI2C&lt; SDA, SCL &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+  <div class="navpath">
+    <ul>
+      <li><a class="el" href="namespacemiosix.html">miosix</a>      </li>
+      <li><a class="el" href="classmiosix_1_1_software_i2_c.html">miosix::SoftwareI2C&lt; SDA, SCL &gt;</a>      </li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="summary">
+<a href="#pub-static-methods">Static Public Member Functions</a>  </div>
+  <div class="headertitle">
+<h1>miosix::SoftwareI2C&lt; SDA, SCL &gt; Class Template Reference</h1>  </div>
+</div>
+<div class="contents">
+<!-- doxytag: class="miosix::SoftwareI2C" -->
+<p><code>#include &lt;software_i2c.h&gt;</code></p>
+
+<p><a href="classmiosix_1_1_software_i2_c-members.html">List of all members.</a></p>
+<table class="memberdecls">
+<tr><td colspan="2"><h2><a name="pub-static-methods"></a>
+Static Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_software_i2_c.html#affca2c005e549cf0d244064d69808313">init</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_software_i2_c.html#abcbeb09130637bce45c8827e8098a5ff">sendStart</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_software_i2_c.html#a66a312f667a52046e45035588caff0b4">sendStop</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_software_i2_c.html#a6e0535020ec3adf027a4ac77481e6e01">send</a> (unsigned char data)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static unsigned char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_software_i2_c.html#ad16eb98c9e1089e21571d1f7c552a151">recvWithAck</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static unsigned char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_software_i2_c.html#a48d8aeebedba01e3dc11866710b873fb">recvWithNack</a> ()</td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<h3>template&lt;typename SDA, typename SCL&gt;<br/>
+ class miosix::SoftwareI2C&lt; SDA, SCL &gt;</h3>
+
+<p>Software I2C class. </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>SDA</em>&nbsp;</td><td>SDA gpio pin. Pass a Gpio&lt;P,N&gt; class </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>SCL</em>&nbsp;</td><td>SCL gpio pin. Pass a Gpio&lt;P,N&gt; class </td></tr>
+  </table>
+  </dd>
+</dl>
+<hr/><h2>Member Function Documentation</h2>
+<a class="anchor" id="affca2c005e549cf0d244064d69808313"></a><!-- doxytag: member="miosix::SoftwareI2C::init" ref="affca2c005e549cf0d244064d69808313" args="()" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename SDA , typename SCL &gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">void <a class="el" href="classmiosix_1_1_software_i2_c.html">miosix::SoftwareI2C</a>&lt; SDA, SCL &gt;::init </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [static]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Initializes the SPI software peripheral </p>
+
+</div>
+</div>
+<a class="anchor" id="ad16eb98c9e1089e21571d1f7c552a151"></a><!-- doxytag: member="miosix::SoftwareI2C::recvWithAck" ref="ad16eb98c9e1089e21571d1f7c552a151" args="()" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename SDA , typename SCL &gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">unsigned char <a class="el" href="classmiosix_1_1_software_i2_c.html">miosix::SoftwareI2C</a>&lt; SDA, SCL &gt;::recvWithAck </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [static]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Receive a byte from a device. Always acknowledges back. </p>
+<dl class="return"><dt><b>Returns:</b></dt><dd>the received byte </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a48d8aeebedba01e3dc11866710b873fb"></a><!-- doxytag: member="miosix::SoftwareI2C::recvWithNack" ref="a48d8aeebedba01e3dc11866710b873fb" args="()" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename SDA , typename SCL &gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">unsigned char <a class="el" href="classmiosix_1_1_software_i2_c.html">miosix::SoftwareI2C</a>&lt; SDA, SCL &gt;::recvWithNack </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [static]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Receive a byte from a device. Never acknowledges back. </p>
+<dl class="return"><dt><b>Returns:</b></dt><dd>the received byte </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a6e0535020ec3adf027a4ac77481e6e01"></a><!-- doxytag: member="miosix::SoftwareI2C::send" ref="a6e0535020ec3adf027a4ac77481e6e01" args="(unsigned char data)" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename SDA , typename SCL &gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">bool <a class="el" href="classmiosix_1_1_software_i2_c.html">miosix::SoftwareI2C</a>&lt; SDA, SCL &gt;::send </td>
+          <td>(</td>
+          <td class="paramtype">unsigned char&nbsp;</td>
+          <td class="paramname"> <em>data</em></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [static]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Send a byte to a device. </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>data</em>&nbsp;</td><td>byte to send </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="return"><dt><b>Returns:</b></dt><dd>true if the device acknowledged the byte </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="abcbeb09130637bce45c8827e8098a5ff"></a><!-- doxytag: member="miosix::SoftwareI2C::sendStart" ref="abcbeb09130637bce45c8827e8098a5ff" args="()" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename SDA , typename SCL &gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">void <a class="el" href="classmiosix_1_1_software_i2_c.html">miosix::SoftwareI2C</a>&lt; SDA, SCL &gt;::sendStart </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [static]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Send a start condition </p>
+
+</div>
+</div>
+<a class="anchor" id="a66a312f667a52046e45035588caff0b4"></a><!-- doxytag: member="miosix::SoftwareI2C::sendStop" ref="a66a312f667a52046e45035588caff0b4" args="()" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename SDA , typename SCL &gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">void <a class="el" href="classmiosix_1_1_software_i2_c.html">miosix::SoftwareI2C</a>&lt; SDA, SCL &gt;::sendStop </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [static]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Send a stop condition </p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>software_i2c.h</li>
+</ul>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix_1_1_software_s_p_i-members.html b/miosix/_doc/doxygen/html/classmiosix_1_1_software_s_p_i-members.html
new file mode 100644
index 00000000..fe143ded
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix_1_1_software_s_p_i-members.html
@@ -0,0 +1,45 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="headertitle">
+<h1>miosix::SoftwareSPI&lt; SI, SO, SCK, CE, numNops &gt; Member List</h1>  </div>
+</div>
+<div class="contents">
+This is the complete list of members for <a class="el" href="classmiosix_1_1_software_s_p_i.html">miosix::SoftwareSPI&lt; SI, SO, SCK, CE, numNops &gt;</a>, including all inherited members.<table>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_software_s_p_i.html#a7e2ba605d5a06df4e27c346f23b7559c">ceHigh</a>()</td><td><a class="el" href="classmiosix_1_1_software_s_p_i.html">miosix::SoftwareSPI&lt; SI, SO, SCK, CE, numNops &gt;</a></td><td><code> [inline, static]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_software_s_p_i.html#a357a64d9abe58149039a90813a0e710c">ceLow</a>()</td><td><a class="el" href="classmiosix_1_1_software_s_p_i.html">miosix::SoftwareSPI&lt; SI, SO, SCK, CE, numNops &gt;</a></td><td><code> [inline, static]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_software_s_p_i.html#a0d8dc57b9c5bbca82f830a286e1e43e3">init</a>()</td><td><a class="el" href="classmiosix_1_1_software_s_p_i.html">miosix::SoftwareSPI&lt; SI, SO, SCK, CE, numNops &gt;</a></td><td><code> [inline, static]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_software_s_p_i.html#a28c74624fdf2699bbd9a16a0b4041df4">sendRecvChar</a>(unsigned char data)</td><td><a class="el" href="classmiosix_1_1_software_s_p_i.html">miosix::SoftwareSPI&lt; SI, SO, SCK, CE, numNops &gt;</a></td><td><code> [static]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_software_s_p_i.html#a2338776e2f0242f95b8e416b269ae4e7">sendRecvLong</a>(unsigned int data)</td><td><a class="el" href="classmiosix_1_1_software_s_p_i.html">miosix::SoftwareSPI&lt; SI, SO, SCK, CE, numNops &gt;</a></td><td><code> [static]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_software_s_p_i.html#aa4087c723fe51f7172c54c24a51e56c3">sendRecvShort</a>(unsigned short data)</td><td><a class="el" href="classmiosix_1_1_software_s_p_i.html">miosix::SoftwareSPI&lt; SI, SO, SCK, CE, numNops &gt;</a></td><td><code> [static]</code></td></tr>
+</table></div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix_1_1_software_s_p_i.html b/miosix/_doc/doxygen/html/classmiosix_1_1_software_s_p_i.html
new file mode 100644
index 00000000..318fef57
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix_1_1_software_s_p_i.html
@@ -0,0 +1,223 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: miosix::SoftwareSPI&lt; SI, SO, SCK, CE, numNops &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+  <div class="navpath">
+    <ul>
+      <li><a class="el" href="namespacemiosix.html">miosix</a>      </li>
+      <li><a class="el" href="classmiosix_1_1_software_s_p_i.html">miosix::SoftwareSPI&lt; SI, SO, SCK, CE, numNops &gt;</a>      </li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="summary">
+<a href="#pub-static-methods">Static Public Member Functions</a>  </div>
+  <div class="headertitle">
+<h1>miosix::SoftwareSPI&lt; SI, SO, SCK, CE, numNops &gt; Class Template Reference</h1>  </div>
+</div>
+<div class="contents">
+<!-- doxytag: class="miosix::SoftwareSPI" -->
+<p><code>#include &lt;software_spi.h&gt;</code></p>
+
+<p><a href="classmiosix_1_1_software_s_p_i-members.html">List of all members.</a></p>
+<table class="memberdecls">
+<tr><td colspan="2"><h2><a name="pub-static-methods"></a>
+Static Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_software_s_p_i.html#a0d8dc57b9c5bbca82f830a286e1e43e3">init</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static unsigned char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_software_s_p_i.html#a28c74624fdf2699bbd9a16a0b4041df4">sendRecvChar</a> (unsigned char data)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static unsigned short&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_software_s_p_i.html#aa4087c723fe51f7172c54c24a51e56c3">sendRecvShort</a> (unsigned short data)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_software_s_p_i.html#a2338776e2f0242f95b8e416b269ae4e7">sendRecvLong</a> (unsigned int data)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_software_s_p_i.html#a357a64d9abe58149039a90813a0e710c">ceLow</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_software_s_p_i.html#a7e2ba605d5a06df4e27c346f23b7559c">ceHigh</a> ()</td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<h3>template&lt;typename SI, typename SO, typename SCK, typename CE, unsigned numNops&gt;<br/>
+ class miosix::SoftwareSPI&lt; SI, SO, SCK, CE, numNops &gt;</h3>
+
+<p>Software implementation of the SPI protocol (CPOL=0, CPHA=0 mode) </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>SI</em>&nbsp;</td><td>an instance of the Gpio class indicating the SPI input pin </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>SO</em>&nbsp;</td><td>an instance of the Gpio class indicating the SPI output pin </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>SCK</em>&nbsp;</td><td>an instance of the Gpio class indicating the SPI clock pin </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>CE</em>&nbsp;</td><td>an instance of the Gpio class indicating the SPI chip enable pin </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>numNops</em>&nbsp;</td><td>number of nops to add to the send loop to slow down SPI clock </td></tr>
+  </table>
+  </dd>
+</dl>
+<hr/><h2>Member Function Documentation</h2>
+<a class="anchor" id="a7e2ba605d5a06df4e27c346f23b7559c"></a><!-- doxytag: member="miosix::SoftwareSPI::ceHigh" ref="a7e2ba605d5a06df4e27c346f23b7559c" args="()" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename SI , typename SO , typename SCK , typename CE , unsigned numNops&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">static void <a class="el" href="classmiosix_1_1_software_s_p_i.html">miosix::SoftwareSPI</a>&lt; SI, SO, SCK, CE, numNops &gt;::ceHigh </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline, static]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Pull CE high, indicating transmission end. </p>
+
+</div>
+</div>
+<a class="anchor" id="a357a64d9abe58149039a90813a0e710c"></a><!-- doxytag: member="miosix::SoftwareSPI::ceLow" ref="a357a64d9abe58149039a90813a0e710c" args="()" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename SI , typename SO , typename SCK , typename CE , unsigned numNops&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">static void <a class="el" href="classmiosix_1_1_software_s_p_i.html">miosix::SoftwareSPI</a>&lt; SI, SO, SCK, CE, numNops &gt;::ceLow </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline, static]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Pull CE low, indicating transmission start. </p>
+
+</div>
+</div>
+<a class="anchor" id="a0d8dc57b9c5bbca82f830a286e1e43e3"></a><!-- doxytag: member="miosix::SoftwareSPI::init" ref="a0d8dc57b9c5bbca82f830a286e1e43e3" args="()" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename SI , typename SO , typename SCK , typename CE , unsigned numNops&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">static void <a class="el" href="classmiosix_1_1_software_s_p_i.html">miosix::SoftwareSPI</a>&lt; SI, SO, SCK, CE, numNops &gt;::init </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline, static]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Initialize the SPI interface </p>
+
+</div>
+</div>
+<a class="anchor" id="a28c74624fdf2699bbd9a16a0b4041df4"></a><!-- doxytag: member="miosix::SoftwareSPI::sendRecvChar" ref="a28c74624fdf2699bbd9a16a0b4041df4" args="(unsigned char data)" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename SI , typename SO , typename SCK , typename CE , unsigned numNops&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">unsigned char <a class="el" href="classmiosix_1_1_software_s_p_i.html">miosix::SoftwareSPI</a>&lt; SI, SO, SCK, CE, numNops &gt;::sendRecvChar </td>
+          <td>(</td>
+          <td class="paramtype">unsigned char&nbsp;</td>
+          <td class="paramname"> <em>data</em></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [static]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Send a byte and, since SPI is full duplex, simultaneously receive a byte </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>data</em>&nbsp;</td><td>to send </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="return"><dt><b>Returns:</b></dt><dd>data received </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a2338776e2f0242f95b8e416b269ae4e7"></a><!-- doxytag: member="miosix::SoftwareSPI::sendRecvLong" ref="a2338776e2f0242f95b8e416b269ae4e7" args="(unsigned int data)" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename SI , typename SO , typename SCK , typename CE , unsigned numNops&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">unsigned int <a class="el" href="classmiosix_1_1_software_s_p_i.html">miosix::SoftwareSPI</a>&lt; SI, SO, SCK, CE, numNops &gt;::sendRecvLong </td>
+          <td>(</td>
+          <td class="paramtype">unsigned int&nbsp;</td>
+          <td class="paramname"> <em>data</em></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [static]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Send an int and, since SPI is full duplex, simultaneously receive an int </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>data</em>&nbsp;</td><td>to send </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="return"><dt><b>Returns:</b></dt><dd>data received </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="aa4087c723fe51f7172c54c24a51e56c3"></a><!-- doxytag: member="miosix::SoftwareSPI::sendRecvShort" ref="aa4087c723fe51f7172c54c24a51e56c3" args="(unsigned short data)" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename SI , typename SO , typename SCK , typename CE , unsigned numNops&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">unsigned short <a class="el" href="classmiosix_1_1_software_s_p_i.html">miosix::SoftwareSPI</a>&lt; SI, SO, SCK, CE, numNops &gt;::sendRecvShort </td>
+          <td>(</td>
+          <td class="paramtype">unsigned short&nbsp;</td>
+          <td class="paramname"> <em>data</em></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [static]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Send an unsigned short and, since SPI is full duplex, simultaneously receive an unsigned short </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>data</em>&nbsp;</td><td>to send </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="return"><dt><b>Returns:</b></dt><dd>data received </dd></dl>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>software_spi.h</li>
+</ul>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix_1_1_thread-members.html b/miosix/_doc/doxygen/html/classmiosix_1_1_thread-members.html
new file mode 100644
index 00000000..a118ed03
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix_1_1_thread-members.html
@@ -0,0 +1,66 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="headertitle">
+<h1>miosix::Thread Member List</h1>  </div>
+</div>
+<div class="contents">
+This is the complete list of members for <a class="el" href="classmiosix_1_1_thread.html">miosix::Thread</a>, including all inherited members.<table>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_thread.html#ac5a454f2617a4a28f00842b1097fc363">create</a>(void *(*startfunc)(void *), unsigned int stacksize, Priority priority=Priority(), void *argv=NULL, unsigned short options=DEFAULT)</td><td><a class="el" href="classmiosix_1_1_thread.html">miosix::Thread</a></td><td><code> [static]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_thread.html#a12d19634d30226cb4441a77b233a5bf2">create</a>(void(*startfunc)(void *), unsigned int stacksize, Priority priority=Priority(), void *argv=NULL, unsigned short options=DEFAULT)</td><td><a class="el" href="classmiosix_1_1_thread.html">miosix::Thread</a></td><td><code> [static]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_thread.html#acaef68f0e93f6ad933442d87c210daafa03df086cf889e215d75222d10486b71e">DEFAULT</a> enum value</td><td><a class="el" href="classmiosix_1_1_thread.html">miosix::Thread</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_thread.html#ae7817dd59f317a04d3ce3793419d25a4">detach</a>()</td><td><a class="el" href="classmiosix_1_1_thread.html">miosix::Thread</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_thread.html#adb06c8f5761db66d1089a61db71dcf92">exists</a>(Thread *p)</td><td><a class="el" href="classmiosix_1_1_thread.html">miosix::Thread</a></td><td><code> [static]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_thread.html#a884bfd106afeb274c339d383702b4aec">getCurrentThread</a>()</td><td><a class="el" href="classmiosix_1_1_thread.html">miosix::Thread</a></td><td><code> [static]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_thread.html#aacba6298a092d5335f6dbefe56a611ec">getPriority</a>()</td><td><a class="el" href="classmiosix_1_1_thread.html">miosix::Thread</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_thread.html#a572b87e4c6174ad4137f964e40bbe515">IRQexists</a>(Thread *p)</td><td><a class="el" href="classmiosix_1_1_thread.html">miosix::Thread</a></td><td><code> [static]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_thread.html#ae3918e86d91bbe3062f907004ba7f579">IRQgetCurrentThread</a>()</td><td><a class="el" href="classmiosix_1_1_thread.html">miosix::Thread</a></td><td><code> [static]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_thread.html#a585c7966f59855aafd771c7733a38296">IRQgetPriority</a>()</td><td><a class="el" href="classmiosix_1_1_thread.html">miosix::Thread</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_thread.html#a6aed14f0f04e69f922aba8f0cf7ac0c6">IRQwait</a>()</td><td><a class="el" href="classmiosix_1_1_thread.html">miosix::Thread</a></td><td><code> [static]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_thread.html#ab34c3cbac8aa609a5c6e4abc384a9faa">IRQwakeup</a>()</td><td><a class="el" href="classmiosix_1_1_thread.html">miosix::Thread</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_thread.html#afb1d97df689c7104bec35858bbaf4ae6">isDetached</a>() const </td><td><a class="el" href="classmiosix_1_1_thread.html">miosix::Thread</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_thread.html#a968b43a36ecdf124d72a5d8ddfa2a3b9">join</a>(void **result=NULL)</td><td><a class="el" href="classmiosix_1_1_thread.html">miosix::Thread</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_thread.html#acaef68f0e93f6ad933442d87c210daafa785d69b0e6b95b648735efe54b588df7">JOINABLE</a> enum value</td><td><a class="el" href="classmiosix_1_1_thread.html">miosix::Thread</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_thread.html#acaef68f0e93f6ad933442d87c210daaf">Options</a> enum name</td><td><a class="el" href="classmiosix_1_1_thread.html">miosix::Thread</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_thread.html#a88af678dc4032a5f92da12917947d881">PKwakeup</a>()</td><td><a class="el" href="classmiosix_1_1_thread.html">miosix::Thread</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_thread.html#a448486b757b8ede4edaa8edc39962b17">result</a></td><td><a class="el" href="classmiosix_1_1_thread.html">miosix::Thread</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_thread.html#af6c4237506c533c00a0144632685b17d">setPriority</a>(Priority pr)</td><td><a class="el" href="classmiosix_1_1_thread.html">miosix::Thread</a></td><td><code> [static]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_thread.html#ad7f738dc69a918960fe814a062696c5c">sleep</a>(unsigned int ms)</td><td><a class="el" href="classmiosix_1_1_thread.html">miosix::Thread</a></td><td><code> [static]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_thread.html#aac116a322826366c7b3269db3ab4be73">sleepUntil</a>(long long absoluteTime)</td><td><a class="el" href="classmiosix_1_1_thread.html">miosix::Thread</a></td><td><code> [static]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_thread.html#ae086b5bf2b3b55972ad696ec820c8f5e">terminate</a>()</td><td><a class="el" href="classmiosix_1_1_thread.html">miosix::Thread</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_thread.html#a0ef492878827009d2d55442266d13b99">testTerminate</a>()</td><td><a class="el" href="classmiosix_1_1_thread.html">miosix::Thread</a></td><td><code> [static]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_thread.html#a435fe4527c1fdfcbebf886cd748a3fd4">wait</a>()</td><td><a class="el" href="classmiosix_1_1_thread.html">miosix::Thread</a></td><td><code> [static]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_thread.html#a4d8096414686bc7519454101f55306d2">waitingForJoin</a></td><td><a class="el" href="classmiosix_1_1_thread.html">miosix::Thread</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_thread.html#af19b8a2ab852ea771a2e2b95bb0ba2a8">wakeup</a>()</td><td><a class="el" href="classmiosix_1_1_thread.html">miosix::Thread</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_thread.html#a75823b1288a7defcb715fd6591a23b2d">yield</a>()</td><td><a class="el" href="classmiosix_1_1_thread.html">miosix::Thread</a></td><td><code> [static]</code></td></tr>
+</table></div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix_1_1_thread.html b/miosix/_doc/doxygen/html/classmiosix_1_1_thread.html
new file mode 100644
index 00000000..45f01b7f
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix_1_1_thread.html
@@ -0,0 +1,686 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: miosix::Thread Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+  <div class="navpath">
+    <ul>
+      <li><a class="el" href="namespacemiosix.html">miosix</a>      </li>
+      <li><a class="el" href="classmiosix_1_1_thread.html">miosix::Thread</a>      </li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="summary">
+<a href="#pub-types">Public Types</a> &#124;
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-static-methods">Static Public Member Functions</a>  </div>
+  <div class="headertitle">
+<h1>miosix::Thread Class Reference<br/>
+<small>
+[<a class="el" href="group___kernel.html">Kernel</a>]</small>
+</h1>  </div>
+</div>
+<div class="contents">
+<!-- doxytag: class="miosix::Thread" -->
+<p><code>#include &lt;kernel.h&gt;</code></p>
+
+<p><a href="classmiosix_1_1_thread-members.html">List of all members.</a></p>
+<table class="memberdecls">
+<tr><td colspan="2"><h2><a name="pub-types"></a>
+Public Types</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_thread.html#acaef68f0e93f6ad933442d87c210daaf">Options</a> { <a class="el" href="classmiosix_1_1_thread.html#acaef68f0e93f6ad933442d87c210daafa03df086cf889e215d75222d10486b71e">DEFAULT</a> = 0, 
+<a class="el" href="classmiosix_1_1_thread.html#acaef68f0e93f6ad933442d87c210daafa785d69b0e6b95b648735efe54b588df7">JOINABLE</a> = 1&lt;&lt;0
+ }</td></tr>
+<tr><td colspan="2"><h2><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmiosix_1_1_priority_scheduler_priority.html">Priority</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_thread.html#aacba6298a092d5335f6dbefe56a611ec">getPriority</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_thread.html#ae086b5bf2b3b55972ad696ec820c8f5e">terminate</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_thread.html#af19b8a2ab852ea771a2e2b95bb0ba2a8">wakeup</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_thread.html#a88af678dc4032a5f92da12917947d881">PKwakeup</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_thread.html#ae7817dd59f317a04d3ce3793419d25a4">detach</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_thread.html#afb1d97df689c7104bec35858bbaf4ae6">isDetached</a> () const </td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_thread.html#a968b43a36ecdf124d72a5d8ddfa2a3b9">join</a> (void **<a class="el" href="classmiosix_1_1_thread.html#a448486b757b8ede4edaa8edc39962b17">result</a>=NULL)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmiosix_1_1_priority_scheduler_priority.html">Priority</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_thread.html#a585c7966f59855aafd771c7733a38296">IRQgetPriority</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_thread.html#ab34c3cbac8aa609a5c6e4abc384a9faa">IRQwakeup</a> ()</td></tr>
+<tr><td colspan="2"><h2><a name="pub-static-methods"></a>
+Static Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classmiosix_1_1_thread.html">Thread</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_thread.html#ac5a454f2617a4a28f00842b1097fc363">create</a> (void *(*startfunc)(void *), unsigned int stacksize, <a class="el" href="classmiosix_1_1_priority_scheduler_priority.html">Priority</a> priority=<a class="el" href="classmiosix_1_1_priority_scheduler_priority.html">Priority</a>(), void *argv=NULL, unsigned short options=DEFAULT)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classmiosix_1_1_thread.html">Thread</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_thread.html#a12d19634d30226cb4441a77b233a5bf2">create</a> (void(*startfunc)(void *), unsigned int stacksize, <a class="el" href="classmiosix_1_1_priority_scheduler_priority.html">Priority</a> priority=<a class="el" href="classmiosix_1_1_priority_scheduler_priority.html">Priority</a>(), void *argv=NULL, unsigned short options=DEFAULT)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_thread.html#a75823b1288a7defcb715fd6591a23b2d">yield</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_thread.html#a0ef492878827009d2d55442266d13b99">testTerminate</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_thread.html#ad7f738dc69a918960fe814a062696c5c">sleep</a> (unsigned int ms)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_thread.html#aac116a322826366c7b3269db3ab4be73">sleepUntil</a> (long long absoluteTime)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classmiosix_1_1_thread.html">Thread</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_thread.html#a884bfd106afeb274c339d383702b4aec">getCurrentThread</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_thread.html#adb06c8f5761db66d1089a61db71dcf92">exists</a> (<a class="el" href="classmiosix_1_1_thread.html">Thread</a> *p)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_thread.html#af6c4237506c533c00a0144632685b17d">setPriority</a> (<a class="el" href="classmiosix_1_1_priority_scheduler_priority.html">Priority</a> pr)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_thread.html#a435fe4527c1fdfcbebf886cd748a3fd4">wait</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classmiosix_1_1_thread.html">Thread</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_thread.html#ae3918e86d91bbe3062f907004ba7f579">IRQgetCurrentThread</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_thread.html#a6aed14f0f04e69f922aba8f0cf7ac0c6">IRQwait</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_thread.html#a572b87e4c6174ad4137f964e40bbe515">IRQexists</a> (<a class="el" href="classmiosix_1_1_thread.html">Thread</a> *p)</td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<p>This class represents a thread. It has methods for creating, deleting and handling threads.<br/>
+It has private constructor and destructor, since memory for a thread is handled by the kernel.<br/>
+To create a thread use the static producer method <a class="el" href="classmiosix_1_1_thread.html#ac5a454f2617a4a28f00842b1097fc363">create()</a>.<br/>
+ Methods that have an effect on the current thread, that is, the thread that is calling the method are static.<br/>
+ Calls to non static methods must be done with care, because a thread can terminate at any time. For example, if you call <a class="el" href="classmiosix_1_1_thread.html#af19b8a2ab852ea771a2e2b95bb0ba2a8">wakeup()</a> on a terminated thread, the behavior is undefined. </p>
+<hr/><h2>Member Enumeration Documentation</h2>
+<a class="anchor" id="acaef68f0e93f6ad933442d87c210daaf"></a><!-- doxytag: member="miosix::Thread::Options" ref="acaef68f0e93f6ad933442d87c210daaf" args="" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">enum <a class="el" href="classmiosix_1_1_thread.html#acaef68f0e93f6ad933442d87c210daaf">miosix::Thread::Options</a></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p><a class="el" href="classmiosix_1_1_thread.html">Thread</a> options, can be passed to <a class="el" href="classmiosix_1_1_thread.html#ac5a454f2617a4a28f00842b1097fc363">Thread::create</a> to set additional options of the thread. More options can be specified simultaneously by ORing them together. The DEFAULT option indicates the default thread creation. </p>
+<dl><dt><b>Enumerator: </b></dt><dd><table border="0" cellspacing="2" cellpadding="0">
+<tr><td valign="top"><em><a class="anchor" id="acaef68f0e93f6ad933442d87c210daafa03df086cf889e215d75222d10486b71e"></a><!-- doxytag: member="DEFAULT" ref="acaef68f0e93f6ad933442d87c210daafa03df086cf889e215d75222d10486b71e" args="" -->DEFAULT</em>&nbsp;</td><td>
+<p>Default thread options. </p>
+</td></tr>
+<tr><td valign="top"><em><a class="anchor" id="acaef68f0e93f6ad933442d87c210daafa785d69b0e6b95b648735efe54b588df7"></a><!-- doxytag: member="JOINABLE" ref="acaef68f0e93f6ad933442d87c210daafa785d69b0e6b95b648735efe54b588df7" args="" -->JOINABLE</em>&nbsp;</td><td>
+<p><a class="el" href="classmiosix_1_1_thread.html">Thread</a> is joinable instead of detached. </p>
+</td></tr>
+</table>
+</dd>
+</dl>
+
+</div>
+</div>
+<hr/><h2>Member Function Documentation</h2>
+<a class="anchor" id="ac5a454f2617a4a28f00842b1097fc363"></a><!-- doxytag: member="miosix::Thread::create" ref="ac5a454f2617a4a28f00842b1097fc363" args="(void *(*startfunc)(void *), unsigned int stacksize, Priority priority=Priority(), void *argv=NULL, unsigned short options=DEFAULT)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classmiosix_1_1_thread.html">Thread</a> * miosix::Thread::create </td>
+          <td>(</td>
+          <td class="paramtype">void *(*)(void *)&nbsp;</td>
+          <td class="paramname"> <em>startfunc</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">unsigned int&nbsp;</td>
+          <td class="paramname"> <em>stacksize</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="classmiosix_1_1_priority_scheduler_priority.html">Priority</a>&nbsp;</td>
+          <td class="paramname"> <em>priority</em> = <code><a class="el" href="classmiosix_1_1_priority_scheduler_priority.html">Priority</a>()</code>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">void *&nbsp;</td>
+          <td class="paramname"> <em>argv</em> = <code>NULL</code>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">unsigned short&nbsp;</td>
+          <td class="paramname"> <em>options</em> = <code>DEFAULT</code></td><td>&nbsp;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td><td><code> [static]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Producer method, creates a new thread. </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>startfunc</em>&nbsp;</td><td>the entry point function for the thread </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>stacksize</em>&nbsp;</td><td>size of thread stack, its minimum is the constant STACK_MIN. The size of the stack must be divisible by 4, otherwise it will be rounded to a number divisible by 4. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>priority</em>&nbsp;</td><td>the thread's priority, between 0 (lower) and PRIORITY_MAX-1 (higher) </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>argv</em>&nbsp;</td><td>a void* pointer that is passed as pararmeter to the entry point function </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>options</em>&nbsp;</td><td>thread options, such ad <a class="el" href="classmiosix_1_1_thread.html#acaef68f0e93f6ad933442d87c210daafa785d69b0e6b95b648735efe54b588df7" title="Thread is joinable instead of detached.">Thread::JOINABLE</a> </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="return"><dt><b>Returns:</b></dt><dd>a reference to the thread created, that can be used, for example, to delete it, or NULL in case of errors.</dd></dl>
+<p>Calls errorHandler(INVALID_PARAMETERS) if stacksize or priority are invalid, and errorHandler(OUT_OF_MEMORY) if the heap is full. Can be called when the kernel is paused. Note: this is the only method of this class that can be called BEFORE the kernel is started. </p>
+
+</div>
+</div>
+<a class="anchor" id="a12d19634d30226cb4441a77b233a5bf2"></a><!-- doxytag: member="miosix::Thread::create" ref="a12d19634d30226cb4441a77b233a5bf2" args="(void(*startfunc)(void *), unsigned int stacksize, Priority priority=Priority(), void *argv=NULL, unsigned short options=DEFAULT)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classmiosix_1_1_thread.html">Thread</a> * miosix::Thread::create </td>
+          <td>(</td>
+          <td class="paramtype">void(*)(void *)&nbsp;</td>
+          <td class="paramname"> <em>startfunc</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">unsigned int&nbsp;</td>
+          <td class="paramname"> <em>stacksize</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="classmiosix_1_1_priority_scheduler_priority.html">Priority</a>&nbsp;</td>
+          <td class="paramname"> <em>priority</em> = <code><a class="el" href="classmiosix_1_1_priority_scheduler_priority.html">Priority</a>()</code>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">void *&nbsp;</td>
+          <td class="paramname"> <em>argv</em> = <code>NULL</code>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">unsigned short&nbsp;</td>
+          <td class="paramname"> <em>options</em> = <code>DEFAULT</code></td><td>&nbsp;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td><td><code> [static]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Same as create(void (*startfunc)(void *), unsigned int stacksize, Priority priority=1, void *argv=NULL) but in this case the entry point of the thread returns a void* </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>startfunc</em>&nbsp;</td><td>the entry point function for the thread </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>stacksize</em>&nbsp;</td><td>size of thread stack, its minimum is the constant STACK_MIN. The size of the stack must be divisible by 4, otherwise it will be rounded to a number divisible by 4. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>priority</em>&nbsp;</td><td>the thread's priority, between 0 (lower) and PRIORITY_MAX-1 (higher) </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>argv</em>&nbsp;</td><td>a void* pointer that is passed as pararmeter to the entry point function </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>options</em>&nbsp;</td><td>thread options, such ad <a class="el" href="classmiosix_1_1_thread.html#acaef68f0e93f6ad933442d87c210daafa785d69b0e6b95b648735efe54b588df7" title="Thread is joinable instead of detached.">Thread::JOINABLE</a> </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="return"><dt><b>Returns:</b></dt><dd>a reference to the thread created, that can be used, for example, to delete it, or NULL in case of errors. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ae7817dd59f317a04d3ce3793419d25a4"></a><!-- doxytag: member="miosix::Thread::detach" ref="ae7817dd59f317a04d3ce3793419d25a4" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void miosix::Thread::detach </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Detach the thread if it was joinable, otherwise do nothing.<br/>
+ If called on a deleted joinable thread on which join was not yet called, it allows the thread's memory to be deallocated.<br/>
+ If called on a thread that is not yet deleted, the call detaches the thread without deleting it. If called on an already detached thread, it has undefined behaviour. </p>
+
+</div>
+</div>
+<a class="anchor" id="adb06c8f5761db66d1089a61db71dcf92"></a><!-- doxytag: member="miosix::Thread::exists" ref="adb06c8f5761db66d1089a61db71dcf92" args="(Thread *p)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool miosix::Thread::exists </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classmiosix_1_1_thread.html">Thread</a> *&nbsp;</td>
+          <td class="paramname"> <em>p</em></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [static]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Check if a thread exists </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>p</em>&nbsp;</td><td>thread to check </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="return"><dt><b>Returns:</b></dt><dd>true if thread exists, false if does not exist or has been deleted. A joinable thread is considered existing until it has been joined, even if it returns from its entry point (unless it is detached and terminates).</dd></dl>
+<p>Can be called when the kernel is paused. </p>
+
+</div>
+</div>
+<a class="anchor" id="a884bfd106afeb274c339d383702b4aec"></a><!-- doxytag: member="miosix::Thread::getCurrentThread" ref="a884bfd106afeb274c339d383702b4aec" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classmiosix_1_1_thread.html">Thread</a> * miosix::Thread::getCurrentThread </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [static]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Return a pointer to the <a class="el" href="classmiosix_1_1_thread.html">Thread</a> class of the current thread. </p>
+<dl class="return"><dt><b>Returns:</b></dt><dd>a pointer to the current thread.</dd></dl>
+<p>Can be called when the kernel is paused. </p>
+
+</div>
+</div>
+<a class="anchor" id="aacba6298a092d5335f6dbefe56a611ec"></a><!-- doxytag: member="miosix::Thread::getPriority" ref="aacba6298a092d5335f6dbefe56a611ec" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classmiosix_1_1_priority_scheduler_priority.html">Priority</a> miosix::Thread::getPriority </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Returns the priority of a thread.<br/>
+ To get the priority of the current thread use: </p>
+<div class="fragment"><pre class="fragment"> <a class="code" href="classmiosix_1_1_thread.html#a884bfd106afeb274c339d383702b4aec">Thread::getCurrentThread</a>()-&gt;getPriority(); 
+</pre></div><p> If the thread is currently locking one or more mutexes, this member function returns the current priority, which can be higher than the original priority due to priority inheritance. </p>
+<dl class="return"><dt><b>Returns:</b></dt><dd>current priority of the thread</dd></dl>
+<p>Can be called when the kernel is paused. </p>
+
+</div>
+</div>
+<a class="anchor" id="a572b87e4c6174ad4137f964e40bbe515"></a><!-- doxytag: member="miosix::Thread::IRQexists" ref="a572b87e4c6174ad4137f964e40bbe515" args="(Thread *p)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool miosix::Thread::IRQexists </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classmiosix_1_1_thread.html">Thread</a> *&nbsp;</td>
+          <td class="paramname"> <em>p</em></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [static]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Same as <a class="el" href="classmiosix_1_1_thread.html#adb06c8f5761db66d1089a61db71dcf92">exists()</a> but is meant to be called only inside an IRQ or when interrupts are disabled. </p>
+
+</div>
+</div>
+<a class="anchor" id="ae3918e86d91bbe3062f907004ba7f579"></a><!-- doxytag: member="miosix::Thread::IRQgetCurrentThread" ref="ae3918e86d91bbe3062f907004ba7f579" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classmiosix_1_1_thread.html">Thread</a> * miosix::Thread::IRQgetCurrentThread </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [static]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Same as get_current_thread(), but meant to be used insida an IRQ, when interrupts are disabled or when the kernel is paused. </p>
+
+</div>
+</div>
+<a class="anchor" id="a585c7966f59855aafd771c7733a38296"></a><!-- doxytag: member="miosix::Thread::IRQgetPriority" ref="a585c7966f59855aafd771c7733a38296" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classmiosix_1_1_priority_scheduler_priority.html">Priority</a> miosix::Thread::IRQgetPriority </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Same as <a class="el" href="classmiosix_1_1_thread.html#aacba6298a092d5335f6dbefe56a611ec">getPriority()</a>, but meant to be used inside an IRQ, when interrupts are disabled or when the kernel is paused. </p>
+
+</div>
+</div>
+<a class="anchor" id="a6aed14f0f04e69f922aba8f0cf7ac0c6"></a><!-- doxytag: member="miosix::Thread::IRQwait" ref="a6aed14f0f04e69f922aba8f0cf7ac0c6" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void miosix::Thread::IRQwait </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [static]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Same as <a class="el" href="classmiosix_1_1_thread.html#a435fe4527c1fdfcbebf886cd748a3fd4">wait()</a>, but is meant to be used only inside an IRQ or when interrupts are disabled.<br/>
+ Note: this method is meant to put the current thread in wait status in a piece of code where interrupts are disbled; it returns immediately, so the user is responsible for re-enabling interrupts and calling yield to effectively put the thread in wait status.</p>
+<div class="fragment"><pre class="fragment"> <a class="code" href="group___kernel.html#gacd7ef6e968c5c0b2ff45bf102388ea4d">disableInterrupts</a>();
+ ...
+ <a class="code" href="classmiosix_1_1_thread.html#a6aed14f0f04e69f922aba8f0cf7ac0c6">Thread::IRQwait</a>();<span class="comment">//Return immediately</span>
+ <a class="code" href="group___kernel.html#ga36adaaa176d004747d2a01b822c9fea5">enableInterrupts</a>();
+ <a class="code" href="classmiosix_1_1_thread.html#a75823b1288a7defcb715fd6591a23b2d">Thread::yield</a>();<span class="comment">//After this, thread is in wait status</span>
+</pre></div> 
+</div>
+</div>
+<a class="anchor" id="ab34c3cbac8aa609a5c6e4abc384a9faa"></a><!-- doxytag: member="miosix::Thread::IRQwakeup" ref="ab34c3cbac8aa609a5c6e4abc384a9faa" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void miosix::Thread::IRQwakeup </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Same as <a class="el" href="classmiosix_1_1_thread.html#af19b8a2ab852ea771a2e2b95bb0ba2a8">wakeup()</a>, but is meant to be used only inside an IRQ or when interrupts are disabled. </p>
+
+</div>
+</div>
+<a class="anchor" id="afb1d97df689c7104bec35858bbaf4ae6"></a><!-- doxytag: member="miosix::Thread::isDetached" ref="afb1d97df689c7104bec35858bbaf4ae6" args="() const " -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool miosix::Thread::isDetached </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<dl class="return"><dt><b>Returns:</b></dt><dd>true if the thread is detached </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a968b43a36ecdf124d72a5d8ddfa2a3b9"></a><!-- doxytag: member="miosix::Thread::join" ref="a968b43a36ecdf124d72a5d8ddfa2a3b9" args="(void **result=NULL)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool miosix::Thread::join </td>
+          <td>(</td>
+          <td class="paramtype">void **&nbsp;</td>
+          <td class="paramname"> <em>result</em> = <code>NULL</code></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Wait until a joinable thread is terminated.<br/>
+ If the thread already terminated, this function returns immediately.<br/>
+ Calling <a class="el" href="classmiosix_1_1_thread.html#a968b43a36ecdf124d72a5d8ddfa2a3b9">join()</a> on the same thread multiple times, from the same or multiple threads is not recomended, but in the current implementation the first call will wait for join, and the other will return false.<br/>
+ Trying to join the thread join is called in returns false, but must be avoided.<br/>
+ Calling join on a detached thread might cause undefined behaviour. </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>result</em>&nbsp;</td><td>If the entry point function of the thread to join returns void *, the return value of the entry point is stored here, otherwise the content of this variable is undefined. If NULL is passed as result the return value will not be stored. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="return"><dt><b>Returns:</b></dt><dd>true on success, false on failure </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a88af678dc4032a5f92da12917947d881"></a><!-- doxytag: member="miosix::Thread::PKwakeup" ref="a88af678dc4032a5f92da12917947d881" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void miosix::Thread::PKwakeup </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Wakeup a thread. <br/>
+Can be called when the kernel is paused. </p>
+
+</div>
+</div>
+<a class="anchor" id="af6c4237506c533c00a0144632685b17d"></a><!-- doxytag: member="miosix::Thread::setPriority" ref="af6c4237506c533c00a0144632685b17d" args="(Priority pr)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void miosix::Thread::setPriority </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classmiosix_1_1_priority_scheduler_priority.html">Priority</a>&nbsp;</td>
+          <td class="paramname"> <em>pr</em></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [static]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Set the priority of this thread.<br/>
+ This member function changed from previous Miosix versions since it is now static. This implies a thread can no longer set the priority of another thread. </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>pr</em>&nbsp;</td><td>desired priority. Must be 0&lt;=pr&lt;PRIORITY_MAX</td></tr>
+  </table>
+  </dd>
+</dl>
+<p>Calls errorHandler(INVALID_PARAMETERS) if pr is not within bounds.</p>
+<p>Can be called when the kernel is paused. </p>
+
+</div>
+</div>
+<a class="anchor" id="ad7f738dc69a918960fe814a062696c5c"></a><!-- doxytag: member="miosix::Thread::sleep" ref="ad7f738dc69a918960fe814a062696c5c" args="(unsigned int ms)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void miosix::Thread::sleep </td>
+          <td>(</td>
+          <td class="paramtype">unsigned int&nbsp;</td>
+          <td class="paramname"> <em>ms</em></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [static]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Put the thread to sleep for a number of milliseconds.<br/>
+The actual precision depends on the kernel tick used. If the specified wait time is lower than the tick accuracy, the thread will be put to sleep for one tick.<br/>
+Maximum sleep time is (2^32-1) / TICK_FREQ. If a sleep time higher than that value is specified, the behaviour is undefined. </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>ms</em>&nbsp;</td><td>the number of millisecond. If it is ==0 this method will return immediately</td></tr>
+  </table>
+  </dd>
+</dl>
+<p>CANNOT be called when the kernel is paused. </p>
+
+</div>
+</div>
+<a class="anchor" id="aac116a322826366c7b3269db3ab4be73"></a><!-- doxytag: member="miosix::Thread::sleepUntil" ref="aac116a322826366c7b3269db3ab4be73" args="(long long absoluteTime)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void miosix::Thread::sleepUntil </td>
+          <td>(</td>
+          <td class="paramtype">long long&nbsp;</td>
+          <td class="paramname"> <em>absoluteTime</em></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [static]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Put the thread to sleep until the specified absolute time is reached. If the time is in the past, returns immediately. To make a periodic thread, this is the recomended way </p>
+<div class="fragment"><pre class="fragment"> <span class="keywordtype">void</span> periodicThread()
+ {
+     <span class="comment">//Run every 90 milliseconds</span>
+     <span class="keyword">const</span> <span class="keywordtype">int</span> period=<span class="keyword">static_cast&lt;</span><span class="keywordtype">int</span><span class="keyword">&gt;</span>(TICK_FREQ*0.09);
+     <span class="keywordtype">long</span> <span class="keywordtype">long</span> tick=<a class="code" href="group___kernel.html#gad16c495ced6659e8bc0bb371362674ef">getTick</a>();
+     <span class="keywordflow">for</span>(;;)
+     {
+         <span class="comment">//Do work</span>
+         tick+=period;
+         <a class="code" href="classmiosix_1_1_thread.html#aac116a322826366c7b3269db3ab4be73">Thread::sleepUntil</a>(tick);
+     }
+ }
+</pre></div> <dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>absoluteTime</em>&nbsp;</td><td>when to wake up</td></tr>
+  </table>
+  </dd>
+</dl>
+<p>CANNOT be called when the kernel is paused. </p>
+
+</div>
+</div>
+<a class="anchor" id="ae086b5bf2b3b55972ad696ec820c8f5e"></a><!-- doxytag: member="miosix::Thread::terminate" ref="ae086b5bf2b3b55972ad696ec820c8f5e" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void miosix::Thread::terminate </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Suggests a thread to terminate itself. Note that this method only makes <a class="el" href="classmiosix_1_1_thread.html#a0ef492878827009d2d55442266d13b99">testTerminate()</a> return true on the specified thread. If the thread does not call <a class="el" href="classmiosix_1_1_thread.html#a0ef492878827009d2d55442266d13b99">testTerminate()</a>, or if it calls it but does not delete itself by returning from entry point function, it will NEVER terminate. The user is responsible for implementing correctly this functionality.<br/>
+<a class="el" href="classmiosix_1_1_thread.html">Thread</a> termination is implemented like this to give time to a thread to deallocate resources, close files... before terminating. <br/>
+Can be called when the kernel is paused. </p>
+
+</div>
+</div>
+<a class="anchor" id="a0ef492878827009d2d55442266d13b99"></a><!-- doxytag: member="miosix::Thread::testTerminate" ref="a0ef492878827009d2d55442266d13b99" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool miosix::Thread::testTerminate </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [static]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>This method needs to be called periodically inside the thread's main loop. </p>
+<dl class="return"><dt><b>Returns:</b></dt><dd>true if somebody outside the thread called <a class="el" href="classmiosix_1_1_thread.html#ae086b5bf2b3b55972ad696ec820c8f5e">terminate()</a> on this thread.</dd></dl>
+<p>If it returns true the thread must free all resources and terminate by returning from its main function. <br/>
+Can be called when the kernel is paused. </p>
+
+</div>
+</div>
+<a class="anchor" id="a435fe4527c1fdfcbebf886cd748a3fd4"></a><!-- doxytag: member="miosix::Thread::wait" ref="a435fe4527c1fdfcbebf886cd748a3fd4" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void miosix::Thread::wait </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [static]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>This method stops the thread until another thread calls <a class="el" href="classmiosix_1_1_thread.html#af19b8a2ab852ea771a2e2b95bb0ba2a8">wakeup()</a> on this thread.<br/>
+Calls to wait are not cumulative. If <a class="el" href="classmiosix_1_1_thread.html#a435fe4527c1fdfcbebf886cd748a3fd4">wait()</a> is called two times, only one call to <a class="el" href="classmiosix_1_1_thread.html#af19b8a2ab852ea771a2e2b95bb0ba2a8">wakeup()</a> is needed to wake the thread. <br/>
+CANNOT be called when the kernel is paused. </p>
+
+</div>
+</div>
+<a class="anchor" id="af19b8a2ab852ea771a2e2b95bb0ba2a8"></a><!-- doxytag: member="miosix::Thread::wakeup" ref="af19b8a2ab852ea771a2e2b95bb0ba2a8" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void miosix::Thread::wakeup </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Wakeup a thread. <br/>
+CANNOT be called when the kernel is paused. </p>
+
+</div>
+</div>
+<a class="anchor" id="a75823b1288a7defcb715fd6591a23b2d"></a><!-- doxytag: member="miosix::Thread::yield" ref="a75823b1288a7defcb715fd6591a23b2d" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void miosix::Thread::yield </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [static]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>When called, suggests the kernel to pause the current thread, and run another one. <br/>
+CANNOT be called when the kernel is paused. </p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li>kernel.h</li>
+<li>kernel.cpp</li>
+</ul>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix_1_1_timer-members.html b/miosix/_doc/doxygen/html/classmiosix_1_1_timer-members.html
new file mode 100644
index 00000000..fd84238a
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix_1_1_timer-members.html
@@ -0,0 +1,45 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="headertitle">
+<h1>miosix::Timer Member List</h1>  </div>
+</div>
+<div class="contents">
+This is the complete list of members for <a class="el" href="classmiosix_1_1_timer.html">miosix::Timer</a>, including all inherited members.<table>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_timer.html#adb3725edbcdf2bdf9d3ec7912947af95">clear</a>()</td><td><a class="el" href="classmiosix_1_1_timer.html">miosix::Timer</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_timer.html#ade4ade4f99dfcb3b6fc0b02b3f112371">interval</a>() const </td><td><a class="el" href="classmiosix_1_1_timer.html">miosix::Timer</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_timer.html#a9644000ad11c2ee1208e597bed72ff5a">isRunning</a>() const </td><td><a class="el" href="classmiosix_1_1_timer.html">miosix::Timer</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_timer.html#afe2e62decbd592394b3278febf6097f7">start</a>()</td><td><a class="el" href="classmiosix_1_1_timer.html">miosix::Timer</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_timer.html#ad14fa7e00b7d9646b31bb85ecd475671">stop</a>()</td><td><a class="el" href="classmiosix_1_1_timer.html">miosix::Timer</a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_timer.html#a18fe7d4606d1370054aee4dbc956f3a2">Timer</a>()</td><td><a class="el" href="classmiosix_1_1_timer.html">miosix::Timer</a></td><td></td></tr>
+</table></div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix_1_1_timer.html b/miosix/_doc/doxygen/html/classmiosix_1_1_timer.html
new file mode 100644
index 00000000..e81d1ea2
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix_1_1_timer.html
@@ -0,0 +1,183 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: miosix::Timer Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+  <div class="navpath">
+    <ul>
+      <li><a class="el" href="namespacemiosix.html">miosix</a>      </li>
+      <li><a class="el" href="classmiosix_1_1_timer.html">miosix::Timer</a>      </li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a>  </div>
+  <div class="headertitle">
+<h1>miosix::Timer Class Reference<br/>
+<small>
+[<a class="el" href="group___sync.html">Syncronization</a>]</small>
+</h1>  </div>
+</div>
+<div class="contents">
+<!-- doxytag: class="miosix::Timer" -->
+<p><code>#include &lt;sync.h&gt;</code></p>
+
+<p><a href="classmiosix_1_1_timer-members.html">List of all members.</a></p>
+<table class="memberdecls">
+<tr><td colspan="2"><h2><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_timer.html#a18fe7d4606d1370054aee4dbc956f3a2">Timer</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_timer.html#afe2e62decbd592394b3278febf6097f7">start</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_timer.html#ad14fa7e00b7d9646b31bb85ecd475671">stop</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_timer.html#a9644000ad11c2ee1208e597bed72ff5a">isRunning</a> () const </td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_timer.html#ade4ade4f99dfcb3b6fc0b02b3f112371">interval</a> () const </td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_timer.html#adb3725edbcdf2bdf9d3ec7912947af95">clear</a> ()</td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<p>A timer that can be used to measure time intervals.<br/>
+Its resolution equals the kernel tick.<br/>
+Maximum interval is 2^31-1 ticks. </p>
+<hr/><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a18fe7d4606d1370054aee4dbc956f3a2"></a><!-- doxytag: member="miosix::Timer::Timer" ref="a18fe7d4606d1370054aee4dbc956f3a2" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">miosix::Timer::Timer </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Constructor. <a class="el" href="classmiosix_1_1_timer.html">Timer</a> is initialized in stopped status. </p>
+
+</div>
+</div>
+<hr/><h2>Member Function Documentation</h2>
+<a class="anchor" id="adb3725edbcdf2bdf9d3ec7912947af95"></a><!-- doxytag: member="miosix::Timer::clear" ref="adb3725edbcdf2bdf9d3ec7912947af95" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void miosix::Timer::clear </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Clear the timer and set it to not running state. </p>
+
+</div>
+</div>
+<a class="anchor" id="ade4ade4f99dfcb3b6fc0b02b3f112371"></a><!-- doxytag: member="miosix::Timer::interval" ref="ade4ade4f99dfcb3b6fc0b02b3f112371" args="() const " -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">int miosix::Timer::interval </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>get the interval, in kernel ticks. </p>
+<dl class="return"><dt><b>Returns:</b></dt><dd>the number of tick between start and stop. Returns -1 if the timer was never started, if interval is called after start but before stop, or if it overflowed.</dd></dl>
+<p>To read the vaue of a timer without stopping it, you can use its copy constructor to create another timer, and stop it while the first timer keeps running. </p>
+
+</div>
+</div>
+<a class="anchor" id="a9644000ad11c2ee1208e597bed72ff5a"></a><!-- doxytag: member="miosix::Timer::isRunning" ref="a9644000ad11c2ee1208e597bed72ff5a" args="() const " -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool miosix::Timer::isRunning </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<dl class="return"><dt><b>Returns:</b></dt><dd>true if timer is running </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="afe2e62decbd592394b3278febf6097f7"></a><!-- doxytag: member="miosix::Timer::start" ref="afe2e62decbd592394b3278febf6097f7" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void miosix::Timer::start </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Start the timer </p>
+
+</div>
+</div>
+<a class="anchor" id="ad14fa7e00b7d9646b31bb85ecd475671"></a><!-- doxytag: member="miosix::Timer::stop" ref="ad14fa7e00b7d9646b31bb85ecd475671" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void miosix::Timer::stop </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Stop the timer. After stop, <a class="el" href="classmiosix_1_1_timer.html">Timer</a> can be started and stopped again to count non-contiguous timer intervals. </p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li>sync.h</li>
+<li>sync.cpp</li>
+</ul>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix_1_1_unlock-members.html b/miosix/_doc/doxygen/html/classmiosix_1_1_unlock-members.html
new file mode 100644
index 00000000..4ac9d9b6
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix_1_1_unlock-members.html
@@ -0,0 +1,43 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="headertitle">
+<h1>miosix::Unlock&lt; T &gt; Member List</h1>  </div>
+</div>
+<div class="contents">
+This is the complete list of members for <a class="el" href="classmiosix_1_1_unlock.html">miosix::Unlock&lt; T &gt;</a>, including all inherited members.<table>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_unlock.html#a0185d0ca22404fe71d69bf831ff3266c">get</a>()</td><td><a class="el" href="classmiosix_1_1_unlock.html">miosix::Unlock&lt; T &gt;</a></td><td><code> [inline]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_unlock.html#a5ef3238bc134f5de60cf3ba88e3c8c3d">Unlock</a>(Lock&lt; T &gt; &amp;l)</td><td><a class="el" href="classmiosix_1_1_unlock.html">miosix::Unlock&lt; T &gt;</a></td><td><code> [inline, explicit]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_unlock.html#a4c3c1864d2ba24597b2bd4913a36e248">Unlock</a>(T &amp;m)</td><td><a class="el" href="classmiosix_1_1_unlock.html">miosix::Unlock&lt; T &gt;</a></td><td><code> [inline]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classmiosix_1_1_unlock.html#a53f826f17c0c7792d296c4a8dff4fef5">~Unlock</a>()</td><td><a class="el" href="classmiosix_1_1_unlock.html">miosix::Unlock&lt; T &gt;</a></td><td><code> [inline]</code></td></tr>
+</table></div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix_1_1_unlock.html b/miosix/_doc/doxygen/html/classmiosix_1_1_unlock.html
new file mode 100644
index 00000000..6810a534
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix_1_1_unlock.html
@@ -0,0 +1,183 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: miosix::Unlock&lt; T &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+  <div class="navpath">
+    <ul>
+      <li><a class="el" href="namespacemiosix.html">miosix</a>      </li>
+      <li><a class="el" href="classmiosix_1_1_unlock.html">miosix::Unlock&lt; T &gt;</a>      </li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a>  </div>
+  <div class="headertitle">
+<h1>miosix::Unlock&lt; T &gt; Class Template Reference<br/>
+<small>
+[<a class="el" href="group___sync.html">Syncronization</a>]</small>
+</h1>  </div>
+</div>
+<div class="contents">
+<!-- doxytag: class="miosix::Unlock" -->
+<p><code>#include &lt;sync.h&gt;</code></p>
+
+<p><a href="classmiosix_1_1_unlock-members.html">List of all members.</a></p>
+<table class="memberdecls">
+<tr><td colspan="2"><h2><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_unlock.html#a5ef3238bc134f5de60cf3ba88e3c8c3d">Unlock</a> (<a class="el" href="classmiosix_1_1_lock.html">Lock</a>&lt; T &gt; &amp;l)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_unlock.html#a4c3c1864d2ba24597b2bd4913a36e248">Unlock</a> (T &amp;m)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_unlock.html#a53f826f17c0c7792d296c4a8dff4fef5">~Unlock</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">T &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_unlock.html#a0185d0ca22404fe71d69bf831ff3266c">get</a> ()</td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<h3>template&lt;typename T&gt;<br/>
+ class miosix::Unlock&lt; T &gt;</h3>
+
+<p>This class allows to temporarily re unlock a mutex in a scope where it is locked <br/>
+ Example: </p>
+<div class="fragment"><pre class="fragment"> Mutex m;
+
+ <span class="comment">//Mutex unlocked</span>
+ {
+     Lock&lt;Mutex&gt; dLock(m);
+
+     <span class="comment">//Now mutex locked</span>
+
+     {
+         Unlock&lt;Mutex&gt; eLock(dLock);
+
+         <span class="comment">//Now mutex back unlocked</span>
+     }
+
+     <span class="comment">//Now mutex again locked</span>
+ }
+ <span class="comment">//Finally mutex unlocked</span>
+</pre></div> <hr/><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a5ef3238bc134f5de60cf3ba88e3c8c3d"></a><!-- doxytag: member="miosix::Unlock::Unlock" ref="a5ef3238bc134f5de60cf3ba88e3c8c3d" args="(Lock&lt; T &gt; &amp;l)" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classmiosix_1_1_unlock.html">miosix::Unlock</a>&lt; T &gt;::<a class="el" href="classmiosix_1_1_unlock.html">Unlock</a> </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classmiosix_1_1_lock.html">Lock</a>&lt; T &gt; &amp;&nbsp;</td>
+          <td class="paramname"> <em>l</em></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline, explicit]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Constructor, unlock mutex. </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>l</em>&nbsp;</td><td>the <a class="el" href="classmiosix_1_1_lock.html">Lock</a> that locked the mutex. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="a4c3c1864d2ba24597b2bd4913a36e248"></a><!-- doxytag: member="miosix::Unlock::Unlock" ref="a4c3c1864d2ba24597b2bd4913a36e248" args="(T &amp;m)" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classmiosix_1_1_unlock.html">miosix::Unlock</a>&lt; T &gt;::<a class="el" href="classmiosix_1_1_unlock.html">Unlock</a> </td>
+          <td>(</td>
+          <td class="paramtype">T &amp;&nbsp;</td>
+          <td class="paramname"> <em>m</em></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Constructor, unlock mutex. </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>m</em>&nbsp;</td><td>a locked mutex. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="a53f826f17c0c7792d296c4a8dff4fef5"></a><!-- doxytag: member="miosix::Unlock::~Unlock" ref="a53f826f17c0c7792d296c4a8dff4fef5" args="()" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classmiosix_1_1_unlock.html">miosix::Unlock</a>&lt; T &gt;::~<a class="el" href="classmiosix_1_1_unlock.html">Unlock</a> </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Destructor. Disable back interrupts. </p>
+
+</div>
+</div>
+<hr/><h2>Member Function Documentation</h2>
+<a class="anchor" id="a0185d0ca22404fe71d69bf831ff3266c"></a><!-- doxytag: member="miosix::Unlock::get" ref="a0185d0ca22404fe71d69bf831ff3266c" args="()" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">T&amp; <a class="el" href="classmiosix_1_1_unlock.html">miosix::Unlock</a>&lt; T &gt;::get </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<dl class="return"><dt><b>Returns:</b></dt><dd>the unlocked mutex </dd></dl>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>sync.h</li>
+</ul>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix__private_1_1_auxiliary_timer-members.html b/miosix/_doc/doxygen/html/classmiosix__private_1_1_auxiliary_timer-members.html
new file mode 100644
index 00000000..2b1e40b7
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix__private_1_1_auxiliary_timer-members.html
@@ -0,0 +1,40 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="headertitle">
+<h1>miosix_private::AuxiliaryTimer Member List</h1>  </div>
+</div>
+<div class="contents">
+This is the complete list of members for <a class="el" href="classmiosix__private_1_1_auxiliary_timer.html">miosix_private::AuxiliaryTimer</a>, including all inherited members.<table>
+  <tr class="memlist"><td><a class="el" href="classmiosix__private_1_1_auxiliary_timer.html#ad1e3b40dd8f36c71f5306b5b3a8b8ea9">IRQinit</a>()</td><td><a class="el" href="classmiosix__private_1_1_auxiliary_timer.html">miosix_private::AuxiliaryTimer</a></td><td><code> [static]</code></td></tr>
+</table></div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/classmiosix__private_1_1_auxiliary_timer.html b/miosix/_doc/doxygen/html/classmiosix__private_1_1_auxiliary_timer.html
new file mode 100644
index 00000000..5ebcc4c6
--- /dev/null
+++ b/miosix/_doc/doxygen/html/classmiosix__private_1_1_auxiliary_timer.html
@@ -0,0 +1,82 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: miosix_private::AuxiliaryTimer Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+  <div class="navpath">
+    <ul>
+      <li><b>miosix_private</b>      </li>
+      <li><a class="el" href="classmiosix__private_1_1_auxiliary_timer.html">miosix_private::AuxiliaryTimer</a>      </li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="summary">
+<a href="#pub-static-methods">Static Public Member Functions</a>  </div>
+  <div class="headertitle">
+<h1>miosix_private::AuxiliaryTimer Class Reference<br/>
+<small>
+[<a class="el" href="group___interfaces.html">Interfaces</a>]</small>
+</h1>  </div>
+</div>
+<div class="contents">
+<!-- doxytag: class="miosix_private::AuxiliaryTimer" -->
+<p><code>#include &lt;portability.h&gt;</code></p>
+
+<p><a href="classmiosix__private_1_1_auxiliary_timer-members.html">List of all members.</a></p>
+<table class="memberdecls">
+<tr><td colspan="2"><h2><a name="pub-static-methods"></a>
+Static Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix__private_1_1_auxiliary_timer.html#ad1e3b40dd8f36c71f5306b5b3a8b8ea9">IRQinit</a> ()</td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<p>Allow access to a second timer to allow variable burst preemption together with fixed tick timekeeping. </p>
+<hr/><h2>Member Function Documentation</h2>
+<a class="anchor" id="ad1e3b40dd8f36c71f5306b5b3a8b8ea9"></a><!-- doxytag: member="miosix_private::AuxiliaryTimer::IRQinit" ref="ad1e3b40dd8f36c71f5306b5b3a8b8ea9" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">static void miosix_private::AuxiliaryTimer::IRQinit </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [static]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Initializes the auxiliary timer. </p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li><a class="el" href="portability_8h.html">portability.h</a></li>
+</ul>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/closed.png b/miosix/_doc/doxygen/html/closed.png
new file mode 100644
index 0000000000000000000000000000000000000000..b7d4bd9fef2272c74b94762c9e2496177017775e
GIT binary patch
literal 126
zcmeAS@N?(olHy`uVBq!ia0y~yVBiE{4mJh`h6fYb1Q-|?Ts>VJLn;{G-gV@4P~>3_
z=vtdOt5H9J?Lv#*340yI=2EVzoO{!}G7Rs}&@THM#LvOz!}@Z0g~P<dLNmEEw9G9%
dE^_|M(Of7ZAn<upCj$cmgQu&X%Q~loCIH=rB{Tp4

literal 0
HcmV?d00001

diff --git a/miosix/_doc/doxygen/html/console_8h.html b/miosix/_doc/doxygen/html/console_8h.html
new file mode 100644
index 00000000..9d38ab78
--- /dev/null
+++ b/miosix/_doc/doxygen/html/console_8h.html
@@ -0,0 +1,51 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: console.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&nbsp;List</span></a></li>
+      <li><a href="globals.html"><span>File&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a> &#124;
+<a href="#namespaces">Namespaces</a>  </div>
+  <div class="headertitle">
+<h1>console.h File Reference</h1>  </div>
+</div>
+<div class="contents">
+<table class="memberdecls">
+<tr><td colspan="2"><h2><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_console.html">miosix::Console</a></td></tr>
+<tr><td colspan="2"><h2><a name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">namespace &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemiosix.html">miosix</a></td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<p>This file only contains the Console class </p>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/delays_8h.html b/miosix/_doc/doxygen/html/delays_8h.html
new file mode 100644
index 00000000..062db037
--- /dev/null
+++ b/miosix/_doc/doxygen/html/delays_8h.html
@@ -0,0 +1,52 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: delays.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&nbsp;List</span></a></li>
+      <li><a href="globals.html"><span>File&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="summary">
+<a href="#namespaces">Namespaces</a> &#124;
+<a href="#func-members">Functions</a>  </div>
+  <div class="headertitle">
+<h1>delays.h File Reference</h1>  </div>
+</div>
+<div class="contents">
+<table class="memberdecls">
+<tr><td colspan="2"><h2><a name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">namespace &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemiosix.html">miosix</a></td></tr>
+<tr><td colspan="2"><h2><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___interfaces.html#ga9d13aceddc0481fd1077e6fdfb31f9a7">miosix::delayMs</a> (unsigned int mseconds)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___interfaces.html#ga244f9474d20ffd5d905855f68aa3114f">miosix::delayUs</a> (unsigned int useconds)</td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<p>This file contains two functions, <a class="el" href="group___interfaces.html#ga9d13aceddc0481fd1077e6fdfb31f9a7">delayMs()</a> and <a class="el" href="group___interfaces.html#ga244f9474d20ffd5d905855f68aa3114f">delayUs()</a> which implement busy wait delays. </p>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/disk_8h.html b/miosix/_doc/doxygen/html/disk_8h.html
new file mode 100644
index 00000000..39c420ed
--- /dev/null
+++ b/miosix/_doc/doxygen/html/disk_8h.html
@@ -0,0 +1,47 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: disk.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&nbsp;List</span></a></li>
+      <li><a href="globals.html"><span>File&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="summary">
+<a href="#namespaces">Namespaces</a>  </div>
+  <div class="headertitle">
+<h1>disk.h File Reference</h1>  </div>
+</div>
+<div class="contents">
+<table class="memberdecls">
+<tr><td colspan="2"><h2><a name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">namespace &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemiosix.html">miosix</a></td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<p>This file only contains the Disk class </p>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/doxygen.css b/miosix/_doc/doxygen/html/doxygen.css
new file mode 100644
index 00000000..658686fe
--- /dev/null
+++ b/miosix/_doc/doxygen/html/doxygen.css
@@ -0,0 +1,656 @@
+/* The standard CSS for doxygen */
+
+body, table, div, p, dl {
+	font-family: Lucida Grande, Verdana, Geneva, Arial, sans-serif;
+	font-size: 12px;
+}
+
+/* @group Heading Levels */
+
+h1 {
+	font-size: 150%;
+}
+
+h2 {
+	font-size: 120%;
+}
+
+h3 {
+	font-size: 100%;
+}
+
+dt {
+	font-weight: bold;
+}
+
+div.multicol {
+	-moz-column-gap: 1em;
+	-webkit-column-gap: 1em;
+	-moz-column-count: 3;
+	-webkit-column-count: 3;
+}
+
+p.startli, p.startdd, p.starttd {
+	margin-top: 2px;
+}
+
+p.endli {
+	margin-bottom: 0px;
+}
+
+p.enddd {
+	margin-bottom: 4px;
+}
+
+p.endtd {
+	margin-bottom: 2px;
+}
+
+/* @end */
+
+caption {
+	font-weight: bold;
+}
+
+span.legend {
+        font-size: 70%;
+        text-align: center;
+}
+
+h3.version {
+        font-size: 90%;
+        text-align: center;
+}
+
+div.qindex, div.navtab{
+	background-color: #EBEFF6;
+	border: 1px solid #A3B4D7;
+	text-align: center;
+	margin: 2px;
+	padding: 2px;
+}
+
+div.qindex, div.navpath {
+	width: 100%;
+	line-height: 140%;
+}
+
+div.navtab {
+	margin-right: 15px;
+}
+
+/* @group Link Styling */
+
+a {
+	color: #3D578C;
+	font-weight: normal;
+	text-decoration: none;
+}
+
+.contents a:visited {
+	color: #4665A2;
+}
+
+a:hover {
+	text-decoration: underline;
+}
+
+a.qindex {
+	font-weight: bold;
+}
+
+a.qindexHL {
+	font-weight: bold;
+	background-color: #9CAFD4;
+	color: #ffffff;
+	border: 1px double #869DCA;
+}
+
+.contents a.qindexHL:visited {
+        color: #ffffff;
+}
+
+a.el {
+	font-weight: bold;
+}
+
+a.elRef {
+}
+
+a.code {
+	color: #4665A2;
+}
+
+a.codeRef {
+	color: #4665A2;
+}
+
+/* @end */
+
+dl.el {
+	margin-left: -1cm;
+}
+
+.fragment {
+	font-family: monospace, fixed;
+	font-size: 105%;
+}
+
+pre.fragment {
+	border: 1px solid #C4CFE5;
+	background-color: #FBFCFD;
+	padding: 4px 6px;
+	margin: 4px 8px 4px 2px;
+	overflow: auto;
+	word-wrap: break-word;
+	font-size:  9pt;
+	line-height: 125%;
+}
+
+div.ah {
+	background-color: black;
+	font-weight: bold;
+	color: #ffffff;
+	margin-bottom: 3px;
+	margin-top: 3px;
+	padding: 0.2em;
+	border: solid thin #333;
+	border-radius: 0.5em;
+	-webkit-border-radius: .5em;
+	-moz-border-radius: .5em;
+	-webkit-box-shadow: 2px 2px 3px #999;
+	-moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px;
+	background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444));
+	background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000);
+}
+
+div.groupHeader {
+	margin-left: 16px;
+	margin-top: 12px;
+	margin-bottom: 6px;
+	font-weight: bold;
+}
+
+div.groupText {
+	margin-left: 16px;
+	font-style: italic;
+}
+
+body {
+	background: white;
+	color: black;
+        margin: 0;
+}
+
+div.contents {
+	margin-top: 10px;
+	margin-left: 10px;
+	margin-right: 10px;
+}
+
+td.indexkey {
+	background-color: #EBEFF6;
+	font-weight: bold;
+	border: 1px solid #C4CFE5;
+	margin: 2px 0px 2px 0;
+	padding: 2px 10px;
+}
+
+td.indexvalue {
+	background-color: #EBEFF6;
+	border: 1px solid #C4CFE5;
+	padding: 2px 10px;
+	margin: 2px 0px;
+}
+
+tr.memlist {
+	background-color: #EEF1F7;
+}
+
+p.formulaDsp {
+	text-align: center;
+}
+
+img.formulaDsp {
+	
+}
+
+img.formulaInl {
+	vertical-align: middle;
+}
+
+div.center {
+	text-align: center;
+        margin-top: 0px;
+        margin-bottom: 0px;
+        padding: 0px;
+}
+
+div.center img {
+	border: 0px;
+}
+
+address.footer {
+	text-align: right;
+	padding-right: 12px;
+}
+
+img.footer {
+	border: 0px;
+	vertical-align: middle;
+}
+
+/* @group Code Colorization */
+
+span.keyword {
+	color: #008000
+}
+
+span.keywordtype {
+	color: #604020
+}
+
+span.keywordflow {
+	color: #e08000
+}
+
+span.comment {
+	color: #800000
+}
+
+span.preprocessor {
+	color: #806020
+}
+
+span.stringliteral {
+	color: #002080
+}
+
+span.charliteral {
+	color: #008080
+}
+
+span.vhdldigit { 
+	color: #ff00ff 
+}
+
+span.vhdlchar { 
+	color: #000000 
+}
+
+span.vhdlkeyword { 
+	color: #700070 
+}
+
+span.vhdllogic { 
+	color: #ff0000 
+}
+
+/* @end */
+
+/*
+.search {
+	color: #003399;
+	font-weight: bold;
+}
+
+form.search {
+	margin-bottom: 0px;
+	margin-top: 0px;
+}
+
+input.search {
+	font-size: 75%;
+	color: #000080;
+	font-weight: normal;
+	background-color: #e8eef2;
+}
+*/
+
+td.tiny {
+	font-size: 75%;
+}
+
+.dirtab {
+	padding: 4px;
+	border-collapse: collapse;
+	border: 1px solid #A3B4D7;
+}
+
+th.dirtab {
+	background: #EBEFF6;
+	font-weight: bold;
+}
+
+hr {
+	height: 0px;
+	border: none;
+	border-top: 1px solid #4A6AAA;
+}
+
+hr.footer {
+	height: 1px;
+}
+
+/* @group Member Descriptions */
+
+table.memberdecls {
+	border-spacing: 0px;
+	padding: 0px;
+}
+
+.mdescLeft, .mdescRight,
+.memItemLeft, .memItemRight,
+.memTemplItemLeft, .memTemplItemRight, .memTemplParams {
+	background-color: #F9FAFC;
+	border: none;
+	margin: 4px;
+	padding: 1px 0 0 8px;
+}
+
+.mdescLeft, .mdescRight {
+	padding: 0px 8px 4px 8px;
+	color: #555;
+}
+
+.memItemLeft, .memItemRight, .memTemplParams {
+	border-top: 1px solid #C4CFE5;
+}
+
+.memItemLeft, .memTemplItemLeft {
+        white-space: nowrap;
+}
+
+.memTemplParams {
+	color: #4665A2;
+        white-space: nowrap;
+}
+
+/* @end */
+
+/* @group Member Details */
+
+/* Styles for detailed member documentation */
+
+.memtemplate {
+	font-size: 80%;
+	color: #4665A2;
+	font-weight: normal;
+	margin-left: 3px;
+}
+
+.memnav {
+	background-color: #EBEFF6;
+	border: 1px solid #A3B4D7;
+	text-align: center;
+	margin: 2px;
+	margin-right: 15px;
+	padding: 2px;
+}
+
+.memitem {
+	padding: 0;
+	margin-bottom: 10px;
+}
+
+.memname {
+        white-space: nowrap;
+        font-weight: bold;
+        margin-left: 6px;
+}
+
+.memproto {
+        border-top: 1px solid #A8B8D9;
+        border-left: 1px solid #A8B8D9;
+        border-right: 1px solid #A8B8D9;
+        padding: 6px 0px 6px 0px;
+        color: #253555;
+        font-weight: bold;
+        text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9);
+        /* firefox specific markup */
+        -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px;
+        -moz-border-radius-topright: 8px;
+        -moz-border-radius-topleft: 8px;
+        /* webkit specific markup */
+        -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+        -webkit-border-top-right-radius: 8px;
+        -webkit-border-top-left-radius: 8px;
+        background-image:url('nav_f.png');
+        background-repeat:repeat-x;
+        background-color: #E2E8F2;
+
+}
+
+.memdoc {
+        border-bottom: 1px solid #A8B8D9;      
+        border-left: 1px solid #A8B8D9;      
+        border-right: 1px solid #A8B8D9; 
+        padding: 2px 5px;
+        background-color: #FBFCFD;
+        border-top-width: 0;
+        /* firefox specific markup */
+        -moz-border-radius-bottomleft: 8px;
+        -moz-border-radius-bottomright: 8px;
+        -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px;
+        background-image: -moz-linear-gradient(center top, #FFFFFF 0%, #FFFFFF 60%, #F7F8FB 95%, #EEF1F7);
+        /* webkit specific markup */
+        -webkit-border-bottom-left-radius: 8px;
+        -webkit-border-bottom-right-radius: 8px;
+        -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+        background-image: -webkit-gradient(linear,center top,center bottom,from(#FFFFFF), color-stop(0.6,#FFFFFF), color-stop(0.60,#FFFFFF), color-stop(0.95,#F7F8FB), to(#EEF1F7));
+}
+
+.paramkey {
+	text-align: right;
+}
+
+.paramtype {
+	white-space: nowrap;
+}
+
+.paramname {
+	color: #602020;
+	white-space: nowrap;
+}
+.paramname em {
+	font-style: normal;
+}
+
+/* @end */
+
+/* @group Directory (tree) */
+
+/* for the tree view */
+
+.ftvtree {
+	font-family: sans-serif;
+	margin: 0px;
+}
+
+/* these are for tree view when used as main index */
+
+.directory {
+	font-size: 9pt;
+	font-weight: bold;
+	margin: 5px;
+}
+
+.directory h3 {
+	margin: 0px;
+	margin-top: 1em;
+	font-size: 11pt;
+}
+
+/*
+The following two styles can be used to replace the root node title
+with an image of your choice.  Simply uncomment the next two styles,
+specify the name of your image and be sure to set 'height' to the
+proper pixel height of your image.
+*/
+
+/*
+.directory h3.swap {
+	height: 61px;
+	background-repeat: no-repeat;
+	background-image: url("yourimage.gif");
+}
+.directory h3.swap span {
+	display: none;
+}
+*/
+
+.directory > h3 {
+	margin-top: 0;
+}
+
+.directory p {
+	margin: 0px;
+	white-space: nowrap;
+}
+
+.directory div {
+	display: none;
+	margin: 0px;
+}
+
+.directory img {
+	vertical-align: -30%;
+}
+
+/* these are for tree view when not used as main index */
+
+.directory-alt {
+	font-size: 100%;
+	font-weight: bold;
+}
+
+.directory-alt h3 {
+	margin: 0px;
+	margin-top: 1em;
+	font-size: 11pt;
+}
+
+.directory-alt > h3 {
+	margin-top: 0;
+}
+
+.directory-alt p {
+	margin: 0px;
+	white-space: nowrap;
+}
+
+.directory-alt div {
+	display: none;
+	margin: 0px;
+}
+
+.directory-alt img {
+	vertical-align: -30%;
+}
+
+/* @end */
+
+div.dynheader {
+        margin-top: 8px;
+}
+
+address {
+	font-style: normal;
+	color: #2A3D61;
+}
+
+table.doxtable {
+	border-collapse:collapse;
+}
+
+table.doxtable td, table.doxtable th {
+	border: 1px solid #2D4068;
+	padding: 3px 7px 2px;
+}
+
+table.doxtable th {
+	background-color: #374F7F;
+	color: #FFFFFF;
+	font-size: 110%;
+	padding-bottom: 4px;
+	padding-top: 5px;
+	text-align:left;
+}
+
+.tabsearch {
+	top: 0px;
+	left: 10px;
+	height: 36px;
+	background-image: url('tab_b.png');
+	z-index: 101;
+	overflow: hidden;
+	font-size: 13px;
+}
+
+.navpath ul
+{
+	font-size: 11px;
+	background-image:url('tab_b.png');
+	background-repeat:repeat-x;
+	height:30px;
+	line-height:30px;
+	color:#8AA0CC;
+	border:solid 1px #C2CDE4;
+	overflow:hidden;
+	margin:0px;
+	padding:0px;
+}
+
+.navpath li
+{
+	list-style-type:none;
+	float:left;
+	padding-left:10px;
+	padding-right: 15px;
+	background-image:url('bc_s.png');
+	background-repeat:no-repeat;
+	background-position:right;
+	color:#364D7C;
+}
+
+.navpath a
+{
+	height:32px;
+	display:block;
+	text-decoration: none;
+	outline: none;
+}
+
+.navpath a:hover
+{
+	color:#6884BD;
+}
+
+div.summary
+{
+	float: right;
+	font-size: 8pt;
+	padding-right: 5px;
+	width: 50%;
+	text-align: right;
+}       
+
+div.summary a
+{
+	white-space: nowrap;
+}
+
+div.header
+{
+        background-image:url('nav_h.png');
+        background-repeat:repeat-x;
+	background-color: #F9FAFC;
+	margin:  0px;
+	border-bottom: 1px solid #C4CFE5;
+}
+
+div.headertitle
+{
+	padding: 5px 5px 5px 10px;
+}
+
diff --git a/miosix/_doc/doxygen/html/doxygen.png b/miosix/_doc/doxygen/html/doxygen.png
new file mode 100644
index 0000000000000000000000000000000000000000..635ed52fce7057ac24df92ec7664088a881fa5d0
GIT binary patch
literal 3942
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
Bq}%`i

literal 0
HcmV?d00001

diff --git a/miosix/_doc/doxygen/html/endianness_8h.html b/miosix/_doc/doxygen/html/endianness_8h.html
new file mode 100644
index 00000000..14aaf29c
--- /dev/null
+++ b/miosix/_doc/doxygen/html/endianness_8h.html
@@ -0,0 +1,59 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: endianness.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&nbsp;List</span></a></li>
+      <li><a href="globals.html"><span>File&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="summary">
+<a href="#define-members">Defines</a> &#124;
+<a href="#func-members">Functions</a>  </div>
+  <div class="headertitle">
+<h1>endianness.h File Reference</h1>  </div>
+</div>
+<div class="contents">
+<code>#include &quot;interfaces-impl/endianness_impl.h&quot;</code><br/>
+<table class="memberdecls">
+<tr><td colspan="2"><h2><a name="define-members"></a>
+Defines</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___interfaces.html#gaf9a5d5c4095f445894e047a624beab1c">toLittleEndian16</a>(x)&nbsp;&nbsp;&nbsp;(x)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___interfaces.html#ga81fdb9bbd65db8d3613bcf48b33b6b3c">toLittleEndian32</a>(x)&nbsp;&nbsp;&nbsp;(x)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___interfaces.html#ga9854a77efaef5446bd7e14722017df59">toLittleEndian64</a>(x)&nbsp;&nbsp;&nbsp;(x)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___interfaces.html#ga3d118b2a14e2880a0439c9bf9a06c6e5">toBigEndian16</a>(x)&nbsp;&nbsp;&nbsp;swapBytes16(x)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___interfaces.html#gaa6c617366016f8aade26bc9dea6cc26b">toBigEndian32</a>(x)&nbsp;&nbsp;&nbsp;swapBytes32(x)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___interfaces.html#ga9e5f305b36b75ad6f89becf211624ce2">toBigEndian64</a>(x)&nbsp;&nbsp;&nbsp;swapBytes64(x)</td></tr>
+<tr><td colspan="2"><h2><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">__MIOSIX_INLINE unsigned short&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___interfaces.html#gaac144bf3451c95e74bdd34327f019344">swapBytes16</a> (unsigned short x)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">__MIOSIX_INLINE unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___interfaces.html#gae45d4bbe8a807a780b0033850c143a81">swapBytes32</a> (unsigned int x)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">__MIOSIX_INLINE unsigned long long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___interfaces.html#ga74d39ebb52b05eda594e47f0d90e7ad2">swapBytes64</a> (unsigned long long x)</td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<p>This file contains optimized functions to convert data from the system's endianness to little or big endian, as well as to perform byte swapping. </p>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/files.html b/miosix/_doc/doxygen/html/files.html
new file mode 100644
index 00000000..64f90b66
--- /dev/null
+++ b/miosix/_doc/doxygen/html/files.html
@@ -0,0 +1,49 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: File Index</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li class="current"><a href="files.html"><span>File&nbsp;List</span></a></li>
+      <li><a href="globals.html"><span>File&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="headertitle">
+<h1>File List</h1>  </div>
+</div>
+<div class="contents">
+Here is a list of all documented files with brief descriptions:<table>
+  <tr><td class="indexkey"><a class="el" href="arch__registers_8h.html">arch_registers.h</a></td><td class="indexvalue"></td></tr>
+  <tr><td class="indexkey"><a class="el" href="bsp_8h.html">bsp.h</a></td><td class="indexvalue"></td></tr>
+  <tr><td class="indexkey"><a class="el" href="console_8h.html">console.h</a></td><td class="indexvalue"></td></tr>
+  <tr><td class="indexkey"><a class="el" href="delays_8h.html">delays.h</a></td><td class="indexvalue"></td></tr>
+  <tr><td class="indexkey"><a class="el" href="disk_8h.html">disk.h</a></td><td class="indexvalue"></td></tr>
+  <tr><td class="indexkey"><a class="el" href="endianness_8h.html">endianness.h</a></td><td class="indexvalue"></td></tr>
+  <tr><td class="indexkey"><a class="el" href="gpio_8h.html">gpio.h</a></td><td class="indexvalue"></td></tr>
+  <tr><td class="indexkey"><a class="el" href="miosix__settings_8h.html">miosix_settings.h</a></td><td class="indexvalue"></td></tr>
+  <tr><td class="indexkey"><a class="el" href="portability_8h.html">portability.h</a></td><td class="indexvalue"></td></tr>
+</table>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/ftv2blank.png b/miosix/_doc/doxygen/html/ftv2blank.png
new file mode 100644
index 0000000000000000000000000000000000000000..493c3c0b615ade5b22027bde773faf2c0e076d66
GIT binary patch
literal 174
zcmeAS@N?(olHy`uVBq!ia0y~yU=UznU=U+uU|?XJc1_Tofq{XkB*-tAfst{_-*q6V
z64!{5;QX|b^2DN4hV;xdqk_D21tUEZJ)^~O?tBak45}a%&iT2ysd*&~p*g9EDGKhM
zZVJJ<iA5#BiDjup3Sp^53PyScia)N$1v4-(h<Lg<hE&{2wm8txAaC%X-f02@6GMfK
W(dnZ88X*P-1_n=8KbLh*2~7Znm@q5=

literal 0
HcmV?d00001

diff --git a/miosix/_doc/doxygen/html/ftv2doc.png b/miosix/_doc/doxygen/html/ftv2doc.png
new file mode 100644
index 0000000000000000000000000000000000000000..f72999f92172cca6edaa2538286b3e369bec9f49
GIT binary patch
literal 255
zcmeAS@N?(olHy`uVBq!ia0y~yV31&7U=U+rW?*294=L1TU|<jp@CkAK4+0GT|NlR5
z;6Ot|0|N;B-@Nzt2?hoR#*!evU<QY0H_|{_OI#yLg7ec#$`gxH8PYS;j0*D76^!&u
z^o$nAx$`kFFqC<^IEGZ*N=`^fNJvgdNMT@9H%KaEe5Ar=kx<BRO5NDNfYETV5i?go
zh!JCOW<sGlhp3d)sRqWFm;+N5O<?K>@(yAR&O9+iq9rIu=x8RF*@GoZmSi*?32e${
yDHQQd^b2MAlpv$-sv<dou|P6CS;63FzB0qt3xW?qo89+<T<+=W=d#Wzp$Py$IZ`G7

literal 0
HcmV?d00001

diff --git a/miosix/_doc/doxygen/html/ftv2folderclosed.png b/miosix/_doc/doxygen/html/ftv2folderclosed.png
new file mode 100644
index 0000000000000000000000000000000000000000..d6d063440cbf13c4128dacd96661b6fce58abf26
GIT binary patch
literal 259
zcmeAS@N?(olHy`uVBq!ia0y~yV31&7U=U+rW?*294=L1TU|<jm@CkAK4+aMg9B620
zU|?WqU}$i9=kSn$fq}6k$S;_|;n|HekiHVvh?3y^w370~qEv?T%rv8dymSR4Jrg~n
z#c}R@3=9mlo-U3d6}Ni(4sx{^2skVEl=J^)cG|1`gE2Mt{i3t~|92U$eHZm@1KX_+
zZOeoiIvkjTnVM!@4|GypS5>y)?W@X4anIt1pNvHM<2`r2RZdViYnJxJ!F$W?+fT*b
ziB%~4oF<xksC!Y~&w!L=1=|9+E?2b8SavUVuIkx;_m43z5Eh-0u(y$$fq{X+)78&q
Iol`;+07G$Q8vp<R

literal 0
HcmV?d00001

diff --git a/miosix/_doc/doxygen/html/ftv2folderopen.png b/miosix/_doc/doxygen/html/ftv2folderopen.png
new file mode 100644
index 0000000000000000000000000000000000000000..bbe2c913cf493ee37ad8e3a5132382138d93ac92
GIT binary patch
literal 261
zcmeAS@N?(olHy`uVBq!ia0y~yV31&7U=U+rW?*294=L1TU|<jp@CkAK4+0GT|NlR5
z;6Ot|0|Ns?14F|kqn@V>3=E7VL4Lsu4$p3+fwY#mMwA5Sr<If^7Ns(zXQmky<fSVZ
z>6z#mEsk^NV_;yY@pN$vskqhJ>&Vw+AmAF$@l{SY_}Vdv>%9`!*)GW~*m&<hhn0e&
zz@q%m|NeJNHgIK$G}^FfB_6%(oOy7|>YoK`nosTiy`+1cn%g!X{uhTOer>K@A@y2(
zsauGfpVp&uQ*C!`NSWL^o4dHMx%B#{<r6+B%>6BP>9zCEzn^%QXo{S^<-W#+fq{X+
M)78&qol`;+02~`<LI3~&

literal 0
HcmV?d00001

diff --git a/miosix/_doc/doxygen/html/ftv2lastnode.png b/miosix/_doc/doxygen/html/ftv2lastnode.png
new file mode 100644
index 0000000000000000000000000000000000000000..e7b9ba90cb0cf71c8ce662956bfee7d64cf60fa6
GIT binary patch
literal 233
zcmeAS@N?(olHy`uVBq!ia0y~yU=UznU=U+rW?*3SX*Rscz`$S-;1lBd|NnmmqCrDL
zgT&<p6Brm67)yfuf*Bm1-ADtOTH+c}5}cn_Ql40p%8;I!W>k=uu3)5RqGz-?&Yh2e
zfk6$V!Z|-TH#M(>Av7m7F-5`M(@h~bH?gQBII%3XNFgk>NWn<YAd@lQ{wx~<1B0-q
pi(^Q|t>gp=g9H9N%q%C2<rq|!Gjs@?GPVV|*VEO{Wt~$(69BbdHFf|1

literal 0
HcmV?d00001

diff --git a/miosix/_doc/doxygen/html/ftv2link.png b/miosix/_doc/doxygen/html/ftv2link.png
new file mode 100644
index 0000000000000000000000000000000000000000..14f3fed003659b11214ac7a1ca0efa2b9145ce9e
GIT binary patch
literal 358
zcmeAS@N?(olHy`uVBq!ia0y~yV31&7U=U+rW?*294=L1TU|=u^@CkAK|NlQj1H=FS
z3=9kn3=IDn8bIK{fddRU0CU}J4h9AW#*!evU<QY0H_||+mbgZg1m~xflqVLYGNfmw
z85QKED;VjS=ou}JbLV4VU{C|8aL&)oP0cG|2+c`NOi^(6bW;e<O)M%2PAp3;QV2^e
zQZUjpkYu{a`P7SnfnkEDi(^Q|t=gWAT!#!qT=R{$B-bqr4)3mO$Xh2CwP~MKis_D&
zH~Q?Xvhyo@6$36XpFI0;pE$z`hNcINX|)ID1r|8So?pu@Azd=zwoDTLBZY%!60O;?
zc8gfQ%-FRiaIVUmJKh;@FU3jM{hhQTw`G%thQ+B%K5n{^XDnj6&piI8UHGeVPkLo5
gdr0QJd-^}lvlmX)UMNs;0TfUSp00i_>zopr0EW7H!~g&Q

literal 0
HcmV?d00001

diff --git a/miosix/_doc/doxygen/html/ftv2mlastnode.png b/miosix/_doc/doxygen/html/ftv2mlastnode.png
new file mode 100644
index 0000000000000000000000000000000000000000..09ceb6adb01054ce799ad20c0e818ab9272f2df2
GIT binary patch
literal 160
zcmeAS@N?(olHy`uVBq!ia0y~yU=UznU=U+sW?*1EeE3Ku0|NtRfKQ0)|Ns9R8X6cF
z7;NHp>o71dFqQ=Q1v5B2yO9P`Ug8>25}cn_Ql40p%8;I!W>k=uu3)5RqGz-?&Yh2e
zfkD~R#WAGfR&s&@HwTA;09QhbV9&yZ3TzWjuGktNaEhrjk&z)+oN3pAJDDdK7#J8l
MUHx3vIVCg!0ORy6RsaA1

literal 0
HcmV?d00001

diff --git a/miosix/_doc/doxygen/html/ftv2mnode.png b/miosix/_doc/doxygen/html/ftv2mnode.png
new file mode 100644
index 0000000000000000000000000000000000000000..3254c05112199fbc80aad313611c58a5b388792d
GIT binary patch
literal 194
zcmeAS@N?(olHy`uVBq!ia0y~yU=UznU=U+rW?*3SX*Rscz`&pq;1l9{;J^U}yr7|>
zA$XtMOa=x9#*!evU<QY0H_|{RmAFQf1m~xflqVLYGNfmw85QKED;VjS=ou}JbLV4V
zV9@e(aSW-rm7K6Z?*W@r3DfeR5Vr4m3Jo6*Cf)Jz^15^9&Iu(0(;2reN-}J(WLIDH
ReHt^!A)c;&F6*2UngA?OGfe;h

literal 0
HcmV?d00001

diff --git a/miosix/_doc/doxygen/html/ftv2node.png b/miosix/_doc/doxygen/html/ftv2node.png
new file mode 100644
index 0000000000000000000000000000000000000000..c9f06a57f4cfe0f9851cc1aacd7245f741b53ad1
GIT binary patch
literal 235
zcmeAS@N?(olHy`uVBq!ia0y~yU=UznU=U+rW?*3SX*Rscz`$S-;1lBd|NnmmqCrDL
zgT&<p6Brm67)yfuf*Bm1-ADtOTH+c}5}cn_Ql40p%8;I!W>k=uu3)5RqGz-?&Yh2e
zfk6$V!Z|-TH#M(>Av7m7F-5`M(@h~bH?gQBII%3XNFgk>NWn<YAd@lQ{wx~<1B0li
ri(^Q|t>gp=g9H9N%q$&YJ%<<=^nw^3{c^Q>2y(HftDnm{r-UW|J~lV1

literal 0
HcmV?d00001

diff --git a/miosix/_doc/doxygen/html/ftv2plastnode.png b/miosix/_doc/doxygen/html/ftv2plastnode.png
new file mode 100644
index 0000000000000000000000000000000000000000..0b07e00913d8069ebbb51bd7fd6d70d8bba88f75
GIT binary patch
literal 165
zcmeAS@N?(olHy`uVBq!ia0y~yU=UznU=U+sW?*1EeE3Ku0|NtRfKQ0)|Ns9R8X6cF
z7;NHp>o71dFqQ=Q1v5B2yO9P`Ug8>25}cn_Ql40p%8;I!W>k=uu3)5RqGz-?&Yh2e
zfkDI5#WAGfR&s&@HwT9SN2B0`Mka|wmgEeL2?<O_l3T^NoFWwrbr=}(4l*5j`nGgA
Q0|Nttr>mdKI;Vst0C@~7wg3PC

literal 0
HcmV?d00001

diff --git a/miosix/_doc/doxygen/html/ftv2pnode.png b/miosix/_doc/doxygen/html/ftv2pnode.png
new file mode 100644
index 0000000000000000000000000000000000000000..2001b797ba2b98a4127f1d3efca64aef08bf6d51
GIT binary patch
literal 200
zcmeAS@N?(olHy`uVBq!ia0y~yU=UznU=U+rW?*3SX*Rscz`&pq;1l9{;J^U}yr7|>
zA$XtMOa=x9#*!evU<QY0H_|{RmAFQf1m~xflqVLYGNfmw85QKED;VjS=ou}JbLV4V
zU@-7>aSW-rm7K6Z?*W?=Tb`N)<D*9*U8f%0<7E-B6L#sD?djP$d$x2W%QCiLYb$1k
XUD@pVt4_=3gPh~(>gTe~DWM4f<d-p4

literal 0
HcmV?d00001

diff --git a/miosix/_doc/doxygen/html/ftv2vertline.png b/miosix/_doc/doxygen/html/ftv2vertline.png
new file mode 100644
index 0000000000000000000000000000000000000000..b330f3a33c0085c183ff39fc56b1b274160c1da0
GIT binary patch
literal 229
zcmeAS@N?(olHy`uVBq!ia0y~yU=UznU=U+rW?*3SX*Rscz`$S-;1lBd|NnmmqCrDL
zgT&<p6Brm67)yfuf*Bm1-ADtOTH+c}5}cn_Ql40p%8;I!W>k=uu3)5RqGz-?&Yh2e
zfk6$V!Z|-TH#M(>Av7m7F-5`M(@h~bH?gQBII%3XNFgk>NWn<YAd@lQ{wx~<0|URO
li(^Q|t>gp=g9HB2Yz&Gb49lL{ys!ef)zj6_Wt~$(69DWxH7Ec8

literal 0
HcmV?d00001

diff --git a/miosix/_doc/doxygen/html/functions.html b/miosix/_doc/doxygen/html/functions.html
new file mode 100644
index 00000000..40cf8faa
--- /dev/null
+++ b/miosix/_doc/doxygen/html/functions.html
@@ -0,0 +1,504 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Class Members</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li class="current"><a href="functions.html"><span>All</span></a></li>
+      <li><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs3">
+    <ul class="tablist">
+      <li><a href="#index_b"><span>b</span></a></li>
+      <li><a href="#index_c"><span>c</span></a></li>
+      <li><a href="#index_d"><span>d</span></a></li>
+      <li><a href="#index_e"><span>e</span></a></li>
+      <li><a href="#index_f"><span>f</span></a></li>
+      <li><a href="#index_g"><span>g</span></a></li>
+      <li><a href="#index_i"><span>i</span></a></li>
+      <li><a href="#index_j"><span>j</span></a></li>
+      <li><a href="#index_l"><span>l</span></a></li>
+      <li><a href="#index_m"><span>m</span></a></li>
+      <li><a href="#index_n"><span>n</span></a></li>
+      <li><a href="#index_o"><span>o</span></a></li>
+      <li><a href="#index_p"><span>p</span></a></li>
+      <li><a href="#index_q"><span>q</span></a></li>
+      <li><a href="#index_r"><span>r</span></a></li>
+      <li><a href="#index_s"><span>s</span></a></li>
+      <li><a href="#index_t"><span>t</span></a></li>
+      <li><a href="#index_u"><span>u</span></a></li>
+      <li><a href="#index_v"><span>v</span></a></li>
+      <li><a href="#index_w"><span>w</span></a></li>
+      <li><a href="#index_y"><span>y</span></a></li>
+      <li><a href="#index_~"><span>~</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="contents">
+Here is a list of all documented class members with links to the class documentation for each member:
+
+<h3><a class="anchor" id="index_b"></a>- b -</h3><ul>
+<li>broadcast()
+: <a class="el" href="classmiosix_1_1_condition_variable.html#adb8897a2ff31ecc320ff624285924600">miosix::ConditionVariable</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_c"></a>- c -</h3><ul>
+<li>ceHigh()
+: <a class="el" href="classmiosix_1_1_software_s_p_i.html#a7e2ba605d5a06df4e27c346f23b7559c">miosix::SoftwareSPI&lt; SI, SO, SCK, CE, numNops &gt;</a>
+</li>
+<li>ceLow()
+: <a class="el" href="classmiosix_1_1_software_s_p_i.html#a357a64d9abe58149039a90813a0e710c">miosix::SoftwareSPI&lt; SI, SO, SCK, CE, numNops &gt;</a>
+</li>
+<li>clear()
+: <a class="el" href="classmiosix_1_1_timer.html#adb3725edbcdf2bdf9d3ec7912947af95">miosix::Timer</a>
+</li>
+<li>ConditionVariable()
+: <a class="el" href="classmiosix_1_1_condition_variable.html#a071791f7cf57c7f6eed03b17cbb4bb5e">miosix::ConditionVariable</a>
+</li>
+<li>ControlSchedulerPriority()
+: <a class="el" href="classmiosix_1_1_control_scheduler_priority.html#a4bd3eb3d3d89cf2082f9cbfc09ddb3ed">miosix::ControlSchedulerPriority</a>
+</li>
+<li>create()
+: <a class="el" href="classmiosix_1_1_thread.html#a12d19634d30226cb4441a77b233a5bf2">miosix::Thread</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_d"></a>- d -</h3><ul>
+<li>DEFAULT
+: <a class="el" href="classmiosix_1_1_thread.html#acaef68f0e93f6ad933442d87c210daafa03df086cf889e215d75222d10486b71e">miosix::Thread</a>
+, <a class="el" href="classmiosix_1_1_fast_mutex.html#a981dd8f3190f81f16a773b3de6ae0891a3e00b8e92574e595293459333b1e9182">miosix::FastMutex</a>
+, <a class="el" href="classmiosix_1_1_mutex.html#acdb0fa35e637a14b1504a8f58c8bba2fa84dda8357cdf60e9ce2b81c0f78c36d8">miosix::Mutex</a>
+</li>
+<li>detach()
+: <a class="el" href="classmiosix_1_1_thread.html#ae7817dd59f317a04d3ce3793419d25a4">miosix::Thread</a>
+</li>
+<li>Directory()
+: <a class="el" href="classmiosix_1_1_directory.html#a4511c8727dc6fc565a415d5e258d612b">miosix::Directory</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_e"></a>- e -</h3><ul>
+<li>EDFSchedulerPriority()
+: <a class="el" href="classmiosix_1_1_e_d_f_scheduler_priority.html#ac3b95b8d504e71004d2b64c8f4553074">miosix::EDFSchedulerPriority</a>
+</li>
+<li>ExceptionHandlingData()
+: <a class="el" href="classmiosix_1_1_exception_handling_data.html#a24ba3640e643b05fa9212a213c012101">miosix::ExceptionHandlingData</a>
+</li>
+<li>exists()
+: <a class="el" href="classmiosix_1_1_directory.html#abd96a4eb6ce45869b55ebe5fa1c6c43f">miosix::Directory</a>
+, <a class="el" href="classmiosix_1_1_thread.html#adb06c8f5761db66d1089a61db71dcf92">miosix::Thread</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_f"></a>- f -</h3><ul>
+<li>FastInterruptDisableLock()
+: <a class="el" href="classmiosix_1_1_fast_interrupt_disable_lock.html#ac10ca2ad58013504750550337bdaf6cf">miosix::FastInterruptDisableLock</a>
+</li>
+<li>FastInterruptEnableLock()
+: <a class="el" href="classmiosix_1_1_fast_interrupt_enable_lock.html#a1d0dc9ea0ee452a36d300b84c5e30a83">miosix::FastInterruptEnableLock</a>
+</li>
+<li>FastMutex()
+: <a class="el" href="classmiosix_1_1_fast_mutex.html#aca5cd49cdb704db34488ac7ef16bbd12">miosix::FastMutex</a>
+</li>
+<li>FILENAME_LEN
+: <a class="el" href="classmiosix_1_1_directory.html#a079e87e4cbc008d223a03c54d87577bf">miosix::Directory</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_g"></a>- g -</h3><ul>
+<li>get()
+: <a class="el" href="classmiosix_1_1_control_scheduler_priority.html#ad15885f4c536e5e3ee7b6f95f5542209">miosix::ControlSchedulerPriority</a>
+, <a class="el" href="classmiosix_1_1_e_d_f_scheduler_priority.html#a1e1fa5e57a39e9bbec09eaca3043fe79">miosix::EDFSchedulerPriority</a>
+, <a class="el" href="classmiosix_1_1_lock.html#a28807e63ba20acd9df2b55bccf8af2bf">miosix::Lock&lt; T &gt;</a>
+, <a class="el" href="classmiosix_1_1_unlock.html#a0185d0ca22404fe71d69bf831ff3266c">miosix::Unlock&lt; T &gt;</a>
+, <a class="el" href="classmiosix_1_1_priority_scheduler_priority.html#aaed4edb129dd8ceadc7b36dc63e74cc5">miosix::PrioritySchedulerPriority</a>
+, <a class="el" href="classmiosix_1_1_queue.html#ade3ad87c4c3fdac0a2bdd755ff3c8971">miosix::Queue&lt; T, len &gt;</a>
+</li>
+<li>getAbsoluteFreeHeap()
+: <a class="el" href="classmiosix_1_1_memory_profiling.html#af09789fc33f2a1768cad7fad8cf7488b">miosix::MemoryProfiling</a>
+</li>
+<li>getAbsoluteFreeStack()
+: <a class="el" href="classmiosix_1_1_memory_profiling.html#af653e0d570d4cf3c358871c5c56e7f87">miosix::MemoryProfiling</a>
+</li>
+<li>getCurrentFreeHeap()
+: <a class="el" href="classmiosix_1_1_memory_profiling.html#ab49f252e7a4800d3b076102eb6562fed">miosix::MemoryProfiling</a>
+</li>
+<li>getCurrentFreeStack()
+: <a class="el" href="classmiosix_1_1_memory_profiling.html#ab4a3fc09f4d48b7761c52fbe18e683ee">miosix::MemoryProfiling</a>
+</li>
+<li>getCurrentThread()
+: <a class="el" href="classmiosix_1_1_thread.html#a884bfd106afeb274c339d383702b4aec">miosix::Thread</a>
+</li>
+<li>getHeapSize()
+: <a class="el" href="classmiosix_1_1_memory_profiling.html#acc5945c41f0ccf00c35d256fe8dbf30a">miosix::MemoryProfiling</a>
+</li>
+<li>getPriority()
+: <a class="el" href="classmiosix_1_1_thread.html#aacba6298a092d5335f6dbefe56a611ec">miosix::Thread</a>
+</li>
+<li>getStackSize()
+: <a class="el" href="classmiosix_1_1_memory_profiling.html#ab01517dcb40ae74f6cb17a54baf5d00d">miosix::MemoryProfiling</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_i"></a>- i -</h3><ul>
+<li>init()
+: <a class="el" href="classmiosix_1_1_software_i2_c.html#affca2c005e549cf0d244064d69808313">miosix::SoftwareI2C&lt; SDA, SCL &gt;</a>
+, <a class="el" href="classmiosix_1_1_software_s_p_i.html#a0d8dc57b9c5bbca82f830a286e1e43e3">miosix::SoftwareSPI&lt; SI, SO, SCK, CE, numNops &gt;</a>
+</li>
+<li>instance()
+: <a class="el" href="classmiosix_1_1_filesystem.html#a83ab051fd94eb41f38fb37c4c3c206b9">miosix::Filesystem</a>
+</li>
+<li>InterruptDisableLock()
+: <a class="el" href="classmiosix_1_1_interrupt_disable_lock.html#aeee39d909e99f88789419bb2bbad59c7">miosix::InterruptDisableLock</a>
+</li>
+<li>InterruptEnableLock()
+: <a class="el" href="classmiosix_1_1_interrupt_enable_lock.html#ae02c7390bbaf3839a4401b4ea3172173">miosix::InterruptEnableLock</a>
+</li>
+<li>interval()
+: <a class="el" href="classmiosix_1_1_timer.html#ade4ade4f99dfcb3b6fc0b02b3f112371">miosix::Timer</a>
+</li>
+<li>IRQexists()
+: <a class="el" href="classmiosix_1_1_thread.html#a572b87e4c6174ad4137f964e40bbe515">miosix::Thread</a>
+</li>
+<li>IRQget()
+: <a class="el" href="classmiosix_1_1_queue.html#a545ed38e44e319303e0d657de8195cec">miosix::Queue&lt; T, len &gt;</a>
+</li>
+<li>IRQgetCurrentThread()
+: <a class="el" href="classmiosix_1_1_thread.html#ae3918e86d91bbe3062f907004ba7f579">miosix::Thread</a>
+</li>
+<li>IRQgetPriority()
+: <a class="el" href="classmiosix_1_1_thread.html#a585c7966f59855aafd771c7733a38296">miosix::Thread</a>
+</li>
+<li>IRQinit()
+: <a class="el" href="classmiosix__private_1_1_auxiliary_timer.html#ad1e3b40dd8f36c71f5306b5b3a8b8ea9">miosix_private::AuxiliaryTimer</a>
+</li>
+<li>IRQput()
+: <a class="el" href="classmiosix_1_1_queue.html#aebf1e9ff8643933b679b5d6e2ecfe343">miosix::Queue&lt; T, len &gt;</a>
+</li>
+<li>IRQreset()
+: <a class="el" href="classmiosix_1_1_queue.html#a8d7aea4c62e78d4221dbaab13538e695">miosix::Queue&lt; T, len &gt;</a>
+</li>
+<li>IRQtxComplete()
+: <a class="el" href="classmiosix_1_1_console.html#a138cf29290498b2adc23bad89b7f1225">miosix::Console</a>
+</li>
+<li>IRQwait()
+: <a class="el" href="classmiosix_1_1_thread.html#a6aed14f0f04e69f922aba8f0cf7ac0c6">miosix::Thread</a>
+</li>
+<li>IRQwakeup()
+: <a class="el" href="classmiosix_1_1_thread.html#ab34c3cbac8aa609a5c6e4abc384a9faa">miosix::Thread</a>
+</li>
+<li>IRQwrite()
+: <a class="el" href="classmiosix_1_1_console.html#a24a570ed29296d941477d90637c7f87d">miosix::Console</a>
+</li>
+<li>isDetached()
+: <a class="el" href="classmiosix_1_1_thread.html#afb1d97df689c7104bec35858bbaf4ae6">miosix::Thread</a>
+</li>
+<li>isEmpty()
+: <a class="el" href="classmiosix_1_1_queue.html#a8d18f593639d0d7eef52b6267f83ce34">miosix::Queue&lt; T, len &gt;</a>
+</li>
+<li>isFull()
+: <a class="el" href="classmiosix_1_1_queue.html#affa922a8101a173168daca418eed8c4b">miosix::Queue&lt; T, len &gt;</a>
+</li>
+<li>isMounted()
+: <a class="el" href="classmiosix_1_1_filesystem.html#abaa17c0d791fabf357b0ed7ab7738d94">miosix::Filesystem</a>
+</li>
+<li>isRunning()
+: <a class="el" href="classmiosix_1_1_timer.html#a9644000ad11c2ee1208e597bed72ff5a">miosix::Timer</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_j"></a>- j -</h3><ul>
+<li>join()
+: <a class="el" href="classmiosix_1_1_thread.html#a968b43a36ecdf124d72a5d8ddfa2a3b9">miosix::Thread</a>
+</li>
+<li>JOINABLE
+: <a class="el" href="classmiosix_1_1_thread.html#acaef68f0e93f6ad933442d87c210daafa785d69b0e6b95b648735efe54b588df7">miosix::Thread</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_l"></a>- l -</h3><ul>
+<li>lock()
+: <a class="el" href="classmiosix_1_1_fast_mutex.html#a0ad94f95d78f1316da8b622928b6ff61">miosix::FastMutex</a>
+</li>
+<li>Lock()
+: <a class="el" href="classmiosix_1_1_lock.html#aefcff605f9b21d592febe4c1bffa7807">miosix::Lock&lt; T &gt;</a>
+</li>
+<li>lock()
+: <a class="el" href="classmiosix_1_1_mutex.html#a6ff0ea4734654c2048ef44cec62b5ed6">miosix::Mutex</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_m"></a>- m -</h3><ul>
+<li>mount()
+: <a class="el" href="classmiosix_1_1_filesystem.html#a4506b58ded0e57ce555c9d21a0683801">miosix::Filesystem</a>
+</li>
+<li>Mutex()
+: <a class="el" href="classmiosix_1_1_mutex.html#a63a4d940d2bbb57522dcb23f0fc704a2">miosix::Mutex</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_n"></a>- n -</h3><ul>
+<li>next()
+: <a class="el" href="classmiosix_1_1_directory.html#ace4d75cdcad650213a294c2fe7a41381">miosix::Directory</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_o"></a>- o -</h3><ul>
+<li>open()
+: <a class="el" href="classmiosix_1_1_directory.html#ab3b8f627404f790ca9e309dd90d4e8a0">miosix::Directory</a>
+</li>
+<li>operator()()
+: <a class="el" href="classmiosix_1_1_lower_priority.html#ae223edc017a90abdf70ab8996438cef2">miosix::LowerPriority</a>
+</li>
+<li>Options
+: <a class="el" href="classmiosix_1_1_fast_mutex.html#a981dd8f3190f81f16a773b3de6ae0891">miosix::FastMutex</a>
+, <a class="el" href="classmiosix_1_1_thread.html#acaef68f0e93f6ad933442d87c210daaf">miosix::Thread</a>
+, <a class="el" href="classmiosix_1_1_mutex.html#acdb0fa35e637a14b1504a8f58c8bba2f">miosix::Mutex</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_p"></a>- p -</h3><ul>
+<li>PauseKernelLock()
+: <a class="el" href="classmiosix_1_1_pause_kernel_lock.html#a6666bc670b9eb36ce7797b9b231e4bf8">miosix::PauseKernelLock</a>
+</li>
+<li>PKwakeup()
+: <a class="el" href="classmiosix_1_1_thread.html#a88af678dc4032a5f92da12917947d881">miosix::Thread</a>
+</li>
+<li>print()
+: <a class="el" href="classmiosix_1_1_memory_profiling.html#ad49f0f486487a4fa165883eb45ad5f4e">miosix::MemoryProfiling</a>
+</li>
+<li>PrioritySchedulerPriority()
+: <a class="el" href="classmiosix_1_1_priority_scheduler_priority.html#a206ab3dfa014606172a906aef6c99545">miosix::PrioritySchedulerPriority</a>
+</li>
+<li>put()
+: <a class="el" href="classmiosix_1_1_queue.html#a40eac0f03500a45a6ec3a5af3e0909be">miosix::Queue&lt; T, len &gt;</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_q"></a>- q -</h3><ul>
+<li>Queue()
+: <a class="el" href="classmiosix_1_1_queue.html#a45ac6bfe191bc6d52089215b52863732">miosix::Queue&lt; T, len &gt;</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_r"></a>- r -</h3><ul>
+<li>readChar()
+: <a class="el" href="classmiosix_1_1_console.html#a4c62717fe282211b1b8b13c9897d4036">miosix::Console</a>
+</li>
+<li>readCharNonBlocking()
+: <a class="el" href="classmiosix_1_1_console.html#a7b901496782fb87e9b8f62db0b694c15">miosix::Console</a>
+</li>
+<li>RECURSIVE
+: <a class="el" href="classmiosix_1_1_mutex.html#acdb0fa35e637a14b1504a8f58c8bba2fadadaee3cc9d507680b8652a09c3de4a5">miosix::Mutex</a>
+, <a class="el" href="classmiosix_1_1_fast_mutex.html#a981dd8f3190f81f16a773b3de6ae0891aa70c27d1982ebadac457d4f1c45fa2c8">miosix::FastMutex</a>
+</li>
+<li>recvWithAck()
+: <a class="el" href="classmiosix_1_1_software_i2_c.html#ad16eb98c9e1089e21571d1f7c552a151">miosix::SoftwareI2C&lt; SDA, SCL &gt;</a>
+</li>
+<li>recvWithNack()
+: <a class="el" href="classmiosix_1_1_software_i2_c.html#a48d8aeebedba01e3dc11866710b873fb">miosix::SoftwareI2C&lt; SDA, SCL &gt;</a>
+</li>
+<li>reset()
+: <a class="el" href="classmiosix_1_1_queue.html#a36d52ae7f77126add31096faa97e45b0">miosix::Queue&lt; T, len &gt;</a>
+</li>
+<li>RestartKernelLock()
+: <a class="el" href="classmiosix_1_1_restart_kernel_lock.html#a56fdd23f84789f624cf85cd3ff54d045">miosix::RestartKernelLock</a>
+</li>
+<li>result
+: <a class="el" href="classmiosix_1_1_thread.html#a448486b757b8ede4edaa8edc39962b17">miosix::Thread</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_s"></a>- s -</h3><ul>
+<li>send()
+: <a class="el" href="classmiosix_1_1_software_i2_c.html#a6e0535020ec3adf027a4ac77481e6e01">miosix::SoftwareI2C&lt; SDA, SCL &gt;</a>
+</li>
+<li>sendRecvChar()
+: <a class="el" href="classmiosix_1_1_software_s_p_i.html#a28c74624fdf2699bbd9a16a0b4041df4">miosix::SoftwareSPI&lt; SI, SO, SCK, CE, numNops &gt;</a>
+</li>
+<li>sendRecvLong()
+: <a class="el" href="classmiosix_1_1_software_s_p_i.html#a2338776e2f0242f95b8e416b269ae4e7">miosix::SoftwareSPI&lt; SI, SO, SCK, CE, numNops &gt;</a>
+</li>
+<li>sendRecvShort()
+: <a class="el" href="classmiosix_1_1_software_s_p_i.html#aa4087c723fe51f7172c54c24a51e56c3">miosix::SoftwareSPI&lt; SI, SO, SCK, CE, numNops &gt;</a>
+</li>
+<li>sendStart()
+: <a class="el" href="classmiosix_1_1_software_i2_c.html#abcbeb09130637bce45c8827e8098a5ff">miosix::SoftwareI2C&lt; SDA, SCL &gt;</a>
+</li>
+<li>sendStop()
+: <a class="el" href="classmiosix_1_1_software_i2_c.html#a66a312f667a52046e45035588caff0b4">miosix::SoftwareI2C&lt; SDA, SCL &gt;</a>
+</li>
+<li>setPriority()
+: <a class="el" href="classmiosix_1_1_thread.html#af6c4237506c533c00a0144632685b17d">miosix::Thread</a>
+</li>
+<li>signal()
+: <a class="el" href="classmiosix_1_1_condition_variable.html#adbc51a45a48f6afe98fea4581fc4f16d">miosix::ConditionVariable</a>
+</li>
+<li>sleep()
+: <a class="el" href="classmiosix_1_1_thread.html#ad7f738dc69a918960fe814a062696c5c">miosix::Thread</a>
+</li>
+<li>sleepUntil()
+: <a class="el" href="classmiosix_1_1_thread.html#aac116a322826366c7b3269db3ab4be73">miosix::Thread</a>
+</li>
+<li>start()
+: <a class="el" href="classmiosix_1_1_timer.html#afe2e62decbd592394b3278febf6097f7">miosix::Timer</a>
+</li>
+<li>stop()
+: <a class="el" href="classmiosix_1_1_timer.html#ad14fa7e00b7d9646b31bb85ecd475671">miosix::Timer</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_t"></a>- t -</h3><ul>
+<li>terminate()
+: <a class="el" href="classmiosix_1_1_thread.html#ae086b5bf2b3b55972ad696ec820c8f5e">miosix::Thread</a>
+</li>
+<li>testTerminate()
+: <a class="el" href="classmiosix_1_1_thread.html#a0ef492878827009d2d55442266d13b99">miosix::Thread</a>
+</li>
+<li>Timer()
+: <a class="el" href="classmiosix_1_1_timer.html#a18fe7d4606d1370054aee4dbc956f3a2">miosix::Timer</a>
+</li>
+<li>tryLock()
+: <a class="el" href="classmiosix_1_1_fast_mutex.html#a41f2a4d790a2a7ee8695768d2deae95a">miosix::FastMutex</a>
+, <a class="el" href="classmiosix_1_1_mutex.html#a3e7e51aa095528a36e49dd5f672ddc74">miosix::Mutex</a>
+</li>
+<li>txComplete()
+: <a class="el" href="classmiosix_1_1_console.html#a139a35d7febd53431f04fd83c7d2955b">miosix::Console</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_u"></a>- u -</h3><ul>
+<li>umount()
+: <a class="el" href="classmiosix_1_1_filesystem.html#a47abdaf552093b29eb78c722789324e7">miosix::Filesystem</a>
+</li>
+<li>Unlock()
+: <a class="el" href="classmiosix_1_1_unlock.html#a4c3c1864d2ba24597b2bd4913a36e248">miosix::Unlock&lt; T &gt;</a>
+</li>
+<li>unlock()
+: <a class="el" href="classmiosix_1_1_mutex.html#a10974326b33d887fa7ad1f910b70ed50">miosix::Mutex</a>
+, <a class="el" href="classmiosix_1_1_fast_mutex.html#a080ce00d76c005a73917038908fd824c">miosix::FastMutex</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_v"></a>- v -</h3><ul>
+<li>validate()
+: <a class="el" href="classmiosix_1_1_control_scheduler_priority.html#ae7b24bc4e0861dc5ca7ae50a758f9244">miosix::ControlSchedulerPriority</a>
+, <a class="el" href="classmiosix_1_1_priority_scheduler_priority.html#a17300acc93554e4a115a40f99a84f392">miosix::PrioritySchedulerPriority</a>
+, <a class="el" href="classmiosix_1_1_e_d_f_scheduler_priority.html#a87c2a3428d3d3af53391494e81cf3687">miosix::EDFSchedulerPriority</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_w"></a>- w -</h3><ul>
+<li>wait()
+: <a class="el" href="classmiosix_1_1_thread.html#a435fe4527c1fdfcbebf886cd748a3fd4">miosix::Thread</a>
+, <a class="el" href="classmiosix_1_1_condition_variable.html#ae1e16bdd5262ac2918117db06ed01cd3">miosix::ConditionVariable</a>
+</li>
+<li>waitingForJoin
+: <a class="el" href="classmiosix_1_1_thread.html#a4d8096414686bc7519454101f55306d2">miosix::Thread</a>
+</li>
+<li>waitUntilNotEmpty()
+: <a class="el" href="classmiosix_1_1_queue.html#af77abf62e5999b15fa5fcb3101f4801d">miosix::Queue&lt; T, len &gt;</a>
+</li>
+<li>waitUntilNotFull()
+: <a class="el" href="classmiosix_1_1_queue.html#af3809d4c8d0ae31774ca5e985b1810e5">miosix::Queue&lt; T, len &gt;</a>
+</li>
+<li>wakeup()
+: <a class="el" href="classmiosix_1_1_thread.html#af19b8a2ab852ea771a2e2b95bb0ba2a8">miosix::Thread</a>
+</li>
+<li>write()
+: <a class="el" href="classmiosix_1_1_console.html#adcfaf32a1fdaafdf3340095a906b836f">miosix::Console</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_y"></a>- y -</h3><ul>
+<li>yield()
+: <a class="el" href="classmiosix_1_1_thread.html#a75823b1288a7defcb715fd6591a23b2d">miosix::Thread</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_0x7e"></a>- ~ -</h3><ul>
+<li>~ExceptionHandlingData()
+: <a class="el" href="classmiosix_1_1_exception_handling_data.html#a61144e6db2029974d7988aa079db59e3">miosix::ExceptionHandlingData</a>
+</li>
+<li>~FastInterruptDisableLock()
+: <a class="el" href="classmiosix_1_1_fast_interrupt_disable_lock.html#aa060c8983f93de1724b51c361de76477">miosix::FastInterruptDisableLock</a>
+</li>
+<li>~FastInterruptEnableLock()
+: <a class="el" href="classmiosix_1_1_fast_interrupt_enable_lock.html#afb021a03eb3c46a8b8ee8d7854190f8c">miosix::FastInterruptEnableLock</a>
+</li>
+<li>~FastMutex()
+: <a class="el" href="classmiosix_1_1_fast_mutex.html#ad320fd1b0d905f2d4fa9e8e0567181d2">miosix::FastMutex</a>
+</li>
+<li>~InterruptDisableLock()
+: <a class="el" href="classmiosix_1_1_interrupt_disable_lock.html#a8989ce6efe8d4930cf045e01b157b288">miosix::InterruptDisableLock</a>
+</li>
+<li>~InterruptEnableLock()
+: <a class="el" href="classmiosix_1_1_interrupt_enable_lock.html#a0e1b60ac838afe74d1f7a906e3bb2282">miosix::InterruptEnableLock</a>
+</li>
+<li>~Lock()
+: <a class="el" href="classmiosix_1_1_lock.html#ad8e9566c5eead737472fda2fce2a0c88">miosix::Lock&lt; T &gt;</a>
+</li>
+<li>~PauseKernelLock()
+: <a class="el" href="classmiosix_1_1_pause_kernel_lock.html#a0980986878a2bc171af039d70a1e9e7a">miosix::PauseKernelLock</a>
+</li>
+<li>~RestartKernelLock()
+: <a class="el" href="classmiosix_1_1_restart_kernel_lock.html#ac026033adfae754118e6025ad7ce01bb">miosix::RestartKernelLock</a>
+</li>
+<li>~Unlock()
+: <a class="el" href="classmiosix_1_1_unlock.html#a53f826f17c0c7792d296c4a8dff4fef5">miosix::Unlock&lt; T &gt;</a>
+</li>
+</ul>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/functions_enum.html b/miosix/_doc/doxygen/html/functions_enum.html
new file mode 100644
index 00000000..0c0ada1e
--- /dev/null
+++ b/miosix/_doc/doxygen/html/functions_enum.html
@@ -0,0 +1,50 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Class Members - Enumerations</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="functions.html"><span>All</span></a></li>
+      <li><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li class="current"><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="contents">
+&nbsp;<ul>
+<li>Options
+: <a class="el" href="classmiosix_1_1_thread.html#acaef68f0e93f6ad933442d87c210daaf">miosix::Thread</a>
+, <a class="el" href="classmiosix_1_1_mutex.html#acdb0fa35e637a14b1504a8f58c8bba2f">miosix::Mutex</a>
+, <a class="el" href="classmiosix_1_1_fast_mutex.html#a981dd8f3190f81f16a773b3de6ae0891">miosix::FastMutex</a>
+</li>
+</ul>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/functions_eval.html b/miosix/_doc/doxygen/html/functions_eval.html
new file mode 100644
index 00000000..6874240a
--- /dev/null
+++ b/miosix/_doc/doxygen/html/functions_eval.html
@@ -0,0 +1,57 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Class Members - Enumerator</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="functions.html"><span>All</span></a></li>
+      <li><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li class="current"><a href="functions_eval.html"><span>Enumerator</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="contents">
+&nbsp;<ul>
+<li>DEFAULT
+: <a class="el" href="classmiosix_1_1_thread.html#acaef68f0e93f6ad933442d87c210daafa03df086cf889e215d75222d10486b71e">miosix::Thread</a>
+, <a class="el" href="classmiosix_1_1_mutex.html#acdb0fa35e637a14b1504a8f58c8bba2fa84dda8357cdf60e9ce2b81c0f78c36d8">miosix::Mutex</a>
+, <a class="el" href="classmiosix_1_1_fast_mutex.html#a981dd8f3190f81f16a773b3de6ae0891a3e00b8e92574e595293459333b1e9182">miosix::FastMutex</a>
+</li>
+<li>JOINABLE
+: <a class="el" href="classmiosix_1_1_thread.html#acaef68f0e93f6ad933442d87c210daafa785d69b0e6b95b648735efe54b588df7">miosix::Thread</a>
+</li>
+<li>RECURSIVE
+: <a class="el" href="classmiosix_1_1_fast_mutex.html#a981dd8f3190f81f16a773b3de6ae0891aa70c27d1982ebadac457d4f1c45fa2c8">miosix::FastMutex</a>
+, <a class="el" href="classmiosix_1_1_mutex.html#acdb0fa35e637a14b1504a8f58c8bba2fadadaee3cc9d507680b8652a09c3de4a5">miosix::Mutex</a>
+</li>
+</ul>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/functions_func.html b/miosix/_doc/doxygen/html/functions_func.html
new file mode 100644
index 00000000..1a00a9a9
--- /dev/null
+++ b/miosix/_doc/doxygen/html/functions_func.html
@@ -0,0 +1,478 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Class Members - Functions</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="functions.html"><span>All</span></a></li>
+      <li class="current"><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs3">
+    <ul class="tablist">
+      <li><a href="#index_b"><span>b</span></a></li>
+      <li><a href="#index_c"><span>c</span></a></li>
+      <li><a href="#index_d"><span>d</span></a></li>
+      <li><a href="#index_e"><span>e</span></a></li>
+      <li><a href="#index_f"><span>f</span></a></li>
+      <li><a href="#index_g"><span>g</span></a></li>
+      <li><a href="#index_i"><span>i</span></a></li>
+      <li><a href="#index_j"><span>j</span></a></li>
+      <li><a href="#index_l"><span>l</span></a></li>
+      <li><a href="#index_m"><span>m</span></a></li>
+      <li><a href="#index_n"><span>n</span></a></li>
+      <li><a href="#index_o"><span>o</span></a></li>
+      <li><a href="#index_p"><span>p</span></a></li>
+      <li><a href="#index_q"><span>q</span></a></li>
+      <li><a href="#index_r"><span>r</span></a></li>
+      <li><a href="#index_s"><span>s</span></a></li>
+      <li><a href="#index_t"><span>t</span></a></li>
+      <li><a href="#index_u"><span>u</span></a></li>
+      <li><a href="#index_v"><span>v</span></a></li>
+      <li><a href="#index_w"><span>w</span></a></li>
+      <li><a href="#index_y"><span>y</span></a></li>
+      <li><a href="#index_~"><span>~</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="contents">
+&nbsp;
+
+<h3><a class="anchor" id="index_b"></a>- b -</h3><ul>
+<li>broadcast()
+: <a class="el" href="classmiosix_1_1_condition_variable.html#adb8897a2ff31ecc320ff624285924600">miosix::ConditionVariable</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_c"></a>- c -</h3><ul>
+<li>ceHigh()
+: <a class="el" href="classmiosix_1_1_software_s_p_i.html#a7e2ba605d5a06df4e27c346f23b7559c">miosix::SoftwareSPI&lt; SI, SO, SCK, CE, numNops &gt;</a>
+</li>
+<li>ceLow()
+: <a class="el" href="classmiosix_1_1_software_s_p_i.html#a357a64d9abe58149039a90813a0e710c">miosix::SoftwareSPI&lt; SI, SO, SCK, CE, numNops &gt;</a>
+</li>
+<li>clear()
+: <a class="el" href="classmiosix_1_1_timer.html#adb3725edbcdf2bdf9d3ec7912947af95">miosix::Timer</a>
+</li>
+<li>ConditionVariable()
+: <a class="el" href="classmiosix_1_1_condition_variable.html#a071791f7cf57c7f6eed03b17cbb4bb5e">miosix::ConditionVariable</a>
+</li>
+<li>ControlSchedulerPriority()
+: <a class="el" href="classmiosix_1_1_control_scheduler_priority.html#a4bd3eb3d3d89cf2082f9cbfc09ddb3ed">miosix::ControlSchedulerPriority</a>
+</li>
+<li>create()
+: <a class="el" href="classmiosix_1_1_thread.html#a12d19634d30226cb4441a77b233a5bf2">miosix::Thread</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_d"></a>- d -</h3><ul>
+<li>detach()
+: <a class="el" href="classmiosix_1_1_thread.html#ae7817dd59f317a04d3ce3793419d25a4">miosix::Thread</a>
+</li>
+<li>Directory()
+: <a class="el" href="classmiosix_1_1_directory.html#a4511c8727dc6fc565a415d5e258d612b">miosix::Directory</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_e"></a>- e -</h3><ul>
+<li>EDFSchedulerPriority()
+: <a class="el" href="classmiosix_1_1_e_d_f_scheduler_priority.html#ac3b95b8d504e71004d2b64c8f4553074">miosix::EDFSchedulerPriority</a>
+</li>
+<li>ExceptionHandlingData()
+: <a class="el" href="classmiosix_1_1_exception_handling_data.html#a24ba3640e643b05fa9212a213c012101">miosix::ExceptionHandlingData</a>
+</li>
+<li>exists()
+: <a class="el" href="classmiosix_1_1_directory.html#abd96a4eb6ce45869b55ebe5fa1c6c43f">miosix::Directory</a>
+, <a class="el" href="classmiosix_1_1_thread.html#adb06c8f5761db66d1089a61db71dcf92">miosix::Thread</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_f"></a>- f -</h3><ul>
+<li>FastInterruptDisableLock()
+: <a class="el" href="classmiosix_1_1_fast_interrupt_disable_lock.html#ac10ca2ad58013504750550337bdaf6cf">miosix::FastInterruptDisableLock</a>
+</li>
+<li>FastInterruptEnableLock()
+: <a class="el" href="classmiosix_1_1_fast_interrupt_enable_lock.html#a1d0dc9ea0ee452a36d300b84c5e30a83">miosix::FastInterruptEnableLock</a>
+</li>
+<li>FastMutex()
+: <a class="el" href="classmiosix_1_1_fast_mutex.html#aca5cd49cdb704db34488ac7ef16bbd12">miosix::FastMutex</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_g"></a>- g -</h3><ul>
+<li>get()
+: <a class="el" href="classmiosix_1_1_control_scheduler_priority.html#ad15885f4c536e5e3ee7b6f95f5542209">miosix::ControlSchedulerPriority</a>
+, <a class="el" href="classmiosix_1_1_e_d_f_scheduler_priority.html#a1e1fa5e57a39e9bbec09eaca3043fe79">miosix::EDFSchedulerPriority</a>
+, <a class="el" href="classmiosix_1_1_lock.html#a28807e63ba20acd9df2b55bccf8af2bf">miosix::Lock&lt; T &gt;</a>
+, <a class="el" href="classmiosix_1_1_unlock.html#a0185d0ca22404fe71d69bf831ff3266c">miosix::Unlock&lt; T &gt;</a>
+, <a class="el" href="classmiosix_1_1_priority_scheduler_priority.html#aaed4edb129dd8ceadc7b36dc63e74cc5">miosix::PrioritySchedulerPriority</a>
+, <a class="el" href="classmiosix_1_1_queue.html#ade3ad87c4c3fdac0a2bdd755ff3c8971">miosix::Queue&lt; T, len &gt;</a>
+</li>
+<li>getAbsoluteFreeHeap()
+: <a class="el" href="classmiosix_1_1_memory_profiling.html#af09789fc33f2a1768cad7fad8cf7488b">miosix::MemoryProfiling</a>
+</li>
+<li>getAbsoluteFreeStack()
+: <a class="el" href="classmiosix_1_1_memory_profiling.html#af653e0d570d4cf3c358871c5c56e7f87">miosix::MemoryProfiling</a>
+</li>
+<li>getCurrentFreeHeap()
+: <a class="el" href="classmiosix_1_1_memory_profiling.html#ab49f252e7a4800d3b076102eb6562fed">miosix::MemoryProfiling</a>
+</li>
+<li>getCurrentFreeStack()
+: <a class="el" href="classmiosix_1_1_memory_profiling.html#ab4a3fc09f4d48b7761c52fbe18e683ee">miosix::MemoryProfiling</a>
+</li>
+<li>getCurrentThread()
+: <a class="el" href="classmiosix_1_1_thread.html#a884bfd106afeb274c339d383702b4aec">miosix::Thread</a>
+</li>
+<li>getHeapSize()
+: <a class="el" href="classmiosix_1_1_memory_profiling.html#acc5945c41f0ccf00c35d256fe8dbf30a">miosix::MemoryProfiling</a>
+</li>
+<li>getPriority()
+: <a class="el" href="classmiosix_1_1_thread.html#aacba6298a092d5335f6dbefe56a611ec">miosix::Thread</a>
+</li>
+<li>getStackSize()
+: <a class="el" href="classmiosix_1_1_memory_profiling.html#ab01517dcb40ae74f6cb17a54baf5d00d">miosix::MemoryProfiling</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_i"></a>- i -</h3><ul>
+<li>init()
+: <a class="el" href="classmiosix_1_1_software_i2_c.html#affca2c005e549cf0d244064d69808313">miosix::SoftwareI2C&lt; SDA, SCL &gt;</a>
+, <a class="el" href="classmiosix_1_1_software_s_p_i.html#a0d8dc57b9c5bbca82f830a286e1e43e3">miosix::SoftwareSPI&lt; SI, SO, SCK, CE, numNops &gt;</a>
+</li>
+<li>instance()
+: <a class="el" href="classmiosix_1_1_filesystem.html#a83ab051fd94eb41f38fb37c4c3c206b9">miosix::Filesystem</a>
+</li>
+<li>InterruptDisableLock()
+: <a class="el" href="classmiosix_1_1_interrupt_disable_lock.html#aeee39d909e99f88789419bb2bbad59c7">miosix::InterruptDisableLock</a>
+</li>
+<li>InterruptEnableLock()
+: <a class="el" href="classmiosix_1_1_interrupt_enable_lock.html#ae02c7390bbaf3839a4401b4ea3172173">miosix::InterruptEnableLock</a>
+</li>
+<li>interval()
+: <a class="el" href="classmiosix_1_1_timer.html#ade4ade4f99dfcb3b6fc0b02b3f112371">miosix::Timer</a>
+</li>
+<li>IRQexists()
+: <a class="el" href="classmiosix_1_1_thread.html#a572b87e4c6174ad4137f964e40bbe515">miosix::Thread</a>
+</li>
+<li>IRQget()
+: <a class="el" href="classmiosix_1_1_queue.html#a545ed38e44e319303e0d657de8195cec">miosix::Queue&lt; T, len &gt;</a>
+</li>
+<li>IRQgetCurrentThread()
+: <a class="el" href="classmiosix_1_1_thread.html#ae3918e86d91bbe3062f907004ba7f579">miosix::Thread</a>
+</li>
+<li>IRQgetPriority()
+: <a class="el" href="classmiosix_1_1_thread.html#a585c7966f59855aafd771c7733a38296">miosix::Thread</a>
+</li>
+<li>IRQinit()
+: <a class="el" href="classmiosix__private_1_1_auxiliary_timer.html#ad1e3b40dd8f36c71f5306b5b3a8b8ea9">miosix_private::AuxiliaryTimer</a>
+</li>
+<li>IRQput()
+: <a class="el" href="classmiosix_1_1_queue.html#aebf1e9ff8643933b679b5d6e2ecfe343">miosix::Queue&lt; T, len &gt;</a>
+</li>
+<li>IRQreset()
+: <a class="el" href="classmiosix_1_1_queue.html#a8d7aea4c62e78d4221dbaab13538e695">miosix::Queue&lt; T, len &gt;</a>
+</li>
+<li>IRQtxComplete()
+: <a class="el" href="classmiosix_1_1_console.html#a138cf29290498b2adc23bad89b7f1225">miosix::Console</a>
+</li>
+<li>IRQwait()
+: <a class="el" href="classmiosix_1_1_thread.html#a6aed14f0f04e69f922aba8f0cf7ac0c6">miosix::Thread</a>
+</li>
+<li>IRQwakeup()
+: <a class="el" href="classmiosix_1_1_thread.html#ab34c3cbac8aa609a5c6e4abc384a9faa">miosix::Thread</a>
+</li>
+<li>IRQwrite()
+: <a class="el" href="classmiosix_1_1_console.html#a24a570ed29296d941477d90637c7f87d">miosix::Console</a>
+</li>
+<li>isDetached()
+: <a class="el" href="classmiosix_1_1_thread.html#afb1d97df689c7104bec35858bbaf4ae6">miosix::Thread</a>
+</li>
+<li>isEmpty()
+: <a class="el" href="classmiosix_1_1_queue.html#a8d18f593639d0d7eef52b6267f83ce34">miosix::Queue&lt; T, len &gt;</a>
+</li>
+<li>isFull()
+: <a class="el" href="classmiosix_1_1_queue.html#affa922a8101a173168daca418eed8c4b">miosix::Queue&lt; T, len &gt;</a>
+</li>
+<li>isMounted()
+: <a class="el" href="classmiosix_1_1_filesystem.html#abaa17c0d791fabf357b0ed7ab7738d94">miosix::Filesystem</a>
+</li>
+<li>isRunning()
+: <a class="el" href="classmiosix_1_1_timer.html#a9644000ad11c2ee1208e597bed72ff5a">miosix::Timer</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_j"></a>- j -</h3><ul>
+<li>join()
+: <a class="el" href="classmiosix_1_1_thread.html#a968b43a36ecdf124d72a5d8ddfa2a3b9">miosix::Thread</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_l"></a>- l -</h3><ul>
+<li>lock()
+: <a class="el" href="classmiosix_1_1_fast_mutex.html#a0ad94f95d78f1316da8b622928b6ff61">miosix::FastMutex</a>
+</li>
+<li>Lock()
+: <a class="el" href="classmiosix_1_1_lock.html#aefcff605f9b21d592febe4c1bffa7807">miosix::Lock&lt; T &gt;</a>
+</li>
+<li>lock()
+: <a class="el" href="classmiosix_1_1_mutex.html#a6ff0ea4734654c2048ef44cec62b5ed6">miosix::Mutex</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_m"></a>- m -</h3><ul>
+<li>mount()
+: <a class="el" href="classmiosix_1_1_filesystem.html#a4506b58ded0e57ce555c9d21a0683801">miosix::Filesystem</a>
+</li>
+<li>Mutex()
+: <a class="el" href="classmiosix_1_1_mutex.html#a63a4d940d2bbb57522dcb23f0fc704a2">miosix::Mutex</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_n"></a>- n -</h3><ul>
+<li>next()
+: <a class="el" href="classmiosix_1_1_directory.html#ace4d75cdcad650213a294c2fe7a41381">miosix::Directory</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_o"></a>- o -</h3><ul>
+<li>open()
+: <a class="el" href="classmiosix_1_1_directory.html#ab3b8f627404f790ca9e309dd90d4e8a0">miosix::Directory</a>
+</li>
+<li>operator()()
+: <a class="el" href="classmiosix_1_1_lower_priority.html#ae223edc017a90abdf70ab8996438cef2">miosix::LowerPriority</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_p"></a>- p -</h3><ul>
+<li>PauseKernelLock()
+: <a class="el" href="classmiosix_1_1_pause_kernel_lock.html#a6666bc670b9eb36ce7797b9b231e4bf8">miosix::PauseKernelLock</a>
+</li>
+<li>PKwakeup()
+: <a class="el" href="classmiosix_1_1_thread.html#a88af678dc4032a5f92da12917947d881">miosix::Thread</a>
+</li>
+<li>print()
+: <a class="el" href="classmiosix_1_1_memory_profiling.html#ad49f0f486487a4fa165883eb45ad5f4e">miosix::MemoryProfiling</a>
+</li>
+<li>PrioritySchedulerPriority()
+: <a class="el" href="classmiosix_1_1_priority_scheduler_priority.html#a206ab3dfa014606172a906aef6c99545">miosix::PrioritySchedulerPriority</a>
+</li>
+<li>put()
+: <a class="el" href="classmiosix_1_1_queue.html#a40eac0f03500a45a6ec3a5af3e0909be">miosix::Queue&lt; T, len &gt;</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_q"></a>- q -</h3><ul>
+<li>Queue()
+: <a class="el" href="classmiosix_1_1_queue.html#a45ac6bfe191bc6d52089215b52863732">miosix::Queue&lt; T, len &gt;</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_r"></a>- r -</h3><ul>
+<li>readChar()
+: <a class="el" href="classmiosix_1_1_console.html#a4c62717fe282211b1b8b13c9897d4036">miosix::Console</a>
+</li>
+<li>readCharNonBlocking()
+: <a class="el" href="classmiosix_1_1_console.html#a7b901496782fb87e9b8f62db0b694c15">miosix::Console</a>
+</li>
+<li>recvWithAck()
+: <a class="el" href="classmiosix_1_1_software_i2_c.html#ad16eb98c9e1089e21571d1f7c552a151">miosix::SoftwareI2C&lt; SDA, SCL &gt;</a>
+</li>
+<li>recvWithNack()
+: <a class="el" href="classmiosix_1_1_software_i2_c.html#a48d8aeebedba01e3dc11866710b873fb">miosix::SoftwareI2C&lt; SDA, SCL &gt;</a>
+</li>
+<li>reset()
+: <a class="el" href="classmiosix_1_1_queue.html#a36d52ae7f77126add31096faa97e45b0">miosix::Queue&lt; T, len &gt;</a>
+</li>
+<li>RestartKernelLock()
+: <a class="el" href="classmiosix_1_1_restart_kernel_lock.html#a56fdd23f84789f624cf85cd3ff54d045">miosix::RestartKernelLock</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_s"></a>- s -</h3><ul>
+<li>send()
+: <a class="el" href="classmiosix_1_1_software_i2_c.html#a6e0535020ec3adf027a4ac77481e6e01">miosix::SoftwareI2C&lt; SDA, SCL &gt;</a>
+</li>
+<li>sendRecvChar()
+: <a class="el" href="classmiosix_1_1_software_s_p_i.html#a28c74624fdf2699bbd9a16a0b4041df4">miosix::SoftwareSPI&lt; SI, SO, SCK, CE, numNops &gt;</a>
+</li>
+<li>sendRecvLong()
+: <a class="el" href="classmiosix_1_1_software_s_p_i.html#a2338776e2f0242f95b8e416b269ae4e7">miosix::SoftwareSPI&lt; SI, SO, SCK, CE, numNops &gt;</a>
+</li>
+<li>sendRecvShort()
+: <a class="el" href="classmiosix_1_1_software_s_p_i.html#aa4087c723fe51f7172c54c24a51e56c3">miosix::SoftwareSPI&lt; SI, SO, SCK, CE, numNops &gt;</a>
+</li>
+<li>sendStart()
+: <a class="el" href="classmiosix_1_1_software_i2_c.html#abcbeb09130637bce45c8827e8098a5ff">miosix::SoftwareI2C&lt; SDA, SCL &gt;</a>
+</li>
+<li>sendStop()
+: <a class="el" href="classmiosix_1_1_software_i2_c.html#a66a312f667a52046e45035588caff0b4">miosix::SoftwareI2C&lt; SDA, SCL &gt;</a>
+</li>
+<li>setPriority()
+: <a class="el" href="classmiosix_1_1_thread.html#af6c4237506c533c00a0144632685b17d">miosix::Thread</a>
+</li>
+<li>signal()
+: <a class="el" href="classmiosix_1_1_condition_variable.html#adbc51a45a48f6afe98fea4581fc4f16d">miosix::ConditionVariable</a>
+</li>
+<li>sleep()
+: <a class="el" href="classmiosix_1_1_thread.html#ad7f738dc69a918960fe814a062696c5c">miosix::Thread</a>
+</li>
+<li>sleepUntil()
+: <a class="el" href="classmiosix_1_1_thread.html#aac116a322826366c7b3269db3ab4be73">miosix::Thread</a>
+</li>
+<li>start()
+: <a class="el" href="classmiosix_1_1_timer.html#afe2e62decbd592394b3278febf6097f7">miosix::Timer</a>
+</li>
+<li>stop()
+: <a class="el" href="classmiosix_1_1_timer.html#ad14fa7e00b7d9646b31bb85ecd475671">miosix::Timer</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_t"></a>- t -</h3><ul>
+<li>terminate()
+: <a class="el" href="classmiosix_1_1_thread.html#ae086b5bf2b3b55972ad696ec820c8f5e">miosix::Thread</a>
+</li>
+<li>testTerminate()
+: <a class="el" href="classmiosix_1_1_thread.html#a0ef492878827009d2d55442266d13b99">miosix::Thread</a>
+</li>
+<li>Timer()
+: <a class="el" href="classmiosix_1_1_timer.html#a18fe7d4606d1370054aee4dbc956f3a2">miosix::Timer</a>
+</li>
+<li>tryLock()
+: <a class="el" href="classmiosix_1_1_fast_mutex.html#a41f2a4d790a2a7ee8695768d2deae95a">miosix::FastMutex</a>
+, <a class="el" href="classmiosix_1_1_mutex.html#a3e7e51aa095528a36e49dd5f672ddc74">miosix::Mutex</a>
+</li>
+<li>txComplete()
+: <a class="el" href="classmiosix_1_1_console.html#a139a35d7febd53431f04fd83c7d2955b">miosix::Console</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_u"></a>- u -</h3><ul>
+<li>umount()
+: <a class="el" href="classmiosix_1_1_filesystem.html#a47abdaf552093b29eb78c722789324e7">miosix::Filesystem</a>
+</li>
+<li>Unlock()
+: <a class="el" href="classmiosix_1_1_unlock.html#a4c3c1864d2ba24597b2bd4913a36e248">miosix::Unlock&lt; T &gt;</a>
+</li>
+<li>unlock()
+: <a class="el" href="classmiosix_1_1_mutex.html#a10974326b33d887fa7ad1f910b70ed50">miosix::Mutex</a>
+, <a class="el" href="classmiosix_1_1_fast_mutex.html#a080ce00d76c005a73917038908fd824c">miosix::FastMutex</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_v"></a>- v -</h3><ul>
+<li>validate()
+: <a class="el" href="classmiosix_1_1_control_scheduler_priority.html#ae7b24bc4e0861dc5ca7ae50a758f9244">miosix::ControlSchedulerPriority</a>
+, <a class="el" href="classmiosix_1_1_priority_scheduler_priority.html#a17300acc93554e4a115a40f99a84f392">miosix::PrioritySchedulerPriority</a>
+, <a class="el" href="classmiosix_1_1_e_d_f_scheduler_priority.html#a87c2a3428d3d3af53391494e81cf3687">miosix::EDFSchedulerPriority</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_w"></a>- w -</h3><ul>
+<li>wait()
+: <a class="el" href="classmiosix_1_1_thread.html#a435fe4527c1fdfcbebf886cd748a3fd4">miosix::Thread</a>
+, <a class="el" href="classmiosix_1_1_condition_variable.html#ae1e16bdd5262ac2918117db06ed01cd3">miosix::ConditionVariable</a>
+</li>
+<li>waitUntilNotEmpty()
+: <a class="el" href="classmiosix_1_1_queue.html#af77abf62e5999b15fa5fcb3101f4801d">miosix::Queue&lt; T, len &gt;</a>
+</li>
+<li>waitUntilNotFull()
+: <a class="el" href="classmiosix_1_1_queue.html#af3809d4c8d0ae31774ca5e985b1810e5">miosix::Queue&lt; T, len &gt;</a>
+</li>
+<li>wakeup()
+: <a class="el" href="classmiosix_1_1_thread.html#af19b8a2ab852ea771a2e2b95bb0ba2a8">miosix::Thread</a>
+</li>
+<li>write()
+: <a class="el" href="classmiosix_1_1_console.html#ad064039cfbaa9db84cb021944aa85bd1">miosix::Console</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_y"></a>- y -</h3><ul>
+<li>yield()
+: <a class="el" href="classmiosix_1_1_thread.html#a75823b1288a7defcb715fd6591a23b2d">miosix::Thread</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_0x7e"></a>- ~ -</h3><ul>
+<li>~ExceptionHandlingData()
+: <a class="el" href="classmiosix_1_1_exception_handling_data.html#a61144e6db2029974d7988aa079db59e3">miosix::ExceptionHandlingData</a>
+</li>
+<li>~FastInterruptDisableLock()
+: <a class="el" href="classmiosix_1_1_fast_interrupt_disable_lock.html#aa060c8983f93de1724b51c361de76477">miosix::FastInterruptDisableLock</a>
+</li>
+<li>~FastInterruptEnableLock()
+: <a class="el" href="classmiosix_1_1_fast_interrupt_enable_lock.html#afb021a03eb3c46a8b8ee8d7854190f8c">miosix::FastInterruptEnableLock</a>
+</li>
+<li>~FastMutex()
+: <a class="el" href="classmiosix_1_1_fast_mutex.html#ad320fd1b0d905f2d4fa9e8e0567181d2">miosix::FastMutex</a>
+</li>
+<li>~InterruptDisableLock()
+: <a class="el" href="classmiosix_1_1_interrupt_disable_lock.html#a8989ce6efe8d4930cf045e01b157b288">miosix::InterruptDisableLock</a>
+</li>
+<li>~InterruptEnableLock()
+: <a class="el" href="classmiosix_1_1_interrupt_enable_lock.html#a0e1b60ac838afe74d1f7a906e3bb2282">miosix::InterruptEnableLock</a>
+</li>
+<li>~Lock()
+: <a class="el" href="classmiosix_1_1_lock.html#ad8e9566c5eead737472fda2fce2a0c88">miosix::Lock&lt; T &gt;</a>
+</li>
+<li>~PauseKernelLock()
+: <a class="el" href="classmiosix_1_1_pause_kernel_lock.html#a0980986878a2bc171af039d70a1e9e7a">miosix::PauseKernelLock</a>
+</li>
+<li>~RestartKernelLock()
+: <a class="el" href="classmiosix_1_1_restart_kernel_lock.html#ac026033adfae754118e6025ad7ce01bb">miosix::RestartKernelLock</a>
+</li>
+<li>~Unlock()
+: <a class="el" href="classmiosix_1_1_unlock.html#a53f826f17c0c7792d296c4a8dff4fef5">miosix::Unlock&lt; T &gt;</a>
+</li>
+</ul>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/functions_vars.html b/miosix/_doc/doxygen/html/functions_vars.html
new file mode 100644
index 00000000..e952ad92
--- /dev/null
+++ b/miosix/_doc/doxygen/html/functions_vars.html
@@ -0,0 +1,54 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Class Members - Variables</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+      <li class="current"><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="functions.html"><span>All</span></a></li>
+      <li><a href="functions_func.html"><span>Functions</span></a></li>
+      <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
+      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="contents">
+&nbsp;<ul>
+<li>FILENAME_LEN
+: <a class="el" href="classmiosix_1_1_directory.html#a079e87e4cbc008d223a03c54d87577bf">miosix::Directory</a>
+</li>
+<li>result
+: <a class="el" href="classmiosix_1_1_thread.html#a448486b757b8ede4edaa8edc39962b17">miosix::Thread</a>
+</li>
+<li>waitingForJoin
+: <a class="el" href="classmiosix_1_1_thread.html#a4d8096414686bc7519454101f55306d2">miosix::Thread</a>
+</li>
+</ul>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/globals.html b/miosix/_doc/doxygen/html/globals.html
new file mode 100644
index 00000000..e598fba3
--- /dev/null
+++ b/miosix/_doc/doxygen/html/globals.html
@@ -0,0 +1,97 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Class Members</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&nbsp;List</span></a></li>
+      <li class="current"><a href="globals.html"><span>File&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li class="current"><a href="globals.html"><span>All</span></a></li>
+      <li><a href="globals_func.html"><span>Functions</span></a></li>
+      <li><a href="globals_defs.html"><span>Defines</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="contents">
+Here is a list of all documented file members with links to the documentation:<ul>
+<li>JTAG_DISABLE_SLEEP
+: <a class="el" href="group___settings.html#gae8275208fa2c8f8bc833fa8bc78ff350">miosix_settings.h</a>
+</li>
+<li>SCHED_TYPE_CONTROL_BASED
+: <a class="el" href="group___settings.html#ga18c8e73660707ad40a2ee8590f35db68">miosix_settings.h</a>
+</li>
+<li>SCHED_TYPE_EDF
+: <a class="el" href="group___settings.html#gaca4195a7b3efe86d766d5fbf6db64aa0">miosix_settings.h</a>
+</li>
+<li>SCHED_TYPE_PRIORITY
+: <a class="el" href="group___settings.html#ga2acdc2f0df96cf6cbc35f7fd78ddb70d">miosix_settings.h</a>
+</li>
+<li>swapBytes16()
+: <a class="el" href="group___interfaces.html#gaac144bf3451c95e74bdd34327f019344">endianness.h</a>
+</li>
+<li>swapBytes32()
+: <a class="el" href="group___interfaces.html#gae45d4bbe8a807a780b0033850c143a81">endianness.h</a>
+</li>
+<li>swapBytes64()
+: <a class="el" href="group___interfaces.html#ga74d39ebb52b05eda594e47f0d90e7ad2">endianness.h</a>
+</li>
+<li>SYNC_AFTER_WRITE
+: <a class="el" href="group___settings.html#ga7f95cdeac372c6633422b100d6b15bba">miosix_settings.h</a>
+</li>
+<li>toBigEndian16
+: <a class="el" href="group___interfaces.html#ga3d118b2a14e2880a0439c9bf9a06c6e5">endianness.h</a>
+</li>
+<li>toBigEndian32
+: <a class="el" href="group___interfaces.html#gaa6c617366016f8aade26bc9dea6cc26b">endianness.h</a>
+</li>
+<li>toBigEndian64
+: <a class="el" href="group___interfaces.html#ga9e5f305b36b75ad6f89becf211624ce2">endianness.h</a>
+</li>
+<li>toLittleEndian16
+: <a class="el" href="group___interfaces.html#gaf9a5d5c4095f445894e047a624beab1c">endianness.h</a>
+</li>
+<li>toLittleEndian32
+: <a class="el" href="group___interfaces.html#ga81fdb9bbd65db8d3613bcf48b33b6b3c">endianness.h</a>
+</li>
+<li>toLittleEndian64
+: <a class="el" href="group___interfaces.html#ga9854a77efaef5446bd7e14722017df59">endianness.h</a>
+</li>
+<li>WITH_BOOTLOG
+: <a class="el" href="group___settings.html#ga2c6b4dab3da5b7b77fef128e1cd2fa79">miosix_settings.h</a>
+</li>
+<li>WITH_ERRLOG
+: <a class="el" href="group___settings.html#ga77cf94725c645792e686ff791e47d703">miosix_settings.h</a>
+</li>
+<li>WITH_FILESYSTEM
+: <a class="el" href="group___settings.html#ga35c68f7b13770080cccce5baafc24a30">miosix_settings.h</a>
+</li>
+<li>WITH_STDIN_BUFFER
+: <a class="el" href="group___settings.html#gaad46faddaac4a765531e05ab44c52a3e">miosix_settings.h</a>
+</li>
+</ul>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/globals_defs.html b/miosix/_doc/doxygen/html/globals_defs.html
new file mode 100644
index 00000000..0264e619
--- /dev/null
+++ b/miosix/_doc/doxygen/html/globals_defs.html
@@ -0,0 +1,88 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Class Members</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&nbsp;List</span></a></li>
+      <li class="current"><a href="globals.html"><span>File&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="globals.html"><span>All</span></a></li>
+      <li><a href="globals_func.html"><span>Functions</span></a></li>
+      <li class="current"><a href="globals_defs.html"><span>Defines</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="contents">
+&nbsp;<ul>
+<li>JTAG_DISABLE_SLEEP
+: <a class="el" href="group___settings.html#gae8275208fa2c8f8bc833fa8bc78ff350">miosix_settings.h</a>
+</li>
+<li>SCHED_TYPE_CONTROL_BASED
+: <a class="el" href="group___settings.html#ga18c8e73660707ad40a2ee8590f35db68">miosix_settings.h</a>
+</li>
+<li>SCHED_TYPE_EDF
+: <a class="el" href="group___settings.html#gaca4195a7b3efe86d766d5fbf6db64aa0">miosix_settings.h</a>
+</li>
+<li>SCHED_TYPE_PRIORITY
+: <a class="el" href="group___settings.html#ga2acdc2f0df96cf6cbc35f7fd78ddb70d">miosix_settings.h</a>
+</li>
+<li>SYNC_AFTER_WRITE
+: <a class="el" href="group___settings.html#ga7f95cdeac372c6633422b100d6b15bba">miosix_settings.h</a>
+</li>
+<li>toBigEndian16
+: <a class="el" href="group___interfaces.html#ga3d118b2a14e2880a0439c9bf9a06c6e5">endianness.h</a>
+</li>
+<li>toBigEndian32
+: <a class="el" href="group___interfaces.html#gaa6c617366016f8aade26bc9dea6cc26b">endianness.h</a>
+</li>
+<li>toBigEndian64
+: <a class="el" href="group___interfaces.html#ga9e5f305b36b75ad6f89becf211624ce2">endianness.h</a>
+</li>
+<li>toLittleEndian16
+: <a class="el" href="group___interfaces.html#gaf9a5d5c4095f445894e047a624beab1c">endianness.h</a>
+</li>
+<li>toLittleEndian32
+: <a class="el" href="group___interfaces.html#ga81fdb9bbd65db8d3613bcf48b33b6b3c">endianness.h</a>
+</li>
+<li>toLittleEndian64
+: <a class="el" href="group___interfaces.html#ga9854a77efaef5446bd7e14722017df59">endianness.h</a>
+</li>
+<li>WITH_BOOTLOG
+: <a class="el" href="group___settings.html#ga2c6b4dab3da5b7b77fef128e1cd2fa79">miosix_settings.h</a>
+</li>
+<li>WITH_ERRLOG
+: <a class="el" href="group___settings.html#ga77cf94725c645792e686ff791e47d703">miosix_settings.h</a>
+</li>
+<li>WITH_FILESYSTEM
+: <a class="el" href="group___settings.html#ga35c68f7b13770080cccce5baafc24a30">miosix_settings.h</a>
+</li>
+<li>WITH_STDIN_BUFFER
+: <a class="el" href="group___settings.html#gaad46faddaac4a765531e05ab44c52a3e">miosix_settings.h</a>
+</li>
+</ul>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/globals_func.html b/miosix/_doc/doxygen/html/globals_func.html
new file mode 100644
index 00000000..59d16ef3
--- /dev/null
+++ b/miosix/_doc/doxygen/html/globals_func.html
@@ -0,0 +1,52 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Class Members</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&nbsp;List</span></a></li>
+      <li class="current"><a href="globals.html"><span>File&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="globals.html"><span>All</span></a></li>
+      <li class="current"><a href="globals_func.html"><span>Functions</span></a></li>
+      <li><a href="globals_defs.html"><span>Defines</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="contents">
+&nbsp;<ul>
+<li>swapBytes16()
+: <a class="el" href="group___interfaces.html#gaac144bf3451c95e74bdd34327f019344">endianness.h</a>
+</li>
+<li>swapBytes32()
+: <a class="el" href="group___interfaces.html#gae45d4bbe8a807a780b0033850c143a81">endianness.h</a>
+</li>
+<li>swapBytes64()
+: <a class="el" href="group___interfaces.html#ga74d39ebb52b05eda594e47f0d90e7ad2">endianness.h</a>
+</li>
+</ul>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/gpio_8h.html b/miosix/_doc/doxygen/html/gpio_8h.html
new file mode 100644
index 00000000..0018ad88
--- /dev/null
+++ b/miosix/_doc/doxygen/html/gpio_8h.html
@@ -0,0 +1,92 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: gpio.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&nbsp;List</span></a></li>
+      <li><a href="globals.html"><span>File&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="headertitle">
+<h1>gpio.h File Reference</h1>  </div>
+</div>
+<div class="contents">
+<code>#include &quot;interfaces-impl/gpio_impl.h&quot;</code><br/>
+<table class="memberdecls">
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<p>The interface to gpios provided by Miosix is in the form of templates, therefore this file can only include gpio_impl.h with the architecture dependand code.</p>
+<p>The interface should be as follows: First a class Mode containing an enum Mode_ needs to be defined. Its minimum implementation is this: </p>
+<div class="fragment"><pre class="fragment"> <span class="keyword">class </span>Mode
+ {
+ <span class="keyword">public</span>:
+     <span class="keyword">enum</span> Mode_
+     {
+         INPUT,
+         OUTPUT
+     };
+ <span class="keyword">private</span>:
+     Mode(); <span class="comment">//Just a wrapper class, disallow creating instances</span>
+ };
+</pre></div><p>This class should define the possible configurations of a gpio pin. The minimum required is INPUT and OUTPUT, but this can be extended to other options to reflect the hardware capabilities of gpios. For example, if gpios can be set as input with pull up, it is possible to add INPUT_PULL_UP to the enum.</p>
+<p>Then a template Gpio class should be provided, with at least the following member functions: </p>
+<div class="fragment"><pre class="fragment"> <span class="keyword">template</span>&lt;<span class="keyword">typename</span> P, <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> N&gt;
+ <span class="keyword">class </span>Gpio
+ {
+ <span class="keyword">public</span>:
+     <span class="keyword">static</span> <span class="keywordtype">void</span> mode(Mode::Mode_ m);
+     <span class="keyword">static</span> <span class="keywordtype">void</span> high();
+     <span class="keyword">static</span> <span class="keywordtype">void</span> low();
+     <span class="keyword">static</span> <span class="keywordtype">int</span> value();
+ <span class="keyword">private</span>:
+     Gpio();<span class="comment">//Only static member functions, disallow creating instances</span>
+ };
+</pre></div><p>mode() should take a Mode::Mode_ enum and set the mode of the gpio (input, output or other architecture specific)</p>
+<p>high() should set a gpio configured as output to high logic level</p>
+<p>low() should set a gpio configured as output to low logic level</p>
+<p>value() should return either 1 or 0 to refect the state of a gpio configured as input</p>
+<p>Lastly, a number of constants must be provided to be passed as first template parameter of the Gpio class, usually identifying the gpio port, while the second template parameter should be used to specify a gpio pin within a port.</p>
+<p>The intended use is this: considering an architecture with two ports, PORTA and PORTB each with 8 pins. The header gpio_impl.h should provide two constants, for example named GPIOA_BASE and GPIOB_BASE.</p>
+<p>The user can declare the hardware mapping between gpios and what is connected to them, usually in an header file. If for example PORTA.0 is connected to a button while PORTB.4 to a led, the header file might contain:</p>
+<div class="fragment"><pre class="fragment"> <span class="keyword">typedef</span> Gpio&lt;GPIOA_BASE,0&gt; button;
+ <span class="keyword">typedef</span> Gpio&lt;GPIOB_BASE,4&gt; led;
+</pre></div><p>This allows the rest of the code to be written in terms of leds and buttons, without a reference to which pin they are connected to, something that might change.</p>
+<p>A simple code using these gpios could be: </p>
+<div class="fragment"><pre class="fragment"> <span class="keywordtype">void</span> blinkUntilButtonPressed()
+ {
+     led::mode(Mode::OUTPUT);
+     button::mode(Mode::INPUT);
+     <span class="keywordflow">for</span>(;;)
+     {
+         <span class="keywordflow">if</span>(button::value()==1) <span class="keywordflow">break</span>;
+         led::high();
+         Thread::sleep(250);
+         led::low();
+         Thread::sleep(250);
+     }
+ }
+</pre></div> </div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/group___drivers.html b/miosix/_doc/doxygen/html/group___drivers.html
new file mode 100644
index 00000000..b1d23940
--- /dev/null
+++ b/miosix/_doc/doxygen/html/group___drivers.html
@@ -0,0 +1,37 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Drivers</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="headertitle">
+<h1>Drivers</h1>  </div>
+</div>
+<div class="contents">
+<table class="memberdecls">
+</table>
+<p>Miosix drivers API</p>
+<p>Contains functions and macros that can be used to write drivers for hardware peripherals. These functions, plus the IRQ methods of the Queue class provide a way to transfer data between an interrupt routine and user code, and a way to cause preemption inside an interrupt routine to wake a higher priority Thread waiting on some hardware peripheral.</p>
+<p>Also contains the default drivers for each architecture. </p>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/group___filesystem.html b/miosix/_doc/doxygen/html/group___filesystem.html
new file mode 100644
index 00000000..34677e1d
--- /dev/null
+++ b/miosix/_doc/doxygen/html/group___filesystem.html
@@ -0,0 +1,97 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Filesystem</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a> &#124;
+<a href="#enum-members">Enumerations</a>  </div>
+  <div class="headertitle">
+<h1>Filesystem</h1>  </div>
+</div>
+<div class="contents">
+<table class="memberdecls">
+<tr><td colspan="2"><h2><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_filesystem.html">miosix::Filesystem</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_directory.html">miosix::Directory</a></td></tr>
+<tr><td colspan="2"><h2><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___filesystem.html#ga9fab0d0eb30aba32bb0c6ca21d72c845">miosix::Attrib</a> { <br/>
+&nbsp;&nbsp;<a class="el" href="group___filesystem.html#gga9fab0d0eb30aba32bb0c6ca21d72c845a12e947f8f047d273e068bde84dc756ae">miosix::READ_ONLY</a> =  0x01, 
+<a class="el" href="group___filesystem.html#gga9fab0d0eb30aba32bb0c6ca21d72c845a18d657bc5127e6fe6d0e3b1ede96ff43">miosix::HIDDEN</a> =  0x02, 
+<a class="el" href="group___filesystem.html#gga9fab0d0eb30aba32bb0c6ca21d72c845aafe01ea46399c95c49849a481b3ac6c9">miosix::SYSTEM</a> =  0x04, 
+<a class="el" href="group___filesystem.html#gga9fab0d0eb30aba32bb0c6ca21d72c845a70a8eaf83cbb7e00925d35382689d59d">miosix::VOLUME_ID</a> =  0x08, 
+<br/>
+&nbsp;&nbsp;<a class="el" href="group___filesystem.html#gga9fab0d0eb30aba32bb0c6ca21d72c845a1dee5448b32ceee464cfd092b991de86">miosix::DIRECTORY</a> =  0x10, 
+<a class="el" href="group___filesystem.html#gga9fab0d0eb30aba32bb0c6ca21d72c845ab608cfd1ce6c8c0f131a6cfe5edb36d4">miosix::ARCHIVE</a> =  0x20
+<br/>
+ }</td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<p><a class="el" href="classmiosix_1_1_filesystem.html">Filesystem</a> related functions</p>
+<p>File handling will not be described here since it is done using the C or C++ standard library (fopen, fprintf, istream, remove, mkdir, ...).<br/>
+ All file related function of the C and C++ standard library should work, except rename() and link() which are not implemented.<br/>
+ The maximum number of files that can be opened at the same time is defined in the constant MAX_OPEN_FILES in <a class="el" href="miosix__settings_8h.html">miosix/config/miosix_settings.h</a>, All files are opened in binary mode. Therefore there is no differnce between fopen("file.txt","r") and fopen("file.txt","rb"). For filesystem write access, the SYNC_AFTER_WRITE option in <a class="el" href="miosix__settings_8h.html">miosix_settings.h</a> allows to choose a faster or safer implementation.</p>
+<p><a class="el" href="classmiosix_1_1_directory.html">Directory</a> listing is not done using the standard opendir() and readdir() functions, but using the <a class="el" href="classmiosix_1_1_directory.html">Directory</a> class.</p>
+<p>Mounting and unmounting the filesystem is done through the <a class="el" href="classmiosix_1_1_filesystem.html">Filesystem</a> class. Note that the filesystem is mounted automatically at boot time, except in case of errors (like no uSD card in the socket). </p>
+<hr/><h2>Enumeration Type Documentation</h2>
+<a class="anchor" id="ga9fab0d0eb30aba32bb0c6ca21d72c845"></a><!-- doxytag: member="miosix::Attrib" ref="ga9fab0d0eb30aba32bb0c6ca21d72c845" args="" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">enum <a class="el" href="group___filesystem.html#ga9fab0d0eb30aba32bb0c6ca21d72c845">miosix::Attrib</a></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>File attribures, as returned by <a class="el" href="classmiosix_1_1_directory.html#ace4d75cdcad650213a294c2fe7a41381">Directory::next()</a>. More flags can be set at the same time </p>
+<dl><dt><b>Enumerator: </b></dt><dd><table border="0" cellspacing="2" cellpadding="0">
+<tr><td valign="top"><em><a class="anchor" id="gga9fab0d0eb30aba32bb0c6ca21d72c845a12e947f8f047d273e068bde84dc756ae"></a><!-- doxytag: member="READ_ONLY" ref="gga9fab0d0eb30aba32bb0c6ca21d72c845a12e947f8f047d273e068bde84dc756ae" args="" -->READ_ONLY</em>&nbsp;</td><td>
+<p>Entry is read-only. </p>
+</td></tr>
+<tr><td valign="top"><em><a class="anchor" id="gga9fab0d0eb30aba32bb0c6ca21d72c845a18d657bc5127e6fe6d0e3b1ede96ff43"></a><!-- doxytag: member="HIDDEN" ref="gga9fab0d0eb30aba32bb0c6ca21d72c845a18d657bc5127e6fe6d0e3b1ede96ff43" args="" -->HIDDEN</em>&nbsp;</td><td>
+<p>Entry is hidden. </p>
+</td></tr>
+<tr><td valign="top"><em><a class="anchor" id="gga9fab0d0eb30aba32bb0c6ca21d72c845aafe01ea46399c95c49849a481b3ac6c9"></a><!-- doxytag: member="SYSTEM" ref="gga9fab0d0eb30aba32bb0c6ca21d72c845aafe01ea46399c95c49849a481b3ac6c9" args="" -->SYSTEM</em>&nbsp;</td><td>
+<p>Entry is a system file. </p>
+</td></tr>
+<tr><td valign="top"><em><a class="anchor" id="gga9fab0d0eb30aba32bb0c6ca21d72c845a70a8eaf83cbb7e00925d35382689d59d"></a><!-- doxytag: member="VOLUME_ID" ref="gga9fab0d0eb30aba32bb0c6ca21d72c845a70a8eaf83cbb7e00925d35382689d59d" args="" -->VOLUME_ID</em>&nbsp;</td><td>
+<p>Volume label (?). </p>
+</td></tr>
+<tr><td valign="top"><em><a class="anchor" id="gga9fab0d0eb30aba32bb0c6ca21d72c845a1dee5448b32ceee464cfd092b991de86"></a><!-- doxytag: member="DIRECTORY" ref="gga9fab0d0eb30aba32bb0c6ca21d72c845a1dee5448b32ceee464cfd092b991de86" args="" -->DIRECTORY</em>&nbsp;</td><td>
+<p>If this flag is set, entry is a directory, otherwise it's a file. </p>
+</td></tr>
+<tr><td valign="top"><em><a class="anchor" id="gga9fab0d0eb30aba32bb0c6ca21d72c845ab608cfd1ce6c8c0f131a6cfe5edb36d4"></a><!-- doxytag: member="ARCHIVE" ref="gga9fab0d0eb30aba32bb0c6ca21d72c845ab608cfd1ce6c8c0f131a6cfe5edb36d4" args="" -->ARCHIVE</em>&nbsp;</td><td>
+<p>Entry is marked as archive. </p>
+</td></tr>
+</table>
+</dd>
+</dl>
+
+</div>
+</div>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/group___hardware.html b/miosix/_doc/doxygen/html/group___hardware.html
new file mode 100644
index 00000000..77697ac1
--- /dev/null
+++ b/miosix/_doc/doxygen/html/group___hardware.html
@@ -0,0 +1,37 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Hardware</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="headertitle">
+<h1>Hardware</h1>  </div>
+</div>
+<div class="contents">
+<table class="memberdecls">
+</table>
+<p>Hardware related functions</p>
+<p>Starting from Miosix 1.50 the kernel can be run on multiple platforms. It provides some facilities to access common features such as GPIOs in a platform independent way, and leaves the rest of the underlying hardware available for direct use. Including miosix.h in a source file will automaticaly include the header files with the register definitions of the selected microcontroller, so that it is possible to write code that makes use of its peripherals.</p>
+<p>Some hardware resources, however, are used by the kernel, and must not be used by user code, to avoid conflicts This usually include a serial port, used for redirecting printf, an SPI or SD card hardware controller, for filesystem access, one or more hardware timers, used for preemption, and some interrupt handlers used for context switching. </p>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/group___interfaces.html b/miosix/_doc/doxygen/html/group___interfaces.html
new file mode 100644
index 00000000..501e4dc1
--- /dev/null
+++ b/miosix/_doc/doxygen/html/group___interfaces.html
@@ -0,0 +1,405 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Interfaces</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a> &#124;
+<a href="#files">Files</a> &#124;
+<a href="#define-members">Defines</a> &#124;
+<a href="#func-members">Functions</a>  </div>
+  <div class="headertitle">
+<h1>Interfaces</h1>  </div>
+</div>
+<div class="contents">
+<table class="memberdecls">
+<tr><td colspan="2"><h2><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_console.html">miosix::Console</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix__private_1_1_auxiliary_timer.html">miosix_private::AuxiliaryTimer</a></td></tr>
+<tr><td colspan="2"><h2><a name="files"></a>
+Files</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="arch__registers_8h.html">arch_registers.h</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="bsp_8h.html">bsp.h</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="console_8h.html">console.h</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="delays_8h.html">delays.h</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="disk_8h.html">disk.h</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="endianness_8h.html">endianness.h</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="gpio_8h.html">gpio.h</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="portability_8h.html">portability.h</a></td></tr>
+<tr><td colspan="2"><h2><a name="define-members"></a>
+Defines</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___interfaces.html#gaf9a5d5c4095f445894e047a624beab1c">toLittleEndian16</a>(x)&nbsp;&nbsp;&nbsp;(x)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___interfaces.html#ga81fdb9bbd65db8d3613bcf48b33b6b3c">toLittleEndian32</a>(x)&nbsp;&nbsp;&nbsp;(x)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___interfaces.html#ga9854a77efaef5446bd7e14722017df59">toLittleEndian64</a>(x)&nbsp;&nbsp;&nbsp;(x)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___interfaces.html#ga3d118b2a14e2880a0439c9bf9a06c6e5">toBigEndian16</a>(x)&nbsp;&nbsp;&nbsp;swapBytes16(x)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___interfaces.html#gaa6c617366016f8aade26bc9dea6cc26b">toBigEndian32</a>(x)&nbsp;&nbsp;&nbsp;swapBytes32(x)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___interfaces.html#ga9e5f305b36b75ad6f89becf211624ce2">toBigEndian64</a>(x)&nbsp;&nbsp;&nbsp;swapBytes64(x)</td></tr>
+<tr><td colspan="2"><h2><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___interfaces.html#gae0495cbfc806a0db0cdf2ff023945516">miosix::shutdown</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___interfaces.html#ga6f70fdbc3b5d6afa41b5dbc5272cc6a0">miosix::reboot</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___interfaces.html#ga9d13aceddc0481fd1077e6fdfb31f9a7">miosix::delayMs</a> (unsigned int mseconds)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___interfaces.html#ga244f9474d20ffd5d905855f68aa3114f">miosix::delayUs</a> (unsigned int useconds)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">__MIOSIX_INLINE unsigned short&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___interfaces.html#gaac144bf3451c95e74bdd34327f019344">swapBytes16</a> (unsigned short x)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">__MIOSIX_INLINE unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___interfaces.html#gae45d4bbe8a807a780b0033850c143a81">swapBytes32</a> (unsigned int x)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">__MIOSIX_INLINE unsigned long long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___interfaces.html#ga74d39ebb52b05eda594e47f0d90e7ad2">swapBytes64</a> (unsigned long long x)</td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<p>Interfaces between kernel and architecture specific code.</p>
+<p>Starting from Miosix 1.53 all calls from kernel to architecture specific code is done through a set of functions, classes and macros grouped in a set of header files in the miosix/interfaces folder. There are multiple implementations of these functions/classes, one for each architecture supported by Miosix. This eases portability since adding a new architecture is done by implementing a well defined set of interfaces.</p>
+<p>Some of these functions are not designed to be accessed by user code, for example the functions in <a class="el" href="portability_8h.html">portability.h</a> are used by the kernel to create threads and perform context switching, while the Disk class in <a class="el" href="disk_8h.html">disk.h</a> is used by the filesystem module to read and write from disk. Such functions are marked as \internal and therefore are not visible by default in this doxygen documentation, because are useless for application developers. If there is the need to port Miosix to another platform it is always possible to build the doxygen documentation manually including \internal functions. Using functions which are marked as \internal in user code might lead to undefined behaviour. </p>
+<hr/><h2>Define Documentation</h2>
+<a class="anchor" id="ga3d118b2a14e2880a0439c9bf9a06c6e5"></a><!-- doxytag: member="endianness.h::toBigEndian16" ref="ga3d118b2a14e2880a0439c9bf9a06c6e5" args="(x)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define toBigEndian16</td>
+          <td>(</td>
+          <td class="paramtype">&nbsp;</td>
+          <td class="paramname">x</td>
+          <td>&nbsp;)&nbsp;</td>
+          <td>&nbsp;&nbsp;&nbsp;swapBytes16(x)</td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Convert a (signed or unsigned) short int from the system representation to big endian </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>value to convert </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="return"><dt><b>Returns:</b></dt><dd>value converted to big endian </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="gaa6c617366016f8aade26bc9dea6cc26b"></a><!-- doxytag: member="endianness.h::toBigEndian32" ref="gaa6c617366016f8aade26bc9dea6cc26b" args="(x)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define toBigEndian32</td>
+          <td>(</td>
+          <td class="paramtype">&nbsp;</td>
+          <td class="paramname">x</td>
+          <td>&nbsp;)&nbsp;</td>
+          <td>&nbsp;&nbsp;&nbsp;swapBytes32(x)</td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Convert a (signed or unsigned) int from the system representation to big endian </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>value to convert </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="return"><dt><b>Returns:</b></dt><dd>value converted to big endian </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ga9e5f305b36b75ad6f89becf211624ce2"></a><!-- doxytag: member="endianness.h::toBigEndian64" ref="ga9e5f305b36b75ad6f89becf211624ce2" args="(x)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define toBigEndian64</td>
+          <td>(</td>
+          <td class="paramtype">&nbsp;</td>
+          <td class="paramname">x</td>
+          <td>&nbsp;)&nbsp;</td>
+          <td>&nbsp;&nbsp;&nbsp;swapBytes64(x)</td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Convert a (signed or unsigned) long long from the system representation to big endian </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>value to convert </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="return"><dt><b>Returns:</b></dt><dd>value converted to big endian </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="gaf9a5d5c4095f445894e047a624beab1c"></a><!-- doxytag: member="endianness.h::toLittleEndian16" ref="gaf9a5d5c4095f445894e047a624beab1c" args="(x)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define toLittleEndian16</td>
+          <td>(</td>
+          <td class="paramtype">&nbsp;</td>
+          <td class="paramname">x</td>
+          <td>&nbsp;)&nbsp;</td>
+          <td>&nbsp;&nbsp;&nbsp;(x)</td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Convert a (signed or unsigned) short int from the system representation to little endian </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>value to convert </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="return"><dt><b>Returns:</b></dt><dd>value converted to little endian </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ga81fdb9bbd65db8d3613bcf48b33b6b3c"></a><!-- doxytag: member="endianness.h::toLittleEndian32" ref="ga81fdb9bbd65db8d3613bcf48b33b6b3c" args="(x)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define toLittleEndian32</td>
+          <td>(</td>
+          <td class="paramtype">&nbsp;</td>
+          <td class="paramname">x</td>
+          <td>&nbsp;)&nbsp;</td>
+          <td>&nbsp;&nbsp;&nbsp;(x)</td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Convert a (signed or unsigned) int from the system representation to little endian </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>value to convert </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="return"><dt><b>Returns:</b></dt><dd>value converted to little endian </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ga9854a77efaef5446bd7e14722017df59"></a><!-- doxytag: member="endianness.h::toLittleEndian64" ref="ga9854a77efaef5446bd7e14722017df59" args="(x)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define toLittleEndian64</td>
+          <td>(</td>
+          <td class="paramtype">&nbsp;</td>
+          <td class="paramname">x</td>
+          <td>&nbsp;)&nbsp;</td>
+          <td>&nbsp;&nbsp;&nbsp;(x)</td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Convert a (signed or unsigned) long long from the system representation to little endian </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>value to convert </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="return"><dt><b>Returns:</b></dt><dd>value converted to little endian </dd></dl>
+
+</div>
+</div>
+<hr/><h2>Function Documentation</h2>
+<a class="anchor" id="ga9d13aceddc0481fd1077e6fdfb31f9a7"></a><!-- doxytag: member="miosix::delayMs" ref="ga9d13aceddc0481fd1077e6fdfb31f9a7" args="(unsigned int mseconds)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void miosix::delayMs </td>
+          <td>(</td>
+          <td class="paramtype">unsigned int&nbsp;</td>
+          <td class="paramname"> <em>mseconds</em></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Delay function. Accuracy depends on the underlying implementation which is architecture specific.<br/>
+ Delay time can be inaccurate if interrupts are enabled or the kernel is running due to time spent in interrupts and due to preemption.<br/>
+ It is implemented using busy wait, so can be safely used even when the kernel is paused or interrupts are disabled.<br/>
+ If the kernel is running it is *highly* recomended to use <a class="el" href="classmiosix_1_1_thread.html#ad7f738dc69a918960fe814a062696c5c">Thread::sleep</a> since it gives CPU time to other threads and/or it puts the CPU in low power mode. </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>mseconds</em>&nbsp;</td><td>milliseconds to wait </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="ga244f9474d20ffd5d905855f68aa3114f"></a><!-- doxytag: member="miosix::delayUs" ref="ga244f9474d20ffd5d905855f68aa3114f" args="(unsigned int useconds)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void miosix::delayUs </td>
+          <td>(</td>
+          <td class="paramtype">unsigned int&nbsp;</td>
+          <td class="paramname"> <em>useconds</em></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Delay function. Accuracy depends on the underlying implementation which is architecture specific.<br/>
+ Delay time can be inaccurate if interrupts are enabled or the kernel is running due to time spent in interrupts and due to preemption.<br/>
+ It is implemented using busy wait, so can be safely used even when the kernel is paused or interrupts are disabled.<br/>
+ </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>useconds</em>&nbsp;</td><td>microseconds to wait. Only values between 1 and 1000 are allowed. For greater delays use <a class="el" href="classmiosix_1_1_thread.html#ad7f738dc69a918960fe814a062696c5c">Thread::sleep()</a> or <a class="el" href="group___interfaces.html#ga9d13aceddc0481fd1077e6fdfb31f9a7">delayMs()</a>. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="ga6f70fdbc3b5d6afa41b5dbc5272cc6a0"></a><!-- doxytag: member="miosix::reboot" ref="ga6f70fdbc3b5d6afa41b5dbc5272cc6a0" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void miosix::reboot </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>The difference between this function and miosix_private::IRQsystemReboot() is that this function disables filesystem (if enabled), serial port (if enabled) while miosix_private::system_reboot() does not do all these things. miosix_private::IRQsystemReboot() is designed to reboot the system when an unrecoverable error occurs, and is used primarily in kernel code, <a class="el" href="group___interfaces.html#ga6f70fdbc3b5d6afa41b5dbc5272cc6a0">reboot()</a> is designed to reboot the system in normal conditions.<br/>
+ This function does not return.<br/>
+ WARNING: close all files before using this function, since it unmounts the filesystem. </p>
+
+</div>
+</div>
+<a class="anchor" id="gae0495cbfc806a0db0cdf2ff023945516"></a><!-- doxytag: member="miosix::shutdown" ref="gae0495cbfc806a0db0cdf2ff023945516" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void miosix::shutdown </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>This function disables filesystem (if enabled), serial port (if enabled) and shuts down the system, usually by putting the procesor in a deep sleep state.<br/>
+ The action to start a new boot is system-specific, can be for example a reset, powercycle or a special GPIO configured to wakeup the processor from deep sleep.<br/>
+ This function does not return.<br/>
+ WARNING: close all files before using this function, since it unmounts the filesystem.<br/>
+ </p>
+
+</div>
+</div>
+<a class="anchor" id="gaac144bf3451c95e74bdd34327f019344"></a><!-- doxytag: member="endianness.h::swapBytes16" ref="gaac144bf3451c95e74bdd34327f019344" args="(unsigned short x)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">unsigned short swapBytes16 </td>
+          <td>(</td>
+          <td class="paramtype">unsigned short&nbsp;</td>
+          <td class="paramname"> <em>x</em></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>an short int </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="return"><dt><b>Returns:</b></dt><dd>the same short with its bytes swapped </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="gae45d4bbe8a807a780b0033850c143a81"></a><!-- doxytag: member="endianness.h::swapBytes32" ref="gae45d4bbe8a807a780b0033850c143a81" args="(unsigned int x)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">unsigned int swapBytes32 </td>
+          <td>(</td>
+          <td class="paramtype">unsigned int&nbsp;</td>
+          <td class="paramname"> <em>x</em></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>an int </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="return"><dt><b>Returns:</b></dt><dd>the same int with its bytes swapped </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ga74d39ebb52b05eda594e47f0d90e7ad2"></a><!-- doxytag: member="endianness.h::swapBytes64" ref="ga74d39ebb52b05eda594e47f0d90e7ad2" args="(unsigned long long x)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">unsigned long long swapBytes64 </td>
+          <td>(</td>
+          <td class="paramtype">unsigned long long&nbsp;</td>
+          <td class="paramname"> <em>x</em></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>a long long </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="return"><dt><b>Returns:</b></dt><dd>the same long long with its bytes swapped </dd></dl>
+
+</div>
+</div>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/group___kernel.html b/miosix/_doc/doxygen/html/group___kernel.html
new file mode 100644
index 00000000..f80c61e5
--- /dev/null
+++ b/miosix/_doc/doxygen/html/group___kernel.html
@@ -0,0 +1,254 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Kernel</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a> &#124;
+<a href="#func-members">Functions</a>  </div>
+  <div class="headertitle">
+<h1>Kernel</h1>  </div>
+</div>
+<div class="contents">
+<table class="memberdecls">
+<tr><td colspan="2"><h2><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_interrupt_disable_lock.html">miosix::InterruptDisableLock</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_interrupt_enable_lock.html">miosix::InterruptEnableLock</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_fast_interrupt_disable_lock.html">miosix::FastInterruptDisableLock</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_fast_interrupt_enable_lock.html">miosix::FastInterruptEnableLock</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_pause_kernel_lock.html">miosix::PauseKernelLock</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_restart_kernel_lock.html">miosix::RestartKernelLock</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_thread.html">miosix::Thread</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_lower_priority.html">miosix::LowerPriority</a></td></tr>
+<tr><td colspan="2"><h2><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___kernel.html#gacd7ef6e968c5c0b2ff45bf102388ea4d">miosix::disableInterrupts</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___kernel.html#ga36adaaa176d004747d2a01b822c9fea5">miosix::enableInterrupts</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___kernel.html#gaeeacb47660439066bb1d787593da9f4e">miosix::fastDisableInterrupts</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___kernel.html#ga882229b6c936a87454cb154a90751927">miosix::fastEnableInterrupts</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___kernel.html#ga730c9359f8069cb2f785501ea763eb43">miosix::pauseKernel</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___kernel.html#gad3bee49a8dd57a598b7d7aeeeaf8496c">miosix::restartKernel</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___kernel.html#gacabb0637ded36778470fa27eea329d84">miosix::areInterruptsEnabled</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___kernel.html#gaabdbf06e8cf514d3113325a01927ccf5">miosix::isKernelRunning</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">long long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___kernel.html#gad16c495ced6659e8bc0bb371362674ef">miosix::getTick</a> ()</td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<p>Miosix kernel API</p>
+<p>The most useful part of this API is the <a class="el" href="classmiosix_1_1_thread.html">Thread</a> class that allows to create and manage threads.</p>
+<p>A note on IRQ functions/methods:<br/>
+ Functions and methods that do not begin with IRQ cannot be called inside IRQ or when interrupts are disabled.<br/>
+ Functions and methods that begin with IRQ cannot be called outside IRQ or when interrupts are enabled.<br/>
+ When the kernel is paused, you must read the comment of the function to see if it can be called since there is no general rule.<br/>
+ Only recently (starting from Miosix 1.53) some of the functions designed to be called with kernel paused are marked with the PK prefix. </p>
+<hr/><h2>Function Documentation</h2>
+<a class="anchor" id="gacabb0637ded36778470fa27eea329d84"></a><!-- doxytag: member="miosix::areInterruptsEnabled" ref="gacabb0637ded36778470fa27eea329d84" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool miosix::areInterruptsEnabled </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<dl class="return"><dt><b>Returns:</b></dt><dd>true if interrupts are enabled </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="gacd7ef6e968c5c0b2ff45bf102388ea4d"></a><!-- doxytag: member="miosix::disableInterrupts" ref="gacd7ef6e968c5c0b2ff45bf102388ea4d" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void miosix::disableInterrupts </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Disable interrupts, if interrupts were enable prior to calling this function.</p>
+<p>Please note that starting from Miosix 1.51 <a class="el" href="group___kernel.html#gacd7ef6e968c5c0b2ff45bf102388ea4d">disableInterrupts()</a> and <a class="el" href="group___kernel.html#ga36adaaa176d004747d2a01b822c9fea5">enableInterrupts()</a> can be nested. You can therefore call <a class="el" href="group___kernel.html#gacd7ef6e968c5c0b2ff45bf102388ea4d">disableInterrupts()</a> multiple times as long as each call is matched by a call to <a class="el" href="group___kernel.html#ga36adaaa176d004747d2a01b822c9fea5">enableInterrupts()</a>.<br/>
+ This replaced disable_and_save_interrupts() and restore_interrupts()</p>
+<p><a class="el" href="group___kernel.html#gacd7ef6e968c5c0b2ff45bf102388ea4d">disableInterrupts()</a> cannot be called within an interrupt routine, but can be called before the kernel is started (and does nothing in this case) </p>
+
+</div>
+</div>
+<a class="anchor" id="ga36adaaa176d004747d2a01b822c9fea5"></a><!-- doxytag: member="miosix::enableInterrupts" ref="ga36adaaa176d004747d2a01b822c9fea5" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void miosix::enableInterrupts </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Enable interrupts.<br/>
+ Please note that starting from Miosix 1.51 <a class="el" href="group___kernel.html#gacd7ef6e968c5c0b2ff45bf102388ea4d">disableInterrupts()</a> and <a class="el" href="group___kernel.html#ga36adaaa176d004747d2a01b822c9fea5">enableInterrupts()</a> can be nested. You can therefore call <a class="el" href="group___kernel.html#gacd7ef6e968c5c0b2ff45bf102388ea4d">disableInterrupts()</a> multiple times as long as each call is matched by a call to <a class="el" href="group___kernel.html#ga36adaaa176d004747d2a01b822c9fea5">enableInterrupts()</a>.<br/>
+ This replaced disable_and_save_interrupts() and restore_interrupts()</p>
+<p><a class="el" href="group___kernel.html#ga36adaaa176d004747d2a01b822c9fea5">enableInterrupts()</a> cannot be called within an interrupt routine, but can be called before the kernel is started (and does nothing in this case) </p>
+
+</div>
+</div>
+<a class="anchor" id="gaeeacb47660439066bb1d787593da9f4e"></a><!-- doxytag: member="miosix::fastDisableInterrupts" ref="gaeeacb47660439066bb1d787593da9f4e" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void miosix::fastDisableInterrupts </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Fast version of <a class="el" href="group___kernel.html#gacd7ef6e968c5c0b2ff45bf102388ea4d">disableInterrupts()</a>.<br/>
+ Despite faster, it has a couple of preconditions:</p>
+<ul>
+<li>calls to <a class="el" href="group___kernel.html#gaeeacb47660439066bb1d787593da9f4e">fastDisableInterrupts()</a> can't be nested</li>
+<li>it can't be used in code that is called before the kernel is started </li>
+</ul>
+
+</div>
+</div>
+<a class="anchor" id="ga882229b6c936a87454cb154a90751927"></a><!-- doxytag: member="miosix::fastEnableInterrupts" ref="ga882229b6c936a87454cb154a90751927" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void miosix::fastEnableInterrupts </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Fast version of <a class="el" href="group___kernel.html#ga36adaaa176d004747d2a01b822c9fea5">enableInterrupts()</a>.<br/>
+ Despite faster, it has a couple of preconditions:</p>
+<ul>
+<li>calls to <a class="el" href="group___kernel.html#gaeeacb47660439066bb1d787593da9f4e">fastDisableInterrupts()</a> can't be nested</li>
+<li>it can't be used in code that is called before the kernel is started, because it will (incorreclty) lead to interrupts being enabled before the kernel is started </li>
+</ul>
+
+</div>
+</div>
+<a class="anchor" id="gad16c495ced6659e8bc0bb371362674ef"></a><!-- doxytag: member="miosix::getTick" ref="gad16c495ced6659e8bc0bb371362674ef" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">long long miosix::getTick </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Returns the current kernel tick.<br/>
+Can be called also with interrupts disabled and/or kernel paused. </p>
+<dl class="return"><dt><b>Returns:</b></dt><dd>current kernel tick </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="gaabdbf06e8cf514d3113325a01927ccf5"></a><!-- doxytag: member="miosix::isKernelRunning" ref="gaabdbf06e8cf514d3113325a01927ccf5" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool miosix::isKernelRunning </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Return true if kernel is running, false if it is not started, or paused.<br/>
+ Warning: disabling/enabling interrupts does not affect the result returned by this function. </p>
+<dl class="return"><dt><b>Returns:</b></dt><dd>true if kernel is running (started &amp;&amp; not paused) </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ga730c9359f8069cb2f785501ea763eb43"></a><!-- doxytag: member="miosix::pauseKernel" ref="ga730c9359f8069cb2f785501ea763eb43" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void miosix::pauseKernel </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Pause the kernel.<br/>
+Interrupts will continue to occur, but no preemption is possible. Call to this function are cumulative: if you call <a class="el" href="group___kernel.html#ga730c9359f8069cb2f785501ea763eb43">pauseKernel()</a> two times, you need to call <a class="el" href="group___kernel.html#gad3bee49a8dd57a598b7d7aeeeaf8496c">restartKernel()</a> two times.<br/>
+Pausing the kernel must be avoided if possible because it is easy to cause deadlock. Calling file related functions (fopen, <a class="el" href="classmiosix_1_1_directory.html#ab3b8f627404f790ca9e309dd90d4e8a0">Directory::open()</a> ...), serial port related functions (printf ...) or kernel functions that cannot be called when the kernel is paused will cause deadlock. Therefore, if possible, it is better to use a <a class="el" href="classmiosix_1_1_mutex.html">Mutex</a> instead of pausing the kernel<br/>
+This function is safe to be called even before the kernel is started. In this case it has no effect. </p>
+
+</div>
+</div>
+<a class="anchor" id="gad3bee49a8dd57a598b7d7aeeeaf8496c"></a><!-- doxytag: member="miosix::restartKernel" ref="gad3bee49a8dd57a598b7d7aeeeaf8496c" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void miosix::restartKernel </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Restart the kernel.<br/>
+This function will yield immediately if a tick has been missed. Since calls to <a class="el" href="group___kernel.html#ga730c9359f8069cb2f785501ea763eb43">pauseKernel()</a> are cumulative, if you call <a class="el" href="group___kernel.html#ga730c9359f8069cb2f785501ea763eb43">pauseKernel()</a> two times, you need to call <a class="el" href="group___kernel.html#gad3bee49a8dd57a598b7d7aeeeaf8496c">restartKernel()</a> two times.<br/>
+ This function is safe to be called even before the kernel is started. In this case it has no effect. </p>
+
+</div>
+</div>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/group___settings.html b/miosix/_doc/doxygen/html/group___settings.html
new file mode 100644
index 00000000..e3275667
--- /dev/null
+++ b/miosix/_doc/doxygen/html/group___settings.html
@@ -0,0 +1,235 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Settings</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="summary">
+<a href="#define-members">Defines</a> &#124;
+<a href="#var-members">Variables</a>  </div>
+  <div class="headertitle">
+<h1>Settings</h1>  </div>
+</div>
+<div class="contents">
+<table class="memberdecls">
+<tr><td colspan="2"><h2><a name="define-members"></a>
+Defines</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___settings.html#ga2acdc2f0df96cf6cbc35f7fd78ddb70d">SCHED_TYPE_PRIORITY</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___settings.html#ga18c8e73660707ad40a2ee8590f35db68">SCHED_TYPE_CONTROL_BASED</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___settings.html#gaca4195a7b3efe86d766d5fbf6db64aa0">SCHED_TYPE_EDF</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___settings.html#ga35c68f7b13770080cccce5baafc24a30">WITH_FILESYSTEM</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___settings.html#ga7f95cdeac372c6633422b100d6b15bba">SYNC_AFTER_WRITE</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___settings.html#gaad46faddaac4a765531e05ab44c52a3e">WITH_STDIN_BUFFER</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___settings.html#ga2c6b4dab3da5b7b77fef128e1cd2fa79">WITH_BOOTLOG</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___settings.html#ga77cf94725c645792e686ff791e47d703">WITH_ERRLOG</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___settings.html#gae8275208fa2c8f8bc833fa8bc78ff350">JTAG_DISABLE_SLEEP</a></td></tr>
+<tr><td colspan="2"><h2><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga0ec1a8ab604e6a08eec2994d436346f7"></a><!-- doxytag: member="Settings::MAX_OPEN_FILES" ref="ga0ec1a8ab604e6a08eec2994d436346f7" args="" -->
+const unsigned char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___settings.html#ga0ec1a8ab604e6a08eec2994d436346f7">miosix::MAX_OPEN_FILES</a> = 8</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Maximum number of open files. Trying to open more will fail. <br/></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga26c88a1771bb21a80aa22789d16291d1"></a><!-- doxytag: member="Settings::STACK_MIN" ref="ga26c88a1771bb21a80aa22789d16291d1" args="" -->
+const unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___settings.html#ga26c88a1771bb21a80aa22789d16291d1">miosix::STACK_MIN</a> = 256</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Minimum stack size (MUST be divisible by 4). <br/></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">const unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___settings.html#ga466ea8e233d84803e31f3e9d9d978cfd">miosix::STACK_DEFAULT_FOR_PTHREAD</a> = 2048</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">const short int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___settings.html#ga8c0365b6cd111f990937319e4499962b">miosix::PRIORITY_MAX</a> = 4</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">const unsigned char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___settings.html#gad66abb7a060d94617390e1838e4e3b01">miosix::MAIN_PRIORITY</a> = 1</td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<p>If your application requires it, you can change the default settings for kernel and drivers.</p>
+<p>Kernel settings are in miosix/kernel/kernel_settings.h,<br/>
+ while all other settings are in miosix/miosix_settings.h<br/>
+</p>
+<p>Don't forget to rebuild the kernel if you make modifications to these settings. </p>
+<hr/><h2>Define Documentation</h2>
+<a class="anchor" id="gae8275208fa2c8f8bc833fa8bc78ff350"></a><!-- doxytag: member="miosix_settings.h::JTAG_DISABLE_SLEEP" ref="gae8275208fa2c8f8bc833fa8bc78ff350" args="" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define JTAG_DISABLE_SLEEP</td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>JTAG debuggers lose communication with the device if it enters sleep mode, so to use debugging it is necessary to disble sleep in the idle thread. By default it is not defined (idle thread calls sleep). </p>
+
+</div>
+</div>
+<a class="anchor" id="ga18c8e73660707ad40a2ee8590f35db68"></a><!-- doxytag: member="miosix_settings.h::SCHED_TYPE_CONTROL_BASED" ref="ga18c8e73660707ad40a2ee8590f35db68" args="" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define SCHED_TYPE_CONTROL_BASED</td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>If uncommented selects the control based scheduler </p>
+
+</div>
+</div>
+<a class="anchor" id="gaca4195a7b3efe86d766d5fbf6db64aa0"></a><!-- doxytag: member="miosix_settings.h::SCHED_TYPE_EDF" ref="gaca4195a7b3efe86d766d5fbf6db64aa0" args="" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define SCHED_TYPE_EDF</td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>If uncommented selects the EDF scheduler </p>
+
+</div>
+</div>
+<a class="anchor" id="ga2acdc2f0df96cf6cbc35f7fd78ddb70d"></a><!-- doxytag: member="miosix_settings.h::SCHED_TYPE_PRIORITY" ref="ga2acdc2f0df96cf6cbc35f7fd78ddb70d" args="" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define SCHED_TYPE_PRIORITY</td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>If uncommented selects the priority scheduler </p>
+
+</div>
+</div>
+<a class="anchor" id="ga7f95cdeac372c6633422b100d6b15bba"></a><!-- doxytag: member="miosix_settings.h::SYNC_AFTER_WRITE" ref="ga7f95cdeac372c6633422b100d6b15bba" args="" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define SYNC_AFTER_WRITE</td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Increases filesystem write robustness. After each write operation the filesystem is synced so that a power failure happens data is not lost (unless power failure happens exactly between the write and the sync) Unfortunately write latency and throughput becomes twice as worse By default it is defined (slow but safe) </p>
+
+</div>
+</div>
+<a class="anchor" id="ga2c6b4dab3da5b7b77fef128e1cd2fa79"></a><!-- doxytag: member="miosix_settings.h::WITH_BOOTLOG" ref="ga2c6b4dab3da5b7b77fef128e1cd2fa79" args="" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define WITH_BOOTLOG</td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Uncomment to print bootlogs on stdout. By default it is defined (bootlogs are printed) </p>
+
+</div>
+</div>
+<a class="anchor" id="ga77cf94725c645792e686ff791e47d703"></a><!-- doxytag: member="miosix_settings.h::WITH_ERRLOG" ref="ga77cf94725c645792e686ff791e47d703" args="" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define WITH_ERRLOG</td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Uncomment for debug information on stdout. By default it is defined (error information is printed) </p>
+
+</div>
+</div>
+<a class="anchor" id="ga35c68f7b13770080cccce5baafc24a30"></a><!-- doxytag: member="miosix_settings.h::WITH_FILESYSTEM" ref="ga35c68f7b13770080cccce5baafc24a30" args="" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define WITH_FILESYSTEM</td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Allows to enable/disable filesystem support. By default it is defined (filesystem support is enabled) </p>
+
+</div>
+</div>
+<a class="anchor" id="gaad46faddaac4a765531e05ab44c52a3e"></a><!-- doxytag: member="miosix_settings.h::WITH_STDIN_BUFFER" ref="gaad46faddaac4a765531e05ab44c52a3e" args="" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define WITH_STDIN_BUFFER</td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>If defined, incoming data fron the serial port will be buffered prior to being delivered to stdin related functions (scanf, fgets, cin...). Buffer is flushed on newline or when full. This has a behaviour more similar to desktop operating systems but requires 1KB of RAM for the buffer. Despite counterintuitive, if you never use stdin related functions defining WITH_STDIN_BUFFER will reduce code size. By default it is defined (stdin is buffered) </p>
+
+</div>
+</div>
+<hr/><h2>Variable Documentation</h2>
+<a class="anchor" id="gad66abb7a060d94617390e1838e4e3b01"></a><!-- doxytag: member="miosix::MAIN_PRIORITY" ref="gad66abb7a060d94617390e1838e4e3b01" args="" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">const unsigned char <a class="el" href="group___settings.html#gad66abb7a060d94617390e1838e4e3b01">miosix::MAIN_PRIORITY</a> = 1</td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Priority of main() The meaning of a thread's priority depends on the chosen scheduler. </p>
+
+</div>
+</div>
+<a class="anchor" id="ga8c0365b6cd111f990937319e4499962b"></a><!-- doxytag: member="miosix::PRIORITY_MAX" ref="ga8c0365b6cd111f990937319e4499962b" args="" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">const short int <a class="el" href="group___settings.html#ga8c0365b6cd111f990937319e4499962b">miosix::PRIORITY_MAX</a> = 4</td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Number of priorities (MUST be &gt;1) PRIORITY_MAX-1 is the highest priority, 0 is the lowest. -1 is reserved as the priority of the idle thread. The meaning of a thread's priority depends on the chosen scheduler. </p>
+
+</div>
+</div>
+<a class="anchor" id="ga466ea8e233d84803e31f3e9d9d978cfd"></a><!-- doxytag: member="miosix::STACK_DEFAULT_FOR_PTHREAD" ref="ga466ea8e233d84803e31f3e9d9d978cfd" args="" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">const unsigned int <a class="el" href="group___settings.html#ga466ea8e233d84803e31f3e9d9d978cfd">miosix::STACK_DEFAULT_FOR_PTHREAD</a> = 2048</td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Default stack size for pthread_create. The chosen value is enough to call C standard library functions such as printf/fopen which are stack-heavy </p>
+
+</div>
+</div>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/group___sync.html b/miosix/_doc/doxygen/html/group___sync.html
new file mode 100644
index 00000000..33f68efb
--- /dev/null
+++ b/miosix/_doc/doxygen/html/group___sync.html
@@ -0,0 +1,51 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Syncronization</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a>  </div>
+  <div class="headertitle">
+<h1>Syncronization</h1>  </div>
+</div>
+<div class="contents">
+<table class="memberdecls">
+<tr><td colspan="2"><h2><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_fast_mutex.html">miosix::FastMutex</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_mutex.html">miosix::Mutex</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_lock.html">miosix::Lock&lt; T &gt;</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_unlock.html">miosix::Unlock&lt; T &gt;</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_condition_variable.html">miosix::ConditionVariable</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_timer.html">miosix::Timer</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_queue.html">miosix::Queue&lt; T, len &gt;</a></td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<p>Miosix syncronization API</p>
+<p>Miosix provides the <a class="el" href="classmiosix_1_1_mutex.html">Mutex</a> class to guard critical sections,<br/>
+ the <a class="el" href="classmiosix_1_1_condition_variable.html">ConditionVariable</a> class for thread synchronization,<br/>
+ the <a class="el" href="classmiosix_1_1_queue.html">Queue</a> class to transfer data between threads,<br/>
+ and the <a class="el" href="classmiosix_1_1_timer.html">Timer</a> class to measure time intervals. </p>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/group___util.html b/miosix/_doc/doxygen/html/group___util.html
new file mode 100644
index 00000000..03b808a8
--- /dev/null
+++ b/miosix/_doc/doxygen/html/group___util.html
@@ -0,0 +1,102 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Utilities</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a> &#124;
+<a href="#func-members">Functions</a>  </div>
+  <div class="headertitle">
+<h1>Utilities</h1>  </div>
+</div>
+<div class="contents">
+<table class="memberdecls">
+<tr><td colspan="2"><h2><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_memory_profiling.html">miosix::MemoryProfiling</a></td></tr>
+<tr><td colspan="2"><h2><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___util.html#gaa01c92389801f7962a0bd9f0bfc03a66">miosix::memDump</a> (char *start, int len)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___util.html#gadc3015d9be3c5eb12fe691ca0ca9251b">miosix::getMiosixVersion</a> ()</td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<p>Some utilities functions.</p>
+<p>The most notable ones are the utilities for memory profiling, grouped in the <a class="el" href="classmiosix_1_1_memory_profiling.html">MemoryProfiling</a> class. </p>
+<hr/><h2>Function Documentation</h2>
+<a class="anchor" id="gadc3015d9be3c5eb12fe691ca0ca9251b"></a><!-- doxytag: member="miosix::getMiosixVersion" ref="gadc3015d9be3c5eb12fe691ca0ca9251b" args="()" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">const char * miosix::getMiosixVersion </td>
+          <td>(</td>
+          <td class="paramname"></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Allows to know the version of the kernel at runtime. </p>
+<dl class="return"><dt><b>Returns:</b></dt><dd>a string with the kernel version. The format is "Miosix vX.XX (board, builddate, compiler)" where vX.XX is the kernel version number, like "v1.59" board is the board name, like "stm32f103ze_stm3210e-eval" builddate is the date the kernel was built, like "Oct 30 2011 00:58:10" compiler is the compiler version, like "gcc 4.5.2" </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="gaa01c92389801f7962a0bd9f0bfc03a66"></a><!-- doxytag: member="miosix::memDump" ref="gaa01c92389801f7962a0bd9f0bfc03a66" args="(char *start, int len)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void miosix::memDump </td>
+          <td>(</td>
+          <td class="paramtype">char *&nbsp;</td>
+          <td class="paramname"> <em>start</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">int&nbsp;</td>
+          <td class="paramname"> <em>len</em></td><td>&nbsp;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td><td></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>dump a memory area in this format 0x00000000 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................ </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>start</em>&nbsp;</td><td>pointer to beginning of memory block to dump </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>len</em>&nbsp;</td><td>length of memory block to dump </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/index.html b/miosix/_doc/doxygen/html/index.html
new file mode 100644
index 00000000..2d10eb62
--- /dev/null
+++ b/miosix/_doc/doxygen/html/index.html
@@ -0,0 +1,16 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix</title>
+</head>
+<frameset cols="250,*">
+  <frame src="tree.html" name="treefrm"/>
+  <frame src="main.html" name="basefrm"/>
+  <noframes>
+    <body>
+    <a href="main.html">Frames are disabled. Click here to go to the main page.</a>
+    </body>
+  </noframes>
+</frameset>
+</html>
diff --git a/miosix/_doc/doxygen/html/main.html b/miosix/_doc/doxygen/html/main.html
new file mode 100644
index 00000000..27a16ab8
--- /dev/null
+++ b/miosix/_doc/doxygen/html/main.html
@@ -0,0 +1,34 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Miosix embedded OS</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li class="current"><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="headertitle">
+<h1>Miosix embedded OS </h1>  </div>
+</div>
+<div class="contents">
+<h3 class="version">1.59 </h3><dl class="author"><dt><b>Author:</b></dt><dd>Terraneo Federico</dd></dl>
+<p>This is the documentation of Miosix, a kernel designed for embedded systems. </p>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/miosix__settings_8h.html b/miosix/_doc/doxygen/html/miosix__settings_8h.html
new file mode 100644
index 00000000..1e47b3d3
--- /dev/null
+++ b/miosix/_doc/doxygen/html/miosix__settings_8h.html
@@ -0,0 +1,73 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: miosix_settings.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&nbsp;List</span></a></li>
+      <li><a href="globals.html"><span>File&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="summary">
+<a href="#namespaces">Namespaces</a> &#124;
+<a href="#define-members">Defines</a> &#124;
+<a href="#var-members">Variables</a>  </div>
+  <div class="headertitle">
+<h1>miosix_settings.h File Reference</h1>  </div>
+</div>
+<div class="contents">
+<code>#include &quot;arch_settings.h&quot;</code><br/>
+<code>#include &quot;board_settings.h&quot;</code><br/>
+<table class="memberdecls">
+<tr><td colspan="2"><h2><a name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">namespace &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemiosix.html">miosix</a></td></tr>
+<tr><td colspan="2"><h2><a name="define-members"></a>
+Defines</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___settings.html#ga2acdc2f0df96cf6cbc35f7fd78ddb70d">SCHED_TYPE_PRIORITY</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___settings.html#ga18c8e73660707ad40a2ee8590f35db68">SCHED_TYPE_CONTROL_BASED</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___settings.html#gaca4195a7b3efe86d766d5fbf6db64aa0">SCHED_TYPE_EDF</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___settings.html#ga35c68f7b13770080cccce5baafc24a30">WITH_FILESYSTEM</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___settings.html#ga7f95cdeac372c6633422b100d6b15bba">SYNC_AFTER_WRITE</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___settings.html#gaad46faddaac4a765531e05ab44c52a3e">WITH_STDIN_BUFFER</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___settings.html#ga2c6b4dab3da5b7b77fef128e1cd2fa79">WITH_BOOTLOG</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___settings.html#ga77cf94725c645792e686ff791e47d703">WITH_ERRLOG</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___settings.html#gae8275208fa2c8f8bc833fa8bc78ff350">JTAG_DISABLE_SLEEP</a></td></tr>
+<tr><td colspan="2"><h2><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga0ec1a8ab604e6a08eec2994d436346f7"></a><!-- doxytag: member="miosix_settings.h::MAX_OPEN_FILES" ref="ga0ec1a8ab604e6a08eec2994d436346f7" args="" -->
+const unsigned char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___settings.html#ga0ec1a8ab604e6a08eec2994d436346f7">miosix::MAX_OPEN_FILES</a> = 8</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Maximum number of open files. Trying to open more will fail. <br/></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga26c88a1771bb21a80aa22789d16291d1"></a><!-- doxytag: member="miosix_settings.h::STACK_MIN" ref="ga26c88a1771bb21a80aa22789d16291d1" args="" -->
+const unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___settings.html#ga26c88a1771bb21a80aa22789d16291d1">miosix::STACK_MIN</a> = 256</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Minimum stack size (MUST be divisible by 4). <br/></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">const unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___settings.html#ga466ea8e233d84803e31f3e9d9d978cfd">miosix::STACK_DEFAULT_FOR_PTHREAD</a> = 2048</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">const short int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___settings.html#ga8c0365b6cd111f990937319e4499962b">miosix::PRIORITY_MAX</a> = 4</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">const unsigned char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___settings.html#gad66abb7a060d94617390e1838e4e3b01">miosix::MAIN_PRIORITY</a> = 1</td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<p>NOTE: this file contains ONLY configuration options that are not dependent on architecture specific details. The other options are in the following files which are included here: miosix/arch/architecture name/common/arch_settings.h miosix/arch/architecture name/board name/board_settings.h </p>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/modules.html b/miosix/_doc/doxygen/html/modules.html
new file mode 100644
index 00000000..a6c0f989
--- /dev/null
+++ b/miosix/_doc/doxygen/html/modules.html
@@ -0,0 +1,42 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Module Index</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li class="current"><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="headertitle">
+<h1>Modules</h1>  </div>
+</div>
+<div class="contents">
+Here is a list of all modules:<ul>
+<li><a class="el" href="group___kernel.html">Kernel</a></li>
+<li><a class="el" href="group___sync.html">Syncronization</a></li>
+<li><a class="el" href="group___interfaces.html">Interfaces</a></li>
+<li><a class="el" href="group___hardware.html">Hardware</a></li>
+<li><a class="el" href="group___filesystem.html">Filesystem</a></li>
+<li><a class="el" href="group___drivers.html">Drivers</a></li>
+<li><a class="el" href="group___util.html">Utilities</a></li>
+<li><a class="el" href="group___settings.html">Settings</a></li>
+</ul>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/namespacemembers.html b/miosix/_doc/doxygen/html/namespacemembers.html
new file mode 100644
index 00000000..87b8c593
--- /dev/null
+++ b/miosix/_doc/doxygen/html/namespacemembers.html
@@ -0,0 +1,278 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Class Members</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li class="current"><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="namespaces.html"><span>Namespace&nbsp;List</span></a></li>
+      <li class="current"><a href="namespacemembers.html"><span>Namespace&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li class="current"><a href="namespacemembers.html"><span>All</span></a></li>
+      <li><a href="namespacemembers_func.html"><span>Functions</span></a></li>
+      <li><a href="namespacemembers_vars.html"><span>Variables</span></a></li>
+      <li><a href="namespacemembers_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="namespacemembers_eval.html"><span>Enumerator</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs3">
+    <ul class="tablist">
+      <li><a href="#index_a"><span>a</span></a></li>
+      <li><a href="#index_b"><span>b</span></a></li>
+      <li><a href="#index_c"><span>c</span></a></li>
+      <li><a href="#index_d"><span>d</span></a></li>
+      <li><a href="#index_e"><span>e</span></a></li>
+      <li><a href="#index_f"><span>f</span></a></li>
+      <li><a href="#index_g"><span>g</span></a></li>
+      <li><a href="#index_h"><span>h</span></a></li>
+      <li><a href="#index_i"><span>i</span></a></li>
+      <li><a href="#index_k"><span>k</span></a></li>
+      <li><a href="#index_m"><span>m</span></a></li>
+      <li><a href="#index_n"><span>n</span></a></li>
+      <li><a href="#index_o"><span>o</span></a></li>
+      <li><a href="#index_p"><span>p</span></a></li>
+      <li><a href="#index_r"><span>r</span></a></li>
+      <li><a href="#index_s"><span>s</span></a></li>
+      <li><a href="#index_u"><span>u</span></a></li>
+      <li><a href="#index_v"><span>v</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="contents">
+Here is a list of all documented namespace members with links to the namespaces they belong to:
+
+<h3><a class="anchor" id="index_a"></a>- a -</h3><ul>
+<li>ARCHIVE
+: <a class="el" href="group___filesystem.html#gga9fab0d0eb30aba32bb0c6ca21d72c845ab608cfd1ce6c8c0f131a6cfe5edb36d4">miosix</a>
+</li>
+<li>areInterruptsEnabled()
+: <a class="el" href="group___kernel.html#gacabb0637ded36778470fa27eea329d84">miosix</a>
+</li>
+<li>Attrib
+: <a class="el" href="group___filesystem.html#ga9fab0d0eb30aba32bb0c6ca21d72c845">miosix</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_b"></a>- b -</h3><ul>
+<li>bootlog()
+: <a class="el" href="namespacemiosix.html#a0e2bf0d427fe1eb214692830e46fb209">miosix</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_c"></a>- c -</h3><ul>
+<li>crc16()
+: <a class="el" href="namespacemiosix.html#a9e8a0090904ff275d38d22f26919ff69">miosix</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_d"></a>- d -</h3><ul>
+<li>delayMs()
+: <a class="el" href="group___interfaces.html#ga9d13aceddc0481fd1077e6fdfb31f9a7">miosix</a>
+</li>
+<li>delayUs()
+: <a class="el" href="group___interfaces.html#ga244f9474d20ffd5d905855f68aa3114f">miosix</a>
+</li>
+<li>DIRECTORY
+: <a class="el" href="group___filesystem.html#gga9fab0d0eb30aba32bb0c6ca21d72c845a1dee5448b32ceee464cfd092b991de86">miosix</a>
+</li>
+<li>DISABLE_INTERRUPTS_NESTING
+: <a class="el" href="namespacemiosix.html#ac0146189e7df18439dc2f4103f07cfe8a7b868b4e1fd949857af27acacd2f9cbb">miosix</a>
+</li>
+<li>disableInterrupts()
+: <a class="el" href="group___kernel.html#gacd7ef6e968c5c0b2ff45bf102388ea4d">miosix</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_e"></a>- e -</h3><ul>
+<li>enableInterrupts()
+: <a class="el" href="group___kernel.html#ga36adaaa176d004747d2a01b822c9fea5">miosix</a>
+</li>
+<li>Error
+: <a class="el" href="namespacemiosix.html#ac0146189e7df18439dc2f4103f07cfe8">miosix</a>
+</li>
+<li>errorHandler()
+: <a class="el" href="namespacemiosix.html#aecda173e5927720cd233599817c5da23">miosix</a>
+</li>
+<li>errorLog()
+: <a class="el" href="namespacemiosix.html#ac57cb5a3e83dc0c859161bc4aa04d591">miosix</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_f"></a>- f -</h3><ul>
+<li>fastDisableInterrupts()
+: <a class="el" href="group___kernel.html#gaeeacb47660439066bb1d787593da9f4e">miosix</a>
+</li>
+<li>fastEnableInterrupts()
+: <a class="el" href="group___kernel.html#ga882229b6c936a87454cb154a90751927">miosix</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_g"></a>- g -</h3><ul>
+<li>getMiosixVersion()
+: <a class="el" href="group___util.html#gadc3015d9be3c5eb12fe691ca0ca9251b">miosix</a>
+</li>
+<li>getTick()
+: <a class="el" href="group___kernel.html#gad16c495ced6659e8bc0bb371362674ef">miosix</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_h"></a>- h -</h3><ul>
+<li>HIDDEN
+: <a class="el" href="group___filesystem.html#gga9fab0d0eb30aba32bb0c6ca21d72c845a18d657bc5127e6fe6d0e3b1ede96ff43">miosix</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_i"></a>- i -</h3><ul>
+<li>INTERRUPTS_ENABLED_AT_BOOT
+: <a class="el" href="namespacemiosix.html#ac0146189e7df18439dc2f4103f07cfe8ac5c5ef56383e34096e518226d8898f53">miosix</a>
+</li>
+<li>INVALID_PARAMETERS
+: <a class="el" href="namespacemiosix.html#ac0146189e7df18439dc2f4103f07cfe8af0fb70dd25fac18136ea28f9c0286b65">miosix</a>
+</li>
+<li>IRQbootlog()
+: <a class="el" href="namespacemiosix.html#a77703dfc8874c826975fa54f79e7a3e5">miosix</a>
+</li>
+<li>IRQerrorLog()
+: <a class="el" href="namespacemiosix.html#afa3e31f3fb49abc777a10380ca9ffe19">miosix</a>
+</li>
+<li>isKernelRunning()
+: <a class="el" href="group___kernel.html#gaabdbf06e8cf514d3113325a01927ccf5">miosix</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_k"></a>- k -</h3><ul>
+<li>kpi
+: <a class="el" href="namespacemiosix.html#ab26854f238450057e4b1eb3687ac4f88">miosix</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_m"></a>- m -</h3><ul>
+<li>MAIN_PRIORITY
+: <a class="el" href="group___settings.html#gad66abb7a060d94617390e1838e4e3b01">miosix</a>
+</li>
+<li>MAX_OPEN_FILES
+: <a class="el" href="group___settings.html#ga0ec1a8ab604e6a08eec2994d436346f7">miosix</a>
+</li>
+<li>memDump()
+: <a class="el" href="group___util.html#gaa01c92389801f7962a0bd9f0bfc03a66">miosix</a>
+</li>
+<li>multFactor
+: <a class="el" href="namespacemiosix.html#ac4774f319395e90899e2aa549444495b">miosix</a>
+</li>
+<li>MUTEX_DEADLOCK
+: <a class="el" href="namespacemiosix.html#ac0146189e7df18439dc2f4103f07cfe8a19d15bb3cd3dd524578bc258113a95ea">miosix</a>
+</li>
+<li>MUTEX_UNLOCK_NOT_OWNER
+: <a class="el" href="namespacemiosix.html#ac0146189e7df18439dc2f4103f07cfe8a9bb07c35ec33e49234a73ea04f49e5e8">miosix</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_n"></a>- n -</h3><ul>
+<li>NESTING_OVERFLOW
+: <a class="el" href="namespacemiosix.html#ac0146189e7df18439dc2f4103f07cfe8acfa2dba3f5a797e00a49aecb3385dcd6">miosix</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_o"></a>- o -</h3><ul>
+<li>OUT_OF_MEMORY
+: <a class="el" href="namespacemiosix.html#ac0146189e7df18439dc2f4103f07cfe8a4a9ecbff543a923809f4a669f5a2ff18">miosix</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_p"></a>- p -</h3><ul>
+<li>PAUSE_KERNEL_NESTING
+: <a class="el" href="namespacemiosix.html#ac0146189e7df18439dc2f4103f07cfe8aba75de60056149f80f47ed9b2249fdf2">miosix</a>
+</li>
+<li>pauseKernel()
+: <a class="el" href="group___kernel.html#ga730c9359f8069cb2f785501ea763eb43">miosix</a>
+</li>
+<li>PRIORITY_MAX
+: <a class="el" href="group___settings.html#ga8c0365b6cd111f990937319e4499962b">miosix</a>
+</li>
+<li>PROPAGATED_EXCEPTION
+: <a class="el" href="namespacemiosix.html#ac0146189e7df18439dc2f4103f07cfe8a05e4098f64c514996a071e09d3f030ec">miosix</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_r"></a>- r -</h3><ul>
+<li>READ_ONLY
+: <a class="el" href="group___filesystem.html#gga9fab0d0eb30aba32bb0c6ca21d72c845a12e947f8f047d273e068bde84dc756ae">miosix</a>
+</li>
+<li>reboot()
+: <a class="el" href="group___interfaces.html#ga6f70fdbc3b5d6afa41b5dbc5272cc6a0">miosix</a>
+</li>
+<li>restartKernel()
+: <a class="el" href="group___kernel.html#gad3bee49a8dd57a598b7d7aeeeaf8496c">miosix</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_s"></a>- s -</h3><ul>
+<li>shutdown()
+: <a class="el" href="group___interfaces.html#gae0495cbfc806a0db0cdf2ff023945516">miosix</a>
+</li>
+<li>STACK_DEFAULT_FOR_PTHREAD
+: <a class="el" href="group___settings.html#ga466ea8e233d84803e31f3e9d9d978cfd">miosix</a>
+</li>
+<li>STACK_MIN
+: <a class="el" href="group___settings.html#ga26c88a1771bb21a80aa22789d16291d1">miosix</a>
+</li>
+<li>STACK_OVERFLOW
+: <a class="el" href="namespacemiosix.html#ac0146189e7df18439dc2f4103f07cfe8a772bd51dfe3b2db17e618c589e55e3b8">miosix</a>
+</li>
+<li>SYSTEM
+: <a class="el" href="group___filesystem.html#gga9fab0d0eb30aba32bb0c6ca21d72c845aafe01ea46399c95c49849a481b3ac6c9">miosix</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_u"></a>- u -</h3><ul>
+<li>UNEXPECTED
+: <a class="el" href="namespacemiosix.html#ac0146189e7df18439dc2f4103f07cfe8a047868d81b859f0eda3d4a172900e4d6">miosix</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_v"></a>- v -</h3><ul>
+<li>VOLUME_ID
+: <a class="el" href="group___filesystem.html#gga9fab0d0eb30aba32bb0c6ca21d72c845a70a8eaf83cbb7e00925d35382689d59d">miosix</a>
+</li>
+</ul>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/namespacemembers_enum.html b/miosix/_doc/doxygen/html/namespacemembers_enum.html
new file mode 100644
index 00000000..2d95f329
--- /dev/null
+++ b/miosix/_doc/doxygen/html/namespacemembers_enum.html
@@ -0,0 +1,51 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Class Members</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li class="current"><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="namespaces.html"><span>Namespace&nbsp;List</span></a></li>
+      <li class="current"><a href="namespacemembers.html"><span>Namespace&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="namespacemembers.html"><span>All</span></a></li>
+      <li><a href="namespacemembers_func.html"><span>Functions</span></a></li>
+      <li><a href="namespacemembers_vars.html"><span>Variables</span></a></li>
+      <li class="current"><a href="namespacemembers_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="namespacemembers_eval.html"><span>Enumerator</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="contents">
+&nbsp;<ul>
+<li>Attrib
+: <a class="el" href="group___filesystem.html#ga9fab0d0eb30aba32bb0c6ca21d72c845">miosix</a>
+</li>
+<li>Error
+: <a class="el" href="namespacemiosix.html#ac0146189e7df18439dc2f4103f07cfe8">miosix</a>
+</li>
+</ul>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/namespacemembers_eval.html b/miosix/_doc/doxygen/html/namespacemembers_eval.html
new file mode 100644
index 00000000..2acef303
--- /dev/null
+++ b/miosix/_doc/doxygen/html/namespacemembers_eval.html
@@ -0,0 +1,96 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Class Members</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li class="current"><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="namespaces.html"><span>Namespace&nbsp;List</span></a></li>
+      <li class="current"><a href="namespacemembers.html"><span>Namespace&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="namespacemembers.html"><span>All</span></a></li>
+      <li><a href="namespacemembers_func.html"><span>Functions</span></a></li>
+      <li><a href="namespacemembers_vars.html"><span>Variables</span></a></li>
+      <li><a href="namespacemembers_enum.html"><span>Enumerations</span></a></li>
+      <li class="current"><a href="namespacemembers_eval.html"><span>Enumerator</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="contents">
+&nbsp;<ul>
+<li>ARCHIVE
+: <a class="el" href="group___filesystem.html#gga9fab0d0eb30aba32bb0c6ca21d72c845ab608cfd1ce6c8c0f131a6cfe5edb36d4">miosix</a>
+</li>
+<li>DIRECTORY
+: <a class="el" href="group___filesystem.html#gga9fab0d0eb30aba32bb0c6ca21d72c845a1dee5448b32ceee464cfd092b991de86">miosix</a>
+</li>
+<li>DISABLE_INTERRUPTS_NESTING
+: <a class="el" href="namespacemiosix.html#ac0146189e7df18439dc2f4103f07cfe8a7b868b4e1fd949857af27acacd2f9cbb">miosix</a>
+</li>
+<li>HIDDEN
+: <a class="el" href="group___filesystem.html#gga9fab0d0eb30aba32bb0c6ca21d72c845a18d657bc5127e6fe6d0e3b1ede96ff43">miosix</a>
+</li>
+<li>INTERRUPTS_ENABLED_AT_BOOT
+: <a class="el" href="namespacemiosix.html#ac0146189e7df18439dc2f4103f07cfe8ac5c5ef56383e34096e518226d8898f53">miosix</a>
+</li>
+<li>INVALID_PARAMETERS
+: <a class="el" href="namespacemiosix.html#ac0146189e7df18439dc2f4103f07cfe8af0fb70dd25fac18136ea28f9c0286b65">miosix</a>
+</li>
+<li>MUTEX_DEADLOCK
+: <a class="el" href="namespacemiosix.html#ac0146189e7df18439dc2f4103f07cfe8a19d15bb3cd3dd524578bc258113a95ea">miosix</a>
+</li>
+<li>MUTEX_UNLOCK_NOT_OWNER
+: <a class="el" href="namespacemiosix.html#ac0146189e7df18439dc2f4103f07cfe8a9bb07c35ec33e49234a73ea04f49e5e8">miosix</a>
+</li>
+<li>NESTING_OVERFLOW
+: <a class="el" href="namespacemiosix.html#ac0146189e7df18439dc2f4103f07cfe8acfa2dba3f5a797e00a49aecb3385dcd6">miosix</a>
+</li>
+<li>OUT_OF_MEMORY
+: <a class="el" href="namespacemiosix.html#ac0146189e7df18439dc2f4103f07cfe8a4a9ecbff543a923809f4a669f5a2ff18">miosix</a>
+</li>
+<li>PAUSE_KERNEL_NESTING
+: <a class="el" href="namespacemiosix.html#ac0146189e7df18439dc2f4103f07cfe8aba75de60056149f80f47ed9b2249fdf2">miosix</a>
+</li>
+<li>PROPAGATED_EXCEPTION
+: <a class="el" href="namespacemiosix.html#ac0146189e7df18439dc2f4103f07cfe8a05e4098f64c514996a071e09d3f030ec">miosix</a>
+</li>
+<li>READ_ONLY
+: <a class="el" href="group___filesystem.html#gga9fab0d0eb30aba32bb0c6ca21d72c845a12e947f8f047d273e068bde84dc756ae">miosix</a>
+</li>
+<li>STACK_OVERFLOW
+: <a class="el" href="namespacemiosix.html#ac0146189e7df18439dc2f4103f07cfe8a772bd51dfe3b2db17e618c589e55e3b8">miosix</a>
+</li>
+<li>SYSTEM
+: <a class="el" href="group___filesystem.html#gga9fab0d0eb30aba32bb0c6ca21d72c845aafe01ea46399c95c49849a481b3ac6c9">miosix</a>
+</li>
+<li>UNEXPECTED
+: <a class="el" href="namespacemiosix.html#ac0146189e7df18439dc2f4103f07cfe8a047868d81b859f0eda3d4a172900e4d6">miosix</a>
+</li>
+<li>VOLUME_ID
+: <a class="el" href="group___filesystem.html#gga9fab0d0eb30aba32bb0c6ca21d72c845a70a8eaf83cbb7e00925d35382689d59d">miosix</a>
+</li>
+</ul>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/namespacemembers_func.html b/miosix/_doc/doxygen/html/namespacemembers_func.html
new file mode 100644
index 00000000..aab24562
--- /dev/null
+++ b/miosix/_doc/doxygen/html/namespacemembers_func.html
@@ -0,0 +1,108 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Class Members</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li class="current"><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="namespaces.html"><span>Namespace&nbsp;List</span></a></li>
+      <li class="current"><a href="namespacemembers.html"><span>Namespace&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="namespacemembers.html"><span>All</span></a></li>
+      <li class="current"><a href="namespacemembers_func.html"><span>Functions</span></a></li>
+      <li><a href="namespacemembers_vars.html"><span>Variables</span></a></li>
+      <li><a href="namespacemembers_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="namespacemembers_eval.html"><span>Enumerator</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="contents">
+&nbsp;<ul>
+<li>areInterruptsEnabled()
+: <a class="el" href="group___kernel.html#gacabb0637ded36778470fa27eea329d84">miosix</a>
+</li>
+<li>bootlog()
+: <a class="el" href="namespacemiosix.html#a0e2bf0d427fe1eb214692830e46fb209">miosix</a>
+</li>
+<li>crc16()
+: <a class="el" href="namespacemiosix.html#a9e8a0090904ff275d38d22f26919ff69">miosix</a>
+</li>
+<li>delayMs()
+: <a class="el" href="group___interfaces.html#ga9d13aceddc0481fd1077e6fdfb31f9a7">miosix</a>
+</li>
+<li>delayUs()
+: <a class="el" href="group___interfaces.html#ga244f9474d20ffd5d905855f68aa3114f">miosix</a>
+</li>
+<li>disableInterrupts()
+: <a class="el" href="group___kernel.html#gacd7ef6e968c5c0b2ff45bf102388ea4d">miosix</a>
+</li>
+<li>enableInterrupts()
+: <a class="el" href="group___kernel.html#ga36adaaa176d004747d2a01b822c9fea5">miosix</a>
+</li>
+<li>errorHandler()
+: <a class="el" href="namespacemiosix.html#aecda173e5927720cd233599817c5da23">miosix</a>
+</li>
+<li>errorLog()
+: <a class="el" href="namespacemiosix.html#ac57cb5a3e83dc0c859161bc4aa04d591">miosix</a>
+</li>
+<li>fastDisableInterrupts()
+: <a class="el" href="group___kernel.html#gaeeacb47660439066bb1d787593da9f4e">miosix</a>
+</li>
+<li>fastEnableInterrupts()
+: <a class="el" href="group___kernel.html#ga882229b6c936a87454cb154a90751927">miosix</a>
+</li>
+<li>getMiosixVersion()
+: <a class="el" href="group___util.html#gadc3015d9be3c5eb12fe691ca0ca9251b">miosix</a>
+</li>
+<li>getTick()
+: <a class="el" href="group___kernel.html#gad16c495ced6659e8bc0bb371362674ef">miosix</a>
+</li>
+<li>IRQbootlog()
+: <a class="el" href="namespacemiosix.html#a77703dfc8874c826975fa54f79e7a3e5">miosix</a>
+</li>
+<li>IRQerrorLog()
+: <a class="el" href="namespacemiosix.html#afa3e31f3fb49abc777a10380ca9ffe19">miosix</a>
+</li>
+<li>isKernelRunning()
+: <a class="el" href="group___kernel.html#gaabdbf06e8cf514d3113325a01927ccf5">miosix</a>
+</li>
+<li>memDump()
+: <a class="el" href="group___util.html#gaa01c92389801f7962a0bd9f0bfc03a66">miosix</a>
+</li>
+<li>pauseKernel()
+: <a class="el" href="group___kernel.html#ga730c9359f8069cb2f785501ea763eb43">miosix</a>
+</li>
+<li>reboot()
+: <a class="el" href="group___interfaces.html#ga6f70fdbc3b5d6afa41b5dbc5272cc6a0">miosix</a>
+</li>
+<li>restartKernel()
+: <a class="el" href="group___kernel.html#gad3bee49a8dd57a598b7d7aeeeaf8496c">miosix</a>
+</li>
+<li>shutdown()
+: <a class="el" href="group___interfaces.html#gae0495cbfc806a0db0cdf2ff023945516">miosix</a>
+</li>
+</ul>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/namespacemembers_vars.html b/miosix/_doc/doxygen/html/namespacemembers_vars.html
new file mode 100644
index 00000000..4e56b3fd
--- /dev/null
+++ b/miosix/_doc/doxygen/html/namespacemembers_vars.html
@@ -0,0 +1,66 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Class Members</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li class="current"><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="namespaces.html"><span>Namespace&nbsp;List</span></a></li>
+      <li class="current"><a href="namespacemembers.html"><span>Namespace&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="namespacemembers.html"><span>All</span></a></li>
+      <li><a href="namespacemembers_func.html"><span>Functions</span></a></li>
+      <li class="current"><a href="namespacemembers_vars.html"><span>Variables</span></a></li>
+      <li><a href="namespacemembers_enum.html"><span>Enumerations</span></a></li>
+      <li><a href="namespacemembers_eval.html"><span>Enumerator</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="contents">
+&nbsp;<ul>
+<li>kpi
+: <a class="el" href="namespacemiosix.html#ab26854f238450057e4b1eb3687ac4f88">miosix</a>
+</li>
+<li>MAIN_PRIORITY
+: <a class="el" href="group___settings.html#gad66abb7a060d94617390e1838e4e3b01">miosix</a>
+</li>
+<li>MAX_OPEN_FILES
+: <a class="el" href="group___settings.html#ga0ec1a8ab604e6a08eec2994d436346f7">miosix</a>
+</li>
+<li>multFactor
+: <a class="el" href="namespacemiosix.html#ac4774f319395e90899e2aa549444495b">miosix</a>
+</li>
+<li>PRIORITY_MAX
+: <a class="el" href="group___settings.html#ga8c0365b6cd111f990937319e4499962b">miosix</a>
+</li>
+<li>STACK_DEFAULT_FOR_PTHREAD
+: <a class="el" href="group___settings.html#ga466ea8e233d84803e31f3e9d9d978cfd">miosix</a>
+</li>
+<li>STACK_MIN
+: <a class="el" href="group___settings.html#ga26c88a1771bb21a80aa22789d16291d1">miosix</a>
+</li>
+</ul>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/namespacemiosix.html b/miosix/_doc/doxygen/html/namespacemiosix.html
new file mode 100644
index 00000000..0620bf31
--- /dev/null
+++ b/miosix/_doc/doxygen/html/namespacemiosix.html
@@ -0,0 +1,389 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: miosix Namespace Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li class="current"><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="namespaces.html"><span>Namespace&nbsp;List</span></a></li>
+      <li><a href="namespacemembers.html"><span>Namespace&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a>  </div>
+  <div class="headertitle">
+<h1>miosix Namespace Reference</h1>  </div>
+</div>
+<div class="contents">
+<table class="memberdecls">
+<tr><td colspan="2"><h2><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_console.html">Console</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_filesystem.html">Filesystem</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_directory.html">Directory</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_interrupt_disable_lock.html">InterruptDisableLock</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_interrupt_enable_lock.html">InterruptEnableLock</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_fast_interrupt_disable_lock.html">FastInterruptDisableLock</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_fast_interrupt_enable_lock.html">FastInterruptEnableLock</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_pause_kernel_lock.html">PauseKernelLock</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_restart_kernel_lock.html">RestartKernelLock</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_thread.html">Thread</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_lower_priority.html">LowerPriority</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_control_scheduler_priority.html">ControlSchedulerPriority</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_e_d_f_scheduler_priority.html">EDFSchedulerPriority</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_priority_scheduler_priority.html">PrioritySchedulerPriority</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_fast_mutex.html">FastMutex</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_mutex.html">Mutex</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_lock.html">Lock</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_unlock.html">Unlock</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_condition_variable.html">ConditionVariable</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_timer.html">Timer</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_queue.html">Queue</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_exception_handling_data.html">ExceptionHandlingData</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_software_i2_c.html">SoftwareI2C</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_software_s_p_i.html">SoftwareSPI</a></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix_1_1_memory_profiling.html">MemoryProfiling</a></td></tr>
+<tr><td colspan="2"><h2><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemiosix.html#ac0146189e7df18439dc2f4103f07cfe8">Error</a> { <br/>
+&nbsp;&nbsp;<a class="el" href="namespacemiosix.html#ac0146189e7df18439dc2f4103f07cfe8af0fb70dd25fac18136ea28f9c0286b65">INVALID_PARAMETERS</a>, 
+<a class="el" href="namespacemiosix.html#ac0146189e7df18439dc2f4103f07cfe8a4a9ecbff543a923809f4a669f5a2ff18">OUT_OF_MEMORY</a>, 
+<a class="el" href="namespacemiosix.html#ac0146189e7df18439dc2f4103f07cfe8a772bd51dfe3b2db17e618c589e55e3b8">STACK_OVERFLOW</a>, 
+<a class="el" href="namespacemiosix.html#ac0146189e7df18439dc2f4103f07cfe8a047868d81b859f0eda3d4a172900e4d6">UNEXPECTED</a>, 
+<br/>
+&nbsp;&nbsp;<a class="el" href="namespacemiosix.html#ac0146189e7df18439dc2f4103f07cfe8aba75de60056149f80f47ed9b2249fdf2">PAUSE_KERNEL_NESTING</a>, 
+<a class="el" href="namespacemiosix.html#ac0146189e7df18439dc2f4103f07cfe8a7b868b4e1fd949857af27acacd2f9cbb">DISABLE_INTERRUPTS_NESTING</a>, 
+<a class="el" href="namespacemiosix.html#ac0146189e7df18439dc2f4103f07cfe8a19d15bb3cd3dd524578bc258113a95ea">MUTEX_DEADLOCK</a>, 
+<a class="el" href="namespacemiosix.html#ac0146189e7df18439dc2f4103f07cfe8a9bb07c35ec33e49234a73ea04f49e5e8">MUTEX_UNLOCK_NOT_OWNER</a>, 
+<br/>
+&nbsp;&nbsp;<a class="el" href="namespacemiosix.html#ac0146189e7df18439dc2f4103f07cfe8acfa2dba3f5a797e00a49aecb3385dcd6">NESTING_OVERFLOW</a>, 
+<a class="el" href="namespacemiosix.html#ac0146189e7df18439dc2f4103f07cfe8a05e4098f64c514996a071e09d3f030ec">PROPAGATED_EXCEPTION</a>, 
+<a class="el" href="namespacemiosix.html#ac0146189e7df18439dc2f4103f07cfe8ac5c5ef56383e34096e518226d8898f53">INTERRUPTS_ENABLED_AT_BOOT</a>
+<br/>
+ }</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___filesystem.html#ga9fab0d0eb30aba32bb0c6ca21d72c845">Attrib</a> { <br/>
+&nbsp;&nbsp;<a class="el" href="group___filesystem.html#gga9fab0d0eb30aba32bb0c6ca21d72c845a12e947f8f047d273e068bde84dc756ae">READ_ONLY</a> =  0x01, 
+<a class="el" href="group___filesystem.html#gga9fab0d0eb30aba32bb0c6ca21d72c845a18d657bc5127e6fe6d0e3b1ede96ff43">HIDDEN</a> =  0x02, 
+<a class="el" href="group___filesystem.html#gga9fab0d0eb30aba32bb0c6ca21d72c845aafe01ea46399c95c49849a481b3ac6c9">SYSTEM</a> =  0x04, 
+<a class="el" href="group___filesystem.html#gga9fab0d0eb30aba32bb0c6ca21d72c845a70a8eaf83cbb7e00925d35382689d59d">VOLUME_ID</a> =  0x08, 
+<br/>
+&nbsp;&nbsp;<a class="el" href="group___filesystem.html#gga9fab0d0eb30aba32bb0c6ca21d72c845a1dee5448b32ceee464cfd092b991de86">DIRECTORY</a> =  0x10, 
+<a class="el" href="group___filesystem.html#gga9fab0d0eb30aba32bb0c6ca21d72c845ab608cfd1ce6c8c0f131a6cfe5edb36d4">ARCHIVE</a> =  0x20
+<br/>
+ }</td></tr>
+<tr><td colspan="2"><h2><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___interfaces.html#gae0495cbfc806a0db0cdf2ff023945516">shutdown</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___interfaces.html#ga6f70fdbc3b5d6afa41b5dbc5272cc6a0">reboot</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___interfaces.html#ga9d13aceddc0481fd1077e6fdfb31f9a7">delayMs</a> (unsigned int mseconds)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___interfaces.html#ga244f9474d20ffd5d905855f68aa3114f">delayUs</a> (unsigned int useconds)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemiosix.html#aecda173e5927720cd233599817c5da23">errorHandler</a> (<a class="el" href="namespacemiosix.html#ac0146189e7df18439dc2f4103f07cfe8">Error</a> e)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___kernel.html#gacd7ef6e968c5c0b2ff45bf102388ea4d">disableInterrupts</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___kernel.html#ga36adaaa176d004747d2a01b822c9fea5">enableInterrupts</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___kernel.html#ga730c9359f8069cb2f785501ea763eb43">pauseKernel</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___kernel.html#gad3bee49a8dd57a598b7d7aeeeaf8496c">restartKernel</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___kernel.html#gacabb0637ded36778470fa27eea329d84">areInterruptsEnabled</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___kernel.html#gaabdbf06e8cf514d3113325a01927ccf5">isKernelRunning</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">long long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___kernel.html#gad16c495ced6659e8bc0bb371362674ef">getTick</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___kernel.html#gaeeacb47660439066bb1d787593da9f4e">fastDisableInterrupts</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___kernel.html#ga882229b6c936a87454cb154a90751927">fastEnableInterrupts</a> ()</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemiosix.html#a0e2bf0d427fe1eb214692830e46fb209">bootlog</a> (const char *string)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemiosix.html#a77703dfc8874c826975fa54f79e7a3e5">IRQbootlog</a> (const char *string)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemiosix.html#ac57cb5a3e83dc0c859161bc4aa04d591">errorLog</a> (const char *string)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemiosix.html#afa3e31f3fb49abc777a10380ca9ffe19">IRQerrorLog</a> (const char *string)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">unsigned short&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemiosix.html#a9e8a0090904ff275d38d22f26919ff69">crc16</a> (unsigned char *message, unsigned int length)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___util.html#gaa01c92389801f7962a0bd9f0bfc03a66">memDump</a> (char *start, int len)</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___util.html#gadc3015d9be3c5eb12fe691ca0ca9251b">getMiosixVersion</a> ()</td></tr>
+<tr><td colspan="2"><h2><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga0ec1a8ab604e6a08eec2994d436346f7"></a><!-- doxytag: member="miosix::MAX_OPEN_FILES" ref="ga0ec1a8ab604e6a08eec2994d436346f7" args="" -->
+const unsigned char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___settings.html#ga0ec1a8ab604e6a08eec2994d436346f7">MAX_OPEN_FILES</a> = 8</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Maximum number of open files. Trying to open more will fail. <br/></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga26c88a1771bb21a80aa22789d16291d1"></a><!-- doxytag: member="miosix::STACK_MIN" ref="ga26c88a1771bb21a80aa22789d16291d1" args="" -->
+const unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___settings.html#ga26c88a1771bb21a80aa22789d16291d1">STACK_MIN</a> = 256</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Minimum stack size (MUST be divisible by 4). <br/></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">const unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___settings.html#ga466ea8e233d84803e31f3e9d9d978cfd">STACK_DEFAULT_FOR_PTHREAD</a> = 2048</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">const short int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___settings.html#ga8c0365b6cd111f990937319e4499962b">PRIORITY_MAX</a> = 4</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">const unsigned char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___settings.html#gad66abb7a060d94617390e1838e4e3b01">MAIN_PRIORITY</a> = 1</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">const float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemiosix.html#ab26854f238450057e4b1eb3687ac4f88">kpi</a> = 0.5</td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">const int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemiosix.html#ac4774f319395e90899e2aa549444495b">multFactor</a> = static_cast&lt;int&gt;(1.0f/kpi)</td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<p>All user available kernel functions, classes are inside this namespace. </p>
+<hr/><h2>Enumeration Type Documentation</h2>
+<a class="anchor" id="ac0146189e7df18439dc2f4103f07cfe8"></a><!-- doxytag: member="miosix::Error" ref="ac0146189e7df18439dc2f4103f07cfe8" args="" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">enum <a class="el" href="namespacemiosix.html#ac0146189e7df18439dc2f4103f07cfe8">miosix::Error</a></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>This enum will be passed as argument to the error handler.<br/>
+ If the error is marked UNRECOVERABLE, then the error handler will not return. </p>
+<dl><dt><b>Enumerator: </b></dt><dd><table border="0" cellspacing="2" cellpadding="0">
+<tr><td valign="top"><em><a class="anchor" id="ac0146189e7df18439dc2f4103f07cfe8af0fb70dd25fac18136ea28f9c0286b65"></a><!-- doxytag: member="INVALID_PARAMETERS" ref="ac0146189e7df18439dc2f4103f07cfe8af0fb70dd25fac18136ea28f9c0286b65" args="" -->INVALID_PARAMETERS</em>&nbsp;</td><td>
+<p>A function/method was called with invalid parameters.<br/>
+ Error is recoverable. </p>
+</td></tr>
+<tr><td valign="top"><em><a class="anchor" id="ac0146189e7df18439dc2f4103f07cfe8a4a9ecbff543a923809f4a669f5a2ff18"></a><!-- doxytag: member="OUT_OF_MEMORY" ref="ac0146189e7df18439dc2f4103f07cfe8a4a9ecbff543a923809f4a669f5a2ff18" args="" -->OUT_OF_MEMORY</em>&nbsp;</td><td>
+<p>The heap is full, malloc/new returned NULL.<br/>
+ Whether error is recoverable is architecture specific. </p>
+</td></tr>
+<tr><td valign="top"><em><a class="anchor" id="ac0146189e7df18439dc2f4103f07cfe8a772bd51dfe3b2db17e618c589e55e3b8"></a><!-- doxytag: member="STACK_OVERFLOW" ref="ac0146189e7df18439dc2f4103f07cfe8a772bd51dfe3b2db17e618c589e55e3b8" args="" -->STACK_OVERFLOW</em>&nbsp;</td><td>
+<p>The stack of a thread overflowed.<br/>
+Error is UNRECOVERABLE. </p>
+</td></tr>
+<tr><td valign="top"><em><a class="anchor" id="ac0146189e7df18439dc2f4103f07cfe8a047868d81b859f0eda3d4a172900e4d6"></a><!-- doxytag: member="UNEXPECTED" ref="ac0146189e7df18439dc2f4103f07cfe8a047868d81b859f0eda3d4a172900e4d6" args="" -->UNEXPECTED</em>&nbsp;</td><td>
+<p>Unexpected error occurred.<br/>
+Error is UNRECOVERABLE. </p>
+</td></tr>
+<tr><td valign="top"><em><a class="anchor" id="ac0146189e7df18439dc2f4103f07cfe8aba75de60056149f80f47ed9b2249fdf2"></a><!-- doxytag: member="PAUSE_KERNEL_NESTING" ref="ac0146189e7df18439dc2f4103f07cfe8aba75de60056149f80f47ed9b2249fdf2" args="" -->PAUSE_KERNEL_NESTING</em>&nbsp;</td><td>
+<p>A call to restartKernel that does not match a previous call to pauseKernel<br/>
+Error is UNRECOVERABLE </p>
+</td></tr>
+<tr><td valign="top"><em><a class="anchor" id="ac0146189e7df18439dc2f4103f07cfe8a7b868b4e1fd949857af27acacd2f9cbb"></a><!-- doxytag: member="DISABLE_INTERRUPTS_NESTING" ref="ac0146189e7df18439dc2f4103f07cfe8a7b868b4e1fd949857af27acacd2f9cbb" args="" -->DISABLE_INTERRUPTS_NESTING</em>&nbsp;</td><td>
+<p>A call to enableInterrupts that does not match a previous call to disableInterrupts<br/>
+Error is UNRECOVERABLE </p>
+</td></tr>
+<tr><td valign="top"><em><a class="anchor" id="ac0146189e7df18439dc2f4103f07cfe8a19d15bb3cd3dd524578bc258113a95ea"></a><!-- doxytag: member="MUTEX_DEADLOCK" ref="ac0146189e7df18439dc2f4103f07cfe8a19d15bb3cd3dd524578bc258113a95ea" args="" -->MUTEX_DEADLOCK</em>&nbsp;</td><td>
+<p>An attempt to lock twice a non recursive mutex happened.<br/>
+ Error is UNRECOVERABLE </p>
+</td></tr>
+<tr><td valign="top"><em><a class="anchor" id="ac0146189e7df18439dc2f4103f07cfe8a9bb07c35ec33e49234a73ea04f49e5e8"></a><!-- doxytag: member="MUTEX_UNLOCK_NOT_OWNER" ref="ac0146189e7df18439dc2f4103f07cfe8a9bb07c35ec33e49234a73ea04f49e5e8" args="" -->MUTEX_UNLOCK_NOT_OWNER</em>&nbsp;</td><td>
+<p>An attempt to call unlock() on a mutex without first calling lock has been detected. </p>
+</td></tr>
+<tr><td valign="top"><em><a class="anchor" id="ac0146189e7df18439dc2f4103f07cfe8acfa2dba3f5a797e00a49aecb3385dcd6"></a><!-- doxytag: member="NESTING_OVERFLOW" ref="ac0146189e7df18439dc2f4103f07cfe8acfa2dba3f5a797e00a49aecb3385dcd6" args="" -->NESTING_OVERFLOW</em>&nbsp;</td><td>
+<p>The calls to pauseKernel or disableInterrupts were nested too much. Error is UNRECOVERABLE </p>
+</td></tr>
+<tr><td valign="top"><em><a class="anchor" id="ac0146189e7df18439dc2f4103f07cfe8a05e4098f64c514996a071e09d3f030ec"></a><!-- doxytag: member="PROPAGATED_EXCEPTION" ref="ac0146189e7df18439dc2f4103f07cfe8a05e4098f64c514996a071e09d3f030ec" args="" -->PROPAGATED_EXCEPTION</em>&nbsp;</td><td>
+<p>An uncaught exception propagated throug a thread's entry point. Error is recoverable. </p>
+</td></tr>
+<tr><td valign="top"><em><a class="anchor" id="ac0146189e7df18439dc2f4103f07cfe8ac5c5ef56383e34096e518226d8898f53"></a><!-- doxytag: member="INTERRUPTS_ENABLED_AT_BOOT" ref="ac0146189e7df18439dc2f4103f07cfe8ac5c5ef56383e34096e518226d8898f53" args="" -->INTERRUPTS_ENABLED_AT_BOOT</em>&nbsp;</td><td>
+<p>Interrupts are wrongly enabled during boot Error is unrecoverable </p>
+</td></tr>
+</table>
+</dd>
+</dl>
+
+</div>
+</div>
+<hr/><h2>Function Documentation</h2>
+<a class="anchor" id="a0e2bf0d427fe1eb214692830e46fb209"></a><!-- doxytag: member="miosix::bootlog" ref="a0e2bf0d427fe1eb214692830e46fb209" args="(const char *string)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void miosix::bootlog </td>
+          <td>(</td>
+          <td class="paramtype">const char *&nbsp;</td>
+          <td class="paramname"> <em>string</em></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Print boot logs on the <a class="el" href="classmiosix_1_1_console.html">Console</a>. Can only be called when the kernel is running. </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>string</em>&nbsp;</td><td>to print </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="a9e8a0090904ff275d38d22f26919ff69"></a><!-- doxytag: member="miosix::crc16" ref="a9e8a0090904ff275d38d22f26919ff69" args="(unsigned char *message, unsigned int length)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">unsigned short miosix::crc16 </td>
+          <td>(</td>
+          <td class="paramtype">unsigned char *&nbsp;</td>
+          <td class="paramname"> <em>message</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">unsigned int&nbsp;</td>
+          <td class="paramname"> <em>length</em></td><td>&nbsp;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td><td></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Calculate the ccitt crc16 on a string of bytes </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>message</em>&nbsp;</td><td>string of bytes </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>message length </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="return"><dt><b>Returns:</b></dt><dd>the crc16 </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="aecda173e5927720cd233599817c5da23"></a><!-- doxytag: member="miosix::errorHandler" ref="aecda173e5927720cd233599817c5da23" args="(Error e)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void miosix::errorHandler </td>
+          <td>(</td>
+          <td class="paramtype">Error&nbsp;</td>
+          <td class="paramname"> <em>e</em></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Handles errors generated by kernel. Prints an error message on the <a class="el" href="classmiosix_1_1_console.html">Console</a> (only if WITH_ERRLOG is defined in miosix_config.h). For information about possible errors, see the enum Error Can be called with the kernel not started, started, paused, with interrupts disabled and within an interrupt routine. </p>
+
+</div>
+</div>
+<a class="anchor" id="ac57cb5a3e83dc0c859161bc4aa04d591"></a><!-- doxytag: member="miosix::errorLog" ref="ac57cb5a3e83dc0c859161bc4aa04d591" args="(const char *string)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void miosix::errorLog </td>
+          <td>(</td>
+          <td class="paramtype">const char *&nbsp;</td>
+          <td class="paramname"> <em>string</em></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Print eror logs on the <a class="el" href="classmiosix_1_1_console.html">Console</a>. Can only be called when the kernel is running. </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>string</em>&nbsp;</td><td>to print </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="a77703dfc8874c826975fa54f79e7a3e5"></a><!-- doxytag: member="miosix::IRQbootlog" ref="a77703dfc8874c826975fa54f79e7a3e5" args="(const char *string)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void miosix::IRQbootlog </td>
+          <td>(</td>
+          <td class="paramtype">const char *&nbsp;</td>
+          <td class="paramname"> <em>string</em></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Print boot logs on the <a class="el" href="classmiosix_1_1_console.html">Console</a>. Can only be called when the kernel is not yet running or paused, or within an IRQ. </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>string</em>&nbsp;</td><td>to print </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="afa3e31f3fb49abc777a10380ca9ffe19"></a><!-- doxytag: member="miosix::IRQerrorLog" ref="afa3e31f3fb49abc777a10380ca9ffe19" args="(const char *string)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void miosix::IRQerrorLog </td>
+          <td>(</td>
+          <td class="paramtype">const char *&nbsp;</td>
+          <td class="paramname"> <em>string</em></td>
+          <td>&nbsp;)&nbsp;</td>
+          <td><code> [inline]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Print error logs on the <a class="el" href="classmiosix_1_1_console.html">Console</a>. Can only be called when the kernel is not yet running or paused, or within an IRQ. </p>
+<dl><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>string</em>&nbsp;</td><td>to print </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<hr/><h2>Variable Documentation</h2>
+<a class="anchor" id="ab26854f238450057e4b1eb3687ac4f88"></a><!-- doxytag: member="miosix::kpi" ref="ab26854f238450057e4b1eb3687ac4f88" args="" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">const float <a class="el" href="namespacemiosix.html#ab26854f238450057e4b1eb3687ac4f88">miosix::kpi</a> = 0.5</td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Run the scheduler using fixed point math only. Faster but less precise. Note that the inner integral regulators are always fixed point, this affects round partitioning and the external PI regulator. Also note this imposes a number of limits:</p>
+<ul>
+<li>the number of threads has a maximum of 64 (this constrain is enforced in PKaddThread()</li>
+<li>the max "priority" is limited to 63 (this constraint is enforced by priority valdation, as usual)</li>
+<li>both krr and zrr must be less than 1.99f (this constraint is not enforced, if a wrong value is set strange things may happen)</li>
+<li>the maximum average burst must be less than 8192. Individual bursts may exceed this, but the su of all bursts in the Tr variable can't exceed 64 (max # threads) * 8191 = ~524287 (this constraint is enforced by clamping Tr to that value) </li>
+</ul>
+
+</div>
+</div>
+<a class="anchor" id="ac4774f319395e90899e2aa549444495b"></a><!-- doxytag: member="miosix::multFactor" ref="ac4774f319395e90899e2aa549444495b" args="" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">const int <a class="el" href="namespacemiosix.html#ac4774f319395e90899e2aa549444495b">miosix::multFactor</a> = static_cast&lt;int&gt;(1.0f/kpi)</td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+<p>Implementation detail resulting from a fixed point implementation of the inner integral regulators. Never change this, change kpi instead. </p>
+
+</div>
+</div>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/namespacemiosix__pivate.html b/miosix/_doc/doxygen/html/namespacemiosix__pivate.html
new file mode 100644
index 00000000..3bca6981
--- /dev/null
+++ b/miosix/_doc/doxygen/html/namespacemiosix__pivate.html
@@ -0,0 +1,47 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: miosix_pivate Namespace Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li class="current"><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="namespaces.html"><span>Namespace&nbsp;List</span></a></li>
+      <li><a href="namespacemembers.html"><span>Namespace&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="headertitle">
+<h1>miosix_pivate Namespace Reference</h1>  </div>
+</div>
+<div class="contents">
+<table class="memberdecls">
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<p>contains architecture-specific functions. These functions are separated from the functions in kernel.h because:<br/>
+</p>
+<ul>
+<li>to port the kernel to another processor you only need to rewrite these functions.</li>
+<li>these functions are only useful for writing hardare drivers, most user code does not need them. </li>
+</ul>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/namespaces.html b/miosix/_doc/doxygen/html/namespaces.html
new file mode 100644
index 00000000..b2229537
--- /dev/null
+++ b/miosix/_doc/doxygen/html/namespaces.html
@@ -0,0 +1,42 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: Namespace Index</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li class="current"><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li class="current"><a href="namespaces.html"><span>Namespace&nbsp;List</span></a></li>
+      <li><a href="namespacemembers.html"><span>Namespace&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="headertitle">
+<h1>Namespace List</h1>  </div>
+</div>
+<div class="contents">
+Here is a list of all documented namespaces with brief descriptions:<table>
+  <tr><td class="indexkey"><a class="el" href="namespacemiosix.html">miosix</a></td><td class="indexvalue"></td></tr>
+  <tr><td class="indexkey"><a class="el" href="namespacemiosix__pivate.html">miosix_pivate</a></td><td class="indexvalue"></td></tr>
+</table>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/nav_f.png b/miosix/_doc/doxygen/html/nav_f.png
new file mode 100644
index 0000000000000000000000000000000000000000..1b07a16207e67c95fe2ee17e7016e6d08ac7ac99
GIT binary patch
literal 159
zcmeAS@N?(olHy`uVBq!ia0y~yU|?imV6fm|Vqjp{%*48zfq@~-)5S5Qg7NKLPd+C@
z9+p7s(%btTE}qY@et1h^W8!HA#l8#OVSAlVy#1%}sO#vln&gc$_RZWTu}#AGMe#+q
z3vL0sgR28(1<xuDdz|C9&P~rvZ}MZKNgaQ-E_ojxy1!@NjPw6icb*XTkWjdrJ7vRE
Q1_lNOPgg&ebxsLQ0P=f3sQ>@~

literal 0
HcmV?d00001

diff --git a/miosix/_doc/doxygen/html/nav_h.png b/miosix/_doc/doxygen/html/nav_h.png
new file mode 100644
index 0000000000000000000000000000000000000000..01f5fa6a596e36bd12c2d6ceff1b0169fda7e699
GIT binary patch
literal 97
zcmeAS@N?(olHy`uVBq!ia0y~yU|?imVBq0kVqjp<dFjBwz`&s4>Eakt!T9#>MotC;
z9%jeAMjH->Zkx_6u9z)zN5rdW)q2L}c~O7=GaSojY5ybeVlGINr>mdKI;Vst04h2g
Aod5s;

literal 0
HcmV?d00001

diff --git a/miosix/_doc/doxygen/html/open.png b/miosix/_doc/doxygen/html/open.png
new file mode 100644
index 0000000000000000000000000000000000000000..7b35d2c2c389743089632fe24c3104f2173d97af
GIT binary patch
literal 118
zcmeAS@N?(olHy`uVBq!ia0y~yVBiE{4mJh`h6fYb1Q-|?Y&~5ZLn;{G&NUQdP~c&n
zd}GxzDF+AM1)Q-4h6e&8BI~@0>|L1bT9$76H%TOK59dR-vlBQO7Sx{jb?D_|hVwBz
WM-DIi|A~Qtfx*+&&t;ucLK6Vf2PM(~

literal 0
HcmV?d00001

diff --git a/miosix/_doc/doxygen/html/portability_8h.html b/miosix/_doc/doxygen/html/portability_8h.html
new file mode 100644
index 00000000..46b18cc2
--- /dev/null
+++ b/miosix/_doc/doxygen/html/portability_8h.html
@@ -0,0 +1,54 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<title>Miosix: portability.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<!-- Generated by Doxygen 1.7.1 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul class="tablist">
+      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+    </ul>
+  </div>
+  <div class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&nbsp;List</span></a></li>
+      <li><a href="globals.html"><span>File&nbsp;Members</span></a></li>
+    </ul>
+  </div>
+</div>
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a> &#124;
+<a href="#namespaces">Namespaces</a>  </div>
+  <div class="headertitle">
+<h1>portability.h File Reference</h1>  </div>
+</div>
+<div class="contents">
+<code>#include &quot;<a class="el" href="miosix__settings_8h.html">config/miosix_settings.h</a>&quot;</code><br/>
+<code>#include &quot;interfaces-impl/portability_impl.h&quot;</code><br/>
+<table class="memberdecls">
+<tr><td colspan="2"><h2><a name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmiosix__private_1_1_auxiliary_timer.html">miosix_private::AuxiliaryTimer</a></td></tr>
+<tr><td colspan="2"><h2><a name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">namespace &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemiosix__pivate.html">miosix_pivate</a></td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<p>This file is the interface from the Miosix kernel to the hardware. It ccontains what is required to perform a context switch, disable interrupts, set up the stack frame and registers of a newly created thread, and contains iterrupt handlers for preemption and yield.</p>
+<p>Since some of the functions in this file must be inline for speed reasons, and context switch code must be macros, at the end of this file the file portability_impl.h is included. This file should contain the implementation of those inline functions. </p>
+</div>
+<hr class="footer"/><address class="footer"><small>Generated on Sat Nov 12 2011 for Miosix by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
+</body>
+</html>
diff --git a/miosix/_doc/doxygen/html/tab_a.png b/miosix/_doc/doxygen/html/tab_a.png
new file mode 100644
index 0000000000000000000000000000000000000000..2d99ef23fed78c7683f0b5aa803d937060d288c4
GIT binary patch
literal 140
zcmeAS@N?(olHy`uVBq!ia0y~yU|?imU{K*;Vqjo6E_OVcfq@~|)5S5Qg7NL#-JA^$
zA}r<4PcEF(F+=NFlkbch^`30+&$+ez_2IQz*S<0D%xk}yViH{2HXdY|G@(WIhM(G_
wJ@E<?POd$<ulDLTi@JCF-uai8>HcSU<;Y|bsd=%Mfq{X+)78&qol`;+0DbN>%m4rY

literal 0
HcmV?d00001

diff --git a/miosix/_doc/doxygen/html/tab_b.png b/miosix/_doc/doxygen/html/tab_b.png
new file mode 100644
index 0000000000000000000000000000000000000000..b2c3d2be3c7e518fbca6bb30f571882e72fc506d
GIT binary patch
literal 178
zcmeAS@N?(olHy`uVBq!ia0y~yU|?imU{K*;Vqjo6E_OVcfq|jY)5S5Qg7NL$+q{Pq
zBpNQ-*93=M?%0y#q#Uqruf^t0|9w^`XS&$km(Q&Z{_XizeW%=$Dh)x!sdGd4o$hs3
zDleHE{>ICtVBh1K!>w(fd3TGv37Qf6@FCZ;nHS6ow|CBtm3%(6u&d|tsjDt}Y6dS3
jEU<0n^KzNe@rTjYLF=WK%=7CE3=9mOu6{1-oD!M<<TOUD

literal 0
HcmV?d00001

diff --git a/miosix/_doc/doxygen/html/tab_h.png b/miosix/_doc/doxygen/html/tab_h.png
new file mode 100644
index 0000000000000000000000000000000000000000..c11f48f19bbe1f178d95397b98075bdd6d989328
GIT binary patch
literal 192
zcmeAS@N?(olHy`uVBq!ia0y~yU|?imU{K*;Vqjo6E_OVcfq|jj)5S5Qg7NL$+nh}a
z5)BXg|1aIu;nuZ?xhZ2-q}(N*|7VQ)h0Pq2w|JDF{rE=l{rTzMh7(@Jb#knf^C<D3
z^!-Ss`;4tF*ZUN*EtmBQ3GzLcvd{eRNXoqGVT)*4K;ry)GyXk3|G}%L_T(|m8@tNG
yb~k-pmynn_?ON~Br88$ob#~0^3E2Gd2Rnna(t{TPwhasn3=E#GelF{r5}E-2JW$pE

literal 0
HcmV?d00001

diff --git a/miosix/_doc/doxygen/html/tab_s.png b/miosix/_doc/doxygen/html/tab_s.png
new file mode 100644
index 0000000000000000000000000000000000000000..978943ac807718de0e69e5a585a8f0a1e5999285
GIT binary patch
literal 189
zcmeAS@N?(olHy`uVBq!ia0y~yU|?imU{K*;Vqjo6E_OVcfq|jL)5S5Qg7NL$*PKlO
z3=R*y)0I>;ggjkq7OF1uTxc#TpLr`M_kt4d<$kFrx1IOglmB#ka*STeQ~#(lOO84f
z&F$3h-`}Y*zvG;8qS>SQY)xPKX7gAS_RD_1ah&h<g+w>q-y2-{rAqcYewH#>pZ5G(
v&fKov*p1tscyTmld5JhLl2Ywb+;4MK`497fBdZx07#KWV{an^LB{Ts57s^S4

literal 0
HcmV?d00001

diff --git a/miosix/_doc/doxygen/html/tabs.css b/miosix/_doc/doxygen/html/tabs.css
new file mode 100644
index 00000000..21920562
--- /dev/null
+++ b/miosix/_doc/doxygen/html/tabs.css
@@ -0,0 +1,59 @@
+.tabs, .tabs2, .tabs3 {
+    background-image: url('tab_b.png');
+    width: 100%;
+    z-index: 101;
+    font-size: 13px;
+}
+
+.tabs2 {
+    font-size: 10px;
+}
+.tabs3 {
+    font-size: 9px;
+}
+
+.tablist {
+    margin: 0;
+    padding: 0;
+    display: table;
+}
+
+.tablist li {
+    float: left;
+    display: table-cell;
+    background-image: url('tab_b.png');
+    line-height: 36px;
+    list-style: none;
+}
+
+.tablist a {
+    display: block;
+    padding: 0 20px;
+    font-weight: bold;
+    background-image:url('tab_s.png');
+    background-repeat:no-repeat;
+    background-position:right;
+    color: #283A5D;
+    text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9);
+    text-decoration: none;
+    outline: none;
+}
+
+.tabs3 .tablist a {
+    padding: 0 10px;
+}
+
+.tablist a:hover {
+    background-image: url('tab_h.png');
+    background-repeat:repeat-x;
+    color: #fff;
+    text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0);
+    text-decoration: none;
+}
+
+.tablist li.current a {
+    background-image: url('tab_a.png');
+    background-repeat:repeat-x;
+    color: #fff;
+    text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0);
+}
diff --git a/miosix/_doc/doxygen/html/tree.html b/miosix/_doc/doxygen/html/tree.html
new file mode 100644
index 00000000..dc51f3f1
--- /dev/null
+++ b/miosix/_doc/doxygen/html/tree.html
@@ -0,0 +1,131 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+  <head>
+    <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+    <meta http-equiv="Content-Style-Type" content="text/css" />
+    <meta http-equiv="Content-Language" content="en" />
+    <link rel="stylesheet" href="doxygen.css"/>
+    <title>TreeView</title>
+    <script type="text/javascript">
+    <!-- // Hide script from old browsers
+    
+    function toggleFolder(id, imageNode) 
+    {
+      var folder = document.getElementById(id);
+      var l = imageNode.src.length;
+      if (imageNode.src.substring(l-20,l)=="ftv2folderclosed.png" || 
+          imageNode.src.substring(l-18,l)=="ftv2folderopen.png")
+      {
+        imageNode = imageNode.previousSibling;
+        l = imageNode.src.length;
+      }
+      if (folder == null) 
+      {
+      } 
+      else if (folder.style.display == "block") 
+      {
+        if (imageNode != null) 
+        {
+          imageNode.nextSibling.src = "ftv2folderclosed.png";
+          if (imageNode.src.substring(l-13,l) == "ftv2mnode.png")
+          {
+            imageNode.src = "ftv2pnode.png";
+          }
+          else if (imageNode.src.substring(l-17,l) == "ftv2mlastnode.png")
+          {
+            imageNode.src = "ftv2plastnode.png";
+          }
+        }
+        folder.style.display = "none";
+      } 
+      else 
+      {
+        if (imageNode != null) 
+        {
+          imageNode.nextSibling.src = "ftv2folderopen.png";
+          if (imageNode.src.substring(l-13,l) == "ftv2pnode.png")
+          {
+            imageNode.src = "ftv2mnode.png";
+          }
+          else if (imageNode.src.substring(l-17,l) == "ftv2plastnode.png")
+          {
+            imageNode.src = "ftv2mlastnode.png";
+          }
+        }
+        folder.style.display = "block";
+      }
+    }
+
+    // End script hiding -->        
+    </script>
+  </head>
+
+  <body class="ftvtree">
+    <div class="directory">
+      <h3 class="swap"><span>Miosix</span></h3>
+      <div style="display: block;">
+        <p><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="main.html" target="basefrm">Miosix embedded OS</a></p>
+        <p><img src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('folder1', this)"/><img src="ftv2folderclosed.png" alt="+" width="24" height="22" onclick="toggleFolder('folder1', this)"/><a class="el" href="modules.html" target="basefrm">Modules</a></p>
+        <div id="folder1">
+          <p><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="group___kernel.html" target="basefrm">Kernel</a></p>
+          <p><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="group___sync.html" target="basefrm">Syncronization</a></p>
+          <p><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="group___interfaces.html" target="basefrm">Interfaces</a></p>
+          <p><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="group___hardware.html" target="basefrm">Hardware</a></p>
+          <p><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="group___filesystem.html" target="basefrm">Filesystem</a></p>
+          <p><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="group___drivers.html" target="basefrm">Drivers</a></p>
+          <p><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="group___util.html" target="basefrm">Utilities</a></p>
+          <p><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="group___settings.html" target="basefrm">Settings</a></p>
+        </div>
+        <p><img src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('folder2', this)"/><img src="ftv2folderclosed.png" alt="+" width="24" height="22" onclick="toggleFolder('folder2', this)"/><a class="el" href="annotated.html" target="basefrm">Class List</a></p>
+        <div id="folder2">
+          <p><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="classmiosix__private_1_1_auxiliary_timer.html" target="basefrm">miosix_private::AuxiliaryTimer</a></p>
+          <p><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="classmiosix_1_1_condition_variable.html" target="basefrm">miosix::ConditionVariable</a></p>
+          <p><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="classmiosix_1_1_console.html" target="basefrm">miosix::Console</a></p>
+          <p><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="classmiosix_1_1_control_scheduler_priority.html" target="basefrm">miosix::ControlSchedulerPriority</a></p>
+          <p><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="classmiosix_1_1_directory.html" target="basefrm">miosix::Directory</a></p>
+          <p><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="classmiosix_1_1_e_d_f_scheduler_priority.html" target="basefrm">miosix::EDFSchedulerPriority</a></p>
+          <p><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="classmiosix_1_1_exception_handling_data.html" target="basefrm">miosix::ExceptionHandlingData</a></p>
+          <p><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="classmiosix_1_1_fast_interrupt_disable_lock.html" target="basefrm">miosix::FastInterruptDisableLock</a></p>
+          <p><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="classmiosix_1_1_fast_interrupt_enable_lock.html" target="basefrm">miosix::FastInterruptEnableLock</a></p>
+          <p><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="classmiosix_1_1_fast_mutex.html" target="basefrm">miosix::FastMutex</a></p>
+          <p><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="classmiosix_1_1_filesystem.html" target="basefrm">miosix::Filesystem</a></p>
+          <p><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="classmiosix_1_1_interrupt_disable_lock.html" target="basefrm">miosix::InterruptDisableLock</a></p>
+          <p><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="classmiosix_1_1_interrupt_enable_lock.html" target="basefrm">miosix::InterruptEnableLock</a></p>
+          <p><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="classmiosix_1_1_lock.html" target="basefrm">miosix::Lock&lt; T &gt;</a></p>
+          <p><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="classmiosix_1_1_lower_priority.html" target="basefrm">miosix::LowerPriority</a></p>
+          <p><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="classmiosix_1_1_memory_profiling.html" target="basefrm">miosix::MemoryProfiling</a></p>
+          <p><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="classmiosix_1_1_mutex.html" target="basefrm">miosix::Mutex</a></p>
+          <p><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="classmiosix_1_1_pause_kernel_lock.html" target="basefrm">miosix::PauseKernelLock</a></p>
+          <p><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="classmiosix_1_1_priority_scheduler_priority.html" target="basefrm">miosix::PrioritySchedulerPriority</a></p>
+          <p><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="classmiosix_1_1_queue.html" target="basefrm">miosix::Queue&lt; T, len &gt;</a></p>
+          <p><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="classmiosix_1_1_restart_kernel_lock.html" target="basefrm">miosix::RestartKernelLock</a></p>
+          <p><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="classmiosix_1_1_software_i2_c.html" target="basefrm">miosix::SoftwareI2C&lt; SDA, SCL &gt;</a></p>
+          <p><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="classmiosix_1_1_software_s_p_i.html" target="basefrm">miosix::SoftwareSPI&lt; SI, SO, SCK, CE, numNops &gt;</a></p>
+          <p><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="classmiosix_1_1_thread.html" target="basefrm">miosix::Thread</a></p>
+          <p><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="classmiosix_1_1_timer.html" target="basefrm">miosix::Timer</a></p>
+          <p><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="classmiosix_1_1_unlock.html" target="basefrm">miosix::Unlock&lt; T &gt;</a></p>
+        </div>
+        <p><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="functions.html" target="basefrm">Class Members</a></p>
+        <p><img src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('folder3', this)"/><img src="ftv2folderclosed.png" alt="+" width="24" height="22" onclick="toggleFolder('folder3', this)"/><a class="el" href="namespaces.html" target="basefrm">Namespace List</a></p>
+        <div id="folder3">
+          <p><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="namespacemiosix.html" target="basefrm">miosix</a></p>
+          <p><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="namespacemiosix__pivate.html" target="basefrm">miosix_pivate</a></p>
+        </div>
+        <p><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="namespacemembers.html" target="basefrm">Namespace Members</a></p>
+        <p><img src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('folder4', this)"/><img src="ftv2folderclosed.png" alt="+" width="24" height="22" onclick="toggleFolder('folder4', this)"/><a class="el" href="files.html" target="basefrm">File List</a></p>
+        <div id="folder4">
+          <p><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="arch__registers_8h.html" target="basefrm">arch_registers.h</a></p>
+          <p><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="bsp_8h.html" target="basefrm">bsp.h</a></p>
+          <p><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="console_8h.html" target="basefrm">console.h</a></p>
+          <p><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="delays_8h.html" target="basefrm">delays.h</a></p>
+          <p><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="disk_8h.html" target="basefrm">disk.h</a></p>
+          <p><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="endianness_8h.html" target="basefrm">endianness.h</a></p>
+          <p><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="gpio_8h.html" target="basefrm">gpio.h</a></p>
+          <p><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="miosix__settings_8h.html" target="basefrm">miosix_settings.h</a></p>
+          <p><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="portability_8h.html" target="basefrm">portability.h</a></p>
+        </div>
+        <p><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="globals.html" target="basefrm">File Members</a></p>
+      </div>
+    </div>
+  </body>
+</html>
diff --git a/miosix/doc/doxygen/index.html b/miosix/_doc/doxygen/index.html
similarity index 100%
rename from miosix/doc/doxygen/index.html
rename to miosix/_doc/doxygen/index.html
diff --git a/miosix/doc/pdfdoc/features/Miosix features.odt b/miosix/_doc/pdfdoc/features/Miosix features.odt
similarity index 100%
rename from miosix/doc/pdfdoc/features/Miosix features.odt
rename to miosix/_doc/pdfdoc/features/Miosix features.odt
diff --git a/miosix/doc/pdfdoc/features/Miosix features.pdf b/miosix/_doc/pdfdoc/features/Miosix features.pdf
similarity index 100%
rename from miosix/doc/pdfdoc/features/Miosix features.pdf
rename to miosix/_doc/pdfdoc/features/Miosix features.pdf
diff --git a/miosix/doc/textdoc/Changelog.txt b/miosix/_doc/textdoc/Changelog.txt
similarity index 98%
rename from miosix/doc/textdoc/Changelog.txt
rename to miosix/_doc/textdoc/Changelog.txt
index 28df29e3..a180804d 100644
--- a/miosix/doc/textdoc/Changelog.txt
+++ b/miosix/_doc/textdoc/Changelog.txt
@@ -1,5 +1,13 @@
 Changelog for Miosix np embedded OS
 
+- Moved the bootloaders, compiler and testsuite directories inside miosix/_tools
+- Reorganized directory structure, all subdirectories of the miosix directory
+  that do not contain code that is compiled into the Miosix kernel now start
+  with an underscore, to be easily recognizable. These are: the _doc directory
+  containing documentation, the _examples directory containing examples, and
+  the _tools directory.
+- Added first (non working) inplementation of the new file abstraction
+  layer.
 - Improved pauseKernel() and restartKernel() implementation using atomic
   operations. Tests show a +20% to +40% performance improvement for
   pauseKernel() and restartKernel(), and a +15% performance improvement
diff --git a/miosix/doc/textdoc/Directories.txt b/miosix/_doc/textdoc/Directories.txt
similarity index 100%
rename from miosix/doc/textdoc/Directories.txt
rename to miosix/_doc/textdoc/Directories.txt
diff --git a/miosix/doc/textdoc/Disable exceptions.txt b/miosix/_doc/textdoc/Disable exceptions.txt
similarity index 100%
rename from miosix/doc/textdoc/Disable exceptions.txt
rename to miosix/_doc/textdoc/Disable exceptions.txt
diff --git a/miosix/doc/textdoc/Error debug.txt b/miosix/_doc/textdoc/Error debug.txt
similarity index 100%
rename from miosix/doc/textdoc/Error debug.txt
rename to miosix/_doc/textdoc/Error debug.txt
diff --git a/miosix/doc/textdoc/Filesystem benchmarks.txt b/miosix/_doc/textdoc/Filesystem benchmarks.txt
similarity index 100%
rename from miosix/doc/textdoc/Filesystem benchmarks.txt
rename to miosix/_doc/textdoc/Filesystem benchmarks.txt
diff --git a/miosix/doc/textdoc/Todo.txt b/miosix/_doc/textdoc/Todo.txt
similarity index 100%
rename from miosix/doc/textdoc/Todo.txt
rename to miosix/_doc/textdoc/Todo.txt
diff --git a/miosix/doc/textdoc/gcc threadsafety.txt b/miosix/_doc/textdoc/gcc threadsafety.txt
similarity index 100%
rename from miosix/doc/textdoc/gcc threadsafety.txt
rename to miosix/_doc/textdoc/gcc threadsafety.txt
diff --git a/miosix/doc/textdoc/newlib threadsafety.txt b/miosix/_doc/textdoc/newlib threadsafety.txt
similarity index 100%
rename from miosix/doc/textdoc/newlib threadsafety.txt
rename to miosix/_doc/textdoc/newlib threadsafety.txt
diff --git a/miosix/doc/textdoc/stm32-bootloader.txt b/miosix/_doc/textdoc/stm32-bootloader.txt
similarity index 100%
rename from miosix/doc/textdoc/stm32-bootloader.txt
rename to miosix/_doc/textdoc/stm32-bootloader.txt
diff --git a/miosix/examples/asm/Readme.txt b/miosix/_examples/asm/Readme.txt
similarity index 100%
rename from miosix/examples/asm/Readme.txt
rename to miosix/_examples/asm/Readme.txt
diff --git a/miosix/examples/asm/main.s b/miosix/_examples/asm/main.s
similarity index 100%
rename from miosix/examples/asm/main.s
rename to miosix/_examples/asm/main.s
diff --git a/miosix/examples/sad_trombone/Makefile b/miosix/_examples/sad_trombone/Makefile
similarity index 100%
rename from miosix/examples/sad_trombone/Makefile
rename to miosix/_examples/sad_trombone/Makefile
diff --git a/miosix/examples/sad_trombone/Readme.txt b/miosix/_examples/sad_trombone/Readme.txt
similarity index 100%
rename from miosix/examples/sad_trombone/Readme.txt
rename to miosix/_examples/sad_trombone/Readme.txt
diff --git a/miosix/examples/sad_trombone/adpcm.c b/miosix/_examples/sad_trombone/adpcm.c
similarity index 100%
rename from miosix/examples/sad_trombone/adpcm.c
rename to miosix/_examples/sad_trombone/adpcm.c
diff --git a/miosix/examples/sad_trombone/adpcm.h b/miosix/_examples/sad_trombone/adpcm.h
similarity index 100%
rename from miosix/examples/sad_trombone/adpcm.h
rename to miosix/_examples/sad_trombone/adpcm.h
diff --git a/miosix/examples/sad_trombone/circuit.jpeg b/miosix/_examples/sad_trombone/circuit.jpeg
similarity index 100%
rename from miosix/examples/sad_trombone/circuit.jpeg
rename to miosix/_examples/sad_trombone/circuit.jpeg
diff --git a/miosix/examples/sad_trombone/convert.cpp b/miosix/_examples/sad_trombone/convert.cpp
similarity index 100%
rename from miosix/examples/sad_trombone/convert.cpp
rename to miosix/_examples/sad_trombone/convert.cpp
diff --git a/miosix/examples/sad_trombone/main.cpp b/miosix/_examples/sad_trombone/main.cpp
similarity index 100%
rename from miosix/examples/sad_trombone/main.cpp
rename to miosix/_examples/sad_trombone/main.cpp
diff --git a/miosix/examples/sad_trombone/player.cpp b/miosix/_examples/sad_trombone/player.cpp
similarity index 100%
rename from miosix/examples/sad_trombone/player.cpp
rename to miosix/_examples/sad_trombone/player.cpp
diff --git a/miosix/examples/sad_trombone/player.h b/miosix/_examples/sad_trombone/player.h
similarity index 100%
rename from miosix/examples/sad_trombone/player.h
rename to miosix/_examples/sad_trombone/player.h
diff --git a/miosix/examples/sad_trombone/sad_trombone.h b/miosix/_examples/sad_trombone/sad_trombone.h
similarity index 100%
rename from miosix/examples/sad_trombone/sad_trombone.h
rename to miosix/_examples/sad_trombone/sad_trombone.h
diff --git a/miosix/examples/sad_trombone/sad_trombone.wav b/miosix/_examples/sad_trombone/sad_trombone.wav
similarity index 100%
rename from miosix/examples/sad_trombone/sad_trombone.wav
rename to miosix/_examples/sad_trombone/sad_trombone.wav
diff --git a/miosix/examples/thread_native/Readme.txt b/miosix/_examples/thread_native/Readme.txt
similarity index 100%
rename from miosix/examples/thread_native/Readme.txt
rename to miosix/_examples/thread_native/Readme.txt
diff --git a/miosix/examples/thread_native/native_thread_example.cpp b/miosix/_examples/thread_native/native_thread_example.cpp
similarity index 100%
rename from miosix/examples/thread_native/native_thread_example.cpp
rename to miosix/_examples/thread_native/native_thread_example.cpp
diff --git a/miosix/examples/thread_pthread/Readme.txt b/miosix/_examples/thread_pthread/Readme.txt
similarity index 100%
rename from miosix/examples/thread_pthread/Readme.txt
rename to miosix/_examples/thread_pthread/Readme.txt
diff --git a/miosix/examples/thread_pthread/pthread_example.cpp b/miosix/_examples/thread_pthread/pthread_example.cpp
similarity index 100%
rename from miosix/examples/thread_pthread/pthread_example.cpp
rename to miosix/_examples/thread_pthread/pthread_example.cpp
diff --git a/miosix/bootloaders/stm32/Readme.txt b/miosix/_tools/bootloaders/stm32/Readme.txt
similarity index 100%
rename from miosix/bootloaders/stm32/Readme.txt
rename to miosix/_tools/bootloaders/stm32/Readme.txt
diff --git a/miosix/bootloaders/stm32/pc_loader/CMakeLists.txt b/miosix/_tools/bootloaders/stm32/pc_loader/CMakeLists.txt
similarity index 100%
rename from miosix/bootloaders/stm32/pc_loader/CMakeLists.txt
rename to miosix/_tools/bootloaders/stm32/pc_loader/CMakeLists.txt
diff --git a/miosix/bootloaders/stm32/pc_loader/main.cpp b/miosix/_tools/bootloaders/stm32/pc_loader/main.cpp
similarity index 100%
rename from miosix/bootloaders/stm32/pc_loader/main.cpp
rename to miosix/_tools/bootloaders/stm32/pc_loader/main.cpp
diff --git a/miosix/bootloaders/stm32/pc_loader/pc_loader b/miosix/_tools/bootloaders/stm32/pc_loader/pc_loader
similarity index 100%
rename from miosix/bootloaders/stm32/pc_loader/pc_loader
rename to miosix/_tools/bootloaders/stm32/pc_loader/pc_loader
diff --git a/miosix/bootloaders/stm32/pc_loader/serialstream.cpp b/miosix/_tools/bootloaders/stm32/pc_loader/serialstream.cpp
similarity index 100%
rename from miosix/bootloaders/stm32/pc_loader/serialstream.cpp
rename to miosix/_tools/bootloaders/stm32/pc_loader/serialstream.cpp
diff --git a/miosix/bootloaders/stm32/pc_loader/serialstream.h b/miosix/_tools/bootloaders/stm32/pc_loader/serialstream.h
similarity index 100%
rename from miosix/bootloaders/stm32/pc_loader/serialstream.h
rename to miosix/_tools/bootloaders/stm32/pc_loader/serialstream.h
diff --git a/miosix/bootloaders/stm32/uc_loader_ethboardv2/bootloader.bin b/miosix/_tools/bootloaders/stm32/uc_loader_ethboardv2/bootloader.bin
similarity index 100%
rename from miosix/bootloaders/stm32/uc_loader_ethboardv2/bootloader.bin
rename to miosix/_tools/bootloaders/stm32/uc_loader_ethboardv2/bootloader.bin
diff --git a/miosix/bootloaders/stm32/uc_loader_ethboardv2/bootloader.hex b/miosix/_tools/bootloaders/stm32/uc_loader_ethboardv2/bootloader.hex
similarity index 100%
rename from miosix/bootloaders/stm32/uc_loader_ethboardv2/bootloader.hex
rename to miosix/_tools/bootloaders/stm32/uc_loader_ethboardv2/bootloader.hex
diff --git a/miosix/bootloaders/stm32/uc_loader_stm3210e-eval/bootloader.bin b/miosix/_tools/bootloaders/stm32/uc_loader_stm3210e-eval/bootloader.bin
similarity index 100%
rename from miosix/bootloaders/stm32/uc_loader_stm3210e-eval/bootloader.bin
rename to miosix/_tools/bootloaders/stm32/uc_loader_stm3210e-eval/bootloader.bin
diff --git a/miosix/bootloaders/stm32/uc_loader_stm3210e-eval/bootloader.hex b/miosix/_tools/bootloaders/stm32/uc_loader_stm3210e-eval/bootloader.hex
similarity index 100%
rename from miosix/bootloaders/stm32/uc_loader_stm3210e-eval/bootloader.hex
rename to miosix/_tools/bootloaders/stm32/uc_loader_stm3210e-eval/bootloader.hex
diff --git a/miosix/bootloaders/stm32/uc_loader_stm3220g-eval/bootloader.bin b/miosix/_tools/bootloaders/stm32/uc_loader_stm3220g-eval/bootloader.bin
similarity index 100%
rename from miosix/bootloaders/stm32/uc_loader_stm3220g-eval/bootloader.bin
rename to miosix/_tools/bootloaders/stm32/uc_loader_stm3220g-eval/bootloader.bin
diff --git a/miosix/bootloaders/stm32/uc_loader_stm3220g-eval/bootloader.hex b/miosix/_tools/bootloaders/stm32/uc_loader_stm3220g-eval/bootloader.hex
similarity index 100%
rename from miosix/bootloaders/stm32/uc_loader_stm3220g-eval/bootloader.hex
rename to miosix/_tools/bootloaders/stm32/uc_loader_stm3220g-eval/bootloader.hex
diff --git a/miosix/check_global_objects.pl b/miosix/_tools/check_global_objects.pl
similarity index 100%
rename from miosix/check_global_objects.pl
rename to miosix/_tools/check_global_objects.pl
diff --git a/miosix/compiler/Readme.txt b/miosix/_tools/compiler/Readme.txt
similarity index 100%
rename from miosix/compiler/Readme.txt
rename to miosix/_tools/compiler/Readme.txt
diff --git a/miosix/compiler/cleanup.sh b/miosix/_tools/compiler/cleanup.sh
similarity index 100%
rename from miosix/compiler/cleanup.sh
rename to miosix/_tools/compiler/cleanup.sh
diff --git a/miosix/compiler/download.sh b/miosix/_tools/compiler/download.sh
similarity index 100%
rename from miosix/compiler/download.sh
rename to miosix/_tools/compiler/download.sh
diff --git a/miosix/compiler/install-script.sh b/miosix/_tools/compiler/install-script.sh
similarity index 100%
rename from miosix/compiler/install-script.sh
rename to miosix/_tools/compiler/install-script.sh
diff --git a/miosix/compiler/lpc21isp_148_src.zip b/miosix/_tools/compiler/lpc21isp_148_src.zip
similarity index 100%
rename from miosix/compiler/lpc21isp_148_src.zip
rename to miosix/_tools/compiler/lpc21isp_148_src.zip
diff --git a/miosix/compiler/patches/gcc.patch b/miosix/_tools/compiler/patches/gcc.patch
similarity index 100%
rename from miosix/compiler/patches/gcc.patch
rename to miosix/_tools/compiler/patches/gcc.patch
diff --git a/miosix/compiler/patches/gcc.txt b/miosix/_tools/compiler/patches/gcc.txt
similarity index 100%
rename from miosix/compiler/patches/gcc.txt
rename to miosix/_tools/compiler/patches/gcc.txt
diff --git a/miosix/compiler/patches/newlib.patch b/miosix/_tools/compiler/patches/newlib.patch
similarity index 100%
rename from miosix/compiler/patches/newlib.patch
rename to miosix/_tools/compiler/patches/newlib.patch
diff --git a/miosix/compiler/patches/newlib.txt b/miosix/_tools/compiler/patches/newlib.txt
similarity index 100%
rename from miosix/compiler/patches/newlib.txt
rename to miosix/_tools/compiler/patches/newlib.txt
diff --git a/miosix/compiler/uninstall.sh b/miosix/_tools/compiler/uninstall.sh
similarity index 100%
rename from miosix/compiler/uninstall.sh
rename to miosix/_tools/compiler/uninstall.sh
diff --git a/miosix/temp/delay_test/delay_test.cpp b/miosix/_tools/delay_test/delay_test.cpp
similarity index 100%
rename from miosix/temp/delay_test/delay_test.cpp
rename to miosix/_tools/delay_test/delay_test.cpp
diff --git a/miosix/temp/feedforward_profiling/CMakeLists.txt b/miosix/_tools/feedforward_profiling/CMakeLists.txt
similarity index 100%
rename from miosix/temp/feedforward_profiling/CMakeLists.txt
rename to miosix/_tools/feedforward_profiling/CMakeLists.txt
diff --git a/miosix/temp/feedforward_profiling/Readme.txt b/miosix/_tools/feedforward_profiling/Readme.txt
similarity index 100%
rename from miosix/temp/feedforward_profiling/Readme.txt
rename to miosix/_tools/feedforward_profiling/Readme.txt
diff --git a/miosix/temp/feedforward_profiling/fdstream.h b/miosix/_tools/feedforward_profiling/fdstream.h
similarity index 100%
rename from miosix/temp/feedforward_profiling/fdstream.h
rename to miosix/_tools/feedforward_profiling/fdstream.h
diff --git a/miosix/temp/feedforward_profiling/fdstream.tcc b/miosix/_tools/feedforward_profiling/fdstream.tcc
similarity index 100%
rename from miosix/temp/feedforward_profiling/fdstream.tcc
rename to miosix/_tools/feedforward_profiling/fdstream.tcc
diff --git a/miosix/temp/feedforward_profiling/feedforward.png b/miosix/_tools/feedforward_profiling/feedforward.png
similarity index 100%
rename from miosix/temp/feedforward_profiling/feedforward.png
rename to miosix/_tools/feedforward_profiling/feedforward.png
diff --git a/miosix/temp/feedforward_profiling/ff_off.txt b/miosix/_tools/feedforward_profiling/ff_off.txt
similarity index 100%
rename from miosix/temp/feedforward_profiling/ff_off.txt
rename to miosix/_tools/feedforward_profiling/ff_off.txt
diff --git a/miosix/temp/feedforward_profiling/ff_on.txt b/miosix/_tools/feedforward_profiling/ff_on.txt
similarity index 100%
rename from miosix/temp/feedforward_profiling/ff_on.txt
rename to miosix/_tools/feedforward_profiling/ff_on.txt
diff --git a/miosix/temp/feedforward_profiling/ff_reinit.txt b/miosix/_tools/feedforward_profiling/ff_reinit.txt
similarity index 100%
rename from miosix/temp/feedforward_profiling/ff_reinit.txt
rename to miosix/_tools/feedforward_profiling/ff_reinit.txt
diff --git a/miosix/temp/feedforward_profiling/gdb_init.script b/miosix/_tools/feedforward_profiling/gdb_init.script
similarity index 100%
rename from miosix/temp/feedforward_profiling/gdb_init.script
rename to miosix/_tools/feedforward_profiling/gdb_init.script
diff --git a/miosix/temp/feedforward_profiling/jtag_profiler.cpp b/miosix/_tools/feedforward_profiling/jtag_profiler.cpp
similarity index 100%
rename from miosix/temp/feedforward_profiling/jtag_profiler.cpp
rename to miosix/_tools/feedforward_profiling/jtag_profiler.cpp
diff --git a/miosix/temp/feedforward_profiling/plot.sci b/miosix/_tools/feedforward_profiling/plot.sci
similarity index 100%
rename from miosix/temp/feedforward_profiling/plot.sci
rename to miosix/_tools/feedforward_profiling/plot.sci
diff --git a/miosix/temp/feedforward_profiling/plot.sh b/miosix/_tools/feedforward_profiling/plot.sh
similarity index 100%
rename from miosix/temp/feedforward_profiling/plot.sh
rename to miosix/_tools/feedforward_profiling/plot.sh
diff --git a/miosix/temp/feedforward_profiling/test.cpp b/miosix/_tools/feedforward_profiling/test.cpp
similarity index 100%
rename from miosix/temp/feedforward_profiling/test.cpp
rename to miosix/_tools/feedforward_profiling/test.cpp
diff --git a/miosix/temp/loc_counter.sh b/miosix/_tools/loc_counter.sh
similarity index 100%
rename from miosix/temp/loc_counter.sh
rename to miosix/_tools/loc_counter.sh
diff --git a/miosix/temp/ram_test/main.cpp b/miosix/_tools/ram_test/main.cpp
similarity index 100%
rename from miosix/temp/ram_test/main.cpp
rename to miosix/_tools/ram_test/main.cpp
diff --git a/miosix/temp/ram_test/sha1.cpp b/miosix/_tools/ram_test/sha1.cpp
similarity index 100%
rename from miosix/temp/ram_test/sha1.cpp
rename to miosix/_tools/ram_test/sha1.cpp
diff --git a/miosix/temp/ram_test/sha1.h b/miosix/_tools/ram_test/sha1.h
similarity index 100%
rename from miosix/temp/ram_test/sha1.h
rename to miosix/_tools/ram_test/sha1.h
diff --git a/miosix/testsuite/Readme.txt b/miosix/_tools/testsuite/Readme.txt
similarity index 80%
rename from miosix/testsuite/Readme.txt
rename to miosix/_tools/testsuite/Readme.txt
index 2291905a..e3305737 100644
--- a/miosix/testsuite/Readme.txt
+++ b/miosix/_tools/testsuite/Readme.txt
@@ -7,4 +7,4 @@ main.cpp
 to
 
 SRC :=                                  \
-miosix/testsuite/testsuite.cpp
\ No newline at end of file
+miosix/_tools/testsuite/testsuite.cpp
\ No newline at end of file
diff --git a/miosix/testsuite/testsuite.cpp b/miosix/_tools/testsuite/testsuite.cpp
similarity index 100%
rename from miosix/testsuite/testsuite.cpp
rename to miosix/_tools/testsuite/testsuite.cpp
diff --git a/miosix/temp/conflict_table.cpp b/miosix/_tools/unused/conflict_table.cpp
similarity index 100%
rename from miosix/temp/conflict_table.cpp
rename to miosix/_tools/unused/conflict_table.cpp
diff --git a/miosix/temp/conflict_table.h b/miosix/_tools/unused/conflict_table.h
similarity index 100%
rename from miosix/temp/conflict_table.h
rename to miosix/_tools/unused/conflict_table.h
diff --git a/miosix/temp/pthread_key.cpp b/miosix/_tools/unused/pthread_key.cpp
similarity index 100%
rename from miosix/temp/pthread_key.cpp
rename to miosix/_tools/unused/pthread_key.cpp
diff --git a/miosix/doc/pdfdoc/suspend/Suspend to FLASH.odt b/miosix/doc/pdfdoc/suspend/Suspend to FLASH.odt
deleted file mode 100644
index 222673635ea3daabe70eea5bcc79ffeb6e65736d..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 59878
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

diff --git a/miosix/doc/pdfdoc/suspend/Suspend to FLASH.pdf b/miosix/doc/pdfdoc/suspend/Suspend to FLASH.pdf
deleted file mode 100644
index d94c43f9e2aead2fe04d2f46bbc01189799effc3..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 116706
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
ZaY<rP3Al(iG&D7|FyvBIb@g}S0stVS=THCu

diff --git a/miosix/temp/simulation.sci b/miosix/temp/simulation.sci
deleted file mode 100644
index d71c5733..00000000
--- a/miosix/temp/simulation.sci
+++ /dev/null
@@ -1,236 +0,0 @@
-clear
-global SkedData
-SkedData = struct('SP_Tr',0,'alfa',0,'alfaBlock',0,...
-                  'krr',0,'zrr',0,'kpi',0,'bmin',0,'bmax',0,...
-                  'SP_Tp',0,...
-                  'eTp',0,'eTr',0,'eTro',0,'bc',0,'bco',0,'b',0,'bo',0,...
-                  'Tp',0,'Tr',0,'t',0,...
-                  'dmod',0,'dmodo',0);
-global SimRes
-SimRes   = struct('Ntot',0,...
-                  'NfirstCur',0,....
-                  'mt',[],...
-                  'mSP_Tr',[],'mTr',[],...
-                  'mSP_Tp',[],'mTp',[],...
-                  'mb',[],'mbc',[]);
-                  
-function s=step(t)
-         if t>=0 s=1; else s=0; end;
-endfunction    
-
-function r=ramp(t)
-         r=t*step(t);
-endfunction  
-
-function ExecSkedRegulators()
-         global SkedData;
-         // External PI (round duration)
-         SkedData.eTr   = SkedData.SP_Tr-SkedData.Tr;
-
-         SkedData.bc    = SkedData.bco+SkedData.krr*SkedData.eTr-SkedData.krr*SkedData.zrr*SkedData.eTro;
-         
-         SkedData.bco   = SkedData.bc;
-         
-         SkedData.eTro  = SkedData.eTr;
-         SkedData.SP_Tp = SkedData.alfa*(SkedData.bc+SkedData.Tr);
-         // Internal I with AW (CPU usage within round)
-         SkedData.eTp   = SkedData.SP_Tp-SkedData.Tp;
-         SkedData.b     = SkedData.bo+SkedData.kpi*SkedData.eTp;     
-         SkedData.b     = min(max(SkedData.b,SkedData.bmin),SkedData.bmax);
-         SkedData.bo    = SkedData.b;
-endfunction
-
-function ExecProcPool()
-         global SkedData;
-         // Generate burst disturbances (use multiplicative)
-         x              = max(1.1,1+0.8*(rand()-0.5));
-         SkedData.dmod  = 1;//0.9*SkedData.dmodo+0.1*x;
-         SkedData.dmodo = SkedData.dmod;
-         // Compute processes and round times
-         SkedData.Tp    = max(SkedData.b.*SkedData.dmod.*(ones(SkedData.b)-SkedData.alfaBlock),0);
-         SkedData.Tr    = sum(SkedData.Tp);
-         SkedData.t     = SkedData.t+SkedData.Tr;
-endfunction
-
-function AddProcessAtBottom()
-         global SkedData;
-         SkedData.alfa      = [SkedData.alfa;0];
-         SkedData.alfaBlock = [SkedData.alfaBlock;0];
-         SkedData.Tp        = [SkedData.Tp;0];
-         SkedData.bo        = [SkedData.bo;0];
-endfunction
-
-function RemProcessFromTop()
-         global SkedData;
-         global SimRes;
-         N                  = length(SkedData.alfa);
-         SkedData.alfa      = [SkedData.alfa(2:N)];
-         SkedData.alfaBlock = [SkedData.alfaBlock(2:N)];
-         SkedData.Tp        = [SkedData.Tp(2:N)];
-         SkedData.bo        = [SkedData.bo(2:N)];
-         SimRes.NfirstCur   = SimRes.NfirstCur+1;
-endfunction
-
-function RemProcessFromBottom()
-         global SkedData;
-         global SimRes;
-         N                  = length(SkedData.alfa);
-         SkedData.alfa      = [SkedData.alfa(1:N-1)];
-         SkedData.alfaBlock = [SkedData.alfaBlock(1:N-1)];
-         SkedData.Tp        = [SkedData.Tp(1:N-1)];
-         SkedData.bo        = [SkedData.bo(1:N-1)];
-         SimRes.NfirstCur   = SimRes.NfirstCur;
-endfunction
-
-function GetSimRes()
-        global SkedData;
-        global SimRes;
-        SimRes.mt     = [SimRes.mt,SkedData.t];
-        SimRes.mSP_Tr = [SimRes.mSP_Tr,SkedData.SP_Tr];
-        SimRes.mTr    = [SimRes.mTr,SkedData.Tr];
-        SimRes.mbc    = [SimRes.mbc,SkedData.bc];
-        N             = length(SkedData.alfa);
-        dex           = SimRes.NfirstCur:SimRes.NfirstCur+N-1;
-        cnan          = zeros(SimRes.Ntot,1);//%nan*ones(SimRes.Ntot,1);
-        vSP_Tp        = cnan;
-        vSP_Tp(dex)   = SkedData.alfa*(SkedData.Tr+SkedData.bc);
-        SimRes.mSP_Tp = [SimRes.mSP_Tp,vSP_Tp];
-        vTp           = cnan;
-        vTp(dex)      = SkedData.Tp;
-        SimRes.mTp    = [SimRes.mTp,vTp];
-        vb            = cnan;
-        vb(dex)       = SkedData.b;
-        SimRes.mb     = [SimRes.mb,vb];
-endfunction
-
-
-//--------------------------------------------
-
-
-SimRes.Ntot        = 12;             // Total number of processes entering/exiting the test
-SimRes.NfirstCur   = 1;              // Index of the first process of running set
-SkedData.alfa      = [0.2 0.3 0.5]'; // which consists of three processes
-SkedData.alfaBlock = [0   0   0 ]';  // 1 blocks the process, 0 makes it run
-
-// Controller parameters
-SkedData.kpi     = 0.25;
-SkedData.krr     = 1.4;
-SkedData.zrr     = 0.88;
-SkedData.bmin    = 0;
-SkedData.bmax    = 1.5;
-
-// Simulation duration
-Nrounds          = 8000; // 8000
-
-
-for i=1:Nrounds //SkedData.t
-    SkedData.SP_Tr = 1+0.005*ramp(i-0200)-0.005*ramp(i-400)...
-                      -0.010*ramp(i-1200)+0.010*ramp(i-1300)...
-                      +0.002*ramp(i-2200)-0.002*ramp(i-2600)...
-                      -0.004*ramp(i-3200)+0.004*ramp(i-3400)...
-                      -0.800*step(i-3800)+1.300*step(i-4500)...
-                      +0.025*ramp(i-5500)-0.025*ramp(i-5600)...
-                      -0.025*ramp(i-6200)+0.025*ramp(i-6300);
-                      
-    //if i==0030
-    //   SkedData.alfaBlock = [0   1   0 ]';
-    //end;    
-    //if i==0100
-    //   SkedData.alfaBlock = [0   0   0 ]';
-    //end;   
-    if i==0500
-       AddProcessAtBottom();
-       SkedData.alfa    = [0.2 0.25 0.4 0.15]';
-    end;   
-    if i==1000
-       SkedData.alfa    = [0.1 0.15 0.2 0.55]';
-    end;
-    if i==2000
-       AddProcessAtBottom();
-       AddProcessAtBottom();
-       AddProcessAtBottom();
-       AddProcessAtBottom();
-       SkedData.alfa=[0.06 0.08 0.10 0.12 0.14 0.15 0.17 0.18]';
-    end;
-    //if i==2100
-    //   SkedData.alfaBlock = [0 0 1 0 0 1 0 1]';
-    //end;    
-    //if i==2450
-    //   SkedData.alfaBlock = [0 0 0 0 0 0 0 0]';
-    //end;  
-    if i==2500
-       RemProcessFromBottom();
-       RemProcessFromBottom();
-       SkedData.alfa=[0.05 0.05 0.05 0.10 0.10 0.65]';
-    end;
-    if i==3000
-       AddProcessAtBottom();    
-       SkedData.alfa=[0.60 0.05 0.05 0.10 0.10 0.05 0.05]';
-    end;
-    if i==4000
-       RemProcessFromBottom();
-       RemProcessFromBottom();
-       SkedData.alfa=[0.8 0.05 0.05 0.05 0.05]';
-    end;
-    if i==4500
-       AddProcessAtBottom();
-       SkedData.alfa=[0.1 0.1 0.2 0.2 0.2 0.2]';
-    end;
-    if i==4800
-       RemProcessFromBottom();
-       AddProcessAtBottom();
-       AddProcessAtBottom();
-       SkedData.alfa=[0.30 0.05 0.06 0.07 0.10 0.15 0.27]';
-    end;
-    ExecSkedRegulators();
-    ExecProcPool();
-    GetSimRes();
-end
-
-//SimRes.mt = 1:length(SimRes.mt);
-
-hf=scf(0); clf;
-hf.figure_size = [1100,700];
-drawlater();
-subplot(221); //SimRes.mt
-   plot([1:1:8000],SimRes.mSP_Tr,'r');
-   plot([1:1:8000],SimRes.mTr,'k');
-   plot([1:1:8000],SimRes.mbc,'g');   
-   title('Round duration (black) vs set point (red) and burst correction (green)');
-   ax = get("current_axes");
-   ax.data_bounds = [0,0;8000,4.5]; // [0,0;max(SimRes.mt),4.5]
-   ax.tight_limits = "on";
-   ylabel("time units");
-subplot(222);
-   plot([1:1:8000],SimRes.mSP_Tp,'r');
-   plot([1:1:8000],SimRes.mTp,'k');
-   title('Processes CPU use (black) vs set point (red)');
-   ax = get("current_axes");
-   ax.data_bounds = [0,0;8000,1.5]; // [0,0;max(SimRes.mt),1.5];
-   ax.tight_limits = "on";
-subplot(223);
-   for i = 0:SimRes.Ntot-1
-        //plot([0,max(SimRes.mt)],[1.5*i,1.5*i],'y');
-        plot([1:1:8000],SimRes.mSP_Tp(i+1,:)+1.5*i,'r');
-        plot([1:1:8000],SimRes.mTp(i+1,:)+1.5*i,'k');
-        //plot([0,max(SimRes.mt)],[1.5*i,1.5*i]+1,'g');
-   end
-   title('Individual processes CPU use');
-   ax = get("current_axes");
-   ax.data_bounds = [0,0;8000,12]; // [0,0;max(SimRes.mt),18];
-   ax.tight_limits = "on";
-   xlabel("time units");
-subplot(224);
-   for i = 0:SimRes.Ntot-1
-        plot([0,max(SimRes.mt)],[1.5*i,1.5*i],'y');
-        plot([1:1:8000],(SimRes.mb(i+1,:)...
-             -SkedData.bmin)/(SkedData.bmax-SkedData.bmin)+1.5*i,'k');
-        plot([0,max(SimRes.mt)],[1.5*i,1.5*i]+1,'g');
-   end
-   title('Normalised bursts');
-   ax = get("current_axes");
-   ax.data_bounds = [0,0;8000,12]; // [0,0;max(SimRes.mt),18];
-   ax.tight_limits = "on";
-   xlabel("time units");
-drawnow();
-
-- 
GitLab