aboutsummaryrefslogtreecommitdiff
path: root/engines/agi/sprite.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/agi/sprite.cpp')
-rw-r--r--engines/agi/sprite.cpp22
1 files changed, 0 insertions, 22 deletions
diff --git a/engines/agi/sprite.cpp b/engines/agi/sprite.cpp
index 5829f93bf2..c689bcb298 100644
--- a/engines/agi/sprite.cpp
+++ b/engines/agi/sprite.cpp
@@ -43,7 +43,6 @@ struct sprite {
int16 x_size; /**< width of the sprite */
int16 y_size; /**< height of the sprite */
uint8 *buffer; /**< buffer to store background data */
- uint8 *hires; /**< buffer for hi-res background */
};
/*
@@ -180,7 +179,6 @@ void SpritesMgr::objs_savearea(sprite *s) {
int16 x_pos = s->x_pos, y_pos = s->y_pos;
int16 x_size = s->x_size, y_size = s->y_size;
uint8 *p0, *q;
- uint8 *h0, *k;
if (x_pos + x_size > _WIDTH)
x_size = _WIDTH - x_pos;
@@ -203,15 +201,10 @@ void SpritesMgr::objs_savearea(sprite *s) {
p0 = &_vm->game.sbuf[x_pos + y_pos * _WIDTH];
q = s->buffer;
- h0 = &_vm->game.hires[(x_pos + y_pos * _WIDTH) * 2];
- k = s->hires;
for (y = 0; y < y_size; y++) {
memcpy(q, p0, x_size);
q += x_size;
p0 += _WIDTH;
- memcpy(k, h0, x_size * 2);
- k += x_size * 2;
- h0 += _WIDTH * 2;
}
}
@@ -220,7 +213,6 @@ void SpritesMgr::objs_restorearea(sprite *s) {
int16 x_pos = s->x_pos, y_pos = s->y_pos;
int16 x_size = s->x_size, y_size = s->y_size;
uint8 *p0, *q;
- uint8 *h0, *k;
if (x_pos + x_size > _WIDTH)
x_size = _WIDTH - x_pos;
@@ -243,17 +235,12 @@ void SpritesMgr::objs_restorearea(sprite *s) {
p0 = &_vm->game.sbuf[x_pos + y_pos * _WIDTH];
q = s->buffer;
- h0 = &_vm->game.hires[(x_pos + y_pos * _WIDTH) * 2];
- k = s->hires;
offset = _vm->game.line_min_print * CHAR_LINES;
for (y = 0; y < y_size; y++) {
memcpy(p0, q, x_size);
_gfx->putPixelsA(x_pos, y_pos + y + offset, x_size, p0);
q += x_size;
p0 += _WIDTH;
- memcpy(h0, k, x_size * 2);
- k += x_size * 2;
- h0 += _WIDTH * 2;
}
}
@@ -312,7 +299,6 @@ sprite *SpritesMgr::new_sprite(vt_entry *v) {
s->x_size = v->x_size;
s->y_size = v->y_size;
s->buffer = (uint8 *) pool_alloc(s->x_size * s->y_size);
- s->hires = (uint8 *) pool_alloc(s->x_size * s->y_size * 2);
v->s = s; /* link view table entry to this sprite */
return s;
@@ -386,7 +372,6 @@ void SpritesMgr::free_list(SpriteList& l) {
SpriteList::iterator iter;
for (iter = l.reverse_begin(); iter != l.end(); ) {
sprite* s = *iter;
- pool_release(s->hires);
pool_release(s->buffer);
pool_release(s);
iter = l.reverse_erase(iter);
@@ -699,7 +684,6 @@ void SpritesMgr::show_obj(int n) {
s.x_size = c->width;
s.y_size = c->height;
s.buffer = (uint8 *)malloc(s.x_size * s.y_size);
- s.hires = (uint8 *)malloc(s.x_size * s.y_size * 2);
objs_savearea(&s);
blit_cel(x1, y1, s.x_size, c);
@@ -709,15 +693,11 @@ void SpritesMgr::show_obj(int n) {
commit_block(x1, y1, x2, y2);
free(s.buffer);
-
- /* Added to fix a memory leak --Vasyl */
- free(s.hires);
}
void SpritesMgr::commit_block(int x1, int y1, int x2, int y2) {
int i, w, offset;
uint8 *q;
- uint8 *h;
if (!_vm->game.picture_shown)
return;
@@ -744,12 +724,10 @@ void SpritesMgr::commit_block(int x1, int y1, int x2, int y2) {
w = x2 - x1 + 1;
q = &_vm->game.sbuf[x1 + _WIDTH * y1];
- h = &_vm->game.hires[(x1 + _WIDTH * y1) * 2];
offset = _vm->game.line_min_print * CHAR_LINES;
for (i = y1; i <= y2; i++) {
_gfx->putPixelsA(x1, i + offset, w, q);
q += _WIDTH;
- h += _WIDTH * 2;
}
_gfx->flushBlockA(x1, y1 + offset, x2, y2 + offset);