diff options
author | Strangerke | 2016-09-28 07:29:12 +0200 |
---|---|---|
committer | Eugene Sandulenko | 2017-01-25 22:41:56 +0100 |
commit | 0e4d63d37c4a55ffb13d8c9bbc82d0529a00a1e0 (patch) | |
tree | a30d42747cb2f171db76a9268eb667b4837e6c90 /engines | |
parent | 01f10cc4ee369b51baaf30804ca5c8d1578434a5 (diff) | |
download | scummvm-rg350-0e4d63d37c4a55ffb13d8c9bbc82d0529a00a1e0.tar.gz scummvm-rg350-0e4d63d37c4a55ffb13d8c9bbc82d0529a00a1e0.tar.bz2 scummvm-rg350-0e4d63d37c4a55ffb13d8c9bbc82d0529a00a1e0.zip |
CRYO: Simplify loadFile, some renaming and variable type changes
Diffstat (limited to 'engines')
-rw-r--r-- | engines/cryo/eden.cpp | 203 | ||||
-rw-r--r-- | engines/cryo/eden.h | 27 |
2 files changed, 109 insertions, 121 deletions
diff --git a/engines/cryo/eden.cpp b/engines/cryo/eden.cpp index c0cb5042ee..3e16e7a99d 100644 --- a/engines/cryo/eden.cpp +++ b/engines/cryo/eden.cpp @@ -105,7 +105,7 @@ void EdenGame::gametofresques() { // Original name: dofresques void EdenGame::doFrescoes() { - curs_saved = 0; + curs_saved = false; torchCursor = true; glow_x = -1; glow_y = -1; @@ -121,7 +121,7 @@ void EdenGame::doFrescoes() { // Original name: finfresques void EdenGame::endFrescoes() { torchCursor = false; - curs_saved = 1; + curs_saved = true; p_global->displayFlags = DisplayFlags::dfFlag1; resetScroll(); p_global->ff_100 = 0xFF; @@ -878,7 +878,7 @@ void EdenGame::afficher128() { ClearScreen(); fadetoblack128(1); if (showBlackBars) - blackbars(); + drawBlackBars(); CLBlitter_CopyView2Screen(p_mainview); fadefromblack128(1); } @@ -939,34 +939,33 @@ void EdenGame::use_bank(int16 bank) { debug("attempt to load bad bank %d", bank); bank_data_ptr = bank_data_buf; if (cur_bank_num != bank) { - loadfile(bank, bank_data_buf); + loadFile(bank, bank_data_buf); verifh(bank_data_buf); cur_bank_num = bank; } } void EdenGame::sundcurs(int16 x, int16 y) { - byte *scr, *keep = curs_keepbuf; - int16 w, h; + byte *keep = curs_keepbuf; curs_keepx = x - 4; curs_keepy = y - 4; - scr = p_mainview_buf + curs_keepx + curs_keepy * 640; - for (h = 48; h--;) { - for (w = 48; w--;) + byte *scr = p_mainview_buf + curs_keepx + curs_keepy * 640; + for (int16 h = 48; h--;) { + for (int16 w = 48; w--;) *keep++ = *scr++; scr += 640 - 48; } - curs_saved = 1; + curs_saved = true; } void EdenGame::rundcurs() { - byte *scr, *keep = curs_keepbuf; - int16 w, h; - scr = p_mainview_buf + curs_keepx + curs_keepy * 640; + byte *keep = curs_keepbuf; + byte *scr = p_mainview_buf + curs_keepx + curs_keepy * 640; if (!curs_saved || (curs_keepx == -1 && curs_keepy == -1)) //TODO ... return; - for (h = 48; h--;) { - for (w = 48; w--;) + + for (int16 h = 48; h--;) { + for (int16 w = 48; w--;) *scr++ = *keep++; scr += 640 - 48; } @@ -980,7 +979,7 @@ void EdenGame::noclipax(int16 index, int16 x, int16 y) { int16 w, h; if (cur_bank_num != 117 && !no_palette) { if (PLE16(pix) > 2) - readpalette(pix + 2); + readPalette(pix + 2); } pix += PLE16(pix); pix += PLE16(pix + index * 2); @@ -1064,7 +1063,7 @@ void EdenGame::noclipax_avecnoir(int16 index, int16 x, int16 y) { int16 w, h; if (cur_bank_num != 117) { if (PLE16(pix) > 2) - readpalette(pix + 2); + readPalette(pix + 2); } pix += PLE16(pix); pix += PLE16(pix + index * 2); @@ -1224,8 +1223,8 @@ void EdenGame::glow(int16 index) { } } -void EdenGame::readpalette(byte *ptr) { - int doit = 1; +void EdenGame::readPalette(byte *ptr) { + bool doit = true; while (doit) { uint16 idx = *ptr++; if (idx != 0xFF) { @@ -1245,36 +1244,33 @@ void EdenGame::readpalette(byte *ptr) { idx++; } } else - doit = 0; + doit = false; } } -void EdenGame::spritesurbulle(int16 index, int16 x, int16 y) { +// Original name: spritesurbulle +void EdenGame::spriteOnSubtitle(int16 index, int16 x, int16 y) { byte *pix = bank_data_ptr; byte *scr = p_subtitlesview_buf + x + y * subtitles_x_width; - byte h0, h1, mode; - int16 w, h; - if (cur_bank_num != 117) { - if (PLE16(pix) > 2) - readpalette(pix + 2); - } + if ((cur_bank_num != 117) && (PLE16(pix) > 2)) + readPalette(pix + 2); + pix += PLE16(pix); pix += PLE16(pix + index * 2); // int16 height:9 // int16 pad:6; // int16 flag:1; - h0 = *pix++; - h1 = *pix++; - w = ((h1 & 1) << 8) | h0; - h = *pix++; - mode = *pix++; + byte h0 = *pix++; + byte h1 = *pix++; + int16 w = ((h1 & 1) << 8) | h0; + int16 h = *pix++; + byte mode = *pix++; if (mode != 0xFF && mode != 0xFE) return; if (h1 & 0x80) { // compressed for (; h-- > 0;) { - int16 ww; - for (ww = w; ww > 0;) { + for (int16 ww = w; ww > 0;) { byte c = *pix++; if (c >= 0x80) { if (c == 0x80) { @@ -1296,9 +1292,10 @@ void EdenGame::spritesurbulle(int16 index, int16 x, int16 y) { ww -= run; if (fill == 0) scr += run; - else + else { for (; run--;) *scr++ = fill; + } } } else { byte run = c + 1; @@ -1317,8 +1314,7 @@ void EdenGame::spritesurbulle(int16 index, int16 x, int16 y) { } else { // uncompressed for (; h--;) { - int16 ww; - for (ww = w; ww--;) { + for (int16 ww = w; ww--;) { byte p = *pix++; if (p == 0) scr++; @@ -1331,7 +1327,7 @@ void EdenGame::spritesurbulle(int16 index, int16 x, int16 y) { } void EdenGame::bars_out() { - int16 i, r19, r20, r25, r24; + int16 i; unsigned int *scr40, *scr41, *scr42; if (showBlackBars) return; @@ -1342,10 +1338,10 @@ void EdenGame::bars_out() { underBottomBarScreenRect.sx = underTopBarScreenRect.sx; underBottomBarScreenRect.ex = underTopBarScreenRect.ex; CLBlitter_CopyViewRect(p_mainview, p_underBarsView, &underBottomBarScreenRect, &underBottomBarBackupRect); - r19 = 14; // TODO - init in decl? - r20 = 176; - r25 = 14; - r24 = 21; + int16 r19 = 14; // TODO - init in decl? + int16 r20 = 176; + int16 r25 = 14; + int16 r24 = 21; underTopBarScreenRect.sx = 0; underTopBarScreenRect.ex = 320 - 1; underTopBarBackupRect.sx = scroll_pos; @@ -1399,16 +1395,17 @@ void EdenGame::bars_out() { } afficher(); initrect(); - showBlackBars = 1; + showBlackBars = true; } -void EdenGame::bars_in() { - int16 r29, r28; +// Original name: bars_in +void EdenGame::showBars() { if (!showBlackBars) return; - blackbars(); - r29 = 2; - r28 = 2; + + drawBlackBars(); + int16 r29 = 2; + int16 r28 = 2; underTopBarScreenRect.sx = 0; underTopBarScreenRect.ex = 320 - 1; underTopBarBackupRect.sx = scroll_pos; @@ -1431,7 +1428,7 @@ void EdenGame::bars_in() { afficher(); } initrect(); - showBlackBars = 0; + showBlackBars = false; } void EdenGame::sauvefondbouche() { @@ -1459,15 +1456,15 @@ void EdenGame::restaurefondbouche() { CLBlitter_CopyViewRect(p_mainview, p_mainview, &rect_dst, &rect_src); } -void EdenGame::blackbars() { +// Original name : blackbars +void EdenGame::drawBlackBars() { byte *scr = p_mainview_buf; - int16 x, y; - for (y = 0; y < 16; y++) - for (x = 0; x < 640; x++) + for (int16 y = 0; y < 16; y++) + for (int16 x = 0; x < 640; x++) *scr++ = 0; scr += 640 * (200 - 16 - 24); - for (y = 0; y < 24; y++) - for (x = 0; x < 640; x++) + for (int16 y = 0; y < 24; y++) + for (int16 x = 0; x < 640; x++) *scr++ = 0; } @@ -2342,7 +2339,7 @@ void EdenGame::af_image() { int16 w, h; index--; if (PLE16(pix) > 2) - readpalette(pix + 2); + readPalette(pix + 2); pix += PLE16(pix); pix += PLE16(pix + index * 2); // int16 height:9 @@ -2837,8 +2834,8 @@ void EdenGame::my_bulle() { byte x = *icons++; byte y = *icons++; byte s = *icons++; - spritesurbulle(52, x + subtitles_x_center, y - 1); - spritesurbulle(s + 9, x + subtitles_x_center + 1, y); + spriteOnSubtitle(52, x + subtitles_x_center, y - 1); + spriteOnSubtitle(s + 9, x + subtitles_x_center + 1, y); } } @@ -3390,7 +3387,7 @@ void EdenGame::adam() { playHNM(vid); needPaletteUpdate = 1; p_global->ff_102 = 16; - bars_in(); + showBars(); gametomiroir(0); break; case Objects::obApple: @@ -3723,7 +3720,7 @@ void EdenGame::vrf_phrases_file() { return; lastPhrasesFile = num; num += 404; - loadfile(num, gamePhrases); + loadFile(num, gamePhrases); verifh(gamePhrases); } @@ -3923,7 +3920,7 @@ void EdenGame::mort(int16 vid) { fadetoblack(2); CLBlitter_FillScreenView(0); CLBlitter_FillView(p_mainview, 0); - bars_in(); + showBars(); p_global->narratorSequence = 51; p_global->newMusicType = MusicType::mtNormal; musique(); @@ -4607,20 +4604,14 @@ void EdenGame::closebigfile() { CLFile_Close(h_bigfile); } -void EdenGame::loadfile(uint16 num, void *buffer) { - int16 retry, res = 1; +void EdenGame::loadFile(uint16 num, void *buffer) { assert(num < bigfile_header->count); - for (retry = 0; res && retry < 5; retry++) { - pakfile_t *file = &bigfile_header->files[num]; - long size = PLE32(&file->size); - long offs = PLE32(&file->offs); - debug("* Loading resource %d (%s) at 0x%X, %d bytes", num, file->name, offs, size); - CLFile_SetPosition(h_bigfile, fsFromStart, offs); - CLFile_Read(h_bigfile, buffer, &size); - res = 0; - } - if (res) - quit_flag = 1; + pakfile_t *file = &bigfile_header->files[num]; + long size = PLE32(&file->size); + long offs = PLE32(&file->offs); + debug("* Loading resource %d (%s) at 0x%X, %d bytes", num, file->name, offs, size); + CLFile_SetPosition(h_bigfile, fsFromStart, offs); + CLFile_Read(h_bigfile, buffer, &size); } void EdenGame::shnmfl(uint16 num) { @@ -4684,13 +4675,13 @@ void EdenGame::ConvertMacToPC() { #endif void EdenGame::loadpermfiles() { - loadfile(2498, gameIcons); - loadfile(2497, gameRooms); - loadfile(2486, gameLipsync); - loadfile(0, main_bank_buf); - loadfile(402, gameFont); - loadfile(404, gameDialogs); - loadfile(403, gameConditions); + loadFile(2498, gameIcons); + loadFile(2497, gameRooms); + loadFile(2486, gameLipsync); + loadFile(0, main_bank_buf); + loadFile(402, gameFont); + loadFile(404, gameDialogs); + loadFile(403, gameConditions); #if 1 ConvertMacToPC(); #endif @@ -5138,7 +5129,7 @@ void EdenGame::loadsal(int16 num) { if (num == p_global->lastSalNum) return; p_global->lastSalNum = num; - loadfile(num + 419, sal_buf); + loadFile(num + 419, sal_buf); } void EdenGame::specialoutside() { @@ -5343,13 +5334,13 @@ void EdenGame::maj2() { if (p_global->ff_102 || p_global->ff_103) afficher(); else if (p_global->ff_F1 == (RoomFlags::rf40 | RoomFlags::rf04 | RoomFlags::rf01)) { - blackbars(); + drawBlackBars(); effet1(); } else if (p_global->ff_F1 && !(p_global->ff_F1 & RoomFlags::rf04) && !r30) { if (!(p_global->displayFlags & DisplayFlags::dfPanable)) - blackbars(); + drawBlackBars(); else if (p_global->valleyVidNum) - blackbars(); + drawBlackBars(); effet1(); } else if (r30 && !(p_global->ff_F1 & RoomFlags::rf04)) effetpix(); @@ -5360,7 +5351,7 @@ void EdenGame::maj2() { drawTopScreen(); showObjects(); } - bars_in(); + showBars(); showEvents(); p_global->labyrinthDirections = 0; specialin(); @@ -5382,8 +5373,9 @@ void EdenGame::maj_salle(uint16 roomNum) { majsalle1(roomNum); } -void EdenGame::initbuf() { -#define ALLOC(ptr, size, typ) if (!((ptr) = (typ*)malloc(size))) quit_flag = 1; +// Original name: initbuf +void EdenGame::allocateBuffers() { +#define ALLOC(ptr, size, typ) if (!((ptr) = (typ*)malloc(size))) bufferAllocationErrorFl = true; ALLOC(bigfile_header, 0x10000, pak_t); ALLOC(gameRooms, 0x4000, room_t); ALLOC(gameIcons, 0x4000, icon_t); @@ -5477,18 +5469,18 @@ void EdenGame::run() { music_channel = CLSoundChannel_New(0); CLSound_SetWantsDesigned(1); - initbuf(); + allocateBuffers(); openbigfile(); openwindow(); loadpermfiles(); - if (!quit_flag) { + if (!bufferAllocationErrorFl) { LostEdenMac_InitPrefs(); init_cube(); p_mainview->doubled = doubled; while (!quit_flag2) { init_globals(); - quit_flag3 = 0; + quit_flag3 = false; normalCursor = 1; torchCursor = false; curs_keepy = -1; @@ -5497,10 +5489,8 @@ void EdenGame::run() { if (!gameLoaded) intro(); edmain(); - if (quit_flag) - goto quit; startmusique(1); - blackbars(); + drawBlackBars(); afficher(); fadetoblack(3); ClearScreen(); @@ -5517,8 +5507,7 @@ void EdenGame::run() { } // LostEdenMac_SavePrefs(); } -quit: - ; + fadetoblack(4); closebigfile(); freebuf(); @@ -5531,7 +5520,7 @@ quit: void EdenGame::edmain() { //TODO entergame(); - while (!quit_flag && !quit_flag3 && p_global->endGameFlag != 50) { + while (!bufferAllocationErrorFl && !quit_flag3 && p_global->endGameFlag != 50) { if (!gameStarted) { // if in demo mode, reset game after a while demoCurrentTicks = TimerTicks; @@ -5632,7 +5621,7 @@ void EdenGame::entergame() { currentTime = TimerTicks / 100; p_global->gameTime = currentTime; demoStartTicks = TimerTicks; - gameStarted = 0; + gameStarted = false; if (!gameLoaded) { p_global->roomNum = 279; p_global->areaNum = Areas::arMo; @@ -5647,12 +5636,12 @@ void EdenGame::entergame() { p_global->currentMusicNum = 0; startmusique(lastMusicNum); p_global->inventoryScrollPos = 0; - gameStarted = 1; + gameStarted = true; } showObjects(); drawTopScreen(); saveFriezes(); - showBlackBars = 1; + showBlackBars = true; p_global->ff_102 = 1; maj_salle(p_global->roomNum); if (flag) { @@ -5742,13 +5731,13 @@ void EdenGame::FRDevents() { if (current_cursor != 9 && torchCursor) { unglow(); torchCursor = false; - curs_saved = 0; + curs_saved = false; } } if (CLMouse_IsDown()) { if (!mouse_held) { mouse_held = 1; - gameStarted = 1; + gameStarted = true; mouse(); } } else @@ -6811,7 +6800,7 @@ skip: void EdenGame::generique() { int oldmusic; - blackbars(); + drawBlackBars(); afficher(); fadetoblack(3); ClearScreen(); @@ -6985,13 +6974,13 @@ void EdenGame::panelrestart() { drawTopScreen(); showObjects(); saveFriezes(); - showBlackBars = 1; + showBlackBars = true; maj_salle(p_global->roomNum); } void EdenGame::reallyquit() { - quit_flag3 = 1; //TODO: byte - quit_flag2 = 1; + quit_flag3 = true; + quit_flag2 = true; } void EdenGame::confirmer(char mode, char yesId) { @@ -7293,7 +7282,7 @@ void EdenGame::PommeQ() { icon_t *icon = &gameIcons[85]; if (p_global->displayFlags & DisplayFlags::dfFrescoes) { torchCursor = false; - curs_saved = 1; + curs_saved = true; if (p_global->displayFlags & DisplayFlags::dfPerson) close_perso(); p_global->displayFlags = DisplayFlags::dfFlag1; diff --git a/engines/cryo/eden.h b/engines/cryo/eden.h index 23bb04ed16..ec78f7dbf2 100644 --- a/engines/cryo/eden.h +++ b/engines/cryo/eden.h @@ -115,13 +115,13 @@ private: void getglow(int16 x, int16 y, int16 w, int16 h); void unglow(); void glow(int16 index); - void readpalette(byte *ptr); - void spritesurbulle(int16 index, int16 x, int16 y); + void readPalette(byte *ptr); + void spriteOnSubtitle(int16 index, int16 x, int16 y); void bars_out(); - void bars_in(); + void showBars(); void sauvefondbouche(); void restaurefondbouche(); - void blackbars(); + void drawBlackBars(); void drawTopScreen(); void affplanval(); void affrepere(int16 index, int16 location); @@ -272,7 +272,7 @@ private: void verifh(void *ptr); void openbigfile(); void closebigfile(); - void loadfile(uint16 num, void *buffer); + void loadFile(uint16 num, void *buffer); void shnmfl(uint16 num); int ssndfl(uint16 num); void ConvertIcons(icon_t *icon, int count); @@ -304,7 +304,7 @@ private: void maj2(); void majsalle1(int16 roomNum); void maj_salle(uint16 roomNum); - void initbuf(); + void allocateBuffers(); void freebuf(); void openwindow(); void EmergencyExit(); @@ -514,8 +514,8 @@ private: int16 glow_y; int16 glow_x; byte needPaletteUpdate; - byte curs_saved; - byte showBlackBars; + bool curs_saved; + bool showBlackBars; byte fond_saved; byte *bank_data_ptr; color3_t pal_entry; @@ -584,15 +584,14 @@ private: byte *gameFont; //TODO: rename to font? byte *p_subtitlesview_buf; byte *p_underSubtitlesView_buf; - global_t *p_global; + global_t *p_global; uint16 mouse_y_center, mouse_x_center; - int quit_flag3; //TODO: some obsolete error flag? uint16 machine_speed; - byte quit_flag; + bool bufferAllocationErrorFl; + bool quit_flag2; + bool quit_flag3; + bool gameStarted; - byte gameStarted; - - byte quit_flag2; byte soundAllocated; soundchannel_t *music_channel; soundchannel_t *hnmsound_ch; |