OK. I managed to reverse engineer things back from mri_tessalate.c
Here is the code snippet that should be added to read_surf to parse these new files:
fnum = fread3(fid);
vertex_coords = fread(fid, vnum*3, 'float32') ;
tmp = fread(fid, fnum*3*3, 'uchar') ;
tmp = reshape(tmp, 3, 3, fnum) ;
faces = reshape(bitshift(tmp(1,:,:), 16) + bitshift(tmp(2,:,:),8) + tmp(3,:,:),3, fnum)';