BambooBasic

Modern BASIC Programming for the 21st Century

A powerful, modern BASIC language inspired by BlitzBasic. Create games, applications, and utilities with elegant syntax and blazing-fast compilation to native executables.

Version 1.0 • Windows 11 • 64bit Only
HelloWorld.bam
; BambooBasic Sample Code

; 'Main' calling function, this is our entry to the
; application
Function Main()
    ;Print message to the console (Or output pane)
    Print "Hello World"

    ;Return false to the calling process
    ;to show there is no error.
    Return False
EndFunction

Powerful Features

Everything you need to create amazing applications

Lightning Fast

Compiles directly to native C++ and machine code for maximum performance. No virtual machine, no interpreter overhead.

🎮

DirectX 12 Graphics

Built-in graphics runtime with 2D primitives, image loading, text rendering, and sprite support powered by DirectX 12.

🔊

Audio Engine

Play sounds and music with built-in support for WAV, OGG, and MP3 formats. Powered by SoLoud audio engine.

📦

Custom Types

Define your own data structures with classes and custom types. Object-oriented programming meets classic BASIC.

🌐

Network Support

Built-in TCP/UDP networking for multiplayer games and networked applications. Simple API, powerful capabilities.

🛠️

Modern IDE

Integrated development environment with syntax highlighting, auto-completion, and one-click building.

🐛

Integrated Debugger

Step through your code, inspect variables, and track the call stack. Full debugging support with breakpoints and stepping controls.

📚

DLL Import System

Import and use functions from any DLL. Extend BambooBasic with existing C/C++ libraries.

📝

Rich Documentation

Comprehensive documentation with examples covering language features and runtime commands.

See It In Action

Clean, readable syntax that gets out of your way

Variables & Types

; Variable Types

Global globalInt:Int = 10
Const constantDouble:Double = 19.99

Function Main()
    ;Create a variable to store our message
    Local message:string = "This is a string"
    Local dble:Double = 3.14159265359

    ;Print values to the console (Or output pane)
    Print globalInt
    Print constantDouble
    Print message
    Print dble

    Return False
EndFunction

Functions

; FUNCTION example

Function Main()
    ;Call our custom functions
    Print ReturnString()

    DisplayInteger(10)

    Return False
EndFunction

;Function that returns a string
Function ReturnString:String()
    Return "Hello"
EndFunction

;Function that takes an integer as a parameter
Function DisplayInteger(i:Int)
    Print i
EndFunction

Graphics

; Image Loading and Display Example

Global running:Int = True
Global img1:Int
Global img2:Int

Function Setup()
    BBR_Graphics(800,600,BBR_WINDOW_MODE_WT)
    BBR_SetWindowTitle("Image Drawing Example")

    img1 = BBR_LoadImage("BigBomb.png")
    img2 = BBR_LoadImage("leaves.png")

    BBR_SetImageMidHandle(img2)
EndFunction

Function Main()
    Setup()

    While running
        BBR_UpdateEvents()

        BBR_Cls()

        BBR_DrawImage(img1,0,0)
        BBR_DrawImage(img2,BBR_GetMouseX(), BBR_GetMouseY())

        BBR_Flip()
    Wend

    BBR_End()

    Return False
EndFunction

Arrays & Loops

;Array example
Const ARRAY_ONE_SIZE = 10

Function Main()
    ;Create a single, and multiple dimensional array
    Local arrOne:Int[ARRAY_ONE_SIZE]
    Local arrTwo:String[20][20]

    ;Add some values to various elements
    arrOne[0] = 10
    arrOne[5] = 23

    arrTwo[0][0] = "Hello"
    arrTwo[10][10] = "There"

    ;Print out the contents of the arrays, first with a
    ;loop, then with direct element access
    Local i = 0

    For i = 0 To ARRAY_ONE_SIZE-1
        Print arrOne[i]
    Next

    Print arrTwo[0][0]
    Print arrTwo[10][10]

    Return False
EndFunction

Get Started Today

Download BambooBasic and start creating

🎯 Full Package

Version 1.0

  • BambooBasic Compiler
  • Integrated Editor with Debugger
  • Runtime Library
  • Complete Documentation
  • Example Programs
Download for Windows

Windows 11 • 64-bit

By downloading, you agree to the End User
License Agreement HERE

System Requirements

OS: Windows 11 (64-bit)
RAM: 4GB minimum, 8GB recommended
Storage: 500MB free space
Graphics: DirectX 12 compatible GPU

Join the Community

Get support, share your projects, and connect with other developers