Hi Lee
Portability ... ANSI C is great for that. ...and doesn't the gcc have flags to produce whatever kind of output you want?
Actually those flags are for producing code for different processors, not operating systems. For
that you want a cross compiler, see
http://forum.tinycorelinux.net/index.php/topic,10997.0.htmlThe trick is to think up a project that will hold their interest while stimulating their ability to solve
problems. While it won't hold their interest, here's an example. I wanted to add a readout to my
heating system to tell me how much fuel I'd consumed so I wouldn't have to check the tank with
the dipstick. I built a board with four 7-segment displays, a couple of switches, and a PIC16c55
processor. The PIC has 512 bytes EPROM, 24 bytes RAM, 20 I/O pins, and an 8 bit counter with an
8 bit prescaler. The program multiplexes and encodes the displays segments, polls the switches,
monitors the fuel pump, keeps track of elapsed time, and computes fuel used. The integer math
routines I wrote calculate time and fuel usage to one decimal place. There are 6 different nozzle
sizes to choose from for the fuel computation. This is a RISC processor with 33 instructions and
a two level stack.