____ _ _ _
| __ )| | __ _ ___| | _| |__ _____ __
| _ \| |/ _` |/ __| |/ / '_ \ / _ \ \/ /
| |_) | | (_| | (__| <| |_) | (_) > <
|____/|_|\__,_|\___|_|\_\_.__/ \___/_/\_\
A small, Turing-complete bytecode virtual machine with an assembly and BASIC-like language. It also features a disassembler/decompiler and debugger.
- Docs (assembly): docs/asm/DOCS.md
- Docs (BASIC): docs/basic/DOCS.md
- ISA reference (assembly): docs/asm/ISA.md
- BASIC syntax reference: docs/basic/SYNTAX.md
- Debugger docs/asm/DEBUGGER.md
- Examples: examples/
- License: LICENSE
- Ensure you have GCC and CMake installed. On Ubuntu 24.04:
sudo apt install g++-14 cmake- Run the following commands in the project directory:
cmake -B build
cmake --build build- Ensure you have Visual Studio 2022 with the "Desktop development with C++" workload installed.
- Open the repo folder in Visual Studio
- Visual Studio will detect CMakeLists.txt and configure automatically.
- Build with Build All (Ctrl+Shift+B).
- Ensure you have Visual Studio 2022 with the "Desktop development with C++" workload installed.
- Open the Developer Command Prompt for Visual Studio.
- Run the following in the project directory:
cmake -B build
cmake --build buildAssemble and run the Hello World example in Assembly:
./bbxc examples/helloworld.bbx hello.bcx
./bbx hello.bcxCompile and run the Hello World example in BASIC:
./bbxc examples/basic/helloworld.bbs hello.bcx
./bbx hello.bcxOr compile an arbitrary program (there are many examples)
./bbxc path/to/program.bbx program.bcx
./bbx program.bcxThis project is Free Software under the GPLv3 license.