]> 4ch.mooo.com Git - 16.git/blobdiff - src/lib/16_ca.c
polishment w
[16.git] / src / lib / 16_ca.c
index 725e9321e9b6ee3e1414ec9bd5bfe79358c486e6..cd47247434adc40be47826c84e4c4c833ed4962d 100755 (executable)
@@ -46,10 +46,10 @@ loaded into the data segment
 =============================================================================\r
 */\r
 \r
-typedef struct\r
+/*typedef struct\r
 {\r
   word bit0,bit1;      // 0-255 is a character, > is a pointer to a node\r
-} huffnode;\r
+} huffnode;*/\r
 \r
 \r
 /*typedef struct\r
@@ -221,12 +221,12 @@ void CAL_GetGrChunkLength (int chunk)
 ==========================\r
 */\r
 \r
-boolean CA_FarRead(int handle, byte huge *dest, dword length, mminfo_t *mm)\r
+boolean CA_FarRead(int handle, byte huge *dest, dword length, global_game_variables_t *gvar)\r
 {\r
-       boolean flag;\r
+       boolean flag=0;\r
        //dword fat=0;\r
        //word segm=0;\r
-       if(mm->EMSVer<0x40)\r
+       if(gvar->pm.emm.EMSVer<0x40)\r
        if(length>0xfffflu)\r
        {\r
                printf("File is a fat bakapee\n");\r
@@ -239,45 +239,45 @@ boolean CA_FarRead(int handle, byte huge *dest, dword length, mminfo_t *mm)
 \r
        //if(!fat&&!segm)\r
        //{\r
-               __asm {\r
-                       push    ds\r
-                       mov     bx,[handle]\r
-                       mov     cx,[WORD PTR length]\r
-                       mov     dx,[WORD PTR dest]\r
-                       mov     ds,[WORD PTR dest+2]\r
-                       mov     ah,0x3f                         // READ w/handle\r
-                       int     21h\r
-                       pop     ds\r
-                       jnc     good\r
-                       mov     errno,ax\r
-                       mov     flag,0\r
-                       jmp End\r
+       __asm {\r
+               push    ds\r
+               mov     bx,[handle]\r
+               mov     cx,[WORD PTR length]\r
+               mov     dx,[WORD PTR dest]\r
+               mov     ds,[WORD PTR dest+2]\r
+               mov     ah,0x3f                         // READ w/handle\r
+               int     21h\r
+               pop     ds\r
+               jnc     good\r
+               mov     errno,ax\r
+               mov     flag,0\r
+               jmp End\r
 #ifdef __BORLANDC__\r
-               }\r
+       }\r
 #endif\r
 good:\r
 #ifdef __BORLANDC__\r
-               __asm {\r
+       __asm {\r
 #endif\r
-                       cmp     ax,[WORD PTR length]\r
-                       je      done\r
-//                     errno = EINVFMT;                        // user manager knows this is bad read\r
-                       mov     flag,0\r
-                       jmp End\r
+               cmp     ax,[WORD PTR length]\r
+               je      done\r
+//             errno = EINVFMT;                        // user manager knows this is bad read\r
+               mov     flag,0\r
+               jmp End\r
 #ifdef __BORLANDC__\r
-               }\r
+       }\r
 #endif\r
 done:\r
 #ifdef __BORLANDC__\r
-               __asm {\r
+       __asm {\r
 #endif\r
-                       mov     flag,1\r
+               mov     flag,1\r
 #ifdef __BORLANDC__\r
-               }\r
+       }\r
 #endif\r
 End:\r
 #ifdef __WATCOMC__\r
-               }\r
+       }\r
 #endif\r
        return flag;\r
 }\r
@@ -293,12 +293,12 @@ End:
 ==========================\r
 */\r
 \r
-boolean CA_FarWrite(int handle, byte huge *source, dword length, mminfo_t *mm)\r
+boolean CA_FarWrite(int handle, byte huge *source, dword length, global_game_variables_t *gvar)\r
 {\r
-       boolean flag;\r
+       boolean flag=0;\r
        //dword fat=0;\r
        //word segm=0;\r
-       if(mm->EMSVer<0x40)\r
+       if(gvar->pm.emm.EMSVer<0x40)\r
        if(length>0xfffflu)\r
        {\r
                printf("File is a fat bakapee\n");\r
@@ -311,45 +311,45 @@ boolean CA_FarWrite(int handle, byte huge *source, dword length, mminfo_t *mm)
 \r
        //if(!fat&&!segm)\r
        //{\r
-               __asm {\r
-                       push    ds\r
-                       mov     bx,[handle]\r
-                       mov     cx,[WORD PTR length]\r
-                       mov     dx,[WORD PTR source]\r
-                       mov     ds,[WORD PTR source+2]\r
-                       mov     ah,0x40                 // WRITE w/handle\r
-                       int     21h\r
-                       pop     ds\r
-                       jnc     good\r
-                       mov     errno,ax\r
-                       mov flag,0\r
-                       jmp End\r
+       __asm {\r
+               push    ds\r
+               mov     bx,[handle]\r
+               mov     cx,[WORD PTR length]\r
+               mov     dx,[WORD PTR source]\r
+               mov     ds,[WORD PTR source+2]\r
+               mov     ah,0x40                 // WRITE w/handle\r
+               int     21h\r
+               pop     ds\r
+               jnc     good\r
+               mov     errno,ax\r
+               mov flag,0\r
+               jmp End\r
 #ifdef __BORLANDC__\r
-               }\r
+       }\r
 #endif\r
 good:\r
 #ifdef __BORLANDC__\r
-               __asm {\r
+       __asm {\r
 #endif\r
-                       cmp     ax,[WORD PTR length]\r
-                       je      done\r
-                       //errno = ENOMEM;                               // user manager knows this is bad write\r
-                       mov     flag,0\r
-                       jmp End\r
+               cmp     ax,[WORD PTR length]\r
+               je      done\r
+//             errno = ENOMEM;                         // user manager knows this is bad write\r
+               mov     flag,0\r
+               jmp End\r
 #ifdef __BORLANDC__\r
-               }\r
+       }\r
 #endif\r
 done:\r
 #ifdef __BORLANDC__\r
-               __asm {\r
+       __asm {\r
 #endif\r
-                       mov     flag,1\r
+               mov     flag,1\r
 #ifdef __BORLANDC__\r
-               }\r
+       }\r
 #endif\r
 End:\r
 #ifdef __WATCOMC__\r
-               }\r
+       }\r
 #endif\r
        return flag;\r
 }\r
@@ -365,7 +365,7 @@ End:
 ==========================\r
 */\r
 \r
-boolean CA_ReadFile(char *filename, memptr *ptr, mminfo_t *mm)\r
+boolean CA_ReadFile(char *filename, memptr *ptr, global_game_variables_t *gvar)\r
 {\r
        int handle;\r
        sdword size;\r
@@ -375,7 +375,7 @@ boolean CA_ReadFile(char *filename, memptr *ptr, mminfo_t *mm)
                return false;\r
 \r
        size = filelength(handle);\r
-       if(!CA_FarRead(handle,*ptr,size, mm))\r
+       if(!CA_FarRead(handle,*ptr,size, gvar))\r
        {\r
                close (handle);\r
                return false;\r
@@ -395,10 +395,10 @@ boolean CA_ReadFile(char *filename, memptr *ptr, mminfo_t *mm)
 ==========================\r
 */\r
 \r
-boolean CA_WriteFile (char *filename, void far *ptr, long length, mminfo_t *mm)\r
+boolean CA_WriteFile (char *filename, void far *ptr, long length, global_game_variables_t *gvar)\r
 {\r
        int handle;\r
-       sdword size;\r
+       //sdword size;\r
        //long size;\r
 \r
        handle = open(filename,O_CREAT | O_BINARY | O_WRONLY,\r
@@ -407,7 +407,7 @@ boolean CA_WriteFile (char *filename, void far *ptr, long length, mminfo_t *mm)
        if (handle == -1)\r
                return false;\r
 \r
-       if (!CA_FarWrite (handle,ptr,length, mm))\r
+       if (!CA_FarWrite (handle,ptr,length, gvar))\r
        {\r
                close(handle);\r
                return false;\r
@@ -428,7 +428,7 @@ boolean CA_WriteFile (char *filename, void far *ptr, long length, mminfo_t *mm)
 ==========================\r
 */\r
 \r
-boolean CA_LoadFile(char *filename, memptr *ptr, mminfo_t *mm, mminfotype *mmi)\r
+boolean CA_LoadFile(char *filename, memptr *ptr, global_game_variables_t *gvar)\r
 {\r
        int handle;\r
        sdword size;\r
@@ -437,9 +437,9 @@ boolean CA_LoadFile(char *filename, memptr *ptr, mminfo_t *mm, mminfotype *mmi)
        if((handle = open(filename,O_RDONLY | O_BINARY, S_IREAD)) == -1)\r
                return false;\r
 \r
-       size = filelength (handle);\r
-       MM_GetPtr(ptr,size, mm, mmi);\r
-       if(!CA_FarRead(handle,*ptr,size, mm))\r
+       size = filelength(handle);\r
+       MM_GetPtr(ptr,size, gvar);\r
+       if(!CA_FarRead(handle,*ptr,size, gvar))\r
        {\r
                close(handle);\r
                return false;\r
@@ -902,7 +902,7 @@ void CA_RLEWexpand (unsigned huge *source, unsigned huge *dest,long length,
 //\r
 // NOTE: A repeat count that produces 0xfff0 bytes can blow this!\r
 //\r
-       __asm{\r
+       __asm {\r
                mov     bx,rlewtag\r
                mov     si,sourceoff\r
                mov     di,destoff\r
@@ -1102,8 +1102,8 @@ dinorm:
 \r
 void CAL_SetupMapFile (global_game_variables_t *gvar)\r
 {\r
-       int handle;\r
-       long length;\r
+//     int handle;\r
+//     long length;\r
 \r
 //\r
 // load maphead.ext (offsets and tileinfo for map file)\r
@@ -1111,7 +1111,7 @@ void CAL_SetupMapFile (global_game_variables_t *gvar)
 // #ifndef MAPHEADERLINKED\r
 //     if ((handle = open("MAPHEAD."EXT,\r
 //              O_RDONLY | O_BINARY, S_IREAD)) == -1)\r
-//             Quit ("Can't open MAPHEAD."EXT"!");\r
+//             printf("Can't open MAPHEAD."EXT"!");\r
 //     length = filelength(handle);\r
 //     MM_GetPtr (&(memptr)tinf,length);\r
 //     CA_FarRead(handle, tinf, length);\r
@@ -1226,10 +1226,9 @@ void CA_Startup(global_game_variables_t *gvar)
 /*\r
        CAL_SetupGrFile ();\r
        CAL_SetupAudioFile ();*/\r
-\r
        CAL_SetupMapFile (gvar);\r
 \r
-       gvar->ca.map.mapon = -1;\r
+       gvar->ca.camap.mapon = -1;\r
        gvar->ca.ca_levelbit = 1;\r
        gvar->ca.ca_levelnum = 0;\r
 \r
@@ -1840,7 +1839,7 @@ void CA_CacheGrChunk (int chunk)
 =\r
 ======================\r
 */\r
-/*++++ fuckin segments!\r
+/*++++ segments!\r
 void CA_CacheMap (global_game_variables_t *gvar)\r
 {\r
        long    pos,compressed;\r
@@ -1858,10 +1857,7 @@ void CA_CacheMap (global_game_variables_t *gvar)
 // free up memory from last map\r
 //\r
        if (gvar->ca.map.mapon>-1 && gvar->ca.map.mapheaderseg[gvar->ca.map.mapon])\r
-               MM_SetPurge (&((memptr)gvar->ca.map.mapheaderseg\r
-                                                                                       [(gvar->ca.map.mapon)]),\r
-\r
- 3, &(gvar->mm));\r
+               MM_SetPurge (&((memptr)gvar->ca.map.mapheaderseg[(gvar->ca.map.mapon)]), 3, &(gvar->mm));\r
        for (plane=0;plane<MAPPLANES;plane++)\r
                if (gvar->ca.map.mapsegs[plane])\r
                        MM_FreePtr (&(memptr)gvar->ca.map.mapsegs[plane], &(gvar->mm));\r