diff options
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 |
commit | c95f7878e6f5c00148b67b96d12be6283edb66d1 (patch) | |
tree | 9479fad91205047f5a1d120312109c3cb9a5ea0d /src/mame/video/powervr2.cpp | |
parent | b6553ce0208c37fa1a3a662bd9650cf9eb97179d (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.cpp | 10 |
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(); |