aboutsummaryrefslogtreecommitdiff
path: root/plugins/gpu_neon/psx_gpu/psx_gpu.c
diff options
context:
space:
mode:
authornotaz2012-08-18 18:25:12 +0300
committernotaz2012-10-12 00:05:08 +0300
commit3b3dee71d84bbbb376548d794b7a11cd38833cf0 (patch)
treefbbe0807d1c8c29b534e93ae8569224e26776dcc /plugins/gpu_neon/psx_gpu/psx_gpu.c
parente929dec505f8d3692248fe0d42c84a37c994ad39 (diff)
downloadpcsx_rearmed-3b3dee71d84bbbb376548d794b7a11cd38833cf0.tar.gz
pcsx_rearmed-3b3dee71d84bbbb376548d794b7a11cd38833cf0.tar.bz2
pcsx_rearmed-3b3dee71d84bbbb376548d794b7a11cd38833cf0.zip
psx_gpu: do enhanced lines
Diffstat (limited to 'plugins/gpu_neon/psx_gpu/psx_gpu.c')
-rw-r--r--plugins/gpu_neon/psx_gpu/psx_gpu.c20
1 files changed, 12 insertions, 8 deletions
diff --git a/plugins/gpu_neon/psx_gpu/psx_gpu.c b/plugins/gpu_neon/psx_gpu/psx_gpu.c
index 092125b..9b5a64d 100644
--- a/plugins/gpu_neon/psx_gpu/psx_gpu.c
+++ b/plugins/gpu_neon/psx_gpu/psx_gpu.c
@@ -4179,9 +4179,6 @@ do \
{ \
delta_y *= -1; \
\
- if(delta_y >= 512) \
- return; \
- \
if(delta_x > delta_y) \
{ \
draw_line_span_horizontal(decrement, shading, blending, dithering, \
@@ -4195,9 +4192,6 @@ do \
} \
else \
{ \
- if(delta_y >= 512) \
- return; \
- \
if(delta_x > delta_y) \
{ \
draw_line_span_horizontal(increment, shading, blending, dithering, \
@@ -4212,7 +4206,7 @@ do \
void render_line(psx_gpu_struct *psx_gpu, vertex_struct *vertexes, u32 flags,
- u32 color)
+ u32 color, int double_resolution)
{
s32 color_r, color_g, color_b;
u32 triangle_winding = 0;
@@ -4264,9 +4258,19 @@ void render_line(psx_gpu_struct *psx_gpu, vertex_struct *vertexes, u32 flags,
delta_x = x_b - x_a;
delta_y = y_b - y_a;
- if(delta_x >= 1024)
+ if(delta_x >= 1024 || delta_y >= 512 || delta_y <= -512)
return;
+ if(double_resolution)
+ {
+ x_a *= 2;
+ x_b *= 2;
+ y_a *= 2;
+ y_b *= 2;
+ delta_x *= 2;
+ delta_y *= 2;
+ }
+
flags &= ~RENDER_FLAGS_TEXTURE_MAP;
vram_ptr = psx_gpu->vram_out_ptr + (y_a * 1024) + x_a;