SMAX Technology Preview

SMAX is a BASIC cross-compiler that runs under Windows and generates programs that run on the Sinclair ZX Spectrum (other Z80-based targets may be supported in the future, if the project ever comes to fruition).

The syntax is based closely around Microsoft BASIC, as this is the most commonly used BASIC syntax in the world today. But there are (or will be, one day...) special commands for creating and using sprites, sound effects, different typefaces and sizes, music, and perhaps even commands for creating 3D wireframe graphics.

The current version is very, very limited and chock-full of bugs of various kinds. I'm offering this "technology preview" as a taster of what may one day be a reality, and to gauge interest. At the moment, it produces Z80 assembly listings as its output which can be compiled with any Z80 cross assembler for DOS or Windows. In the future, it will produce TAP or TZX files ready for use on an emulator or a real ZX Spectrum.

One thing I have realised during the time I've already invested in this is that it's a massive undertaking. If it ever gets finished (and that is quite a big "if"), it will therefore be a commercial product. The price and method(s) of distribution will be determined when and if there is ever actually something saleable.

Screen shots

 
The BASIC program editor. Nice features such as syntax colouring and proper menus will be added at a later date.

The "Compiler Options" dialog. Most of the options are currently greyed-out, but you can specify the origin address for the machine code output. Only assembler file output is currently supported.

The SMAX font editor lets you design your own typefaces or modify existing ones. You can set the width of individual characters, so creating proportionally-spaced fonts is easy.

One of the example programs running in an emulator. Try doing this in standard Spectrum BASIC! (note the proportional typeface as well as the striped border)

Download the SMAX Technology Preview here (0.99MB, includes install and uninstall capability and example programs), but don't expect too much of it just yet.