summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/video/hd44780.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/video/hd44780.cpp')
-rw-r--r--src/devices/video/hd44780.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/devices/video/hd44780.cpp b/src/devices/video/hd44780.cpp
index f2e0d90485f..6b00a9a7328 100644
--- a/src/devices/video/hd44780.cpp
+++ b/src/devices/video/hd44780.cpp
@@ -70,6 +70,7 @@ hd44780_device::hd44780_device(const machine_config &mconfig, device_type type,
, m_rw_input(0)
, m_db_input(0)
, m_enabled(false)
+ , m_function_set_at_any_time(false)
{
}
@@ -487,7 +488,7 @@ void hd44780_device::control_write(u8 data)
else if (BIT(m_ir, 5))
{
// function set
- if (!m_first_cmd && m_data_len == (BIT(m_ir, 4) ? 8 : 4) && (m_char_size != (BIT(m_ir, 2) ? 10 : 8) || m_num_line != (BIT(m_ir, 3) + 1)))
+ if (!m_function_set_at_any_time && !m_first_cmd && m_data_len == (BIT(m_ir, 4) ? 8 : 4) && (m_char_size != (BIT(m_ir, 2) ? 10 : 8) || m_num_line != (BIT(m_ir, 3) + 1)))
{
logerror("HD44780: function set cannot be executed after other instructions unless the interface data length is changed\n");
return;