-/* Catacomb Apocalypse Source Code\r
- * Copyright (C) 1993-2014 Flat Rock Software\r
+/* Project 16 Source Code~\r
+ * Copyright (C) 2012-2022 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover\r
*\r
- * This program is free software; you can redistribute it and/or modify\r
+ * This file is part of Project 16.\r
+ *\r
+ * Project 16 is free software; you can redistribute it and/or modify\r
* it under the terms of the GNU General Public License as published by\r
- * the Free Software Foundation; either version 2 of the License, or\r
+ * the Free Software Foundation; either version 3 of the License, or\r
* (at your option) any later version.\r
*\r
- * This program is distributed in the hope that it will be useful,\r
+ * Project 16 is distributed in the hope that it will be useful,\r
* but WITHOUT ANY WARRANTY; without even the implied warranty of\r
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r
* GNU General Public License for more details.\r
*\r
- * You should have received a copy of the GNU General Public License along\r
- * with this program; if not, write to the Free Software Foundation, Inc.,\r
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.\r
+ * You should have received a copy of the GNU General Public License\r
+ * along with this program. If not, see <http://www.gnu.org/licenses/>, or\r
+ * write to the Free Software Foundation, Inc., 51 Franklin Street,\r
+ * Fifth Floor, Boston, MA 02110-1301 USA.\r
+ *\r
*/\r
\r
// ID_CA.C\r
}\r
#endif\r
\r
-#define EXTENSION "hb1"\r
+//#define EXTENSION "hp1"\r
\r
/*\r
=============================================================================\r
boolean CA_FarRead(int handle, byte far *dest, dword length, global_game_variables_t *gvar)\r
{\r
boolean flag=0;\r
- if (length>0xfffflu)\r
- Quit (gvar, "CA_FarRead doesn't support 64K reads yet!");//TODO: EXPAND!!!\r
+//old if (length>0xfffflu)\r
+//old Quit (gvar, "CA_FarRead doesn't support 64K reads yet!");//TODO: EXPAND!!!\r
\r
__asm {\r
push ds\r
//\r
\r
strcpy(fname,GDICTNAME);\r
- strcat(fname,EXTENSION);\r
+ strcat(fname,"hp1");\r
\r
if ((handle = open(fname,\r
O_RDONLY | O_BINARY, S_IREAD)) == -1)\r
MM_GetPtr (MEMPTRCONV gvar->ca.grstarts,(NUMCHUNKS+1)*FILEPOSSIZE, gvar);\r
\r
strcpy(fname,GHEADNAME);\r
- strcat(fname,EXTENSION);\r
+ strcat(fname,"hp1");\r
\r
if ((handle = open(fname,\r
O_RDONLY | O_BINARY, S_IREAD)) == -1)\r
// Open the graphics file, leaving it open until the game is finished\r
//\r
strcpy(fname,GFILENAME);\r
- strcat(fname,EXTENSION);\r
+ strcat(fname,"hp1");\r
\r
gvar->ca.file.grhandle = open(fname, O_RDONLY | O_BINARY);\r
if (gvar->ca.file.grhandle == -1)\r
CAL_GetGrChunkLength(STRUCTPIC,gvar); // position file pointer\r
printf("CAL_SetupGrFile:\n");\r
printf(" gvar->ca.chunkcomplen size is %lu\n", gvar->ca.chunkcomplen);\r
- MM_GetPtr(&compseg,gvar->ca.chunkcomplen,gvar);\r
- IN_Ack(gvar);\r
+ MM_GetPtr(MEMPTRANDPERCONV compseg,gvar->ca.chunkcomplen,gvar); IN_Ack(gvar);\r
CA_FarRead (gvar->ca.file.grhandle,compseg,gvar->ca.chunkcomplen,gvar);\r
CAL_HuffExpand (compseg, (byte far *)gvar->video.pictable,NUMPICS*sizeof(pictabletype),gvar->ca.grhuffman);\r
- MM_FreePtr(&compseg,gvar);\r
+ MM_FreePtr(MEMPTRANDPERCONV compseg,gvar);\r
#endif\r
\r
-#if NUMPICM>0\r
+#if 0\r
+ //NUMPICM>0\r
MM_GetPtr(MEMPTRCONV picmtable,NUMPICM*sizeof(pictabletype));\r
CAL_GetGrChunkLength(STRUCTPICM); // position file pointer\r
MM_GetPtr(&compseg,gvar->ca.chunkcomplen);\r
CA_FarRead (gvar->ca.file.grhandle,compseg,gvar->ca.chunkcomplen);\r
CAL_HuffExpand (compseg, (byte far *)picmtable,NUMPICS*sizeof(pictabletype),gvar->ca.grhuffman);\r
MM_FreePtr(&compseg);\r
-#endif\r
+//#endif\r
\r
-#if NUMSPRITES>0\r
+//#if NUMSPRITES>0\r
MM_GetPtr(MEMPTRCONV spritetable,NUMSPRITES*sizeof(spritetabletype));\r
CAL_GetGrChunkLength(STRUCTSPRITE); // position file pointer\r
MM_GetPtr(&compseg,gvar->ca.chunkcomplen);\r
#endif\r
#endif//profile\r
\r
+#ifdef SHOWMEMINFO\r
#ifdef __BORLANDC__\r
unlink("meminfo.16b");\r
gvar->handle.showmemhandle = open("meminfo.16b", O_CREAT | O_WRONLY | O_TEXT);\r
unlink("meminfo.16w");\r
gvar->handle.showmemhandle = open("meminfo.16w", O_CREAT | O_WRONLY | O_TEXT);\r
#endif\r
+#endif\r
\r
\r
#ifndef NOMAPS\r
#ifdef PROFILE\r
close(gvar->handle.profilehandle);\r
#endif\r
+#ifdef SHOWMEMINFO\r
close(gvar->handle.showmemhandle);\r
+#endif\r
\r
close(gvar->ca.file.maphandle);\r
close(gvar->ca.file.grhandle);\r
CAL_ExpandGrChunk (chunk,source);\r
\r
if (compressed>BUFFERSIZE)\r
- MM_FreePtr(&bigbufferseg);\r
+ MM_FreePtr (MEMPTRCONV bigbufferseg);\r
}\r
*/\r
\r
source = gvar->mm.bufferseg;\r
else\r
{\r
- MM_GetPtr(&bigbufferseg,compressed, gvar);\r
- MM_SetLock (&bigbufferseg,true, gvar);\r
+ MM_GetPtr(MEMPTRCONV bigbufferseg,compressed, gvar);\r
+ MM_SetLock (MEMPTRCONV bigbufferseg,true, gvar);\r
source = bigbufferseg;\r
}\r
\r
#endif\r
\r
if (compressed>BUFFERSIZE)\r
- MM_FreePtr(&bigbufferseg, gvar);\r
+ MM_FreePtr(MEMPTRCONV bigbufferseg, gvar);\r
}\r
}\r
\r
\r
for (i=0;i<NUMCHUNKS;i++)\r
if (gvar->ca.grsegs[i])\r
- MM_SetPurge (gvar->ca.grsegs[i],3, gvar);\r
+ MM_SetPurge (MEMPTRCONV gvar->ca.grsegs[i],3, gvar);\r
}\r
\r
\r
= CA_CacheMarks\r
=\r
======================\r
-*//*++++\r
+*/\r
#define MAXEMPTYREAD 1024\r
-\r
+/*++++ segments\r
void CAL_CacheMarks (char *title, global_game_variables_t *gvar)\r
{\r
boolean dialog;\r
\r
// MDM begin - (GAMERS EDGE)\r
//\r
-// if (!FindFile("EGAGRAPH.16",NULL,2))\r
-// Quit (gvar, "CA_CacheMarks(): Can't find graphics files.");\r
+//???? if (!FindFile("EGAGRAPH.16",NULL,2))\r
+//???? Quit (gvar, "CA_CacheMarks(): Can't find graphics files.");\r
//\r
// MDM end\r
\r
//\r
if (dialog && finishcachebox)\r
finishcachebox();\r
-}*/\r
+}//*/\r
\r
void CA_CannotOpen(char *string, global_game_variables_t *gvar)\r
{\r