work on rasters

This commit is contained in:
aap
2019-08-07 22:37:43 +02:00
parent 0c8398c7e4
commit 5685e6109e
17 changed files with 314 additions and 240 deletions

View File

@ -464,6 +464,7 @@ Raster::create(int32 width, int32 height, int32 depth, int32 format, int32 platf
raster->platform = platform ? platform : rw::platform;
raster->type = format & 0x7;
raster->flags = format & 0xF8;
raster->privateFlags = 0;
raster->format = format & 0xFF00;
raster->width = width;
raster->height = height;
@ -498,9 +499,9 @@ Raster::destroy(void)
}
uint8*
Raster::lock(int32 level)
Raster::lock(int32 level, int32 lockMode)
{
return engine->driver[this->platform]->rasterLock(this, level);
return engine->driver[this->platform]->rasterLock(this, level, lockMode);
}
void
@ -509,6 +510,18 @@ Raster::unlock(int32 level)
engine->driver[this->platform]->rasterUnlock(this, level);
}
uint8*
Raster::lockPalette(int32 lockMode)
{
return engine->driver[this->platform]->rasterLockPalette(this, lockMode);
}
void
Raster::unlockPalette(void)
{
engine->driver[this->platform]->rasterUnlockPalette(this);
}
int32
Raster::getNumLevels(void)
{