Next Byte Codes (NBC) is a simple language with an assembly language syntax that can be used to program LEGO's NXT programmable brick (from the new LEGO Mindstorms NXT set). Download the NBC Guide for detailed information about the NBC language. You can also access online API help for NBC or download a compiled HTML help file.
Not eXactly C (NXC) is a high level language, similar to C, built on top of the NBC compiler. It can also be used to program the NXT brick. NXC is basically NQC for the NXT. To compile NXC programs just use the NBC compiler with source code files that have a .nxc file extension. A reference guide for NXC is available. You can also access online API help for NXC or download a compiled HTML help file. To take advantage of multi-dimensional array support and native shift operations be sure to download the enhanced NBC/NXC firmware and install it on your NXT.
SuperProc C (SPC) is a high level language, based on C, which you can use to program the HiTechnic SuperPro prototyping board. Support for SPC and its underlying SuperPro assembler is built into the same NBC compiler that you use to program the NXT. To tell NBC to compile an SPC program pass -T=SPRO on the command line and make sure that you use source code files that have a .spc file extension. If you want to use SuperPro assembler then your source code files should use .spasm for the file extension. You can download a reference guide for SuperPro C or access online SPC API help on this site. Or you can download a compiled HTML help file.
If you are just getting started with programming, then graphical environments such as the Mindstorms NXT software may be better choices for you. If, however, you're a programmer and you prefer typing a few lines to drag and drop icon programming, then either NBC or NXC may be perfect for you. If you are interested in hardware prototyping then the HiTechnic SuperPro board and the SuperPro C programming language will be a great choice for you.
NBC is free software released under the Mozilla Public License (MPL).
Donations to NBC, NXC, and SPC will be used toward developing support for additional platforms.
NXT Power Programming, 2nd edition is available now!
TBD, 2011 - NBC 1.2.1 r5 is (not yet) available.
March 13, 2011 - NBC 1.2.1 r4 is available.
June 30, 2010 - NBC 1.2.1 r3 is available.
June 6, 2010 - NBC 1.2.1 r2 is available.
May 10, 2010 - NBC 1.2.1 r1 is available.
October 19, 2008 - NBC 1.0.1.b35 beta is available.
November 25, 2007 - NBC 1.0.1.b34 beta is available.
November 5, 2007 - NBC 1.0.1.b33 beta is available.
July 13, 2007 - NBC 1.0.1.b31 beta is available.
June 5, 2007 - NBC 1.0.1.b30 beta is available.
May 21, 2007 - NBC 1.0.1.b29 beta is available.
April 13, 2007 - NBC 1.0.1.b28 beta is available.
February 17, 2007 - NBC 1.0.1.b27 beta is available.
February 12, 2007 - NBC 1.0.1.b26 beta is available.
February 8, 2007 - NBC 1.0.1.b25 beta is available.
January 29, 2007 - NBC 1.0.1.b24 beta is available.
January 21, 2007 - NBC 1.0.1.b23 beta is available.
January 16, 2007 - NBC 1.0.1.b22 beta is available.
January 09, 2007 - NBC 1.0.1.b21 beta is available.
January 06, 2007 - NBC 1.0.1.b20 beta is available.
January 02, 2007 - NBC 1.0.1.b19 beta is available.
December 28, 2006 - NBC 1.0.1.b16 beta is available.
December 20, 2006 - NBC 1.0.1.b15 beta is available.
December 12, 2006 - NBC 1.0.1.b13 beta is available.
November 21, 2006 - NBC 1.0.1.b12 beta is available.
November 02, 2006 - NBC 1.0.1.b11 beta is available.
October 10, 2006 - NBC 1.0.1.b10 beta is available.
Submit bug reports or feature requests via the sourceforge tracker.