The zipdy application included the 1990 census bureaugh records, which are actually cleaner than the 2000 records but probably less complete. You can find both here:
http://ftp.census.gov/geo/www/gazetteer/places.html
The links Sid posted contain all the information you will need to do this.
EDIT: I couldn't get the Zipdy site open before I made this post, but the Zipdy page states they are using the 2000 census records. Either they updated it since I downloaded it, or it was an old copy I got ahold of, or I am confused (probably the latter) I wonder if they cleaned the data up. I had a ton of problems with the 2000 records.