A downloadable tool

Download NowName your own price

crustyBASIC is a BASIC cross-compiler for 80s systems. It compiles BASIC source into native machine code. It runs on Windows, MacOS, and Linux.  NOTE: this is a WIP, but is being very actively developed/improved.

Currently supported machines are: 

  • Apple ][ series
  • Atari 8-bit (inc 5200), 2600 VCS
  • Commodore 64, Vic-20, Plus/4
  • TRS-80 Color Computer 1/2/3
  • Nintendo - NES
  • MSDOS 16 bit

Some are a little further along than others. More will be added in the future.  Lots of example code is included to get you started.

  • Compiles BASIC to native machine code for speed
  • Options for speed vs size, carts, math libs, etc
  • Flexible syntax that can be tailored with @REWRITE and @REWRITE_EXPR
  • Modularity supported by @INCLUDE, pull in files, resources
  • Portable APIs (TILE, MISSILE, GRAPHICS, CELL, IMAGE, INPUT, SOUND, etc) - write once and run multiple on systems
  • Support for compiling old BASIC listings, including tokenized

Quick Start

@OPTION TARGET c64
CLS
POSITION 0, 0
PRINT "HELLO, WORLD!"

Compile to assembly:

crustybasic compile hello.cbs -o hello.s

Build a runnable .prg in one shot:

crustybasic build hello.cbs -o hello.prg

Full usage guide and language reference included as well as lots of example code.  Bug reports/feature requests can be posted here in the forums or at https://github.com/bsturk/crustybasic

Updated 3 days ago
Published 29 days ago
StatusIn development
CategoryTool
Authortelengard
Made withRust
Tags8-Bit, apple2, atari, basic, Commodore 64, MS-DOS, nintendo, Retro, tandy, VIC-20
AI DisclosureAI Assisted, Code

Download

Download NowName your own price

Click download now to get access to the following files:

crustyBASIC for Windows 3.6 MB
crustyBASIC for MacOS (ARM) 3.8 MB
crustyBASIC for MacOS (ARM and INTEL) 7.3 MB
crustyBASIC for MacOS (INTEL) 4 MB
crustyBASIC for Linux 4.6 MB

Development log