Atc (air traffic controller) is a fun little console game included in the "bsd-games" package on most linux distributions. The player is presented with a radar screen and he must give directions to planes to help them safely takeoff and/or land. It gets really hard when there's lots of planes flying all over the screen.
There may be a bsd-games package in fink or macports, but a couple of quick searches didn't reveal anything. So, I thought it might be fun getting it to build under OS X (leopard). It wasn't hard, and I learned a little bit about flex/bison. That, and playing atc on my laptop, was fun. :)
You can grab the bsd-games 2.17 source from ibiblio.
The following script (to be run in the "atc" subdirectory) will produce an "atc" binary, which uses the "games" directory and a score file in the current directory. I'm sorry for how ugly it is... I'll write a Makefile instead at some point.
#!/bin/bash
echo "
#include <paths.h>
#define _PATH_GAMES \"games/\"
#define _PATH_SCORE \"atc_scorefile\"
" > pathnames.h
gcc -c -DBSD -o graphics.o graphics.c
gcc -c -DBSD -o input.o input.c
gcc -c -DBSD -o log.o log.c
gcc -c -DBSD -o main.o main.c
gcc -c -o extern.o extern.c
gcc -c -o list.o list.c
gcc -c -o tunable.o tunable.c
gcc -c -o update.o update.c
bison -ydv grammar.y
mv y.tab.h grammar.h
gcc -c -o y.tab.o y.tab.c
flex -i lex.l
gcc -c -o lex.yy.o lex.yy.c
echo "int yywrap() { return 1; }" > foobar.c
gcc -c -o foobar.o foobar.c
gcc -o atc *.o -I/usr/include/ncurses -lncurses
Or, if your computer's architecture is PowerPC, you can use my build: atc.tgz.