From e9788e390d5fe0e326a39762a04c628111bc0e84 Mon Sep 17 00:00:00 2001 From: Steven Fuller Date: Fri, 9 May 2008 02:11:36 -0700 Subject: Windows WIP. --- src/win95/awtexld.cpp | 2 +- src/win95/huffman.cpp | 33 ++++++++++++++------------------- src/win95/huffman.hpp | 4 +++- 3 files changed, 18 insertions(+), 21 deletions(-) (limited to 'src/win95') diff --git a/src/win95/awtexld.cpp b/src/win95/awtexld.cpp index 18ae500..03ef1db 100644 --- a/src/win95/awtexld.cpp +++ b/src/win95/awtexld.cpp @@ -539,7 +539,7 @@ AwTl::SurfUnion AwBackupTexture::CreateTexture(AwTl::CreateTextureParms const & y = m_nHeight-1; } - for (int i, rowcount = m_nHeight; rowcount; --rowcount, i++) + for (int i = 0, rowcount = m_nHeight; rowcount; --rowcount, i++) { PtrUnion src_rowP = GetRowPtr(y); db_assert1(src_rowP.voidP); diff --git a/src/win95/huffman.cpp b/src/win95/huffman.cpp index f641071..4347959 100644 --- a/src/win95/huffman.cpp +++ b/src/win95/huffman.cpp @@ -61,11 +61,8 @@ static HuffEncode EncodingTable[257]; /* KJL 17:16:03 17/09/98 - Compression */ static void PerformSymbolCensus(unsigned char *sourcePtr, int length); -#ifdef __WATCOMC__ static int HuffItemsSortSub(const void *cmp1, const void *cmp2); -#else static int __cdecl HuffItemsSortSub(const void *cmp1, const void *cmp2); -#endif static void SortCensusData(void); static void BuildHuffmanTree(void); static void MakeHuffTreeFromHuffItems(HuffNode *base, HuffItem *source, int count); @@ -125,11 +122,7 @@ static void PerformSymbolCensus(unsigned char *sourcePtr, int length) while (--length); } -#ifdef __WATCOMC__ -static int HuffItemsSortSub(const void *cmp1, const void *cmp2) -#else static int __cdecl HuffItemsSortSub(const void *cmp1, const void *cmp2) -#endif { if (((HuffItem *)cmp1)->Count > ((HuffItem *)cmp2)->Count) return 1; @@ -321,6 +314,7 @@ static int HuffEncodeBytes(int *dest, unsigned char *source, int count, HuffEnco if (!count) return 0; + accum = 0; start = dest; sourcelim = sourceend = source + count; available = 32; @@ -387,7 +381,7 @@ lpstart: val = *source++; } } *dest++ = accum >> available; - return (dest - start) * 4; + return (int)((dest - start) * 4); } @@ -398,11 +392,11 @@ lpstart: val = *source++; /* KJL 17:16:24 17/09/98 - Decompression */ static int DecodeTable[1<>= wid; *dest++ = p[1]; -lpent: p = (unsigned char *)(((short *)table)+(bits & ~EDXMASK)); +lpent: p = (const unsigned char *)(((const short *)table)+(bits & ~EDXMASK)); } while ((available -= (wid = *p)) >= 0 && (dest-start)!=length); } while (available > -32 && (dest-start)!=length); - return dest - start; + return (int)(dest - start); } diff --git a/src/win95/huffman.hpp b/src/win95/huffman.hpp index 607ff8b..bf0bdf5 100644 --- a/src/win95/huffman.hpp +++ b/src/win95/huffman.hpp @@ -7,6 +7,7 @@ #endif #define MAX_DEPTH 11 + typedef struct { char Identifier[8]; @@ -16,11 +17,12 @@ typedef struct unsigned char ByteAssignment[256]; } HuffmanPackage; + /* KJL 17:16:03 17/09/98 - Compression */ extern HuffmanPackage *HuffmanCompression(unsigned char *sourcePtr, int length); /* KJL 16:53:53 19/09/98 - Decompression */ -extern char *HuffmanDecompress(HuffmanPackage *inpackage); +extern char *HuffmanDecompress(const HuffmanPackage *inpackage); #define COMPRESSED_RIF_IDENTIFIER "REBCRIF1" -- cgit v1.3