nbc - Man Page

Compiler for LEGO Mindstorms NXT

Synopsis

nbc [options] file [options]

Description

This manual page documents briefly the nbc command.

nbc is a program that compiles Not eXactly C (NXC) files  or NeXT Byte Code (NBC) files into programs that can run on the standard LEGO MINDSTORMS NXT firmware or the enhanced NBC/NXC firmware. The nbc  compiler can either save the compiler output to a file or upload it to a LEGO Mindstorms NXT for execution.  The compiler can also compile NXT Picture files (.ric) using the text-based RICScript  language.  Since nbc can compile different programming languages it uses the file extension to determine the type of code it is compiling. NXC programs should use the .nxc file extension, NBC programs should  use the .nbc file extension, and RICScript programs should use the .rs  file extension.

Options

-S=<portname>

specify port name (COMn or usb), resource name, or alias

-d

download program

-b

treat input file as a binary file (don't compile it)

-q

quiet mode

-n

prevent the system file from being included

-D=<sym>[=<value>]

define macro <sym>

-x

decompile program

-Z[1|2]

turn on compiler optimizations

-ER=n

set maximum errors before aborting (0 == no limit)

-PD=n

set max preprocessor recursion depth (default == 10)

-O=<filename>

specify output file

-E=<filename>

write compiler errors to <filename>

-I=<path>

search <path> for include files

-nbc=<filename>

save NXC intermediate NBC code to <filename>

-L=<filename>

generate code listing to <filename>

-Y=<filename>

generate symbol table to <filename>

-w[-|+]

warnings off or on [default is on]

-sm[-|+]

compiler status messages off or on [default is on]

-EF

enhanced firmware

-safecall

NXC will wrap all function calls in Acquire/Release

-api

dump the API to stdout

-v=n

set the targeted firmware version (default == 128, NXT 1.1 == 105)

-help

display command line options

Author

nbc was written by John Hansen.

This manual page was written by Sebastian Reichel <elektranox@gmail.com>, for the Debian project (but may be used by others).

Info

September 21, 2009