esa / opengeode

OpenGEODE - a free SDL editor
https://opengeode.net
GNU Lesser General Public License v3.0
69 stars 20 forks source link

OpenGEODE Logo

OpenGEODE

OpenGEODE is an open-source SDL editor that is developed for the purpose of providing an easy to use and free state machine editor and Ada code generator to the TASTE toolchain from the European Space Agency, running in combination with ESA's "Space Certifiable" ASN.1 compiler.

SDL is the Specification and Description Language (Z100 standard from ITU-T).

This is NOT related to the graphical Simple DirectMedia Layer libraries!

Visit http://sdl-forum.org for more information about SDL.

OpenGEODE Screenshot

Features

Main limitations

Installation

OpenGEODE is made primarily for Linux.

It is part of the TASTE project

It is installed with all dependencies in the TASTE virtual machine that you can download from this link. Manual installation is possible in a native Linux environment. Debian 10 (buster) is the baseline. Recent versions of Ubuntu (20.x) should work as well.

Using TASTE

Important: OpenGEODE is already installed in the TASTE10 Virtual Machine (based on Debian Buster), and fully integrated with the toolset. It is the easiest way to get started with OpenGEODE

To start a new project run:

$ taste

Select a project name and the graphical editor will pop-up shortly after. You can add functions to the system and specify the implementation language to SDL. When you edit the function, the OpenGEODE editor will start.

You can check an example of a system using Opengeode if you go in ~/tool-src/kazoo/tests/Demo_ABB_Opengeode and run make to build it. Then taste to edit.

The code is automatically generated when you exit the tool.

Manual

The following commands should automate the installation:

$ git clone https://github.com/esa/opengeode
$ cd opengeode
$ make full-install   # it will prompt for sudo password to call apt

The installation will be done in the ~/.local folder by the Python3 pip tool. Make sure you add this to your .bashrc (or equivalent):

export PATH=~/.local/bin:$PATH

Once you have the dependencies installed you can update the tool by running the following commands:

$ git pull
$ make install    # alternatively:  python3 -m pip install opengeode

OpenGEODE Website

A web page has been created with more information about OpenGEODE.

The source for the page can be found in the wiki folder of this repository. Any changes to the wiki source will be subsequently merged into the wiki by the wiki maintainers.

Information and contact

For information please contact: maxime (dot) perrotin (at) esa (dot) int

Additional contributors:

The ASN.1 compiler (ASN1SCC) that OpenGEODE is based on was developed by George Mamais and Thanassis Tsiodras for the European Space Agency.

Licence

License is LGPL (see file LICENSE) There is no runtime, and the generated code is not subject to any license.

The fonts are the fonts from Ubuntu, check licence in file FONT-LICENSE.TXT The background pattern was downloaded from www.subtlepatterns.com

Changelog

4.3.1 (04/2024)

4.3.0 (04/2024)

4.2.1 (03/2024)

4.2.0 (03/2024)

4.1.27 (02/2024)

4.1.26 (01/2024)

4.1.25 (12/2023)

4.1.24 (12/2023)

4.1.23 (12/2023)

4.1.22 (11/2023)

4.1.21 (11/2023)

4.1.20 (11/2023)

4.1.19 (11/2023)

4.1.17 (11/2023)

4.1.16 (11/2023)

4.1.15 (10/2023)

4.1.14 (10/2023)

4.1.13 (09/2023)

4.1.12 (09/2023)

4.1.11 (09/2023)

4.1.10 (09/2023)

4.1.9 (06/2023)

4.1.8 (06/2023)

4.1.7 (06/2023)

4.1.6 (05/2023)

4.1.5 (05/2023)

4.1.4 (05/2023)

4.1.3 (05/2023)

4.1.2 (05/2023)

4.1.1 (05/2023)

4.1.0 (05/2023)

4.0.9 (05/2023)

4.0.8 (04/2023)

4.0.7 (04/2023)

4.0.6 (04/2023)

4.0.5 (03/2023)

4.0.4 (03/2023)

4.0.3 (01/2023)

4.0.2 (01/2023)

4.0.1 (01/2023)

4.0.0 (01/2023)

3.14.2 (12/2022)

3.14.1 (12/2022)

3.14.0 (12/2022)

3.13.3 (12/2022)

3.13.2 (12/2022)

3.13.1 (12/2022)

3.13.0 (12/2022)

3.12.7 (12/2022)

3.12.6 (12/2022)

3.12.5 (12/2022)

3.12.4 (12/2022)

3.12.3 (11/2022)

3.12.2 (11/2022)

3.12.1 (11/2022)

3.12.0 (11/2022)

3.11.2 (11/2022)

3.11.1 (11/2022)

3.11.0 (11/2022)

3.10.3 (11/2022)

3.10.2 (11/2022)

3.10.1 (10/2022)

3.10.0 (10/2022)

3.9.33 (10/2022)

3.9.32 (10/2022)

3.9.31 (10/2022)

3.9.30 (10/2022)

3.9.29 (10/2022)

3.9.28 (09/2022)

3.9.26 (09/2022)

3.9.25 (09/2022)

3.9.24 (09/2022)

3.9.23 (09/2022)

3.9.22 (08/2022)

3.9.21 (08/2022)

3.9.20 (08/2022)

3.9.19 (08/2022)

3.9.18 (08/2022)

3.9.17 (08/2022)

3.9.16 (08/2022)

3.9.15 (08/2022)

3.9.14 (08/2022)

3.9.13 (07/2022)

3.9.12 (07/2022)

3.9.11 (07/2022)

3.9.10 (06/2022)

3.9.9 (06/2022)

3.9.8 (05/2022)

3.9.7 (05/2022)

3.9.6 (05/2022)

3.9.5 (05/2022)

3.9.4 (04/2022)

3.9.3 (04/2022)

3.9.2 (04/2022)

3.9.1 (04/2022)

3.9.0 (04/2022)

3.8.1 (04/2022)

3.8.0 (04/2022)

3.7.29 (03/2022)

3.7.28 (03/2022)

3.7.27 (03/2022)

3.7.26 (03/2022)

3.7.25 (02/2022)

3.7.24 (02/2022)

3.7.23 (02/2022)

3.7.22 (02/2022)

3.7.21 (02/2022)

3.7.20 (01/2022)

3.7.19 (01/2022)

3.7.18 (10/2021)

3.7.17 (10/2021)

3.7.16 (10/2021)

3.7.15 (10/2021)

3.7.14 (09/2021)

3.7.13 (08/2021)

3.7.12 (07/2021)

3.7.11 (07/2021)

3.7.10 (07/2021)

3.7.9 (07/2021)

3.7.8 (07/2021)

3.7.7 (07/2021)

3.7.6 (07/2021)

3.7.5 (07/2021)

3.7.4 (06/2021)

3.7.3 (06/2021)

3.7.2 (06/2021)

3.7.1 (06/2021)

3.7.0 (06/2021)

3.6.3 (06/2021)

3.6.2 (06/2021)

3.6.1 (06/2021)

3.6.0 (05/2021)

3.5.9 (05/2021)

3.5.8 (05/2021)

3.5.7 (05/2021)

3.5.6 (05/2021)

3.5.5 (04/2021)

3.5.4 (04/2021)

3.5.3 (04/2021)

3.5.2 (04/2021)

3.5.1 (04/2021)

3.5.0 (04/2021)

3.4.6 (04/2021)

3.4.5 (04/2021)

3.4.4 (04/2021)

3.4.3 (03/2021)

3.4.2 (03/2021)

3.4.1 (03/2021)

3.4.0 (03/2021)

3.3.7 (03/2021)

3.3.7 (03/2021)

3.3.6 (12/2020)

3.3.5 (11/2020)

3.3.4 (10/2020)

3.3.3 (10/2020)

3.3.2 (10/2020)

3.3.1 (09/2020)

3.3.0 (08/2020)

**3.2.2 (09/2020)

3.2.1 (07/2020)

3.2.0 (07/2020)

3.1.2 (07/2020)

3.1.1 (07/2020)

3.1.0 (06/2020)

3.0.9 (06/2020)

3.0.8 (06/2020)

3.0.7 (06/2020)

3.0.6 (06/2020)

3.0.5 (06/2020)

3.0.4 (06/2020)

3.0.3 (05/2020)

3.0.2 (05/2020)

3.0.1 (05/2020)

3.0.0 (12/2019)

2.1.5 (10/2019)

2.1.4 (10/2019)

2.1.3 (10/2019)

2.1.2 (10/2019)

2.1.1 (10/2019)

2.1.0 (09/2019)

2.0.44 (09/2019)

2.0.43 (05/2019)

2.0.42 (05/2019)

2.0.41 (05/2019)

2.0.40 (04/2019)

2.0.39 (04/2019)

2.0.38 (04/2019)

2.0.37 (04/2019)

2.0.36 (04/2019)

2.0.35 (04/2019)

2.0.34 (04/2019)

2.0.33 (04/2019)

2.0.32 (04/2019)

2.0.31 (04/2019)

2.0.30 (03/2019)

2.0.29 (03/2019)

2.0.28 (03/2019)

2.0.27 (03/2019)

2.0.26 (03/2019)

2.0.25 (03/2019)

2.0.24 (03/2019)

2.0.23 (03/2019)

2.0.22 (02/2019)

2.0.21 (02/2019)

2.0.20 (02/2019)

2.0.19 (01/2019)

2.0.18 (12/2018)

2.0.17 (09/2018)

2.0.16 (07/2018)

2.0.15 (07/2018)

2.0.14 (06/2018)

2.0.13 (06/2018)

2.0.12 (06/2018)

2.0.11 (06/2018)

2.0.10 (06/2018)

2.0.9 (06/2018)

2.0.8 (05/2018)

2.0.7 (05/2018)

2.0.6 (05/2018)

2.0.5 (04/2018)

2.0.4 (03/2018)

2.0.3 (03/2018)

2.0.2 (03/2018)

2.0.1 (02/2018)

2.0.0 (02/2018)

1.5.44 (01/2018)

1.5.43 (01/2018)

1.5.42 (10/2017)

1.5.40 (07/2017)

1.5.39 (07/2017)

1.5.38 (06/2017)

1.5.37 (05/2017)

1.5.36 (05/2017)

1.5.35 (05/2017)

1.5.34 (05/2017)

1.5.33 (04/2017)

1.5.32 (04/2017)

1.5.28 (03/2017)

1.5.26 (02/2017)

1.5.25 (01/2017)

1.5.24 (01/2017)

1.5.23 (12/2016)

1.5.22 (12/2016)

1.5.21 (11/2016)

1.5.20 (11/2016)

1.5.19 (11/2016)

1.5.18 (11/2016)

1.5.17 (11/2016)

1.5.16 (11/2016)

1.5.15 (10/2016)

1.5.14 (10/2016)

1.5.13 (10/2016)

1.5.12 (09/2016)

1.5.11 (09/2016)

1.5.10 (09/2016)

1.5.9 (09/2016)

1.5.8 (09/2016)

1.5.7 (09/2016)

1.5.6 (08/2016)

1.5.4 (08/2016)

1.5.3 (07/2016):

1.5.2 (07/2016):

1.4.5 (07/2016):

1.4.4 (06/2016)

1.4.3 (06/2016)

1.4.2 (06/2016)

1.4.1 (06/2016)

1.3.28 (06/2016)

1.3.27 (05/2016)

1.3.26 (05/2016)

1.3.25 (05/2016)

1.3.22 (05/2016)

1.3.21 (05/2016)

1.3.20 (05/2016)

1.3.19 (04/2016)

1.3.18 (04/2016)

1.3.17 (04/2016)

1.3.16 (03/2016)

1.3.15 (03/2016)

1.3.14

1.3.13

1.3.12

1.3.11

1.3.9/10 (01/2016)

1.3.8 (01/2016)

1.3.7 (12/2015)

1.3.6 (11/2015)

1.3.5 (11/2015)

1.3.4 (11/2015)

1.3.3 (11/2015)

1.3.1 (11/2015)

1.2.10 (10/2015)

1.2.4 (07/2015)

1.1.1 (07/2015)

1.1.0 (07/2015)

1.0.1 (06/2015)

1.0.0 (06/2015)

1.0RC (10/2014)

0.994 (07/2014)

0.993 (07/2014)

0.99 (04/2014)

0.98

0.97