From 1ea1e84fd91e879df8d6a35cee2ebf240dfd67b9 Mon Sep 17 00:00:00 2001 From: "R. Belmont" Date: Sat, 4 Feb 2012 04:46:41 +0000 Subject: [PATCH] fix memory stomp in latest N64 video (nw) --- src/mame/video/n64.c | 4 ++-- src/mame/video/rdpspn16.h | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/mame/video/n64.c b/src/mame/video/n64.c index c926dad6ed3..08668350816 100644 --- a/src/mame/video/n64.c +++ b/src/mame/video/n64.c @@ -1800,7 +1800,7 @@ void N64::RDP::Triangle::compute_cvg_noflip(INT32* majorx, INT32* minorx, INT32* if (length < 0) return; - memset(&m_rdp->Spans[scanline].m_cvg[purgestart], 0, (length + 1) << 2); + memset(&m_rdp->Spans[scanline].m_cvg[purgestart], 0, (length + 1) << 1); for(int i = 0; i < 4; i++) { @@ -1873,7 +1873,7 @@ void N64::RDP::Triangle::compute_cvg_flip(INT32* majorx, INT32* minorx, INT32* m if (length < 0) return; - memset(&m_rdp->Spans[scanline].m_cvg[purgestart], 0, (length + 1) << 2); + memset(&m_rdp->Spans[scanline].m_cvg[purgestart], 0, (length + 1) << 1); for(int i = 0; i < 4; i++) { diff --git a/src/mame/video/rdpspn16.h b/src/mame/video/rdpspn16.h index 051289cd481..2192f7fe2fb 100644 --- a/src/mame/video/rdpspn16.h +++ b/src/mame/video/rdpspn16.h @@ -58,7 +58,7 @@ class Span SpanParam m_a; SpanParam m_z; - UINT16 m_cvg[RDP_CVG_SPAN_MAX]; + UINT16 m_cvg[RDP_CVG_SPAN_MAX+32]; private: void RGBAZClip(int sr, int sg, int sb, int sa, int *sz);