Home

Awesome

This package includes GNAT Ada Run Time Systems (RTSs) based on FreeRTOS and targeted at boards with Cortex-M0, -M3, -M4, -M4F MCUs (respectively BBC micro:bit, Arduino Due, and the STM32F4-series evaluation boards from STMicroelectronics). For discussions, visit the dedicated Google Group.

The RTSs are all Ravenscar-based, with additional restrictions No_Exception_Propagation and No_Finalization. No_Exception_Propagation means that exceptions can't be caught except in their immediate scope; instead, a Last_Chance_Handler is called.

In each case, the board support for the RTS (configuration for size and location of Flash, RAM; clock initialization; interrupt naming) is in $RTS/adainclude.

The Ada source is either original or based on FSF GCC (mainly 4.9.1, some later releases too).

The boards supported are

The standard packages included (there are more, implementation-specific, ones) for all RTSs are:

Ada
Ada.Characters
Ada.Characters.Latin_1
Ada.Containers
Ada.Containers.Bounded_Hashed_Maps
Ada.Containers.Bounded_Vectors
Ada.Exceptions
Ada.IO_Exceptions
Ada.Interrupts
Ada.Interrupts.Names
Ada.Iterator_Interfaces
Ada.Numerics.* (except random numbers)
Ada.Real_Time
Ada.Real_Time.Timing_Events
Ada.Streams
Ada.Strings
Ada.Strings.Bounded
Ada.Strings.Maps
Ada.Synchronous_Task_Control
Ada.Tags
Ada.Task_Identification
Interfaces
Interfaces.C
Interfaces.C.Extensions
Interfaces.C.Pointers
Interfaces.C.Strings
System
System.Assertions
System.Address_To_Access_Conversions
System.Machine_Code
System.Storage_Elements
GNAT
GNAT.CRC32
GNAT.Source_Info

For installation, see the instructions.