vga_height = height;
}
+void linear_memory_region_set_dirty(MemoryRegion *mr, hwaddr addr, hwaddr size)
+{
+}
+
+void vga_memory_region_set_dirty(MemoryRegion *mr, hwaddr addr, hwaddr size)
+{
+ if (vga.vga.graphic_mode != 1)
+ return;
+ if (!fullrefresh)
+ fullrefresh = 1;
+}
+
#if 0
static uae_u8 pal64 (uae_u8 v)
{
int off_pitch, int bytesperline,
int lines)
{
- int y;
+#if 0
+ int y;
int off_cur;
int off_cur_end;
memory_region_set_dirty(&s->vga.vram, off_cur, off_cur_end - off_cur);
off_begin += off_pitch;
}
+#endif
}
static int cirrus_bitblt_common_patterncopy(CirrusVGAState * s,
val <<= 1;
dst++;
}
- memory_region_set_dirty(&s->vga.vram, offset, 8);
+ linear_memory_region_set_dirty(&s->vga.vram, offset, 8);
}
static void cirrus_mem_writeb_mode4and5_16bpp(CirrusVGAState * s,
val <<= 1;
dst += 2;
}
- memory_region_set_dirty(&s->vga.vram, offset, 16);
+ linear_memory_region_set_dirty(&s->vga.vram, offset, 16);
}
/***************************************
mode = s->vga.gr[0x05] & 0x7;
if (mode < 4 || mode > 5 || ((s->vga.gr[0x0B] & 0x4) == 0)) {
*(s->vga.vram_ptr + bank_offset) = mem_value;
- memory_region_set_dirty(&s->vga.vram, bank_offset,
+ linear_memory_region_set_dirty(&s->vga.vram, bank_offset,
sizeof(mem_value));
} else {
if ((s->vga.gr[0x0B] & 0x14) != 0x14) {
mode = s->vga.gr[0x05] & 0x7;
if (mode < 4 || mode > 5 || ((s->vga.gr[0x0B] & 0x4) == 0)) {
*(s->vga.vram_ptr + addr) = (uint8_t) val;
- memory_region_set_dirty(&s->vga.vram, addr, 1);
+ linear_memory_region_set_dirty(&s->vga.vram, addr, 1);
} else {
if ((s->vga.gr[0x0B] & 0x14) != 0x14) {
cirrus_mem_writeb_mode4and5_8bpp(s, mode, addr, val);
* @addr: the address (relative to the start of the region) being dirtied.
* @size: size of the range being dirtied.
*/
-void memory_region_set_dirty(MemoryRegion *mr, hwaddr addr,
+void linear_memory_region_set_dirty(MemoryRegion *mr, hwaddr addr,
hwaddr size);
+void vga_memory_region_set_dirty(MemoryRegion *mr, hwaddr addr,
+ hwaddr size);
/**
* memory_region_test_and_clear_dirty: Check whether a range of bytes is dirty
void memory_region_transaction_commit(void)
{
}
-void memory_region_set_dirty(MemoryRegion *mr, hwaddr addr, hwaddr size)
-{
-}
void memory_region_add_subregion(MemoryRegion *mr,
hwaddr offset,
MemoryRegion *subregion)
#define container_of(address, type, field) ((type *)( \
(PCHAR)(address) - \
(ULONG_PTR)(&((type *)0)->field)))
-#define STATIC_INLINE static __forceinline
#define snprintf c99_snprintf
inline int c99_vsnprintf(char* str, size_t size, const char* format, va_list ap)
write_log("vga: chain4: [0x" TARGET_FMT_plx "]\n", addr);
#endif
s->plane_updated |= mask; /* only used to detect font change */
- memory_region_set_dirty(&s->vram, addr, 1);
+ vga_memory_region_set_dirty(&s->vram, addr, 1);
}
} else if (s->gr[VGA_GFX_MODE] & 0x10) {
/* odd/even mode (aka text mode mapping) */
write_log("vga: odd/even: [0x" TARGET_FMT_plx "]\n", addr);
#endif
s->plane_updated |= mask; /* only used to detect font change */
- memory_region_set_dirty(&s->vram, addr, 1);
+ vga_memory_region_set_dirty(&s->vram, addr, 1);
}
} else {
/* standard VGA latched access */
write_log("vga: latch: [0x" TARGET_FMT_plx "] mask=0x%08x val=0x%08x\n",
addr * 4, write_mask, val);
#endif
- memory_region_set_dirty(&s->vram, addr << 2, sizeof(uint32_t));
+ vga_memory_region_set_dirty(&s->vram, addr << 2, sizeof(uint32_t));
}
}