diff options
author | bellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162> | 2005-02-10 22:00:27 +0000 |
---|---|---|
committer | bellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162> | 2005-02-10 22:00:27 +0000 |
commit | 0a962c0276f668a5c06948b83a8def0b8d596985 (patch) | |
tree | a9fdab16812cbb80733711d33b4481941a3a2457 /hw | |
parent | d993e0260bf7a200df348a2fb0c5a6efa885987d (diff) |
dirty flag changes
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@1281 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'hw')
-rw-r--r-- | hw/tcx.c | 8 | ||||
-rw-r--r-- | hw/vga.c | 11 |
2 files changed, 12 insertions, 7 deletions
@@ -129,7 +129,7 @@ void tcx_update_display(void *opaque) } for(y = 0; y < YSZ; y += 4, page += TARGET_PAGE_SIZE) { - if (cpu_physical_memory_is_dirty(page)) { + if (cpu_physical_memory_get_dirty(page, VGA_DIRTY_FLAG)) { if (y_start < 0) y_start = y; if (page < page_min) @@ -166,7 +166,8 @@ void tcx_update_display(void *opaque) } /* reset modified pages */ if (page_max != -1) { - cpu_physical_memory_reset_dirty(page_min, page_max + TARGET_PAGE_SIZE); + cpu_physical_memory_reset_dirty(page_min, page_max + TARGET_PAGE_SIZE, + VGA_DIRTY_FLAG); } } @@ -216,7 +217,8 @@ static void tcx_reset(void *opaque) memset(s->b, 0, 256); s->r[255] = s->g[255] = s->b[255] = 255; memset(s->vram, 0, MAXX*MAXY); - cpu_physical_memory_reset_dirty(s->vram_offset, s->vram_offset + MAXX*MAXY); + cpu_physical_memory_reset_dirty(s->vram_offset, s->vram_offset + MAXX*MAXY, + VGA_DIRTY_FLAG); } void *tcx_init(DisplayState *ds, uint32_t addr, uint8_t *vram_base, @@ -1454,11 +1454,13 @@ static void vga_draw_graphic(VGAState *s, int full_update) } page0 = s->vram_offset + (addr & TARGET_PAGE_MASK); page1 = s->vram_offset + ((addr + bwidth - 1) & TARGET_PAGE_MASK); - update = full_update | cpu_physical_memory_is_dirty(page0) | - cpu_physical_memory_is_dirty(page1); + update = full_update | + cpu_physical_memory_get_dirty(page0, VGA_DIRTY_FLAG) | + cpu_physical_memory_get_dirty(page1, VGA_DIRTY_FLAG); if ((page1 - page0) > TARGET_PAGE_SIZE) { /* if wide line, can use another page */ - update |= cpu_physical_memory_is_dirty(page0 + TARGET_PAGE_SIZE); + update |= cpu_physical_memory_get_dirty(page0 + TARGET_PAGE_SIZE, + VGA_DIRTY_FLAG); } /* explicit invalidation for the hardware cursor */ update |= (s->invalidated_y_table[y >> 5] >> (y & 0x1f)) & 1; @@ -1501,7 +1503,8 @@ static void vga_draw_graphic(VGAState *s, int full_update) } /* reset modified pages */ if (page_max != -1) { - cpu_physical_memory_reset_dirty(page_min, page_max + TARGET_PAGE_SIZE); + cpu_physical_memory_reset_dirty(page_min, page_max + TARGET_PAGE_SIZE, + VGA_DIRTY_FLAG); } memset(s->invalidated_y_table, 0, ((height + 31) >> 5) * 4); } |