diff options
-rw-r--r-- | src/devices/bus/a800/a800_slot.cpp | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/devices/bus/a800/a800_slot.cpp b/src/devices/bus/a800/a800_slot.cpp index 8f0f416ab0f..a3e464df1f1 100644 --- a/src/devices/bus/a800/a800_slot.cpp +++ b/src/devices/bus/a800/a800_slot.cpp @@ -277,6 +277,10 @@ bool a800_cart_slot_device::call_load() m_type = A800_8K; if (len == 0x1000) m_type = A5200_4K; + // also make a try with .hsi file (for .a52 files) + std::string info; + if (hashfile_extrainfo(*this, info) && info.compare("A13MIRRORING")==0) + m_type = A5200_16K_2CHIPS; } m_cart->rom_alloc(len, tag()); @@ -285,7 +289,7 @@ bool a800_cart_slot_device::call_load() if (m_type == A800_TELELINK2) m_cart->nvram_alloc(0x100); - printf("%s loaded cartridge '%s' size %dK\n", machine().system().name, filename(), len/1024); + logerror("%s loaded cartridge '%s' size %dK\n", machine().system().name, filename(), len/1024); } return IMAGE_INIT_PASS; } @@ -457,7 +461,9 @@ std::string a5200_cart_slot_device::get_default_card_software() { m_file->read(&head[0], 0x10); type = identify_cart_type(&head[0]); - + } + else + { std::string info; if (hashfile_extrainfo(*this, info) && info.compare("A13MIRRORING")==0) type = A5200_16K_2CHIPS; |