Normally I find that white squares on an LCD is a timing issue. Are you sure you have the correct crystal installed and correct OSC set in the code ?