Home

Awesome

This is a version of the Oberon System 3 (also known as ETH Oberon), compatible with the Oberon+ compiler, IDE and runtimes and the OBX Platform Abstraction Layer (PAL), and thus truly cross-platform (runs on all platforms where LeanQt is available).

The migration is still work in progress, but sufficiently complete and stable to explore the platform. The latest commit is tested on both the Mono CLI and as a native executable built with the generated C code.

Here is a screenshot of the migrated system in action:

Oberon System 3 on ObxPal Screenshot

And here is a screenshot of the migrated Oberon gadget system desktop:

Oberon System 3 Desktop Screenshot

The migrated system is based on the PC Native Oberon System 3 Release 2.3.6 (Stand-alone) originally downloaded from here.

See Changes.txt for additional information about the applied migration steps, and MigrationStatus.ods for a module status matrix. Also note that there is a Git commit history documenting all modifications starting from the original code.

To run the system, these Oberon system and documentation files (or the ones from the previous release) can be used. Copy the Files directory to the same directory where the compiled binaries are; note that in the same directory there must also be a copy of the PAL shared library (libPal.so on Linux, libPal.dylib on Mac and Pal.dll on Windows, compiled for the same processor architecture as the Oberon System binaries); also note that you have to use the Oberon IDE compiler version 0.9.94 or later (the pre-compiled versions might not be the most recent ones).

The system is included with the precompiled versions of the Oberon+ IDE.

Here are precompiled versions of the system. The packages include all required elements to run the system (just unpack and run, no installation required).

And here is the generated C source code from which the precompiled versions were built, in case you want to have a look at it or build it yourself:

If you need support please post an issue on Github or send me an email.