diff --git a/src/mame/video/ms1_tmap.cpp b/src/mame/video/ms1_tmap.cpp index 0523e64664c..0d7b25f9d97 100644 --- a/src/mame/video/ms1_tmap.cpp +++ b/src/mame/video/ms1_tmap.cpp @@ -129,6 +129,16 @@ void megasys1_tilemap_device::device_start() save_item(NAME(m_scroll_flag)); } +void megasys1_tilemap_device::device_reset() +{ + // Big Run never sets up scrollram past 0x1000 + // this causes its opaque pen to show up when the game scrolls vertically after a bump. + // we initialize the device VRAM to a sane default so that this doesn't occur. + // TODO: might be something else (smaller VRAM size?) + for(int i=0;i> 4) & 1][m_scroll_flag & 3]; diff --git a/src/mame/video/ms1_tmap.h b/src/mame/video/ms1_tmap.h index a66dea660ac..bfb2a6853fd 100644 --- a/src/mame/video/ms1_tmap.h +++ b/src/mame/video/ms1_tmap.h @@ -66,6 +66,7 @@ public: protected: // device-level overrides virtual void device_start() override; + virtual void device_reset() override; virtual void device_post_load() override; private: