diff options
author | 2017-08-03 04:24:32 +0200 | |
---|---|---|
committer | 2017-08-03 04:25:15 +0200 | |
commit | 6f4fcd6e12e8048b68a5725e7b07ac67c95c49a3 (patch) | |
tree | 24f24fc4e3482e6ea00fa74f533c00bea6c0f65d /src | |
parent | d320ebddda4aa96e6c63a97229d254d48fe25698 (diff) |
MT #06641
Diffstat (limited to 'src')
-rw-r--r-- | src/devices/video/huc6260.cpp | 8 | ||||
-rw-r--r-- | src/devices/video/huc6260.h | 4 |
2 files changed, 4 insertions, 8 deletions
diff --git a/src/devices/video/huc6260.cpp b/src/devices/video/huc6260.cpp index fce729df024..ec99e8417eb 100644 --- a/src/devices/video/huc6260.cpp +++ b/src/devices/video/huc6260.cpp @@ -80,13 +80,9 @@ void huc6260_device::device_timer(emu_timer &timer, device_timer_id id, int para /* Get next pixel information */ m_pixel_data = m_next_pixel_data_cb( 0, 0xffff ); g_profiler.stop(); - if ( m_greyscales ) - { - m_pixel_data += 512; - } } - bitmap_line[ h ] = m_palette[ m_pixel_data ]; + bitmap_line[ h ] = m_palette[ m_pixel_data ] | m_greyscales; m_pixel_clock = ( m_pixel_clock + 1 ) % m_pixels_per_clock; h = ( h + 1 ) % WPF; @@ -231,7 +227,7 @@ WRITE8_MEMBER( huc6260_device::write ) switch ( offset & 7 ) { case 0x00: /* Control register */ - m_greyscales = data & 0x80; + m_greyscales = (data & 0x80) << 2; // setup the greyscale base m_blur = data & 0x04; m_pixels_per_clock = ( data & 0x02 ) ? 2 : ( ( data & 0x01 ) ? 3 : 4 ); break; diff --git a/src/devices/video/huc6260.h b/src/devices/video/huc6260.h index a863a05d762..e6a06b59606 100644 --- a/src/devices/video/huc6260.h +++ b/src/devices/video/huc6260.h @@ -78,12 +78,12 @@ private: uint16_t m_palette[512]; uint16_t m_address; - uint8_t m_greyscales; /* Should the HuC6260 output grey or color graphics */ + uint16_t m_greyscales; /* Should the HuC6260 output grey or color graphics */ uint8_t m_blur; /* Should the edges of graphics be blurred/Select screen height 0=262, 1=263 */ uint8_t m_pixels_per_clock; /* Number of pixels to output per colour clock */ uint16_t m_pixel_data; uint8_t m_pixel_clock; - + emu_timer *m_timer; std::unique_ptr<bitmap_ind16> m_bmp; |