summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author Vas Crabb <vas@vastheman.com>2016-08-01 18:46:56 +1000
committer Vas Crabb <vas@vastheman.com>2016-08-01 18:47:22 +1000
commit15e7be7ac8e4127e9fc0f9b5c248f4a73ba85703 (patch)
tree71346f2c2d1ac08e0e9c9f4dea8f2537af380143
parentc4c05c9735a5b956de128d6017027658b6c61a8e (diff)
Turn image init/validate into scoped enums to avoid accidental casts to/from integer and boolean types
The image error should also be turned into a scoped enum - the menus were assuming it was the same thing as an init result
-rw-r--r--src/devices/bus/a7800/a78_slot.cpp14
-rw-r--r--src/devices/bus/a7800/a78_slot.h4
-rw-r--r--src/devices/bus/a800/a800_slot.cpp4
-rw-r--r--src/devices/bus/a800/a800_slot.h2
-rw-r--r--src/devices/bus/adam/exp.cpp4
-rw-r--r--src/devices/bus/adam/exp.h2
-rw-r--r--src/devices/bus/apf/slot.cpp8
-rw-r--r--src/devices/bus/apf/slot.h2
-rw-r--r--src/devices/bus/arcadia/slot.cpp6
-rw-r--r--src/devices/bus/arcadia/slot.h2
-rw-r--r--src/devices/bus/astrocde/slot.cpp6
-rw-r--r--src/devices/bus/astrocde/slot.h2
-rw-r--r--src/devices/bus/c64/exp.cpp4
-rw-r--r--src/devices/bus/c64/exp.h2
-rw-r--r--src/devices/bus/cbm2/exp.cpp4
-rw-r--r--src/devices/bus/cbm2/exp.h2
-rw-r--r--src/devices/bus/cgenie/expansion/floppy.cpp4
-rw-r--r--src/devices/bus/chanf/slot.cpp6
-rw-r--r--src/devices/bus/chanf/slot.h2
-rw-r--r--src/devices/bus/coco/cococart.cpp4
-rw-r--r--src/devices/bus/coco/cococart.h2
-rw-r--r--src/devices/bus/coleco/exp.cpp4
-rw-r--r--src/devices/bus/coleco/exp.h2
-rw-r--r--src/devices/bus/cpc/cpc_rom.cpp4
-rw-r--r--src/devices/bus/cpc/cpc_rom.h2
-rw-r--r--src/devices/bus/crvision/slot.cpp8
-rw-r--r--src/devices/bus/crvision/slot.h2
-rw-r--r--src/devices/bus/gameboy/gb_slot.cpp14
-rw-r--r--src/devices/bus/gameboy/gb_slot.h4
-rw-r--r--src/devices/bus/gba/gba_slot.cpp8
-rw-r--r--src/devices/bus/gba/gba_slot.h2
-rw-r--r--src/devices/bus/generic/slot.cpp6
-rw-r--r--src/devices/bus/generic/slot.h2
-rw-r--r--src/devices/bus/hp_optroms/hp_optrom.cpp14
-rw-r--r--src/devices/bus/hp_optroms/hp_optrom.h2
-rw-r--r--src/devices/bus/intv/slot.cpp16
-rw-r--r--src/devices/bus/intv/slot.h4
-rw-r--r--src/devices/bus/iq151/iq151.cpp6
-rw-r--r--src/devices/bus/iq151/iq151.h2
-rw-r--r--src/devices/bus/isa/omti8621.cpp8
-rw-r--r--src/devices/bus/isa/sc499.cpp4
-rw-r--r--src/devices/bus/isa/sc499.h2
-rw-r--r--src/devices/bus/kc/kc.cpp6
-rw-r--r--src/devices/bus/kc/kc.h2
-rw-r--r--src/devices/bus/m5/slot.cpp6
-rw-r--r--src/devices/bus/m5/slot.h2
-rw-r--r--src/devices/bus/megadrive/md_slot.cpp16
-rw-r--r--src/devices/bus/megadrive/md_slot.h6
-rw-r--r--src/devices/bus/msx_slot/cartridge.cpp6
-rw-r--r--src/devices/bus/msx_slot/cartridge.h2
-rw-r--r--src/devices/bus/neogeo/slot.cpp6
-rw-r--r--src/devices/bus/neogeo/slot.h2
-rw-r--r--src/devices/bus/nes/aladdin.cpp12
-rw-r--r--src/devices/bus/nes/aladdin.h2
-rw-r--r--src/devices/bus/nes/datach.cpp12
-rw-r--r--src/devices/bus/nes/datach.h2
-rw-r--r--src/devices/bus/nes/karastudio.cpp10
-rw-r--r--src/devices/bus/nes/karastudio.h2
-rw-r--r--src/devices/bus/nes/nes_slot.cpp10
-rw-r--r--src/devices/bus/nes/nes_slot.h2
-rw-r--r--src/devices/bus/nes/sunsoft_dcs.cpp10
-rw-r--r--src/devices/bus/nes/sunsoft_dcs.h2
-rw-r--r--src/devices/bus/nubus/nubus_image.cpp8
-rw-r--r--src/devices/bus/odyssey2/slot.cpp6
-rw-r--r--src/devices/bus/odyssey2/slot.h2
-rw-r--r--src/devices/bus/pce/pce_slot.cpp6
-rw-r--r--src/devices/bus/pce/pce_slot.h2
-rw-r--r--src/devices/bus/plus4/exp.cpp4
-rw-r--r--src/devices/bus/plus4/exp.h2
-rw-r--r--src/devices/bus/psx/memcard.cpp16
-rw-r--r--src/devices/bus/psx/memcard.h4
-rw-r--r--src/devices/bus/ql/rom.cpp4
-rw-r--r--src/devices/bus/ql/rom.h2
-rw-r--r--src/devices/bus/saturn/sat_slot.cpp6
-rw-r--r--src/devices/bus/saturn/sat_slot.h2
-rw-r--r--src/devices/bus/scv/slot.cpp8
-rw-r--r--src/devices/bus/scv/slot.h2
-rw-r--r--src/devices/bus/sega8/sega8_slot.cpp16
-rw-r--r--src/devices/bus/sega8/sega8_slot.h4
-rw-r--r--src/devices/bus/snes/snes_slot.cpp6
-rw-r--r--src/devices/bus/snes/snes_slot.h2
-rw-r--r--src/devices/bus/svi3x8/expander/sv603.cpp2
-rw-r--r--src/devices/bus/ti99_peb/ti_rs232.cpp10
-rw-r--r--src/devices/bus/ti99_peb/ti_rs232.h4
-rw-r--r--src/devices/bus/ti99x/990_hd.cpp6
-rw-r--r--src/devices/bus/ti99x/990_tap.cpp6
-rw-r--r--src/devices/bus/ti99x/gromport.cpp6
-rw-r--r--src/devices/bus/ti99x/gromport.h2
-rw-r--r--src/devices/bus/vboy/slot.cpp8
-rw-r--r--src/devices/bus/vboy/slot.h2
-rw-r--r--src/devices/bus/vc4000/slot.cpp8
-rw-r--r--src/devices/bus/vc4000/slot.h2
-rw-r--r--src/devices/bus/vcs/vcs_slot.cpp8
-rwxr-xr-xsrc/devices/bus/vcs/vcs_slot.h2
-rw-r--r--src/devices/bus/vectrex/slot.cpp10
-rw-r--r--src/devices/bus/vectrex/slot.h2
-rw-r--r--src/devices/bus/vic10/exp.cpp4
-rw-r--r--src/devices/bus/vic10/exp.h2
-rw-r--r--src/devices/bus/vic20/exp.cpp6
-rw-r--r--src/devices/bus/vic20/exp.h2
-rw-r--r--src/devices/bus/vidbrain/exp.cpp4
-rw-r--r--src/devices/bus/vidbrain/exp.h2
-rw-r--r--src/devices/bus/wswan/slot.cpp4
-rw-r--r--src/devices/bus/wswan/slot.h2
-rw-r--r--src/devices/bus/z88/z88.cpp6
-rw-r--r--src/devices/bus/z88/z88.h2
-rw-r--r--src/devices/imagedev/bitbngr.cpp8
-rw-r--r--src/devices/imagedev/bitbngr.h4
-rw-r--r--src/devices/imagedev/cassette.cpp13
-rw-r--r--src/devices/imagedev/cassette.h6
-rw-r--r--src/devices/imagedev/chd_cd.cpp6
-rw-r--r--src/devices/imagedev/chd_cd.h2
-rw-r--r--src/devices/imagedev/diablo.cpp14
-rw-r--r--src/devices/imagedev/diablo.h6
-rw-r--r--src/devices/imagedev/flopdrv.cpp12
-rw-r--r--src/devices/imagedev/flopdrv.h6
-rw-r--r--src/devices/imagedev/floppy.cpp14
-rw-r--r--src/devices/imagedev/floppy.h6
-rw-r--r--src/devices/imagedev/harddriv.cpp14
-rw-r--r--src/devices/imagedev/harddriv.h6
-rw-r--r--src/devices/imagedev/mfmhd.cpp12
-rw-r--r--src/devices/imagedev/mfmhd.h2
-rw-r--r--src/devices/imagedev/midiin.cpp6
-rw-r--r--src/devices/imagedev/midiin.h2
-rw-r--r--src/devices/imagedev/midiout.cpp6
-rw-r--r--src/devices/imagedev/midiout.h2
-rw-r--r--src/devices/imagedev/printer.cpp6
-rw-r--r--src/devices/imagedev/printer.h4
-rw-r--r--src/devices/imagedev/snapquik.cpp4
-rw-r--r--src/devices/imagedev/snapquik.h12
-rw-r--r--src/devices/machine/appldriv.cpp4
-rw-r--r--src/devices/machine/appldriv.h2
-rw-r--r--src/devices/machine/hp_taco.cpp10
-rw-r--r--src/devices/machine/hp_taco.h264
-rw-r--r--src/devices/machine/smartmed.cpp24
-rw-r--r--src/devices/machine/smartmed.h6
-rw-r--r--src/emu/debug/debugcmd.cpp2
-rw-r--r--src/emu/diimage.cpp34
-rw-r--r--src/emu/diimage.h26
-rw-r--r--src/emu/image.cpp8
-rw-r--r--src/frontend/mame/ui/floppycntrl.cpp12
-rw-r--r--src/frontend/mame/ui/imgcntrl.cpp4
-rw-r--r--src/mame/drivers/abc80.cpp2
-rw-r--r--src/mame/drivers/aim65.cpp8
-rw-r--r--src/mame/drivers/altair.cpp6
-rw-r--r--src/mame/drivers/apexc.cpp6
-rw-r--r--src/mame/drivers/apple1.cpp14
-rw-r--r--src/mame/drivers/atom.cpp8
-rw-r--r--src/mame/drivers/avigo.cpp4
-rw-r--r--src/mame/drivers/beta.cpp4
-rw-r--r--src/mame/drivers/binbug.cpp4
-rw-r--r--src/mame/drivers/casloopy.cpp2
-rw-r--r--src/mame/drivers/cc40.cpp4
-rw-r--r--src/mame/drivers/cd2650.cpp5
-rw-r--r--src/mame/drivers/coleco.cpp8
-rw-r--r--src/mame/drivers/comx35.cpp6
-rw-r--r--src/mame/drivers/cosmicos.cpp2
-rw-r--r--src/mame/drivers/cp1.cpp4
-rw-r--r--src/mame/drivers/d6800.cpp4
-rw-r--r--src/mame/drivers/elf.cpp4
-rw-r--r--src/mame/drivers/eti660.cpp4
-rw-r--r--src/mame/drivers/fidelz80.cpp4
-rw-r--r--src/mame/drivers/force68k.cpp117
-rw-r--r--src/mame/drivers/gameking.cpp4
-rw-r--r--src/mame/drivers/geniusiq.cpp2
-rw-r--r--src/mame/drivers/homelab.cpp14
-rw-r--r--src/mame/drivers/i7000.cpp2
-rw-r--r--src/mame/drivers/ibmpcjr.cpp8
-rw-r--r--src/mame/drivers/instruct.cpp4
-rw-r--r--src/mame/drivers/jaguar.cpp6
-rw-r--r--src/mame/drivers/jr100.cpp10
-rw-r--r--src/mame/drivers/jupace.cpp6
-rw-r--r--src/mame/drivers/leapster.cpp2
-rw-r--r--src/mame/drivers/lynx.cpp10
-rw-r--r--src/mame/drivers/megadriv.cpp2
-rw-r--r--src/mame/drivers/megatech.cpp10
-rw-r--r--src/mame/drivers/mekd2.cpp4
-rw-r--r--src/mame/drivers/microvsn.cpp6
-rw-r--r--src/mame/drivers/myvision.cpp4
-rw-r--r--src/mame/drivers/n64.cpp8
-rw-r--r--src/mame/drivers/nascom1.cpp14
-rw-r--r--src/mame/drivers/ngp.cpp4
-rw-r--r--src/mame/drivers/patinho_feio.cpp2
-rw-r--r--src/mame/drivers/pc2000.cpp2
-rw-r--r--src/mame/drivers/pdp1.cpp24
-rw-r--r--src/mame/drivers/pegasus.cpp10
-rw-r--r--src/mame/drivers/peoplepc.cpp6
-rw-r--r--src/mame/drivers/phunsy.cpp4
-rw-r--r--src/mame/drivers/pipbug.cpp4
-rw-r--r--src/mame/drivers/pockchal.cpp2
-rw-r--r--src/mame/drivers/pockstat.cpp6
-rw-r--r--src/mame/drivers/pofo.cpp2
-rw-r--r--src/mame/drivers/pokemini.cpp6
-rw-r--r--src/mame/drivers/pv1000.cpp4
-rw-r--r--src/mame/drivers/pv2000.cpp4
-rw-r--r--src/mame/drivers/ravens.cpp4
-rw-r--r--src/mame/drivers/rex6000.cpp10
-rw-r--r--src/mame/drivers/rx78.cpp4
-rw-r--r--src/mame/drivers/spectrum.cpp4
-rw-r--r--src/mame/drivers/squale.cpp4
-rw-r--r--src/mame/drivers/ssem.cpp2
-rw-r--r--src/mame/drivers/studio2.cpp8
-rw-r--r--src/mame/drivers/stv.cpp6
-rw-r--r--src/mame/drivers/supracan.cpp4
-rw-r--r--src/mame/drivers/sv8000.cpp4
-rw-r--r--src/mame/drivers/svi318.cpp2
-rw-r--r--src/mame/drivers/svision.cpp4
-rw-r--r--src/mame/drivers/svmu.cpp2
-rw-r--r--src/mame/drivers/ti74.cpp4
-rw-r--r--src/mame/drivers/timex.cpp10
-rw-r--r--src/mame/drivers/tispeak.cpp4
-rw-r--r--src/mame/drivers/tm990189.cpp6
-rw-r--r--src/mame/drivers/tmc1800.cpp4
-rw-r--r--src/mame/drivers/tourvis.cpp2
-rw-r--r--src/mame/drivers/tvc.cpp4
-rw-r--r--src/mame/drivers/tx0.cpp24
-rw-r--r--src/mame/drivers/uzebox.cpp2
-rw-r--r--src/mame/drivers/vc4000.cpp6
-rw-r--r--src/mame/drivers/vii.cpp6
-rw-r--r--src/mame/drivers/vip.cpp4
-rw-r--r--src/mame/drivers/vtech1.cpp6
-rw-r--r--src/mame/drivers/wangpc.cpp8
-rw-r--r--src/mame/drivers/x07.cpp4
-rw-r--r--src/mame/drivers/x68k.cpp4
-rw-r--r--src/mame/drivers/z1013.cpp4
-rw-r--r--src/mame/includes/aim65.h2
-rw-r--r--src/mame/includes/apollo.h4
-rw-r--r--src/mame/includes/atom.h2
-rw-r--r--src/mame/includes/bbc.h4
-rw-r--r--src/mame/includes/gamecom.h2
-rw-r--r--src/mame/includes/hp48.h4
-rw-r--r--src/mame/includes/jaguar.h2
-rw-r--r--src/mame/includes/lviv.h2
-rw-r--r--src/mame/includes/lynx.h2
-rw-r--r--src/mame/includes/microtan.h6
-rw-r--r--src/mame/includes/stv.h2
-rw-r--r--src/mame/includes/wangpc.h4
-rw-r--r--src/mame/includes/x68k.h2
-rw-r--r--src/mame/machine/amstrad.cpp12
-rw-r--r--src/mame/machine/apollo.cpp12
-rw-r--r--src/mame/machine/bbc.cpp16
-rw-r--r--src/mame/machine/cbm_snqk.cpp6
-rw-r--r--src/mame/machine/cbm_snqk.h2
-rw-r--r--src/mame/machine/coco_vhd.cpp4
-rw-r--r--src/mame/machine/coco_vhd.h2
-rw-r--r--src/mame/machine/cybiko.cpp4
-rw-r--r--src/mame/machine/electron.cpp10
-rw-r--r--src/mame/machine/galaxy.cpp4
-rw-r--r--src/mame/machine/gamecom.cpp6
-rw-r--r--src/mame/machine/hp48.cpp12
-rw-r--r--src/mame/machine/kaypro.cpp4
-rw-r--r--src/mame/machine/kc.cpp4
-rw-r--r--src/mame/machine/lviv.cpp16
-rw-r--r--src/mame/machine/lynx.cpp14
-rw-r--r--src/mame/machine/mbee.cpp20
-rw-r--r--src/mame/machine/microdrv.cpp6
-rw-r--r--src/mame/machine/microdrv.h2
-rw-r--r--src/mame/machine/microtan.cpp28
-rw-r--r--src/mame/machine/mtx.cpp4
-rw-r--r--src/mame/machine/nc.cpp2
-rw-r--r--src/mame/machine/ng_memcard.cpp14
-rw-r--r--src/mame/machine/ng_memcard.h4
-rw-r--r--src/mame/machine/pce220_ser.cpp8
-rw-r--r--src/mame/machine/pce220_ser.h4
-rw-r--r--src/mame/machine/poly88.cpp2
-rw-r--r--src/mame/machine/primo.cpp10
-rw-r--r--src/mame/machine/psion_pack.cpp10
-rw-r--r--src/mame/machine/psion_pack.h4
-rw-r--r--src/mame/machine/psxcd.cpp6
-rw-r--r--src/mame/machine/psxcd.h2
-rw-r--r--src/mame/machine/sorcerer.cpp12
-rw-r--r--src/mame/machine/spec_snqk.cpp8
-rw-r--r--src/mame/machine/super80.cpp6
-rw-r--r--src/mame/machine/thomson.cpp12
-rw-r--r--src/mame/machine/ti85.cpp4
-rw-r--r--src/mame/machine/trs80.cpp2
-rw-r--r--src/mame/machine/victor9k_fdc.cpp8
-rw-r--r--src/mame/machine/victor9k_fdc.h4
-rw-r--r--src/mame/machine/x68k_hdc.cpp6
-rw-r--r--src/mame/machine/x68k_hdc.h2
-rw-r--r--src/mame/machine/z80bin.cpp12
-rw-r--r--src/mame/machine/z80bin.h2
-rw-r--r--src/osd/modules/input/input_rawinput.cpp3
283 files changed, 1025 insertions, 1027 deletions
diff --git a/src/devices/bus/a7800/a78_slot.cpp b/src/devices/bus/a7800/a78_slot.cpp
index b28b71564bb..cd0fa0269b7 100644
--- a/src/devices/bus/a7800/a78_slot.cpp
+++ b/src/devices/bus/a7800/a78_slot.cpp
@@ -342,7 +342,7 @@ static const char *a78_get_slot(int type)
return "a78_rom";
}
-bool a78_cart_slot_device::call_load()
+image_init_result a78_cart_slot_device::call_load()
{
if (m_cart)
{
@@ -378,8 +378,8 @@ bool a78_cart_slot_device::call_load()
char head[128];
fread(head, 128);
- if (!verify_header((char *)head))
- return IMAGE_INIT_FAIL;
+ if (verify_header((char *)head) != image_verify_result::PASS)
+ return image_init_result::FAIL;
len = (head[49] << 24) | (head[50] << 16) | (head[51] << 8) | head[52];
if (len + 128 > length())
@@ -469,7 +469,7 @@ bool a78_cart_slot_device::call_load()
//printf("Type: %s\n", a78_get_slot(m_type));
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
@@ -499,18 +499,18 @@ void a78_cart_slot_device::call_unload()
has an admissible header
-------------------------------------------------*/
-bool a78_cart_slot_device::verify_header(char *header)
+image_verify_result a78_cart_slot_device::verify_header(char *header)
{
const char *magic = "ATARI7800";
if (strncmp(magic, header + 1, 9))
{
logerror("Not a valid A7800 image\n");
- return false;
+ return image_verify_result::FAIL;
}
logerror("returning ID_OK\n");
- return true;
+ return image_verify_result::PASS;
}
diff --git a/src/devices/bus/a7800/a78_slot.h b/src/devices/bus/a7800/a78_slot.h
index 933ef663958..d6a635b1a82 100644
--- a/src/devices/bus/a7800/a78_slot.h
+++ b/src/devices/bus/a7800/a78_slot.h
@@ -94,7 +94,7 @@ public:
virtual void device_config_complete() override;
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override;
virtual const software_list_loader &get_software_list_loader() const override { return rom_software_list_loader::instance(); }
@@ -128,7 +128,7 @@ private:
device_a78_cart_interface* m_cart;
int m_type;
- bool verify_header(char *header);
+ image_verify_result verify_header(char *header);
int validate_header(int head, bool log);
void internal_header_logging(UINT8 *header, UINT32 len);
};
diff --git a/src/devices/bus/a800/a800_slot.cpp b/src/devices/bus/a800/a800_slot.cpp
index 0e01bac62c8..936e0849708 100644
--- a/src/devices/bus/a800/a800_slot.cpp
+++ b/src/devices/bus/a800/a800_slot.cpp
@@ -236,7 +236,7 @@ static const char *a800_get_slot(int type)
return "a800_8k";
}
-bool a800_cart_slot_device::call_load()
+image_init_result a800_cart_slot_device::call_load()
{
if (m_cart)
{
@@ -291,7 +291,7 @@ bool a800_cart_slot_device::call_load()
logerror("%s loaded cartridge '%s' size %dK\n", machine().system().name, filename(), len/1024);
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/devices/bus/a800/a800_slot.h b/src/devices/bus/a800/a800_slot.h
index 4cf1ea52ebc..0d1bf674bd5 100644
--- a/src/devices/bus/a800/a800_slot.h
+++ b/src/devices/bus/a800/a800_slot.h
@@ -94,7 +94,7 @@ public:
virtual void device_config_complete() override;
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override;
virtual const software_list_loader &get_software_list_loader() const override { return rom_software_list_loader::instance(); }
diff --git a/src/devices/bus/adam/exp.cpp b/src/devices/bus/adam/exp.cpp
index 2035df0ef9b..f82d9b4555f 100644
--- a/src/devices/bus/adam/exp.cpp
+++ b/src/devices/bus/adam/exp.cpp
@@ -86,7 +86,7 @@ void adam_expansion_slot_device::device_reset()
// call_load -
//-------------------------------------------------
-bool adam_expansion_slot_device::call_load()
+image_init_result adam_expansion_slot_device::call_load()
{
if (m_card)
{
@@ -104,7 +104,7 @@ bool adam_expansion_slot_device::call_load()
}
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/devices/bus/adam/exp.h b/src/devices/bus/adam/exp.h
index 28a1702dcf9..c7bd5abc12a 100644
--- a/src/devices/bus/adam/exp.h
+++ b/src/devices/bus/adam/exp.h
@@ -72,7 +72,7 @@ protected:
virtual void device_reset() override;
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual const software_list_loader &get_software_list_loader() const override { return rom_software_list_loader::instance(); }
virtual iodevice_t image_type() const override { return IO_CARTSLOT; }
diff --git a/src/devices/bus/apf/slot.cpp b/src/devices/bus/apf/slot.cpp
index 4051ea5ce81..bcfe2f825b6 100644
--- a/src/devices/bus/apf/slot.cpp
+++ b/src/devices/bus/apf/slot.cpp
@@ -156,7 +156,7 @@ static const char *apf_get_slot(int type)
call load
-------------------------------------------------*/
-bool apf_cart_slot_device::call_load()
+image_init_result apf_cart_slot_device::call_load()
{
if (m_cart)
{
@@ -165,7 +165,7 @@ bool apf_cart_slot_device::call_load()
if (size > 0x3800)
{
seterror(IMAGE_ERROR_UNSPECIFIED, "Image extends beyond the expected size for an APF cart");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
m_cart->rom_alloc(size, tag());
@@ -199,10 +199,10 @@ bool apf_cart_slot_device::call_load()
//printf("Type: %s\n", apf_get_slot(m_type));
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/devices/bus/apf/slot.h b/src/devices/bus/apf/slot.h
index 823bc488904..076759e18b3 100644
--- a/src/devices/bus/apf/slot.h
+++ b/src/devices/bus/apf/slot.h
@@ -65,7 +65,7 @@ public:
virtual void device_config_complete() override;
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override {}
virtual const software_list_loader &get_software_list_loader() const override { return rom_software_list_loader::instance(); }
diff --git a/src/devices/bus/arcadia/slot.cpp b/src/devices/bus/arcadia/slot.cpp
index 51dd9b1f870..2c9a55fff91 100644
--- a/src/devices/bus/arcadia/slot.cpp
+++ b/src/devices/bus/arcadia/slot.cpp
@@ -146,7 +146,7 @@ static const char *arcadia_get_slot(int type)
call load
-------------------------------------------------*/
-bool arcadia_cart_slot_device::call_load()
+image_init_result arcadia_cart_slot_device::call_load()
{
if (m_cart)
{
@@ -207,10 +207,10 @@ bool arcadia_cart_slot_device::call_load()
//printf("Type: %s\n", arcadia_get_slot(m_type));
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/devices/bus/arcadia/slot.h b/src/devices/bus/arcadia/slot.h
index af39afa9645..abc95db625f 100644
--- a/src/devices/bus/arcadia/slot.h
+++ b/src/devices/bus/arcadia/slot.h
@@ -56,7 +56,7 @@ public:
virtual void device_config_complete() override;
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override {}
virtual const software_list_loader &get_software_list_loader() const override { return rom_software_list_loader::instance(); }
diff --git a/src/devices/bus/astrocde/slot.cpp b/src/devices/bus/astrocde/slot.cpp
index cf4069603a4..477caa61029 100644
--- a/src/devices/bus/astrocde/slot.cpp
+++ b/src/devices/bus/astrocde/slot.cpp
@@ -146,7 +146,7 @@ static const char *astrocade_get_slot(int type)
call load
-------------------------------------------------*/
-bool astrocade_cart_slot_device::call_load()
+image_init_result astrocade_cart_slot_device::call_load()
{
if (m_cart)
{
@@ -176,10 +176,10 @@ bool astrocade_cart_slot_device::call_load()
//printf("Type: %s\n", astrocade_get_slot(m_type));
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/devices/bus/astrocde/slot.h b/src/devices/bus/astrocde/slot.h
index 3a9edfa2814..6866f787655 100644
--- a/src/devices/bus/astrocde/slot.h
+++ b/src/devices/bus/astrocde/slot.h
@@ -56,7 +56,7 @@ public:
virtual void device_config_complete() override;
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override {}
virtual const software_list_loader &get_software_list_loader() const override { return rom_software_list_loader::instance(); }
diff --git a/src/devices/bus/c64/exp.cpp b/src/devices/bus/c64/exp.cpp
index aa812c7eda7..80f7b13639e 100644
--- a/src/devices/bus/c64/exp.cpp
+++ b/src/devices/bus/c64/exp.cpp
@@ -113,7 +113,7 @@ void c64_expansion_slot_device::device_reset()
// call_load -
//-------------------------------------------------
-bool c64_expansion_slot_device::call_load()
+image_init_result c64_expansion_slot_device::call_load()
{
if (m_card)
{
@@ -197,7 +197,7 @@ bool c64_expansion_slot_device::call_load()
}
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/devices/bus/c64/exp.h b/src/devices/bus/c64/exp.h
index 38bf3e7c3fc..3522942e823 100644
--- a/src/devices/bus/c64/exp.h
+++ b/src/devices/bus/c64/exp.h
@@ -134,7 +134,7 @@ protected:
virtual void device_reset() override;
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual const software_list_loader &get_software_list_loader() const override { return rom_software_list_loader::instance(); }
virtual iodevice_t image_type() const override { return IO_CARTSLOT; }
diff --git a/src/devices/bus/cbm2/exp.cpp b/src/devices/bus/cbm2/exp.cpp
index 227dd3d858e..e3cbd5e2bee 100644
--- a/src/devices/bus/cbm2/exp.cpp
+++ b/src/devices/bus/cbm2/exp.cpp
@@ -101,7 +101,7 @@ void cbm2_expansion_slot_device::device_reset()
// call_load -
//-------------------------------------------------
-bool cbm2_expansion_slot_device::call_load()
+image_init_result cbm2_expansion_slot_device::call_load()
{
size_t size;
@@ -135,7 +135,7 @@ bool cbm2_expansion_slot_device::call_load()
}
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/devices/bus/cbm2/exp.h b/src/devices/bus/cbm2/exp.h
index f38e7c669af..2a9fa80d051 100644
--- a/src/devices/bus/cbm2/exp.h
+++ b/src/devices/bus/cbm2/exp.h
@@ -81,7 +81,7 @@ protected:
virtual void device_reset() override;
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual const software_list_loader &get_software_list_loader() const override { return rom_software_list_loader::instance(); }
virtual iodevice_t image_type() const override { return IO_CARTSLOT; }
diff --git a/src/devices/bus/cgenie/expansion/floppy.cpp b/src/devices/bus/cgenie/expansion/floppy.cpp
index c3099cd533c..fdd61b88855 100644
--- a/src/devices/bus/cgenie/expansion/floppy.cpp
+++ b/src/devices/bus/cgenie/expansion/floppy.cpp
@@ -172,13 +172,13 @@ DEVICE_IMAGE_LOAD_MEMBER( cgenie_fdc_device, socket_load )
if (size > 0x1000)
{
image.seterror(IMAGE_ERROR_UNSPECIFIED, "Unsupported ROM size");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
m_socket->rom_alloc(0x1000, GENERIC_ROM8_WIDTH, ENDIANNESS_LITTLE);
m_socket->common_load_rom(m_socket->get_rom_base(), size, "rom");
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
WRITE_LINE_MEMBER( cgenie_fdc_device::intrq_w )
diff --git a/src/devices/bus/chanf/slot.cpp b/src/devices/bus/chanf/slot.cpp
index cfe08b17896..3aa7e43146d 100644
--- a/src/devices/bus/chanf/slot.cpp
+++ b/src/devices/bus/chanf/slot.cpp
@@ -159,7 +159,7 @@ static const char *chanf_get_slot(int type)
call load
-------------------------------------------------*/
-bool channelf_cart_slot_device::call_load()
+image_init_result channelf_cart_slot_device::call_load()
{
if (m_cart)
{
@@ -194,10 +194,10 @@ bool channelf_cart_slot_device::call_load()
//printf("Type: %s\n", chanf_get_slot(m_type));
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/devices/bus/chanf/slot.h b/src/devices/bus/chanf/slot.h
index 8b781c88632..68599ffad1c 100644
--- a/src/devices/bus/chanf/slot.h
+++ b/src/devices/bus/chanf/slot.h
@@ -68,7 +68,7 @@ public:
virtual void device_config_complete() override;
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override {}
virtual const software_list_loader &get_software_list_loader() const override { return rom_software_list_loader::instance(); }
diff --git a/src/devices/bus/coco/cococart.cpp b/src/devices/bus/coco/cococart.cpp
index 76e6e9d8769..d0955c42f9a 100644
--- a/src/devices/bus/coco/cococart.cpp
+++ b/src/devices/bus/coco/cococart.cpp
@@ -321,7 +321,7 @@ void cococart_slot_device::set_cart_base_update(cococart_base_update_delegate up
// call_load
//-------------------------------------------------
-bool cococart_slot_device::call_load()
+image_init_result cococart_slot_device::call_load()
{
if (m_cart)
{
@@ -342,7 +342,7 @@ bool cococart_slot_device::call_load()
read_length += len;
}
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/devices/bus/coco/cococart.h b/src/devices/bus/coco/cococart.h
index c76a0febc56..7ba1e301d50 100644
--- a/src/devices/bus/coco/cococart.h
+++ b/src/devices/bus/coco/cococart.h
@@ -87,7 +87,7 @@ public:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual const software_list_loader &get_software_list_loader() const override { return rom_software_list_loader::instance(); }
virtual iodevice_t image_type() const override { return IO_CARTSLOT; }
diff --git a/src/devices/bus/coleco/exp.cpp b/src/devices/bus/coleco/exp.cpp
index 80bd84f6e10..c80af2f879d 100644
--- a/src/devices/bus/coleco/exp.cpp
+++ b/src/devices/bus/coleco/exp.cpp
@@ -74,7 +74,7 @@ void colecovision_cartridge_slot_device::device_start()
// call_load -
//-------------------------------------------------
-bool colecovision_cartridge_slot_device::call_load()
+image_init_result colecovision_cartridge_slot_device::call_load()
{
if (m_card)
{
@@ -92,7 +92,7 @@ bool colecovision_cartridge_slot_device::call_load()
}
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/devices/bus/coleco/exp.h b/src/devices/bus/coleco/exp.h
index 596eea0bf66..25f503b378e 100644
--- a/src/devices/bus/coleco/exp.h
+++ b/src/devices/bus/coleco/exp.h
@@ -78,7 +78,7 @@ protected:
virtual void device_start() override;
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual const software_list_loader &get_software_list_loader() const override { return rom_software_list_loader::instance(); }
virtual iodevice_t image_type() const override { return IO_CARTSLOT; }
diff --git a/src/devices/bus/cpc/cpc_rom.cpp b/src/devices/bus/cpc/cpc_rom.cpp
index d0d59ea4452..9b68acbe422 100644
--- a/src/devices/bus/cpc/cpc_rom.cpp
+++ b/src/devices/bus/cpc/cpc_rom.cpp
@@ -105,7 +105,7 @@ void rom_image_device::device_start()
/*-------------------------------------------------
DEVICE_IMAGE_LOAD( rom )
-------------------------------------------------*/
-bool rom_image_device::call_load()
+image_init_result rom_image_device::call_load()
{
device_image_interface* image = this;
UINT64 size = image->length();
@@ -121,7 +121,7 @@ bool rom_image_device::call_load()
image->fread(m_base.get(),16384);
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/devices/bus/cpc/cpc_rom.h b/src/devices/bus/cpc/cpc_rom.h
index 87cf006f202..86cd429cbcd 100644
--- a/src/devices/bus/cpc/cpc_rom.h
+++ b/src/devices/bus/cpc/cpc_rom.h
@@ -25,7 +25,7 @@ public:
virtual ~rom_image_device();
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override;
virtual iodevice_t image_type() const override { return IO_ROM; }
diff --git a/src/devices/bus/crvision/slot.cpp b/src/devices/bus/crvision/slot.cpp
index e4fd9630e46..7f12a9cf5af 100644
--- a/src/devices/bus/crvision/slot.cpp
+++ b/src/devices/bus/crvision/slot.cpp
@@ -150,7 +150,7 @@ static const char *crvision_get_slot(int type)
call load
-------------------------------------------------*/
-bool crvision_cart_slot_device::call_load()
+image_init_result crvision_cart_slot_device::call_load()
{
if (m_cart)
{
@@ -159,7 +159,7 @@ bool crvision_cart_slot_device::call_load()
if (size > 0x4800)
{
seterror(IMAGE_ERROR_UNSPECIFIED, "Image extends beyond the expected size for an APF cart");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
m_cart->rom_alloc(size, tag());
@@ -207,10 +207,10 @@ bool crvision_cart_slot_device::call_load()
printf("Type: %s\n", crvision_get_slot(m_type));
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/devices/bus/crvision/slot.h b/src/devices/bus/crvision/slot.h
index 43f74dd4181..47fed8c1583 100644
--- a/src/devices/bus/crvision/slot.h
+++ b/src/devices/bus/crvision/slot.h
@@ -61,7 +61,7 @@ public:
virtual void device_config_complete() override;
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override {}
virtual const software_list_loader &get_software_list_loader() const override { return rom_software_list_loader::instance(); }
diff --git a/src/devices/bus/gameboy/gb_slot.cpp b/src/devices/bus/gameboy/gb_slot.cpp
index f65677b022e..157f5a6130e 100644
--- a/src/devices/bus/gameboy/gb_slot.cpp
+++ b/src/devices/bus/gameboy/gb_slot.cpp
@@ -258,7 +258,7 @@ static const char *gb_get_slot(int type)
-------------------------------------------------*/
-bool base_gb_cart_slot_device::call_load()
+image_init_result base_gb_cart_slot_device::call_load()
{
if (m_cart)
{
@@ -281,7 +281,7 @@ bool base_gb_cart_slot_device::call_load()
if ((len == 0) || ((len % 0x4000) != 0))
{
seterror(IMAGE_ERROR_UNSPECIFIED, "Invalid rom file size\n");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
}
@@ -403,13 +403,13 @@ bool base_gb_cart_slot_device::call_load()
strncmp((const char*)(ROM + 0x134), "DONKEYKONGLAND 3", 16) == 0)
m_sgb_hack = 1;
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
-bool megaduck_cart_slot_device::call_load()
+image_init_result megaduck_cart_slot_device::call_load()
{
if (m_cart)
{
@@ -425,10 +425,10 @@ bool megaduck_cart_slot_device::call_load()
// setup rom bank map based on real length, not header value
m_cart->rom_map_setup(len);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/devices/bus/gameboy/gb_slot.h b/src/devices/bus/gameboy/gb_slot.h
index d32e065672f..67db3cda7f0 100644
--- a/src/devices/bus/gameboy/gb_slot.h
+++ b/src/devices/bus/gameboy/gb_slot.h
@@ -116,7 +116,7 @@ public:
virtual void device_config_complete() override;
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override;
virtual const software_list_loader &get_software_list_loader() const override { return rom_software_list_loader::instance(); }
@@ -176,7 +176,7 @@ public:
megaduck_cart_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual const char *image_interface() const override { return "megaduck_cart"; }
virtual const char *file_extensions() const override { return "bin"; }
diff --git a/src/devices/bus/gba/gba_slot.cpp b/src/devices/bus/gba/gba_slot.cpp
index d5d15c1f86b..fc7c723ac15 100644
--- a/src/devices/bus/gba/gba_slot.cpp
+++ b/src/devices/bus/gba/gba_slot.cpp
@@ -176,7 +176,7 @@ static const char *gba_get_slot(int type)
call load
-------------------------------------------------*/
-bool gba_cart_slot_device::call_load()
+image_init_result gba_cart_slot_device::call_load()
{
if (m_cart)
{
@@ -185,7 +185,7 @@ bool gba_cart_slot_device::call_load()
if (size > 0x4000000)
{
seterror(IMAGE_ERROR_UNSPECIFIED, "Attempted loading a cart larger than 64MB");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
m_cart->rom_alloc(size, tag());
@@ -235,10 +235,10 @@ bool gba_cart_slot_device::call_load()
if (m_cart->get_nvram_size())
battery_load(m_cart->get_nvram_base(), m_cart->get_nvram_size(), 0x00);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/devices/bus/gba/gba_slot.h b/src/devices/bus/gba/gba_slot.h
index ddf2cb7ea2f..5cbc103e8dc 100644
--- a/src/devices/bus/gba/gba_slot.h
+++ b/src/devices/bus/gba/gba_slot.h
@@ -85,7 +85,7 @@ public:
virtual void device_config_complete() override;
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override;
virtual const software_list_loader &get_software_list_loader() const override { return rom_software_list_loader::instance(); }
diff --git a/src/devices/bus/generic/slot.cpp b/src/devices/bus/generic/slot.cpp
index 3a0ee3b1476..71a5d0f1b0e 100644
--- a/src/devices/bus/generic/slot.cpp
+++ b/src/devices/bus/generic/slot.cpp
@@ -132,7 +132,7 @@ void generic_slot_device::device_config_complete()
call load
-------------------------------------------------*/
-bool generic_slot_device::call_load()
+image_init_result generic_slot_device::call_load()
{
if (m_cart)
{
@@ -145,11 +145,11 @@ bool generic_slot_device::call_load()
rom_alloc(len, m_width, m_endianness);
common_load_rom(get_rom_base(), len, "rom");
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/devices/bus/generic/slot.h b/src/devices/bus/generic/slot.h
index 7f76ccbe301..6ba2e1a1fd5 100644
--- a/src/devices/bus/generic/slot.h
+++ b/src/devices/bus/generic/slot.h
@@ -112,7 +112,7 @@ public:
virtual void device_config_complete() override;
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override;
virtual const software_list_loader &get_software_list_loader() const override { return rom_software_list_loader::instance(); }
diff --git a/src/devices/bus/hp_optroms/hp_optrom.cpp b/src/devices/bus/hp_optroms/hp_optrom.cpp
index 8ab9f71ccb7..7d2de33fcf3 100644
--- a/src/devices/bus/hp_optroms/hp_optrom.cpp
+++ b/src/devices/bus/hp_optroms/hp_optrom.cpp
@@ -57,24 +57,24 @@ void hp_optrom_slot_device::device_config_complete()
update_names(HP_OPTROM_SLOT , "optional_rom" , "optrom");
}
-bool hp_optrom_slot_device::call_load()
+image_init_result hp_optrom_slot_device::call_load()
{
logerror("hp_optrom: call_load\n");
if (m_cart == nullptr || !loaded_through_softlist()) {
logerror("hp_optrom: must be loaded from sw list\n");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
const char *base_feature = get_feature("base");
if (base_feature == nullptr) {
logerror("hp_optrom: no 'base' feature\n");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
offs_t base_addr;
if (base_feature[ 0 ] != '0' || base_feature[ 1 ] != 'x' || sscanf(&base_feature[ 2 ] , "%x" , &base_addr) != 1) {
logerror("hp_optrom: can't parse 'base' feature\n");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
// Valid BSC values for ROMs on LPU drawer: 0x07 0x0b .... 0x3b
@@ -84,14 +84,14 @@ bool hp_optrom_slot_device::call_load()
// Base address must be multiple of 0x1000
if ((base_addr & ~0x3f7000UL) != 0 || ((base_addr & 0x30000) != 0x10000 && (base_addr & 0x30000) != 0x30000) || base_addr < 0x70000) {
logerror("hp_optrom: illegal base address (%x)\n" , base_addr);
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
auto length = get_software_region_length("rom") / 2;
if (length < 0x1000 || length > 0x8000 || (length & 0xfff) != 0 || ((base_addr & 0x7000) + length) > 0x8000) {
logerror("hp_optrom: illegal region length (%x)\n" , length);
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
offs_t end_addr = base_addr + length - 1;
@@ -110,7 +110,7 @@ bool hp_optrom_slot_device::call_load()
m_base_addr = base_addr;
m_end_addr = end_addr;
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
void hp_optrom_slot_device::call_unload()
diff --git a/src/devices/bus/hp_optroms/hp_optrom.h b/src/devices/bus/hp_optroms/hp_optrom.h
index 980ca93ff4c..d82f8962f4f 100644
--- a/src/devices/bus/hp_optroms/hp_optrom.h
+++ b/src/devices/bus/hp_optroms/hp_optrom.h
@@ -41,7 +41,7 @@ public:
virtual void device_config_complete() override;
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override;
virtual const software_list_loader &get_software_list_loader() const override { return rom_software_list_loader::instance(); }
diff --git a/src/devices/bus/intv/slot.cpp b/src/devices/bus/intv/slot.cpp
index 2f4abb0fcd0..e0bc729ba70 100644
--- a/src/devices/bus/intv/slot.cpp
+++ b/src/devices/bus/intv/slot.cpp
@@ -233,7 +233,7 @@ static const char *intv_get_slot(int type)
call load
-------------------------------------------------*/
-int intv_cart_slot_device::load_fullpath()
+image_init_result intv_cart_slot_device::load_fullpath()
{
UINT8 temp;
UINT8 num_segments;
@@ -254,13 +254,13 @@ int intv_cart_slot_device::load_fullpath()
// header
fread(&temp, 1);
if (temp != 0xa8)
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
fread(&num_segments, 1);
fread(&temp, 1);
if (temp != (num_segments ^ 0xff))
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
m_cart->rom_alloc(0x20000, tag());
ROM = (UINT8 *)m_cart->get_rom_base();
@@ -292,7 +292,7 @@ int intv_cart_slot_device::load_fullpath()
{
fread(&temp, 1);
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
/* otherwise, we load it as a .bin file, using extrainfo from intv.hsi in place of .cfg */
else
@@ -383,11 +383,11 @@ int intv_cart_slot_device::load_fullpath()
}
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
}
-bool intv_cart_slot_device::call_load()
+image_init_result intv_cart_slot_device::call_load()
{
if (m_cart)
{
@@ -435,11 +435,11 @@ bool intv_cart_slot_device::call_load()
m_cart->ram_alloc(get_software_region_length("ram"));
//printf("Type: %s\n", intv_get_slot(m_type));
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/devices/bus/intv/slot.h b/src/devices/bus/intv/slot.h
index 5f22dff3eea..ced41e71fd0 100644
--- a/src/devices/bus/intv/slot.h
+++ b/src/devices/bus/intv/slot.h
@@ -100,12 +100,12 @@ public:
virtual void device_config_complete() override;
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override {}
virtual const software_list_loader &get_software_list_loader() const override { return rom_software_list_loader::instance(); }
int get_type() { return m_type; }
- int load_fullpath();
+ image_init_result load_fullpath();
void save_ram() { if (m_cart && m_cart->get_ram_size()) m_cart->save_ram(); }
diff --git a/src/devices/bus/iq151/iq151.cpp b/src/devices/bus/iq151/iq151.cpp
index 838e4d46e92..9b4e4f0b107 100644
--- a/src/devices/bus/iq151/iq151.cpp
+++ b/src/devices/bus/iq151/iq151.cpp
@@ -162,7 +162,7 @@ void iq151cart_slot_device::video_update(bitmap_ind16 &bitmap, const rectangle &
call load
-------------------------------------------------*/
-bool iq151cart_slot_device::call_load()
+image_init_result iq151cart_slot_device::call_load()
{
if (m_cart)
{
@@ -183,10 +183,10 @@ bool iq151cart_slot_device::call_load()
}
}
else
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
/*-------------------------------------------------
diff --git a/src/devices/bus/iq151/iq151.h b/src/devices/bus/iq151/iq151.h
index 03ffbad0321..1c75ff6c9a0 100644
--- a/src/devices/bus/iq151/iq151.h
+++ b/src/devices/bus/iq151/iq151.h
@@ -92,7 +92,7 @@ public:
virtual void device_config_complete() override;
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual const software_list_loader &get_software_list_loader() const override { return rom_software_list_loader::instance(); }
virtual iodevice_t image_type() const override { return IO_CARTSLOT; }
diff --git a/src/devices/bus/isa/omti8621.cpp b/src/devices/bus/isa/omti8621.cpp
index 85312f8dae4..1e019e69ddc 100644
--- a/src/devices/bus/isa/omti8621.cpp
+++ b/src/devices/bus/isa/omti8621.cpp
@@ -63,7 +63,7 @@ public:
virtual bool is_reset_on_load() const override { return 0; }
virtual const char *file_extensions() const override { return "awd"; }
- virtual bool call_create(int format_type, util::option_resolution *format_options) override;
+ virtual image_init_result call_create(int format_type, util::option_resolution *format_options) override;
protected:
// device-level overrides
virtual void device_config_complete() override;
@@ -1404,7 +1404,7 @@ void omti_disk_image_device::device_reset()
disk image create callback
-------------------------------------------------*/
-bool omti_disk_image_device::call_create(int format_type, util::option_resolution *format_options)
+image_init_result omti_disk_image_device::call_create(int format_type, util::option_resolution *format_options)
{
LOG(("device_create_omti_disk: creating OMTI Disk with %d blocks", m_sector_count));
@@ -1418,8 +1418,8 @@ bool omti_disk_image_device::call_create(int format_type, util::option_resolutio
if (fwrite(sectordata, OMTI_DISK_SECTOR_SIZE)
< OMTI_DISK_SECTOR_SIZE)
{
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/devices/bus/isa/sc499.cpp b/src/devices/bus/isa/sc499.cpp
index 42316f000b6..aaf0d719d67 100644
--- a/src/devices/bus/isa/sc499.cpp
+++ b/src/devices/bus/isa/sc499.cpp
@@ -1325,7 +1325,7 @@ void sc499_ctape_image_device::write_block(int block_num, UINT8 *ptr)
memcpy(&m_ctape_data[block_num * SC499_CTAPE_BLOCK_SIZE], ptr, SC499_CTAPE_BLOCK_SIZE);
}
-bool sc499_ctape_image_device::call_load()
+image_init_result sc499_ctape_image_device::call_load()
{
UINT32 size;
io_generic io;
@@ -1338,7 +1338,7 @@ bool sc499_ctape_image_device::call_load()
io_generic_read(&io, &m_ctape_data[0], 0, size);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
void sc499_ctape_image_device::call_unload()
diff --git a/src/devices/bus/isa/sc499.h b/src/devices/bus/isa/sc499.h
index e94c8c3dc39..7bbdaedfb8b 100644
--- a/src/devices/bus/isa/sc499.h
+++ b/src/devices/bus/isa/sc499.h
@@ -29,7 +29,7 @@ public:
sc499_ctape_image_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual const software_list_loader &get_software_list_loader() const override { return image_software_list_loader::instance(); }
virtual void call_unload() override;
virtual iodevice_t image_type() const override { return IO_MAGTAPE; }
diff --git a/src/devices/bus/kc/kc.cpp b/src/devices/bus/kc/kc.cpp
index 6be7e9432df..bd379fd064e 100644
--- a/src/devices/bus/kc/kc.cpp
+++ b/src/devices/bus/kc/kc.cpp
@@ -328,7 +328,7 @@ void kccart_slot_device::device_config_complete()
call load
-------------------------------------------------*/
-bool kccart_slot_device::call_load()
+image_init_result kccart_slot_device::call_load()
{
if (m_cart)
{
@@ -349,10 +349,10 @@ bool kccart_slot_device::call_load()
}
}
else
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
/*-------------------------------------------------
diff --git a/src/devices/bus/kc/kc.h b/src/devices/bus/kc/kc.h
index 1b4345f800a..7f9ed65f7d0 100644
--- a/src/devices/bus/kc/kc.h
+++ b/src/devices/bus/kc/kc.h
@@ -90,7 +90,7 @@ public:
virtual void device_config_complete() override;
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual const software_list_loader &get_software_list_loader() const override { return rom_software_list_loader::instance(); }
virtual iodevice_t image_type() const override { return IO_CARTSLOT; }
diff --git a/src/devices/bus/m5/slot.cpp b/src/devices/bus/m5/slot.cpp
index b554a0e448e..2b5c563f54e 100644
--- a/src/devices/bus/m5/slot.cpp
+++ b/src/devices/bus/m5/slot.cpp
@@ -157,7 +157,7 @@ static const char *m5_get_slot(int type)
call load
-------------------------------------------------*/
-bool m5_cart_slot_device::call_load()
+image_init_result m5_cart_slot_device::call_load()
{
if (m_cart)
{
@@ -180,7 +180,7 @@ bool m5_cart_slot_device::call_load()
if (size > 0x5000 && m_type == M5_STD)
{
seterror(IMAGE_ERROR_UNSPECIFIED, "Image extends beyond the expected size for an M5 cart");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
m_cart->rom_alloc(size, tag());
@@ -199,7 +199,7 @@ bool m5_cart_slot_device::call_load()
//printf("Type: %s\n", m5_get_slot(m_type));
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/devices/bus/m5/slot.h b/src/devices/bus/m5/slot.h
index 66b52db3eb9..cd12d43f3a8 100644
--- a/src/devices/bus/m5/slot.h
+++ b/src/devices/bus/m5/slot.h
@@ -68,7 +68,7 @@ public:
virtual void device_config_complete() override;
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override {}
virtual const software_list_loader &get_software_list_loader() const override { return rom_software_list_loader::instance(); }
diff --git a/src/devices/bus/megadrive/md_slot.cpp b/src/devices/bus/megadrive/md_slot.cpp
index 2bcd3da9d9d..1e796adb16b 100644
--- a/src/devices/bus/megadrive/md_slot.cpp
+++ b/src/devices/bus/megadrive/md_slot.cpp
@@ -322,12 +322,12 @@ static const char *md_get_slot(int type)
-------------------------------------------------*/
-bool base_md_cart_slot_device::call_load()
+image_init_result base_md_cart_slot_device::call_load()
{
if (m_cart)
{
m_type = SEGA_STD;
- int res;
+ image_init_result res;
// STEP 1: load the file image and keep a copy for later banking
// STEP 2: identify the cart type
@@ -339,7 +339,7 @@ bool base_md_cart_slot_device::call_load()
//printf("cart type: %d\n", m_type);
- if (res == IMAGE_INIT_PASS)
+ if (res == image_init_result::PASS)
{
//speed-up rom access from SVP add-on, if present
if (m_type == SEGA_SVP)
@@ -360,11 +360,11 @@ bool base_md_cart_slot_device::call_load()
return res;
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
-int base_md_cart_slot_device::load_list()
+image_init_result base_md_cart_slot_device::load_list()
{
UINT16 *ROM;
UINT32 length = get_software_region_length("rom");
@@ -390,7 +390,7 @@ int base_md_cart_slot_device::load_list()
if (m_type != SSF2 && m_type != PSOLAR && m_type != CM_2IN1)
m_cart->rom_map_setup(length);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
@@ -466,7 +466,7 @@ static int genesis_is_SMD(unsigned char *buf, unsigned int len)
* softlist
*************************************/
-int base_md_cart_slot_device::load_nonlist()
+image_init_result base_md_cart_slot_device::load_nonlist()
{
unsigned char *ROM;
bool is_smd, is_md;
@@ -546,7 +546,7 @@ int base_md_cart_slot_device::load_nonlist()
}
#endif
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
/*-------------------------------------------------
diff --git a/src/devices/bus/megadrive/md_slot.h b/src/devices/bus/megadrive/md_slot.h
index fccec9586d7..4a86749d991 100644
--- a/src/devices/bus/megadrive/md_slot.h
+++ b/src/devices/bus/megadrive/md_slot.h
@@ -151,7 +151,7 @@ public:
virtual void device_config_complete() override;
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override;
virtual const software_list_loader &get_software_list_loader() const override { return rom_software_list_loader::instance(); }
@@ -167,8 +167,8 @@ public:
int get_type() { return m_type; }
- int load_list();
- int load_nonlist();
+ image_init_result load_list();
+ image_init_result load_nonlist();
int get_cart_type(UINT8 *ROM, UINT32 len);
void setup_custom_mappers();
diff --git a/src/devices/bus/msx_slot/cartridge.cpp b/src/devices/bus/msx_slot/cartridge.cpp
index b926a5679d5..19be1b77921 100644
--- a/src/devices/bus/msx_slot/cartridge.cpp
+++ b/src/devices/bus/msx_slot/cartridge.cpp
@@ -102,7 +102,7 @@ void msx_slot_cartridge_device::device_start()
}
-bool msx_slot_cartridge_device::call_load()
+image_init_result msx_slot_cartridge_device::call_load()
{
if ( m_cartridge )
{
@@ -164,7 +164,7 @@ bool msx_slot_cartridge_device::call_load()
if (fread(m_cartridge->get_rom_base(), length) != length)
{
seterror(IMAGE_ERROR_UNSPECIFIED, "Unable to fully read file");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
// Check if there's some mapper related
@@ -182,7 +182,7 @@ bool msx_slot_cartridge_device::call_load()
battery_load(m_cartridge->get_sram_base(), m_cartridge->get_sram_size(), 0x00);
}
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/devices/bus/msx_slot/cartridge.h b/src/devices/bus/msx_slot/cartridge.h
index 33acf0f9f9d..b9e1ca5e4f7 100644
--- a/src/devices/bus/msx_slot/cartridge.h
+++ b/src/devices/bus/msx_slot/cartridge.h
@@ -41,7 +41,7 @@ public:
virtual void device_config_complete() override { update_names(MSX_SLOT_CARTRIDGE, "cartridge", "cart"); }
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override;
virtual const software_list_loader &get_software_list_loader() const override { return rom_software_list_loader::instance(); }
virtual iodevice_t image_type() const override { return IO_CARTSLOT; }
diff --git a/src/devices/bus/neogeo/slot.cpp b/src/devices/bus/neogeo/slot.cpp
index 84a34bc3b30..f8664001112 100644
--- a/src/devices/bus/neogeo/slot.cpp
+++ b/src/devices/bus/neogeo/slot.cpp
@@ -234,7 +234,7 @@ void neogeo_cart_slot_device::set_cart_type(const char *slot)
-------------------------------------------------*/
-bool neogeo_cart_slot_device::call_load()
+image_init_result neogeo_cart_slot_device::call_load()
{
if (m_cart)
{
@@ -314,11 +314,11 @@ bool neogeo_cart_slot_device::call_load()
// a different format (we then always access such alt format for drawing)
m_cart->optimize_sprites(m_cart->get_sprites_base(), m_cart->get_sprites_size());
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/devices/bus/neogeo/slot.h b/src/devices/bus/neogeo/slot.h
index 1e681ac4684..158ff77e706 100644
--- a/src/devices/bus/neogeo/slot.h
+++ b/src/devices/bus/neogeo/slot.h
@@ -193,7 +193,7 @@ public:
virtual void device_config_complete() override;
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override;
virtual const software_list_loader &get_software_list_loader() const override { return rom_software_list_loader::instance(); }
diff --git a/src/devices/bus/nes/aladdin.cpp b/src/devices/bus/nes/aladdin.cpp
index 0e30eaeb8ec..d4ff5fbdfff 100644
--- a/src/devices/bus/nes/aladdin.cpp
+++ b/src/devices/bus/nes/aladdin.cpp
@@ -92,7 +92,7 @@ READ8_MEMBER(nes_aladdin_slot_device::read)
}
// 128K for Dizzy The Adventurer, 256K for the others
-bool nes_aladdin_slot_device::call_load()
+image_init_result nes_aladdin_slot_device::call_load()
{
if (m_cart)
{
@@ -100,12 +100,12 @@ bool nes_aladdin_slot_device::call_load()
UINT32 size;
if (!ROM)
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
if (software_entry() == nullptr)
{
if (length() != 0x20010 && length() != 0x40010)
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
UINT8 temp[0x40010];
size = length() - 0x10;
@@ -117,13 +117,13 @@ bool nes_aladdin_slot_device::call_load()
UINT8 mapper = (temp[6] & 0xf0) >> 4;
mapper |= temp[7] & 0xf0;
if (mapper != 71 && mapper != 232)
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
}
else
{
if (get_software_region_length("rom") != 0x20000 && get_software_region_length("rom") != 0x40000)
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
size = get_software_region_length("rom");
memcpy(ROM, get_software_region("rom"), size);
@@ -132,7 +132,7 @@ bool nes_aladdin_slot_device::call_load()
m_cart->set_cart_size(size);
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/devices/bus/nes/aladdin.h b/src/devices/bus/nes/aladdin.h
index d00f473c655..b49ecbf964e 100644
--- a/src/devices/bus/nes/aladdin.h
+++ b/src/devices/bus/nes/aladdin.h
@@ -51,7 +51,7 @@ public:
virtual void device_config_complete() override { update_names(); }
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual const software_list_loader &get_software_list_loader() const override { return rom_software_list_loader::instance(); }
virtual iodevice_t image_type() const override { return IO_CARTSLOT; }
diff --git a/src/devices/bus/nes/datach.cpp b/src/devices/bus/nes/datach.cpp
index 0ea144782d3..2e5d42d4bbb 100644
--- a/src/devices/bus/nes/datach.cpp
+++ b/src/devices/bus/nes/datach.cpp
@@ -92,20 +92,20 @@ READ8_MEMBER(nes_datach_slot_device::read)
return 0xff;
}
-bool nes_datach_slot_device::call_load()
+image_init_result nes_datach_slot_device::call_load()
{
if (m_cart)
{
UINT8 *ROM = m_cart->get_cart_base();
if (!ROM)
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
// Existing Datach carts are all 256K, so we only load files of this size
if (software_entry() == nullptr)
{
if (length() != 0x40000 && length() != 0x40010)
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
int shift = length() - 0x40000;
UINT8 temp[0x40010];
@@ -120,20 +120,20 @@ bool nes_datach_slot_device::call_load()
mapper |= temp[7] & 0xf0;
if (mapper != 157 && mapper != 16)
{
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
}
}
else
{
if (get_software_region_length("rom") != 0x40000)
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
memcpy(ROM, get_software_region("rom"), 0x40000);
}
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/devices/bus/nes/datach.h b/src/devices/bus/nes/datach.h
index 44d2040d99a..80157a83a5c 100644
--- a/src/devices/bus/nes/datach.h
+++ b/src/devices/bus/nes/datach.h
@@ -53,7 +53,7 @@ public:
virtual void device_config_complete() override { update_names(); }
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual const software_list_loader &get_software_list_loader() const override { return rom_software_list_loader::instance(); }
virtual iodevice_t image_type() const override { return IO_CARTSLOT; }
diff --git a/src/devices/bus/nes/karastudio.cpp b/src/devices/bus/nes/karastudio.cpp
index e321033d700..6bf2d109613 100644
--- a/src/devices/bus/nes/karastudio.cpp
+++ b/src/devices/bus/nes/karastudio.cpp
@@ -96,33 +96,33 @@ READ8_MEMBER(nes_kstudio_slot_device::read)
return 0xff;
}
-bool nes_kstudio_slot_device::call_load()
+image_init_result nes_kstudio_slot_device::call_load()
{
if (m_cart)
{
UINT8 *ROM = m_cart->get_cart_base();
if (!ROM)
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
// Existing exapnsion carts are all 128K, so we only load files of this size
if (software_entry() == nullptr)
{
if (length() != 0x20000)
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
fread(&ROM, 0x20000);
}
else
{
if (get_software_region_length("rom") != 0x20000)
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
memcpy(ROM, get_software_region("rom"), 0x20000);
}
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/devices/bus/nes/karastudio.h b/src/devices/bus/nes/karastudio.h
index e7bc33f38d2..e2b5ef874b5 100644
--- a/src/devices/bus/nes/karastudio.h
+++ b/src/devices/bus/nes/karastudio.h
@@ -50,7 +50,7 @@ public:
virtual void device_config_complete() override { update_names(); }
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual const software_list_loader &get_software_list_loader() const override { return rom_software_list_loader::instance(); }
virtual iodevice_t image_type() const override { return IO_CARTSLOT; }
diff --git a/src/devices/bus/nes/nes_slot.cpp b/src/devices/bus/nes/nes_slot.cpp
index 17fe28a1acb..914bf8a935a 100644
--- a/src/devices/bus/nes/nes_slot.cpp
+++ b/src/devices/bus/nes/nes_slot.cpp
@@ -829,7 +829,7 @@ void nes_cart_slot_device::pcb_reset()
#include "nes_ines.hxx"
-bool nes_cart_slot_device::call_load()
+image_init_result nes_cart_slot_device::call_load()
{
if (m_cart)
{
@@ -846,7 +846,7 @@ bool nes_cart_slot_device::call_load()
if (length() <= 0x10)
{
logerror("%s only contains the iNES header and no data.\n", filename());
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
call_load_ines();
@@ -856,7 +856,7 @@ bool nes_cart_slot_device::call_load()
if (length() <= 0x20)
{
logerror("%s only contains the UNIF header and no data.\n", filename());
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
call_load_unif();
@@ -864,14 +864,14 @@ bool nes_cart_slot_device::call_load()
else
{
logerror("%s is NOT a file in either iNES or UNIF format.\n", filename());
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
}
else
call_load_pcb();
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/devices/bus/nes/nes_slot.h b/src/devices/bus/nes/nes_slot.h
index 0171499f9d6..d9b64cfa30a 100644
--- a/src/devices/bus/nes/nes_slot.h
+++ b/src/devices/bus/nes/nes_slot.h
@@ -344,7 +344,7 @@ public:
virtual void device_config_complete() override;
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override;
virtual const software_list_loader &get_software_list_loader() const override { return rom_software_list_loader::instance(); }
diff --git a/src/devices/bus/nes/sunsoft_dcs.cpp b/src/devices/bus/nes/sunsoft_dcs.cpp
index 356483a2c8b..9c7635a58e5 100644
--- a/src/devices/bus/nes/sunsoft_dcs.cpp
+++ b/src/devices/bus/nes/sunsoft_dcs.cpp
@@ -76,32 +76,32 @@ READ8_MEMBER(nes_ntb_slot_device::read)
}
-bool nes_ntb_slot_device::call_load()
+image_init_result nes_ntb_slot_device::call_load()
{
if (m_cart)
{
UINT8 *ROM = m_cart->get_cart_base();
if (!ROM)
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
if (software_entry() == nullptr)
{
if (length() != 0x4000)
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
fread(&ROM, 0x4000);
}
else
{
if (get_software_region_length("rom") != 0x4000)
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
memcpy(ROM, get_software_region("rom"), 0x4000);
}
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/devices/bus/nes/sunsoft_dcs.h b/src/devices/bus/nes/sunsoft_dcs.h
index 5734c9321d5..04f8011d29a 100644
--- a/src/devices/bus/nes/sunsoft_dcs.h
+++ b/src/devices/bus/nes/sunsoft_dcs.h
@@ -47,7 +47,7 @@ public:
virtual void device_config_complete() override { update_names(); }
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual const software_list_loader &get_software_list_loader() const override { return rom_software_list_loader::instance(); }
virtual iodevice_t image_type() const override { return IO_CARTSLOT; }
diff --git a/src/devices/bus/nubus/nubus_image.cpp b/src/devices/bus/nubus/nubus_image.cpp
index ec1f5f2e7fe..e3e3a29f2fa 100644
--- a/src/devices/bus/nubus/nubus_image.cpp
+++ b/src/devices/bus/nubus/nubus_image.cpp
@@ -46,7 +46,7 @@ public:
virtual bool is_reset_on_load() const override { return 0; }
virtual const char *file_extensions() const override { return "img"; }
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override;
protected:
@@ -92,7 +92,7 @@ void messimg_disk_image_device::device_start()
}
}
-bool messimg_disk_image_device::call_load()
+image_init_result messimg_disk_image_device::call_load()
{
fseek(0, SEEK_END);
m_size = (UINT32)ftell();
@@ -100,7 +100,7 @@ bool messimg_disk_image_device::call_load()
{
printf("Mac image too large: must be 256MB or less!\n");
m_size = 0;
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
m_data = make_unique_clear<UINT8[]>(m_size);
@@ -108,7 +108,7 @@ bool messimg_disk_image_device::call_load()
fread(m_data.get(), m_size);
m_ejected = false;
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
void messimg_disk_image_device::call_unload()
diff --git a/src/devices/bus/odyssey2/slot.cpp b/src/devices/bus/odyssey2/slot.cpp
index a8d61aa815a..3ae5091568b 100644
--- a/src/devices/bus/odyssey2/slot.cpp
+++ b/src/devices/bus/odyssey2/slot.cpp
@@ -158,7 +158,7 @@ static const char *o2_get_slot(int type)
call load
-------------------------------------------------*/
-bool o2_cart_slot_device::call_load()
+image_init_result o2_cart_slot_device::call_load()
{
if (m_cart)
{
@@ -187,10 +187,10 @@ bool o2_cart_slot_device::call_load()
//printf("Type: %s\n", o2_get_slot(m_type));
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/devices/bus/odyssey2/slot.h b/src/devices/bus/odyssey2/slot.h
index 169841f4d2d..88dde833dca 100644
--- a/src/devices/bus/odyssey2/slot.h
+++ b/src/devices/bus/odyssey2/slot.h
@@ -67,7 +67,7 @@ public:
virtual void device_config_complete() override;
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override {}
virtual const software_list_loader &get_software_list_loader() const override { return rom_software_list_loader::instance(); }
diff --git a/src/devices/bus/pce/pce_slot.cpp b/src/devices/bus/pce/pce_slot.cpp
index 202d5275360..7c4a024fabd 100644
--- a/src/devices/bus/pce/pce_slot.cpp
+++ b/src/devices/bus/pce/pce_slot.cpp
@@ -222,7 +222,7 @@ static const char *pce_get_slot(int type)
call load
-------------------------------------------------*/
-bool pce_cart_slot_device::call_load()
+image_init_result pce_cart_slot_device::call_load()
{
if (m_cart)
{
@@ -278,10 +278,10 @@ bool pce_cart_slot_device::call_load()
if (m_type == PCE_CDSYS3J || m_type == PCE_CDSYS3U)
m_cart->ram_alloc(0x30000);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/devices/bus/pce/pce_slot.h b/src/devices/bus/pce/pce_slot.h
index d0d0637b2e4..c6cb11096e1 100644
--- a/src/devices/bus/pce/pce_slot.h
+++ b/src/devices/bus/pce/pce_slot.h
@@ -66,7 +66,7 @@ public:
virtual void device_config_complete() override;
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override;
virtual const software_list_loader &get_software_list_loader() const override { return rom_software_list_loader::instance(); }
diff --git a/src/devices/bus/plus4/exp.cpp b/src/devices/bus/plus4/exp.cpp
index 8a37a0fe448..e62a9a6cc58 100644
--- a/src/devices/bus/plus4/exp.cpp
+++ b/src/devices/bus/plus4/exp.cpp
@@ -120,7 +120,7 @@ void plus4_expansion_slot_device::device_reset()
// call_load -
//-------------------------------------------------
-bool plus4_expansion_slot_device::call_load()
+image_init_result plus4_expansion_slot_device::call_load()
{
if (m_card)
{
@@ -137,7 +137,7 @@ bool plus4_expansion_slot_device::call_load()
}
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/devices/bus/plus4/exp.h b/src/devices/bus/plus4/exp.h
index dbbdaba6e2a..c63d2b618f1 100644
--- a/src/devices/bus/plus4/exp.h
+++ b/src/devices/bus/plus4/exp.h
@@ -120,7 +120,7 @@ protected:
virtual void device_reset() override;
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual const software_list_loader &get_software_list_loader() const override { return rom_software_list_loader::instance(); }
virtual iodevice_t image_type() const override { return IO_CARTSLOT; }
diff --git a/src/devices/bus/psx/memcard.cpp b/src/devices/bus/psx/memcard.cpp
index 68aecb19e01..0b0a33a8856 100644
--- a/src/devices/bus/psx/memcard.cpp
+++ b/src/devices/bus/psx/memcard.cpp
@@ -300,20 +300,20 @@ unsigned char psxcard_device::checksum_data(const unsigned char *buf, const unsi
return chk;
}
-bool psxcard_device::call_load()
+image_init_result psxcard_device::call_load()
{
if(m_disabled)
{
logerror("psxcard: port disabled\n");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
if(length() != card_size)
- return IMAGE_INIT_FAIL;
- return IMAGE_INIT_PASS;
+ return image_init_result::FAIL;
+ return image_init_result::PASS;
}
-bool psxcard_device::call_create(int format_type, util::option_resolution *format_options)
+image_init_result psxcard_device::call_create(int format_type, util::option_resolution *format_options)
{
UINT8 block[block_size];
int i, ret;
@@ -321,7 +321,7 @@ bool psxcard_device::call_create(int format_type, util::option_resolution *forma
if(m_disabled)
{
logerror("psxcard: port disabled\n");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
memset(block, '\0', block_size);
@@ -329,9 +329,9 @@ bool psxcard_device::call_create(int format_type, util::option_resolution *forma
{
ret = fwrite(block, block_size);
if(ret != block_size)
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
void psxcard_device::do_card()
diff --git a/src/devices/bus/psx/memcard.h b/src/devices/bus/psx/memcard.h
index 26608085453..eaea4ae5928 100644
--- a/src/devices/bus/psx/memcard.h
+++ b/src/devices/bus/psx/memcard.h
@@ -27,8 +27,8 @@ public:
virtual bool is_reset_on_load() const override { return 0; }
virtual const char *file_extensions() const override { return "mc"; }
- virtual bool call_load() override;
- virtual bool call_create(int format_type, util::option_resolution *format_options) override;
+ virtual image_init_result call_load() override;
+ virtual image_init_result call_create(int format_type, util::option_resolution *format_options) override;
void disable(bool state) { m_disabled = state; if(state) unload(); }
diff --git a/src/devices/bus/ql/rom.cpp b/src/devices/bus/ql/rom.cpp
index 88e65e8b861..a0b773a0f58 100644
--- a/src/devices/bus/ql/rom.cpp
+++ b/src/devices/bus/ql/rom.cpp
@@ -75,7 +75,7 @@ void ql_rom_cartridge_slot_t::device_start()
// call_load -
//-------------------------------------------------
-bool ql_rom_cartridge_slot_t::call_load()
+image_init_result ql_rom_cartridge_slot_t::call_load()
{
if (m_card)
{
@@ -94,7 +94,7 @@ bool ql_rom_cartridge_slot_t::call_load()
}
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/devices/bus/ql/rom.h b/src/devices/bus/ql/rom.h
index a80dc8bcfa5..606ffe4e67b 100644
--- a/src/devices/bus/ql/rom.h
+++ b/src/devices/bus/ql/rom.h
@@ -95,7 +95,7 @@ protected:
virtual void device_start() override;
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual const software_list_loader &get_software_list_loader() const override { return rom_software_list_loader::instance(); }
virtual iodevice_t image_type() const override { return IO_CARTSLOT; }
diff --git a/src/devices/bus/saturn/sat_slot.cpp b/src/devices/bus/saturn/sat_slot.cpp
index 6f28cf5cb10..56137e39634 100644
--- a/src/devices/bus/saturn/sat_slot.cpp
+++ b/src/devices/bus/saturn/sat_slot.cpp
@@ -145,7 +145,7 @@ void sat_cart_slot_device::device_config_complete()
-------------------------------------------------*/
-bool sat_cart_slot_device::call_load()
+image_init_result sat_cart_slot_device::call_load()
{
if (m_cart)
{
@@ -187,10 +187,10 @@ bool sat_cart_slot_device::call_load()
if (get_software_region("dram1"))
m_cart->dram1_alloc(get_software_region_length("dram1"));
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/devices/bus/saturn/sat_slot.h b/src/devices/bus/saturn/sat_slot.h
index 0048c525f85..af16ecbdeaa 100644
--- a/src/devices/bus/saturn/sat_slot.h
+++ b/src/devices/bus/saturn/sat_slot.h
@@ -72,7 +72,7 @@ public:
virtual void device_config_complete() override;
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override;
virtual const software_list_loader &get_software_list_loader() const override { return rom_software_list_loader::instance(); }
diff --git a/src/devices/bus/scv/slot.cpp b/src/devices/bus/scv/slot.cpp
index 3cd28b259b7..c8e05a1229b 100644
--- a/src/devices/bus/scv/slot.cpp
+++ b/src/devices/bus/scv/slot.cpp
@@ -160,7 +160,7 @@ static const char *scv_get_slot(int type)
call load
-------------------------------------------------*/
-bool scv_cart_slot_device::call_load()
+image_init_result scv_cart_slot_device::call_load()
{
if (m_cart)
{
@@ -171,7 +171,7 @@ bool scv_cart_slot_device::call_load()
if (len > 0x20000)
{
seterror(IMAGE_ERROR_UNSPECIFIED, "Unsupported cartridge size");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
m_cart->rom_alloc(len, tag());
@@ -203,10 +203,10 @@ bool scv_cart_slot_device::call_load()
//printf("Type: %s\n", scv_get_slot(m_type));
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/devices/bus/scv/slot.h b/src/devices/bus/scv/slot.h
index b08707dae4a..1d921f8d607 100644
--- a/src/devices/bus/scv/slot.h
+++ b/src/devices/bus/scv/slot.h
@@ -68,7 +68,7 @@ public:
virtual void device_config_complete() override;
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override {}
virtual const software_list_loader &get_software_list_loader() const override { return rom_software_list_loader::instance(); }
diff --git a/src/devices/bus/sega8/sega8_slot.cpp b/src/devices/bus/sega8/sega8_slot.cpp
index 937d08d4e2c..04a1498bf84 100644
--- a/src/devices/bus/sega8/sega8_slot.cpp
+++ b/src/devices/bus/sega8/sega8_slot.cpp
@@ -213,15 +213,15 @@ static const char *sega8_get_slot(int type)
call load
-------------------------------------------------*/
-bool sega8_cart_slot_device::verify_cart( UINT8 *magic, int size )
+image_verify_result sega8_cart_slot_device::verify_cart( UINT8 *magic, int size )
{
- int retval = false;
+ image_verify_result retval(image_verify_result::FAIL);
// Verify the file is a valid image - check $7ff0 for "TMR SEGA"
if (size >= 0x8000)
{
if (!strncmp((char*)&magic[0x7ff0], "TMR SEGA", 8))
- retval = true;
+ retval = image_verify_result::PASS;
}
return retval;
@@ -331,7 +331,7 @@ void sega8_cart_slot_device::setup_ram()
}
}
-bool sega8_cart_slot_device::call_load()
+image_init_result sega8_cart_slot_device::call_load()
{
if (m_cart)
{
@@ -342,7 +342,7 @@ bool sega8_cart_slot_device::call_load()
if (m_is_card && len > 0x8000)
{
seterror(IMAGE_ERROR_UNSPECIFIED, "Attempted loading a card larger than 32KB");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
// check for header
@@ -368,7 +368,7 @@ bool sega8_cart_slot_device::call_load()
memcpy(ROM, get_software_region("rom"), get_software_region_length("rom"));
/* check the image */
- if (!verify_cart(ROM, len))
+ if (verify_cart(ROM, len) != image_verify_result::PASS)
logerror("Warning loading image: verify_cart failed\n");
if (software_entry() != nullptr)
@@ -397,10 +397,10 @@ bool sega8_cart_slot_device::call_load()
internal_header_logging(ROM + offset, len, m_cart->get_ram_size());
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/devices/bus/sega8/sega8_slot.h b/src/devices/bus/sega8/sega8_slot.h
index c9236b41eed..d27e993f0f7 100644
--- a/src/devices/bus/sega8/sega8_slot.h
+++ b/src/devices/bus/sega8/sega8_slot.h
@@ -108,7 +108,7 @@ public:
virtual void device_config_complete() override { update_names(SEGA8_CART_SLOT, "cartridge", "cart"); }
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override;
virtual const software_list_loader &get_software_list_loader() const override { return rom_software_list_loader::instance(); }
@@ -117,7 +117,7 @@ public:
void setup_ram();
void internal_header_logging(UINT8 *ROM, UINT32 len, UINT32 nvram_len);
- bool verify_cart(UINT8 *magic, int size);
+ image_verify_result verify_cart(UINT8 *magic, int size);
void set_lphaser_xoffset(UINT8 *rom, int size);
void save_ram() { if (m_cart && m_cart->get_ram_size()) m_cart->save_ram(); }
diff --git a/src/devices/bus/snes/snes_slot.cpp b/src/devices/bus/snes/snes_slot.cpp
index 9c62a87ec57..df947c270b6 100644
--- a/src/devices/bus/snes/snes_slot.cpp
+++ b/src/devices/bus/snes/snes_slot.cpp
@@ -600,7 +600,7 @@ static int snes_find_addon_chip( UINT8 *buffer, UINT32 start_offs )
-------------------------------------------------*/
-bool base_sns_cart_slot_device::call_load()
+image_init_result base_sns_cart_slot_device::call_load()
{
if (m_cart)
{
@@ -677,10 +677,10 @@ bool base_sns_cart_slot_device::call_load()
internal_header_logging(ROM, len);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/devices/bus/snes/snes_slot.h b/src/devices/bus/snes/snes_slot.h
index f681e54327f..7ebfefaa7f2 100644
--- a/src/devices/bus/snes/snes_slot.h
+++ b/src/devices/bus/snes/snes_slot.h
@@ -157,7 +157,7 @@ public:
virtual void device_config_complete() override;
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override;
virtual const software_list_loader &get_software_list_loader() const override { return rom_software_list_loader::instance(); }
diff --git a/src/devices/bus/svi3x8/expander/sv603.cpp b/src/devices/bus/svi3x8/expander/sv603.cpp
index 5e20d87807d..ccfa2efc2c7 100644
--- a/src/devices/bus/svi3x8/expander/sv603.cpp
+++ b/src/devices/bus/svi3x8/expander/sv603.cpp
@@ -64,7 +64,7 @@ DEVICE_IMAGE_LOAD_MEMBER( sv603_device, cartridge )
m_cart_rom->rom_alloc(size, GENERIC_ROM8_WIDTH, ENDIANNESS_LITTLE);
m_cart_rom->common_load_rom(m_cart_rom->get_rom_base(), size, "rom");
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/devices/bus/ti99_peb/ti_rs232.cpp b/src/devices/bus/ti99_peb/ti_rs232.cpp
index 2996c2dbf70..ce062b9a839 100644
--- a/src/devices/bus/ti99_peb/ti_rs232.cpp
+++ b/src/devices/bus/ti99_peb/ti_rs232.cpp
@@ -174,7 +174,7 @@ int ti_rs232_attached_device::get_index_from_tagname()
/*
Initialize rs232 unit and open image
*/
-bool ti_rs232_attached_device::call_load()
+image_init_result ti_rs232_attached_device::call_load()
{
tms9902_device* tms9902;
// ti_rs232_pio_device* card = static_cast<ti_rs232_pio_device*>(owner());
@@ -195,13 +195,13 @@ bool ti_rs232_attached_device::call_load()
else
{
LOG("ti99/rs232: Could not find device tag number\n");
- return true;
+ return image_init_result::FAIL;
}
// The following line may cause trouble in the init phase
// card->incoming_dtr(devnumber, (m_file!=nullptr)? ASSERT_LINE : CLEAR_LINE);
- return false; // OK
+ return image_init_result::PASS; // OK
}
void ti_rs232_attached_device::call_unload()
@@ -226,7 +226,7 @@ void ti_rs232_attached_device::call_unload()
/*
Initialize pio unit and open image
*/
-bool ti_pio_attached_device::call_load()
+image_init_result ti_pio_attached_device::call_load()
{
ti_rs232_pio_device* card = static_cast<ti_rs232_pio_device*>(owner());
@@ -240,7 +240,7 @@ bool ti_pio_attached_device::call_load()
else
card->m_pio_handshakein = true;
- return false; // OK
+ return image_init_result::PASS; // OK
}
/*
diff --git a/src/devices/bus/ti99_peb/ti_rs232.h b/src/devices/bus/ti99_peb/ti_rs232.h
index f244843fc09..78aea20a6bf 100644
--- a/src/devices/bus/ti99_peb/ti_rs232.h
+++ b/src/devices/bus/ti99_peb/ti_rs232.h
@@ -130,7 +130,7 @@ public:
protected:
virtual void device_start(void) override;
- bool call_load() override;
+ image_init_result call_load() override;
void call_unload() override;
virtual void device_config_complete() override;
@@ -157,7 +157,7 @@ public:
protected:
virtual void device_start(void) override;
- bool call_load() override;
+ image_init_result call_load() override;
void call_unload() override;
virtual void device_config_complete() override;
};
diff --git a/src/devices/bus/ti99x/990_hd.cpp b/src/devices/bus/ti99x/990_hd.cpp
index b884f8be444..79d808bb390 100644
--- a/src/devices/bus/ti99x/990_hd.cpp
+++ b/src/devices/bus/ti99x/990_hd.cpp
@@ -208,7 +208,7 @@ DEVICE_IMAGE_LOAD_MEMBER( ti990_hdc_device, ti990_hd )
d->format = format_mame; /* don't care */
d->wp = 1;
d->unsafe = 1;
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
d->cylinders = get_UINT32BE(custom_header.cylinders);
@@ -223,7 +223,7 @@ DEVICE_IMAGE_LOAD_MEMBER( ti990_hdc_device, ti990_hd )
d->hd_handle = nullptr;
d->wp = 1;
d->unsafe = 1;
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
/* tell whether the image is writable */
@@ -233,7 +233,7 @@ DEVICE_IMAGE_LOAD_MEMBER( ti990_hdc_device, ti990_hd )
/* set attention line */
m_w[0] |= (0x80 >> id);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
/*
diff --git a/src/devices/bus/ti99x/990_tap.cpp b/src/devices/bus/ti99x/990_tap.cpp
index 4b5f0e0e696..a08b7690a35 100644
--- a/src/devices/bus/ti99x/990_tap.cpp
+++ b/src/devices/bus/ti99x/990_tap.cpp
@@ -904,7 +904,7 @@ public:
virtual bool is_reset_on_load() const override { return 0; }
virtual const char *file_extensions() const override { return "tap"; }
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override;
protected:
// device-level overrides
@@ -946,12 +946,12 @@ int ti990_tape_image_device::tape_get_id()
/*
Open a tape image
*/
-bool ti990_tape_image_device::call_load()
+image_init_result ti990_tape_image_device::call_load()
{
tap_990_device* tpc = downcast<tap_990_device*>(owner());
tpc->set_tape(tape_get_id(), this, true, false, is_readonly());
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
/*
diff --git a/src/devices/bus/ti99x/gromport.cpp b/src/devices/bus/ti99x/gromport.cpp
index 3438e250f50..a41a5285a7f 100644
--- a/src/devices/bus/ti99x/gromport.cpp
+++ b/src/devices/bus/ti99x/gromport.cpp
@@ -1293,7 +1293,7 @@ int ti99_cartridge_device::get_index_from_tagname()
return atoi(mytag+i+1)-1;
}
-bool ti99_cartridge_device::call_load()
+image_init_result ti99_cartridge_device::call_load()
{
// File name is in m_basename
// return true = error
@@ -1329,7 +1329,7 @@ bool ti99_cartridge_device::call_load()
logerror("Failed to load cartridge '%s': %s\n", basename(), err.to_string());
m_rpk = nullptr;
m_err = IMAGE_ERROR_INVALIDIMAGE;
- return true;
+ return image_init_result::FAIL;
}
}
@@ -1386,7 +1386,7 @@ bool ti99_cartridge_device::call_load()
m_pcb->set_tag(tag());
m_slot = get_index_from_tagname();
m_connector->insert(m_slot, this);
- return false;
+ return image_init_result::PASS;
}
void ti99_cartridge_device::call_unload()
diff --git a/src/devices/bus/ti99x/gromport.h b/src/devices/bus/ti99x/gromport.h
index 8080e00d894..81fa024f995 100644
--- a/src/devices/bus/ti99x/gromport.h
+++ b/src/devices/bus/ti99x/gromport.h
@@ -106,7 +106,7 @@ protected:
virtual const rom_entry* device_rom_region() const override;
// Image handling: implementation of methods which are abstract in the parent
- bool call_load() override;
+ image_init_result call_load() override;
void call_unload() override;
virtual const software_list_loader &get_software_list_loader() const override { return rom_software_list_loader::instance(); }
diff --git a/src/devices/bus/vboy/slot.cpp b/src/devices/bus/vboy/slot.cpp
index 133ef058980..e59a7299a7a 100644
--- a/src/devices/bus/vboy/slot.cpp
+++ b/src/devices/bus/vboy/slot.cpp
@@ -158,7 +158,7 @@ static const char *vboy_get_slot(int type)
call load
-------------------------------------------------*/
-bool vboy_cart_slot_device::call_load()
+image_init_result vboy_cart_slot_device::call_load()
{
if (m_cart)
{
@@ -169,7 +169,7 @@ bool vboy_cart_slot_device::call_load()
if (len > 0x200000)
{
seterror(IMAGE_ERROR_UNSPECIFIED, "Unsupported cartridge size");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
// always alloc 0x200000 so to be able to directly map the region
@@ -200,10 +200,10 @@ bool vboy_cart_slot_device::call_load()
//printf("Type: %s\n", vboy_get_slot(m_type));
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/devices/bus/vboy/slot.h b/src/devices/bus/vboy/slot.h
index c25b4e00625..cf031e75f85 100644
--- a/src/devices/bus/vboy/slot.h
+++ b/src/devices/bus/vboy/slot.h
@@ -64,7 +64,7 @@ public:
virtual void device_config_complete() override;
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override;
virtual const software_list_loader &get_software_list_loader() const override { return rom_software_list_loader::instance(); }
diff --git a/src/devices/bus/vc4000/slot.cpp b/src/devices/bus/vc4000/slot.cpp
index d626aa51fbf..9351a055dec 100644
--- a/src/devices/bus/vc4000/slot.cpp
+++ b/src/devices/bus/vc4000/slot.cpp
@@ -170,7 +170,7 @@ static const char *vc4000_get_slot(int type)
call load
-------------------------------------------------*/
-bool vc4000_cart_slot_device::call_load()
+image_init_result vc4000_cart_slot_device::call_load()
{
if (m_cart)
{
@@ -179,7 +179,7 @@ bool vc4000_cart_slot_device::call_load()
if (size > 0x1800)
{
seterror(IMAGE_ERROR_UNSPECIFIED, "Image extends beyond the expected size for a VC4000 cart");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
m_cart->rom_alloc(size, tag());
@@ -213,10 +213,10 @@ bool vc4000_cart_slot_device::call_load()
//printf("Type: %s\n", vc4000_get_slot(m_type));
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/devices/bus/vc4000/slot.h b/src/devices/bus/vc4000/slot.h
index d05e9c70d9e..069593208bc 100644
--- a/src/devices/bus/vc4000/slot.h
+++ b/src/devices/bus/vc4000/slot.h
@@ -66,7 +66,7 @@ public:
virtual void device_config_complete() override;
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override {}
virtual const software_list_loader &get_software_list_loader() const override { return rom_software_list_loader::instance(); }
diff --git a/src/devices/bus/vcs/vcs_slot.cpp b/src/devices/bus/vcs/vcs_slot.cpp
index 410b4d16597..deb811bed9a 100644
--- a/src/devices/bus/vcs/vcs_slot.cpp
+++ b/src/devices/bus/vcs/vcs_slot.cpp
@@ -182,7 +182,7 @@ static const char *vcs_get_slot(int type)
return "a26_4k";
}
-bool vcs_cart_slot_device::call_load()
+image_init_result vcs_cart_slot_device::call_load()
{
if (m_cart)
{
@@ -213,7 +213,7 @@ bool vcs_cart_slot_device::call_load()
default:
seterror(IMAGE_ERROR_UNSUPPORTED, "Invalid rom file size" );
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
m_cart->rom_alloc(len, tag());
@@ -310,10 +310,10 @@ bool vcs_cart_slot_device::call_load()
if (m_type == A26_DPC)
m_cart->setup_addon_ptr((UINT8 *)m_cart->get_rom_base() + 0x2000);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/devices/bus/vcs/vcs_slot.h b/src/devices/bus/vcs/vcs_slot.h
index a16cb20cf5d..142c30f9622 100755
--- a/src/devices/bus/vcs/vcs_slot.h
+++ b/src/devices/bus/vcs/vcs_slot.h
@@ -94,7 +94,7 @@ public:
virtual void device_config_complete() override;
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override;
virtual const software_list_loader &get_software_list_loader() const override { return rom_software_list_loader::instance(); }
diff --git a/src/devices/bus/vectrex/slot.cpp b/src/devices/bus/vectrex/slot.cpp
index 98f611cc89b..28ead970a75 100644
--- a/src/devices/bus/vectrex/slot.cpp
+++ b/src/devices/bus/vectrex/slot.cpp
@@ -148,7 +148,7 @@ static const char *vectrex_get_slot(int type)
call load
-------------------------------------------------*/
-bool vectrex_cart_slot_device::call_load()
+image_init_result vectrex_cart_slot_device::call_load()
{
if (m_cart)
{
@@ -158,7 +158,7 @@ bool vectrex_cart_slot_device::call_load()
if (size > 0x10000)
{
seterror(IMAGE_ERROR_UNSPECIFIED, "Unsupported cartridge size");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
m_cart->rom_alloc((size < 0x1000) ? 0x1000 : size, tag());
@@ -173,7 +173,7 @@ bool vectrex_cart_slot_device::call_load()
if (memcmp(ROM, "g GCE", 5))
{
seterror(IMAGE_ERROR_UNSPECIFIED, "Invalid image");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
// determine type
@@ -195,10 +195,10 @@ bool vectrex_cart_slot_device::call_load()
if (!memcmp(ROM + 0x11, "3D MINE STORM", 13))
m_vec3d = VEC3D_MINEST;
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/devices/bus/vectrex/slot.h b/src/devices/bus/vectrex/slot.h
index 6c75e677a19..5c0183327ae 100644
--- a/src/devices/bus/vectrex/slot.h
+++ b/src/devices/bus/vectrex/slot.h
@@ -66,7 +66,7 @@ public:
virtual void device_config_complete() override;
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override {}
virtual const software_list_loader &get_software_list_loader() const override { return rom_software_list_loader::instance(); }
diff --git a/src/devices/bus/vic10/exp.cpp b/src/devices/bus/vic10/exp.cpp
index dedf6e81053..d9a5c414768 100644
--- a/src/devices/bus/vic10/exp.cpp
+++ b/src/devices/bus/vic10/exp.cpp
@@ -109,7 +109,7 @@ void vic10_expansion_slot_device::device_reset()
// call_load -
//-------------------------------------------------
-bool vic10_expansion_slot_device::call_load()
+image_init_result vic10_expansion_slot_device::call_load()
{
if (m_card)
{
@@ -162,7 +162,7 @@ bool vic10_expansion_slot_device::call_load()
}
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/devices/bus/vic10/exp.h b/src/devices/bus/vic10/exp.h
index 5723f0a67fd..4221991e124 100644
--- a/src/devices/bus/vic10/exp.h
+++ b/src/devices/bus/vic10/exp.h
@@ -119,7 +119,7 @@ protected:
virtual void device_reset() override;
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual const software_list_loader &get_software_list_loader() const override { return rom_software_list_loader::instance(); }
virtual iodevice_t image_type() const override { return IO_CARTSLOT; }
diff --git a/src/devices/bus/vic20/exp.cpp b/src/devices/bus/vic20/exp.cpp
index 0ced76c50b5..1f560f62b5d 100644
--- a/src/devices/bus/vic20/exp.cpp
+++ b/src/devices/bus/vic20/exp.cpp
@@ -107,7 +107,7 @@ void vic20_expansion_slot_device::device_reset()
// call_load -
//-------------------------------------------------
-bool vic20_expansion_slot_device::call_load()
+image_init_result vic20_expansion_slot_device::call_load()
{
if (m_card)
{
@@ -134,7 +134,7 @@ bool vic20_expansion_slot_device::call_load()
case 0x7000: fread(m_card->m_blk3, 0x2000, 0x1000); break;
case 0xa000: fread(m_card->m_blk5, 0x2000); break;
case 0xb000: fread(m_card->m_blk5, 0x2000, 0x1000); break;
- default: return IMAGE_INIT_FAIL;
+ default: return image_init_result::FAIL;
}
}
}
@@ -147,7 +147,7 @@ bool vic20_expansion_slot_device::call_load()
}
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/devices/bus/vic20/exp.h b/src/devices/bus/vic20/exp.h
index 38cbad86fad..1bd6092e400 100644
--- a/src/devices/bus/vic20/exp.h
+++ b/src/devices/bus/vic20/exp.h
@@ -110,7 +110,7 @@ protected:
virtual void device_reset() override;
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual const software_list_loader &get_software_list_loader() const override { return rom_software_list_loader::instance(); }
virtual iodevice_t image_type() const override { return IO_CARTSLOT; }
diff --git a/src/devices/bus/vidbrain/exp.cpp b/src/devices/bus/vidbrain/exp.cpp
index ef7355fc103..183d2f590ff 100644
--- a/src/devices/bus/vidbrain/exp.cpp
+++ b/src/devices/bus/vidbrain/exp.cpp
@@ -112,7 +112,7 @@ void videobrain_expansion_slot_device::device_start()
// call_load -
//-------------------------------------------------
-bool videobrain_expansion_slot_device::call_load()
+image_init_result videobrain_expansion_slot_device::call_load()
{
if (m_cart)
{
@@ -134,7 +134,7 @@ bool videobrain_expansion_slot_device::call_load()
}
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/devices/bus/vidbrain/exp.h b/src/devices/bus/vidbrain/exp.h
index d7c126d788a..f662dd7cfa7 100644
--- a/src/devices/bus/vidbrain/exp.h
+++ b/src/devices/bus/vidbrain/exp.h
@@ -135,7 +135,7 @@ protected:
virtual void device_start() override;
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual const software_list_loader &get_software_list_loader() const override { return rom_software_list_loader::instance(); }
virtual iodevice_t image_type() const override { return IO_CARTSLOT; }
diff --git a/src/devices/bus/wswan/slot.cpp b/src/devices/bus/wswan/slot.cpp
index e9dd3f899a3..ea075b42cc4 100644
--- a/src/devices/bus/wswan/slot.cpp
+++ b/src/devices/bus/wswan/slot.cpp
@@ -160,7 +160,7 @@ static const char *ws_get_slot(int type)
call load
-------------------------------------------------*/
-bool ws_cart_slot_device::call_load()
+image_init_result ws_cart_slot_device::call_load()
{
if (m_cart)
{
@@ -223,7 +223,7 @@ bool ws_cart_slot_device::call_load()
internal_header_logging(ROM, ((size >> 16) - 1) << 16, size);
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
/*-------------------------------------------------
diff --git a/src/devices/bus/wswan/slot.h b/src/devices/bus/wswan/slot.h
index cb2f903ecc6..72036eab9ca 100644
--- a/src/devices/bus/wswan/slot.h
+++ b/src/devices/bus/wswan/slot.h
@@ -74,7 +74,7 @@ public:
virtual void device_config_complete() override;
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override;
virtual const software_list_loader &get_software_list_loader() const override { return rom_software_list_loader::instance(); }
diff --git a/src/devices/bus/z88/z88.cpp b/src/devices/bus/z88/z88.cpp
index 5dfccbf6832..036aa7c4134 100644
--- a/src/devices/bus/z88/z88.cpp
+++ b/src/devices/bus/z88/z88.cpp
@@ -116,7 +116,7 @@ void z88cart_slot_device::device_timer(emu_timer &timer, device_timer_id id, int
call load
-------------------------------------------------*/
-bool z88cart_slot_device::call_load()
+image_init_result z88cart_slot_device::call_load()
{
if (m_cart)
{
@@ -137,7 +137,7 @@ bool z88cart_slot_device::call_load()
}
}
else
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
// open the flap
@@ -146,7 +146,7 @@ bool z88cart_slot_device::call_load()
// setup the timer for close the flap
m_flp_timer->adjust(CLOSE_FLAP_TIME);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/devices/bus/z88/z88.h b/src/devices/bus/z88/z88.h
index 9f225c4a7a7..60dfa2f924c 100644
--- a/src/devices/bus/z88/z88.h
+++ b/src/devices/bus/z88/z88.h
@@ -94,7 +94,7 @@ public:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override;
virtual const software_list_loader &get_software_list_loader() const override { return rom_software_list_loader::instance(); }
diff --git a/src/devices/imagedev/bitbngr.cpp b/src/devices/imagedev/bitbngr.cpp
index 79e4dd0df36..18842cb8005 100644
--- a/src/devices/imagedev/bitbngr.cpp
+++ b/src/devices/imagedev/bitbngr.cpp
@@ -82,16 +82,16 @@ void bitbanger_device::device_config_complete(void)
call_load
-------------------------------------------------*/
-bool bitbanger_device::call_load(void)
+image_init_result bitbanger_device::call_load(void)
{
/* we don't need to do anything special */
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
-bool bitbanger_device::call_create(int format_type, util::option_resolution *format_options)
+image_init_result bitbanger_device::call_create(int format_type, util::option_resolution *format_options)
{
/* we don't need to do anything special */
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
/*-------------------------------------------------
diff --git a/src/devices/imagedev/bitbngr.h b/src/devices/imagedev/bitbngr.h
index 5929cc62034..0a67a731bf7 100644
--- a/src/devices/imagedev/bitbngr.h
+++ b/src/devices/imagedev/bitbngr.h
@@ -17,8 +17,8 @@ public:
bitbanger_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
// image-level overrides
- virtual bool call_load() override;
- virtual bool call_create(int format_type, util::option_resolution *format_options) override;
+ virtual image_init_result call_load() override;
+ virtual image_init_result call_create(int format_type, util::option_resolution *format_options) override;
virtual void call_unload() override;
// image device
diff --git a/src/devices/imagedev/cassette.cpp b/src/devices/imagedev/cassette.cpp
index d358533497c..57b7068d49a 100644
--- a/src/devices/imagedev/cassette.cpp
+++ b/src/devices/imagedev/cassette.cpp
@@ -76,7 +76,8 @@ bool cassette_image_device::is_motor_on()
return false;
if ((m_state & CASSETTE_MASK_MOTOR) != CASSETTE_MOTOR_ENABLED)
return false;
- return true;
+ else
+ return true;
}
@@ -250,17 +251,17 @@ void cassette_image_device::device_start()
m_value = 0;
}
-bool cassette_image_device::call_create(int format_type, util::option_resolution *format_options)
+image_init_result cassette_image_device::call_create(int format_type, util::option_resolution *format_options)
{
return internal_load(true);
}
-bool cassette_image_device::call_load()
+image_init_result cassette_image_device::call_load()
{
return internal_load(false);
}
-bool cassette_image_device::internal_load(bool is_create)
+image_init_result cassette_image_device::internal_load(bool is_create)
{
casserr_t err;
int cassette_flags;
@@ -307,7 +308,7 @@ bool cassette_image_device::internal_load(bool is_create)
m_speed = 1;
m_direction = 1;
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
error:
image_error_t imgerr = IMAGE_ERROR_UNSPECIFIED;
@@ -330,7 +331,7 @@ error:
break;
}
image->seterror(imgerr, "" );
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
diff --git a/src/devices/imagedev/cassette.h b/src/devices/imagedev/cassette.h
index 84d1b9ac507..1e6198ddeed 100644
--- a/src/devices/imagedev/cassette.h
+++ b/src/devices/imagedev/cassette.h
@@ -55,8 +55,8 @@ public:
static void static_set_interface(device_t &device, const char *_interface) { downcast<cassette_image_device &>(device).m_interface = _interface; }
// image-level overrides
- virtual bool call_load() override;
- virtual bool call_create(int format_type, util::option_resolution *format_options) override;
+ virtual image_init_result call_load() override;
+ virtual image_init_result call_create(int format_type, util::option_resolution *format_options) override;
virtual void call_unload() override;
virtual std::string call_display() override;
virtual const software_list_loader &get_software_list_loader() const override { return image_software_list_loader::instance(); }
@@ -111,7 +111,7 @@ private:
cassette_state m_default_state;
const char * m_interface;
- bool internal_load(bool is_create);
+ image_init_result internal_load(bool is_create);
};
// device type definition
diff --git a/src/devices/imagedev/chd_cd.cpp b/src/devices/imagedev/chd_cd.cpp
index 655e03dfe23..4165886a694 100644
--- a/src/devices/imagedev/chd_cd.cpp
+++ b/src/devices/imagedev/chd_cd.cpp
@@ -98,7 +98,7 @@ void cdrom_image_device::device_stop()
m_self_chd.close();
}
-bool cdrom_image_device::call_load()
+image_init_result cdrom_image_device::call_load()
{
chd_error err = (chd_error)0;
chd_file *chd = nullptr;
@@ -127,14 +127,14 @@ bool cdrom_image_device::call_load()
if ( ! m_cdrom_handle )
goto error;
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
error:
if ( chd && chd == &m_self_chd )
m_self_chd.close( );
if ( err )
seterror( IMAGE_ERROR_UNSPECIFIED, chd_file::error_string( err ) );
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
void cdrom_image_device::call_unload()
diff --git a/src/devices/imagedev/chd_cd.h b/src/devices/imagedev/chd_cd.h
index 5b64a0f4af8..02d39071604 100644
--- a/src/devices/imagedev/chd_cd.h
+++ b/src/devices/imagedev/chd_cd.h
@@ -31,7 +31,7 @@ public:
static void static_set_interface(device_t &device, const char *_interface) { downcast<cdrom_image_device &>(device).m_interface = _interface; }
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override;
virtual const software_list_loader &get_software_list_loader() const override { return rom_software_list_loader::instance(); }
diff --git a/src/devices/imagedev/diablo.cpp b/src/devices/imagedev/diablo.cpp
index a47451a1c47..413d4c6b9b5 100644
--- a/src/devices/imagedev/diablo.cpp
+++ b/src/devices/imagedev/diablo.cpp
@@ -93,9 +93,9 @@ void diablo_image_device::device_stop()
hard_disk_close(m_hard_disk_handle);
}
-bool diablo_image_device::call_load()
+image_init_result diablo_image_device::call_load()
{
- int our_result;
+ image_init_result our_result;
our_result = internal_load_dsk();
/* Check if there is an image_load callback defined */
@@ -108,7 +108,7 @@ bool diablo_image_device::call_load()
}
-bool diablo_image_device::call_create(int create_format, util::option_resolution *create_args)
+image_init_result diablo_image_device::call_create(int create_format, util::option_resolution *create_args)
{
int err;
UINT32 sectorsize, hunksize;
@@ -139,7 +139,7 @@ bool diablo_image_device::call_create(int create_format, util::option_resolution
return internal_load_dsk();
error:
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
void diablo_image_device::call_unload()
@@ -204,7 +204,7 @@ static chd_error open_disk_diff(emu_options &options, const char *name, chd_file
return CHDERR_FILE_NOT_FOUND;
}
-int diablo_image_device::internal_load_dsk()
+image_init_result diablo_image_device::internal_load_dsk()
{
chd_error err = CHDERR_NONE;
@@ -244,7 +244,7 @@ int diablo_image_device::internal_load_dsk()
/* open the hard disk file */
m_hard_disk_handle = hard_disk_open(m_chd);
if (m_hard_disk_handle != nullptr)
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
/* if we had an error, close out the CHD */
@@ -253,7 +253,7 @@ int diablo_image_device::internal_load_dsk()
m_chd = nullptr;
seterror(IMAGE_ERROR_UNSPECIFIED, chd_file::error_string(err));
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
/*************************************
diff --git a/src/devices/imagedev/diablo.h b/src/devices/imagedev/diablo.h
index 16cd5bf65e6..806a825a1fe 100644
--- a/src/devices/imagedev/diablo.h
+++ b/src/devices/imagedev/diablo.h
@@ -30,8 +30,8 @@ public:
static void static_set_interface(device_t &device, const char *_interface) { downcast<diablo_image_device &>(device).m_interface = _interface; }
// image-level overrides
- virtual bool call_load() override;
- virtual bool call_create(int create_format, util::option_resolution *create_args) override;
+ virtual image_init_result call_load() override;
+ virtual image_init_result call_create(int create_format, util::option_resolution *create_args) override;
virtual void call_unload() override;
virtual const software_list_loader &get_software_list_loader() const override { return rom_software_list_loader::instance(); }
@@ -56,7 +56,7 @@ protected:
virtual void device_start() override;
virtual void device_stop() override;
- int internal_load_dsk();
+ image_init_result internal_load_dsk();
chd_file *m_chd;
chd_file m_origchd; /* handle to the original CHD */
diff --git a/src/devices/imagedev/flopdrv.cpp b/src/devices/imagedev/flopdrv.cpp
index ab844a1f255..4137c378060 100644
--- a/src/devices/imagedev/flopdrv.cpp
+++ b/src/devices/imagedev/flopdrv.cpp
@@ -417,7 +417,7 @@ void legacy_floppy_image_device::floppy_drive_set_controller(device_t *controlle
m_controller = controller;
}
-int legacy_floppy_image_device::internal_floppy_device_load(bool is_create, int create_format, util::option_resolution *create_args)
+image_init_result legacy_floppy_image_device::internal_floppy_device_load(bool is_create, int create_format, util::option_resolution *create_args)
{
floperr_t err;
const struct FloppyFormat *floppy_options;
@@ -454,7 +454,7 @@ int legacy_floppy_image_device::internal_floppy_device_load(bool is_create, int
if (m_load_proc)
m_load_proc(*this, is_create);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
error:
for (i = 0; i < ARRAY_LENGTH(errmap); i++)
@@ -462,7 +462,7 @@ error:
if (err == errmap[i].ferr)
seterror(errmap[i].ierr, errmap[i].message);
}
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
TIMER_CALLBACK_MEMBER( legacy_floppy_image_device::set_wpt )
@@ -832,14 +832,14 @@ void legacy_floppy_image_device::device_config_complete()
update_names();
}
-bool legacy_floppy_image_device::call_create(int format_type, util::option_resolution *format_options)
+image_init_result legacy_floppy_image_device::call_create(int format_type, util::option_resolution *format_options)
{
return internal_floppy_device_load(true, format_type, format_options);
}
-bool legacy_floppy_image_device::call_load()
+image_init_result legacy_floppy_image_device::call_load()
{
- int retVal = internal_floppy_device_load(false, -1, nullptr);
+ image_init_result retVal = internal_floppy_device_load(false, -1, nullptr);
/* push disk halfway into drive */
m_wpt = CLEAR_LINE;
diff --git a/src/devices/imagedev/flopdrv.h b/src/devices/imagedev/flopdrv.h
index 800a0b878c2..9d571c9f390 100644
--- a/src/devices/imagedev/flopdrv.h
+++ b/src/devices/imagedev/flopdrv.h
@@ -99,9 +99,9 @@ public:
static void static_set_floppy_config(device_t &device, const floppy_interface *config) { downcast<legacy_floppy_image_device &>(device).m_config = config; }
template<class _Object> static devcb_base &set_out_idx_func(device_t &device, _Object object) { return downcast<legacy_floppy_image_device &>(device).m_out_idx_func.set_callback(object); }
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual const software_list_loader &get_software_list_loader() const override { return image_software_list_loader::instance(); }
- virtual bool call_create(int format_type, util::option_resolution *format_options) override;
+ virtual image_init_result call_create(int format_type, util::option_resolution *format_options) override;
virtual void call_unload() override;
virtual iodevice_t image_type() const override { return IO_FLOPPY; }
@@ -162,7 +162,7 @@ private:
TIMER_CALLBACK_MEMBER(floppy_drive_index_callback);
void floppy_drive_init();
void floppy_drive_index_func();
- int internal_floppy_device_load(bool is_create, int create_format, util::option_resolution *create_args);
+ image_init_result internal_floppy_device_load(bool is_create, int create_format, util::option_resolution *create_args);
TIMER_CALLBACK_MEMBER( set_wpt );
protected:
diff --git a/src/devices/imagedev/floppy.cpp b/src/devices/imagedev/floppy.cpp
index 30d535c28fa..65bfb82d4e3 100644
--- a/src/devices/imagedev/floppy.cpp
+++ b/src/devices/imagedev/floppy.cpp
@@ -387,7 +387,7 @@ floppy_image_format_t *floppy_image_device::identify(std::string filename)
return best_format;
}
-bool floppy_image_device::call_load()
+image_init_result floppy_image_device::call_load()
{
io_generic io;
@@ -408,7 +408,7 @@ bool floppy_image_device::call_load()
if(!best_format)
{
seterror(IMAGE_ERROR_INVALIDIMAGE, "Unable to identify the image format");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
image = global_alloc(floppy_image(tracks, sides, form_factor));
@@ -417,7 +417,7 @@ bool floppy_image_device::call_load()
seterror(IMAGE_ERROR_UNSUPPORTED, "Incompatible image format or corrupted data");
global_free(image);
image = nullptr;
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
output_format = is_readonly() ? nullptr : best_format;
@@ -444,7 +444,7 @@ bool floppy_image_device::call_load()
} else if(!mon)
ready_counter = 2;
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
void floppy_image_device::call_unload()
@@ -479,7 +479,7 @@ void floppy_image_device::call_unload()
}
}
-bool floppy_image_device::call_create(int format_type, util::option_resolution *format_options)
+image_init_result floppy_image_device::call_create(int format_type, util::option_resolution *format_options)
{
image = global_alloc(floppy_image(tracks, sides, form_factor));
output_format = nullptr;
@@ -502,10 +502,10 @@ bool floppy_image_device::call_create(int format_type, util::option_resolution *
if (output_format == nullptr)
{
seterror(IMAGE_ERROR_INVALIDIMAGE, "Unable to identify the image format");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
/* motor on, active low */
diff --git a/src/devices/imagedev/floppy.h b/src/devices/imagedev/floppy.h
index e0992b183a0..ec5e4b983e2 100644
--- a/src/devices/imagedev/floppy.h
+++ b/src/devices/imagedev/floppy.h
@@ -61,7 +61,7 @@ class floppy_image_device : public device_t,
public device_slot_card_interface
{
public:
- typedef delegate<int (floppy_image_device *)> load_cb;
+ typedef delegate<image_init_result (floppy_image_device *)> load_cb;
typedef delegate<void (floppy_image_device *)> unload_cb;
typedef delegate<void (floppy_image_device *, int)> index_pulse_cb;
typedef delegate<void (floppy_image_device *, int)> ready_cb;
@@ -80,9 +80,9 @@ public:
void set_rpm(float rpm);
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override;
- virtual bool call_create(int format_type, util::option_resolution *format_options) override;
+ virtual image_init_result call_create(int format_type, util::option_resolution *format_options) override;
virtual const software_list_loader &get_software_list_loader() const override { return image_software_list_loader::instance(); }
virtual const char *image_interface() const override = 0;
virtual iodevice_t image_type() const override { return IO_FLOPPY; }
diff --git a/src/devices/imagedev/harddriv.cpp b/src/devices/imagedev/harddriv.cpp
index 588ef862c4d..3e7cb789552 100644
--- a/src/devices/imagedev/harddriv.cpp
+++ b/src/devices/imagedev/harddriv.cpp
@@ -116,9 +116,9 @@ void harddisk_image_device::device_stop()
hard_disk_close(m_hard_disk_handle);
}
-bool harddisk_image_device::call_load()
+image_init_result harddisk_image_device::call_load()
{
- int our_result;
+ image_init_result our_result;
our_result = internal_load_hd();
@@ -132,7 +132,7 @@ bool harddisk_image_device::call_load()
}
-bool harddisk_image_device::call_create(int create_format, util::option_resolution *create_args)
+image_init_result harddisk_image_device::call_create(int create_format, util::option_resolution *create_args)
{
int err;
UINT32 sectorsize, hunksize;
@@ -163,7 +163,7 @@ bool harddisk_image_device::call_create(int create_format, util::option_resoluti
return internal_load_hd();
error:
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
void harddisk_image_device::call_unload()
@@ -228,7 +228,7 @@ static chd_error open_disk_diff(emu_options &options, const char *name, chd_file
return CHDERR_FILE_NOT_FOUND;
}
-int harddisk_image_device::internal_load_hd()
+image_init_result harddisk_image_device::internal_load_hd()
{
chd_error err = CHDERR_NONE;
@@ -268,7 +268,7 @@ int harddisk_image_device::internal_load_hd()
/* open the hard disk file */
m_hard_disk_handle = hard_disk_open(m_chd);
if (m_hard_disk_handle != nullptr)
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
/* if we had an error, close out the CHD */
@@ -277,7 +277,7 @@ int harddisk_image_device::internal_load_hd()
m_chd = nullptr;
seterror(IMAGE_ERROR_UNSPECIFIED, chd_file::error_string(err));
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
/*************************************
diff --git a/src/devices/imagedev/harddriv.h b/src/devices/imagedev/harddriv.h
index ae68e9ac26d..583a5f53e9f 100644
--- a/src/devices/imagedev/harddriv.h
+++ b/src/devices/imagedev/harddriv.h
@@ -32,8 +32,8 @@ public:
static void static_set_interface(device_t &device, const char *_interface) { downcast<harddisk_image_device &>(device).m_interface = _interface; }
// image-level overrides
- virtual bool call_load() override;
- virtual bool call_create(int create_format, util::option_resolution *create_args) override;
+ virtual image_init_result call_load() override;
+ virtual image_init_result call_create(int create_format, util::option_resolution *create_args) override;
virtual void call_unload() override;
virtual const software_list_loader &get_software_list_loader() const override { return rom_software_list_loader::instance(); }
@@ -60,7 +60,7 @@ protected:
virtual void device_start() override;
virtual void device_stop() override;
- int internal_load_hd();
+ image_init_result internal_load_hd();
chd_file *m_chd;
chd_file m_origchd; /* handle to the original CHD */
diff --git a/src/devices/imagedev/mfmhd.cpp b/src/devices/imagedev/mfmhd.cpp
index 843e3510f29..d7e5306f57f 100644
--- a/src/devices/imagedev/mfmhd.cpp
+++ b/src/devices/imagedev/mfmhd.cpp
@@ -390,16 +390,16 @@ void mfm_harddisk_device::device_stop()
because we need the number of cylinders, and for generic drives we get
them from the CHD.
*/
-bool mfm_harddisk_device::call_load()
+image_init_result mfm_harddisk_device::call_load()
{
- bool loaded = harddisk_image_device::call_load();
+ image_init_result loaded = harddisk_image_device::call_load();
std::string devtag(tag());
devtag += ":format";
m_format->set_tag(devtag);
- if (loaded==IMAGE_INIT_PASS)
+ if (loaded==image_init_result::PASS)
{
std::string metadata;
chd_file* chdfile = get_chd_file();
@@ -407,7 +407,7 @@ bool mfm_harddisk_device::call_load()
if (chdfile==nullptr)
{
logerror("%s: chdfile is null\n", tag());
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
// Read the hard disk metadata
@@ -415,7 +415,7 @@ bool mfm_harddisk_device::call_load()
if (state != CHDERR_NONE)
{
logerror("%s: Failed to read CHD metadata\n", tag());
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
if (TRACE_CONFIG) logerror("%s: CHD metadata: %s\n", tag(), metadata.c_str());
@@ -428,7 +428,7 @@ bool mfm_harddisk_device::call_load()
if (sscanf(metadata.c_str(), HARD_DISK_METADATA_FORMAT, &param.cylinders, &param.heads, &param.sectors_per_track, &param.sector_size) != 4)
{
logerror("%s: Invalid CHD metadata\n", tag());
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
if (TRACE_CONFIG) logerror("%s: CHD image has geometry cyl=%d, head=%d, sect=%d, size=%d\n", tag(), param.cylinders, param.heads, param.sectors_per_track, param.sector_size);
diff --git a/src/devices/imagedev/mfmhd.h b/src/devices/imagedev/mfmhd.h
index fe55ad12989..ed371f7d4c1 100644
--- a/src/devices/imagedev/mfmhd.h
+++ b/src/devices/imagedev/mfmhd.h
@@ -88,7 +88,7 @@ public:
// Head select
void headsel_w(int head) { m_current_head = head & 0x0f; }
- bool call_load() override;
+ image_init_result call_load() override;
void call_unload() override;
// Tells us the time when the track ends (next index pulse). Needed by the controller.
diff --git a/src/devices/imagedev/midiin.cpp b/src/devices/imagedev/midiin.cpp
index ae5bdb81eb8..3b05a9c90ad 100644
--- a/src/devices/imagedev/midiin.cpp
+++ b/src/devices/imagedev/midiin.cpp
@@ -103,7 +103,7 @@ void midiin_device::device_timer(emu_timer &timer, device_timer_id id, int param
call_load
-------------------------------------------------*/
-bool midiin_device::call_load(void)
+image_init_result midiin_device::call_load(void)
{
m_midi = machine().osd().create_midi_device();
@@ -111,12 +111,12 @@ bool midiin_device::call_load(void)
{
global_free(m_midi);
m_midi = nullptr;
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
m_timer->adjust(attotime::from_hz(1500), 0, attotime::from_hz(1500));
m_timer->enable(true);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
/*-------------------------------------------------
diff --git a/src/devices/imagedev/midiin.h b/src/devices/imagedev/midiin.h
index c0279f9822d..d14cb9c0680 100644
--- a/src/devices/imagedev/midiin.h
+++ b/src/devices/imagedev/midiin.h
@@ -31,7 +31,7 @@ public:
template<class _Object> static devcb_base &set_input_callback(device_t &device, _Object object) { return downcast<midiin_device &>(device).m_input_cb.set_callback(object); }
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override;
// image device
diff --git a/src/devices/imagedev/midiout.cpp b/src/devices/imagedev/midiout.cpp
index a8651c40b49..d1509080f59 100644
--- a/src/devices/imagedev/midiout.cpp
+++ b/src/devices/imagedev/midiout.cpp
@@ -65,7 +65,7 @@ void midiout_device::device_config_complete(void)
call_load
-------------------------------------------------*/
-bool midiout_device::call_load(void)
+image_init_result midiout_device::call_load(void)
{
m_midi = machine().osd().create_midi_device();
@@ -73,10 +73,10 @@ bool midiout_device::call_load(void)
{
global_free(m_midi);
m_midi = nullptr;
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
/*-------------------------------------------------
diff --git a/src/devices/imagedev/midiout.h b/src/devices/imagedev/midiout.h
index 096bece8fef..062cf662630 100644
--- a/src/devices/imagedev/midiout.h
+++ b/src/devices/imagedev/midiout.h
@@ -34,7 +34,7 @@ public:
midiout_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override;
// image device
diff --git a/src/devices/imagedev/printer.cpp b/src/devices/imagedev/printer.cpp
index 0597656740f..25c3b0f7330 100644
--- a/src/devices/imagedev/printer.cpp
+++ b/src/devices/imagedev/printer.cpp
@@ -80,7 +80,7 @@ void printer_image_device::output(UINT8 data)
DEVICE_IMAGE_CREATE( printer )
-------------------------------------------------*/
-bool printer_image_device::call_create(int format_type, util::option_resolution *format_options)
+image_init_result printer_image_device::call_create(int format_type, util::option_resolution *format_options)
{
return call_load();
}
@@ -88,14 +88,14 @@ bool printer_image_device::call_create(int format_type, util::option_resolution
/*-------------------------------------------------
DEVICE_IMAGE_LOAD( printer )
-------------------------------------------------*/
-bool printer_image_device::call_load()
+image_init_result printer_image_device::call_load()
{
/* send notify that the printer is now online */
if (!m_online_cb.isnull())
m_online_cb(TRUE);
/* we don't need to do anything special */
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/devices/imagedev/printer.h b/src/devices/imagedev/printer.h
index d32bbeb8786..841d0fd400c 100644
--- a/src/devices/imagedev/printer.h
+++ b/src/devices/imagedev/printer.h
@@ -30,8 +30,8 @@ public:
template<class _Object> static devcb_base &set_online_callback(device_t &device, _Object object) { return downcast<printer_image_device &>(device).m_online_cb.set_callback(object); }
// image-level overrides
- virtual bool call_load() override;
- virtual bool call_create(int format_type, util::option_resolution *format_options) override;
+ virtual image_init_result call_load() override;
+ virtual image_init_result call_create(int format_type, util::option_resolution *format_options) override;
virtual void call_unload() override;
// image device
diff --git a/src/devices/imagedev/snapquik.cpp b/src/devices/imagedev/snapquik.cpp
index 1c815aa351e..6449cbfb872 100644
--- a/src/devices/imagedev/snapquik.cpp
+++ b/src/devices/imagedev/snapquik.cpp
@@ -82,11 +82,11 @@ void snapshot_image_device::device_start()
/*-------------------------------------------------
call_load
-------------------------------------------------*/
-bool snapshot_image_device::call_load()
+image_init_result snapshot_image_device::call_load()
{
/* adjust the timer */
m_timer->adjust(attotime(m_delay_seconds, m_delay_attoseconds),0);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
// device type definition
diff --git a/src/devices/imagedev/snapquik.h b/src/devices/imagedev/snapquik.h
index 72ac145eba4..e14b1d6da6a 100644
--- a/src/devices/imagedev/snapquik.h
+++ b/src/devices/imagedev/snapquik.h
@@ -11,7 +11,7 @@
#ifndef __SNAPQUIK_H__
#define __SNAPQUIK_H__
-typedef delegate<int (device_image_interface &,const char *, int)> snapquick_load_delegate;
+typedef delegate<image_init_result (device_image_interface &,const char *, int)> snapquick_load_delegate;
// ======================> snapshot_image_device
class snapshot_image_device : public device_t,
@@ -26,7 +26,7 @@ public:
static void static_set_interface(device_t &device, const char *_interface) { downcast<snapshot_image_device &>(device).m_interface = _interface; }
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual const software_list_loader &get_software_list_loader() const override { return image_software_list_loader::instance(); }
virtual iodevice_t image_type() const override { return IO_SNAPSHOT; }
@@ -75,14 +75,14 @@ extern const device_type QUICKLOAD;
***************************************************************************/
#define SNAPSHOT_LOAD_MEMBER_NAME(_name) snapshot_load_##_name
#define SNAPSHOT_LOAD_NAME(_class,_name) _class::SNAPSHOT_LOAD_MEMBER_NAME(_name)
-#define DECLARE_SNAPSHOT_LOAD_MEMBER(_name) int SNAPSHOT_LOAD_MEMBER_NAME(_name)(device_image_interface &image, const char *file_type, int snapshot_size)
-#define SNAPSHOT_LOAD_MEMBER(_class,_name) int SNAPSHOT_LOAD_NAME(_class,_name)(device_image_interface &image, const char *file_type, int snapshot_size)
+#define DECLARE_SNAPSHOT_LOAD_MEMBER(_name) image_init_result SNAPSHOT_LOAD_MEMBER_NAME(_name)(device_image_interface &image, const char *file_type, int snapshot_size)
+#define SNAPSHOT_LOAD_MEMBER(_class,_name) image_init_result SNAPSHOT_LOAD_NAME(_class,_name)(device_image_interface &image, const char *file_type, int snapshot_size)
#define SNAPSHOT_LOAD_DELEGATE(_class,_name) snapquick_load_delegate(&SNAPSHOT_LOAD_NAME(_class,_name),#_class "::snapshot_load_" #_name, downcast<_class *>(device->owner()))
#define QUICKLOAD_LOAD_MEMBER_NAME(_name) quickload_load##_name
#define QUICKLOAD_LOAD_NAME(_class,_name) _class::QUICKLOAD_LOAD_MEMBER_NAME(_name)
-#define DECLARE_QUICKLOAD_LOAD_MEMBER(_name) int QUICKLOAD_LOAD_MEMBER_NAME(_name)(device_image_interface &image, const char *file_type, int quickload_size)
-#define QUICKLOAD_LOAD_MEMBER(_class,_name) int QUICKLOAD_LOAD_NAME(_class,_name)(device_image_interface &image, const char *file_type, int quickload_size)
+#define DECLARE_QUICKLOAD_LOAD_MEMBER(_name) image_init_result QUICKLOAD_LOAD_MEMBER_NAME(_name)(device_image_interface &image, const char *file_type, int quickload_size)
+#define QUICKLOAD_LOAD_MEMBER(_class,_name) image_init_result QUICKLOAD_LOAD_NAME(_class,_name)(device_image_interface &image, const char *file_type, int quickload_size)
#define QUICKLOAD_LOAD_DELEGATE(_class,_name) snapquick_load_delegate(&QUICKLOAD_LOAD_NAME(_class,_name),#_class "::quickload_load_" #_name, downcast<_class *>(device->owner()))
#define MCFG_SNAPSHOT_ADD(_tag, _class, _load, _file_extensions, _delay) \
diff --git a/src/devices/machine/appldriv.cpp b/src/devices/machine/appldriv.cpp
index 139da446140..c5b86d071e2 100644
--- a/src/devices/machine/appldriv.cpp
+++ b/src/devices/machine/appldriv.cpp
@@ -320,9 +320,9 @@ void apple525_floppy_image_device::device_start()
memset(track_data, 0, sizeof(track_data));
}
-bool apple525_floppy_image_device::call_load()
+image_init_result apple525_floppy_image_device::call_load()
{
- int result = legacy_floppy_image_device::call_load();
+ image_init_result result = legacy_floppy_image_device::call_load();
floppy_drive_seek(-999);
floppy_drive_seek(+35/2);
return result;
diff --git a/src/devices/machine/appldriv.h b/src/devices/machine/appldriv.h
index f01c7b68217..b98d63f7748 100644
--- a/src/devices/machine/appldriv.h
+++ b/src/devices/machine/appldriv.h
@@ -29,7 +29,7 @@ public:
// construction/destruction
apple525_floppy_image_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override;
void set_params(int dividend, int divisor) { m_dividend = dividend; m_divisor = divisor;}
diff --git a/src/devices/machine/hp_taco.cpp b/src/devices/machine/hp_taco.cpp
index 87adeb15488..62f1924a4ea 100644
--- a/src/devices/machine/hp_taco.cpp
+++ b/src/devices/machine/hp_taco.cpp
@@ -1678,7 +1678,7 @@ void hp_taco_device::start_cmd_exec(UINT16 new_cmd_reg)
}
}
-bool hp_taco_device::internal_load(bool is_create)
+image_init_result hp_taco_device::internal_load(bool is_create)
{
device_reset();
@@ -1688,22 +1688,22 @@ bool hp_taco_device::internal_load(bool is_create)
} else if (!load_tape()) {
seterror(IMAGE_ERROR_INVALIDIMAGE , "Wrong format");
set_tape_present(false);
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
m_image_dirty = false;
set_tape_present(true);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
-bool hp_taco_device::call_load()
+image_init_result hp_taco_device::call_load()
{
LOG(("call_load\n"));
return internal_load(false);
}
-bool hp_taco_device::call_create(int format_type, util::option_resolution *format_options)
+image_init_result hp_taco_device::call_create(int format_type, util::option_resolution *format_options)
{
LOG(("call_create\n"));
return internal_load(true);
diff --git a/src/devices/machine/hp_taco.h b/src/devices/machine/hp_taco.h
index ffd8c928ed7..49cfeacd141 100644
--- a/src/devices/machine/hp_taco.h
+++ b/src/devices/machine/hp_taco.h
@@ -26,26 +26,26 @@ class hp_taco_device : public device_t ,
public device_image_interface
{
public:
- // construction/destruction
- hp_taco_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname);
- hp_taco_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
+ // construction/destruction
+ hp_taco_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname);
+ hp_taco_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
- // static configuration helpers
- template<class _Object> static devcb_base &set_irq_handler(device_t &device, _Object object) { return downcast<hp_taco_device &>(device).m_irq_handler.set_callback(object); }
- template<class _Object> static devcb_base &set_flg_handler(device_t &device, _Object object) { return downcast<hp_taco_device &>(device).m_flg_handler.set_callback(object); }
- template<class _Object> static devcb_base &set_sts_handler(device_t &device, _Object object) { return downcast<hp_taco_device &>(device).m_sts_handler.set_callback(object); }
+ // static configuration helpers
+ template<class _Object> static devcb_base &set_irq_handler(device_t &device, _Object object) { return downcast<hp_taco_device &>(device).m_irq_handler.set_callback(object); }
+ template<class _Object> static devcb_base &set_flg_handler(device_t &device, _Object object) { return downcast<hp_taco_device &>(device).m_flg_handler.set_callback(object); }
+ template<class _Object> static devcb_base &set_sts_handler(device_t &device, _Object object) { return downcast<hp_taco_device &>(device).m_sts_handler.set_callback(object); }
- // Register read/write
- DECLARE_WRITE16_MEMBER(reg_w);
- DECLARE_READ16_MEMBER(reg_r);
+ // Register read/write
+ DECLARE_WRITE16_MEMBER(reg_w);
+ DECLARE_READ16_MEMBER(reg_r);
- // Flag & status read
- DECLARE_READ_LINE_MEMBER(flg_r);
- DECLARE_READ_LINE_MEMBER(sts_r);
+ // Flag & status read
+ DECLARE_READ_LINE_MEMBER(flg_r);
+ DECLARE_READ_LINE_MEMBER(sts_r);
// device_image_interface overrides
- virtual bool call_load() override;
- virtual bool call_create(int format_type, util::option_resolution *format_options) override;
+ virtual image_init_result call_load() override;
+ virtual image_init_result call_create(int format_type, util::option_resolution *format_options) override;
virtual void call_unload() override;
virtual std::string call_display() override;
virtual iodevice_t image_type() const override { return IO_MAGTAPE; }
@@ -56,133 +56,133 @@ public:
virtual bool is_reset_on_load() const override { return false; }
virtual const char *file_extensions() const override;
- // Tape position, 1 unit = 1 inch / (968 * 1024)
- typedef INT32 tape_pos_t;
+ // Tape position, 1 unit = 1 inch / (968 * 1024)
+ typedef INT32 tape_pos_t;
- // Words stored on tape
- typedef UINT16 tape_word_t;
+ // Words stored on tape
+ typedef UINT16 tape_word_t;
protected:
// device-level overrides
virtual void device_config_complete() override;
- virtual void device_start() override;
- virtual void device_stop() override;
- virtual void device_reset() override;
- virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
+ virtual void device_start() override;
+ virtual void device_stop() override;
+ virtual void device_reset() override;
+ virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
private:
- // Storage of tracks: mapping from a tape position to word stored there
- typedef std::map<tape_pos_t , tape_word_t> tape_track_t;
-
- devcb_write_line m_irq_handler;
- devcb_write_line m_flg_handler;
- devcb_write_line m_sts_handler;
-
- // Registers
- UINT16 m_data_reg;
- bool m_data_reg_full;
- UINT16 m_cmd_reg;
- UINT16 m_status_reg;
- UINT16 m_tach_reg;
- tape_pos_t m_tach_reg_ref;
- bool m_tach_reg_frozen;
- UINT16 m_checksum_reg;
- bool m_clear_checksum_reg;
- UINT16 m_timing_reg;
-
- // State
- bool m_irq;
- bool m_flg;
- bool m_sts;
-
- // Command FSM state
- typedef enum {
- CMD_IDLE,
- CMD_INVERTING,
- CMD_PH0,
- CMD_PH1,
- CMD_PH2,
- CMD_END,
- CMD_STOPPING
- } cmd_state_t;
- cmd_state_t m_cmd_state;
-
- // Tape position & motion
- tape_pos_t m_tape_pos;
- attotime m_start_time; // Tape moving if != never
- bool m_tape_fwd;
- bool m_tape_fast;
-
- // Timers
- emu_timer *m_tape_timer;
- emu_timer *m_hole_timer;
+ // Storage of tracks: mapping from a tape position to word stored there
+ typedef std::map<tape_pos_t , tape_word_t> tape_track_t;
+
+ devcb_write_line m_irq_handler;
+ devcb_write_line m_flg_handler;
+ devcb_write_line m_sts_handler;
+
+ // Registers
+ UINT16 m_data_reg;
+ bool m_data_reg_full;
+ UINT16 m_cmd_reg;
+ UINT16 m_status_reg;
+ UINT16 m_tach_reg;
+ tape_pos_t m_tach_reg_ref;
+ bool m_tach_reg_frozen;
+ UINT16 m_checksum_reg;
+ bool m_clear_checksum_reg;
+ UINT16 m_timing_reg;
+
+ // State
+ bool m_irq;
+ bool m_flg;
+ bool m_sts;
+
+ // Command FSM state
+ typedef enum {
+ CMD_IDLE,
+ CMD_INVERTING,
+ CMD_PH0,
+ CMD_PH1,
+ CMD_PH2,
+ CMD_END,
+ CMD_STOPPING
+ } cmd_state_t;
+ cmd_state_t m_cmd_state;
+
+ // Tape position & motion
+ tape_pos_t m_tape_pos;
+ attotime m_start_time; // Tape moving if != never
+ bool m_tape_fwd;
+ bool m_tape_fast;
+
+ // Timers
+ emu_timer *m_tape_timer;
+ emu_timer *m_hole_timer;
emu_timer *m_timeout_timer;
- // Content of tape tracks
- tape_track_t m_tracks[ 2 ];
- bool m_image_dirty;
-
- // Reading & writing
- bool m_tape_wr;
- tape_pos_t m_rw_pos;
- UINT16 m_next_word;
- tape_track_t::iterator m_rd_it;
- bool m_rd_it_valid;
-
- // Gap detection
- tape_pos_t m_gap_detect_start;
-
- typedef enum {
- ADV_NO_MORE_DATA,
- ADV_CONT_DATA,
- ADV_DISCONT_DATA
- } adv_res_t;
-
- void clear_state(void);
- void irq_w(bool state);
- void set_error(bool state);
- bool is_braking(void) const;
- unsigned speed_to_tick_freq(void) const;
- bool pos_offset(tape_pos_t& pos , tape_pos_t offset) const;
- tape_pos_t current_tape_pos(void) const;
- void update_tape_pos(void);
- void update_tach_reg(void);
- void freeze_tach_reg(bool freeze);
- static void ensure_a_lt_b(tape_pos_t& a , tape_pos_t& b);
- tape_pos_t next_hole(void) const;
- attotime time_to_distance(tape_pos_t distance) const;
- attotime time_to_target(tape_pos_t target) const;
- attotime time_to_stopping_pos(void) const;
- bool start_tape_cmd(UINT16 cmd_reg , UINT16 must_be_1 , UINT16 must_be_0);
- void stop_tape(void);
- tape_track_t& current_track(void);
- static tape_pos_t word_length(tape_word_t w);
- static tape_pos_t word_end_pos(const tape_track_t::iterator& it);
- static void adjust_it(tape_track_t& track , tape_track_t::iterator& it , tape_pos_t pos);
- void write_word(tape_pos_t start , tape_word_t word , tape_pos_t& length);
- void write_gap(tape_pos_t a , tape_pos_t b);
- bool just_gap(tape_pos_t a , tape_pos_t b);
- tape_pos_t farthest_end(const tape_track_t::iterator& it) const;
- bool next_data(tape_track_t::iterator& it , tape_pos_t pos , bool inclusive);
- adv_res_t adv_it(tape_track_t::iterator& it);
- attotime fetch_next_wr_word(void);
- attotime time_to_rd_next_word(tape_pos_t& word_rd_pos);
- tape_pos_t min_gap_size(void) const;
- bool next_n_gap(tape_pos_t& pos , tape_track_t::iterator it , unsigned n_gaps , tape_pos_t min_gap);
- bool next_n_gap(tape_pos_t& pos , unsigned n_gaps , tape_pos_t min_gap);
- void clear_tape(void);
- void dump_sequence(tape_track_t::const_iterator it_start , unsigned n_words);
- void save_tape(void);
- bool load_track(tape_track_t& track);
- bool load_tape(void);
- void set_tape_present(bool present);
- attotime time_to_next_hole(void) const;
- attotime time_to_tach_pulses(void) const;
- void terminate_cmd_now(void);
+ // Content of tape tracks
+ tape_track_t m_tracks[ 2 ];
+ bool m_image_dirty;
+
+ // Reading & writing
+ bool m_tape_wr;
+ tape_pos_t m_rw_pos;
+ UINT16 m_next_word;
+ tape_track_t::iterator m_rd_it;
+ bool m_rd_it_valid;
+
+ // Gap detection
+ tape_pos_t m_gap_detect_start;
+
+ typedef enum {
+ ADV_NO_MORE_DATA,
+ ADV_CONT_DATA,
+ ADV_DISCONT_DATA
+ } adv_res_t;
+
+ void clear_state(void);
+ void irq_w(bool state);
+ void set_error(bool state);
+ bool is_braking(void) const;
+ unsigned speed_to_tick_freq(void) const;
+ bool pos_offset(tape_pos_t& pos , tape_pos_t offset) const;
+ tape_pos_t current_tape_pos(void) const;
+ void update_tape_pos(void);
+ void update_tach_reg(void);
+ void freeze_tach_reg(bool freeze);
+ static void ensure_a_lt_b(tape_pos_t& a , tape_pos_t& b);
+ tape_pos_t next_hole(void) const;
+ attotime time_to_distance(tape_pos_t distance) const;
+ attotime time_to_target(tape_pos_t target) const;
+ attotime time_to_stopping_pos(void) const;
+ bool start_tape_cmd(UINT16 cmd_reg , UINT16 must_be_1 , UINT16 must_be_0);
+ void stop_tape(void);
+ tape_track_t& current_track(void);
+ static tape_pos_t word_length(tape_word_t w);
+ static tape_pos_t word_end_pos(const tape_track_t::iterator& it);
+ static void adjust_it(tape_track_t& track , tape_track_t::iterator& it , tape_pos_t pos);
+ void write_word(tape_pos_t start , tape_word_t word , tape_pos_t& length);
+ void write_gap(tape_pos_t a , tape_pos_t b);
+ bool just_gap(tape_pos_t a , tape_pos_t b);
+ tape_pos_t farthest_end(const tape_track_t::iterator& it) const;
+ bool next_data(tape_track_t::iterator& it , tape_pos_t pos , bool inclusive);
+ adv_res_t adv_it(tape_track_t::iterator& it);
+ attotime fetch_next_wr_word(void);
+ attotime time_to_rd_next_word(tape_pos_t& word_rd_pos);
+ tape_pos_t min_gap_size(void) const;
+ bool next_n_gap(tape_pos_t& pos , tape_track_t::iterator it , unsigned n_gaps , tape_pos_t min_gap);
+ bool next_n_gap(tape_pos_t& pos , unsigned n_gaps , tape_pos_t min_gap);
+ void clear_tape(void);
+ void dump_sequence(tape_track_t::const_iterator it_start , unsigned n_words);
+ void save_tape(void);
+ bool load_track(tape_track_t& track);
+ bool load_tape(void);
+ void set_tape_present(bool present);
+ attotime time_to_next_hole(void) const;
+ attotime time_to_tach_pulses(void) const;
+ void terminate_cmd_now(void);
void set_data_timeout(bool long_timeout);
- void cmd_fsm(void);
- void start_cmd_exec(UINT16 new_cmd_reg);
- bool internal_load(bool is_create);
+ void cmd_fsm(void);
+ void start_cmd_exec(UINT16 new_cmd_reg);
+ image_init_result internal_load(bool is_create);
};
// device type definition
diff --git a/src/devices/machine/smartmed.cpp b/src/devices/machine/smartmed.cpp
index 9ba88c447fe..d541f7ca52b 100644
--- a/src/devices/machine/smartmed.cpp
+++ b/src/devices/machine/smartmed.cpp
@@ -130,7 +130,7 @@ void nand_device::device_start()
/*
Load a SmartMedia image
*/
-bool smartmedia_image_device::smartmedia_format_1()
+image_init_result smartmedia_image_device::smartmedia_format_1()
{
SM_disk_image_header custom_header;
int bytes_read;
@@ -138,12 +138,12 @@ bool smartmedia_image_device::smartmedia_format_1()
bytes_read = fread(&custom_header, sizeof(custom_header));
if (bytes_read != sizeof(custom_header))
{
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
if (custom_header.version > 1)
{
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
m_page_data_size = get_UINT32BE(custom_header.page_data_size);
@@ -186,7 +186,7 @@ bool smartmedia_image_device::smartmedia_format_1()
m_image_format = 1;
#endif
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
int smartmedia_image_device::detect_geometry( UINT8 id1, UINT8 id2)
@@ -224,7 +224,7 @@ int smartmedia_image_device::detect_geometry( UINT8 id1, UINT8 id2)
return result;
}
-bool smartmedia_image_device::smartmedia_format_2()
+image_init_result smartmedia_image_device::smartmedia_format_2()
{
disk_image_format_2_header custom_header;
int bytes_read, i, j;
@@ -232,17 +232,17 @@ bool smartmedia_image_device::smartmedia_format_2()
bytes_read = fread(&custom_header, sizeof(custom_header));
if (bytes_read != sizeof(custom_header))
{
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
if ((custom_header.data1[0] != 0xEC) && (custom_header.data1[0] != 0x98))
{
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
if (!detect_geometry(custom_header.data1[0], custom_header.data1[1]))
{
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
m_data_ptr = auto_alloc_array(machine(), UINT8, m_page_total_size*m_num_pages);
@@ -276,17 +276,17 @@ bool smartmedia_image_device::smartmedia_format_2()
m_image_format = 2;
#endif
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
-bool smartmedia_image_device::call_load()
+image_init_result smartmedia_image_device::call_load()
{
- int result;
+ image_init_result result;
UINT64 position;
// try format 1
position = ftell();
result = smartmedia_format_1();
- if (result != IMAGE_INIT_PASS)
+ if (result != image_init_result::PASS)
{
// try format 2
fseek( position, SEEK_SET);
diff --git a/src/devices/machine/smartmed.h b/src/devices/machine/smartmed.h
index 84dd1a3bae1..0b69fd05886 100644
--- a/src/devices/machine/smartmed.h
+++ b/src/devices/machine/smartmed.h
@@ -214,7 +214,7 @@ public:
virtual const char *image_interface() const override { return "sm_memc"; }
virtual const char *file_extensions() const override { return "smc"; }
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override;
virtual const software_list_loader &get_software_list_loader() const override { return image_software_list_loader::instance(); }
@@ -222,8 +222,8 @@ protected:
// device-level overrides
virtual void device_config_complete() override;
- bool smartmedia_format_1();
- bool smartmedia_format_2();
+ image_init_result smartmedia_format_1();
+ image_init_result smartmedia_format_2();
int detect_geometry( UINT8 id1, UINT8 id2);
};
diff --git a/src/emu/debug/debugcmd.cpp b/src/emu/debug/debugcmd.cpp
index ff734e9f65d..11f876d912f 100644
--- a/src/emu/debug/debugcmd.cpp
+++ b/src/emu/debug/debugcmd.cpp
@@ -2940,7 +2940,7 @@ void debugger_commands::execute_mount(int ref, int params, const char **param)
{
if (strcmp(img.brief_instance_name(),param[0]) == 0)
{
- if (img.load(param[1])==IMAGE_INIT_FAIL)
+ if (img.load(param[1]) != image_init_result::PASS)
m_console.printf("Unable to mount file %s on %s\n",param[1],param[0]);
else
m_console.printf("File %s mounted on %s\n",param[1],param[0]);
diff --git a/src/emu/diimage.cpp b/src/emu/diimage.cpp
index 47260e17004..eaed0ac275b 100644
--- a/src/emu/diimage.cpp
+++ b/src/emu/diimage.cpp
@@ -919,7 +919,7 @@ bool device_image_interface::load_software(software_list_device &swlist, const c
// load_internal - core image loading
//-------------------------------------------------
-bool device_image_interface::load_internal(const std::string &path, bool is_create, int create_format, util::option_resolution *create_args, bool just_load)
+image_init_result device_image_interface::load_internal(const std::string &path, bool is_create, int create_format, util::option_resolution *create_args, bool just_load)
{
UINT32 open_plan[4];
int i;
@@ -966,7 +966,7 @@ bool device_image_interface::load_internal(const std::string &path, bool is_crea
m_create_args = create_args;
if (m_init_phase==false) {
- m_err = (finish_load()==IMAGE_INIT_PASS) ? IMAGE_ERROR_SUCCESS : IMAGE_ERROR_INTERNAL;
+ m_err = (finish_load() == image_init_result::PASS) ? IMAGE_ERROR_SUCCESS : IMAGE_ERROR_INTERNAL;
if (m_err)
goto done;
}
@@ -974,8 +974,8 @@ bool device_image_interface::load_internal(const std::string &path, bool is_crea
done:
if (just_load) {
- if(m_err) clear();
- return m_err ? IMAGE_INIT_FAIL : IMAGE_INIT_PASS;
+ if (m_err) clear();
+ return m_err ? image_init_result::FAIL : image_init_result::PASS;
}
if (m_err!=0) {
if (!m_init_phase)
@@ -1000,7 +1000,7 @@ done:
}
}
}
- return m_err ? IMAGE_INIT_FAIL : IMAGE_INIT_PASS;
+ return m_err ? image_init_result::FAIL : image_init_result::PASS;
}
@@ -1021,7 +1021,7 @@ bool device_image_interface::schedule_postload_hard_reset_if_needed()
// load - load an image into MAME
//-------------------------------------------------
-bool device_image_interface::load(const char *path)
+image_init_result device_image_interface::load(const char *path)
{
return load_internal(path, false, 0, nullptr, false);
}
@@ -1031,7 +1031,7 @@ bool device_image_interface::load(const char *path)
// load_software - loads a softlist item by name
//-------------------------------------------------
-bool device_image_interface::load_software(const std::string &softlist_name)
+image_init_result device_image_interface::load_software(const std::string &softlist_name)
{
// Prepare to load
unload();
@@ -1043,7 +1043,7 @@ bool device_image_interface::load_software(const std::string &softlist_name)
if (!softload)
{
m_is_loading = false;
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
// set up softlist stuff
@@ -1084,8 +1084,8 @@ bool device_image_interface::load_software(const std::string &softlist_name)
}
// call finish_load if necessary
- if (m_init_phase == false && finish_load())
- return IMAGE_INIT_FAIL;
+ if (m_init_phase == false && (finish_load() != image_init_result::PASS))
+ return image_init_result::FAIL;
// do we need to reset the CPU? only schedule it if load is successful
if (!schedule_postload_hard_reset_if_needed())
@@ -1099,7 +1099,7 @@ bool device_image_interface::load_software(const std::string &softlist_name)
}
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
@@ -1113,7 +1113,7 @@ bool device_image_interface::open_image_file(emu_options &options)
if (*path != 0)
{
set_init_phase();
- if (load_internal(path, false, 0, nullptr, true)==IMAGE_INIT_PASS)
+ if (load_internal(path, false, 0, nullptr, true) == image_init_result::PASS)
{
if (software_entry()==nullptr) return true;
}
@@ -1127,9 +1127,9 @@ bool device_image_interface::open_image_file(emu_options &options)
// from core
//-------------------------------------------------
-bool device_image_interface::finish_load()
+image_init_result device_image_interface::finish_load()
{
- bool err = IMAGE_INIT_PASS;
+ image_init_result err = image_init_result::PASS;
if (m_is_loading)
{
@@ -1138,7 +1138,7 @@ bool device_image_interface::finish_load()
if (m_created)
{
err = call_create(m_create_format, m_create_args);
- if (err == IMAGE_INIT_FAIL)
+ if (err != image_init_result::PASS)
{
if (!m_err)
m_err = IMAGE_ERROR_UNSPECIFIED;
@@ -1148,7 +1148,7 @@ bool device_image_interface::finish_load()
{
// using device load
err = call_load();
- if (err == IMAGE_INIT_FAIL)
+ if (err != image_init_result::PASS)
{
if (!m_err)
m_err = IMAGE_ERROR_UNSPECIFIED;
@@ -1167,7 +1167,7 @@ bool device_image_interface::finish_load()
// create - create a image
//-------------------------------------------------
-bool device_image_interface::create(const char *path, const image_device_format *create_format, util::option_resolution *create_args)
+image_init_result device_image_interface::create(const char *path, const image_device_format *create_format, util::option_resolution *create_args)
{
int format_index = 0;
int cnt = 0;
diff --git a/src/emu/diimage.h b/src/emu/diimage.h
index aeff3dc54fc..6ac5f3214b3 100644
--- a/src/emu/diimage.h
+++ b/src/emu/diimage.h
@@ -100,8 +100,11 @@ struct feature_list;
class software_part;
class software_info;
+enum class image_init_result { PASS, FAIL };
+enum class image_verify_result { PASS, FAIL };
+
// device image interface function types
-typedef delegate<bool (device_image_interface &)> device_image_load_delegate;
+typedef delegate<image_init_result (device_image_interface &)> device_image_load_delegate;
typedef delegate<void (device_image_interface &)> device_image_func_delegate;
// legacy
typedef void (*device_image_partialhash_func)(util::hash_collection &, const unsigned char *, unsigned long, const char *);
@@ -110,13 +113,10 @@ typedef void (*device_image_partialhash_func)(util::hash_collection &, const uns
// MACROS
//**************************************************************************
-#define IMAGE_INIT_PASS false
-#define IMAGE_INIT_FAIL true
-
#define DEVICE_IMAGE_LOAD_MEMBER_NAME(_name) device_image_load_##_name
#define DEVICE_IMAGE_LOAD_NAME(_class,_name) _class::DEVICE_IMAGE_LOAD_MEMBER_NAME(_name)
-#define DECLARE_DEVICE_IMAGE_LOAD_MEMBER(_name) bool DEVICE_IMAGE_LOAD_MEMBER_NAME(_name)(device_image_interface &image)
-#define DEVICE_IMAGE_LOAD_MEMBER(_class,_name) bool DEVICE_IMAGE_LOAD_NAME(_class,_name)(device_image_interface &image)
+#define DECLARE_DEVICE_IMAGE_LOAD_MEMBER(_name) image_init_result DEVICE_IMAGE_LOAD_MEMBER_NAME(_name)(device_image_interface &image)
+#define DEVICE_IMAGE_LOAD_MEMBER(_class,_name) image_init_result DEVICE_IMAGE_LOAD_NAME(_class,_name)(device_image_interface &image)
#define DEVICE_IMAGE_LOAD_DELEGATE(_class,_name) device_image_load_delegate(&DEVICE_IMAGE_LOAD_NAME(_class,_name),#_class "::device_image_load_" #_name, downcast<_class *>(device->owner()))
#define DEVICE_IMAGE_UNLOAD_MEMBER_NAME(_name) device_image_unload_##_name
@@ -147,8 +147,8 @@ public:
virtual void device_compute_hash(util::hash_collection &hashes, const void *data, size_t length, const char *types) const;
- virtual bool call_load() { return IMAGE_INIT_PASS; }
- virtual bool call_create(int format_type, util::option_resolution *format_options) { return IMAGE_INIT_PASS; }
+ virtual image_init_result call_load() { return image_init_result::PASS; }
+ virtual image_init_result call_create(int format_type, util::option_resolution *format_options) { return image_init_result::PASS; }
virtual void call_unload() { }
virtual std::string call_display() { return std::string(); }
virtual device_image_partialhash_func get_partial_hash() const { return nullptr; }
@@ -228,15 +228,15 @@ public:
const formatlist_type &formatlist() const { return m_formatlist; }
// loads an image file
- bool load(const char *path);
+ image_init_result load(const char *path);
// loads a softlist item by name
- bool load_software(const std::string &softlist_name);
+ image_init_result load_software(const std::string &softlist_name);
bool open_image_file(emu_options &options);
- bool finish_load();
+ image_init_result finish_load();
void unload();
- bool create(const char *path, const image_device_format *create_format, util::option_resolution *create_args);
+ image_init_result create(const char *path, const image_device_format *create_format, util::option_resolution *create_args);
bool load_software(software_list_device &swlist, const char *swname, const rom_entry *entry);
int reopen_for_write(const char *path);
@@ -254,7 +254,7 @@ public:
protected:
virtual const software_list_loader &get_software_list_loader() const { return false_software_list_loader::instance(); }
- bool load_internal(const std::string &path, bool is_create, int create_format, util::option_resolution *create_args, bool just_load);
+ image_init_result load_internal(const std::string &path, bool is_create, int create_format, util::option_resolution *create_args, bool just_load);
void determine_open_plan(int is_create, UINT32 *open_plan);
image_error_t load_image_by_path(UINT32 open_flags, const std::string &path);
void clear();
diff --git a/src/emu/image.cpp b/src/emu/image.cpp
index 129fc197717..7d7f8f6b359 100644
--- a/src/emu/image.cpp
+++ b/src/emu/image.cpp
@@ -56,12 +56,12 @@ image_manager::image_manager(running_machine &machine)
bool is_softlist_part = std::regex_match(image_name, s_softlist_regex);
// try to load this image
- bool result = is_softlist_part
+ image_init_result result = is_softlist_part
? image.load_software(image_name)
: image.load(image_name.c_str());
// did the image load fail?
- if (result)
+ if (result != image_init_result::PASS)
{
// retrieve image error message
std::string image_err = std::string(image.error());
@@ -234,10 +234,10 @@ void image_manager::postdevice_init()
/* make sure that any required devices have been allocated */
for (device_image_interface &image : image_interface_iterator(machine().root_device()))
{
- int result = image.finish_load();
+ image_init_result result = image.finish_load();
/* did the image load fail? */
- if (result)
+ if (result != image_init_result::PASS)
{
/* retrieve image error message */
std::string image_err = std::string(image.error());
diff --git a/src/frontend/mame/ui/floppycntrl.cpp b/src/frontend/mame/ui/floppycntrl.cpp
index 21f8e28fe6a..b086be8709e 100644
--- a/src/frontend/mame/ui/floppycntrl.cpp
+++ b/src/frontend/mame/ui/floppycntrl.cpp
@@ -42,17 +42,17 @@ void menu_control_floppy_image::do_load_create()
{
floppy_image_device *fd = static_cast<floppy_image_device *>(&m_image);
if(input_filename.compare("")==0) {
- int err = fd->create(output_filename.c_str(), nullptr, nullptr);
- if (err != 0) {
+ image_init_result err = fd->create(output_filename.c_str(), nullptr, nullptr);
+ if (err != image_init_result::PASS) {
machine().popmessage("Error: %s", fd->error());
return;
}
fd->setup_write(output_format);
} else {
- int err = fd->load(input_filename.c_str());
- if (!err && output_filename.compare("") != 0)
- err = fd->reopen_for_write(output_filename.c_str());
- if(err != 0) {
+ image_init_result err = fd->load(input_filename.c_str());
+ if ((err == image_init_result::PASS) && (output_filename.compare("") != 0))
+ err = fd->reopen_for_write(output_filename.c_str()) ? image_init_result::FAIL : image_init_result::PASS;
+ if (err != image_init_result::PASS) {
machine().popmessage("Error: %s", fd->error());
return;
}
diff --git a/src/frontend/mame/ui/imgcntrl.cpp b/src/frontend/mame/ui/imgcntrl.cpp
index 08f10876d78..1812977c9bf 100644
--- a/src/frontend/mame/ui/imgcntrl.cpp
+++ b/src/frontend/mame/ui/imgcntrl.cpp
@@ -325,8 +325,8 @@ void menu_control_device_image::handle()
case DO_CREATE: {
auto path = util::zippath_combine(m_current_directory.c_str(), m_current_file.c_str());
- int err = m_image.create(path.c_str(), nullptr, nullptr);
- if (err != 0)
+ image_init_result err = m_image.create(path.c_str(), nullptr, nullptr);
+ if (err != image_init_result::PASS)
machine().popmessage("Error: %s", m_image.error());
stack_pop();
break;
diff --git a/src/mame/drivers/abc80.cpp b/src/mame/drivers/abc80.cpp
index e4d5100e777..5537cb21126 100644
--- a/src/mame/drivers/abc80.cpp
+++ b/src/mame/drivers/abc80.cpp
@@ -506,7 +506,7 @@ QUICKLOAD_LOAD_MEMBER( abc80_state, bac )
space.write_byte(HEAD + 1, head >> 8);
if (LOG) logerror("HEAD %04x\n",address);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/mame/drivers/aim65.cpp b/src/mame/drivers/aim65.cpp
index 3e4ff2022f4..00018157e05 100644
--- a/src/mame/drivers/aim65.cpp
+++ b/src/mame/drivers/aim65.cpp
@@ -145,14 +145,14 @@ INPUT_PORTS_END
MACHINE DRIVERS
***************************************************************************/
-int aim65_state::load_cart(device_image_interface &image, generic_slot_device *slot, const char *slot_tag)
+image_init_result aim65_state::load_cart(device_image_interface &image, generic_slot_device *slot, const char *slot_tag)
{
UINT32 size = slot->common_get_size(slot_tag);
if (size > 0x1000)
{
image.seterror(IMAGE_ERROR_UNSPECIFIED, "Unsupported cartridge size");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
if (image.software_entry() != nullptr && image.get_software_region(slot_tag) == nullptr)
@@ -161,13 +161,13 @@ int aim65_state::load_cart(device_image_interface &image, generic_slot_device *s
"Attempted to load file with wrong extension\nSocket '%s' only accepts files with '.%s' extension",
slot_tag, slot_tag);
image.seterror(IMAGE_ERROR_UNSPECIFIED, errmsg.c_str());
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
slot->rom_alloc(size, GENERIC_ROM8_WIDTH, ENDIANNESS_LITTLE);
slot->common_load_rom(slot->get_rom_base(), size, slot_tag);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/mame/drivers/altair.cpp b/src/mame/drivers/altair.cpp
index 60dc683c006..94c43ac759f 100644
--- a/src/mame/drivers/altair.cpp
+++ b/src/mame/drivers/altair.cpp
@@ -81,12 +81,12 @@ QUICKLOAD_LOAD_MEMBER( altair_state,altair)
int read_;
quick_length = image.length();
if (quick_length >= 0xfd00)
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
read_ = image.fread(m_ram, quick_length);
if (read_ != quick_length)
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
WRITE_LINE_MEMBER(altair_state::write_acia_clock)
diff --git a/src/mame/drivers/apexc.cpp b/src/mame/drivers/apexc.cpp
index 2dac4620982..4987c7343fc 100644
--- a/src/mame/drivers/apexc.cpp
+++ b/src/mame/drivers/apexc.cpp
@@ -86,7 +86,7 @@ public:
virtual bool is_reset_on_load() const override { return 1; }
virtual const char *file_extensions() const override { return "apc"; }
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override;
protected:
// device-level overrides
@@ -107,7 +107,7 @@ apexc_cylinder_image_device::apexc_cylinder_image_device(const machine_config &m
/*
Open cylinder image and read RAM
*/
-bool apexc_cylinder_image_device::call_load()
+image_init_result apexc_cylinder_image_device::call_load()
{
/* load RAM contents */
m_writable = !is_readonly();
@@ -122,7 +122,7 @@ bool apexc_cylinder_image_device::call_load()
}
#endif
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
/*
diff --git a/src/mame/drivers/apple1.cpp b/src/mame/drivers/apple1.cpp
index d2858672814..da0ce7ac41d 100644
--- a/src/mame/drivers/apple1.cpp
+++ b/src/mame/drivers/apple1.cpp
@@ -178,26 +178,26 @@ SNAPSHOT_LOAD_MEMBER( apple1_state, apple1 )
if (snapsize < 12)
{
logerror("Snapshot is too short\n");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
if ((snapsize - 12) > 65535)
{
logerror("Snapshot is too long\n");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
data = (UINT8 *)image.ptr();
if (!data)
{
logerror("Internal error loading snapshot\n");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
if ((memcmp(hd1, data, 5)) || (memcmp(hd2, &data[7], 5)))
{
logerror("Snapshot is invalid\n");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
start = (data[5]<<8) | data[6];
@@ -208,7 +208,7 @@ SNAPSHOT_LOAD_MEMBER( apple1_state, apple1 )
if (((start < 0xe000) && (end > (m_ram_size - 1))) || (end > 0xefff))
{
logerror("Snapshot can't fit in RAM\n");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
if (start < 0xe000)
@@ -222,10 +222,10 @@ SNAPSHOT_LOAD_MEMBER( apple1_state, apple1 )
else
{
logerror("Snapshot has invalid load address %04x\n", start);
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
void apple1_state::poll_keyboard()
diff --git a/src/mame/drivers/atom.cpp b/src/mame/drivers/atom.cpp
index f2842135532..58ab2e96033 100644
--- a/src/mame/drivers/atom.cpp
+++ b/src/mame/drivers/atom.cpp
@@ -170,7 +170,7 @@ QUICKLOAD_LOAD_MEMBER( atom_state, atom_atm )
m_maincpu->set_pc(run_address);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
/***************************************************************************
@@ -675,20 +675,20 @@ void atomeb_state::machine_start()
MACHINE DRIVERS
***************************************************************************/
-int atom_state::load_cart(device_image_interface &image, generic_slot_device *slot)
+image_init_result atom_state::load_cart(device_image_interface &image, generic_slot_device *slot)
{
UINT32 size = slot->common_get_size("rom");
if (size > 0x1000)
{
image.seterror(IMAGE_ERROR_UNSPECIFIED, "Unsupported cartridge size");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
slot->rom_alloc(size, GENERIC_ROM8_WIDTH, ENDIANNESS_LITTLE);
slot->common_load_rom(slot->get_rom_base(), size, "rom");
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
static SLOT_INTERFACE_START(atom_floppies)
diff --git a/src/mame/drivers/avigo.cpp b/src/mame/drivers/avigo.cpp
index 2d27c700203..7d3c3c0677d 100644
--- a/src/mame/drivers/avigo.cpp
+++ b/src/mame/drivers/avigo.cpp
@@ -729,10 +729,10 @@ QUICKLOAD_LOAD_MEMBER( avigo_state,avigo)
m_warm_start = 1;
m_maincpu->reset();
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
void avigo_state::nvram_init(nvram_device &nvram, void *base, size_t size)
diff --git a/src/mame/drivers/beta.cpp b/src/mame/drivers/beta.cpp
index 024a42d5c69..f9b946f4cd0 100644
--- a/src/mame/drivers/beta.cpp
+++ b/src/mame/drivers/beta.cpp
@@ -289,13 +289,13 @@ DEVICE_IMAGE_LOAD_MEMBER( beta_state, beta_eprom )
if (size != 0x800)
{
image.seterror(IMAGE_ERROR_UNSPECIFIED, "Unsupported cartridge size");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
m_eprom->rom_alloc(size, GENERIC_ROM8_WIDTH, ENDIANNESS_LITTLE);
m_eprom->common_load_rom(m_eprom->get_rom_base(), size, "rom");
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
DEVICE_IMAGE_UNLOAD_MEMBER( beta_state, beta_eprom )
diff --git a/src/mame/drivers/binbug.cpp b/src/mame/drivers/binbug.cpp
index 8abd74a23cd..b0fb117513c 100644
--- a/src/mame/drivers/binbug.cpp
+++ b/src/mame/drivers/binbug.cpp
@@ -226,7 +226,7 @@ QUICKLOAD_LOAD_MEMBER( binbug_state, binbug )
int quick_length;
dynamic_buffer quick_data;
int read_;
- int result = IMAGE_INIT_FAIL;
+ image_init_result result = image_init_result::FAIL;
quick_length = image.length();
if (quick_length < 0x0444)
@@ -273,7 +273,7 @@ QUICKLOAD_LOAD_MEMBER( binbug_state, binbug )
// Start the quickload
m_maincpu->set_state_int(S2650_PC, exec_addr);
- result = IMAGE_INIT_PASS;
+ result = image_init_result::PASS;
}
}
}
diff --git a/src/mame/drivers/casloopy.cpp b/src/mame/drivers/casloopy.cpp
index d01b81163a2..f9c67268fe8 100644
--- a/src/mame/drivers/casloopy.cpp
+++ b/src/mame/drivers/casloopy.cpp
@@ -498,7 +498,7 @@ DEVICE_IMAGE_LOAD_MEMBER( casloopy_state, loopy_cart )
DST[i + 3] = tempb;
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
static MACHINE_CONFIG_START( casloopy, casloopy_state )
diff --git a/src/mame/drivers/cc40.cpp b/src/mame/drivers/cc40.cpp
index f537259fd42..1fc89f3da77 100644
--- a/src/mame/drivers/cc40.cpp
+++ b/src/mame/drivers/cc40.cpp
@@ -164,13 +164,13 @@ DEVICE_IMAGE_LOAD_MEMBER(cc40_state, cc40_cartridge)
if (size > 0x20000)
{
image.seterror(IMAGE_ERROR_UNSPECIFIED, "Invalid file size");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
m_cart->rom_alloc(0x20000, GENERIC_ROM8_WIDTH, ENDIANNESS_LITTLE); // allocate a larger ROM region to have 4x32K banks
m_cart->common_load_rom(m_cart->get_rom_base(), size, "rom");
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/mame/drivers/cd2650.cpp b/src/mame/drivers/cd2650.cpp
index ac844445d72..9e72052234a 100644
--- a/src/mame/drivers/cd2650.cpp
+++ b/src/mame/drivers/cd2650.cpp
@@ -195,7 +195,8 @@ WRITE8_MEMBER( cd2650_state::kbd_put )
QUICKLOAD_LOAD_MEMBER( cd2650_state, cd2650 )
{
- int i, result = IMAGE_INIT_FAIL;
+ int i;
+ image_init_result result = image_init_result::FAIL;
int quick_length = image.length();
if (quick_length < 0x1500)
@@ -253,7 +254,7 @@ QUICKLOAD_LOAD_MEMBER( cd2650_state, cd2650 )
// Start the quickload
m_maincpu->set_state_int(S2650_PC, exec_addr);
- result = IMAGE_INIT_PASS;
+ result = image_init_result::PASS;
}
}
}
diff --git a/src/mame/drivers/coleco.cpp b/src/mame/drivers/coleco.cpp
index b7c12e5e6d1..dd4cec79202 100644
--- a/src/mame/drivers/coleco.cpp
+++ b/src/mame/drivers/coleco.cpp
@@ -352,15 +352,15 @@ void coleco_state::machine_reset()
m_last_nmi_state = 0;
}
-//static bool coleco_cart_verify(const UINT8 *cartdata, size_t size)
+//static image_verify_result coleco_cart_verify(const UINT8 *cartdata, size_t size)
//{
-// int retval = false;
+// int retval = image_verify_result::FAIL;
//
// /* Verify the file is in Colecovision format */
// if ((cartdata[0] == 0xAA) && (cartdata[1] == 0x55)) /* Production Cartridge */
-// retval = true;
+// retval = image_verify_result::PASS;
// if ((cartdata[0] == 0x55) && (cartdata[1] == 0xAA)) /* "Test" Cartridge. Some games use this method to skip ColecoVision title screen and delay */
-// retval = true;
+// retval = image_verify_result::PASS;
//
// return retval;
//}
diff --git a/src/mame/drivers/comx35.cpp b/src/mame/drivers/comx35.cpp
index 557825a3cd4..7a6c2cb4a54 100644
--- a/src/mame/drivers/comx35.cpp
+++ b/src/mame/drivers/comx35.cpp
@@ -58,14 +58,14 @@ QUICKLOAD_LOAD_MEMBER( comx35_state, comx35_comx )
if (size > m_ram->size())
{
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
image.fread( header, 5);
if (header[1] != 'C' || header[2] != 'O' || header[3] != 'M' || header[4] != 'X' )
{
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
switch (header[0])
@@ -192,7 +192,7 @@ QUICKLOAD_LOAD_MEMBER( comx35_state, comx35_comx )
break;
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
//**************************************************************************
diff --git a/src/mame/drivers/cosmicos.cpp b/src/mame/drivers/cosmicos.cpp
index 3c066b72626..96d29ff341f 100644
--- a/src/mame/drivers/cosmicos.cpp
+++ b/src/mame/drivers/cosmicos.cpp
@@ -495,7 +495,7 @@ QUICKLOAD_LOAD_MEMBER( cosmicos_state, cosmicos )
/* load image to RAM */
image.fread(ptr, size);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
/* Machine Driver */
diff --git a/src/mame/drivers/cp1.cpp b/src/mame/drivers/cp1.cpp
index bf7e382819e..090aa7706a1 100644
--- a/src/mame/drivers/cp1.cpp
+++ b/src/mame/drivers/cp1.cpp
@@ -285,11 +285,11 @@ QUICKLOAD_LOAD_MEMBER( cp1_state, quickload )
}
else
{
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
static MACHINE_CONFIG_START( cp1, cp1_state )
diff --git a/src/mame/drivers/d6800.cpp b/src/mame/drivers/d6800.cpp
index ef69ab8eec5..8440b6aa783 100644
--- a/src/mame/drivers/d6800.cpp
+++ b/src/mame/drivers/d6800.cpp
@@ -346,7 +346,7 @@ QUICKLOAD_LOAD_MEMBER( d6800_state, d6800 )
int quick_length;
dynamic_buffer quick_data;
int read_;
- int result = IMAGE_INIT_FAIL;
+ image_init_result result = image_init_result::FAIL;
quick_length = image.length();
quick_data.resize(quick_length);
@@ -371,7 +371,7 @@ QUICKLOAD_LOAD_MEMBER( d6800_state, d6800 )
else
m_maincpu->set_pc(exec_addr);
- result = IMAGE_INIT_PASS;
+ result = image_init_result::PASS;
}
return result;
diff --git a/src/mame/drivers/elf.cpp b/src/mame/drivers/elf.cpp
index f21896f9f69..e4fdc6a2ce4 100644
--- a/src/mame/drivers/elf.cpp
+++ b/src/mame/drivers/elf.cpp
@@ -221,12 +221,12 @@ QUICKLOAD_LOAD_MEMBER( elf2_state, elf )
if (size > m_ram->size())
{
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
image.fread(m_ram->pointer(), size);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
static MACHINE_CONFIG_START( elf2, elf2_state )
diff --git a/src/mame/drivers/eti660.cpp b/src/mame/drivers/eti660.cpp
index 6f55f3fc43d..e84f149805c 100644
--- a/src/mame/drivers/eti660.cpp
+++ b/src/mame/drivers/eti660.cpp
@@ -269,7 +269,7 @@ QUICKLOAD_LOAD_MEMBER( eti660_state, eti660 )
int quick_length;
dynamic_buffer quick_data;
int read_;
- int result = IMAGE_INIT_FAIL;
+ image_init_result result = image_init_result::FAIL;
quick_length = image.length();
quick_data.resize(quick_length);
@@ -291,7 +291,7 @@ QUICKLOAD_LOAD_MEMBER( eti660_state, eti660 )
else
image.message(" Quickload: size=%04X : start=%04X : end=%04X : Press 8 to start",quick_length,quick_addr,quick_addr+quick_length);
- result = IMAGE_INIT_PASS;
+ result = image_init_result::PASS;
}
return result;
diff --git a/src/mame/drivers/fidelz80.cpp b/src/mame/drivers/fidelz80.cpp
index c4cfde1b3f6..76f47be781d 100644
--- a/src/mame/drivers/fidelz80.cpp
+++ b/src/mame/drivers/fidelz80.cpp
@@ -740,13 +740,13 @@ DEVICE_IMAGE_LOAD_MEMBER(fidelz80base_state, scc_cartridge)
if (size > 0x4000)
{
image.seterror(IMAGE_ERROR_UNSPECIFIED, "Invalid file size");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
m_cart->rom_alloc(size, GENERIC_ROM8_WIDTH, ENDIANNESS_LITTLE);
m_cart->common_load_rom(m_cart->get_rom_base(), size, "rom");
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/mame/drivers/force68k.cpp b/src/mame/drivers/force68k.cpp
index 6a7cc1a172a..08151b2127b 100644
--- a/src/mame/drivers/force68k.cpp
+++ b/src/mame/drivers/force68k.cpp
@@ -125,65 +125,62 @@
class force68k_state : public driver_device
{
public:
-force68k_state(const machine_config &mconfig, device_type type, const char *tag) :
- driver_device (mconfig, type, tag),
- m_maincpu (*this, "maincpu"),
- m_rtc (*this, "rtc"),
- m_pit (*this, "pit"),
- m_aciahost (*this, "aciahost"),
- m_aciaterm (*this, "aciaterm"),
- m_aciaremt (*this, "aciaremt"),
- m_centronics (*this, "centronics")
- , m_centronics_ack (0)
- , m_centronics_busy (0)
- , m_centronics_perror (0)
- , m_centronics_select (0)
- ,m_cart(*this, "exp_rom1")
-{
-}
-
-DECLARE_READ16_MEMBER (bootvect_r);
-DECLARE_READ16_MEMBER (vme_a24_r);
-DECLARE_WRITE16_MEMBER (vme_a24_w);
-DECLARE_READ16_MEMBER (vme_a16_r);
-DECLARE_WRITE16_MEMBER (vme_a16_w);
-virtual void machine_start () override;
-// clocks
-DECLARE_WRITE_LINE_MEMBER (write_aciahost_clock);
-DECLARE_WRITE_LINE_MEMBER (write_aciaterm_clock);
-DECLARE_WRITE_LINE_MEMBER (write_aciaremt_clock);
-// centronics printer interface
-DECLARE_WRITE_LINE_MEMBER (centronics_ack_w);
-DECLARE_WRITE_LINE_MEMBER (centronics_busy_w);
-DECLARE_WRITE_LINE_MEMBER (centronics_perror_w);
-DECLARE_WRITE_LINE_MEMBER (centronics_select_w);
-// User EPROM/SRAM slot(s)
-int force68k_load_cart(device_image_interface &image, generic_slot_device *slot);
-DECLARE_DEVICE_IMAGE_LOAD_MEMBER (exp1_load) { return force68k_load_cart(image, m_cart); }
-DECLARE_READ16_MEMBER (read16_rom);
-
-protected:
+ force68k_state(const machine_config &mconfig, device_type type, const char *tag)
+ : driver_device(mconfig, type, tag)
+ , m_maincpu(*this, "maincpu")
+ , m_rtc(*this, "rtc")
+ , m_pit(*this, "pit")
+ , m_aciahost(*this, "aciahost")
+ , m_aciaterm(*this, "aciaterm")
+ , m_aciaremt(*this, "aciaremt")
+ , m_centronics(*this, "centronics")
+ , m_centronics_ack(0)
+ , m_centronics_busy(0)
+ , m_centronics_perror(0)
+ , m_centronics_select(0)
+ , m_cart(*this, "exp_rom1")
+ {
+ }
+
+ DECLARE_READ16_MEMBER (bootvect_r);
+ DECLARE_READ16_MEMBER (vme_a24_r);
+ DECLARE_WRITE16_MEMBER (vme_a24_w);
+ DECLARE_READ16_MEMBER (vme_a16_r);
+ DECLARE_WRITE16_MEMBER (vme_a16_w);
+ virtual void machine_start () override;
+ // clocks
+ DECLARE_WRITE_LINE_MEMBER (write_aciahost_clock);
+ DECLARE_WRITE_LINE_MEMBER (write_aciaterm_clock);
+ DECLARE_WRITE_LINE_MEMBER (write_aciaremt_clock);
+ // centronics printer interface
+ DECLARE_WRITE_LINE_MEMBER (centronics_ack_w);
+ DECLARE_WRITE_LINE_MEMBER (centronics_busy_w);
+ DECLARE_WRITE_LINE_MEMBER (centronics_perror_w);
+ DECLARE_WRITE_LINE_MEMBER (centronics_select_w);
+ // User EPROM/SRAM slot(s)
+ image_init_result force68k_load_cart(device_image_interface &image, generic_slot_device *slot);
+ DECLARE_DEVICE_IMAGE_LOAD_MEMBER (exp1_load) { return force68k_load_cart(image, m_cart); }
+ DECLARE_READ16_MEMBER (read16_rom);
private:
-required_device<cpu_device> m_maincpu;
-required_device<mm58167_device> m_rtc;
-required_device<pit68230_device> m_pit;
-required_device<acia6850_device> m_aciahost;
-required_device<acia6850_device> m_aciaterm;
-required_device<acia6850_device> m_aciaremt;
-optional_device<centronics_device> m_centronics;
-
-INT32 m_centronics_ack;
-INT32 m_centronics_busy;
-INT32 m_centronics_perror;
-INT32 m_centronics_select;
-
-// Pointer to System ROMs needed by bootvect_r
-UINT16 *m_sysrom;
-UINT16 *m_usrrom;
-
-required_device<generic_slot_device> m_cart;
-
+ required_device<cpu_device> m_maincpu;
+ required_device<mm58167_device> m_rtc;
+ required_device<pit68230_device> m_pit;
+ required_device<acia6850_device> m_aciahost;
+ required_device<acia6850_device> m_aciaterm;
+ required_device<acia6850_device> m_aciaremt;
+ optional_device<centronics_device> m_centronics;
+
+ INT32 m_centronics_ack;
+ INT32 m_centronics_busy;
+ INT32 m_centronics_perror;
+ INT32 m_centronics_select;
+
+ // Pointer to System ROMs needed by bootvect_r
+ UINT16 *m_sysrom;
+ UINT16 *m_usrrom;
+
+ required_device<generic_slot_device> m_cart;
};
static ADDRESS_MAP_START (force68k_mem, AS_PROGRAM, 16, force68k_state)
@@ -403,7 +400,7 @@ MACHINE_CONFIG_END
/***************************
Rom loading functions
****************************/
-int force68k_state::force68k_load_cart(device_image_interface &image, generic_slot_device *slot)
+image_init_result force68k_state::force68k_load_cart(device_image_interface &image, generic_slot_device *slot)
{
UINT32 size = slot->common_get_size("rom");
@@ -411,13 +408,13 @@ int force68k_state::force68k_load_cart(device_image_interface &image, generic_sl
{
LOG( printf("Cartridge size exceeding max size (128Kb): %d\n", size) );
image.seterror(IMAGE_ERROR_UNSPECIFIED, "Cartridge size exceeding max size (128Kb)");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
slot->rom_alloc(size, GENERIC_ROM16_WIDTH, ENDIANNESS_BIG);
slot->common_load_rom(slot->get_rom_base(), size, "rom");
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
/*
diff --git a/src/mame/drivers/gameking.cpp b/src/mame/drivers/gameking.cpp
index 96366b2bf02..0a5755c96d1 100644
--- a/src/mame/drivers/gameking.cpp
+++ b/src/mame/drivers/gameking.cpp
@@ -234,13 +234,13 @@ DEVICE_IMAGE_LOAD_MEMBER( gameking_state, gameking_cart )
if (size > 0x80000)
{
image.seterror(IMAGE_ERROR_UNSPECIFIED, "Unsupported cartridge size");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
m_cart->rom_alloc(size, GENERIC_ROM8_WIDTH, ENDIANNESS_LITTLE);
m_cart->common_load_rom(m_cart->get_rom_base(), size, "rom");
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
void gameking_state::machine_start()
diff --git a/src/mame/drivers/geniusiq.cpp b/src/mame/drivers/geniusiq.cpp
index dbfd894b9e5..95a038ea0bd 100644
--- a/src/mame/drivers/geniusiq.cpp
+++ b/src/mame/drivers/geniusiq.cpp
@@ -782,7 +782,7 @@ DEVICE_IMAGE_LOAD_MEMBER(geniusiq_state,iq128_cart)
}
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
DEVICE_IMAGE_UNLOAD_MEMBER(geniusiq_state,iq128_cart)
diff --git a/src/mame/drivers/homelab.cpp b/src/mame/drivers/homelab.cpp
index 66bb22675db..975f15ddd95 100644
--- a/src/mame/drivers/homelab.cpp
+++ b/src/mame/drivers/homelab.cpp
@@ -664,7 +664,7 @@ QUICKLOAD_LOAD_MEMBER( homelab_state,homelab)
{
image.seterror(IMAGE_ERROR_INVALIDIMAGE, "Cannot read the file");
image.message(" Cannot read the file");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
image.fseek(0x100, SEEK_SET);
@@ -673,7 +673,7 @@ QUICKLOAD_LOAD_MEMBER( homelab_state,homelab)
{
image.seterror(IMAGE_ERROR_INVALIDIMAGE, "Invalid header");
image.message(" Invalid header");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
while((ch = image.fgetc()))
@@ -682,7 +682,7 @@ QUICKLOAD_LOAD_MEMBER( homelab_state,homelab)
{
image.seterror(IMAGE_ERROR_INVALIDIMAGE, "File name too long");
image.message(" File name too long");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
pgmname[i] = ch; /* build program name */
@@ -695,7 +695,7 @@ QUICKLOAD_LOAD_MEMBER( homelab_state,homelab)
{
image.seterror(IMAGE_ERROR_INVALIDIMAGE, "Unexpected EOF while getting file size");
image.message(" Unexpected EOF while getting file size");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
quick_addr = little_endianize_int16(args[0]);
@@ -706,7 +706,7 @@ QUICKLOAD_LOAD_MEMBER( homelab_state,homelab)
{
image.seterror(IMAGE_ERROR_INVALIDIMAGE, "File too large");
image.message(" File too large");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
/* display a message about the loaded quickload */
@@ -721,12 +721,12 @@ QUICKLOAD_LOAD_MEMBER( homelab_state,homelab)
snprintf(message, ARRAY_LENGTH(message), "%s: Unexpected EOF while writing byte to %04X", pgmname, (unsigned) j);
image.seterror(IMAGE_ERROR_INVALIDIMAGE, message);
image.message("%s: Unexpected EOF while writing byte to %04X", pgmname, (unsigned) j);
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
space.write_byte(j, ch);
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
/* Machine driver */
diff --git a/src/mame/drivers/i7000.cpp b/src/mame/drivers/i7000.cpp
index 378c585cf64..15336953b9c 100644
--- a/src/mame/drivers/i7000.cpp
+++ b/src/mame/drivers/i7000.cpp
@@ -282,7 +282,7 @@ DEVICE_IMAGE_LOAD_MEMBER( i7000_state, i7000_card )
m_card->rom_alloc(size, GENERIC_ROM8_WIDTH, ENDIANNESS_BIG);
m_card->common_load_rom(m_card->get_rom_base(), size, "rom");
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
static const gfx_layout i7000_charlayout =
diff --git a/src/mame/drivers/ibmpcjr.cpp b/src/mame/drivers/ibmpcjr.cpp
index 878b6ff29dd..2bc58e7113d 100644
--- a/src/mame/drivers/ibmpcjr.cpp
+++ b/src/mame/drivers/ibmpcjr.cpp
@@ -66,7 +66,7 @@ public:
DECLARE_WRITE8_MEMBER(pcjx_port_1ff_w);
void pcjx_set_bank(int unk1, int unk2, int unk3);
- int load_cart(device_image_interface &image, generic_slot_device *slot);
+ image_init_result load_cart(device_image_interface &image, generic_slot_device *slot);
DECLARE_DEVICE_IMAGE_LOAD_MEMBER(pcjr_cart1) { return load_cart(image, m_cart1); }
DECLARE_DEVICE_IMAGE_LOAD_MEMBER(pcjr_cart2) { return load_cart(image, m_cart2); }
void pc_speaker_set_spkrdata(UINT8 data);
@@ -436,7 +436,7 @@ READ8_MEMBER(pcjr_state::pcjx_port_1ff_r)
return 0x60; // expansion?
}
-int pcjr_state::load_cart(device_image_interface &image, generic_slot_device *slot)
+image_init_result pcjr_state::load_cart(device_image_interface &image, generic_slot_device *slot)
{
UINT32 size = slot->common_get_size("rom");
bool imagic_hack = false;
@@ -456,7 +456,7 @@ int pcjr_state::load_cart(device_image_interface &image, generic_slot_device *sl
break;
default:
image.seterror(IMAGE_ERROR_UNSUPPORTED, "Invalid header size" );
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
if (size - header_size == 0xa000)
{
@@ -487,7 +487,7 @@ int pcjr_state::load_cart(device_image_interface &image, generic_slot_device *sl
memcpy(ROM + 0x4000, ROM, 0x2000);
memcpy(ROM + 0x2000, ROM, 0x2000);
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/mame/drivers/instruct.cpp b/src/mame/drivers/instruct.cpp
index 469203c59cc..e51774efaf5 100644
--- a/src/mame/drivers/instruct.cpp
+++ b/src/mame/drivers/instruct.cpp
@@ -323,7 +323,7 @@ void instruct_state::machine_reset()
QUICKLOAD_LOAD_MEMBER( instruct_state, instruct )
{
UINT16 i, exec_addr, quick_length, read_;
- int result = IMAGE_INIT_FAIL;
+ image_init_result result = image_init_result::FAIL;
quick_length = image.length();
if (quick_length < 0x0100)
@@ -393,7 +393,7 @@ QUICKLOAD_LOAD_MEMBER( instruct_state, instruct )
// Start the quickload - JP exec_addr
m_maincpu->set_state_int(S2650_PC, 0);
- result = IMAGE_INIT_PASS;
+ result = image_init_result::PASS;
}
}
}
diff --git a/src/mame/drivers/jaguar.cpp b/src/mame/drivers/jaguar.cpp
index 448d92b1526..f9fa040576f 100644
--- a/src/mame/drivers/jaguar.cpp
+++ b/src/mame/drivers/jaguar.cpp
@@ -1979,7 +1979,7 @@ QUICKLOAD_LOAD_MEMBER( jaguar_state, jaguar )
return quickload(image, file_type, quickload_size);
}
-int jaguar_state::quickload(device_image_interface &image, const char *file_type, int quickload_size)
+image_init_result jaguar_state::quickload(device_image_interface &image, const char *file_type, int quickload_size)
{
offs_t quickload_begin = 0x4000, start = quickload_begin, skip = 0;
@@ -2044,7 +2044,7 @@ int jaguar_state::quickload(device_image_interface &image, const char *file_type
/* Transfer control to image */
m_maincpu->set_pc(quickload_begin);
m_shared_ram[1]=quickload_begin;
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
void jaguar_state::cart_start()
@@ -2089,7 +2089,7 @@ DEVICE_IMAGE_LOAD_MEMBER( jaguar_state, jaguar_cart )
/* Transfer control to the bios */
m_maincpu->set_pc(m_rom_base[1]);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
/*************************************
diff --git a/src/mame/drivers/jr100.cpp b/src/mame/drivers/jr100.cpp
index a8934dace89..200deba0c35 100644
--- a/src/mame/drivers/jr100.cpp
+++ b/src/mame/drivers/jr100.cpp
@@ -321,19 +321,19 @@ QUICKLOAD_LOAD_MEMBER( jr100_state,jr100)
int read_;
quick_length = image.length();
if (quick_length >= 0xffff)
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
read_ = image.fread(buf, quick_length);
if (read_ != quick_length)
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
if (buf[0]!=0x50 || buf[1]!=0x52 || buf[2]!=0x4F || buf[3]!=0x47) {
// this is not PRG
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
int pos = 4;
if (readByLittleEndian(buf,pos)!=1) {
// not version 1 of PRG file
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
pos += 4;
UINT32 len =readByLittleEndian(buf,pos); pos+= 4;
@@ -359,7 +359,7 @@ QUICKLOAD_LOAD_MEMBER( jr100_state,jr100)
m_ram[13] = ((end_address + 3) & 0xFF);
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
static MACHINE_CONFIG_START( jr100, jr100_state )
diff --git a/src/mame/drivers/jupace.cpp b/src/mame/drivers/jupace.cpp
index 2809fcc0daa..987a27dc0c8 100644
--- a/src/mame/drivers/jupace.cpp
+++ b/src/mame/drivers/jupace.cpp
@@ -169,7 +169,7 @@ SNAPSHOT_LOAD_MEMBER( ace_state, ace )
{
image.seterror(IMAGE_ERROR_INVALIDIMAGE, "At least 16KB RAM expansion required");
image.message("At least 16KB RAM expansion required");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
logerror("Loading file %s.\r\n", image.filename());
@@ -206,7 +206,7 @@ SNAPSHOT_LOAD_MEMBER( ace_state, ace )
{
image.seterror(IMAGE_ERROR_INVALIDIMAGE, "EOF marker not found");
image.message("EOF marker not found");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
// patch CPU registers
@@ -244,7 +244,7 @@ SNAPSHOT_LOAD_MEMBER( ace_state, ace )
for (ace_index = 0x2000; ace_index < 0x8000; ace_index++)
space.write_byte(ace_index, RAM[ace_index]);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
//**************************************************************************
diff --git a/src/mame/drivers/leapster.cpp b/src/mame/drivers/leapster.cpp
index b46d07e385b..47e36349c13 100644
--- a/src/mame/drivers/leapster.cpp
+++ b/src/mame/drivers/leapster.cpp
@@ -266,7 +266,7 @@ DEVICE_IMAGE_LOAD_MEMBER( leapster_state, leapster_cart )
m_cart->rom_alloc(size, GENERIC_ROM32_WIDTH, ENDIANNESS_LITTLE);
m_cart->common_load_rom(m_cart->get_rom_base(), size, "rom");
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
void leapster_state::machine_start()
diff --git a/src/mame/drivers/lynx.cpp b/src/mame/drivers/lynx.cpp
index 1c866a91cfc..d878481b464 100644
--- a/src/mame/drivers/lynx.cpp
+++ b/src/mame/drivers/lynx.cpp
@@ -159,11 +159,11 @@ QUICKLOAD_LOAD_MEMBER( lynx_state, lynx )
int i;
if (image.fread( header, sizeof(header)) != sizeof(header))
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
/* Check the image */
- if (!lynx_verify_cart((char*)header, LYNX_QUICKLOAD))
- return IMAGE_INIT_FAIL;
+ if (lynx_verify_cart((char*)header, LYNX_QUICKLOAD) != image_verify_result::PASS)
+ return image_init_result::FAIL;
start = header[3] | (header[2]<<8); //! big endian format in file format for little endian cpu
length = header[5] | (header[4]<<8);
@@ -173,7 +173,7 @@ QUICKLOAD_LOAD_MEMBER( lynx_state, lynx )
if (image.fread( &data[0], length) != length)
{
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
for (i = 0; i < length; i++)
@@ -186,7 +186,7 @@ QUICKLOAD_LOAD_MEMBER( lynx_state, lynx )
m_maincpu->set_pc(start);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
/***************************************************************************
diff --git a/src/mame/drivers/megadriv.cpp b/src/mame/drivers/megadriv.cpp
index ce255d3bd69..e31c5e939d5 100644
--- a/src/mame/drivers/megadriv.cpp
+++ b/src/mame/drivers/megadriv.cpp
@@ -559,7 +559,7 @@ DEVICE_IMAGE_LOAD_MEMBER( md_cons_state, _32x_cart )
for (i = 0x00; i < length; i += 2)
ROM16[i / 2] = pick_integer_be(&temp_copy[0], i, 2);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/mame/drivers/megatech.cpp b/src/mame/drivers/megatech.cpp
index 59c769c7125..eabc98fbe22 100644
--- a/src/mame/drivers/megatech.cpp
+++ b/src/mame/drivers/megatech.cpp
@@ -125,7 +125,7 @@ public:
DECLARE_DRIVER_INIT(mt_slot);
DECLARE_MACHINE_RESET(megatech);
- int load_cart(device_image_interface &image, generic_slot_device *slot, int gameno);
+ image_init_result load_cart(device_image_interface &image, generic_slot_device *slot, int gameno);
DECLARE_DEVICE_IMAGE_LOAD_MEMBER( mt_cart1 ) { return load_cart(image, m_cart1, 0); }
DECLARE_DEVICE_IMAGE_LOAD_MEMBER( mt_cart2 ) { return load_cart(image, m_cart2, 1); }
DECLARE_DEVICE_IMAGE_LOAD_MEMBER( mt_cart3 ) { return load_cart(image, m_cart3, 2); }
@@ -718,21 +718,21 @@ static MACHINE_CONFIG_START( megatech, mtech_state )
MACHINE_CONFIG_END
-int mtech_state::load_cart(device_image_interface &image, generic_slot_device *slot, int gameno)
+image_init_result mtech_state::load_cart(device_image_interface &image, generic_slot_device *slot, int gameno)
{
UINT8 *ROM;
const char *pcb_name;
UINT32 size = slot->common_get_size("rom");
if (image.software_entry() == nullptr)
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
slot->rom_alloc(size, GENERIC_ROM8_WIDTH, ENDIANNESS_LITTLE);
ROM = slot->get_rom_base();
memcpy(ROM, image.get_software_region("rom"), size);
if ((pcb_name = image.get_feature("pcb_type")) == nullptr)
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
else
{
if (!core_stricmp("genesis", pcb_name))
@@ -749,7 +749,7 @@ int mtech_state::load_cart(device_image_interface &image, generic_slot_device *s
osd_printf_debug("cart%d is invalid\n", gameno + 1);
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
#define MCFG_MEGATECH_CARTSLOT_ADD(_tag, _load) \
diff --git a/src/mame/drivers/mekd2.cpp b/src/mame/drivers/mekd2.cpp
index 3e35ea23fff..f4f08addf85 100644
--- a/src/mame/drivers/mekd2.cpp
+++ b/src/mame/drivers/mekd2.cpp
@@ -312,7 +312,7 @@ QUICKLOAD_LOAD_MEMBER( mekd2_state, mekd2_quik )
if (memcmp(buff, magic, sizeof (buff)))
{
logerror("mekd2 rom load: magic '%s' not found\n", magic);
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
image.fread(&addr, 2);
addr = little_endianize_int16(addr);
@@ -323,7 +323,7 @@ QUICKLOAD_LOAD_MEMBER( mekd2_state, mekd2_quik )
while (size-- > 0)
image.fread(&RAM[addr++], 1);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
TIMER_DEVICE_CALLBACK_MEMBER(mekd2_state::mekd2_c)
diff --git a/src/mame/drivers/microvsn.cpp b/src/mame/drivers/microvsn.cpp
index 33f0795ff1a..b39abc3891f 100644
--- a/src/mame/drivers/microvsn.cpp
+++ b/src/mame/drivers/microvsn.cpp
@@ -524,7 +524,7 @@ DEVICE_IMAGE_LOAD_MEMBER(microvision_state, microvsn_cart)
if ( file_size != 1024 && file_size != 2048 )
{
image.seterror(IMAGE_ERROR_UNSPECIFIED, "Invalid rom file size");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
/* Read cartridge */
@@ -533,7 +533,7 @@ DEVICE_IMAGE_LOAD_MEMBER(microvision_state, microvsn_cart)
if (image.fread(rom1, file_size) != file_size)
{
image.seterror(IMAGE_ERROR_UNSPECIFIED, "Unable to fully read from file");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
}
else
@@ -614,7 +614,7 @@ DEVICE_IMAGE_LOAD_MEMBER(microvision_state, microvsn_cart)
m_cpu_type = microvision_state::CPU_TYPE_TMS1100;
break;
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/mame/drivers/myvision.cpp b/src/mame/drivers/myvision.cpp
index 2d30a206519..81977c9d608 100644
--- a/src/mame/drivers/myvision.cpp
+++ b/src/mame/drivers/myvision.cpp
@@ -147,13 +147,13 @@ DEVICE_IMAGE_LOAD_MEMBER( myvision_state, cart )
if (size != 0x4000 && size != 0x6000)
{
image.seterror(IMAGE_ERROR_UNSPECIFIED, "Unsupported cartridge size");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
m_cart->rom_alloc(size, GENERIC_ROM8_WIDTH, ENDIANNESS_LITTLE);
m_cart->common_load_rom(m_cart->get_rom_base(), size, "rom");
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/mame/drivers/n64.cpp b/src/mame/drivers/n64.cpp
index 3f2038e9e14..45d10179295 100644
--- a/src/mame/drivers/n64.cpp
+++ b/src/mame/drivers/n64.cpp
@@ -31,7 +31,7 @@ public:
INTERRUPT_GEN_MEMBER(n64_reset_poll);
DECLARE_DEVICE_IMAGE_LOAD_MEMBER(n64_cart);
void mempak_format(UINT8* pak);
- int disk_load(device_image_interface &image);
+ image_init_result disk_load(device_image_interface &image);
void disk_unload(device_image_interface &image);
DECLARE_DEVICE_IMAGE_LOAD_MEMBER( n64dd );
DECLARE_DEVICE_IMAGE_UNLOAD_MEMBER( n64dd );
@@ -364,7 +364,7 @@ DEVICE_IMAGE_LOAD_MEMBER(n64_mess_state,n64_cart)
mempak_format(periphs->m_save_data.mempak[1]);
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
MACHINE_START_MEMBER(n64_mess_state,n64dd)
@@ -396,12 +396,12 @@ DEVICE_IMAGE_UNLOAD_MEMBER(n64_mess_state,n64dd)
disk_unload(image);
}
-int n64_mess_state::disk_load(device_image_interface &image)
+image_init_result n64_mess_state::disk_load(device_image_interface &image)
{
image.fseek(0, SEEK_SET);
image.fread(memregion("disk")->base(), image.length());
machine().device<n64_periphs>("rcp")->disk_present = true;
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
void n64_mess_state::disk_unload(device_image_interface &image)
diff --git a/src/mame/drivers/nascom1.cpp b/src/mame/drivers/nascom1.cpp
index ffe9b3b55e6..9633a388d76 100644
--- a/src/mame/drivers/nascom1.cpp
+++ b/src/mame/drivers/nascom1.cpp
@@ -116,7 +116,7 @@ public:
DECLARE_DRIVER_INIT(nascom2c);
UINT32 screen_update_nascom(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
- int load_cart(device_image_interface &image, generic_slot_device *slot, int slot_id);
+ image_init_result load_cart(device_image_interface &image, generic_slot_device *slot, int slot_id);
DECLARE_DEVICE_IMAGE_LOAD_MEMBER(socket1_load) { return load_cart(image, m_socket1, 1); }
DECLARE_DEVICE_IMAGE_LOAD_MEMBER(socket2_load) { return load_cart(image, m_socket2, 2); }
@@ -211,10 +211,10 @@ DEVICE_IMAGE_LOAD_MEMBER( nascom_state, nascom1_cassette )
m_tape_image = (UINT8*)image.ptr();
if (!m_tape_image)
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
m_tape_index = 0;
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
DEVICE_IMAGE_UNLOAD_MEMBER( nascom_state, nascom1_cassette )
@@ -250,7 +250,7 @@ SNAPSHOT_LOAD_MEMBER( nascom_state, nascom1 )
}
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
@@ -258,7 +258,7 @@ SNAPSHOT_LOAD_MEMBER( nascom_state, nascom1 )
// SOCKETS
//**************************************************************************
-int nascom2_state::load_cart(device_image_interface &image, generic_slot_device *slot, int slot_id)
+image_init_result nascom2_state::load_cart(device_image_interface &image, generic_slot_device *slot, int slot_id)
{
// loading directly from file
if (image.software_entry() == nullptr)
@@ -266,7 +266,7 @@ int nascom2_state::load_cart(device_image_interface &image, generic_slot_device
if (slot->length() > 0x1000)
{
image.seterror(IMAGE_ERROR_UNSPECIFIED, "Unsupported file size");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
slot->rom_alloc(slot->length(), GENERIC_ROM8_WIDTH, ENDIANNESS_LITTLE);
@@ -310,7 +310,7 @@ int nascom2_state::load_cart(device_image_interface &image, generic_slot_device
}
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/mame/drivers/ngp.cpp b/src/mame/drivers/ngp.cpp
index eb8ffe0867c..639c980d3bc 100644
--- a/src/mame/drivers/ngp.cpp
+++ b/src/mame/drivers/ngp.cpp
@@ -746,7 +746,7 @@ DEVICE_IMAGE_LOAD_MEMBER( ngp_state, ngp_cart )
if (size != 0x8000 && size != 0x80000 && size != 0x100000 && size != 0x200000 && size != 0x400000)
{
image.seterror(IMAGE_ERROR_UNSPECIFIED, "Unsupported cartridge size");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
// alloc 0x400000 ROM to simplify mapping in the address map
@@ -782,7 +782,7 @@ DEVICE_IMAGE_LOAD_MEMBER( ngp_state, ngp_cart )
m_flash_chip[1].state = F_READ;
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/mame/drivers/patinho_feio.cpp b/src/mame/drivers/patinho_feio.cpp
index ae5218ded57..2facdc1194b 100644
--- a/src/mame/drivers/patinho_feio.cpp
+++ b/src/mame/drivers/patinho_feio.cpp
@@ -191,7 +191,7 @@ DEVICE_IMAGE_LOAD_MEMBER( patinho_feio_state, patinho_tape )
paper_tape_address = 0;
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
void patinho_feio_state::machine_start(){
diff --git a/src/mame/drivers/pc2000.cpp b/src/mame/drivers/pc2000.cpp
index 8d34c4feda2..773b60f3c6d 100644
--- a/src/mame/drivers/pc2000.cpp
+++ b/src/mame/drivers/pc2000.cpp
@@ -821,7 +821,7 @@ DEVICE_IMAGE_LOAD_MEMBER( pc2000_state, pc2000_cart )
m_cart->rom_alloc(0x40000, GENERIC_ROM8_WIDTH, ENDIANNESS_LITTLE);
m_cart->common_load_rom(m_cart->get_rom_base(), size, "rom");
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
static MACHINE_CONFIG_START( pc2000, pc2000_state )
diff --git a/src/mame/drivers/pdp1.cpp b/src/mame/drivers/pdp1.cpp
index d1da0c11fb5..ab18705b760 100644
--- a/src/mame/drivers/pdp1.cpp
+++ b/src/mame/drivers/pdp1.cpp
@@ -679,7 +679,7 @@ public:
virtual bool is_reset_on_load() const override { return 0; }
virtual const char *file_extensions() const override { return "tap,rim"; }
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override;
protected:
// device-level overrides
@@ -712,7 +712,7 @@ public:
virtual bool is_reset_on_load() const override { return 0; }
virtual const char *file_extensions() const override { return "tap,rim"; }
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override;
protected:
// device-level overrides
@@ -746,7 +746,7 @@ public:
virtual bool is_reset_on_load() const override { return 0; }
virtual const char *file_extensions() const override { return "typ"; }
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override;
protected:
// device-level overrides
@@ -779,7 +779,7 @@ public:
virtual bool is_reset_on_load() const override { return 0; }
virtual const char *file_extensions() const override { return "drm"; }
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override;
protected:
// device-level overrides
@@ -798,7 +798,7 @@ pdp1_cylinder_image_device::pdp1_cylinder_image_device(const machine_config &mco
/*
Open a perforated tape image
*/
-bool pdp1_readtape_image_device::call_load()
+image_init_result pdp1_readtape_image_device::call_load()
{
pdp1_state *state = machine().driver_data<pdp1_state>();
@@ -825,7 +825,7 @@ bool pdp1_readtape_image_device::call_load()
}
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
void pdp1_readtape_image_device::call_unload()
@@ -1032,14 +1032,14 @@ static void iot_rrb(device_t *device, int op2, int nac, int mb, int *io, int ac)
}
-bool pdp1_punchtape_image_device::call_load()
+image_init_result pdp1_punchtape_image_device::call_load()
{
pdp1_state *state = machine().driver_data<pdp1_state>();
/* punch unit */
state->m_tape_puncher.fd = this;
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
void pdp1_punchtape_image_device::call_unload()
@@ -1143,7 +1143,7 @@ static void iot_ppb(device_t *device, int op2, int nac, int mb, int *io, int ac)
/*
Open a file for typewriter output
*/
-bool pdp1_printer_image_device::call_load()
+image_init_result pdp1_printer_image_device::call_load()
{
pdp1_state *state = machine().driver_data<pdp1_state>();
/* open file */
@@ -1151,7 +1151,7 @@ bool pdp1_printer_image_device::call_load()
state->m_io_status |= io_st_tyo;
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
void pdp1_printer_image_device::call_unload()
@@ -1479,13 +1479,13 @@ void pdp1_state::parallel_drum_init(pdp1_state *state)
/*
Open a file for drum
*/
-bool pdp1_cylinder_image_device::call_load()
+image_init_result pdp1_cylinder_image_device::call_load()
{
pdp1_state *state = machine().driver_data<pdp1_state>();
/* open file */
state->m_parallel_drum.fd = this;
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
void pdp1_cylinder_image_device::call_unload()
diff --git a/src/mame/drivers/pegasus.cpp b/src/mame/drivers/pegasus.cpp
index 034ae2ef0d4..e3af28d9586 100644
--- a/src/mame/drivers/pegasus.cpp
+++ b/src/mame/drivers/pegasus.cpp
@@ -78,7 +78,7 @@ public:
UINT32 screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
DECLARE_DRIVER_INIT(pegasus);
TIMER_DEVICE_CALLBACK_MEMBER(pegasus_firq);
- int load_cart(device_image_interface &image, generic_slot_device *slot, const char *reg_tag);
+ image_init_result load_cart(device_image_interface &image, generic_slot_device *slot, const char *reg_tag);
DECLARE_DEVICE_IMAGE_LOAD_MEMBER(exp00_load) { return load_cart(image, m_exp_00, "0000"); }
DECLARE_DEVICE_IMAGE_LOAD_MEMBER(exp01_load) { return load_cart(image, m_exp_01, "1000"); }
DECLARE_DEVICE_IMAGE_LOAD_MEMBER(exp02_load) { return load_cart(image, m_exp_02, "2000"); }
@@ -413,7 +413,7 @@ void pegasus_state::pegasus_decrypt_rom(UINT8 *ROM)
}
}
-int pegasus_state::load_cart(device_image_interface &image, generic_slot_device *slot, const char *reg_tag)
+image_init_result pegasus_state::load_cart(device_image_interface &image, generic_slot_device *slot, const char *reg_tag)
{
UINT32 size = slot->common_get_size(reg_tag);
bool any_socket = false;
@@ -421,7 +421,7 @@ int pegasus_state::load_cart(device_image_interface &image, generic_slot_device
if (size > 0x1000)
{
image.seterror(IMAGE_ERROR_UNSPECIFIED, "Unsupported cartridge size");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
if (image.software_entry() != nullptr && size == 0)
@@ -437,7 +437,7 @@ int pegasus_state::load_cart(device_image_interface &image, generic_slot_device
"Attempted to load a file that does not work in this socket.\n"
"Please check \"Usage\" field in the software list for the correct socket(s) to use.");
image.seterror(IMAGE_ERROR_UNSPECIFIED, errmsg.c_str());
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
}
@@ -447,7 +447,7 @@ int pegasus_state::load_cart(device_image_interface &image, generic_slot_device
// raw images have to be decrypted (in particular the ones from softlist)
pegasus_decrypt_rom(slot->get_rom_base());
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
void pegasus_state::machine_start()
diff --git a/src/mame/drivers/peoplepc.cpp b/src/mame/drivers/peoplepc.cpp
index ec1b28f31e1..2146472f4e2 100644
--- a/src/mame/drivers/peoplepc.cpp
+++ b/src/mame/drivers/peoplepc.cpp
@@ -57,7 +57,7 @@ public:
DECLARE_READ8_MEMBER(memory_read_byte);
DECLARE_WRITE8_MEMBER(memory_write_byte);
DECLARE_FLOPPY_FORMATS( floppy_formats );
- int floppy_load(floppy_image_device *dev);
+ image_init_result floppy_load(floppy_image_device *dev);
void floppy_unload(floppy_image_device *dev);
UINT8 m_dma0pg;
@@ -157,10 +157,10 @@ WRITE8_MEMBER(peoplepc_state::memory_write_byte)
prog_space.write_byte(offset | (m_dma0pg << 16), data);
}
-int peoplepc_state::floppy_load(floppy_image_device *dev)
+image_init_result peoplepc_state::floppy_load(floppy_image_device *dev)
{
dev->mon_w(0);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
void peoplepc_state::floppy_unload(floppy_image_device *dev)
diff --git a/src/mame/drivers/phunsy.cpp b/src/mame/drivers/phunsy.cpp
index b701d7d468e..d4693194ee6 100644
--- a/src/mame/drivers/phunsy.cpp
+++ b/src/mame/drivers/phunsy.cpp
@@ -283,7 +283,7 @@ QUICKLOAD_LOAD_MEMBER( phunsy_state, phunsy )
UINT16 i;
UINT16 quick_addr = 0x1800;
dynamic_buffer quick_data;
- int result = IMAGE_INIT_FAIL;
+ image_init_result result = image_init_result::FAIL;
int quick_length = image.length();
if (quick_length > 0x4000)
{
@@ -310,7 +310,7 @@ QUICKLOAD_LOAD_MEMBER( phunsy_state, phunsy )
m_maincpu->set_state_int(S2650_R3, 0x83);
m_maincpu->set_state_int(S2650_PC, exec_addr);
- result = IMAGE_INIT_PASS;
+ result = image_init_result::PASS;
}
return result;
diff --git a/src/mame/drivers/pipbug.cpp b/src/mame/drivers/pipbug.cpp
index 40bc9788483..fd2bd2748fd 100644
--- a/src/mame/drivers/pipbug.cpp
+++ b/src/mame/drivers/pipbug.cpp
@@ -98,7 +98,7 @@ QUICKLOAD_LOAD_MEMBER( pipbug_state, pipbug )
int quick_length;
dynamic_buffer quick_data;
int read_;
- int result = IMAGE_INIT_FAIL;
+ image_init_result result = image_init_result::FAIL;
quick_length = image.length();
if (quick_length < 0x0444)
@@ -145,7 +145,7 @@ QUICKLOAD_LOAD_MEMBER( pipbug_state, pipbug )
// Start the quickload
m_maincpu->set_state_int(S2650_PC, exec_addr);
- result = IMAGE_INIT_PASS;
+ result = image_init_result::PASS;
}
}
}
diff --git a/src/mame/drivers/pockchal.cpp b/src/mame/drivers/pockchal.cpp
index 206756cee69..2dfc476046e 100644
--- a/src/mame/drivers/pockchal.cpp
+++ b/src/mame/drivers/pockchal.cpp
@@ -53,7 +53,7 @@ DEVICE_IMAGE_LOAD_MEMBER( pockchalv1_state, pockchalv1_cart )
m_cart->rom_alloc(m_rom_size, GENERIC_ROM8_WIDTH, ENDIANNESS_LITTLE);
m_cart->common_load_rom(m_cart->get_rom_base(), m_rom_size, "rom");
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
void pockchalv1_state::video_start()
{
diff --git a/src/mame/drivers/pockstat.cpp b/src/mame/drivers/pockstat.cpp
index 5c90dcc56d0..937452cf688 100644
--- a/src/mame/drivers/pockstat.cpp
+++ b/src/mame/drivers/pockstat.cpp
@@ -962,20 +962,20 @@ DEVICE_IMAGE_LOAD_MEMBER( pockstat_state, pockstat_flash )
UINT32 size = image.length();
if (size != 0x20f40)
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
image.fread(cart_id, 0xf40);
for (int i = 0; i < strlen(gme_id); i++)
{
if (cart_id[i] != gme_id[i])
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
m_cart->rom_alloc(0x20000, GENERIC_ROM32_WIDTH, ENDIANNESS_LITTLE);
image.fread(m_cart->get_rom_base(), 0x20000);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
static MACHINE_CONFIG_START( pockstat, pockstat_state )
diff --git a/src/mame/drivers/pofo.cpp b/src/mame/drivers/pofo.cpp
index 5476eb3e4af..c58c0ad7131 100644
--- a/src/mame/drivers/pofo.cpp
+++ b/src/mame/drivers/pofo.cpp
@@ -684,7 +684,7 @@ WRITE_LINE_MEMBER( portfolio_state::eint_w )
DEVICE_IMAGE_LOAD_MEMBER( portfolio_state, portfolio_cart )
{
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
diff --git a/src/mame/drivers/pokemini.cpp b/src/mame/drivers/pokemini.cpp
index 09299dc79d5..86d971a34a8 100644
--- a/src/mame/drivers/pokemini.cpp
+++ b/src/mame/drivers/pokemini.cpp
@@ -1506,20 +1506,20 @@ DEVICE_IMAGE_LOAD_MEMBER( pokemini_state, pokemini_cart )
if (size <= 0x2100)
{
image.seterror(IMAGE_ERROR_UNSPECIFIED, "Invalid ROM image: ROM image is too small");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
/* Verify that the image is not too big */
if (size > 0x1fffff)
{
image.seterror(IMAGE_ERROR_UNSPECIFIED, "Invalid ROM image: ROM image is too big");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
m_cart->rom_alloc(size, GENERIC_ROM8_WIDTH, ENDIANNESS_LITTLE);
m_cart->common_load_rom(m_cart->get_rom_base(), size, "rom");
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/mame/drivers/pv1000.cpp b/src/mame/drivers/pv1000.cpp
index ca6f85d7c50..92cfe103fd8 100644
--- a/src/mame/drivers/pv1000.cpp
+++ b/src/mame/drivers/pv1000.cpp
@@ -310,13 +310,13 @@ DEVICE_IMAGE_LOAD_MEMBER( pv1000_state, pv1000_cart )
if (size != 0x2000 && size != 0x4000)
{
image.seterror(IMAGE_ERROR_UNSPECIFIED, "Unsupported cartridge size");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
m_cart->rom_alloc(size, GENERIC_ROM8_WIDTH, ENDIANNESS_LITTLE);
m_cart->common_load_rom(m_cart->get_rom_base(), size, "rom");
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/mame/drivers/pv2000.cpp b/src/mame/drivers/pv2000.cpp
index 080e6f707e8..d58ece15780 100644
--- a/src/mame/drivers/pv2000.cpp
+++ b/src/mame/drivers/pv2000.cpp
@@ -367,13 +367,13 @@ DEVICE_IMAGE_LOAD_MEMBER( pv2000_state, pv2000_cart )
if (size != 0x2000 && size != 0x4000)
{
image.seterror(IMAGE_ERROR_UNSPECIFIED, "Unsupported cartridge size");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
m_cart->rom_alloc(size, GENERIC_ROM8_WIDTH, ENDIANNESS_LITTLE);
m_cart->common_load_rom(m_cart->get_rom_base(), size, "rom");
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
/* Machine Drivers */
diff --git a/src/mame/drivers/ravens.cpp b/src/mame/drivers/ravens.cpp
index 67709f34675..4d9f9ecfb9c 100644
--- a/src/mame/drivers/ravens.cpp
+++ b/src/mame/drivers/ravens.cpp
@@ -269,7 +269,7 @@ QUICKLOAD_LOAD_MEMBER( ravens_state, ravens )
int quick_length;
dynamic_buffer quick_data;
int read_;
- int result = IMAGE_INIT_FAIL;
+ image_init_result result = image_init_result::FAIL;
quick_length = image.length();
if (quick_length < 0x0900)
@@ -316,7 +316,7 @@ QUICKLOAD_LOAD_MEMBER( ravens_state, ravens )
// Start the quickload
m_maincpu->set_state_int(S2650_PC, exec_addr);
- result = IMAGE_INIT_PASS;
+ result = image_init_result::PASS;
}
}
}
diff --git a/src/mame/drivers/rex6000.cpp b/src/mame/drivers/rex6000.cpp
index df3e7118928..1c4553f2e40 100644
--- a/src/mame/drivers/rex6000.cpp
+++ b/src/mame/drivers/rex6000.cpp
@@ -708,7 +708,7 @@ QUICKLOAD_LOAD_MEMBER( rex6000_state,rex6000)
image.fread(&data[0], image.length());
if(strncmp((const char*)&data[0], magic, 21))
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
img_start = strlen((const char*)&data[0]) + 5;
img_start += 0xa0; //skip the icon (40x32 pixel)
@@ -716,7 +716,7 @@ QUICKLOAD_LOAD_MEMBER( rex6000_state,rex6000)
for (UINT32 i=0; i<image.length() - img_start ;i++)
m_flash0b->write_raw(i, data[img_start + i]);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
int oz750_state::oz_wzd_extract_tag(const dynamic_buffer &data, const char *tag, char *dest_buf)
@@ -764,7 +764,7 @@ QUICKLOAD_LOAD_MEMBER(oz750_state,oz750)
oz_wzd_extract_tag(data, "<DATA TYPE>", data_type);
if (strcmp(data_type, "MY PROGRAMS"))
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
oz_wzd_extract_tag(data, "<TITLE>", app_name);
oz_wzd_extract_tag(data, "<DATA>", file_name);
@@ -774,7 +774,7 @@ QUICKLOAD_LOAD_MEMBER(oz750_state,oz750)
UINT32 img_start = oz_wzd_extract_tag(data, "<BIN>", nullptr);
if (img_start == 0)
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
UINT16 icon_size = data[img_start++];
@@ -814,7 +814,7 @@ QUICKLOAD_LOAD_MEMBER(oz750_state,oz750)
for (int i=img_start; i<image.length(); i++)
flash->write_byte(pos++, data[i]); // data
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/mame/drivers/rx78.cpp b/src/mame/drivers/rx78.cpp
index 3f7818c3e30..cabc14f649c 100644
--- a/src/mame/drivers/rx78.cpp
+++ b/src/mame/drivers/rx78.cpp
@@ -421,13 +421,13 @@ DEVICE_IMAGE_LOAD_MEMBER( rx78_state, rx78_cart )
if (size != 0x2000 && size != 0x4000)
{
image.seterror(IMAGE_ERROR_UNSPECIFIED, "Unsupported cartridge size");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
m_cart->rom_alloc(size, GENERIC_ROM8_WIDTH, ENDIANNESS_LITTLE);
m_cart->common_load_rom(m_cart->get_rom_base(), size, "rom");
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
/* F4 Character Displayer */
diff --git a/src/mame/drivers/spectrum.cpp b/src/mame/drivers/spectrum.cpp
index 6cbcbe96642..4bf71cbce22 100644
--- a/src/mame/drivers/spectrum.cpp
+++ b/src/mame/drivers/spectrum.cpp
@@ -665,13 +665,13 @@ DEVICE_IMAGE_LOAD_MEMBER(spectrum_state, spectrum_cart)
if (size != 0x4000)
{
image.seterror(IMAGE_ERROR_UNSPECIFIED, "Unsupported cartridge size");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
m_cart->rom_alloc(size, GENERIC_ROM8_WIDTH, ENDIANNESS_LITTLE);
m_cart->common_load_rom(m_cart->get_rom_base(), size, "rom");
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
MACHINE_CONFIG_START( spectrum_common, spectrum_state )
diff --git a/src/mame/drivers/squale.cpp b/src/mame/drivers/squale.cpp
index 9975e247834..fa1cd13ee8e 100644
--- a/src/mame/drivers/squale.cpp
+++ b/src/mame/drivers/squale.cpp
@@ -595,13 +595,13 @@ DEVICE_IMAGE_LOAD_MEMBER( squale_state, squale_cart )
if ( ! size || size > 0x10000)
{
image.seterror(IMAGE_ERROR_UNSPECIFIED, "Unsupported cartridge size");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
m_cart->rom_alloc(size, GENERIC_ROM8_WIDTH, ENDIANNESS_LITTLE);
m_cart->common_load_rom(m_cart->get_rom_base(), size, "rom");
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
TIMER_DEVICE_CALLBACK_MEMBER( squale_state::squale_scanline )
diff --git a/src/mame/drivers/ssem.cpp b/src/mame/drivers/ssem.cpp
index 65f81ab2214..b9b82319932 100644
--- a/src/mame/drivers/ssem.cpp
+++ b/src/mame/drivers/ssem.cpp
@@ -606,7 +606,7 @@ QUICKLOAD_LOAD_MEMBER(ssem_state, ssem_store)
}
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
/****************************************************\
diff --git a/src/mame/drivers/studio2.cpp b/src/mame/drivers/studio2.cpp
index b1b27d475bc..fac2de99592 100644
--- a/src/mame/drivers/studio2.cpp
+++ b/src/mame/drivers/studio2.cpp
@@ -544,7 +544,7 @@ DEVICE_IMAGE_LOAD_MEMBER( studio2_state, studio2_cart_load )
if (image.length() <= 0x100)
{
image.seterror(IMAGE_ERROR_UNSPECIFIED, "Invalid ROM file");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
image.fread(&header, 0x100);
@@ -553,7 +553,7 @@ DEVICE_IMAGE_LOAD_MEMBER( studio2_state, studio2_cart_load )
if (strncmp((const char *)header, "RCA2", 4))
{
image.seterror(IMAGE_ERROR_UNSPECIFIED, "Not an .ST2 file");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
blocks = header[4];
@@ -583,7 +583,7 @@ DEVICE_IMAGE_LOAD_MEMBER( studio2_state, studio2_cart_load )
if (size > 0x400)
{
image.seterror(IMAGE_ERROR_UNSPECIFIED, "Unsupported cartridge size");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
else
image.fread(m_cart->get_rom_base(), size);
@@ -603,7 +603,7 @@ DEVICE_IMAGE_LOAD_MEMBER( studio2_state, studio2_cart_load )
memcpy(m_cart->get_rom_base() + 0xa00, image.get_software_region("rom_e00"), image.get_software_region_length("rom_e00"));
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/mame/drivers/stv.cpp b/src/mame/drivers/stv.cpp
index 55aa6b9873b..5e340f3e051 100644
--- a/src/mame/drivers/stv.cpp
+++ b/src/mame/drivers/stv.cpp
@@ -1272,13 +1272,13 @@ MACHINE_RESET_MEMBER(stv_state,stv)
m_vdp2.old_tvmd = -1;
}
-int stv_state::load_cart(device_image_interface &image, generic_slot_device *slot)
+image_init_result stv_state::load_cart(device_image_interface &image, generic_slot_device *slot)
{
UINT8 *ROM;
UINT32 size = slot->common_get_size("rom");
if (image.software_entry() == nullptr)
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
slot->rom_alloc(size, GENERIC_ROM32_WIDTH, ENDIANNESS_BIG);
ROM = slot->get_rom_base();
@@ -1301,7 +1301,7 @@ int stv_state::load_cart(device_image_interface &image, generic_slot_device *slo
}
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/mame/drivers/supracan.cpp b/src/mame/drivers/supracan.cpp
index db4b07c5a1c..3e4c00d964f 100644
--- a/src/mame/drivers/supracan.cpp
+++ b/src/mame/drivers/supracan.cpp
@@ -1748,13 +1748,13 @@ DEVICE_IMAGE_LOAD_MEMBER( supracan_state, supracan_cart )
if (size > 0x400000)
{
image.seterror(IMAGE_ERROR_UNSPECIFIED, "Unsupported cartridge size");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
m_cart->rom_alloc(size, GENERIC_ROM16_WIDTH, ENDIANNESS_BIG);
m_cart->common_load_rom(m_cart->get_rom_base(), size, "rom");
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/mame/drivers/sv8000.cpp b/src/mame/drivers/sv8000.cpp
index 03efe6a6015..6baf78e2896 100644
--- a/src/mame/drivers/sv8000.cpp
+++ b/src/mame/drivers/sv8000.cpp
@@ -201,13 +201,13 @@ DEVICE_IMAGE_LOAD_MEMBER( sv8000_state, cart )
if (size != 0x1000)
{
image.seterror(IMAGE_ERROR_UNSPECIFIED, "Incorrect or not support cartridge size");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
m_cart->rom_alloc(size, GENERIC_ROM8_WIDTH, ENDIANNESS_LITTLE);
m_cart->common_load_rom(m_cart->get_rom_base(), size, "rom");
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/mame/drivers/svi318.cpp b/src/mame/drivers/svi318.cpp
index 70ea137a26b..5dfc0fee2f3 100644
--- a/src/mame/drivers/svi318.cpp
+++ b/src/mame/drivers/svi318.cpp
@@ -505,7 +505,7 @@ DEVICE_IMAGE_LOAD_MEMBER( svi3x8_state, cartridge )
m_cart_rom->rom_alloc(size, GENERIC_ROM8_WIDTH, ENDIANNESS_LITTLE);
m_cart_rom->common_load_rom(m_cart_rom->get_rom_base(), size, "rom");
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/mame/drivers/svision.cpp b/src/mame/drivers/svision.cpp
index 5779b8811c6..b6ff3ec2618 100644
--- a/src/mame/drivers/svision.cpp
+++ b/src/mame/drivers/svision.cpp
@@ -459,13 +459,13 @@ DEVICE_IMAGE_LOAD_MEMBER( svision_state, svision_cart )
if (size > 0x20000)
{
image.seterror(IMAGE_ERROR_UNSPECIFIED, "Unsupported cartridge size");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
m_cart->rom_alloc(size, GENERIC_ROM8_WIDTH, ENDIANNESS_LITTLE);
m_cart->common_load_rom(m_cart->get_rom_base(), size, "rom");
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
void svision_state::machine_start()
diff --git a/src/mame/drivers/svmu.cpp b/src/mame/drivers/svmu.cpp
index 47775fcdd8b..aa0acb2c533 100644
--- a/src/mame/drivers/svmu.cpp
+++ b/src/mame/drivers/svmu.cpp
@@ -292,7 +292,7 @@ QUICKLOAD_LOAD_MEMBER( svmu_state, svmu )
vmufat_write_word(flash, 253, 0x1a, 0x0001); // offset of header (in blocks) from file start
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/mame/drivers/ti74.cpp b/src/mame/drivers/ti74.cpp
index 1f757426de0..cce5f176663 100644
--- a/src/mame/drivers/ti74.cpp
+++ b/src/mame/drivers/ti74.cpp
@@ -132,13 +132,13 @@ DEVICE_IMAGE_LOAD_MEMBER(ti74_state, ti74_cartridge)
if (size > 0x8000)
{
image.seterror(IMAGE_ERROR_UNSPECIFIED, "Invalid file size");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
m_cart->rom_alloc(size, GENERIC_ROM8_WIDTH, ENDIANNESS_LITTLE);
m_cart->common_load_rom(m_cart->get_rom_base(), size, "rom");
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/mame/drivers/timex.cpp b/src/mame/drivers/timex.cpp
index e90e38a008e..5fd75e50487 100644
--- a/src/mame/drivers/timex.cpp
+++ b/src/mame/drivers/timex.cpp
@@ -612,12 +612,12 @@ DEVICE_IMAGE_LOAD_MEMBER( spectrum_state, timex_cart )
if (size % 0x2000 != 9)
{
image.seterror(IMAGE_ERROR_UNSPECIFIED, "File corrupted");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
if (image.software_entry() != nullptr)
{
image.seterror(IMAGE_ERROR_UNSPECIFIED, "Loading from softlist is not supported yet");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
m_dock->rom_alloc(0x10000, GENERIC_ROM8_WIDTH, ENDIANNESS_LITTLE);
@@ -632,7 +632,7 @@ DEVICE_IMAGE_LOAD_MEMBER( spectrum_state, timex_cart )
if (chunks_in_file * 0x2000 + 0x09 != size)
{
image.seterror(IMAGE_ERROR_UNSPECIFIED, "File corrupted");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
switch (header[0])
@@ -656,7 +656,7 @@ DEVICE_IMAGE_LOAD_MEMBER( spectrum_state, timex_cart )
default:
image.seterror(IMAGE_ERROR_UNSPECIFIED, "Cart type not supported");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
logerror ("Cart loaded [Chunks %02x]\n", m_ram_chunks);
@@ -667,7 +667,7 @@ DEVICE_IMAGE_LOAD_MEMBER( spectrum_state, timex_cart )
memcpy(m_dock->get_rom_base(), image.get_software_region("rom"), size);
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/mame/drivers/tispeak.cpp b/src/mame/drivers/tispeak.cpp
index 292f755c5ac..9de5eb427b6 100644
--- a/src/mame/drivers/tispeak.cpp
+++ b/src/mame/drivers/tispeak.cpp
@@ -509,13 +509,13 @@ DEVICE_IMAGE_LOAD_MEMBER(tispeak_state, tispeak_cartridge)
if (size > m_cart_max_size)
{
image.seterror(IMAGE_ERROR_UNSPECIFIED, "Invalid file size");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
m_cart->rom_alloc(size, GENERIC_ROM8_WIDTH, ENDIANNESS_LITTLE);
m_cart->common_load_rom(m_cart->get_rom_base(), size, "rom");
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/mame/drivers/tm990189.cpp b/src/mame/drivers/tm990189.cpp
index c4bf55120a2..c924b89ddf8 100644
--- a/src/mame/drivers/tm990189.cpp
+++ b/src/mame/drivers/tm990189.cpp
@@ -443,7 +443,7 @@ public:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override;
protected:
// device-level overrides
@@ -480,14 +480,14 @@ void tm990_189_rs232_image_device::device_timer(emu_timer &timer, device_timer_i
}
}
-bool tm990_189_rs232_image_device::call_load()
+image_init_result tm990_189_rs232_image_device::call_load()
{
tm990189_state *state = machine().driver_data<tm990189_state>();
tms9902_device* tms9902 = static_cast<tms9902_device*>(machine().device("tms9902"));
tms9902->rcv_dsr(ASSERT_LINE);
state->m_rs232_input_timer = timer_alloc();
state->m_rs232_input_timer->adjust(attotime::zero, 0, attotime::from_msec(10));
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/mame/drivers/tmc1800.cpp b/src/mame/drivers/tmc1800.cpp
index 3b3133f090f..1b6c5b4e155 100644
--- a/src/mame/drivers/tmc1800.cpp
+++ b/src/mame/drivers/tmc1800.cpp
@@ -702,12 +702,12 @@ QUICKLOAD_LOAD_MEMBER( tmc1800_base_state, tmc1800 )
if (size > m_ram->size())
{
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
image.fread( ptr, size);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
static MACHINE_CONFIG_START( tmc1800, tmc1800_state )
diff --git a/src/mame/drivers/tourvis.cpp b/src/mame/drivers/tourvis.cpp
index 052fb4a6824..370ae4b6e47 100644
--- a/src/mame/drivers/tourvis.cpp
+++ b/src/mame/drivers/tourvis.cpp
@@ -355,7 +355,7 @@ DEVICE_IMAGE_LOAD_MEMBER( tourvision_state, tourvision_cart )
}
#endif
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
/* note from system11 - this system actually supports 2 players */
diff --git a/src/mame/drivers/tvc.cpp b/src/mame/drivers/tvc.cpp
index 6550c4b3866..f9cffa8ee09 100644
--- a/src/mame/drivers/tvc.cpp
+++ b/src/mame/drivers/tvc.cpp
@@ -742,11 +742,11 @@ QUICKLOAD_LOAD_MEMBER( tvc_state, tvc64)
{
image.fseek(0x90, SEEK_SET);
image.fread(m_ram->pointer() + 0x19ef, image.length() - 0x90);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
else
{
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
}
diff --git a/src/mame/drivers/tx0.cpp b/src/mame/drivers/tx0.cpp
index 19d4bbc3802..92c120adde2 100644
--- a/src/mame/drivers/tx0.cpp
+++ b/src/mame/drivers/tx0.cpp
@@ -369,7 +369,7 @@ public:
virtual bool is_reset_on_load() const override { return 0; }
virtual const char *file_extensions() const override { return "tap,rim"; }
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override;
protected:
// device-level overrides
@@ -402,7 +402,7 @@ public:
virtual bool is_reset_on_load() const override { return 0; }
virtual const char *file_extensions() const override { return "tap,rim"; }
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override;
protected:
// device-level overrides
@@ -436,7 +436,7 @@ public:
virtual bool is_reset_on_load() const override { return 0; }
virtual const char *file_extensions() const override { return "typ"; }
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override;
protected:
// device-level overrides
@@ -469,7 +469,7 @@ public:
virtual bool is_reset_on_load() const override { return 0; }
virtual const char *file_extensions() const override { return "tap"; }
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override;
protected:
// device-level overrides
@@ -490,7 +490,7 @@ tx0_magtape_image_device::tx0_magtape_image_device(const machine_config &mconfig
unit 0 is reader (read-only), unit 1 is puncher (write-only)
*/
-bool tx0_readtape_image_device::call_load()
+image_init_result tx0_readtape_image_device::call_load()
{
tx0_state *state = machine().driver_data<tx0_state>();
@@ -518,7 +518,7 @@ bool tx0_readtape_image_device::call_load()
}
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
void tx0_readtape_image_device::call_unload()
@@ -626,14 +626,14 @@ TIMER_CALLBACK_MEMBER(tx0_state::reader_callback)
/*
timer callback to generate punch completion pulse
*/
-bool tx0_punchtape_image_device::call_load()
+image_init_result tx0_punchtape_image_device::call_load()
{
tx0_state *state = machine().driver_data<tx0_state>();
/* punch unit */
state->m_tape_puncher.fd = this;
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
void tx0_punchtape_image_device::call_unload()
@@ -706,13 +706,13 @@ WRITE_LINE_MEMBER( tx0_state::tx0_io_p7h )
/*
Open a file for typewriter output
*/
-bool tx0_printer_image_device::call_load()
+image_init_result tx0_printer_image_device::call_load()
{
tx0_state *state = machine().driver_data<tx0_state>();
/* open file */
state->m_typewriter.fd = this;
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
void tx0_printer_image_device::call_unload()
@@ -846,7 +846,7 @@ void tx0_magtape_image_device::device_start()
/*
Open a magnetic tape image
*/
-bool tx0_magtape_image_device::call_load()
+image_init_result tx0_magtape_image_device::call_load()
{
tx0_state *state = machine().driver_data<tx0_state>();
state->m_magtape.img = this;
@@ -863,7 +863,7 @@ bool tx0_magtape_image_device::call_load()
state->schedule_select();
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
void tx0_magtape_image_device::call_unload()
diff --git a/src/mame/drivers/uzebox.cpp b/src/mame/drivers/uzebox.cpp
index 424f530e8e4..6e64f590e0b 100644
--- a/src/mame/drivers/uzebox.cpp
+++ b/src/mame/drivers/uzebox.cpp
@@ -260,7 +260,7 @@ DEVICE_IMAGE_LOAD_MEMBER(uzebox_state, uzebox_cart)
else
memcpy(m_cart->get_rom_base(), image.get_software_region("rom"), size);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/mame/drivers/vc4000.cpp b/src/mame/drivers/vc4000.cpp
index 1b645e8ecf4..66f1886b584 100644
--- a/src/mame/drivers/vc4000.cpp
+++ b/src/mame/drivers/vc4000.cpp
@@ -402,7 +402,7 @@ QUICKLOAD_LOAD_MEMBER( vc4000_state,vc4000)
int quick_length;
dynamic_buffer quick_data;
int read_;
- int result = IMAGE_INIT_FAIL;
+ image_init_result result = image_init_result::FAIL;
quick_length = image.length();
quick_data.resize(quick_length);
@@ -450,7 +450,7 @@ QUICKLOAD_LOAD_MEMBER( vc4000_state,vc4000)
// Start the quickload
m_maincpu->set_state_int(S2650_PC, exec_addr);
- result = IMAGE_INIT_PASS;
+ result = image_init_result::PASS;
}
}
}
@@ -508,7 +508,7 @@ QUICKLOAD_LOAD_MEMBER( vc4000_state,vc4000)
// Start the quickload
m_maincpu->set_state_int(S2650_PC, exec_addr);
- result = IMAGE_INIT_PASS;
+ result = image_init_result::PASS;
}
}
}
diff --git a/src/mame/drivers/vii.cpp b/src/mame/drivers/vii.cpp
index 3afdad57bcb..4854f350e6f 100644
--- a/src/mame/drivers/vii.cpp
+++ b/src/mame/drivers/vii.cpp
@@ -969,7 +969,7 @@ DEVICE_IMAGE_LOAD_MEMBER( vii_state, vii_cart )
if (size < 0x800000)
{
image.seterror(IMAGE_ERROR_UNSPECIFIED, "Unsupported cartridge size");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
m_cart->rom_alloc(size, GENERIC_ROM16_WIDTH, ENDIANNESS_LITTLE);
@@ -977,7 +977,7 @@ DEVICE_IMAGE_LOAD_MEMBER( vii_state, vii_cart )
test_centered(m_cart->get_rom_base());
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
DEVICE_IMAGE_LOAD_MEMBER( vii_state, vsmile_cart )
@@ -987,7 +987,7 @@ DEVICE_IMAGE_LOAD_MEMBER( vii_state, vsmile_cart )
m_cart->rom_alloc(size, GENERIC_ROM16_WIDTH, ENDIANNESS_LITTLE);
m_cart->common_load_rom(m_cart->get_rom_base(), size, "rom");
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/mame/drivers/vip.cpp b/src/mame/drivers/vip.cpp
index 6179d3d5b9c..2ccab30464c 100644
--- a/src/mame/drivers/vip.cpp
+++ b/src/mame/drivers/vip.cpp
@@ -682,7 +682,7 @@ QUICKLOAD_LOAD_MEMBER( vip_state, vip )
if ((size + chip8_size) > m_ram->size())
{
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
if (chip8_size > 0)
@@ -694,7 +694,7 @@ QUICKLOAD_LOAD_MEMBER( vip_state, vip )
/* load image to RAM */
image.fread(ram + chip8_size, size);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/mame/drivers/vtech1.cpp b/src/mame/drivers/vtech1.cpp
index 01ea9d775bb..fcd816afc55 100644
--- a/src/mame/drivers/vtech1.cpp
+++ b/src/mame/drivers/vtech1.cpp
@@ -136,7 +136,7 @@ SNAPSHOT_LOAD_MEMBER( vtech1_state, vtech1 )
image.seterror(IMAGE_ERROR_INVALIDIMAGE, "Insufficient RAM to load snapshot");
image.message("Insufficient RAM to load snapshot (%d bytes needed) [%s]", size, pgmname);
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
}
@@ -165,10 +165,10 @@ SNAPSHOT_LOAD_MEMBER( vtech1_state, vtech1 )
default:
image.seterror(IMAGE_ERROR_UNSUPPORTED, "Snapshot format not supported.");
image.message("Snapshot format not supported.");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/mame/drivers/wangpc.cpp b/src/mame/drivers/wangpc.cpp
index d1893f2c99d..59b7adf40f1 100644
--- a/src/mame/drivers/wangpc.cpp
+++ b/src/mame/drivers/wangpc.cpp
@@ -1025,11 +1025,11 @@ void wangpc_state::machine_reset()
// on_disk0_change -
//-------------------------------------------------
-int wangpc_state::on_disk0_load(floppy_image_device *image)
+image_init_result wangpc_state::on_disk0_load(floppy_image_device *image)
{
on_disk0_unload(image);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
void wangpc_state::on_disk0_unload(floppy_image_device *image)
@@ -1045,11 +1045,11 @@ void wangpc_state::on_disk0_unload(floppy_image_device *image)
// on_disk1_change -
//-------------------------------------------------
-int wangpc_state::on_disk1_load(floppy_image_device *image)
+image_init_result wangpc_state::on_disk1_load(floppy_image_device *image)
{
on_disk1_unload(image);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
void wangpc_state::on_disk1_unload(floppy_image_device *image)
diff --git a/src/mame/drivers/x07.cpp b/src/mame/drivers/x07.cpp
index 6716c3b60c8..cc56896b589 100644
--- a/src/mame/drivers/x07.cpp
+++ b/src/mame/drivers/x07.cpp
@@ -1059,7 +1059,7 @@ DEVICE_IMAGE_LOAD_MEMBER( x07_state, x07_card )
if (strcmp(card_type, "xp140"))
{
image.seterror(IMAGE_ERROR_UNSPECIFIED, "Unsupported card type");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
}
@@ -1068,7 +1068,7 @@ DEVICE_IMAGE_LOAD_MEMBER( x07_state, x07_card )
m_card->ram_alloc(0x1000);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
PALETTE_INIT_MEMBER(x07_state, x07)
diff --git a/src/mame/drivers/x68k.cpp b/src/mame/drivers/x68k.cpp
index 9b2703c0863..55448209726 100644
--- a/src/mame/drivers/x68k.cpp
+++ b/src/mame/drivers/x68k.cpp
@@ -1442,10 +1442,10 @@ void x68k_state::floppy_load_unload(bool load, floppy_image_device *dev)
}
}
-int x68k_state::floppy_load(floppy_image_device *dev)
+image_init_result x68k_state::floppy_load(floppy_image_device *dev)
{
floppy_load_unload(true, dev);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
void x68k_state::floppy_unload(floppy_image_device *dev)
diff --git a/src/mame/drivers/z1013.cpp b/src/mame/drivers/z1013.cpp
index 160b2744960..2fb8f850e85 100644
--- a/src/mame/drivers/z1013.cpp
+++ b/src/mame/drivers/z1013.cpp
@@ -326,7 +326,7 @@ SNAPSHOT_LOAD_MEMBER( z1013_state, z1013 )
{
image.seterror(IMAGE_ERROR_INVALIDIMAGE, "Not a Z1013 image");
image.message(" Not a Z1013 image");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
memcpy (m_maincpu->space(AS_PROGRAM).get_read_ptr(startaddr),
@@ -340,7 +340,7 @@ SNAPSHOT_LOAD_MEMBER( z1013_state, z1013 )
image.message(" Loaded but cannot run");
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
/* F4 Character Displayer */
diff --git a/src/mame/includes/aim65.h b/src/mame/includes/aim65.h
index 8ef3a8e98c2..c85f3c6078e 100644
--- a/src/mame/includes/aim65.h
+++ b/src/mame/includes/aim65.h
@@ -86,7 +86,7 @@ public:
void dl1416_update(dl1416_device *device, int index);
- int load_cart(device_image_interface &image, generic_slot_device *slot, const char *slot_tag);
+ image_init_result load_cart(device_image_interface &image, generic_slot_device *slot, const char *slot_tag);
DECLARE_DEVICE_IMAGE_LOAD_MEMBER(z24_load) { return load_cart(image, m_z24, "z24"); }
DECLARE_DEVICE_IMAGE_LOAD_MEMBER(z25_load) { return load_cart(image, m_z25, "z25"); }
DECLARE_DEVICE_IMAGE_LOAD_MEMBER(z26_load) { return load_cart(image, m_z26, "z26"); }
diff --git a/src/mame/includes/apollo.h b/src/mame/includes/apollo.h
index 7b7b4df2239..a654c8e4644 100644
--- a/src/mame/includes/apollo.h
+++ b/src/mame/includes/apollo.h
@@ -369,8 +369,8 @@ public:
DECLARE_READ16_MEMBER(read);
// image-level overrides
- virtual bool call_load() override;
- virtual bool call_create(int format_type, util::option_resolution *format_options) override;
+ virtual image_init_result call_load() override;
+ virtual image_init_result call_create(int format_type, util::option_resolution *format_options) override;
virtual void call_unload() override;
void set_node_id_from_disk();
diff --git a/src/mame/includes/atom.h b/src/mame/includes/atom.h
index af9ecff57cf..ce918299c71 100644
--- a/src/mame/includes/atom.h
+++ b/src/mame/includes/atom.h
@@ -112,7 +112,7 @@ public:
DECLARE_FLOPPY_FORMATS(floppy_formats);
TIMER_DEVICE_CALLBACK_MEMBER(cassette_output_tick);
- int load_cart(device_image_interface &image, generic_slot_device *slot);
+ image_init_result load_cart(device_image_interface &image, generic_slot_device *slot);
DECLARE_DEVICE_IMAGE_LOAD_MEMBER(cart_load) { return load_cart(image, m_cart); }
DECLARE_QUICKLOAD_LOAD_MEMBER(atom_atm);
};
diff --git a/src/mame/includes/bbc.h b/src/mame/includes/bbc.h
index b8f217c7ee6..f408a190f54 100644
--- a/src/mame/includes/bbc.h
+++ b/src/mame/includes/bbc.h
@@ -199,13 +199,13 @@ public:
void bbc_setup_banks(memory_bank *membank, int banks, UINT32 shift, UINT32 size);
void bbcm_setup_banks(memory_bank *membank, int banks, UINT32 shift, UINT32 size);
- int bbc_load_rom(device_image_interface &image, generic_slot_device *slot);
+ image_init_result bbc_load_rom(device_image_interface &image, generic_slot_device *slot);
DECLARE_DEVICE_IMAGE_LOAD_MEMBER(exp1_load) { return bbc_load_rom(image, m_exp1); }
DECLARE_DEVICE_IMAGE_LOAD_MEMBER(exp2_load) { return bbc_load_rom(image, m_exp2); }
DECLARE_DEVICE_IMAGE_LOAD_MEMBER(exp3_load) { return bbc_load_rom(image, m_exp3); }
DECLARE_DEVICE_IMAGE_LOAD_MEMBER(exp4_load) { return bbc_load_rom(image, m_exp4); }
- int bbcm_load_cart(device_image_interface &image, generic_slot_device *slot);
+ image_init_result bbcm_load_cart(device_image_interface &image, generic_slot_device *slot);
DECLARE_DEVICE_IMAGE_LOAD_MEMBER(bbcm_exp1_load) { return bbcm_load_cart(image, m_exp1); }
DECLARE_DEVICE_IMAGE_LOAD_MEMBER(bbcm_exp2_load) { return bbcm_load_cart(image, m_exp2); }
diff --git a/src/mame/includes/gamecom.h b/src/mame/includes/gamecom.h
index 7ab0843b225..89492f6c90b 100644
--- a/src/mame/includes/gamecom.h
+++ b/src/mame/includes/gamecom.h
@@ -274,7 +274,7 @@ private:
void handle_stylus_press(int column);
void recompute_lcd_params();
void handle_input_press(UINT16 mux_data);
- int common_load(device_image_interface &image, generic_slot_device *slot);
+ image_init_result common_load(device_image_interface &image, generic_slot_device *slot);
virtual void machine_reset() override;
virtual void video_start() override;
required_shared_ptr<UINT8> m_p_videoram;
diff --git a/src/mame/includes/hp48.h b/src/mame/includes/hp48.h
index ca5c0687e76..67aa83b2ae0 100644
--- a/src/mame/includes/hp48.h
+++ b/src/mame/includes/hp48.h
@@ -192,9 +192,9 @@ public:
virtual bool is_reset_on_load() const override { return 0; }
virtual const char *file_extensions() const override { return "crd"; }
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override;
- virtual bool call_create(int format_type, util::option_resolution *format_options) override;
+ virtual image_init_result call_create(int format_type, util::option_resolution *format_options) override;
protected:
// device-level overrides
virtual void device_config_complete() override;
diff --git a/src/mame/includes/jaguar.h b/src/mame/includes/jaguar.h
index 8744a63d5be..0caef91aa9d 100644
--- a/src/mame/includes/jaguar.h
+++ b/src/mame/includes/jaguar.h
@@ -243,7 +243,7 @@ public:
DECLARE_WRITE_LINE_MEMBER( dsp_cpu_int );
DECLARE_WRITE_LINE_MEMBER( external_int );
- int quickload(device_image_interface &image, const char *file_type, int quickload_size);
+ image_init_result quickload(device_image_interface &image, const char *file_type, int quickload_size);
void cart_start();
IRQ_CALLBACK_MEMBER(jaguar_irq_callback);
DECLARE_DEVICE_IMAGE_LOAD_MEMBER( jaguar_cart );
diff --git a/src/mame/includes/lviv.h b/src/mame/includes/lviv.h
index 3a50e491732..728fc1d4236 100644
--- a/src/mame/includes/lviv.h
+++ b/src/mame/includes/lviv.h
@@ -57,7 +57,7 @@ public:
void lviv_update_memory ();
void lviv_setup_snapshot (UINT8 * data);
void dump_registers();
- bool lviv_verify_snapshot (UINT8 * data, UINT32 size);
+ image_verify_result lviv_verify_snapshot(UINT8 * data, UINT32 size);
DECLARE_SNAPSHOT_LOAD_MEMBER( lviv );
DECLARE_INPUT_CHANGED_MEMBER(lviv_reset);
};
diff --git a/src/mame/includes/lynx.h b/src/mame/includes/lynx.h
index 6f3fcf779fa..890f9d0b1f2 100644
--- a/src/mame/includes/lynx.h
+++ b/src/mame/includes/lynx.h
@@ -181,7 +181,7 @@ public:
void lynx_timer_count_down(int which);
UINT32 lynx_time_factor(int val);
void lynx_uart_reset();
- bool lynx_verify_cart (char *header, int kind);
+ image_verify_result lynx_verify_cart(char *header, int kind);
DECLARE_QUICKLOAD_LOAD_MEMBER( lynx );
protected:
diff --git a/src/mame/includes/microtan.h b/src/mame/includes/microtan.h
index 1ab63792b4a..7513cf42f75 100644
--- a/src/mame/includes/microtan.h
+++ b/src/mame/includes/microtan.h
@@ -88,9 +88,9 @@ public:
UINT8 read_dsw();
void microtan_set_irq_line();
void store_key(int key);
- bool microtan_verify_snapshot(UINT8 *data, int size);
- int parse_intel_hex(UINT8 *snapshot_buff, char *src);
- int parse_zillion_hex(UINT8 *snapshot_buff, char *src);
+ image_verify_result microtan_verify_snapshot(UINT8 *data, int size);
+ image_init_result parse_intel_hex(UINT8 *snapshot_buff, char *src);
+ image_init_result parse_zillion_hex(UINT8 *snapshot_buff, char *src);
void microtan_set_cpu_regs(const UINT8 *snapshot_buff, int base);
void microtan_snapshot_copy(UINT8 *snapshot_buff, int snapshot_size);
DECLARE_SNAPSHOT_LOAD_MEMBER( microtan );
diff --git a/src/mame/includes/stv.h b/src/mame/includes/stv.h
index 284d722b3f0..befa2c7a569 100644
--- a/src/mame/includes/stv.h
+++ b/src/mame/includes/stv.h
@@ -80,7 +80,7 @@ public:
DECLARE_READ32_MEMBER(magzun_hef_hack_r);
DECLARE_READ32_MEMBER(magzun_rx_hack_r);
- int load_cart(device_image_interface &image, generic_slot_device *slot);
+ image_init_result load_cart(device_image_interface &image, generic_slot_device *slot);
DECLARE_DEVICE_IMAGE_LOAD_MEMBER( stv_cart1 ) { return load_cart(image, m_cart1); }
DECLARE_DEVICE_IMAGE_LOAD_MEMBER( stv_cart2 ) { return load_cart(image, m_cart2); }
DECLARE_DEVICE_IMAGE_LOAD_MEMBER( stv_cart3 ) { return load_cart(image, m_cart3); }
diff --git a/src/mame/includes/wangpc.h b/src/mame/includes/wangpc.h
index 05278e32671..8ea1d5a2332 100644
--- a/src/mame/includes/wangpc.h
+++ b/src/mame/includes/wangpc.h
@@ -168,9 +168,9 @@ public:
DECLARE_WRITE_LINE_MEMBER( fdc_irq );
DECLARE_WRITE_LINE_MEMBER( fdc_drq );
- int on_disk0_load(floppy_image_device *image);
+ image_init_result on_disk0_load(floppy_image_device *image);
void on_disk0_unload(floppy_image_device *image);
- int on_disk1_load(floppy_image_device *image);
+ image_init_result on_disk1_load(floppy_image_device *image);
void on_disk1_unload(floppy_image_device *image);
UINT8 m_dma_page[4];
diff --git a/src/mame/includes/x68k.h b/src/mame/includes/x68k.h
index 0d7cfa18664..70273daf938 100644
--- a/src/mame/includes/x68k.h
+++ b/src/mame/includes/x68k.h
@@ -118,7 +118,7 @@ public:
bitmap_ind16 m_special;
void floppy_load_unload(bool load, floppy_image_device *dev);
- int floppy_load(floppy_image_device *dev);
+ image_init_result floppy_load(floppy_image_device *dev);
void floppy_unload(floppy_image_device *dev);
DECLARE_FLOPPY_FORMATS( floppy_formats );
diff --git a/src/mame/machine/amstrad.cpp b/src/mame/machine/amstrad.cpp
index a26ebcbc07d..72aa763864c 100644
--- a/src/mame/machine/amstrad.cpp
+++ b/src/mame/machine/amstrad.cpp
@@ -3266,7 +3266,7 @@ SNAPSHOT_LOAD_MEMBER( amstrad_state,amstrad)
/* get file size */
if (snapshot_size < 8)
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
snapshot.resize(snapshot_size);
@@ -3275,11 +3275,11 @@ SNAPSHOT_LOAD_MEMBER( amstrad_state,amstrad)
if (memcmp(&snapshot[0], "MV - SNA", 8))
{
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
amstrad_handle_snapshot(&snapshot[0]);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
@@ -3322,7 +3322,7 @@ DEVICE_IMAGE_LOAD_MEMBER(amstrad_state, amstrad_plus_cartridge)
if (size % 0x4000)
{
image.seterror(IMAGE_ERROR_UNSPECIFIED, "Attempt to load a raw binary with some block smaller than 16kB in size");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
else
image.fread(m_cart->get_rom_base(), size);
@@ -3353,7 +3353,7 @@ DEVICE_IMAGE_LOAD_MEMBER(amstrad_state, amstrad_plus_cartridge)
if (strncmp((char*)(header + 8), "AMS!", 4) != 0)
{
image.seterror(IMAGE_ERROR_UNSPECIFIED, "Not an Amstrad CPC cartridge image (despite RIFF header)");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
bytes_to_read = header[4] + (header[5] << 8) + (header[6] << 16)+ (header[7] << 24);
@@ -3405,5 +3405,5 @@ DEVICE_IMAGE_LOAD_MEMBER(amstrad_state, amstrad_plus_cartridge)
}
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/mame/machine/apollo.cpp b/src/mame/machine/apollo.cpp
index e28dc6e9c23..f7af91cd4b4 100644
--- a/src/mame/machine/apollo.cpp
+++ b/src/mame/machine/apollo.cpp
@@ -967,7 +967,7 @@ READ16_MEMBER(apollo_ni::read)
/*-------------------------------------------------
DEVICE_IMAGE_LOAD( rom )
-------------------------------------------------*/
-bool apollo_ni::call_load()
+image_init_result apollo_ni::call_load()
{
CLOG1(("apollo_ni::call_load: %s", filename()));
@@ -990,17 +990,17 @@ bool apollo_ni::call_load()
{
m_node_id = (((data[2] << 8) | data[4]) << 8) | (data[6]);
CLOG1(("apollo_ni::call_load: node ID is %x", m_node_id));
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
}
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
/*-------------------------------------------------
DEVICE_IMAGE_CREATE( rom )
-------------------------------------------------*/
-bool apollo_ni::call_create(int format_type, util::option_resolution *format_options)
+image_init_result apollo_ni::call_create(int format_type, util::option_resolution *format_options)
{
CLOG1(("apollo_ni::call_create:"));
@@ -1027,10 +1027,10 @@ bool apollo_ni::call_create(int format_type, util::option_resolution *format_opt
fwrite(data, sizeof(data));
CLOG(("apollo_ni::call_create: created %s with node ID %x", filename(), node_id));
set_node_id(node_id);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
}
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
/*-------------------------------------------------
diff --git a/src/mame/machine/bbc.cpp b/src/mame/machine/bbc.cpp
index 7a9317feeb3..abde109215c 100644
--- a/src/mame/machine/bbc.cpp
+++ b/src/mame/machine/bbc.cpp
@@ -1598,7 +1598,7 @@ WRITE8_MEMBER(bbc_state::bbcm_wd1772l_write)
BBC B Rom loading functions
***************************************/
-int bbc_state::bbc_load_rom(device_image_interface &image, generic_slot_device *slot)
+image_init_result bbc_state::bbc_load_rom(device_image_interface &image, generic_slot_device *slot)
{
UINT32 size = slot->common_get_size("rom");
@@ -1606,20 +1606,20 @@ int bbc_state::bbc_load_rom(device_image_interface &image, generic_slot_device *
if (size != 0x2000 && size != 0x4000)
{
image.seterror(IMAGE_ERROR_UNSPECIFIED, "Unsupported ROM size");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
slot->rom_alloc(size, GENERIC_ROM8_WIDTH, ENDIANNESS_LITTLE);
slot->common_load_rom(slot->get_rom_base(), size, "rom");
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
/**************************************
BBC Master Rom loading functions
***************************************/
-int bbc_state::bbcm_load_cart(device_image_interface &image, generic_slot_device *slot)
+image_init_result bbc_state::bbcm_load_cart(device_image_interface &image, generic_slot_device *slot)
{
if (image.software_entry() == nullptr)
{
@@ -1628,12 +1628,12 @@ int bbc_state::bbcm_load_cart(device_image_interface &image, generic_slot_device
if (filesize != 0x8000)
{
image.seterror(IMAGE_ERROR_UNSPECIFIED, "Unsupported cartridge size");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
slot->rom_alloc(filesize, GENERIC_ROM8_WIDTH, ENDIANNESS_LITTLE);
image.fread(slot->get_rom_base(), filesize);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
else
{
@@ -1643,7 +1643,7 @@ int bbc_state::bbcm_load_cart(device_image_interface &image, generic_slot_device
if (size_lo + size_hi != 0x8000)
{
image.seterror(IMAGE_ERROR_UNSPECIFIED, "Unsupported cartridge size");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
slot->rom_alloc(size_lo + size_hi, GENERIC_ROM8_WIDTH, ENDIANNESS_LITTLE);
@@ -1651,7 +1651,7 @@ int bbc_state::bbcm_load_cart(device_image_interface &image, generic_slot_device
memcpy(slot->get_rom_base() + size_hi, image.get_software_region("lorom"), size_lo);
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/mame/machine/cbm_snqk.cpp b/src/mame/machine/cbm_snqk.cpp
index 348f252432f..f8a481a6143 100644
--- a/src/mame/machine/cbm_snqk.cpp
+++ b/src/mame/machine/cbm_snqk.cpp
@@ -24,7 +24,7 @@
* 0x001c data */
-int general_cbm_loadsnap( device_image_interface &image, const char *file_type, int snapshot_size,
+image_init_result general_cbm_loadsnap( device_image_interface &image, const char *file_type, int snapshot_size,
address_space &space, offs_t offset, void (*cbm_sethiaddress)(address_space &space, UINT16 hiaddress) )
{
char buffer[7];
@@ -81,10 +81,10 @@ int general_cbm_loadsnap( device_image_interface &image, const char *file_type,
space.write_byte(address + i + offset, data[i]);
cbm_sethiaddress(space, address + snapshot_size);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
error:
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
void cbm_quick_sethiaddress( address_space &space, UINT16 hiaddress )
diff --git a/src/mame/machine/cbm_snqk.h b/src/mame/machine/cbm_snqk.h
index 3abfbf36309..74ed76a134e 100644
--- a/src/mame/machine/cbm_snqk.h
+++ b/src/mame/machine/cbm_snqk.h
@@ -13,7 +13,7 @@
#define CBM_QUICKLOAD_DELAY_SECONDS 3
-int general_cbm_loadsnap( device_image_interface &image, const char *file_type, int snapshot_size,
+image_init_result general_cbm_loadsnap( device_image_interface &image, const char *file_type, int snapshot_size,
address_space &space, offs_t offset, void (*cbm_sethiaddress)(address_space &space, UINT16 hiaddress) );
void cbm_quick_sethiaddress( address_space &space, UINT16 hiaddress );
diff --git a/src/mame/machine/coco_vhd.cpp b/src/mame/machine/coco_vhd.cpp
index 9965b3c0fe3..1a0c7e680da 100644
--- a/src/mame/machine/coco_vhd.cpp
+++ b/src/mame/machine/coco_vhd.cpp
@@ -116,12 +116,12 @@ void coco_vhd_image_device::device_start()
// call_load
//-------------------------------------------------
-bool coco_vhd_image_device::call_load()
+image_init_result coco_vhd_image_device::call_load()
{
m_status = VHDSTATUS_POWER_ON_STATE;
m_logical_record_number = 0;
m_buffer_address = 0;
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/mame/machine/coco_vhd.h b/src/mame/machine/coco_vhd.h
index c1b5b9bac90..02c6ef1574e 100644
--- a/src/mame/machine/coco_vhd.h
+++ b/src/mame/machine/coco_vhd.h
@@ -27,7 +27,7 @@ public:
virtual ~coco_vhd_image_device();
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual iodevice_t image_type() const override { return IO_HARDDISK; }
diff --git a/src/mame/machine/cybiko.cpp b/src/mame/machine/cybiko.cpp
index 010d0dc3e71..c4ce31ec36c 100644
--- a/src/mame/machine/cybiko.cpp
+++ b/src/mame/machine/cybiko.cpp
@@ -40,7 +40,7 @@ QUICKLOAD_LOAD_MEMBER( cybiko_state, cybiko )
{
image.fread(m_flash1->get_ptr(), std::min(image.length(), UINT64(0x84000)));
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
QUICKLOAD_LOAD_MEMBER( cybiko_state, cybikoxt )
@@ -53,7 +53,7 @@ QUICKLOAD_LOAD_MEMBER( cybiko_state, cybikoxt )
for (int byte = 0; byte < size; byte++)
dest.write_byte(0x400000 + byte, buffer[byte]);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
///////////////////
diff --git a/src/mame/machine/electron.cpp b/src/mame/machine/electron.cpp
index e3d847ae835..ab6cbda4b80 100644
--- a/src/mame/machine/electron.cpp
+++ b/src/mame/machine/electron.cpp
@@ -413,12 +413,12 @@ DEVICE_IMAGE_LOAD_MEMBER( electron_state, electron_cart )
if (filesize != 16384)
{
image.seterror(IMAGE_ERROR_UNSPECIFIED, "Invalid size: Only size 16384 is supported");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
m_cart->rom_alloc(filesize, GENERIC_ROM8_WIDTH, ENDIANNESS_LITTLE);
image.fread(m_cart->get_rom_base(), filesize);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
else
{
@@ -428,13 +428,13 @@ DEVICE_IMAGE_LOAD_MEMBER( electron_state, electron_cart )
if (upsize != 16384 && upsize != 0)
{
image.seterror(IMAGE_ERROR_UNSPECIFIED, "Invalid size for uprom");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
if (losize != 16384 && losize != 0)
{
image.seterror(IMAGE_ERROR_UNSPECIFIED, "Invalid size for lorom");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
m_cart->rom_alloc(upsize + losize, GENERIC_ROM8_WIDTH, ENDIANNESS_LITTLE);
@@ -445,6 +445,6 @@ DEVICE_IMAGE_LOAD_MEMBER( electron_state, electron_cart )
if (losize)
memcpy(m_cart->get_rom_base() + upsize, image.get_software_region("lorom"), losize);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
}
diff --git a/src/mame/machine/galaxy.cpp b/src/mame/machine/galaxy.cpp
index 2356a193b7e..681eaffb16c 100644
--- a/src/mame/machine/galaxy.cpp
+++ b/src/mame/machine/galaxy.cpp
@@ -133,14 +133,14 @@ SNAPSHOT_LOAD_MEMBER( galaxy_state, galaxy )
snapshot_data = auto_alloc_array(machine(), UINT8, snapshot_size);
break;
default:
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
image.fread( snapshot_data, snapshot_size);
galaxy_setup_snapshot(snapshot_data, snapshot_size);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/mame/machine/gamecom.cpp b/src/mame/machine/gamecom.cpp
index 60242cb7f85..03cf2786152 100644
--- a/src/mame/machine/gamecom.cpp
+++ b/src/mame/machine/gamecom.cpp
@@ -633,7 +633,7 @@ DRIVER_INIT_MEMBER(gamecom_state,gamecom)
m_p_ram = m_region_maincpu->base(); // required here because pio_w gets called before machine_reset
}
-int gamecom_state::common_load(device_image_interface &image, generic_slot_device *slot)
+image_init_result gamecom_state::common_load(device_image_interface &image, generic_slot_device *slot)
{
UINT32 size = slot->common_get_size("rom");
UINT32 load_offset = 0;
@@ -642,7 +642,7 @@ int gamecom_state::common_load(device_image_interface &image, generic_slot_devic
&& size != 0x100000 && size != 0x1c0000 && size != 0x200000)
{
image.seterror(IMAGE_ERROR_UNSPECIFIED, "Unsupported cartridge size");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
if (size == 0x1c0000)
@@ -661,7 +661,7 @@ int gamecom_state::common_load(device_image_interface &image, generic_slot_devic
if (size < 0x100000) { memcpy(crt + 0x080000, crt, 0x080000); } /* ->1MB */
if (size < 0x1c0000) { memcpy(crt + 0x100000, crt, 0x100000); } /* -> >=1.8MB */
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
DEVICE_IMAGE_LOAD_MEMBER( gamecom_state, gamecom_cart1 )
diff --git a/src/mame/machine/hp48.cpp b/src/mame/machine/hp48.cpp
index 3b7643e4dd9..106e6a5f01b 100644
--- a/src/mame/machine/hp48.cpp
+++ b/src/mame/machine/hp48.cpp
@@ -945,7 +945,7 @@ void hp48_port_image_device::hp48_unfill_port()
}
-bool hp48_port_image_device::call_load()
+image_init_result hp48_port_image_device::call_load()
{
hp48_state *state = machine().driver_data<hp48_state>();
int size = length();
@@ -956,7 +956,7 @@ bool hp48_port_image_device::call_load()
if ( (size < 32*1024) || (size > m_max_size) || (size & (size-1)) )
{
logerror( "hp48: image size for %s should be a power of two between %i and %i\n", tag(), 32*1024, m_max_size );
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
state->m_port_size[m_port] = size;
@@ -964,10 +964,10 @@ bool hp48_port_image_device::call_load()
hp48_fill_port( );
fread(state->m_port_data[m_port].get(), state->m_port_size[m_port] );
state->hp48_decode_nibble( state->m_port_data[m_port].get(), state->m_port_data[m_port].get(), state->m_port_size[m_port] );
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
-bool hp48_port_image_device::call_create(int format_type, util::option_resolution *format_options)
+image_init_result hp48_port_image_device::call_create(int format_type, util::option_resolution *format_options)
{
hp48_state *state = machine().driver_data<hp48_state>();
int size = m_max_size;
@@ -979,13 +979,13 @@ bool hp48_port_image_device::call_create(int format_type, util::option_resolutio
if ( (size < 32*1024) || (size > m_max_size) || (size & (size-1)) )
{
logerror( "hp48: image size for %s should be a power of two between %i and %i\n", tag(), 32*1024, m_max_size );
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
state->m_port_size[m_port] = size;
state->m_port_write[m_port] = 1;
hp48_fill_port();
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
void hp48_port_image_device::call_unload()
diff --git a/src/mame/machine/kaypro.cpp b/src/mame/machine/kaypro.cpp
index 8c914d01750..d396f7c6803 100644
--- a/src/mame/machine/kaypro.cpp
+++ b/src/mame/machine/kaypro.cpp
@@ -278,7 +278,7 @@ QUICKLOAD_LOAD_MEMBER( kaypro_state, kaypro )
/* Load image to the TPA (Transient Program Area) */
for (i = 0; i < quickload_size; i++)
{
- if (image.fread( &data, 1) != 1) return IMAGE_INIT_FAIL;
+ if (image.fread( &data, 1) != 1) return image_init_result::FAIL;
RAM[i+0x100] = data;
}
@@ -288,5 +288,5 @@ QUICKLOAD_LOAD_MEMBER( kaypro_state, kaypro )
RAM[0x80]=0; // clear out command tail
RAM[0x81]=0;
m_maincpu->set_pc(0x100); // start program
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/mame/machine/kc.cpp b/src/mame/machine/kc.cpp
index 92e379b0eb4..a097690cc75 100644
--- a/src/mame/machine/kc.cpp
+++ b/src/mame/machine/kc.cpp
@@ -38,7 +38,7 @@ QUICKLOAD_LOAD_MEMBER( kc_state,kc)
UINT64 size = image.length();
if (size == 0)
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
dynamic_buffer data(size);
image.fread( &data[0], size);
@@ -67,7 +67,7 @@ QUICKLOAD_LOAD_MEMBER( kc_state,kc)
logerror("Snapshot loaded at: 0x%04x-0x%04x, execution address: 0x%04x\n", addr, addr + datasize - 1, execution_address);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/mame/machine/lviv.cpp b/src/mame/machine/lviv.cpp
index 44f307b7164..54d48c39058 100644
--- a/src/mame/machine/lviv.cpp
+++ b/src/mame/machine/lviv.cpp
@@ -281,24 +281,24 @@ void lviv_state::dump_registers()
logerror("HL = %04x\n", (unsigned) m_maincpu->state_int(I8085_HL));
}
-bool lviv_state::lviv_verify_snapshot (UINT8 * data, UINT32 size)
+image_verify_result lviv_state::lviv_verify_snapshot(UINT8 * data, UINT32 size)
{
const char* tag = "LVOV/DUMP/2.0/";
- if( strncmp( tag, (char*)data, strlen(tag) ) )
+ if (strncmp(tag, (char*)data, strlen(tag)))
{
logerror("Not a Lviv snapshot\n");
- return false;
+ return image_verify_result::FAIL;
}
if (size != LVIV_SNAPSHOT_SIZE)
{
logerror ("Incomplete snapshot file\n");
- return false;
+ return image_verify_result::FAIL;
}
logerror("returning ID_OK\n");
- return true;
+ return image_verify_result::PASS;
}
SNAPSHOT_LOAD_MEMBER( lviv_state, lviv )
@@ -307,9 +307,9 @@ SNAPSHOT_LOAD_MEMBER( lviv_state, lviv )
image.fread( &lviv_snapshot_data[0], LVIV_SNAPSHOT_SIZE);
- if(!lviv_verify_snapshot(&lviv_snapshot_data[0], snapshot_size))
+ if (lviv_verify_snapshot(&lviv_snapshot_data[0], snapshot_size) != image_verify_result::PASS)
{
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
lviv_setup_snapshot (&lviv_snapshot_data[0]);
@@ -317,5 +317,5 @@ SNAPSHOT_LOAD_MEMBER( lviv_state, lviv )
dump_registers();
logerror("Snapshot file loaded\n");
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/mame/machine/lynx.cpp b/src/mame/machine/lynx.cpp
index e7a83692d4a..c4280708303 100644
--- a/src/mame/machine/lynx.cpp
+++ b/src/mame/machine/lynx.cpp
@@ -2030,14 +2030,14 @@ void lynx_state::machine_start()
****************************************/
-bool lynx_state::lynx_verify_cart (char *header, int kind)
+image_verify_result lynx_state::lynx_verify_cart(char *header, int kind)
{
if (kind)
{
if (strncmp("BS93", &header[6], 4))
{
logerror("This is not a valid Lynx image\n");
- return false;
+ return image_verify_result::FAIL;
}
}
else
@@ -2051,11 +2051,11 @@ bool lynx_state::lynx_verify_cart (char *header, int kind)
}
else
logerror("This is not a valid Lynx image\n");
- return false;
+ return image_verify_result::FAIL;
}
}
- return true;
+ return image_verify_result::PASS;
}
DEVICE_IMAGE_LOAD_MEMBER( lynx_state, lynx_cart )
@@ -2081,8 +2081,8 @@ DEVICE_IMAGE_LOAD_MEMBER( lynx_state, lynx_cart )
image.fread(header, 0x40);
// Check the image
- if (!lynx_verify_cart((char*)header, LYNX_CART))
- return IMAGE_INIT_FAIL;
+ if (lynx_verify_cart((char*)header, LYNX_CART) != image_verify_result::PASS)
+ return image_init_result::FAIL;
/* 2008-10 FP: According to Handy source these should be page_size_bank0. Are we using
it correctly in MESS? Moreover, the next two values should be page_size_bank1. We should
@@ -2138,5 +2138,5 @@ DEVICE_IMAGE_LOAD_MEMBER( lynx_state, lynx_cart )
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/mame/machine/mbee.cpp b/src/mame/machine/mbee.cpp
index 70c22e71384..778d16c026d 100644
--- a/src/mame/machine/mbee.cpp
+++ b/src/mame/machine/mbee.cpp
@@ -637,7 +637,7 @@ QUICKLOAD_LOAD_MEMBER( mbee_state, mbee )
if (image.fread(&data, 1) != 1)
{
image.message("Unexpected EOF");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
if ((j < m_size) || (j > 0xefff))
@@ -645,7 +645,7 @@ QUICKLOAD_LOAD_MEMBER( mbee_state, mbee )
else
{
image.message("Not enough memory in this microbee");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
}
@@ -667,7 +667,7 @@ QUICKLOAD_LOAD_MEMBER( mbee_state, mbee )
if (image.fread(&data, 1) != 1)
{
image.message("Unexpected EOF");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
if ((j < m_size) || (j > 0xefff))
@@ -675,7 +675,7 @@ QUICKLOAD_LOAD_MEMBER( mbee_state, mbee )
else
{
image.message("Not enough memory in this microbee");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
}
@@ -691,7 +691,7 @@ QUICKLOAD_LOAD_MEMBER( mbee_state, mbee )
if (image.fread(&data, 1) != 1)
{
image.message("Unexpected EOF");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
if ((j < m_size) || (j > 0xefff))
@@ -699,14 +699,14 @@ QUICKLOAD_LOAD_MEMBER( mbee_state, mbee )
else
{
image.message("Not enough memory in this microbee");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
}
if (sw) m_maincpu->set_pc(0x900);
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
@@ -721,8 +721,8 @@ QUICKLOAD_LOAD_MEMBER( mbee_state, mbee_z80bin )
address_space &space = m_maincpu->space(AS_PROGRAM);
/* load the binary into memory */
- if (z80bin_load_file(&image, space, file_type, &execute_address, &start_addr, &end_addr) == IMAGE_INIT_FAIL)
- return IMAGE_INIT_FAIL;
+ if (z80bin_load_file(&image, space, file_type, &execute_address, &start_addr, &end_addr) != image_init_result::PASS)
+ return image_init_result::FAIL;
/* is this file executable? */
if (execute_address != 0xffff)
@@ -743,5 +743,5 @@ QUICKLOAD_LOAD_MEMBER( mbee_state, mbee_z80bin )
}
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/mame/machine/microdrv.cpp b/src/mame/machine/microdrv.cpp
index 36406bd1bdf..3edc60ea527 100644
--- a/src/mame/machine/microdrv.cpp
+++ b/src/mame/machine/microdrv.cpp
@@ -90,10 +90,10 @@ void microdrive_image_device::device_start()
m_comms_out = 0;
}
-bool microdrive_image_device::call_load()
+image_init_result microdrive_image_device::call_load()
{
if (length() != MDV_IMAGE_LENGTH)
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
for (int i = 0; i < MDV_IMAGE_LENGTH / 2; i++)
{
@@ -104,7 +104,7 @@ bool microdrive_image_device::call_load()
m_bit_offset = 0;
m_byte_offset = 0;
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
void microdrive_image_device::call_unload()
diff --git a/src/mame/machine/microdrv.h b/src/mame/machine/microdrv.h
index 0b7b69fcd90..5e1547b9dc5 100644
--- a/src/mame/machine/microdrv.h
+++ b/src/mame/machine/microdrv.h
@@ -48,7 +48,7 @@ public:
template<class _Object> static devcb_base &set_comms_out_wr_callback(device_t &device, _Object object) { return downcast<microdrive_image_device &>(device).m_write_comms_out.set_callback(object); }
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override;
virtual const software_list_loader &get_software_list_loader() const override { return image_software_list_loader::instance(); }
diff --git a/src/mame/machine/microtan.cpp b/src/mame/machine/microtan.cpp
index 422e79e16aa..a4d1503aa35 100644
--- a/src/mame/machine/microtan.cpp
+++ b/src/mame/machine/microtan.cpp
@@ -522,26 +522,26 @@ void microtan_state::machine_reset()
output().set_led_value(1, (m_keyrows[3] & 0x80) ? 0 : 1);
}
-bool microtan_state::microtan_verify_snapshot(UINT8 *data, int size)
+image_verify_result microtan_state::microtan_verify_snapshot(UINT8 *data, int size)
{
if (size == 8263)
{
logerror("microtan_snapshot_id: magic size %d found\n", size);
- return true;
+ return image_verify_result::PASS;
}
else
{
if (4 + data[2] + 256 * data[3] + 1 + 16 + 16 + 16 + 1 + 1 + 16 + 16 + 64 + 7 == size)
{
logerror("microtan_snapshot_id: header RAM size + structures matches filesize %d\n", size);
- return true;
+ return image_verify_result::PASS;
}
}
- return false;
+ return image_verify_result::FAIL;
}
-int microtan_state::parse_intel_hex(UINT8 *snapshot_buff, char *src)
+image_init_result microtan_state::parse_intel_hex(UINT8 *snapshot_buff, char *src)
{
char line[128];
int /*row = 0,*/ column = 0, last_addr = 0, last_size = 0;
@@ -619,10 +619,10 @@ int microtan_state::parse_intel_hex(UINT8 *snapshot_buff, char *src)
logerror("parse_intel_hex: registers (?) at %04X\n", last_addr);
memcpy(&snapshot_buff[8192+64], &snapshot_buff[last_addr], last_size);
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
-int microtan_state::parse_zillion_hex(UINT8 *snapshot_buff, char *src)
+image_init_result microtan_state::parse_zillion_hex(UINT8 *snapshot_buff, char *src)
{
char line[128];
int parsing = 0, /*row = 0,*/ column = 0;
@@ -702,7 +702,7 @@ int microtan_state::parse_zillion_hex(UINT8 *snapshot_buff, char *src)
}
src++;
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
void microtan_state::microtan_set_cpu_regs(const UINT8 *snapshot_buff, int base)
@@ -825,13 +825,13 @@ SNAPSHOT_LOAD_MEMBER( microtan_state, microtan )
snapshot_buff = (UINT8*)image.ptr();
if (!snapshot_buff)
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
- if (!microtan_verify_snapshot(snapshot_buff, snapshot_size))
- return IMAGE_INIT_FAIL;
+ if (microtan_verify_snapshot(snapshot_buff, snapshot_size) != image_verify_result::PASS)
+ return image_init_result::FAIL;
microtan_snapshot_copy(snapshot_buff, snapshot_size);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
QUICKLOAD_LOAD_MEMBER( microtan_state, microtan )
@@ -839,7 +839,7 @@ QUICKLOAD_LOAD_MEMBER( microtan_state, microtan )
int snapshot_size = 8263; /* magic size */
dynamic_buffer snapshot_buff(snapshot_size, 0);
std::vector<char> buff(quickload_size + 1);
- int rc;
+ image_init_result rc;
image.fread(&buff[0], quickload_size);
@@ -849,7 +849,7 @@ QUICKLOAD_LOAD_MEMBER( microtan_state, microtan )
rc = parse_intel_hex(&snapshot_buff[0], &buff[0]);
else
rc = parse_zillion_hex(&snapshot_buff[0], &buff[0]);
- if (rc == IMAGE_INIT_PASS)
+ if (rc == image_init_result::PASS)
microtan_snapshot_copy(&snapshot_buff[0], snapshot_size);
return rc;
}
diff --git a/src/mame/machine/mtx.cpp b/src/mame/machine/mtx.cpp
index 26a0ae6876a..6f6fb8acc17 100644
--- a/src/mame/machine/mtx.cpp
+++ b/src/mame/machine/mtx.cpp
@@ -348,7 +348,7 @@ SNAPSHOT_LOAD_MEMBER( mtx_state, mtx )
if (header[0] != 0xff)
{
image.seterror(IMAGE_ERROR_INVALIDIMAGE, nullptr);
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
// get tape name
@@ -385,7 +385,7 @@ SNAPSHOT_LOAD_MEMBER( mtx_state, mtx )
logerror("snapshot name = '%s', system_size = 0x%04x, data_size = 0x%04x\n", tape_name, system_variables_size, data_size);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
/***************************************************************************
diff --git a/src/mame/machine/nc.cpp b/src/mame/machine/nc.cpp
index 07041c5c787..3f5ba19fbce 100644
--- a/src/mame/machine/nc.cpp
+++ b/src/mame/machine/nc.cpp
@@ -56,7 +56,7 @@ DEVICE_IMAGE_LOAD_MEMBER( nc_state, nc_pcmcia_card )
set_card_present_state(1);
m_membank_card_ram_mask = card_calculate_mask(size);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/mame/machine/ng_memcard.cpp b/src/mame/machine/ng_memcard.cpp
index 17b2c3178f5..f9c1ea10843 100644
--- a/src/mame/machine/ng_memcard.cpp
+++ b/src/mame/machine/ng_memcard.cpp
@@ -53,17 +53,17 @@ void ng_memcard_device::device_start()
with the given index
-------------------------------------------------*/
-bool ng_memcard_device::call_load()
+image_init_result ng_memcard_device::call_load()
{
if(length() != 0x800)
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
fseek(0, SEEK_SET);
size_t ret = fread(m_memcard_data, 0x800);
if(ret != 0x800)
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
void ng_memcard_device::call_unload()
@@ -72,15 +72,15 @@ void ng_memcard_device::call_unload()
fwrite(m_memcard_data, 0x800);
}
-bool ng_memcard_device::call_create(int format_type, util::option_resolution *format_options)
+image_init_result ng_memcard_device::call_create(int format_type, util::option_resolution *format_options)
{
memset(m_memcard_data, 0, 0x800);
size_t ret = fwrite(m_memcard_data, 0x800);
if(ret != 0x800)
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/mame/machine/ng_memcard.h b/src/mame/machine/ng_memcard.h
index e81cfb03c79..62b602fc1b0 100644
--- a/src/mame/machine/ng_memcard.h
+++ b/src/mame/machine/ng_memcard.h
@@ -42,9 +42,9 @@ public:
virtual bool is_reset_on_load() const override { return false; }
virtual const char *file_extensions() const override { return "neo"; }
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override;
- virtual bool call_create(int format_type, util::option_resolution *format_options) override;
+ virtual image_init_result call_create(int format_type, util::option_resolution *format_options) override;
// device-level overrides
virtual void device_start() override;
diff --git a/src/mame/machine/pce220_ser.cpp b/src/mame/machine/pce220_ser.cpp
index b4fc31c0a6c..6cd59aaa4bd 100644
--- a/src/mame/machine/pce220_ser.cpp
+++ b/src/mame/machine/pce220_ser.cpp
@@ -224,7 +224,7 @@ void pce220_serial_device::device_timer(emu_timer &timer, device_timer_id id, in
DEVICE_IMAGE_LOAD( pce220_serial )
-------------------------------------------------*/
-bool pce220_serial_device::call_load()
+image_init_result pce220_serial_device::call_load()
{
m_state = SIO_WAIT;
m_bytes_count = 0;
@@ -233,21 +233,21 @@ bool pce220_serial_device::call_load()
//read the first byte
fread(&m_current_byte, 1);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
/*-------------------------------------------------
DEVICE_IMAGE_CREATE( pce220_serial )
-------------------------------------------------*/
-bool pce220_serial_device::call_create(int format_type, util::option_resolution *format_options)
+image_init_result pce220_serial_device::call_create(int format_type, util::option_resolution *format_options)
{
m_state = SIO_WAIT;
m_bytes_count = 0;
m_current_byte = 0;
m_receive_timer->adjust(attotime::from_hz(SIO_BAUD_RATE), 0, attotime::from_hz(SIO_BAUD_RATE));
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/mame/machine/pce220_ser.h b/src/mame/machine/pce220_ser.h
index 1e7874feadd..27cc66cbcd8 100644
--- a/src/mame/machine/pce220_ser.h
+++ b/src/mame/machine/pce220_ser.h
@@ -27,9 +27,9 @@ public:
virtual ~pce220_serial_device();
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override;
- virtual bool call_create(int format_type, util::option_resolution *format_options) override;
+ virtual image_init_result call_create(int format_type, util::option_resolution *format_options) override;
virtual iodevice_t image_type() const override { return IO_SERIAL; }
diff --git a/src/mame/machine/poly88.cpp b/src/mame/machine/poly88.cpp
index 47db0168f92..c158b648efc 100644
--- a/src/mame/machine/poly88.cpp
+++ b/src/mame/machine/poly88.cpp
@@ -328,5 +328,5 @@ SNAPSHOT_LOAD_MEMBER( poly88_state, poly88 )
pos+=recordLen;
}
machine().device("uart")->reset();
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/mame/machine/primo.cpp b/src/mame/machine/primo.cpp
index 1295fe14b8d..a7dbf859fc6 100644
--- a/src/mame/machine/primo.cpp
+++ b/src/mame/machine/primo.cpp
@@ -307,17 +307,17 @@ SNAPSHOT_LOAD_MEMBER( primo_state, primo )
if (image.fread(&snapshot_data[0], snapshot_size) != snapshot_size)
{
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
if (strncmp((char *)&snapshot_data[0], "PS01", 4))
{
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
primo_setup_pss(&snapshot_data[0], snapshot_size);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
/*******************************************************************************
@@ -349,10 +349,10 @@ QUICKLOAD_LOAD_MEMBER( primo_state, primo )
if (image.fread(&quickload_data[0], quickload_size) != quickload_size)
{
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
primo_setup_pp(&quickload_data[0], quickload_size);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/mame/machine/psion_pack.cpp b/src/mame/machine/psion_pack.cpp
index 070e477d0c8..d95124372ad 100644
--- a/src/mame/machine/psion_pack.cpp
+++ b/src/mame/machine/psion_pack.cpp
@@ -256,7 +256,7 @@ void datapack_device::control_w(UINT8 data)
DEVICE_IMAGE_LOAD( datapack )
-------------------------------------------------*/
-bool datapack_device::call_load()
+image_init_result datapack_device::call_load()
{
UINT8 data[0x10];
@@ -264,13 +264,13 @@ bool datapack_device::call_load()
// check the OPK head
if(strncmp((const char*)data, "OPK", 3))
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
// get datapack ID and size
m_id = data[OPK_HEAD_SIZE + 0];
m_size = data[OPK_HEAD_SIZE + 1];
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
@@ -278,7 +278,7 @@ bool datapack_device::call_load()
DEVICE_IMAGE_CREATE( datapack )
-------------------------------------------------*/
-bool datapack_device::call_create(int format_type, util::option_resolution *create_args)
+image_init_result datapack_device::call_create(int format_type, util::option_resolution *create_args)
{
static const UINT8 opk_head[6] = {'O', 'P', 'K', 0x00, 0x00, 0x00};
@@ -303,7 +303,7 @@ bool datapack_device::call_create(int format_type, util::option_resolution *crea
fwrite(&m_id, 1);
fwrite(&m_size, 1);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/mame/machine/psion_pack.h b/src/mame/machine/psion_pack.h
index 9347b950c11..1c0cd8189d8 100644
--- a/src/mame/machine/psion_pack.h
+++ b/src/mame/machine/psion_pack.h
@@ -25,9 +25,9 @@ public:
virtual ~datapack_device();
// image-level overrides
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override;
- virtual bool call_create(int format_type, util::option_resolution *create_args) override;
+ virtual image_init_result call_create(int format_type, util::option_resolution *create_args) override;
virtual const software_list_loader &get_software_list_loader() const override { return image_software_list_loader::instance(); }
virtual iodevice_t image_type() const override { return IO_CARTSLOT; }
diff --git a/src/mame/machine/psxcd.cpp b/src/mame/machine/psxcd.cpp
index 069e9f224f1..320c5624c31 100644
--- a/src/mame/machine/psxcd.cpp
+++ b/src/mame/machine/psxcd.cpp
@@ -192,11 +192,11 @@ void psxcd_device::device_reset()
curpos.w = 0;
}
-bool psxcd_device::call_load()
+image_init_result psxcd_device::call_load()
{
- bool ret = cdrom_image_device::call_load();
+ image_init_result ret = cdrom_image_device::call_load();
open = true;
- if(ret == IMAGE_INIT_PASS)
+ if(ret == image_init_result::PASS)
add_system_event(event_change_disk, m_sysclock, nullptr); // 1 sec to spin up the disk
return ret;
}
diff --git a/src/mame/machine/psxcd.h b/src/mame/machine/psxcd.h
index 4bcf9ee5696..1c6c57d0295 100644
--- a/src/mame/machine/psxcd.h
+++ b/src/mame/machine/psxcd.h
@@ -25,7 +25,7 @@ public:
// static configuration helpers
template<class _Object> static devcb_base &set_irq_handler(device_t &device, _Object object) { return downcast<psxcd_device &>(device).m_irq_handler.set_callback(object); }
- virtual bool call_load() override;
+ virtual image_init_result call_load() override;
virtual void call_unload() override;
DECLARE_WRITE8_MEMBER( write );
diff --git a/src/mame/machine/sorcerer.cpp b/src/mame/machine/sorcerer.cpp
index b64c86eae9a..eb7b971c49c 100644
--- a/src/mame/machine/sorcerer.cpp
+++ b/src/mame/machine/sorcerer.cpp
@@ -302,7 +302,7 @@ SNAPSHOT_LOAD_MEMBER( sorcerer_state,sorcerer)
{
image.seterror(IMAGE_ERROR_INVALIDIMAGE, "Snapshot must be 65564 bytes");
image.message("Snapshot must be 65564 bytes");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
/* get the header */
@@ -335,7 +335,7 @@ SNAPSHOT_LOAD_MEMBER( sorcerer_state,sorcerer)
m_maincpu->set_state_int(Z80_IM, header[25]);
m_maincpu->set_pc(header[26] | (header[27] << 8));
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
void sorcerer_state::machine_start()
@@ -423,8 +423,8 @@ QUICKLOAD_LOAD_MEMBER( sorcerer_state, sorcerer )
address_space &space = m_maincpu->space(AS_PROGRAM);
/* load the binary into memory */
- if (z80bin_load_file(&image, space, file_type, &execute_address, &start_address, &end_address) == IMAGE_INIT_FAIL)
- return IMAGE_INIT_FAIL;
+ if (z80bin_load_file(&image, space, file_type, &execute_address, &start_address, &end_address) != image_init_result::PASS)
+ return image_init_result::FAIL;
/* is this file executable? */
if (execute_address != 0xffff)
@@ -433,7 +433,7 @@ QUICKLOAD_LOAD_MEMBER( sorcerer_state, sorcerer )
autorun = m_iop_config->read() & 1;
if ((execute_address >= 0xc000) && (execute_address <= 0xdfff) && (space.read_byte(0xdffa) != 0xc3))
- return IMAGE_INIT_FAIL; /* can't run a program if the cartridge isn't in */
+ return image_init_result::FAIL; /* can't run a program if the cartridge isn't in */
/* Since Exidy Basic is by Microsoft, it needs some preprocessing before it can be run.
1. A start address of 01D5 indicates a basic program which needs its pointers fixed up.
@@ -476,5 +476,5 @@ QUICKLOAD_LOAD_MEMBER( sorcerer_state, sorcerer )
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/mame/machine/spec_snqk.cpp b/src/mame/machine/spec_snqk.cpp
index 1c445087a27..f95165c2c55 100644
--- a/src/mame/machine/spec_snqk.cpp
+++ b/src/mame/machine/spec_snqk.cpp
@@ -235,10 +235,10 @@ SNAPSHOT_LOAD_MEMBER( spectrum_state,spectrum)
spectrum_setup_z80(machine(), &snapshot_data[0], snapshot_size);
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
error:
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
/*******************************************************************
@@ -2473,10 +2473,10 @@ QUICKLOAD_LOAD_MEMBER( spectrum_state,spectrum)
spectrum_setup_raw(machine(), &quickload_data[0], quickload_size);
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
error:
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
/*******************************************************************
diff --git a/src/mame/machine/super80.cpp b/src/mame/machine/super80.cpp
index c08288c89a8..88b3055ee25 100644
--- a/src/mame/machine/super80.cpp
+++ b/src/mame/machine/super80.cpp
@@ -241,8 +241,8 @@ QUICKLOAD_LOAD_MEMBER( super80_state, super80 )
UINT16 exec_addr, start_addr, end_addr;
/* load the binary into memory */
- if (z80bin_load_file(&image, m_maincpu->space(AS_PROGRAM), file_type, &exec_addr, &start_addr, &end_addr) == IMAGE_INIT_FAIL)
- return IMAGE_INIT_FAIL;
+ if (z80bin_load_file(&image, m_maincpu->space(AS_PROGRAM), file_type, &exec_addr, &start_addr, &end_addr) != image_init_result::PASS)
+ return image_init_result::FAIL;
/* is this file executable? */
if (exec_addr != 0xffff)
@@ -250,5 +250,5 @@ QUICKLOAD_LOAD_MEMBER( super80_state, super80 )
if BIT(m_io_config->read(), 0)
m_maincpu->set_pc(exec_addr);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/mame/machine/thomson.cpp b/src/mame/machine/thomson.cpp
index b75448df490..938b3952c13 100644
--- a/src/mame/machine/thomson.cpp
+++ b/src/mame/machine/thomson.cpp
@@ -380,7 +380,7 @@ DEVICE_IMAGE_LOAD_MEMBER( thomson_state, to7_cartridge )
else
{
image.seterror(IMAGE_ERROR_UNSUPPORTED, string_format("Invalid cartridge size %u", size).c_str());
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
if (image.software_entry() == nullptr)
@@ -388,7 +388,7 @@ DEVICE_IMAGE_LOAD_MEMBER( thomson_state, to7_cartridge )
if ( image.fread( pos, size ) != size )
{
image.seterror(IMAGE_ERROR_INVALIDIMAGE, "Read error");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
}
else
@@ -411,7 +411,7 @@ DEVICE_IMAGE_LOAD_MEMBER( thomson_state, to7_cartridge )
PRINT (( "to7_cartridge_load: cartridge \"%s\" banks=%i, size=%i\n", name, m_thom_cart_nb_banks, size ));
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
@@ -1511,7 +1511,7 @@ DEVICE_IMAGE_LOAD_MEMBER( thomson_state, mo5_cartridge )
else
{
image.seterror(IMAGE_ERROR_UNSUPPORTED, string_format("Invalid cartridge size %d", size).c_str());
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
if (image.software_entry() == nullptr)
@@ -1519,7 +1519,7 @@ DEVICE_IMAGE_LOAD_MEMBER( thomson_state, mo5_cartridge )
if ( image.fread(pos, size ) != size )
{
image.seterror(IMAGE_ERROR_INVALIDIMAGE, "Read error");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
}
else
@@ -1542,7 +1542,7 @@ DEVICE_IMAGE_LOAD_MEMBER( thomson_state, mo5_cartridge )
PRINT (( "mo5_cartridge_load: cartridge \"%s\" banks=%i, size=%u\n", name, m_thom_cart_nb_banks, (unsigned) size ));
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/mame/machine/ti85.cpp b/src/mame/machine/ti85.cpp
index c63bdc26776..08eddb1db02 100644
--- a/src/mame/machine/ti85.cpp
+++ b/src/mame/machine/ti85.cpp
@@ -1176,7 +1176,7 @@ SNAPSHOT_LOAD_MEMBER( ti85_state, ti8x )
if (snapshot_size != expected_snapshot_size)
{
logerror ("Incomplete snapshot file\n");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
ti8x_snapshot_data.resize(snapshot_size);
@@ -1188,5 +1188,5 @@ SNAPSHOT_LOAD_MEMBER( ti85_state, ti8x )
else if (!strncmp(machine().system().name, "ti86", 4))
ti86_setup_snapshot(&ti8x_snapshot_data[0]);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/mame/machine/trs80.cpp b/src/mame/machine/trs80.cpp
index 30c1afc76fe..7a3c8b3bedf 100644
--- a/src/mame/machine/trs80.cpp
+++ b/src/mame/machine/trs80.cpp
@@ -931,5 +931,5 @@ QUICKLOAD_LOAD_MEMBER( trs80_state, trs80_cmd )
}
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/mame/machine/victor9k_fdc.cpp b/src/mame/machine/victor9k_fdc.cpp
index 6b7ec9db758..19f989890fa 100644
--- a/src/mame/machine/victor9k_fdc.cpp
+++ b/src/mame/machine/victor9k_fdc.cpp
@@ -124,12 +124,12 @@ ADDRESS_MAP_END
// SLOT_INTERFACE( victor9k_floppies )
//-------------------------------------------------
-int victor_9000_fdc_t::load0_cb(floppy_image_device *device)
+image_init_result victor_9000_fdc_t::load0_cb(floppy_image_device *device)
{
// DOOR OPEN 0
m_via4->write_ca1(0);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
void victor_9000_fdc_t::unload0_cb(floppy_image_device *device)
@@ -138,12 +138,12 @@ void victor_9000_fdc_t::unload0_cb(floppy_image_device *device)
m_via4->write_ca1(1);
}
-int victor_9000_fdc_t::load1_cb(floppy_image_device *device)
+image_init_result victor_9000_fdc_t::load1_cb(floppy_image_device *device)
{
// DOOR OPEN 1
m_via4->write_cb1(0);
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
void victor_9000_fdc_t::unload1_cb(floppy_image_device *device)
diff --git a/src/mame/machine/victor9k_fdc.h b/src/mame/machine/victor9k_fdc.h
index 9fae7c1e812..b3613af3bb8 100644
--- a/src/mame/machine/victor9k_fdc.h
+++ b/src/mame/machine/victor9k_fdc.h
@@ -168,10 +168,10 @@ private:
void set_rdy0(int state);
void set_rdy1(int state);
- int load0_cb(floppy_image_device *device);
+ image_init_result load0_cb(floppy_image_device *device);
void unload0_cb(floppy_image_device *device);
- int load1_cb(floppy_image_device *device);
+ image_init_result load1_cb(floppy_image_device *device);
void unload1_cb(floppy_image_device *device);
UINT8 m_p2;
diff --git a/src/mame/machine/x68k_hdc.cpp b/src/mame/machine/x68k_hdc.cpp
index 35cda8b65ec..57baeaf1f5a 100644
--- a/src/mame/machine/x68k_hdc.cpp
+++ b/src/mame/machine/x68k_hdc.cpp
@@ -47,7 +47,7 @@ void x68k_hdc_image_device::device_start()
m_phase = SASI_PHASE_BUSFREE;
}
-bool x68k_hdc_image_device::call_create(int format_type, util::option_resolution *format_options)
+image_init_result x68k_hdc_image_device::call_create(int format_type, util::option_resolution *format_options)
{
// create 20MB HD
int x;
@@ -59,10 +59,10 @@ bool x68k_hdc_image_device::call_create(int format_type, util::option_resolution
{
ret = fwrite(sectordata,256);
if(ret < 256)
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
WRITE16_MEMBER( x68k_hdc_image_device::hdc_w )
diff --git a/src/mame/machine/x68k_hdc.h b/src/mame/machine/x68k_hdc.h
index 3b41b8b0924..f8aa541d7e8 100644
--- a/src/mame/machine/x68k_hdc.h
+++ b/src/mame/machine/x68k_hdc.h
@@ -93,7 +93,7 @@ public:
virtual bool must_be_loaded() const override { return 0; }
virtual bool is_reset_on_load() const override { return 0; }
virtual const char *file_extensions() const override { return "hdf"; }
- virtual bool call_create(int format_type, util::option_resolution *format_options) override;
+ virtual image_init_result call_create(int format_type, util::option_resolution *format_options) override;
DECLARE_WRITE16_MEMBER( hdc_w );
DECLARE_READ16_MEMBER( hdc_r );
diff --git a/src/mame/machine/z80bin.cpp b/src/mame/machine/z80bin.cpp
index 7a5bb3d24c3..e2b263aab45 100644
--- a/src/mame/machine/z80bin.cpp
+++ b/src/mame/machine/z80bin.cpp
@@ -8,7 +8,7 @@
memory
-------------------------------------------------*/
-bool z80bin_load_file(device_image_interface *image, address_space &space, const char *file_type, UINT16 *exec_addr, UINT16 *start_addr, UINT16 *end_addr )
+image_init_result z80bin_load_file(device_image_interface *image, address_space &space, const char *file_type, UINT16 *exec_addr, UINT16 *start_addr, UINT16 *end_addr )
{
int ch;
UINT16 args[3];
@@ -25,7 +25,7 @@ bool z80bin_load_file(device_image_interface *image, address_space &space, const
{
image->seterror(IMAGE_ERROR_INVALIDIMAGE, "Unexpected EOF while getting file name");
image->message(" Unexpected EOF while getting file name");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
if (ch != '\0')
@@ -34,7 +34,7 @@ bool z80bin_load_file(device_image_interface *image, address_space &space, const
{
image->seterror(IMAGE_ERROR_INVALIDIMAGE, "File name too long");
image->message(" File name too long");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
pgmname[i] = ch; /* build program name */
@@ -48,7 +48,7 @@ bool z80bin_load_file(device_image_interface *image, address_space &space, const
{
image->seterror(IMAGE_ERROR_INVALIDIMAGE, "Unexpected EOF while getting file size");
image->message(" Unexpected EOF while getting file size");
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
exec_addr[0] = little_endianize_int16(args[0]);
@@ -68,10 +68,10 @@ bool z80bin_load_file(device_image_interface *image, address_space &space, const
snprintf(message, ARRAY_LENGTH(message), "%s: Unexpected EOF while writing byte to %04X", pgmname, (unsigned) j);
image->seterror(IMAGE_ERROR_INVALIDIMAGE, message);
image->message("%s: Unexpected EOF while writing byte to %04X", pgmname, (unsigned) j);
- return IMAGE_INIT_FAIL;
+ return image_init_result::FAIL;
}
space.write_byte(j, data);
}
- return IMAGE_INIT_PASS;
+ return image_init_result::PASS;
}
diff --git a/src/mame/machine/z80bin.h b/src/mame/machine/z80bin.h
index 7a839466506..e1951358c5f 100644
--- a/src/mame/machine/z80bin.h
+++ b/src/mame/machine/z80bin.h
@@ -13,6 +13,6 @@
#ifndef __Z80_BIN__
#define __Z80_BIN__
-bool z80bin_load_file(device_image_interface *image, address_space &space, const char *file_type, UINT16 *exec_addr, UINT16 *start_addr, UINT16 *end_addr );
+image_init_result z80bin_load_file(device_image_interface *image, address_space &space, const char *file_type, UINT16 *exec_addr, UINT16 *start_addr, UINT16 *end_addr );
#endif
diff --git a/src/osd/modules/input/input_rawinput.cpp b/src/osd/modules/input/input_rawinput.cpp
index 1bd0cd9fe28..c3ed46ca3f6 100644
--- a/src/osd/modules/input/input_rawinput.cpp
+++ b/src/osd/modules/input/input_rawinput.cpp
@@ -530,7 +530,6 @@ protected:
BYTE small_buffer[4096];
std::unique_ptr<BYTE[]> larger_buffer;
LPBYTE data = small_buffer;
- BOOL result;
UINT size;
// ignore if not enabled
@@ -551,7 +550,7 @@ protected:
}
// fetch the data and process the appropriate message types
- result = (*get_rawinput_data)(static_cast<HRAWINPUT>(rawinputdevice), RID_INPUT, data, &size, sizeof(RAWINPUTHEADER));
+ bool result = (*get_rawinput_data)(static_cast<HRAWINPUT>(rawinputdevice), RID_INPUT, data, &size, sizeof(RAWINPUTHEADER));
if (result)
{
std::lock_guard<std::mutex> scope_lock(m_module_lock);