letters.zip - This zip contains a small test
program that demonstrates how to use parameterized RIC files with GraphicOutEx and an array
of values. Slick!
graphicsDemo.zip - This zip contains header files
and sample programs demonstrating simple 3d graphics on the NXT. It is written by
Arno van der Vegt (arno@madmultimedia#DELETE_THIS#.nl). Incredibly cool code. Definitely
worth checking out.
invaders.zip - This zip contains an extremely cool
space invaders game. It is written by Arno van der Vegt (avandervegt@##NOSPAM##home.nl). Try it out!
rpgreader.zip - This zip contains an RPGReader.sys
replacement program written in NBC. The compiled .sys executable is ~2.5kb rather than ~14.3kb. The
behavior of NXT Programs executing on the brick using this replacement is not exactly the same as when
the original RPGReader.sys is used but it is very close.
life8.zip - This zip contains a version of the classic
life simulator written in NBC. I rewrote a version that was originally mentioned in the
That version drew frames at about 7 seconds per frame.
This version draws about 10 times faster, although the speed depends heavily on the number of live
cells on the screen.
ttt.zip - Ross Crawford
recently posted a very cool program which lets you play tic-tac-toe on your NXT. It's another great example of
the capabilities exposed to programers using NBC. This zip contains a slightly tweaked version of his original
sourcecode. I shortened the beep and made it a bit quieter.
block.zip - Back in early August,
Takuya Matsubara posted a video on youTube of him playing a game sort
of like tetris on an NXT. It's a really cool example of what you can do with NBC!
math.zip - This zip contains
math.nbc which is a file you can #include in your own programs. The author is Tamas Sorosy.
It defines some terrific math functions: SIN, COS, ASIN, ACOS, and SQRT. Very nice!
chords3.zip - This zip contains
a short but very cool program written by
Hari Wiguna which draws a series of lines
on the NXT screen. It demonstrates using arrays as well as using the compile-time function evaluator
with PI, sin, and cos.
alpha_rex.zip - This zip contains
a really great program written for the NXT Alpha Rex robot.
David Wallace (dww.roboticsDELETETHIS@gmail.com) is the author.
This code demonstrates many important NBC programming techniques including multi-threading,
using preprocessor macros, using subroutines, controlling motors, reading various sensors,
and displaying graphics on the NXT screen. It's an awesome program!
NXTlib.zip - This zip contains
a library of useful routines for NBC written by Joe Kinsella. They demonstrate
useful techniques for multithreaded programming, subroutine parameter passing,
accessing sensors, playing sounds, and controlling motors.
SamplePrograms.zip - This zip contains
several sample programs for the NXT. compass2.nbc demonstrates reading data from the
new HiTechnic compass sensor.
Random_Gen.nbc (written by Philippe Hurbain)
demonstrates calling the RandomNumber system function. loopcount.nbc (written by Michael Anderson)
demonstrates how to start multiple threads and play tones. theremin1.nbc demonstrates
playing tones and reading data from the ultrasonic sensor. It is a port of an NXT-G program
written by Michael Anderson). ka.nbc is the direct decompilation of an NXT-G program
(using the NBC decompiler). holdon.nbc demonstrates a simple wait loop which substitutes for
the NXT firmware's missing wait opcode. NXTcmps.nbc and cmpstrac.nbc (written by Nitin Patil)
demonstrate reading data from the new
mindsensors.com compass sensor. motormux.nbc
is a sample program (also written by Nitin Patil)
that shows how to use the motor multiplexer from mindsensors.com.
flourish.zip - This zip contains LASM,
NQC, and NBC versions of a MIDI conversion. It also contains compiled versions of
these programs. The .rcx can be downloaded to an RCX brick and the .rxe can be
downloaded to the NXT brick. Then you can have both bricks play the same song
in harmony. That's pretty cool.
IOMapSamples.zip - This zip contains
programs which demonstrate 4 things you can do in NBC which are impossible using the LEGO
Mindstorms NXT software. iomap_freemem shows
how to read the amount of free flash memory in program code. iomap_bl shows how to do the
same for the battery level. iomap_off shows how to turn off the brick under program control.
iomap_boot shows how to force the brick into firmware download mode in a program (not
that you would ever want to do that).
mtest.zip - This zip contains two equivalent programs
(mtest.* and mtest2.*). The 372kb mtest2.rbt is the NXT-G sourcecode (written using the
LEGO Mindstorms NXT software). The 39kb mtest2.nbc is a decompilation of the .rxe compiled
using the LEGO Mindstorms NXT software with the mtest2.rbt program. The 5,676 byte mtest2.rxe
is the compiled executable itself. The 1,156 byte mtest.nbc is the hand-written NBC equivalent
of mtest2.nbc. The 274 byte mtest.rxe is the compiled executable which is functionally
equivalent to mtest2.rxe. mtest.rxe was compiled using the NBC command line compiler
and the mtest.nbc sourcecode.
ustests.zip - This zip contains 4 small sample programs
that demonstrate communicating with the standard LEGO UltraSonic (US) sensor. us_off.nbc shows how to
turn off the ultra-sonic pinging that starts automatically each time you turn on the NXT. us_interval.nbc
demonstrates how to specify the frequency of ultra-sonic pings sent out by the US sensor.
us_1shot.nbc sets the US sensor into its 1-shot mode where it pings only on command and writes 8
distance values to its buffers. ustest.nbc demonstrates reading various standard I2C sensor string values
from the US sensor.
Motors.zip - This zip contains
some sample programs which control a motor using the built-in tachometer.