summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices
diff options
context:
space:
mode:
author Joakim Larsson Edström <joakimlarsson42@gmail.com>2017-09-04 20:43:40 +0200
committer GitHub <noreply@github.com>2017-09-04 20:43:40 +0200
commit545fa2867ef26a78c5d2ab71335b047c0b153d79 (patch)
treebd168a7af8ad1ef41a201f2b4b71bad6dd07c60b /src/devices
parent8085d235f59a3f54824d4662bd7e3ae92721da41 (diff)
parentc880308195badcc9e35380dc3e1109d711588c99 (diff)
Merge pull request #2627 from JoakimLarsson/m68340_4
dbox: added 29F800B flash boot device
Diffstat (limited to 'src/devices')
-rw-r--r--src/devices/machine/intelfsh.cpp13
-rw-r--r--src/devices/machine/intelfsh.h11
2 files changed, 23 insertions, 1 deletions
diff --git a/src/devices/machine/intelfsh.cpp b/src/devices/machine/intelfsh.cpp
index ee69f2d2b19..3ff5d16d12b 100644
--- a/src/devices/machine/intelfsh.cpp
+++ b/src/devices/machine/intelfsh.cpp
@@ -87,6 +87,7 @@ DEFINE_DEVICE_TYPE(AMD_29F040, amd_29f040_device, "amd_29f
DEFINE_DEVICE_TYPE(AMD_29F080, amd_29f080_device, "amd_29f080", "AMD 29F080 Flash")
DEFINE_DEVICE_TYPE(AMD_29F400T, amd_29f400t_device, "amd_29f400t", "AMD 29F400T Flash")
DEFINE_DEVICE_TYPE(AMD_29F800T, amd_29f800t_device, "amd_29f800t", "AMD 29F800T Flash")
+DEFINE_DEVICE_TYPE(AMD_29F800B_16BIT, amd_29f800b_16bit_device, "amd_29f800b_16bit", "AMD 29F800B Flash used in 16 bit mode")
DEFINE_DEVICE_TYPE(AMD_29LV200T, amd_29lv200t_device, "amd_29lv200t", "AMD 29LV200T Flash")
DEFINE_DEVICE_TYPE(FUJITSU_29F160T, fujitsu_29f160t_device, "fujitsu_29f160t", "Fujitsu 29F160T Flash")
DEFINE_DEVICE_TYPE(FUJITSU_29F016A, fujitsu_29f016a_device, "fujitsu_29f016a", "Fujitsu 29F016A Flash")
@@ -204,6 +205,13 @@ intelfsh_device::intelfsh_device(const machine_config &mconfig, device_type type
m_device_id = 0xda;
m_top_boot_sector = true;
break;
+ case FLASH_AMD_29F800B_16BIT:
+ m_bits = 16;
+ m_size = 0x100000;
+ m_maker_id = MFG_AMD;
+ m_device_id = 0x2258;
+ m_top_boot_sector = false;
+ break;
case FLASH_AMD_29LV200T:
m_bits = 8;
m_size = 0x40000;
@@ -387,6 +395,9 @@ amd_29f400t_device::amd_29f400t_device(const machine_config &mconfig, const char
amd_29f800t_device::amd_29f800t_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: intelfsh8_device(mconfig, AMD_29F800T, tag, owner, clock, FLASH_AMD_29F800T) { }
+amd_29f800b_16bit_device::amd_29f800b_16bit_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
+ : intelfsh16_device(mconfig, AMD_29F800B_16BIT, tag, owner, clock, FLASH_AMD_29F800B_16BIT) { }
+
amd_29lv200t_device::amd_29lv200t_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: intelfsh8_device(mconfig, AMD_29LV200T, tag, owner, clock, FLASH_AMD_29LV200T) { }
@@ -638,7 +649,7 @@ uint32_t intelfsh_device::read_full(uint32_t address)
break;
}
- //logerror( "intelflash_read( %08x ) %08x\n", address, data );
+ //if (m_flash_mode != FM_NORMAL) logerror( "intelflash_read( %08x ) %08x\n", address, data );
return data;
}
diff --git a/src/devices/machine/intelfsh.h b/src/devices/machine/intelfsh.h
index 16bf5ec55a1..4434bee159b 100644
--- a/src/devices/machine/intelfsh.h
+++ b/src/devices/machine/intelfsh.h
@@ -44,6 +44,9 @@
#define MCFG_AMD_29F800T_ADD(_tag) \
MCFG_DEVICE_ADD(_tag, AMD_29F800T, 0)
+#define MCFG_AMD_29F800B_16BIT_ADD(_tag) \
+ MCFG_DEVICE_ADD(_tag, AMD_29F800B_16BIT, 0)
+
#define MCFG_AMD_29LV200T_ADD(_tag) \
MCFG_DEVICE_ADD(_tag, AMD_29LV200T, 0)
@@ -130,6 +133,7 @@ public:
FLASH_AMD_29F080,
FLASH_AMD_29F400T,
FLASH_AMD_29F800T,
+ FLASH_AMD_29F800B_16BIT,
FLASH_AMD_29LV200T,
FLASH_SHARP_LH28F016S,
FLASH_SHARP_LH28F016S_16BIT,
@@ -302,6 +306,12 @@ public:
amd_29f800t_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
};
+class amd_29f800b_16bit_device : public intelfsh16_device
+{
+public:
+ amd_29f800b_16bit_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+};
+
class amd_29lv200t_device : public intelfsh8_device
{
public:
@@ -434,6 +444,7 @@ DECLARE_DEVICE_TYPE(AMD_29F040, amd_29f040_device)
DECLARE_DEVICE_TYPE(AMD_29F080, amd_29f080_device)
DECLARE_DEVICE_TYPE(AMD_29F400T, amd_29f400t_device)
DECLARE_DEVICE_TYPE(AMD_29F800T, amd_29f800t_device)
+DECLARE_DEVICE_TYPE(AMD_29F800B_16BIT, amd_29f800b_16bit_device)
DECLARE_DEVICE_TYPE(AMD_29LV200T, amd_29lv200t_device)
DECLARE_DEVICE_TYPE(FUJITSU_29F160T, fujitsu_29f160t_device)
DECLARE_DEVICE_TYPE(FUJITSU_29F016A, fujitsu_29f016a_device)