turns out that text is default, and windows hates it if I open a binary file without 'b' standardize on using join_path to create filenames (use backslash on windows, even though fopen doesn't seem to care).