mirror of https://github.com/xemu-project/xemu.git
tcx: Fix 24-bit display mode
Commit d08151bf
(conversion of tcx to the memory API) broke the 24-bit mode of
the tcx display adapter by accidentally passing in the final address of the
dirty region to memory_region_reset_dirty() instead of its size.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
This commit is contained in:
parent
dec3fc9657
commit
f10acc8b38
|
@ -193,15 +193,16 @@ static inline void reset_dirty(TCXState *ts, ram_addr_t page_min,
|
||||||
ram_addr_t cpage)
|
ram_addr_t cpage)
|
||||||
{
|
{
|
||||||
memory_region_reset_dirty(&ts->vram_mem,
|
memory_region_reset_dirty(&ts->vram_mem,
|
||||||
page_min, page_max + TARGET_PAGE_SIZE,
|
page_min,
|
||||||
|
(page_max - page_min) + TARGET_PAGE_SIZE,
|
||||||
DIRTY_MEMORY_VGA);
|
DIRTY_MEMORY_VGA);
|
||||||
memory_region_reset_dirty(&ts->vram_mem,
|
memory_region_reset_dirty(&ts->vram_mem,
|
||||||
page24 + page_min * 4,
|
page24 + page_min * 4,
|
||||||
page24 + page_max * 4 + TARGET_PAGE_SIZE,
|
(page_max - page_min) * 4 + TARGET_PAGE_SIZE,
|
||||||
DIRTY_MEMORY_VGA);
|
DIRTY_MEMORY_VGA);
|
||||||
memory_region_reset_dirty(&ts->vram_mem,
|
memory_region_reset_dirty(&ts->vram_mem,
|
||||||
cpage + page_min * 4,
|
cpage + page_min * 4,
|
||||||
cpage + page_max * 4 + TARGET_PAGE_SIZE,
|
(page_max - page_min) * 4 + TARGET_PAGE_SIZE,
|
||||||
DIRTY_MEMORY_VGA);
|
DIRTY_MEMORY_VGA);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -285,7 +286,8 @@ static void tcx_update_display(void *opaque)
|
||||||
/* reset modified pages */
|
/* reset modified pages */
|
||||||
if (page_max >= page_min) {
|
if (page_max >= page_min) {
|
||||||
memory_region_reset_dirty(&ts->vram_mem,
|
memory_region_reset_dirty(&ts->vram_mem,
|
||||||
page_min, page_max + TARGET_PAGE_SIZE,
|
page_min,
|
||||||
|
(page_max - page_min) + TARGET_PAGE_SIZE,
|
||||||
DIRTY_MEMORY_VGA);
|
DIRTY_MEMORY_VGA);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue