diff -ur ScummVM-cvs20030514/scummvm/scumm/gfx.cpp ScummVM-cvs20030514+hack/scummvm/scumm/gfx.cpp
old
|
new
|
|
3362 | 3362 | |
3363 | 3363 | void Scumm::useIm01Cursor(byte *im, int w, int h) { |
3364 | 3364 | VirtScreen *vs = &virtscr[0]; |
| 3365 | byte *buf, *src, *dst; |
| 3366 | int i; |
3365 | 3367 | |
3366 | 3368 | w <<= 3; |
3367 | 3369 | h <<= 3; |
3368 | 3370 | |
| 3371 | dst = buf = (byte *) malloc(w * h); |
| 3372 | src = vs->screenPtr + vs->xstart; |
| 3373 | |
| 3374 | for (i = 0; i < h; i++) { |
| 3375 | memcpy(dst, src, w); |
| 3376 | dst += w; |
| 3377 | src += _screenWidth; |
| 3378 | } |
| 3379 | |
3369 | 3380 | drawBox(0, 0, w - 1, h - 1, 0xFF); |
3370 | 3381 | |
3371 | 3382 | vs->alloctwobuffers = false; |
… |
… |
|
3376 | 3387 | |
3377 | 3388 | grabCursor(vs->screenPtr + vs->xstart, w, h); |
3378 | 3389 | |
3379 | | blit(vs->screenPtr + vs->xstart, getResourceAddress(rtBuffer, 5) + vs->xstart, w, h); |
| 3390 | src = buf; |
| 3391 | dst = vs->screenPtr + vs->xstart; |
| 3392 | |
| 3393 | for (i = 0; i < h; i++) { |
| 3394 | memcpy(dst, src, w); |
| 3395 | dst += _screenWidth; |
| 3396 | src += w; |
| 3397 | } |
| 3398 | |
| 3399 | free(buf); |
3380 | 3400 | } |
3381 | 3401 | |
3382 | 3402 | void Scumm::setCursor(int cursor) { |