mirror of https://github.com/xemu-project/xemu.git
nv2a: adjust display resolution in 1080i mode
This commit is contained in:
parent
a654a1f99a
commit
4bd1a07706
|
@ -619,6 +619,10 @@
|
|||
#define NV_PCRTC_RASTER 0x00000808
|
||||
|
||||
|
||||
#define NV_PRMCIO_INTERLACE_MODE 0x00000039
|
||||
# define NV_PRMCIO_INTERLACE_MODE_DISABLED 0xff
|
||||
|
||||
|
||||
#define NV_PVIDEO_INTR 0x00000100
|
||||
# define NV_PVIDEO_INTR_BUFFER_0 (1 << 0)
|
||||
# define NV_PVIDEO_INTR_BUFFER_1 (1 << 4)
|
||||
|
|
|
@ -4910,6 +4910,11 @@ static void pgraph_render_display(NV2AState *d, SurfaceBinding *surface)
|
|||
d->vga.get_offsets(&d->vga, &pline_offset, &pstart_addr, &pline_compare);
|
||||
int line_offset = surface->pitch / pline_offset;
|
||||
|
||||
/* Adjust viewport height for interlaced mode, used only in 1080i */
|
||||
if (d->vga.cr[NV_PRMCIO_INTERLACE_MODE] != NV_PRMCIO_INTERLACE_MODE_DISABLED) {
|
||||
height *= 2;
|
||||
}
|
||||
|
||||
pgraph_apply_scaling_factor(pg, &width, &height);
|
||||
|
||||
glBindFramebuffer(GL_FRAMEBUFFER, d->pgraph.disp_rndr.fbo);
|
||||
|
|
Loading…
Reference in New Issue