> > Are you sure dst_offset calculation this way is correct? Also if > s->regs.crtc_offset is not 0 as that seems to be added to dst_bits for > Rage128Pro. This may be replaced with correct value from ctx later but > then you could just keep the original here to make sure it's not broken. >
Good catch on this. I totally overlooked the R128-specific update to it. I'll keep the original here. It does eventually bite us again in patch 11. This was an attempt to avoid adding it to the ctx while also allowing us to pass only VGACommonState into ati_set_dirty instead of the full ATIVGAState. But it may have been a bit ambitious. The alternative here is to either continue to pass ATIVGAState to ati_set_dirty or add dst_offset to the ATI2DCtx. It feels a little out of place to me (like vram_end) on ATI2DCtx but I think that's a better tradeoff than continuing to pass the full ATIVGAState struct. I'll add it to the ctx in v8 unless you have objections or a cleaner approach.
