-// MM_GetPtr(&(memptr)gvar->ca.camapheaderseg[mapnum],sizeof(maptype));\r
-// lseek(maphandle,pos,SEEK_SET);\r
-// CA_FarRead (maphandle,(memptr)mapheaderseg[mapnum],sizeof(maptype));\r
-// }\r
-// else\r
-// MM_SetPurge (&(memptr)mapheaderseg[mapnum], 0, &(gvar->mm));\r
+ MM_GetPtr(MEMPTRCONV gvar->ca.mapheaderseg[gvar->ca.mapnum],sizeof(maptype), gvar);\r
+ lseek(gvar->ca.file.maphandle,pos,SEEK_SET);\r
+#ifdef MAPHEADERLINKED\r
+//#if BUFFERSIZE < sizeof(maptype)\r
+//The general buffer size is too small!\r
+//#endif\r
+ //\r
+ // load in, then unhuffman to the destination\r
+ //\r
+ CA_FarRead (gvar->ca.file.maphandle,gvar->mm.bufferseg,((mapfiletype _seg *)gvar->ca.tinf)->headersize[gvar->ca.mapnum], gvar);\r
+ CAL_HuffExpand ((byte huge *)bufferseg,\r
+ (byte huge *)gvar->ca.mapheaderseg[gvar->ca.mapnum],sizeof(maptype),maphuffman, gvar);\r
+#else\r
+ CA_FarRead (gvar->ca.file.maphandle,(memptr)gvar->ca.mapheaderseg[gvar->ca.mapnum],sizeof(maptype), gvar);\r
+#endif\r
+ }\r
+ else\r
+ MM_SetPurge (MEMPTRCONV gvar->ca.mapheaderseg[gvar->ca.mapnum], 0, gvar);\r