summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
-rw-r--r--hash/amiga_a3000.xml8
-rw-r--r--hash/apricot_flop.xml28
-rw-r--r--hash/msx1_cart.xml2
-rw-r--r--hash/oric1_cass.xml2
-rw-r--r--hash/to7_cass.xml2
-rw-r--r--src/emu/softlist_dev.cpp2
-rw-r--r--src/emu/validity.cpp2
7 files changed, 25 insertions, 21 deletions
diff --git a/hash/amiga_a3000.xml b/hash/amiga_a3000.xml
index 092ad0d040b..2e3c6ac0f83 100644
--- a/hash/amiga_a3000.xml
+++ b/hash/amiga_a3000.xml
@@ -70,7 +70,7 @@ SuperKickstart disks, SCSI installation disks and AMIX
</part>
<part name="tape" interface="a3000_cass">
<feature name="part_id" value="Installation Tape"/>
- <dataarea name="cass" size="0">
+ <dataarea name="cass" size="1">
<rom name="cass" size="0" status="nodump" />
</dataarea>
</part>
@@ -94,7 +94,7 @@ SuperKickstart disks, SCSI installation disks and AMIX
</part>
<part name="tape" interface="a3000_cass">
<feature name="part_id" value="Installation Tape"/>
- <dataarea name="cass" size="0">
+ <dataarea name="cass" size="1">
<rom name="cass" size="0" status="nodump" />
</dataarea>
</part>
@@ -118,7 +118,7 @@ SuperKickstart disks, SCSI installation disks and AMIX
</part>
<part name="tape" interface="a3000_cass">
<feature name="part_id" value="Installation Tape"/>
- <dataarea name="cass" size="0">
+ <dataarea name="cass" size="1">
<rom name="cass" size="0" status="nodump" />
</dataarea>
</part>
@@ -148,7 +148,7 @@ SuperKickstart disks, SCSI installation disks and AMIX
</part>
<part name="tape" interface="a3000_cass">
<feature name="part_id" value="Installation Tape"/>
- <dataarea name="cass" size="0">
+ <dataarea name="cass" size="1">
<rom name="cass" size="0" status="nodump" />
</dataarea>
</part>
diff --git a/hash/apricot_flop.xml b/hash/apricot_flop.xml
index 22105547d86..5808fe6d25b 100644
--- a/hash/apricot_flop.xml
+++ b/hash/apricot_flop.xml
@@ -199,7 +199,7 @@ license:CC0-1.0
</dataarea>
</part>
<part name="flop2" interface="floppy_3_5">
- <dataarea name="flop" size="0">
+ <dataarea name="flop" size="1">
<rom name="dbase2_2.dsk" size="0" status="nodump"/>
</dataarea>
</part>
@@ -395,7 +395,7 @@ license:CC0-1.0
</part>
<part name="e" interface="floppy_3_5">
<feature name="part_id" value="Disk E (Server Backup)" />
- <dataarea name="flop" size="0">
+ <dataarea name="flop" size="1">
<rom name="networks_13b_f_e.dsk" size="0" status="nodump"/>
</dataarea>
</part>
@@ -474,7 +474,7 @@ license:CC0-1.0
<publisher>ACT</publisher>
<part name="a" interface="floppy_3_5">
<feature name="part_id" value="Disk A (Server Boot)" />
- <dataarea name="flop" size="0">
+ <dataarea name="flop" size="1">
<rom name="networks_13b_xi_a.dsk" size="0" status="nodump"/>
</dataarea>
</part>
@@ -498,7 +498,7 @@ license:CC0-1.0
</part>
<part name="e" interface="floppy_3_5">
<feature name="part_id" value="Disk E (Server Backup)" />
- <dataarea name="flop" size="0">
+ <dataarea name="flop" size="1">
<rom name="networks_13b_xi_e.dsk" size="0" status="nodump"/>
</dataarea>
</part>
@@ -511,7 +511,7 @@ license:CC0-1.0
<publisher>ACT</publisher>
<part name="a" interface="floppy_3_5">
<feature name="part_id" value="Disk A (Server Boot)" />
- <dataarea name="flop" size="0">
+ <dataarea name="flop" size="1">
<rom name="point32_11_a.dsk" size="0" status="nodump"/>
</dataarea>
</part>
@@ -523,13 +523,13 @@ license:CC0-1.0
</part>
<part name="c" interface="floppy_3_5">
<feature name="part_id" value="Disk C (Portable/F-Series Workstation)" />
- <dataarea name="flop" size="0">
+ <dataarea name="flop" size="1">
<rom name="point32_11_c.dsk" size="0" status="nodump"/>
</dataarea>
</part>
<part name="d" interface="floppy_3_5">
<feature name="part_id" value="Disk D (Bank Boot)" />
- <dataarea name="flop" size="0">
+ <dataarea name="flop" size="1">
<rom name="point32_11_d.dsk" size="0" status="nodump"/>
</dataarea>
</part>
@@ -542,7 +542,7 @@ license:CC0-1.0
<publisher>ACT</publisher>
<part name="a" interface="floppy_3_5">
<feature name="part_id" value="Disk A (Server Boot)" />
- <dataarea name="flop" size="0">
+ <dataarea name="flop" size="1">
<rom name="point32_12_a.dsk" size="0" status="nodump"/>
</dataarea>
</part>
@@ -554,19 +554,19 @@ license:CC0-1.0
</part>
<part name="c" interface="floppy_3_5">
<feature name="part_id" value="Disk C (Portable/F-Series Workstation)" />
- <dataarea name="flop" size="0">
+ <dataarea name="flop" size="1">
<rom name="point32_12_c.dsk" size="0" status="nodump"/>
</dataarea>
</part>
<part name="d" interface="floppy_3_5">
<feature name="part_id" value="Disk D (Bank Boot)" />
- <dataarea name="flop" size="0">
+ <dataarea name="flop" size="1">
<rom name="point32_12_d.dsk" size="0" status="nodump"/>
</dataarea>
</part>
<part name="e" interface="floppy_3_5">
<feature name="part_id" value="Disk E (Server Backup)" />
- <dataarea name="flop" size="0">
+ <dataarea name="flop" size="1">
<rom name="point32_12_e.dsk" size="0" status="nodump"/>
</dataarea>
</part>
@@ -579,7 +579,7 @@ license:CC0-1.0
<publisher>ACT</publisher>
<part name="a" interface="floppy_3_5">
<feature name="part_id" value="Disk A (Server Boot)" />
- <dataarea name="flop" size="0">
+ <dataarea name="flop" size="1">
<rom name="point32_12b_a.dsk" size="0" status="nodump"/>
</dataarea>
</part>
@@ -603,7 +603,7 @@ license:CC0-1.0
</part>
<part name="e" interface="floppy_3_5">
<feature name="part_id" value="Disk E (Server Backup)" />
- <dataarea name="flop" size="0">
+ <dataarea name="flop" size="1">
<rom name="point32_12b_e.dsk" size="0" status="nodump"/>
</dataarea>
</part>
@@ -754,7 +754,7 @@ license:CC0-1.0
</dataarea>
</part>
<part name="flop2" interface="floppy_3_5">
- <dataarea name="flop" size="0">
+ <dataarea name="flop" size="1">
<rom name="supercalc3_2.dsk" size="0" status="nodump"/>
</dataarea>
</part>
diff --git a/hash/msx1_cart.xml b/hash/msx1_cart.xml
index 807673be30c..41f92fee56d 100644
--- a/hash/msx1_cart.xml
+++ b/hash/msx1_cart.xml
@@ -11090,7 +11090,7 @@ Right/left cursor keys select tape baud rate 1200/2400 respectively.
</dataarea>
</part>
<part name="cass" interface="msx_cass">
- <dataarea name="cass" size="0">
+ <dataarea name="cass" size="1">
<rom name="cass" size="0" status="nodump"/>
</dataarea>
</part>
diff --git a/hash/oric1_cass.xml b/hash/oric1_cass.xml
index 3c7708c172c..e33895e7141 100644
--- a/hash/oric1_cass.xml
+++ b/hash/oric1_cass.xml
@@ -2755,7 +2755,7 @@ The cassette stops during the game loading
</part>
<part name="cass2" interface="oric1_cass">
<feature name="part_id" value="FACE B - ATMOS"/>
- <dataarea name="cass" size="0">
+ <dataarea name="cass" size="1">
<rom name="Mission Impossible - Face B.tap" size="0" status="nodump"/>
</dataarea>
</part>
diff --git a/hash/to7_cass.xml b/hash/to7_cass.xml
index f317a574de1..f2e25be8a0e 100644
--- a/hash/to7_cass.xml
+++ b/hash/to7_cass.xml
@@ -3490,7 +3490,7 @@ Thanks to DCMOTO (http://dcmoto.free.fr) for info!
</part>
<part name="cass2" interface="to_cass">
<feature name="part_id" value="Side B"/>
- <dataarea name="cass" size="0">
+ <dataarea name="cass" size="1">
<rom name="image-et-signes-2_to7.k7" size="0" crc="00000000" status="nodump" />
</dataarea>
</part>
diff --git a/src/emu/softlist_dev.cpp b/src/emu/softlist_dev.cpp
index 595e0bb9a73..b65f5f28300 100644
--- a/src/emu/softlist_dev.cpp
+++ b/src/emu/softlist_dev.cpp
@@ -576,6 +576,8 @@ void software_list_device::internal_validity_check(validity_checker &valid)
current_length = ROMREGION_GETLENGTH(romp);
if (!data_area_map.emplace(romp->name(), current_length).second)
osd_printf_error("%s: %s part %s data area has duplicate name '%s'\n", m_filename, shortname, part.name(), romp->name());
+ if (current_length == 0)
+ osd_printf_error("%s: %s part %s data area '%s' has zero length\n", m_filename, shortname, part.name(), romp->name());
}
else if (ROMENTRY_ISFILE(romp)) // if this is a file, make sure it is properly formatted
{
diff --git a/src/emu/validity.cpp b/src/emu/validity.cpp
index 6b44a324ade..4cb6202b4d9 100644
--- a/src/emu/validity.cpp
+++ b/src/emu/validity.cpp
@@ -2204,6 +2204,8 @@ void validity_checker::validate_roms(device_t &root)
current_length = ROMREGION_GETLENGTH(romp);
if (!m_region_map.emplace(fulltag, current_length).second)
osd_printf_error("Multiple ROM_REGIONs with the same tag '%s' defined\n", fulltag);
+ if (current_length == 0)
+ osd_printf_error("ROM region '%s' has zero length\n", fulltag);
}
else if (ROMENTRY_ISSYSTEM_BIOS(romp)) // If this is a system bios, make sure it is using the next available bios number
{