diff options
author | 2021-04-02 01:08:04 +1100 | |
---|---|---|
committer | 2021-04-02 01:08:04 +1100 | |
commit | 900f39f55acc1f88fa6d43c875d70ea3cd88b056 (patch) | |
tree | 2a416f78733fe7dad20a90b0f5ff8fd14b591ed6 /src | |
parent | 8e72b65075ca9b813b142f562ea494fbe98f59fc (diff) |
gameboy: Fixed crash with momocol2 and varpack
Diffstat (limited to 'src')
-rw-r--r-- | src/devices/bus/gameboy/gb_slot.cpp | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/src/devices/bus/gameboy/gb_slot.cpp b/src/devices/bus/gameboy/gb_slot.cpp index 03c17f113ca..a408b9d15ff 100644 --- a/src/devices/bus/gameboy/gb_slot.cpp +++ b/src/devices/bus/gameboy/gb_slot.cpp @@ -382,7 +382,7 @@ image_init_result gb_cart_slot_device_base::call_load() //printf("Type: %s\n", gb_get_slot(m_type)); - internal_header_logging(ROM + offset, len); + internal_header_logging(ROM + offset, len - offset); return image_init_result::PASS; } @@ -818,8 +818,8 @@ void gb_cart_slot_device_base::internal_header_logging(uint8_t *ROM, uint32_t le logerror("\nWarning loading cartridge: Unknown ROM size in header [0x%x].\n", ROM[0x0148]); if ((len / 0x4000) != rom_banks) - logerror("\nWarning loading cartridge: Filesize (0x%x) and reported ROM banks (0x%x) don't match.\n", - len, rom_banks * 0x4000); + logerror("\nWarning loading cartridge: Filesize (0x%x) and reported ROM banks (0x%x) don't match.\n", len, rom_banks * 0x4000); + /* Calculate and check checksum */ tmp = (ROM[0x014e] << 8) + ROM[0x014f]; for (int i = 0; i < len; i++) @@ -829,5 +829,4 @@ void gb_cart_slot_device_base::internal_header_logging(uint8_t *ROM, uint32_t le if (csum != tmp) logerror("\nWarning loading cartridge: Checksum is wrong (Actual 0x%04X vs Internal 0x%04X)\n", csum, tmp); - } |