store address, fix bug
use fgetc
detect magic char
remove TODO
indent 4