|
From: Vincent H. <ya...@us...> - 2005-06-12 20:19:55
|
Update of /cvsroot/twin-e/twin-e/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv17454/src Modified Files: HQRlib.c cube.c font.c fullRedraw.c images.c lba.h life_binary.c mainLoop.c mainMenu.c renderer.c room.c text.c type.h vars.h Log Message: Early port to macosx, nothing much functional Index: renderer.c =================================================================== RCS file: /cvsroot/twin-e/twin-e/src/renderer.c,v retrieving revision 1.20 retrieving revision 1.21 diff -C2 -d -r1.20 -r1.21 *** renderer.c 4 May 2005 09:08:10 -0000 1.20 --- renderer.c 12 Jun 2005 20:19:29 -0000 1.21 *************** *** 36,39 **** --- 36,42 ---- _angleZ = angleZ; + #ifdef MACOSX + return 0; + #endif /* * Those 4 vars are used to know the size of the rendered model. They are resetted to their Index: lba.h =================================================================== RCS file: /cvsroot/twin-e/twin-e/src/lba.h,v retrieving revision 1.25 retrieving revision 1.26 diff -C2 -d -r1.25 -r1.26 *** lba.h 4 May 2005 20:26:21 -0000 1.25 --- lba.h 12 Jun 2005 20:19:29 -0000 1.26 *************** *** 41,45 **** --- 41,49 ---- #ifdef PCLIKE + #ifdef MACOSX + #include<malloc/malloc.h> + #else #include<malloc.h> + #endif #ifdef USE_GL #include <windows.h> // Header File For Windows *************** *** 100,103 **** --- 104,115 ---- #endif + #ifdef MACOSX + #define convertDWFromLE(x) ((x >> 24) | ((x >> 8) & 0x0000ff00) | ((x << 8) & 0x00ff0000) | (x << 24)) + #define convertWFromLE(x) (((x>>8)&0xFF)|((x<<8)&0xFF00)) + #else + #define convertDWFromLE(x) (x) + #define convertWFromLE(x) (x) + #endif + struct mouseStatusStruct { Index: font.c =================================================================== RCS file: /cvsroot/twin-e/twin-e/src/font.c,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** font.c 21 Nov 2004 00:07:30 -0000 1.9 --- font.c 12 Jun 2005 20:19:29 -0000 1.10 *************** *** 49,53 **** int tempY; ! data = fntFont + *((short int *) (fntFont + caractere * 4)); sizeX = *(data++); --- 49,53 ---- int tempY; ! data = fntFont + convertWFromLE(*((short int *) (fntFont + caractere * 4))); sizeX = *(data++); *************** *** 132,136 **** else { ! stringLenght = *(fntFont + *((short int *) (fntFont + character * 4))); // get the length of the character drawCharacter(X, Y, character); // draw the character on screen X += interCharSpace; // add the length of the space between 2 characters --- 132,136 ---- else { ! stringLenght = *(fntFont + convertWFromLE(*((short int *) (fntFont + character * 4)))); // get the length of the character drawCharacter(X, Y, character); // draw the character on screen X += interCharSpace; // add the length of the space between 2 characters *************** *** 139,140 **** --- 139,141 ---- }while (1); } + Index: fullRedraw.c =================================================================== RCS file: /cvsroot/twin-e/twin-e/src/fullRedraw.c,v retrieving revision 1.56 retrieving revision 1.57 diff -C2 -d -r1.56 -r1.57 *** fullRedraw.c 4 May 2005 09:08:09 -0000 1.56 --- fullRedraw.c 12 Jun 2005 20:19:29 -0000 1.57 *************** *** 1669,1673 **** if (currentZbufferData->x + currentZbufferData->y > Y + X) { ! CopyMask(currentZbufferData->spriteNum,(j * 24) - 24,currentZbufferData->drawY, bufferBrick2,workVideoBuffer); } } --- 1669,1673 ---- if (currentZbufferData->x + currentZbufferData->y > Y + X) { ! CopyMaskLBA(currentZbufferData->spriteNum,(j * 24) - 24,currentZbufferData->drawY, bufferBrick2,workVideoBuffer); } } *************** *** 1697,1706 **** if ((currentZbufferData->x == X) && (currentZbufferData->y == Y)) { ! CopyMask(currentZbufferData->spriteNum, (j * 24) - 24, currentZbufferData->drawY, bufferBrick2, workVideoBuffer); } if ((currentZbufferData->x > X) || (currentZbufferData->y > Y)) { ! CopyMask(currentZbufferData->spriteNum, (j * 24) - 24, currentZbufferData->drawY, bufferBrick2, workVideoBuffer); } } --- 1697,1706 ---- if ((currentZbufferData->x == X) && (currentZbufferData->y == Y)) { ! CopyMaskLBA(currentZbufferData->spriteNum, (j * 24) - 24, currentZbufferData->drawY, bufferBrick2, workVideoBuffer); } if ((currentZbufferData->x > X) || (currentZbufferData->y > Y)) { ! CopyMaskLBA(currentZbufferData->spriteNum, (j * 24) - 24, currentZbufferData->drawY, bufferBrick2, workVideoBuffer); } } *************** *** 1740,1744 **** // if((currentZbufferData->x == Z) && (currentZbufferData->y == X)) { ! CopyMask(currentZbufferData->spriteNum, (CopyBlockPhysLeft*24) - 24, currentZbufferData->drawY, bufferBrick2, workVideoBuffer); } } --- 1740,1744 ---- // if((currentZbufferData->x == Z) && (currentZbufferData->y == X)) { ! CopyMaskLBA(currentZbufferData->spriteNum, (CopyBlockPhysLeft*24) - 24, currentZbufferData->drawY, bufferBrick2, workVideoBuffer); } } *************** *** 1751,1755 **** } */ ! void CopyMask(int spriteNum, int x, int y, byte * localBufferBrick, byte * buffer) { unsigned char *ptr; --- 1751,1755 ---- } */ ! void CopyMaskLBA(int spriteNum, int x, int y, byte * localBufferBrick, byte * buffer) { unsigned char *ptr; *************** *** 1872,1876 **** /* ! void CopyMask(int spriteNum, int x, int y, byte * localBufferBrick, byte * buffer) { unsigned char *ptr; --- 1872,1876 ---- /* ! void CopyMaskLBA(int spriteNum, int x, int y, byte * localBufferBrick, byte * buffer) { unsigned char *ptr; Index: room.c =================================================================== RCS file: /cvsroot/twin-e/twin-e/src/room.c,v retrieving revision 1.30 retrieving revision 1.31 diff -C2 -d -r1.30 -r1.31 *** room.c 4 May 2005 20:26:21 -0000 1.30 --- room.c 12 Jun 2005 20:19:29 -0000 1.31 *************** *** 1178,1182 **** lastBrick = val4; ! *(outPtr2 + val4) = 1; } --- 1178,1182 ---- lastBrick = val4; ! WRITE_LE_U16(outPtr2 + val4) = 1; } *************** *** 1198,1202 **** while (currentBrick <= lastBrick) { ! if (*outPtr3 != 0) counter3++; outPtr3++; --- 1198,1202 ---- while (currentBrick <= lastBrick) { ! if (READ_LE_U16(outPtr3) != 0) counter3++; outPtr3++; *************** *** 1394,1398 **** if (temp & temp3) { ! temp4 = *(int *) (currentBll + offset - 4); ptr1 = currentBll + temp4; --- 1394,1398 ---- if (temp & temp3) { ! temp4 = READ_LE_U32(currentBll + offset - 4); ptr1 = currentBll + temp4; Index: mainLoop.c =================================================================== RCS file: /cvsroot/twin-e/twin-e/src/mainLoop.c,v retrieving revision 1.50 retrieving revision 1.51 diff -C2 -d -r1.50 -r1.51 *** mainLoop.c 4 May 2005 09:08:10 -0000 1.50 --- mainLoop.c 12 Jun 2005 20:19:29 -0000 1.51 *************** *** 906,910 **** } ! void SetClip(int left, int top, int right, int bottom) { if (left < 0) --- 906,910 ---- } ! void SetClipLBA(int left, int top, int right, int bottom) { if (left < 0) Index: life_binary.c =================================================================== RCS file: /cvsroot/twin-e/twin-e/src/life_binary.c,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** life_binary.c 4 May 2005 09:08:10 -0000 1.11 --- life_binary.c 12 Jun 2005 20:19:29 -0000 1.12 *************** *** 32,35 **** --- 32,39 ---- int temp; + #ifdef MACOSX + return; + #endif + lactor = &actors[actorNumber]; Index: cube.c =================================================================== RCS file: /cvsroot/twin-e/twin-e/src/cube.c,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** cube.c 21 Jul 2004 19:40:50 -0000 1.3 --- cube.c 12 Jun 2005 20:19:29 -0000 1.4 *************** *** 61,65 **** HQM_Shrink_Last(bufferBrick2, size); ! numberOfBll = (*(unsigned int *) (currentBll)) >> 2; createCube(); --- 61,65 ---- HQM_Shrink_Last(bufferBrick2, size); ! numberOfBll = (READ_LE_U32(currentBll)) >> 2; createCube(); Index: vars.h =================================================================== RCS file: /cvsroot/twin-e/twin-e/src/vars.h,v retrieving revision 1.44 retrieving revision 1.45 diff -C2 -d -r1.44 -r1.45 *** vars.h 23 Apr 2005 19:40:28 -0000 1.44 --- vars.h 12 Jun 2005 20:19:29 -0000 1.45 *************** *** 1184,1188 **** int GetRealAngle(timeStruct * arg_0); ! void SetClip(int left, int top, int right, int bottom); //void TranslateGroupeS2(short int eax, short int ebx, short int ecx); --- 1184,1189 ---- int GetRealAngle(timeStruct * arg_0); ! void SetClipLBA(int left, int top, int right, int bottom); ! #define SetClip SetClipLBA //void TranslateGroupeS2(short int eax, short int ebx, short int ecx); *************** *** 1390,1394 **** void drawLine(int a, int b, int c, int d, int e); ! void Line(int a, int b, int c, int d, int e); void CoulDial(int a, int b, int c); --- 1391,1396 ---- void drawLine(int a, int b, int c, int d, int e); ! void LineLBA(int a, int b, int c, int d, int e); ! #define Line LineLBA void CoulDial(int a, int b, int c); Index: images.c =================================================================== RCS file: /cvsroot/twin-e/twin-e/src/images.c,v retrieving revision 1.12 retrieving revision 1.13 diff -C2 -d -r1.12 -r1.13 *** images.c 21 Jul 2004 19:40:51 -0000 1.12 --- images.c 12 Jun 2005 20:19:29 -0000 1.13 *************** *** 198,202 **** int *colorDest = (int *) palDest; ! #ifdef PCLIKE for (i = 0; i < 256; i++) { --- 198,202 ---- int *colorDest = (int *) palDest; ! #if 0 for (i = 0; i < 256; i++) { Index: type.h =================================================================== RCS file: /cvsroot/twin-e/twin-e/src/type.h,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** type.h 4 May 2005 09:08:10 -0000 1.8 --- type.h 12 Jun 2005 20:19:29 -0000 1.9 *************** *** 84,108 **** #define READ_LE_BYTE(ptr) (*(ptr)) - //#define READ_LE_SHORT(ptr) ((*(ptr))+(256*(*((ptr)+1)))) - //#define READ_LE_LONG(ptr) ((*(ptr))+(256*(*((ptr)+1)))+(256*256*(*((ptr)+2)))+(256*256*256*(*((ptr)+3)))) FORCEINLINE uint16 READ_LE_U16(void *ptr) { return (((byte*)ptr)[1]<<8)|((byte*)ptr)[0]; } FORCEINLINE int16 READ_LE_S16(void *ptr) { return (((byte*)ptr)[1]<<8)|((byte*)ptr)[0]; } FORCEINLINE uint32 READ_LE_U32(void *ptr) { return (((byte*)ptr)[3]<<24)|(((byte*)ptr)[2]<<16)|(((byte*)ptr)[1]<<8)|((byte*)ptr)[0]; } FORCEINLINE int32 READ_LE_S32(void *ptr) { return (((byte*)ptr)[3]<<24)|(((byte*)ptr)[2]<<16)|(((byte*)ptr)[1]<<8)|((byte*)ptr)[0]; } --- 84,122 ---- #define READ_LE_BYTE(ptr) (*(ptr)) FORCEINLINE uint16 READ_LE_U16(void *ptr) { + #ifdef MACOSX + return (((byte*)ptr)[0]<<8)|((byte*)ptr)[1]; + #else return (((byte*)ptr)[1]<<8)|((byte*)ptr)[0]; + #endif } FORCEINLINE int16 READ_LE_S16(void *ptr) { + #ifdef MACOSX + return (((byte*)ptr)[0]<<8)|((byte*)ptr)[1]; + #else return (((byte*)ptr)[1]<<8)|((byte*)ptr)[0]; + #endif } FORCEINLINE uint32 READ_LE_U32(void *ptr) { + #ifdef MACOSX + return (((byte*)ptr)[0]<<24)|(((byte*)ptr)[1]<<16)|(((byte*)ptr)[2]<<8)|((byte*)ptr)[3]; + #else return (((byte*)ptr)[3]<<24)|(((byte*)ptr)[2]<<16)|(((byte*)ptr)[1]<<8)|((byte*)ptr)[0]; + #endif } FORCEINLINE int32 READ_LE_S32(void *ptr) { + #ifdef MACOSX + return (((byte*)ptr)[0]<<24)|(((byte*)ptr)[1]<<16)|(((byte*)ptr)[2]<<8)|((byte*)ptr)[3]; + #else return (((byte*)ptr)[3]<<24)|(((byte*)ptr)[2]<<16)|(((byte*)ptr)[1]<<8)|((byte*)ptr)[0]; + #endif } Index: mainMenu.c =================================================================== RCS file: /cvsroot/twin-e/twin-e/src/mainMenu.c,v retrieving revision 1.18 retrieving revision 1.19 diff -C2 -d -r1.18 -r1.19 *** mainMenu.c 22 Apr 2005 10:45:57 -0000 1.18 --- mainMenu.c 12 Jun 2005 20:19:29 -0000 1.19 *************** *** 741,745 **** } ! void Line(int a, int b, int c, int d, int e) { drawLine(a, b, c, d, e); --- 741,745 ---- } ! void LineLBA(int a, int b, int c, int d, int e) { drawLine(a, b, c, d, e); *************** *** 959,963 **** { stringLenght += interCharSpace; // espace inter lettre ! stringLenght += *(fntFont + *((short int *) (fntFont + caractere * 4))); } } --- 959,963 ---- { stringLenght += interCharSpace; // espace inter lettre ! stringLenght += *(fntFont + convertWFromLE(*((short int *) (fntFont + caractere * 4)))); } } Index: text.c =================================================================== RCS file: /cvsroot/twin-e/twin-e/src/text.c,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** text.c 4 May 2005 09:08:10 -0000 1.15 --- text.c 12 Jun 2005 20:19:29 -0000 1.16 *************** *** 482,486 **** byte *temp; ! temp = pFont + *((short int *) (pFont + character * 4)); *pLetterWidth = *(temp); *pLetterHeight = *(temp + 1); --- 482,486 ---- byte *temp; ! temp = pFont + convertWFromLE(*((short int *) (pFont + character * 4))); *pLetterWidth = *(temp); *pLetterHeight = *(temp + 1); *************** *** 980,984 **** temp2 = 0; ! temp2 = *(localOrderBuf); localOrderBuf++; if (temp2 == index) --- 980,984 ---- temp2 = 0; ! temp2 = convertWFromLE(*(localOrderBuf)); localOrderBuf++; if (temp2 == index) *************** *** 1005,1010 **** ex: ! ptrCurrentEntry = localTextBuf[temp]; // entrée courante ! ptrNextEntry = localTextBuf[temp + 1]; // entrée d'apres currentTextPtr = (bufText + ptrCurrentEntry); --- 1005,1010 ---- ex: ! ptrCurrentEntry = convertWFromLE(localTextBuf[temp]); // entrée courante ! ptrNextEntry = convertWFromLE(localTextBuf[temp + 1]); // entrée d'apres currentTextPtr = (bufText + ptrCurrentEntry); Index: HQRlib.c =================================================================== RCS file: /cvsroot/twin-e/twin-e/src/HQRlib.c,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** HQRlib.c 4 May 2005 20:26:21 -0000 1.8 --- HQRlib.c 12 Jun 2005 20:19:28 -0000 1.9 *************** *** 299,307 **** int Load_HQR(char *resourceName, unsigned char* ptr, int imageNumber) { ! int headerSize; ! int offToImage; ! int dataSize; ! int compressedSize; ! short int mode; if(!streamReader_open( &fileReader, (int8*) resourceName )) --- 299,307 ---- int Load_HQR(char *resourceName, unsigned char* ptr, int imageNumber) { ! unsigned int headerSize; ! unsigned int offToImage; ! unsigned int dataSize; ! unsigned int compressedSize; ! unsigned short int mode; if(!streamReader_open( &fileReader, (int8*) resourceName )) *************** *** 309,312 **** --- 309,313 ---- streamReader_get( &fileReader, &headerSize, 4 ); + headerSize = convertDWFromLE(headerSize); if(imageNumber >= headerSize /4) *************** *** 318,326 **** --- 319,331 ---- streamReader_seek( &fileReader, imageNumber * 4 ); streamReader_get( &fileReader, &offToImage, 4 ); + offToImage = convertDWFromLE(offToImage); streamReader_seek( &fileReader, offToImage ); streamReader_get( &fileReader, &dataSize , 4 ); + dataSize = convertDWFromLE(dataSize); streamReader_get( &fileReader, &compressedSize , 4 ); + compressedSize = convertDWFromLE(compressedSize); streamReader_get( &fileReader, &mode , 2 ); + mode = convertWFromLE(mode); if( mode <= 0 ) *************** *** 368,431 **** unsigned char *LoadMalloc_HQR(char *fileName, short int imageNumber) { - #ifndef DREAMCAST - FILE *resourceFile; - int headerSize; - int offToImage; - int dataSize; - int compressedSize; - short int mode; - unsigned char *ptr; - - resourceFile = HQR_File_OpenRead(fileName); - - if (!resourceFile) - return (0); - - HQR_File_Read(resourceFile, (char *) &headerSize, 4); - - if (imageNumber >= headerSize / 4) - { - HQR_File_Close(resourceFile); - return (0); - } - - fseek(resourceFile, imageNumber * 4, SEEK_SET); - HQR_File_Read(resourceFile, (char *) &offToImage, 4); - - fseek(resourceFile, offToImage, SEEK_SET); - HQR_File_Read(resourceFile, (char *) &dataSize, 4); - HQR_File_Read(resourceFile, (char *) &compressedSize, 4); - HQR_File_Read(resourceFile, (char *) &mode, 2); - - ptr = (unsigned char *) Malloc(dataSize + 500); - if (mode <= 0) // uncompressed Image - { - HQR_File_Read(resourceFile, (char *) ptr, dataSize); - } - else - { - if (mode == 1) // compressed Image - { - HQR_File_Read(resourceFile, (char *) (ptr + dataSize - compressedSize + 500), compressedSize); - HQR_Expand(dataSize, ptr, (ptr + dataSize - compressedSize + 500)); - } - else - { - MemFree(ptr); - HQR_File_Close(resourceFile); - return (0); - } - } - - HQR_File_Close(resourceFile); - - return (ptr); - #else - //DC unsigned char* ptr; HQRM_Load(fileName,imageNumber, &ptr); return (ptr); - #endif } --- 373,380 ---- *************** *** 629,637 **** int HQRM_Load(char *fileName, short int arg_4, unsigned char ** ptr) // recheck { ! int headerSize; ! int offToData; ! int dataSize; ! int compressedSize; ! short int mode; unsigned char *temp; --- 578,586 ---- int HQRM_Load(char *fileName, short int arg_4, unsigned char ** ptr) // recheck { ! unsigned int headerSize; ! unsigned int offToData; ! unsigned int dataSize; ! unsigned int compressedSize; ! unsigned short int mode; unsigned char *temp; *************** *** 640,643 **** --- 589,593 ---- streamReader_get( &fileReader, &headerSize, 4); + headerSize = convertDWFromLE(headerSize); if(arg_4 >= headerSize /4) *************** *** 649,657 **** --- 599,611 ---- streamReader_seek( &fileReader, arg_4 * 4 ); streamReader_get( &fileReader, &offToData, 4 ); + offToData = convertDWFromLE(offToData); streamReader_seek( &fileReader, offToData ); streamReader_get( &fileReader, &dataSize, 4 ); + dataSize = convertDWFromLE(dataSize); streamReader_get( &fileReader, &compressedSize, 4 ); + compressedSize = convertDWFromLE(compressedSize); streamReader_get( &fileReader, &mode , 2 ); + mode = convertWFromLE(mode); (*ptr) = (unsigned char*)Malloc(dataSize); |