Merge pull request #5562 from 68bit/hd6845s-cursor-fix

MC6845: correct cursor.
This commit is contained in:
ajrhacker 2019-08-27 21:10:12 -04:00 committed by GitHub
commit 4c1d4e8e0c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -705,8 +705,9 @@ bool mc6845_device::check_cursor_visible(uint16_t ra, uint16_t line_addr)
}
uint16_t cursor_start_ras = m_cursor_start_ras & 0x1f;
uint16_t max_ras_addr = m_max_ras_addr + (MODE_INTERLACE_AND_VIDEO ? m_interlace_adjust : m_noninterlace_adjust);
if (cursor_start_ras > m_max_ras_addr)
if (cursor_start_ras > max_ras_addr)
{
// No cursor possible.
return false;
@ -714,6 +715,11 @@ bool mc6845_device::check_cursor_visible(uint16_t ra, uint16_t line_addr)
if (cursor_start_ras <= m_cursor_end_ras)
{
if (m_cursor_end_ras > max_ras_addr)
{
// Full cursor.
return true;
}
// Cursor from start to end inclusive.
return (ra >= cursor_start_ras) && (ra <= m_cursor_end_ras);
}