diff options
| author | SND\weimingzhi_cp <SND\weimingzhi_cp@e17a0e51-4ae3-4d35-97c3-1a29b211df97> | 2009-11-06 11:52:38 +0000 |
|---|---|---|
| committer | SND\weimingzhi_cp <SND\weimingzhi_cp@e17a0e51-4ae3-4d35-97c3-1a29b211df97> | 2009-11-06 11:52:38 +0000 |
| commit | 64ce6a28d4d3d31c59c8f704b67b21920b0e6f35 (patch) | |
| tree | 111e69a58e06c79c768c2d24467540a08fa6c7e5 /plugins | |
| parent | 24e138ecb384fb347cb4c9b88aed69283d6e83dc (diff) | |
| download | pcsxr-64ce6a28d4d3d31c59c8f704b67b21920b0e6f35.tar.gz | |
git-svn-id: https://pcsxr.svn.codeplex.com/svn/pcsxr@35952 e17a0e51-4ae3-4d35-97c3-1a29b211df97
Diffstat (limited to 'plugins')
| -rw-r--r-- | plugins/dfxvideo/draw.c | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/plugins/dfxvideo/draw.c b/plugins/dfxvideo/draw.c index 3b477b10..2c26c2b6 100644 --- a/plugins/dfxvideo/draw.c +++ b/plugins/dfxvideo/draw.c @@ -1352,9 +1352,13 @@ void BlitScreen32(unsigned char *surf, int32_t x, int32_t y) if (PreviousPSXDisplay.Range.y0) // centering needed? { - memset(surf, 0, PreviousPSXDisplay.Range.y0 * lPitch); - surf += PreviousPSXDisplay.Range.y0 * lPitch; + memset(surf, 0, (PreviousPSXDisplay.Range.y0 >> 1) * lPitch); + dy -= PreviousPSXDisplay.Range.y0; + surf += (PreviousPSXDisplay.Range.y0 >> 1) * lPitch; + + memset(surf + dy * lPitch, + 0, ((PreviousPSXDisplay.Range.y0 + 1) >> 1) * lPitch); } if (PreviousPSXDisplay.Range.x0) @@ -1414,9 +1418,13 @@ void BlitToYUV(unsigned char * surf,int32_t x,int32_t y) if (PreviousPSXDisplay.Range.y0) // centering needed? { - memset(surf, 0, PreviousPSXDisplay.Range.y0 * lPitch); - surf += PreviousPSXDisplay.Range.y0 * lPitch; + memset(surf, 0, (PreviousPSXDisplay.Range.y0 >> 1) * lPitch); + dy -= PreviousPSXDisplay.Range.y0; + surf += (PreviousPSXDisplay.Range.y0 >> 1) * lPitch; + + memset(surf + dy * lPitch, + 0, ((PreviousPSXDisplay.Range.y0 + 1) >> 1) * lPitch); } if (PreviousPSXDisplay.Range.x0) |
