BBC BASIC für SDL 2.0 (BBCSDL) ist eine plattformübergreifende Implementierung der Programmiersprache BBC BASIC für Windows, Linux (x86), MacOS, Raspbian (Raspberry Pi OS), Android, iOS und Emscripten/WebAssembly. Es ist hochkompatibel mit BBC BASIC für Windows und verfügt über dieselben Spracherweiterungen, verwendet jedoch SDL 2.0 als Betriebssystem-Abstraktionsschicht, um plattformübergreifende Kompatibilität zu erreichen.
Die BBC BASIC Console Mode-Editionen (BBCTTY) sind leichtgewichtige Implementierungen für Windows, Linux (x86), MacOS und Raspbian (Raspberry Pi OS), die weder Grafik noch Sound unterstützen, ansonsten aber mit den Desktop-, Mobil- und Web-Editionen kompatibel sind. Sie nehmen ihre Eingabe von stdin und senden ihre Ausgabe an stdout und können daher für Skripterstellung, CGI und Remote-Terminal-Anwendungen verwendet werden.
Die grünen Dateien stellen den generischen BBC BASIC-Interpreter dar, der von allen Editionen gemeinsam genutzt wird. Die Dateien im roten Feld werden zum Erstellen der Konsolenmodus-Editionen verwendet. Die Dateien im blauen Feld werden zum Erstellen der SDL 2.0-Editionen verwendet. Die braunen Dateien laufen im GUI-(Haupt-)Thread, alle anderen laufen im Interpreter-Thread.
Die Dateien mit den hochgestellten Ziffern 1 und 2 sind CPU-spezifisch und die verschiedenen Varianten sind unten aufgeführt (nicht alle existieren!). Beachten Sie, dass bbasmb_wasm32.c kein Assembler ist, sondern als praktischer Ort zum Platzieren der Funktions-Wrapper verwendet wurde, die zur Unterstützung von SYS in der In-Browser-Edition erforderlich sind.
Im Diagramm wird nicht darauf hingewiesen, dass die In-Browser-Edition unterschiedliche Versionen von bbc.h und bbcsdl.h verwendet.
Beachten Sie, dass der Name „BBC BASIC“ mit Genehmigung der British Broadcasting Corporation verwendet wird und nicht auf ein abgeleitetes oder abgezweigtes Werk übertragbar ist.