Ticket #8046: saveload.diff

File saveload.diff, 2.0 KB (added by SF/jamieson630, 18 years ago)

Correction to saveload.cpp portion of the patch

  • scummvm/scumm/saveload.cpp

    RCS file: /cvsroot/scummvm/scummvm/scumm/saveload.cpp,v
    retrieving revision 1.8
    diff -u -r1.8 saveload.cpp
     
    400400                MKLINE(Scumm, _switchRoomEffect2, sleByte),
    401401                MKLINE(Scumm, _BgNeedsRedraw, sleByte),
    402402
     403                // Jamieson630: variables for palManipulate
     404                // TODO: Add these next time save game format changes.
     405                // MKLINE(Scumm, _palManipStart, sleByte),
     406                // MKLINE(Scumm, _palManipEnd, sleByte),
     407                // MKLINE(Scumm, _palManipCounter, sleUint16),
     408
    403409                MKARRAY(Scumm, gfxUsageBits[0], sleUint32, 200),
    404410                MKLINE(Scumm, gdi._transparency, sleByte),
    405411                MKARRAY(Scumm, _currentPalette[0], sleByte, 768),
     
    505511                MKLINE(Scumm, _switchRoomEffect2, sleByte),
    506512                MKLINE(Scumm, _BgNeedsRedraw, sleByte),
    507513
     514                // Jamieson630: variables for palManipulate
     515                // TODO: Add these next time save game format changes.
     516                // MKLINE(Scumm, _palManipStart, sleByte),
     517                // MKLINE(Scumm, _palManipEnd, sleByte),
     518                // MKLINE(Scumm, _palManipCounter, sleUint16),
     519
    508520                MKARRAY(Scumm, gfxUsageBits[0], sleUint32, 200),
    509521                MKLINE(Scumm, gdi._transparency, sleByte),
    510522                MKARRAY(Scumm, _currentPalette[0], sleByte, 768),
     
    634646
    635647        if (_shadowPaletteSize)
    636648                s->saveLoadArrayOf(_shadowPalette, _shadowPaletteSize, 1, sleByte);
     649
     650        _palManipCounter = 0; // TODO: Remove this once it's being loaded from disk
     651        if (_palManipCounter && 0 /* TODO: Remove 0 with above */) {
     652                if (!_palManipPalette)
     653                        _palManipPalette = (byte *)calloc(0x300, 1);
     654                if (!_palManipIntermediatePal)
     655                        _palManipPalette = (byte *)calloc(0x300, 1);
     656                s->saveLoadArrayOf(_palManipPalette, 0x300, 1, sleByte);
     657                s->saveLoadArrayOf(_palManipIntermediatePal, 0x600, 1, sleByte);
     658        }
    637659
    638660        s->saveLoadArrayOf(_classData, _numGlobalObjects, sizeof(_classData[0]), sleUint32);
    639661