summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/machine/intelfsh.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/machine/intelfsh.cpp')
-rw-r--r--src/devices/machine/intelfsh.cpp14
1 files changed, 11 insertions, 3 deletions
diff --git a/src/devices/machine/intelfsh.cpp b/src/devices/machine/intelfsh.cpp
index f0cacb6c7a6..c08d9f800ac 100644
--- a/src/devices/machine/intelfsh.cpp
+++ b/src/devices/machine/intelfsh.cpp
@@ -702,11 +702,19 @@ void intelfsh_device::write_full(uint32_t address, uint32_t data)
m_flash_mode = FM_WRITEPART1;
break;
case 0x50: // clear status reg
- m_status = 0x80;
- m_flash_mode = FM_READSTATUS;
+ if ((m_type == FLASH_SST_49LF020) && (m_flash_mode == FM_NORMAL))
+ logerror("Invalid flash mode byte %x\n", data & 0xff);
+ else
+ {
+ m_status = 0x80;
+ m_flash_mode = FM_READSTATUS;
+ }
break;
case 0x20: // block erase
- m_flash_mode = FM_CLEARPART1;
+ if (m_type == FLASH_SST_49LF020)
+ logerror("Unknown flash mode byte %x\n", data & 0xff);
+ else
+ m_flash_mode = FM_CLEARPART1;
break;
case 0x60: // set master lock
m_flash_mode = FM_SETMASTER;