mirror of
https://github.com/dborth/snes9xgx.git
synced 2024-11-27 21:14:21 +01:00
- video patch 3
This commit is contained in:
parent
bdfd8c963b
commit
0c6743e4f7
@ -101,9 +101,9 @@ GXRModeObj TV_239p =
|
|||||||
256, // fbWidth
|
256, // fbWidth
|
||||||
239, // efbHeight
|
239, // efbHeight
|
||||||
239, // xfbHeight
|
239, // xfbHeight
|
||||||
(VI_MAX_WIDTH_PAL - 512)/2, // viXOrigin
|
(VI_MAX_WIDTH_PAL - 640)/2, // viXOrigin
|
||||||
(VI_MAX_HEIGHT_PAL/2 - 478/2)/2, // viYOrigin
|
(VI_MAX_HEIGHT_PAL/2 - 478/2)/2, // viYOrigin
|
||||||
512, // viWidth
|
640, // viWidth
|
||||||
478, // viHeight
|
478, // viHeight
|
||||||
VI_XFBMODE_SF, // xFBmode
|
VI_XFBMODE_SF, // xFBmode
|
||||||
GX_FALSE, // field_rendering
|
GX_FALSE, // field_rendering
|
||||||
@ -136,9 +136,9 @@ GXRModeObj TV_478i =
|
|||||||
512, // fbWidth
|
512, // fbWidth
|
||||||
478, // efbHeight
|
478, // efbHeight
|
||||||
478, // xfbHeight
|
478, // xfbHeight
|
||||||
(VI_MAX_WIDTH_PAL - 512)/2, // viXOrigin
|
(VI_MAX_WIDTH_PAL - 640)/2, // viXOrigin
|
||||||
(VI_MAX_HEIGHT_PAL/2 - 478/2)/2, // viYOrigin
|
(VI_MAX_HEIGHT_PAL/2 - 478/2)/2, // viYOrigin
|
||||||
512, // viWidth
|
640, // viWidth
|
||||||
478, // viHeight
|
478, // viHeight
|
||||||
VI_XFBMODE_DF, // xFBmode
|
VI_XFBMODE_DF, // xFBmode
|
||||||
GX_FALSE, // field_rendering
|
GX_FALSE, // field_rendering
|
||||||
@ -173,9 +173,9 @@ GXRModeObj TV_224p =
|
|||||||
256, // fbWidth
|
256, // fbWidth
|
||||||
224, // efbHeight
|
224, // efbHeight
|
||||||
224, // xfbHeight
|
224, // xfbHeight
|
||||||
(VI_MAX_WIDTH_NTSC - 512)/2, // viXOrigin
|
(VI_MAX_WIDTH_NTSC - 640)/2, // viXOrigin
|
||||||
(VI_MAX_HEIGHT_NTSC/2 - 448/2)/2, // viYOrigin
|
(VI_MAX_HEIGHT_NTSC/2 - 448/2)/2, // viYOrigin
|
||||||
512, // viWidth
|
640, // viWidth
|
||||||
448, // viHeight
|
448, // viHeight
|
||||||
VI_XFBMODE_SF, // xFBmode
|
VI_XFBMODE_SF, // xFBmode
|
||||||
GX_FALSE, // field_rendering
|
GX_FALSE, // field_rendering
|
||||||
@ -208,9 +208,9 @@ GXRModeObj TV_448i =
|
|||||||
512, // fbWidth
|
512, // fbWidth
|
||||||
448, // efbHeight
|
448, // efbHeight
|
||||||
448, // xfbHeight
|
448, // xfbHeight
|
||||||
(VI_MAX_WIDTH_NTSC - 512)/2, // viXOrigin
|
(VI_MAX_WIDTH_NTSC - 640)/2, // viXOrigin
|
||||||
(VI_MAX_HEIGHT_NTSC/2 - 448/2)/2, // viYOrigin
|
(VI_MAX_HEIGHT_NTSC/2 - 448/2)/2, // viYOrigin
|
||||||
512, // viWidth
|
640, // viWidth
|
||||||
448, // viHeight
|
448, // viHeight
|
||||||
VI_XFBMODE_DF, // xFBmode
|
VI_XFBMODE_DF, // xFBmode
|
||||||
GX_FALSE, // field_rendering
|
GX_FALSE, // field_rendering
|
||||||
@ -478,7 +478,7 @@ InitGCVideo ()
|
|||||||
// set VI sizing
|
// set VI sizing
|
||||||
//TV_239p.viWidth = TV_478i.viWidth = TV_224p.viWidth = TV_448i.viWidth = 640;
|
//TV_239p.viWidth = TV_478i.viWidth = TV_224p.viWidth = TV_448i.viWidth = 640;
|
||||||
//TV_239p.viHeight = TV_478i.viHeight = TV_224p.viHeight = TV_448i.viHeight = 480;
|
//TV_239p.viHeight = TV_478i.viHeight = TV_224p.viHeight = TV_448i.viHeight = 480;
|
||||||
TV_239p.viXOrigin = TV_478i.viXOrigin = TV_224p.viXOrigin = TV_448i.viXOrigin = (VI_MAX_WIDTH_PAL - 512)/2;
|
TV_239p.viXOrigin = TV_478i.viXOrigin = TV_224p.viXOrigin = TV_448i.viXOrigin = (VI_MAX_WIDTH_PAL - 640)/2;
|
||||||
TV_239p.viYOrigin = TV_478i.viYOrigin = (VI_MAX_HEIGHT_PAL/2 - 478/2)/2;
|
TV_239p.viYOrigin = TV_478i.viYOrigin = (VI_MAX_HEIGHT_PAL/2 - 478/2)/2;
|
||||||
TV_224p.viYOrigin = TV_448i.viYOrigin = (VI_MAX_HEIGHT_PAL/2 - 448/2)/2;
|
TV_224p.viYOrigin = TV_448i.viYOrigin = (VI_MAX_HEIGHT_PAL/2 - 448/2)/2;
|
||||||
|
|
||||||
@ -502,7 +502,7 @@ InitGCVideo ()
|
|||||||
// set VI sizing
|
// set VI sizing
|
||||||
//TV_239p.viWidth = TV_478i.viWidth = TV_224p.viWidth = TV_448i.viWidth = 640;
|
//TV_239p.viWidth = TV_478i.viWidth = TV_224p.viWidth = TV_448i.viWidth = 640;
|
||||||
//TV_239p.viHeight = TV_478i.viHeight = TV_224p.viHeight = TV_448i.viHeight = 480;
|
//TV_239p.viHeight = TV_478i.viHeight = TV_224p.viHeight = TV_448i.viHeight = 480;
|
||||||
TV_239p.viXOrigin = TV_224p.viXOrigin = TV_478i.viXOrigin = TV_448i.viXOrigin = (VI_MAX_WIDTH_NTSC - 512)/2;
|
TV_239p.viXOrigin = TV_224p.viXOrigin = TV_478i.viXOrigin = TV_448i.viXOrigin = (VI_MAX_WIDTH_NTSC - 640)/2;
|
||||||
TV_239p.viYOrigin = TV_478i.viYOrigin = (VI_MAX_HEIGHT_NTSC/2 - 478/2)/2;
|
TV_239p.viYOrigin = TV_478i.viYOrigin = (VI_MAX_HEIGHT_NTSC/2 - 478/2)/2;
|
||||||
TV_224p.viYOrigin = TV_448i.viYOrigin = (VI_MAX_HEIGHT_NTSC/2 - 448/2)/2;
|
TV_224p.viYOrigin = TV_448i.viYOrigin = (VI_MAX_HEIGHT_NTSC/2 - 448/2)/2;
|
||||||
|
|
||||||
@ -519,7 +519,7 @@ InitGCVideo ()
|
|||||||
// set VI sizing
|
// set VI sizing
|
||||||
//TV_239p.viWidth = TV_478i.viWidth = TV_224p.viWidth = TV_448i.viWidth = 640;
|
//TV_239p.viWidth = TV_478i.viWidth = TV_224p.viWidth = TV_448i.viWidth = 640;
|
||||||
//TV_239p.viHeight = TV_478i.viHeight = TV_224p.viHeight = TV_448i.viHeight = 480;
|
//TV_239p.viHeight = TV_478i.viHeight = TV_224p.viHeight = TV_448i.viHeight = 480;
|
||||||
TV_239p.viXOrigin = TV_224p.viXOrigin = TV_478i.viXOrigin = TV_448i.viXOrigin = (VI_MAX_WIDTH_NTSC - 512)/2;
|
TV_239p.viXOrigin = TV_224p.viXOrigin = TV_478i.viXOrigin = TV_448i.viXOrigin = (VI_MAX_WIDTH_NTSC - 640)/2;
|
||||||
TV_239p.viYOrigin = TV_478i.viYOrigin = (VI_MAX_HEIGHT_NTSC/2 - 478/2)/2;
|
TV_239p.viYOrigin = TV_478i.viYOrigin = (VI_MAX_HEIGHT_NTSC/2 - 478/2)/2;
|
||||||
TV_224p.viYOrigin = TV_448i.viYOrigin = (VI_MAX_HEIGHT_NTSC/2 - 448/2)/2;
|
TV_224p.viYOrigin = TV_448i.viYOrigin = (VI_MAX_HEIGHT_NTSC/2 - 448/2)/2;
|
||||||
|
|
||||||
@ -531,6 +531,9 @@ InitGCVideo ()
|
|||||||
if (vmode->viTVMode == VI_TVMODE_NTSC_PROG) {
|
if (vmode->viTVMode == VI_TVMODE_NTSC_PROG) {
|
||||||
TV_239p.viTVMode = TV_478i.viTVMode = TV_224p.viTVMode = TV_448i.viTVMode = VI_TVMODE_NTSC_PROG;
|
TV_239p.viTVMode = TV_478i.viTVMode = TV_224p.viTVMode = TV_448i.viTVMode = VI_TVMODE_NTSC_PROG;
|
||||||
TV_239p.xfbMode = TV_478i.xfbMode = TV_224p.xfbMode = TV_448i.xfbMode = VI_XFBMODE_SF;
|
TV_239p.xfbMode = TV_478i.xfbMode = TV_224p.xfbMode = TV_448i.xfbMode = VI_XFBMODE_SF;
|
||||||
|
TV_239p.xfbHeight = TV_478i.xfbHeight = TV_224p.xfbHeight = TV_448i.xfbHeight = 480;
|
||||||
|
TV_239p.viHeight = TV_478i.viHeight = TV_224p.viHeight = TV_448i.viHeight = 480;
|
||||||
|
TV_239p.viYOrigin = TV_478i.viYOrigin = TV_224p.viYOrigin = TV_448i.viYOrigin = (VI_MAX_HEIGHT_PAL/2 - 480/2)/2;
|
||||||
}
|
}
|
||||||
|
|
||||||
VIDEO_Configure (vmode);
|
VIDEO_Configure (vmode);
|
||||||
@ -772,11 +775,11 @@ update_video (int width, int height)
|
|||||||
square[4] = square[1] = yscale + yshift;
|
square[4] = square[1] = yscale + yshift;
|
||||||
square[7] = square[10] = -yscale + yshift;
|
square[7] = square[10] = -yscale + yshift;
|
||||||
|
|
||||||
draw_init ();
|
|
||||||
|
|
||||||
GX_InvVtxCache ();
|
GX_InvVtxCache ();
|
||||||
GX_InvalidateTexAll ();
|
|
||||||
|
|
||||||
|
//draw_init ();
|
||||||
|
|
||||||
|
GX_InvalidateTexAll ();
|
||||||
GX_InitTexObj (&texobj, texturemem, vwidth, vheight, GX_TF_RGB565, GX_CLAMP, GX_CLAMP, GX_FALSE);
|
GX_InitTexObj (&texobj, texturemem, vwidth, vheight, GX_TF_RGB565, GX_CLAMP, GX_CLAMP, GX_FALSE);
|
||||||
|
|
||||||
/* original video mode: force filtering OFF */
|
/* original video mode: force filtering OFF */
|
||||||
@ -795,9 +798,16 @@ update_video (int width, int height)
|
|||||||
oldvheight = vheight;
|
oldvheight = vheight;
|
||||||
CheckVideo = 0;
|
CheckVideo = 0;
|
||||||
|
|
||||||
clearscreen (); // this hack fixes my 'not updating scaling' problem
|
//clearscreen (); // this hack fixes my 'not updating scaling' problem
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
// for zooming
|
||||||
|
memset (&view, 0, sizeof (Mtx));
|
||||||
|
guLookAt(view, &cam.pos, &cam.up, &cam.view);
|
||||||
|
GX_LoadPosMtxImm (view, GX_PNMTX0);
|
||||||
|
*/
|
||||||
|
|
||||||
GX_InvalidateTexAll ();
|
GX_InvalidateTexAll ();
|
||||||
|
|
||||||
MakeTexture ((char *) GFX.Screen, (char *) texturemem, vwidth, vheight);
|
MakeTexture ((char *) GFX.Screen, (char *) texturemem, vwidth, vheight);
|
||||||
|
Loading…
Reference in New Issue
Block a user