BBC BASIC pour SDL 2.0 (BBCSDL) est une implémentation multiplateforme du langage de programmation BBC BASIC pour Windows, Linux (x86), MacOS, Raspbian (Raspberry Pi OS), Android, iOS et Emscripten/WebAssembly. Il est hautement compatible avec BBC BASIC pour Windows et possède les mêmes extensions de langage, mais utilise SDL 2.0 comme couche d'abstraction du système d'exploitation pour obtenir une compatibilité multiplateforme.
Les éditions BBC BASIC Console Mode (BBCTTY) sont des implémentations légères pour Windows, Linux (x86), MacOS et Raspbian (Raspberry Pi OS) qui ne prennent pas en charge les graphiques ou le son mais sont par ailleurs compatibles avec les éditions de bureau, mobiles et Web. Ils prennent leur entrée depuis stdin et envoient leur sortie vers stdout, ils peuvent donc être utilisés pour les applications de script, CGI et de terminal distant.
Les fichiers en vert constituent l'interpréteur générique BBC BASIC qui est partagé par toutes les éditions. Les fichiers dans la case rouge sont utilisés pour créer les éditions du mode console. Les fichiers dans la boîte bleue sont utilisés pour créer les éditions SDL 2.0. Les fichiers en marron s'exécutent dans le thread GUI (principal), tous les autres s'exécutent dans le thread de l'interpréteur.
Les fichiers avec les exposants 1 et 2 sont spécifiques au processeur et les différentes variantes sont répertoriées ci-dessous (elles n'existent pas toutes !). Notez que bbasmb_wasm32.c n'est pas un assembleur, mais a été utilisé comme un endroit pratique pour placer les wrappers de fonctions nécessaires à la prise en charge de SYS dans l'édition intégrée au navigateur.
Ce qui n'est pas indiqué dans le diagramme, c'est que l'édition intégrée au navigateur utilise des versions différentes de bbc.h et bbcsdl.h par rapport aux autres.
Notez que le nom « BBC BASIC » est utilisé avec l'autorisation de la British Broadcasting Corporation et n'est pas transférable à une œuvre dérivée ou dérivée.