summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/video/powervr2.cpp
diff options
context:
space:
mode:
author Phil Bennett <p.j.bennett@gmail.com>2017-07-02 15:57:29 -0700
committer Phil Bennett <p.j.bennett@gmail.com>2017-07-02 15:57:29 -0700
commitc95f7878e6f5c00148b67b96d12be6283edb66d1 (patch)
tree9479fad91205047f5a1d120312109c3cb9a5ea0d /src/mame/video/powervr2.cpp
parentb6553ce0208c37fa1a3a662bd9650cf9eb97179d (diff)
Improve the speed of romident by dynamically allocating some large device member arrays at device_start time instead [Phil Bennett]
Diffstat (limited to 'src/mame/video/powervr2.cpp')
-rw-r--r--src/mame/video/powervr2.cpp10
1 files changed, 6 insertions, 4 deletions
diff --git a/src/mame/video/powervr2.cpp b/src/mame/video/powervr2.cpp
index 10e3abd67d3..8f47668e1ed 100644
--- a/src/mame/video/powervr2.cpp
+++ b/src/mame/video/powervr2.cpp
@@ -940,9 +940,10 @@ WRITE32_MEMBER( powervr2_device::softreset_w )
logerror("%s: Core Pipeline soft reset\n", tag());
#endif
if (start_render_received == 1) {
- for (auto & elem : grab)
- if (elem.busy == 1)
- elem.busy = 0;
+ for (int a=0;a < NUM_BUFFERS;a++)
+ if (grab[a].busy == 1)
+ grab[a].busy = 0;
+
start_render_received = 0;
}
}
@@ -3620,7 +3621,8 @@ void powervr2_device::device_start()
{
irq_cb.resolve_safe();
- memset(grab, 0, sizeof(grab));
+ grab = make_unique_clear<receiveddata[]>(NUM_BUFFERS);
+
pvr_build_parameterconfig();
computedilated();