From d4191508f6a036169498037e00000e026d528632 Mon Sep 17 00:00:00 2001 From: Travis Howell Date: Thu, 17 May 2007 09:00:14 +0000 Subject: Cleanup. svn-id: r26858 --- engines/agos/zones.cpp | 148 +++++++++++++++++++++++++++---------------------- 1 file changed, 82 insertions(+), 66 deletions(-) (limited to 'engines/agos/zones.cpp') diff --git a/engines/agos/zones.cpp b/engines/agos/zones.cpp index e8d2077f4b..630d85d145 100644 --- a/engines/agos/zones.cpp +++ b/engines/agos/zones.cpp @@ -103,7 +103,21 @@ byte *AGOSEngine::allocBlock(uint32 size) { } } -void AGOSEngine::checkNoOverWrite() { +void AGOSEngine::checkRunningAnims() { + VgaSprite *vsp; + if (getGameType() != GType_FF && getGameType() != GType_PP && + (_lockWord & 0x20)) { + return; + } + + for (vsp = _vgaSprites; vsp->id; vsp++) { + checkAnims(vsp->zoneNum); + if (_rejectBlock == true) + return; + } +} + +void AGOSEngine_Feeble::checkNoOverWrite() { VgaPointersEntry *vpe; if (_noOverWrite == 0xFFFF) @@ -111,40 +125,70 @@ void AGOSEngine::checkNoOverWrite() { vpe = &_vgaBufferPointers[_noOverWrite]; - if (getGameType() == GType_FF || getGameType() == GType_PP) { - if (vpe->vgaFile1 < _blockEnd && vpe->vgaFile1End > _block) { - _rejectBlock = true; - _vgaMemPtr = vpe->vgaFile1End; - } else if (vpe->vgaFile2 < _blockEnd && vpe->vgaFile2End > _block) { - _rejectBlock = true; - _vgaMemPtr = vpe->vgaFile2End; - } else if (vpe->sfxFile && vpe->sfxFile < _blockEnd && vpe->sfxFileEnd > _block) { - _rejectBlock = true; - _vgaMemPtr = vpe->sfxFileEnd; - } else { - _rejectBlock = false; - } + if (vpe->vgaFile1 < _blockEnd && vpe->vgaFile1End > _block) { + _rejectBlock = true; + _vgaMemPtr = vpe->vgaFile1End; + } else if (vpe->vgaFile2 < _blockEnd && vpe->vgaFile2End > _block) { + _rejectBlock = true; + _vgaMemPtr = vpe->vgaFile2End; + } else if (vpe->sfxFile && vpe->sfxFile < _blockEnd && vpe->sfxFileEnd > _block) { + _rejectBlock = true; + _vgaMemPtr = vpe->sfxFileEnd; } else { - if (_block <= vpe->vgaFile1 && _blockEnd >= vpe->vgaFile1 || - _vgaMemPtr <= vpe->vgaFile2 && _blockEnd >= vpe->vgaFile2) { - _rejectBlock = true; - _vgaMemPtr = vpe->vgaFile1 + 0x5000; - } else { - _rejectBlock = false; - } + _rejectBlock = false; } } -void AGOSEngine::checkRunningAnims() { - VgaSprite *vsp; - if (getGameType() != GType_FF && getGameType() != GType_PP && (_lockWord & 0x20)) { - return; +void AGOSEngine_Feeble::checkAnims(uint a) { + VgaPointersEntry *vpe; + + vpe = &_vgaBufferPointers[a]; + + if (vpe->vgaFile1 < _blockEnd && vpe->vgaFile1End > _block) { + _rejectBlock = true; + _vgaMemPtr = vpe->vgaFile1End; + } else if (vpe->vgaFile2 < _blockEnd && vpe->vgaFile2End > _block) { + _rejectBlock = true; + _vgaMemPtr = vpe->vgaFile2End; + } else if (vpe->sfxFile && vpe->sfxFile < _blockEnd && vpe->sfxFileEnd > _block) { + _rejectBlock = true; + _vgaMemPtr = vpe->sfxFileEnd; + } else { + _rejectBlock = false; } +} - for (vsp = _vgaSprites; vsp->id; vsp++) { - checkAnims(vsp->zoneNum); - if (_rejectBlock == true) - return; +void AGOSEngine_Feeble::checkZonePtrs() { + uint count = ARRAYSIZE(_vgaBufferPointers); + VgaPointersEntry *vpe = _vgaBufferPointers; + do { + if (vpe->vgaFile1 < _blockEnd && vpe->vgaFile1End > _block || + vpe->vgaFile2 < _blockEnd && vpe->vgaFile2End > _block || + vpe->sfxFile < _blockEnd && vpe->sfxFileEnd > _block) { + vpe->vgaFile1 = NULL; + vpe->vgaFile1End = NULL; + vpe->vgaFile2 = NULL; + vpe->vgaFile2End = NULL; + vpe->sfxFile = NULL; + vpe->sfxFileEnd = NULL; + } + } while (++vpe, --count); +} + +void AGOSEngine::checkNoOverWrite() { + VgaPointersEntry *vpe; + + if (_noOverWrite == 0xFFFF) + return; + + vpe = &_vgaBufferPointers[_noOverWrite]; + + if (_block <= vpe->vgaFile1 && _blockEnd >= vpe->vgaFile1 || + _vgaMemPtr <= vpe->vgaFile2 && _blockEnd >= vpe->vgaFile2) { + _rejectBlock = true; + _vgaMemPtr = vpe->vgaFile1 + 0x5000; + } else { + _rejectBlock = false; } } @@ -153,27 +197,12 @@ void AGOSEngine::checkAnims(uint a) { vpe = &_vgaBufferPointers[a]; - if (getGameType() == GType_FF || getGameType() == GType_PP) { - if (vpe->vgaFile1 < _blockEnd && vpe->vgaFile1End > _block) { - _rejectBlock = true; - _vgaMemPtr = vpe->vgaFile1End; - } else if (vpe->vgaFile2 < _blockEnd && vpe->vgaFile2End > _block) { - _rejectBlock = true; - _vgaMemPtr = vpe->vgaFile2End; - } else if (vpe->sfxFile && vpe->sfxFile < _blockEnd && vpe->sfxFileEnd > _block) { - _rejectBlock = true; - _vgaMemPtr = vpe->sfxFileEnd; - } else { - _rejectBlock = false; - } + if (_block <= vpe->vgaFile1 && _blockEnd >= vpe->vgaFile1 || + _block <= vpe->vgaFile2 && _blockEnd >= vpe->vgaFile2) { + _rejectBlock = true; + _vgaMemPtr = vpe->vgaFile1 + 0x5000; } else { - if (_block <= vpe->vgaFile1 && _blockEnd >= vpe->vgaFile1 || - _block <= vpe->vgaFile2 && _blockEnd >= vpe->vgaFile2) { - _rejectBlock = true; - _vgaMemPtr = vpe->vgaFile1 + 0x5000; - } else { - _rejectBlock = false; - } + _rejectBlock = false; } } @@ -181,23 +210,10 @@ void AGOSEngine::checkZonePtrs() { uint count = ARRAYSIZE(_vgaBufferPointers); VgaPointersEntry *vpe = _vgaBufferPointers; do { - if (getGameType() == GType_FF || getGameType() == GType_PP) { - if (vpe->vgaFile1 < _blockEnd && vpe->vgaFile1End > _block || - vpe->vgaFile2 < _blockEnd && vpe->vgaFile2End > _block || - vpe->sfxFile < _blockEnd && vpe->sfxFileEnd > _block) { - vpe->vgaFile1 = NULL; - vpe->vgaFile1End = NULL; - vpe->vgaFile2 = NULL; - vpe->vgaFile2End = NULL; - vpe->sfxFile = NULL; - vpe->sfxFileEnd = NULL; - } - } else { - if (_block <= vpe->vgaFile1 && _blockEnd >= vpe->vgaFile1 || - _block <= vpe->vgaFile2 && _blockEnd >= vpe->vgaFile2) { - vpe->vgaFile1 = NULL; - vpe->vgaFile2 = NULL; - } + if (_block <= vpe->vgaFile1 && _blockEnd >= vpe->vgaFile1 || + _block <= vpe->vgaFile2 && _blockEnd >= vpe->vgaFile2) { + vpe->vgaFile1 = NULL; + vpe->vgaFile2 = NULL; } } while (++vpe, --count); } -- cgit v1.2.3