# HG changeset patch # User Mike Pavone # Date 1355036773 28800 # Node ID 233c7737c152a79f36c27fdc514709ab56e7782a # Parent 0e7df84158b17b2c5278b13da85859a210c020b0 Small fix to overflow flag diff -r 0e7df84158b1 -r 233c7737c152 vdp.c --- a/vdp.c Sat Dec 08 22:50:14 2012 -0800 +++ b/vdp.c Sat Dec 08 23:06:13 2012 -0800 @@ -128,13 +128,17 @@ dir = 8; } //printf("Sprite %d | x: %d, y: %d, width: %d, height: %d, pal_priority: %X, row: %d, tile addr: %X\n", context->sprite_info_list[context->cur_slot].index, x, context->sprite_info_list[context->cur_slot].y, width, height, pal_priority, row, address); - for (int16_t i=0; i < width && context->sprite_draws; i++, x += dir) { + int16_t i; + for (i=0; i < width && context->sprite_draws; i++, x += dir) { --context->sprite_draws; context->sprite_draw_list[context->sprite_draws].address = address + i * height * 4; context->sprite_draw_list[context->sprite_draws].x_pos = x; context->sprite_draw_list[context->sprite_draws].pal_priority = pal_priority; context->sprite_draw_list[context->sprite_draws].h_flip = (tileinfo & MAP_BIT_H_FLIP) ? 1 : 0; } + if (i < width) { + context->flags |= FLAG_DOT_OFLOW; + } context->cur_slot--; } else { //printf("Masking %d | line: %d, x: %d, flags: %X\n", context->sprite_info_list[context->cur_slot].index, line, x, context->flags);