I've just updated my Memory DLL to include file I/O.
Availiable commands are fopen (using C format modes and file sharing), read/write bytes, write strings, file position both from the begining, end and current file position, get file position and get eof and error status, and block reading and writing.
Random access is, of course, availiable. The file handle is always flush after any reading/writing to reduce the chances of data missing if the program crashes.
Mirrors are more fun than television. Well, that was fun, in a not-so-fun sort of way...