A free 64-bit BASIC for Windows and bare-metal UEFI
Thoreau BASIC is a free 64-bit BASIC interpreter that combines classic GW-BASIC-style line-numbered syntax with modern capabilities: 64-bit memory, 24-bit graphics with sprites, TCP/IP and HTTP networking, MIDI/WAV/FLAC/Opus playback with a complete GM/GS wavetable, complex/quaternion/octonion math, a debugger, profiler, multicore PARFOR, and a native x64 JIT compiler. The same language runs either as a Windows x64 program or directly from bare-metal x64 UEFI firmware without an operating system, and BASIC programs can be packaged as standalone Windows EXE or bootable EFI applications.
GW-BASIC-style syntax (CLS, PRINT, FOR/NEXT, line numbers) backed by 64-bit memory, a native x64 JIT, and a debugger, profiler, and source tools.
24-bit graphics with sprites and mouse input, TCP/IP and HTTP, and a complete GM/GS wavetable with MIDI, WAV, FLAC, and Opus playback — all accessible as ordinary BASIC statements rather than external frameworks.
Boots directly on x64 machines using GOP graphics, firmware or raw HID keyboard input, mouse support with fallbacks, networking via firmware protocols or a built-in SNP-based stack, and HDA/Azalia PCM sound where available — using the same interpreter/JIT and wavetable as the Windows version.
BASIC programs can be packaged as standalone Windows EXE files or bootable EFI applications; standalone builds can omit the ~513.5 MB wavetable bank with the NOGM option.
GETFILES, SELECTBOX, FLUSH, FILECOMMIT, and FILECOPY bring file browsers and menus into BASIC; STATEWRITE/STATELOAD checkpoint selected variables to two alternating, checksummed generations, with CRC32 byte checks and TEXTSTATS utilities.
Native complex, quaternion, and octonion arithmetic (with JIT optimizations for floating-point INT), a calibrated TSC counter, and multicore PARFOR; SYSTEMINFO$ reports CPU, firmware, SIMD (AVX2/SSE2), and build details.
Programs use familiar GW-BASIC-style syntax with line numbers, RUN, and commands like CLS and PRINT — no separate frameworks needed for graphics, sound, or networking.
The interpreter runs as a normal Windows x64 program, or the UEFI build boots bare-metal on x64 machines with no OS present. Either way it uses the same interpreter/JIT and GM wavetable.
Finished BASIC programs can be compiled/packaged into standalone Windows EXE files or bootable EFI applications, optionally excluding the sound bank via NOGM for smaller builds.
Free. The site states there are no nag screens and no locked features; downloads for Windows x64 and UEFI x64 are available as ZIP files, and PayPal donations are optional.
A free 64-bit BASIC interpreter with GW-BASIC-style line-numbered syntax, plus modern features: 64-bit memory, 24-bit graphics and sprites, TCP/IP/HTTP networking, GM/GS wavetable audio with MIDI/WAV/FLAC/Opus playback, complex/quaternion/octonion math, a debugger, profiler, multicore PARFOR, and a native x64 JIT.
It runs on Windows x64 as a normal program, and on bare-metal x64 machines by booting directly from UEFI firmware without an operating system. BASIC programs can also be packaged as standalone Windows EXE or bootable EFI applications.
It is free — the site states there are no nag screens and no locked features. Optional PayPal donations are accepted to support development.
Version 3.2 adds file browsing and menus as ordinary BASIC commands (GETFILES, SELECTBOX), state checkpointing (STATEWRITE/STATELOAD with checksummed alternating generations), staged saves and verified backups (FLUSH, FILECOMMIT, FILECOPY), CRC32 and TEXTSTATS utilities, SYSTEMINFO$ reporting, JIT optimizations for floating-point INT and complex/quaternion/octonion arithmetic, stack-safe RUN restarts, and cleaner HELP output.
It boots directly on x64 machines, using GOP graphics, firmware or raw HID keyboard input, mouse support with fallbacks, networking through firmware protocols or Thoreau's own SNP-based stack, and HDA/Azalia PCM sound where available — with the same interpreter/JIT and GM wavetable as the Windows version.
The bundled THOREAU_GM.TBGM wavetable file is 513.5 MB (losslessly compressed Opus). Standalone EXE and EFI applications can omit the sound bank using the NOGM option.
Downloads (Windows x64 ZIP and UEFI x64 ZIP), plain-text documentation, and 3.2 release notes are available from the official site, and the project page and downloads are also on itch.io. Contact is [email protected].