-Fade in/fade out
-Implement background mode 5 svn-id: r29968
This commit is contained in:
parent
15469b47b5
commit
2d9d0f1b1f
14 changed files with 224 additions and 105 deletions
|
@ -93,14 +93,7 @@ int loadBackground(const char *name, int idx) {
|
|||
printf("Loading BG: %s\n", name);
|
||||
|
||||
if (!backgroundPtrtable[idx]) {
|
||||
//if (!gfxModuleData.useEGA && !gfxModuleData.useVGA)
|
||||
{
|
||||
backgroundPtrtable[idx] =
|
||||
(uint8 *) mallocAndZero(320 * 200 /*64000 */ );
|
||||
}
|
||||
/* else {
|
||||
backgroundPtrtable[idx] = hwMemAddr[idx];
|
||||
} */
|
||||
backgroundPtrtable[idx] = (uint8 *)mallocAndZero(320 * 200);
|
||||
}
|
||||
|
||||
if (!backgroundPtrtable[idx]) {
|
||||
|
@ -126,63 +119,83 @@ int loadBackground(const char *name, int idx) {
|
|||
ptr2 = ptrToFree;
|
||||
|
||||
if (!strcmp(name, "LOGO.PI1")) {
|
||||
bgVar3 = bgVar2;
|
||||
bgVar1 = 1;
|
||||
bgVar2 = 1;
|
||||
} else {
|
||||
if (bgVar1) {
|
||||
bgVar2 = bgVar3;
|
||||
bgVar1 = 0;
|
||||
}
|
||||
oldSpeedGame = speedGame;
|
||||
flagSpeed = 1;
|
||||
speedGame = 1;
|
||||
} else if (flagSpeed) {
|
||||
speedGame = oldSpeedGame;
|
||||
flagSpeed = 0;
|
||||
}
|
||||
|
||||
if (!strcmp((char*)ptr, "PAL")) {
|
||||
printf("Pal loading unsupported !\n");
|
||||
exit(1);
|
||||
ASSERT(0);
|
||||
} else {
|
||||
if (!colorMode || ptr2[1] == 5) {
|
||||
int mode = ptr2[1];
|
||||
ptr2 += 2;
|
||||
// read palette
|
||||
switch(mode)
|
||||
{
|
||||
case 4: // color on 3 bit
|
||||
{
|
||||
uint16 oldPalette[32];
|
||||
|
||||
memcpy(palette, ptr2, 0x20);
|
||||
memcpy(oldPalette, ptr2, 0x20);
|
||||
ptr2 += 0x20;
|
||||
flipGen(palette, 0x20);
|
||||
ptr2 += 0x7D00;
|
||||
flipGen(oldPalette, 0x20);
|
||||
|
||||
for(unsigned long int i=0; i<32; i++)
|
||||
{
|
||||
gfxModuleData_convertOldPalColor(oldPalette[i], &palScreen[idx][i*3]);
|
||||
}
|
||||
ptr2 += 32000;
|
||||
break;
|
||||
}
|
||||
case 5: // color on 4 bit
|
||||
{
|
||||
for(unsigned long int i=0; i<32; i++)
|
||||
{
|
||||
uint8* inPtr = ptr2 + i * 2;
|
||||
uint8* outPtr = palScreen[idx] +i * 3;
|
||||
|
||||
outPtr[2] = ((inPtr[1])&0x0F) << 4;
|
||||
outPtr[1] = (((inPtr[1])&0xF0) >> 4) << 4;
|
||||
outPtr[0] = ((inPtr[0])&0x0F) << 4;
|
||||
}
|
||||
ptr2 += 2*32;
|
||||
break;
|
||||
}
|
||||
case 8:
|
||||
memcpy(palScreen[idx], ptr2, 256*3);
|
||||
ptr2 += 256*3;
|
||||
break;
|
||||
|
||||
default:
|
||||
ASSERT(0);
|
||||
}
|
||||
|
||||
gfxModuleData_setPal256(palScreen[idx]);
|
||||
|
||||
loadMEN(&ptr2);
|
||||
loadCVT(&ptr2);
|
||||
|
||||
gfxModuleData_gfxClearFrameBuffer(backgroundPtrtable
|
||||
[idx]);
|
||||
gfxModuleData_field_60((char *)ptrToFree + 34, 20, 200,
|
||||
(char *)backgroundPtrtable[idx], 0, 0);
|
||||
|
||||
gfxModuleData_setPal((uint8 *) (palette + (idx << 6)));
|
||||
} else if (ptr2[1] == 8) {
|
||||
int i;
|
||||
ptr2 += 2;
|
||||
|
||||
for (i = 0; i < 256 * 3; i++) {
|
||||
palette[i] = ptr2[i];
|
||||
}
|
||||
//memcpy(palette,ptr2,256*3);
|
||||
ptr2 += 256 * 3;
|
||||
// read image data
|
||||
gfxModuleData_gfxClearFrameBuffer(backgroundPtrtable[idx]);
|
||||
|
||||
switch(mode)
|
||||
{
|
||||
case 4:
|
||||
convertGfxFromMode4(ptr2, 320, 200, backgroundPtrtable[idx]);
|
||||
break;
|
||||
case 5:
|
||||
convertGfxFromMode5(ptr2, 320, 200, backgroundPtrtable[idx]);
|
||||
break;
|
||||
case 8:
|
||||
memcpy(backgroundPtrtable[idx], ptr2, 320 * 200);
|
||||
|
||||
gfxModuleData_setPal256(palette);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
//if (ptrToFree != gfxModuleData.pPage10)
|
||||
// free(ptrToFree);
|
||||
|
||||
if (gfxModuleData.useEGA || gfxModuleData.useTandy) {
|
||||
ASSERT(0);
|
||||
}
|
||||
|
||||
if (gfxModuleData.useEGA || gfxModuleData.useTandy) {
|
||||
ASSERT(0);
|
||||
}
|
||||
|
||||
strcpy(backgroundTable[idx].name, name);
|
||||
|
||||
|
|
|
@ -97,7 +97,7 @@ int CruiseEngine::go() {
|
|||
|
||||
void CruiseEngine::initialize() {
|
||||
|
||||
fadeVar = 0;
|
||||
PCFadeFlag = 0;
|
||||
ptr_something =
|
||||
(ctpVar19Struct *) mallocAndZero(sizeof(ctpVar19Struct) * 0x200);
|
||||
|
||||
|
|
|
@ -372,8 +372,7 @@ int loadFileSub1(uint8 **ptr, const char *name, uint8 *ptr2) {
|
|||
if (fileIdx < 0)
|
||||
return (-18);
|
||||
|
||||
unpackedSize = loadFileVar1 =
|
||||
volumePtrToFileDescriptor[fileIdx].extSize + 2;
|
||||
unpackedSize = loadFileVar1 = volumePtrToFileDescriptor[fileIdx].extSize + 2;
|
||||
|
||||
// TODO: here, can unpack in gfx module buffer
|
||||
unpackedBuffer = (uint8 *) mallocAndZero(unpackedSize);
|
||||
|
@ -385,9 +384,7 @@ int loadFileSub1(uint8 **ptr, const char *name, uint8 *ptr2) {
|
|||
lastFileSize = unpackedSize;
|
||||
|
||||
if (volumePtrToFileDescriptor[fileIdx].size + 2 != unpackedSize) {
|
||||
uint8 *pakedBuffer =
|
||||
(uint8 *) mallocAndZero(volumePtrToFileDescriptor[fileIdx].
|
||||
size + 2);
|
||||
uint8 *pakedBuffer = (uint8 *) mallocAndZero(volumePtrToFileDescriptor[fileIdx].size + 2);
|
||||
|
||||
loadPakedFileToMem(fileIdx, pakedBuffer);
|
||||
|
||||
|
@ -1798,15 +1795,12 @@ void mainLoop(void) {
|
|||
|
||||
if (displayOn) {
|
||||
if (doFade)
|
||||
fadeVar = 0;
|
||||
|
||||
/*if (fadeVar)
|
||||
* {
|
||||
* // TODO!
|
||||
* } */
|
||||
PCFadeFlag = 0;
|
||||
|
||||
if (!PCFadeFlag) {
|
||||
mainDraw(0);
|
||||
flipScreen();
|
||||
}
|
||||
|
||||
if (userEnabled && !userWait && !autoTrack) {
|
||||
if (currentActiveMenu == -1) {
|
||||
|
@ -1919,7 +1913,7 @@ int oldmain(int argc, char *argv[]) {
|
|||
|
||||
// initBuffer(scaledScreen,640,400);
|
||||
|
||||
fadeVar = 0;
|
||||
PCFadeFlag = 0;
|
||||
|
||||
//lowLevelInit();
|
||||
|
||||
|
|
|
@ -92,8 +92,7 @@ void decodeGfxFormat4(dataFileEntry *pCurrentFileEntry) {
|
|||
|
||||
/* decode planes */
|
||||
for (c = 0; c < 16; c++) {
|
||||
buffer[x + c] =
|
||||
((p0 >> 15) & 1) | ((p1 >> 14) & 2) | ((p2 >> 13) & 4) | ((p3 >> 12) & 8);
|
||||
buffer[x + c] = ((p0 >> 15) & 1) | ((p1 >> 14) & 2) | ((p2 >> 13) & 4) | ((p3 >> 12) & 8);
|
||||
|
||||
p0 <<= 1;
|
||||
p1 <<= 1;
|
||||
|
|
|
@ -535,7 +535,23 @@ int16 Op_GetlowMemory(void) {
|
|||
}
|
||||
|
||||
int16 Op_FadeOut(void) {
|
||||
printf("Op_FadeOut dummy\n");
|
||||
for(long int i=0; i< 256; i+=32) {
|
||||
for(long int j=0; j<256; j++) {
|
||||
int offsetTable[3];
|
||||
offsetTable[0] = -i;
|
||||
offsetTable[1] = -i;
|
||||
offsetTable[2] = -i;
|
||||
calcRGB(&workpal[3*j], &workpal[3*j], offsetTable);
|
||||
}
|
||||
gfxModuleData_setPal256(workpal);
|
||||
gfxModuleData_flipScreen();
|
||||
}
|
||||
|
||||
//gfxModuleData_gfxClearFrameBuffer(backgroundPtrtable[currentActiveBackgroundPlane]);
|
||||
|
||||
fadeFlag = 1;
|
||||
PCFadeFlag = 1;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
|
@ -62,9 +62,9 @@ void outputBit(char *buffer, int bitPlaneNumber, uint8 data) {
|
|||
*(buffer + (8000 * bitPlaneNumber)) = data;
|
||||
}
|
||||
|
||||
void gfxModuleData_field_60(char *sourcePtr, int width, int height, char *destPtr, int x_, int y_) {
|
||||
void convertGfxFromMode4(uint8 *sourcePtr, int width, int height, uint8 *destPtr) {
|
||||
|
||||
for (int y = 0; y < height; ++y) {
|
||||
for (int y = 0; y < (height/16); ++y) {
|
||||
for (int x = 0; x < width; ++x) {
|
||||
for (int bit = 0; bit < 16; ++bit) {
|
||||
uint8 color = 0;
|
||||
|
@ -80,6 +80,30 @@ void gfxModuleData_field_60(char *sourcePtr, int width, int height, char *destPt
|
|||
}
|
||||
}
|
||||
|
||||
void convertGfxFromMode5(uint8 *sourcePtr, int width, int height, uint8 *destPtr) {
|
||||
int range = (width/8) * height;
|
||||
|
||||
for(int line = 0; line < 200; line++) {
|
||||
uint8 p0;
|
||||
uint8 p1;
|
||||
uint8 p2;
|
||||
uint8 p3;
|
||||
uint8 p4;
|
||||
|
||||
for(int col = 0; col < 40; col++) {
|
||||
for(int bit = 0; bit <8; bit++ ) {
|
||||
p0 = (sourcePtr[line*40 + col + range * 0] >> bit) & 1;
|
||||
p1 = (sourcePtr[line*40 + col + range * 1] >> bit) & 1;
|
||||
p2 = (sourcePtr[line*40 + col + range * 2] >> bit) & 1;
|
||||
p3 = (sourcePtr[line*40 + col + range * 3] >> bit) & 1;
|
||||
p4 = (sourcePtr[line*40 + col + range * 4] >> bit) & 1;
|
||||
|
||||
destPtr[line * width + col * 8 + (7-bit)] = p0 | (p1 << 1) | (p2 << 2) | (p3 << 3) | (p4 << 4);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void gfxModuleData_setDirtyColors(int min, int max) {
|
||||
if (min < palDirtyMin)
|
||||
palDirtyMin = min;
|
||||
|
@ -94,7 +118,7 @@ void gfxModuleData_setPalColor(int idx, int r, int g, int b) {
|
|||
gfxModuleData_setDirtyColors(idx, idx);
|
||||
}
|
||||
|
||||
void gfxModuleData_setPal256(int16 *ptr) {
|
||||
void gfxModuleData_setPal256(uint8 *ptr) {
|
||||
int R;
|
||||
int G;
|
||||
int B;
|
||||
|
@ -114,17 +138,17 @@ void gfxModuleData_setPal256(int16 *ptr) {
|
|||
gfxModuleData_setDirtyColors(0, 255);
|
||||
}
|
||||
|
||||
void gfxModuleData_setPal(uint8 *ptr) {
|
||||
/*void gfxModuleData_setPal(uint8 *ptr) {
|
||||
int i;
|
||||
int R;
|
||||
int G;
|
||||
int B;
|
||||
|
||||
for (i = 0; i < 16; i++) {
|
||||
for (i = 0; i < 256; i++) {
|
||||
#define convertRatio 36.571428571428571428571428571429
|
||||
short int atariColor = *(int16 *) ptr;
|
||||
uint16 atariColor = *ptr;
|
||||
//flipShort(&atariColor);
|
||||
ptr += 2;
|
||||
ptr ++;
|
||||
|
||||
R = (int)(convertRatio * ((atariColor & 0x700) >> 8));
|
||||
G = (int)(convertRatio * ((atariColor & 0x070) >> 4));
|
||||
|
@ -144,6 +168,29 @@ void gfxModuleData_setPal(uint8 *ptr) {
|
|||
}
|
||||
|
||||
gfxModuleData_setDirtyColors(0, 16);
|
||||
}*/
|
||||
|
||||
void gfxModuleData_convertOldPalColor(uint16 oldColor, uint8* pOutput) {
|
||||
int R;
|
||||
int G;
|
||||
int B;
|
||||
|
||||
#define convertRatio 36.571428571428571428571428571429
|
||||
|
||||
R = (int)(convertRatio * ((oldColor & 0x700) >> 8));
|
||||
G = (int)(convertRatio * ((oldColor & 0x070) >> 4));
|
||||
B = (int)(convertRatio * ((oldColor & 0x007)));
|
||||
|
||||
if (R > 0xFF)
|
||||
R = 0xFF;
|
||||
if (G > 0xFF)
|
||||
G = 0xFF;
|
||||
if (B > 0xFF)
|
||||
B = 0xFF;
|
||||
|
||||
*(pOutput++) = R;
|
||||
*(pOutput++) = G;
|
||||
*(pOutput++) = B;
|
||||
}
|
||||
|
||||
void gfxModuleData_field_90(void) {
|
||||
|
|
|
@ -50,17 +50,17 @@ extern gfxModuleDataStruct gfxModuleData;
|
|||
void gfxModuleData_gfxClearFrameBuffer(uint8 * ptr);
|
||||
void gfxModuleData_setDirtyColors(int min, int max);
|
||||
void gfxModuleData_setPalColor(int idx, int r, int g, int b);
|
||||
void gfxModuleData_setPal(uint8 * ptr);
|
||||
void gfxModuleData_field_90(void);
|
||||
void gfxModuleData_gfxWaitVSync(void);
|
||||
void gfxModuleData_flip(void);
|
||||
void gfxModuleData_field_64(char *sourceBuffer, int width, int height,
|
||||
char *dest, int x, int y, int color);
|
||||
void gfxModuleData_field_64(char *sourceBuffer, int width, int height, char *dest, int x, int y, int color);
|
||||
void gfxModuleData_gfxCopyScreen(char *sourcePtr, char *destPtr);
|
||||
void gfxModuleData_field_60(char *sourcePtr, int width, int height,
|
||||
char *destPtr, int x, int y);
|
||||
void convertGfxFromMode4(uint8 *sourcePtr, int width, int height, uint8 *destPtr);
|
||||
void convertGfxFromMode5(uint8 *sourcePtr, int width, int height, uint8 *destPtr);
|
||||
void gfxModuleData_flipScreen(void);
|
||||
void gfxModuleData_setPal256(int16 * ptr);
|
||||
//void gfxModuleData_setPal(uint8 * ptr);
|
||||
void gfxModuleData_convertOldPalColor(uint16 oldColor, uint8* pOutput);
|
||||
void gfxModuleData_setPal256(uint8 * ptr);
|
||||
void flip(void);
|
||||
|
||||
} // End of namespace Cruise
|
||||
|
|
|
@ -81,13 +81,57 @@ void freeAutoCell(void) {
|
|||
}
|
||||
}
|
||||
|
||||
void calcRGB(uint8* pColorSrc, uint8* pColorDst, int* offsetTable) {
|
||||
for(unsigned long int i=0; i<3; i++) {
|
||||
int color = *(pColorSrc++);
|
||||
int offset = offsetTable[i];
|
||||
|
||||
color += offset;
|
||||
if(color < 0)
|
||||
color = 0;
|
||||
if(color > 0xFF)
|
||||
color = 0xFF;
|
||||
|
||||
*(pColorDst++) = (uint8)color;
|
||||
}
|
||||
}
|
||||
|
||||
void fadeIn() {
|
||||
for(long int i=256; i>=0; i-=32) {
|
||||
for(long int j=0; j<256; j++) {
|
||||
int offsetTable[3];
|
||||
offsetTable[0] = -i;
|
||||
offsetTable[1] = -i;
|
||||
offsetTable[2] = -i;
|
||||
calcRGB(&palScreen[currentActiveBackgroundPlane][3*j], &workpal[3*j], offsetTable);
|
||||
}
|
||||
gfxModuleData_setPal256(workpal);
|
||||
gfxModuleData_flipScreen();
|
||||
}
|
||||
|
||||
for(long int j=0; j<256; j++) {
|
||||
int offsetTable[3];
|
||||
offsetTable[0] = 0;
|
||||
offsetTable[1] = 0;
|
||||
offsetTable[2] = 0;
|
||||
calcRGB(&palScreen[currentActiveBackgroundPlane][3*j], &workpal[3*j], offsetTable);
|
||||
}
|
||||
|
||||
gfxModuleData_setPal256(workpal);
|
||||
|
||||
fadeFlag = 0;
|
||||
PCFadeFlag = 0;
|
||||
}
|
||||
|
||||
void flipScreen(void) {
|
||||
SWAP(gfxModuleData.pPage00, gfxModuleData.pPage10);
|
||||
|
||||
gfxModuleData_flipScreen();
|
||||
|
||||
/*memcpy(globalAtariScreen, gfxModuleData.pPage00, 16000);
|
||||
* convertAtariToRaw(gfxModuleData.pPage00,globalScreen,200,320); */
|
||||
if(doFade) {
|
||||
fadeIn();
|
||||
doFade = 0;
|
||||
}
|
||||
}
|
||||
|
||||
int spriteX1;
|
||||
|
@ -1344,7 +1388,7 @@ void mainDraw(int16 param) {
|
|||
int16 objZ2 = 0;
|
||||
int16 spriteHeight;
|
||||
|
||||
if (fadeVar) {
|
||||
if (PCFadeFlag) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
|
@ -44,6 +44,7 @@ void flipPoly(int fileId, int16 *dataPtr, int scale, char** newFrame, int X, int
|
|||
void getPolySize(int positionX, int positionY, int scale, int sizeTable[4], unsigned char *dataPtr);
|
||||
bool findPoly(char* dataPtr, int x, int y, int zoom, int mouseX, int mouseY);
|
||||
unsigned char *drawPolyMode2(unsigned char *dataPointer, int linesToDraw);
|
||||
void calcRGB(uint8* pColorSrc, uint8* pColorDst, int* offsetTable);
|
||||
} // End of namespace Cruise
|
||||
|
||||
#endif
|
||||
|
|
|
@ -184,7 +184,7 @@ void initVars(void)
|
|||
buttonDown = 0;
|
||||
var41 = 0;
|
||||
entrerMenuJoueur = 0;
|
||||
fadeVar = 0;
|
||||
PCFadeFlag = 0;
|
||||
}
|
||||
|
||||
void saveOverlay(Common::OutSaveFile& currentSaveFile) {
|
||||
|
@ -560,8 +560,8 @@ int saveSavegameData(int saveGameIdx) {
|
|||
currentSaveFile->writeSint16LE(var41);
|
||||
currentSaveFile->writeSint16LE(entrerMenuJoueur);
|
||||
|
||||
currentSaveFile->write(var50, 64);
|
||||
currentSaveFile->write(var50, 64); // Hu ? why 2 times ?
|
||||
currentSaveFile->write(newPal, sizeof(int16) * NBCOLORS);
|
||||
currentSaveFile->write(workpal, sizeof(int16) * NBCOLORS);
|
||||
|
||||
currentSaveFile->write(musicName, 15);
|
||||
|
||||
|
@ -577,7 +577,7 @@ int saveSavegameData(int saveGameIdx) {
|
|||
currentSaveFile->write(backgroundTable[i].extention, 6);
|
||||
}
|
||||
|
||||
currentSaveFile->write(palette, 256*2);
|
||||
currentSaveFile->write(palScreen, sizeof(int16) * NBCOLORS * NBSCREENS);
|
||||
currentSaveFile->write(initVar5, 24);
|
||||
currentSaveFile->write(globalVars, stateID * 2); // ok
|
||||
for(int i=0; i<257; i++)
|
||||
|
@ -737,8 +737,8 @@ int loadSavegameData(int saveGameIdx) {
|
|||
var41 = currentSaveFile->readSint16LE();
|
||||
entrerMenuJoueur = currentSaveFile->readSint16LE();
|
||||
|
||||
currentSaveFile->read(var50, 64);
|
||||
currentSaveFile->read(var50, 64); // Hu ? why 2 times ?
|
||||
currentSaveFile->read(newPal, sizeof(int16) * NBCOLORS);
|
||||
currentSaveFile->read(newPal, sizeof(int16) * NBCOLORS);
|
||||
|
||||
// here code seems bogus... this should read music name and it may be a buffer overrun
|
||||
currentSaveFile->skip(21);
|
||||
|
@ -752,7 +752,7 @@ int loadSavegameData(int saveGameIdx) {
|
|||
currentSaveFile->read(backgroundTable[i].extention, 6);
|
||||
}
|
||||
|
||||
currentSaveFile->read(palette, 256*2);
|
||||
currentSaveFile->read(palScreen, sizeof(int16) * NBCOLORS * NBSCREENS);
|
||||
currentSaveFile->read(initVar5, 24);
|
||||
currentSaveFile->read(globalVars, stateID * 2); // ok
|
||||
for(int i=0; i<257; i++)
|
||||
|
|
|
@ -28,7 +28,7 @@
|
|||
namespace Cruise {
|
||||
|
||||
uint16 remdo = 0;
|
||||
uint16 fadeVar;
|
||||
uint16 PCFadeFlag;
|
||||
|
||||
int16 readB16(void *ptr) {
|
||||
int16 temp;
|
||||
|
|
|
@ -31,7 +31,7 @@
|
|||
namespace Cruise {
|
||||
|
||||
extern uint16 remdo;
|
||||
extern uint16 fadeVar;
|
||||
extern uint16 PCFadeFlag;
|
||||
|
||||
int16 readB16(void *ptr);
|
||||
|
||||
|
|
|
@ -143,8 +143,9 @@ int16 var47;
|
|||
int16 var48;
|
||||
int16 flagCt;
|
||||
|
||||
int8 var50[64];
|
||||
int16 palette[256 * 3];
|
||||
uint8 newPal[NBCOLORS*3];
|
||||
uint8 workpal[NBCOLORS*3];
|
||||
uint8 palScreen[NBSCREENS][NBCOLORS*3];
|
||||
|
||||
//systemStringsStruct systemStrings;
|
||||
|
||||
|
@ -172,9 +173,9 @@ int16 ctpVar8[200];
|
|||
|
||||
int16 ctpVar14;
|
||||
|
||||
int16 bgVar1;
|
||||
int16 bgVar2;
|
||||
int16 bgVar3;
|
||||
int16 flagSpeed;
|
||||
int16 speedGame;
|
||||
int16 oldSpeedGame;
|
||||
|
||||
uint8 globalScreen[320 * 200];
|
||||
uint8 scaledScreen[640 * 400];
|
||||
|
|
|
@ -30,6 +30,9 @@
|
|||
|
||||
namespace Cruise {
|
||||
|
||||
#define NBCOLORS 256
|
||||
#define NBSCREENS 8
|
||||
|
||||
struct menuElementSubStruct {
|
||||
struct menuElementSubStruct *pNext;
|
||||
int16 ovlIdx;
|
||||
|
@ -235,8 +238,9 @@ extern int16 var47;
|
|||
extern int16 var48;
|
||||
extern int16 flagCt;
|
||||
|
||||
extern int8 var50[64];
|
||||
extern int16 palette[256 * 3];
|
||||
extern uint8 newPal[NBCOLORS*3];
|
||||
extern uint8 workpal[NBCOLORS*3];
|
||||
extern uint8 palScreen[NBSCREENS][NBCOLORS*3];
|
||||
|
||||
//extern systemStringsStruct systemStrings;
|
||||
|
||||
|
@ -282,9 +286,9 @@ extern int16 ctpVar8[200];
|
|||
|
||||
extern int16 ctpVar14;
|
||||
|
||||
extern int16 bgVar1;
|
||||
extern int16 bgVar2;
|
||||
extern int16 bgVar3;
|
||||
extern int16 flagSpeed;
|
||||
extern int16 speedGame;
|
||||
extern int16 oldSpeedGame;
|
||||
|
||||
extern uint8 globalScreen[320 * 200];
|
||||
extern uint8 scaledScreen[640 * 400];
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue