System now works when FILE_OFFSET is non-zero.
Recovering file write pointer now working. On to recovering the read pointer.