Page 203 - The Unofficial Guide to Lego Mindstorms Robots
P. 203
192
firmware downloader. This piece of software uses the IR tower to transfer firmware to your RCX.
Two firmware downloaders are readily available. Dave Baum's nqc. described in Chapter 4, Not Quite C, is capable of
downloading firmware files to the RCX, using the -firmware option. Another option is Kekoa Proudfoot's firmdl, which
is available as a C source file.
An Innovative Alternative
If the complexity of setting up tools for legOS is making you sad, there's a creative
solution. Two kind individuals have set up web-based legOS compilers. All you do is
submit your source code. Across the Internet, a machine compiles the code and sends
y ou the result, which you can then download to your RCX. This completely sidesteps
the whole problem of obtaining a cr oss compiler. This solution is useful even for
p latforms that don't support the GNU tools. As long as you have a web browser, you
can compile legOS programs.
The web-based cross co mpilers are here:
http://www.dwarfrune.c om/web-legOS.html
https://vheissu.mersenne.com/~dbm/com pile-legOS.html
There are some downsides to this approach, as well:
1. You have to fit your program into a single source file.
2. You have to depend on someone else to keep the compiler running.
3. You can't apply patches and tweak other things yourself.
H ello, legOS
Let's begin with something simple. This will allow you to verify that your too ls are working and give you a first taste of
p rogramming with legOS. The following program displays "Hello" on the RCX's display briefly:
#include "conio.h"
int main(void) {
cputs("Hello") ;
lcd_refresh() ;
delay(1000) ;
return 0;
}
To run this example, first compile it. If you have the cross compiler installed locally, you just need to edit the legOS Makefile
so that the TARGET line points to