summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author Aaron Giles <aaron@aarongiles.com>2021-07-10 13:49:17 -0700
committer Aaron Giles <aaron@aarongiles.com>2021-07-10 13:49:17 -0700
commitbc212e2ac1f5b40797670e41ef3e414b82803fc4 (patch)
tree72de12525a13f5a3cea2e8f1c60a710388c0e1b8
parentc15624e0da0074712a64eb97f4d090f10d7f9b5a (diff)
voodoo: Increase vretrace cycles to 2 so mace will boot again. Add missing rasterizers for later gtfore games. Remove outdated comments.
-rw-r--r--src/devices/video/voodoo.cpp3
-rw-r--r--src/devices/video/voodoo_render.cpp6
-rw-r--r--src/devices/video/voodoo_render.h10
3 files changed, 8 insertions, 11 deletions
diff --git a/src/devices/video/voodoo.cpp b/src/devices/video/voodoo.cpp
index 01840449b10..c7b2d2d42fa 100644
--- a/src/devices/video/voodoo.cpp
+++ b/src/devices/video/voodoo.cpp
@@ -2035,7 +2035,8 @@ u32 voodoo_1_device::reg_fbiinit2_r(u32 chipmask, u32 regnum)
u32 voodoo_1_device::reg_vretrace_r(u32 chipmask, u32 regnum)
{
// sfrush needs this to be at least 1 extra cycle slower or else it won't boot
- m_cpu->eat_cycles(1);
+ // mace needs this to be at least 2 extra cycles
+ m_cpu->eat_cycles(2);
// return 0 if vblank is active
return m_vblank ? 0 : screen().vpos();
diff --git a/src/devices/video/voodoo_render.cpp b/src/devices/video/voodoo_render.cpp
index 37ddb4b9998..643511a2690 100644
--- a/src/devices/video/voodoo_render.cpp
+++ b/src/devices/video/voodoo_render.cpp
@@ -2947,6 +2947,12 @@ static_rasterizer_info s_predef_raster_table[] =
RASTERIZER( 0x0B, 0x00002429, 0x00000000, 0x000000C1, 0x00010FF9, 0x00000A09, 0x00000A0F ) // 43784 3594532
RASTERIZER( 0x0B, 0x00002425, 0x00045110, 0x000000C1, 0x00010FF9, 0x00000ACD, 0x00000ACD ) // 14899 1391390
+ // gtfore02
+ RASTERIZER( 0x0B, 0x00002425, 0x00045119, 0x000000C1, 0x00010F79, 0x0C224A0D, 0x00000ACD ) // 776841 12879143
+
+ // gtfore06
+ RASTERIZER( 0x05, 0x00482405, 0x00045119, 0x000000C1, 0x00010FF9, 0x00000ACD, 0xFFFFFFFF ) // 51144 2582597
+
{ nullptr, rasterizer_params(0xffffffff) }
};
diff --git a/src/devices/video/voodoo_render.h b/src/devices/video/voodoo_render.h
index de1d03793f9..fa3f134a84c 100644
--- a/src/devices/video/voodoo_render.h
+++ b/src/devices/video/voodoo_render.h
@@ -16,16 +16,6 @@
#include "video/poly.h"
#include "video/rgbutil.h"
-//
-// To do:
-// - split rasterizer into setup (clip/flip) and inner part
-// - templatize texture pipeline helpers
-// - determine color scale factors up front as start/delta values and use those
-// - incorporate type/memory? into constant flags
-// - use type for: fog delta mask, bilinear mask
-// - multiple rasterizer_textures to save stalls
-// - leverage poly clipping?
-//
namespace voodoo
{