changed CommaVid ROMs to 4K size (fixes #969)

This commit is contained in:
thrust26 2023-05-09 12:26:12 +02:00
parent db7fe478c5
commit 67a039b111
5 changed files with 9 additions and 13 deletions

View File

@ -24,11 +24,16 @@ CartridgeCV::CartridgeCV(const ByteBuffer& image, size_t size,
size_t bsSize) size_t bsSize)
: CartridgeEnhanced(image, size, md5, settings, bsSize) : CartridgeEnhanced(image, size, md5, settings, bsSize)
{ {
myBankShift = BANK_SHIFT;
myRamSize = RAM_SIZE; myRamSize = RAM_SIZE;
myRamWpHigh = RAM_HIGH_WP; myRamWpHigh = RAM_HIGH_WP;
if(size == 4_KB) if (size == 2_KB)
{
// Move the ROM of 2K files to the 2nd half of the 4K ROM
// The 1st half is used for RAM
std::copy_n(image.get(), 2_KB, myImage.get() + 2_KB);
}
else if(size == 4_KB)
{ {
// The game has something saved in the RAM // The game has something saved in the RAM
// Useful for MagiCard program listings // Useful for MagiCard program listings

View File

@ -50,7 +50,7 @@ class CartridgeCV : public CartridgeEnhanced
@param bsSize The size specified by the bankswitching scheme @param bsSize The size specified by the bankswitching scheme
*/ */
CartridgeCV(const ByteBuffer& image, size_t size, string_view md5, CartridgeCV(const ByteBuffer& image, size_t size, string_view md5,
const Settings& settings, size_t bsSize = 2_KB); const Settings& settings, size_t bsSize = 4_KB);
~CartridgeCV() override = default; ~CartridgeCV() override = default;
public: public:
@ -86,9 +86,6 @@ class CartridgeCV : public CartridgeEnhanced
ByteBuffer myInitialRAM{nullptr}; ByteBuffer myInitialRAM{nullptr};
private: private:
// Calculated as: log(ROM bank segment size) / log(2)
static constexpr uInt16 BANK_SHIFT = 11; // 2K
// RAM size // RAM size
static constexpr uInt32 RAM_SIZE = 0x400; // 1K static constexpr uInt32 RAM_SIZE = 0x400; // 1K

View File

@ -40,7 +40,7 @@ CartridgeEnhanced::CartridgeEnhanced(const ByteBuffer& image, size_t size,
else if(size < bsSize) else if(size < bsSize)
{ {
ostringstream buf; ostringstream buf;
buf << "ROM smaller than expected (" << bsSize << " > " << size buf << "ROM smaller than expected (" << size << " < " << bsSize
<< "), appending " << (bsSize - size) << " bytes\n"; << "), appending " << (bsSize - size) << " bytes\n";
Logger::info(buf.str()); Logger::info(buf.str());
} }

View File

@ -79,9 +79,6 @@ class CartridgeF4SC : public CartridgeF4
// RAM size // RAM size
static constexpr size_t RAM_SIZE = 0x80; static constexpr size_t RAM_SIZE = 0x80;
// RAM mask
static constexpr uInt16 RAM_MASK = RAM_SIZE - 1;
private: private:
// Following constructors and assignment operators not supported // Following constructors and assignment operators not supported
CartridgeF4SC() = delete; CartridgeF4SC() = delete;

View File

@ -79,9 +79,6 @@ class CartridgeF6SC : public CartridgeF6
// RAM size // RAM size
static constexpr size_t RAM_SIZE = 0x80; static constexpr size_t RAM_SIZE = 0x80;
// RAM mask
static constexpr uInt16 RAM_MASK = RAM_SIZE - 1;
private: private:
// Following constructors and assignment operators not supported // Following constructors and assignment operators not supported
CartridgeF6SC() = delete; CartridgeF6SC() = delete;