From 8c635a6f91859c7859a71e714cd239bee9e3f41f Mon Sep 17 00:00:00 2001 From: thrust26 Date: Mon, 30 Mar 2020 09:22:45 +0200 Subject: [PATCH] rename code access into ROM access to better reflect the usage --- src/debugger/DiStella.cxx | 2 +- src/emucore/Cart.cxx | 16 ++++++++-------- src/emucore/Cart.hxx | 16 +++++++++------- src/emucore/Cart0840.cxx | 4 ++-- src/emucore/Cart2K.cxx | 4 ++-- src/emucore/Cart3E.cxx | 10 +++++----- src/emucore/Cart3EPlus.cxx | 6 +++--- src/emucore/Cart3F.cxx | 6 +++--- src/emucore/Cart4A50.cxx | 32 ++++++++++++++++---------------- src/emucore/Cart4K.cxx | 4 ++-- src/emucore/Cart4KSC.cxx | 8 ++++---- src/emucore/CartAR.cxx | 8 ++++---- src/emucore/CartBF.cxx | 6 +++--- src/emucore/CartBFSC.cxx | 10 +++++----- src/emucore/CartBUS.cxx | 4 ++-- src/emucore/CartCDF.cxx | 4 ++-- src/emucore/CartCM.cxx | 8 ++++---- src/emucore/CartCTY.cxx | 4 ++-- src/emucore/CartCV.cxx | 8 ++++---- src/emucore/CartCVPlus.cxx | 10 +++++----- src/emucore/CartDASH.cxx | 6 +++--- src/emucore/CartDF.cxx | 6 +++--- src/emucore/CartDFSC.cxx | 10 +++++----- src/emucore/CartDPC.cxx | 6 +++--- src/emucore/CartDPCPlus.cxx | 4 ++-- src/emucore/CartE0.cxx | 12 ++++++------ src/emucore/CartEF.cxx | 6 +++--- src/emucore/CartEFSC.cxx | 10 +++++----- src/emucore/CartF0.cxx | 6 +++--- src/emucore/CartF4.cxx | 6 +++--- src/emucore/CartF4SC.cxx | 10 +++++----- src/emucore/CartF6.cxx | 6 +++--- src/emucore/CartF6SC.cxx | 10 +++++----- src/emucore/CartF8.cxx | 6 +++--- src/emucore/CartF8SC.cxx | 10 +++++----- src/emucore/CartFA.cxx | 10 +++++----- src/emucore/CartFA2.cxx | 10 +++++----- src/emucore/CartFC.cxx | 6 +++--- src/emucore/CartFE.cxx | 2 +- src/emucore/CartMDM.cxx | 4 ++-- src/emucore/CartMNetwork.cxx | 6 +++--- src/emucore/CartSB.cxx | 4 ++-- src/emucore/CartUA.cxx | 4 ++-- src/emucore/CartWD.cxx | 14 +++++++------- src/emucore/CartX07.cxx | 4 ++-- src/emucore/System.cxx | 16 ++++++++-------- src/emucore/System.hxx | 10 +++++++--- 47 files changed, 190 insertions(+), 184 deletions(-) diff --git a/src/debugger/DiStella.cxx b/src/debugger/DiStella.cxx index 547a75933..2aa304ac6 100644 --- a/src/debugger/DiStella.cxx +++ b/src/debugger/DiStella.cxx @@ -657,7 +657,7 @@ void DiStella::disasmPass1(CartDebug::AddressList& debuggerAddresses) // Note that this is a 'best-effort' approach, since // Distella will normally keep going until the end of the // range or branch is encountered - // However, addresses *specifically* marked as DATA/GFX/PGFX + // However, addresses *specifically* marked as DATA/GFX/PGFX/COL/PCOL/BCOL/AUD // in the emulation core indicate that the CODE range has finished // Therefore, we stop at the first such address encountered for (uInt32 k = pcBeg; k <= myPCEnd; ++k) { diff --git a/src/emucore/Cart.cxx b/src/emucore/Cart.cxx index ec7cea379..c5c13e34c 100644 --- a/src/emucore/Cart.cxx +++ b/src/emucore/Cart.cxx @@ -38,7 +38,7 @@ Cartridge::Cartridge(const Settings& settings, const string& md5) for(uInt32 i = 0; i < 256; ++i) myRWPRandomValues[i] = rand.next(); - myRAMAccesses.reserve(5); + myRamReadAccesses.reserve(5); } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -86,7 +86,7 @@ uInt8 Cartridge::peekRAM(uInt8& dest, uInt16 address) if(!bankLocked() && !mySystem->autodetectMode()) { // Record access here; final determination will happen in ::pokeRAM() - myRAMAccesses.push_back(address); + myRamReadAccesses.push_back(address); dest = value; } #else @@ -100,11 +100,11 @@ uInt8 Cartridge::peekRAM(uInt8& dest, uInt16 address) void Cartridge::pokeRAM(uInt8& dest, uInt16 address, uInt8 value) { #ifdef DEBUGGER_SUPPORT - for(auto i = myRAMAccesses.begin(); i != myRAMAccesses.end(); ++i) + for(auto i = myRamReadAccesses.begin(); i != myRamReadAccesses.end(); ++i) { if(*i == address) { - myRAMAccesses.erase(i); + myRamReadAccesses.erase(i); break; } } @@ -113,13 +113,13 @@ void Cartridge::pokeRAM(uInt8& dest, uInt16 address, uInt8 value) } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -void Cartridge::createCodeAccessBase(size_t size) +void Cartridge::createRomAccessBase(size_t size) { #ifdef DEBUGGER_SUPPORT - myCodeAccessBase = make_unique(size); - std::fill_n(myCodeAccessBase.get(), size, Device::ROW); + myRomAccessBase = make_unique(size); + std::fill_n(myRomAccessBase.get(), size, Device::ROW); #else - myCodeAccessBase = nullptr; + myRomAccessBase = nullptr; #endif } diff --git a/src/emucore/Cart.hxx b/src/emucore/Cart.hxx index 4b9cda533..8a5124219 100644 --- a/src/emucore/Cart.hxx +++ b/src/emucore/Cart.hxx @@ -113,7 +113,7 @@ class Cartridge : public Device Clears information about all accesses to cart RAM. */ void clearAllRAMAccesses() { - myRAMAccesses.clear(); + myRamReadAccesses.clear(); myRamWriteAccess = 0; } @@ -125,7 +125,7 @@ class Cartridge : public Device @return Address of illegal access if one occurred, else 0 */ uInt16 getIllegalRAMReadAccess() const { - return myRAMAccesses.size() > 0 ? myRAMAccesses[0] : 0; + return myRamReadAccesses.size() > 0 ? myRamReadAccesses[0] : 0; } /** @@ -274,7 +274,7 @@ class Cartridge : public Device @param size The size of the code-access array to create */ - void createCodeAccessBase(size_t size); + void createRomAccessBase(size_t size); /** Fill the given RAM array with (possibly random) data. @@ -322,8 +322,8 @@ class Cartridge : public Device bool myBankChanged{true}; // The array containing information about every byte of ROM indicating - // whether it is used as code. - std::unique_ptr myCodeAccessBase; + // whether it is used as code, data, graphics etc. + std::unique_ptr myRomAccessBase; // Contains address of illegal RAM write access or 0 uInt16 myRamWriteAccess{0}; @@ -348,8 +348,10 @@ class Cartridge : public Device // Used when we want the 'Cartridge.StartBank' ROM property StartBankFromPropsFunc myStartBankFromPropsFunc; - // Contains - ShortArray myRAMAccesses; + // Used to answer whether an access in the last instruction cycle + // generated an illegal read RAM access. Contains address of illegal + // access. + ShortArray myRamReadAccesses; // Following constructors and assignment operators not supported Cartridge() = delete; diff --git a/src/emucore/Cart0840.cxx b/src/emucore/Cart0840.cxx index 22e6a1cff..21e0f35fd 100644 --- a/src/emucore/Cart0840.cxx +++ b/src/emucore/Cart0840.cxx @@ -25,7 +25,7 @@ Cartridge0840::Cartridge0840(const ByteBuffer& image, size_t size, { // Copy the ROM image into my buffer std::copy_n(image.get(), std::min(myImage.size(), size), myImage.begin()); - createCodeAccessBase(myImage.size()); + createRomAccessBase(myImage.size()); } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -137,7 +137,7 @@ bool Cartridge0840::bank(uInt16 bank) for(uInt16 addr = 0x1000; addr < 0x2000; addr += System::PAGE_SIZE) { access.directPeekBase = &myImage[myBankOffset + (addr & 0x0FFF)]; - access.codeAccessBase = &myCodeAccessBase[myBankOffset + (addr & 0x0FFF)]; + access.romAccessBase = &myRomAccessBase[myBankOffset + (addr & 0x0FFF)]; mySystem->setPageAccess(addr, access); } return myBankChanged = true; diff --git a/src/emucore/Cart2K.cxx b/src/emucore/Cart2K.cxx index bbad871af..5a6ffec5d 100644 --- a/src/emucore/Cart2K.cxx +++ b/src/emucore/Cart2K.cxx @@ -51,7 +51,7 @@ Cartridge2K::Cartridge2K(const ByteBuffer& image, size_t size, mySize = System::PAGE_SIZE; } - createCodeAccessBase(mySize); + createRomAccessBase(mySize); // Set mask for accessing the image buffer // This is guaranteed to work, as mySize is a power of two @@ -76,7 +76,7 @@ void Cartridge2K::install(System& system) for(uInt16 addr = 0x1000; addr < 0x2000; addr += System::PAGE_SIZE) { access.directPeekBase = &myImage[addr & myMask]; - access.codeAccessBase = &myCodeAccessBase[addr & myMask]; + access.romAccessBase = &myRomAccessBase[addr & myMask]; mySystem->setPageAccess(addr, access); } } diff --git a/src/emucore/Cart3E.cxx b/src/emucore/Cart3E.cxx index 7844fc7e3..7df89d58c 100644 --- a/src/emucore/Cart3E.cxx +++ b/src/emucore/Cart3E.cxx @@ -30,7 +30,7 @@ Cartridge3E::Cartridge3E(const ByteBuffer& image, size_t size, // Copy the ROM image into my buffer std::copy_n(image.get(), mySize, myImage.get()); - createCodeAccessBase(mySize + myRAM.size()); + createRomAccessBase(mySize + myRAM.size()); } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -59,7 +59,7 @@ void Cartridge3E::install(System& system) for(uInt16 addr = 0x1800; addr < 0x2000; addr += System::PAGE_SIZE) { access.directPeekBase = &myImage[(mySize - 2048) + (addr & 0x07FF)]; - access.codeAccessBase = &myCodeAccessBase[(mySize - 2048) + (addr & 0x07FF)]; + access.romAccessBase = &myRomAccessBase[(mySize - 2048) + (addr & 0x07FF)]; mySystem->setPageAccess(addr, access); } @@ -158,7 +158,7 @@ bool Cartridge3E::bank(uInt16 bank) for(uInt16 addr = 0x1000; addr < 0x1800; addr += System::PAGE_SIZE) { access.directPeekBase = &myImage[offset + (addr & 0x07FF)]; - access.codeAccessBase = &myCodeAccessBase[offset + (addr & 0x07FF)]; + access.romAccessBase = &myRomAccessBase[offset + (addr & 0x07FF)]; mySystem->setPageAccess(addr, access); } } @@ -177,7 +177,7 @@ bool Cartridge3E::bank(uInt16 bank) for(uInt16 addr = 0x1000; addr < 0x1400; addr += System::PAGE_SIZE) { access.directPeekBase = &myRAM[offset + (addr & 0x03FF)]; - access.codeAccessBase = &myCodeAccessBase[mySize + offset + (addr & 0x03FF)]; + access.romAccessBase = &myRomAccessBase[mySize + offset + (addr & 0x03FF)]; mySystem->setPageAccess(addr, access); } @@ -189,7 +189,7 @@ bool Cartridge3E::bank(uInt16 bank) // check if RWP happens for(uInt16 addr = 0x1400; addr < 0x1800; addr += System::PAGE_SIZE) { - access.codeAccessBase = &myCodeAccessBase[mySize + offset + (addr & 0x03FF)]; + access.romAccessBase = &myRomAccessBase[mySize + offset + (addr & 0x03FF)]; mySystem->setPageAccess(addr, access); } } diff --git a/src/emucore/Cart3EPlus.cxx b/src/emucore/Cart3EPlus.cxx index 139cda4b7..1ca18f7d9 100644 --- a/src/emucore/Cart3EPlus.cxx +++ b/src/emucore/Cart3EPlus.cxx @@ -30,7 +30,7 @@ Cartridge3EPlus::Cartridge3EPlus(const ByteBuffer& image, size_t size, // Copy the ROM image into my buffer std::copy_n(image.get(), mySize, myImage.get()); - createCodeAccessBase(mySize + myRAM.size()); + createRomAccessBase(mySize + myRAM.size()); } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -214,7 +214,7 @@ void Cartridge3EPlus::bankRAMSlot(uInt16 bank) if(!upper) access.directPeekBase = &myRAM[startCurrentBank + (addr & (RAM_BANK_SIZE - 1))]; - access.codeAccessBase = &myCodeAccessBase[mySize + startCurrentBank + (addr & (RAM_BANK_SIZE - 1))]; + access.romAccessBase = &myRomAccessBase[mySize + startCurrentBank + (addr & (RAM_BANK_SIZE - 1))]; mySystem->setPageAccess(addr, access); } } @@ -254,7 +254,7 @@ void Cartridge3EPlus::bankROMSlot(uInt16 bank) for(uInt16 addr = start; addr <= end; addr += System::PAGE_SIZE) { access.directPeekBase = &myImage[startCurrentBank + (addr & (ROM_BANK_SIZE - 1))]; - access.codeAccessBase = &myCodeAccessBase[startCurrentBank + (addr & (ROM_BANK_SIZE - 1))]; + access.romAccessBase = &myRomAccessBase[startCurrentBank + (addr & (ROM_BANK_SIZE - 1))]; mySystem->setPageAccess(addr, access); } } diff --git a/src/emucore/Cart3F.cxx b/src/emucore/Cart3F.cxx index 8b59d77ba..8be902554 100644 --- a/src/emucore/Cart3F.cxx +++ b/src/emucore/Cart3F.cxx @@ -30,7 +30,7 @@ Cartridge3F::Cartridge3F(const ByteBuffer& image, size_t size, // Copy the ROM image into my buffer std::copy_n(image.get(), mySize, myImage.get()); - createCodeAccessBase(mySize); + createRomAccessBase(mySize); } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -57,7 +57,7 @@ void Cartridge3F::install(System& system) for(uInt16 addr = 0x1800; addr < 0x2000; addr += System::PAGE_SIZE) { access.directPeekBase = &myImage[(mySize - 2048) + (addr & 0x07FF)]; - access.codeAccessBase = &myCodeAccessBase[(mySize - 2048) + (addr & 0x07FF)]; + access.romAccessBase = &myRomAccessBase[(mySize - 2048) + (addr & 0x07FF)]; mySystem->setPageAccess(addr, access); } @@ -117,7 +117,7 @@ bool Cartridge3F::bank(uInt16 bank) for(uInt16 addr = 0x1000; addr < 0x1800; addr += System::PAGE_SIZE) { access.directPeekBase = &myImage[offset + (addr & 0x07FF)]; - access.codeAccessBase = &myCodeAccessBase[offset + (addr & 0x07FF)]; + access.romAccessBase = &myRomAccessBase[offset + (addr & 0x07FF)]; mySystem->setPageAccess(addr, access); } return myBankChanged = true; diff --git a/src/emucore/Cart4A50.cxx b/src/emucore/Cart4A50.cxx index f8f144667..373684481 100644 --- a/src/emucore/Cart4A50.cxx +++ b/src/emucore/Cart4A50.cxx @@ -34,14 +34,14 @@ Cartridge4A50::Cartridge4A50(const ByteBuffer& image, size_t size, for(uInt32 slice = 0; slice < 128_KB / size; ++slice) std::copy_n(image.get(), size, myImage.begin() + (slice*size)); - // We use System::PageAccess.codeAccessBase, but don't allow its use + // We use System::PageAccess.romAccessBase, but don't allow its use // through a pointer, since the address space of 4A50 carts can change // at the instruction level, and PageAccess is normally defined at an // interval of 64 bytes // // Instead, access will be through the getAccessFlags and setAccessFlags // methods below - createCodeAccessBase(myImage.size() + myRAM.size()); + createRomAccessBase(myImage.size() + myRAM.size()); } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -188,28 +188,28 @@ Device::AccessFlags Cartridge4A50::getAccessFlags(uInt16 address) const if((address & 0x1800) == 0x1000) // 2K region from 0x1000 - 0x17ff { if(myIsRomLow) - return myCodeAccessBase[(address & 0x7ff) + mySliceLow]; + return myRomAccessBase[(address & 0x7ff) + mySliceLow]; else - return myCodeAccessBase[131072 + (address & 0x7ff) + mySliceLow]; + return myRomAccessBase[131072 + (address & 0x7ff) + mySliceLow]; } else if(((address & 0x1fff) >= 0x1800) && // 1.5K region from 0x1800 - 0x1dff ((address & 0x1fff) <= 0x1dff)) { if(myIsRomMiddle) - return myCodeAccessBase[(address & 0x7ff) + mySliceMiddle + 0x10000]; + return myRomAccessBase[(address & 0x7ff) + mySliceMiddle + 0x10000]; else - return myCodeAccessBase[131072 + (address & 0x7ff) + mySliceMiddle]; + return myRomAccessBase[131072 + (address & 0x7ff) + mySliceMiddle]; } else if((address & 0x1f00) == 0x1e00) // 256B region from 0x1e00 - 0x1eff { if(myIsRomHigh) - return myCodeAccessBase[(address & 0xff) + mySliceHigh + 0x10000]; + return myRomAccessBase[(address & 0xff) + mySliceHigh + 0x10000]; else - return myCodeAccessBase[131072 + (address & 0xff) + mySliceHigh]; + return myRomAccessBase[131072 + (address & 0xff) + mySliceHigh]; } else if((address & 0x1f00) == 0x1f00) // 256B region from 0x1f00 - 0x1fff { - return myCodeAccessBase[(address & 0xff) + 0x1ff00]; + return myRomAccessBase[(address & 0xff) + 0x1ff00]; } return 0; } @@ -220,28 +220,28 @@ void Cartridge4A50::setAccessFlags(uInt16 address, Device::AccessFlags flags) if((address & 0x1800) == 0x1000) // 2K region from 0x1000 - 0x17ff { if(myIsRomLow) - myCodeAccessBase[(address & 0x7ff) + mySliceLow] |= flags; + myRomAccessBase[(address & 0x7ff) + mySliceLow] |= flags; else - myCodeAccessBase[131072 + (address & 0x7ff) + mySliceLow] |= flags; + myRomAccessBase[131072 + (address & 0x7ff) + mySliceLow] |= flags; } else if(((address & 0x1fff) >= 0x1800) && // 1.5K region from 0x1800 - 0x1dff ((address & 0x1fff) <= 0x1dff)) { if(myIsRomMiddle) - myCodeAccessBase[(address & 0x7ff) + mySliceMiddle + 0x10000] |= flags; + myRomAccessBase[(address & 0x7ff) + mySliceMiddle + 0x10000] |= flags; else - myCodeAccessBase[131072 + (address & 0x7ff) + mySliceMiddle] |= flags; + myRomAccessBase[131072 + (address & 0x7ff) + mySliceMiddle] |= flags; } else if((address & 0x1f00) == 0x1e00) // 256B region from 0x1e00 - 0x1eff { if(myIsRomHigh) - myCodeAccessBase[(address & 0xff) + mySliceHigh + 0x10000] |= flags; + myRomAccessBase[(address & 0xff) + mySliceHigh + 0x10000] |= flags; else - myCodeAccessBase[131072 + (address & 0xff) + mySliceHigh] |= flags; + myRomAccessBase[131072 + (address & 0xff) + mySliceHigh] |= flags; } else if((address & 0x1f00) == 0x1f00) // 256B region from 0x1f00 - 0x1fff { - myCodeAccessBase[(address & 0xff) + 0x1ff00] |= flags; + myRomAccessBase[(address & 0xff) + 0x1ff00] |= flags; } } #endif diff --git a/src/emucore/Cart4K.cxx b/src/emucore/Cart4K.cxx index 8c924f720..763bc35f0 100644 --- a/src/emucore/Cart4K.cxx +++ b/src/emucore/Cart4K.cxx @@ -25,7 +25,7 @@ Cartridge4K::Cartridge4K(const ByteBuffer& image, size_t size, { // Copy the ROM image into my buffer std::copy_n(image.get(), std::min(myImage.size(), size), myImage.begin()); - createCodeAccessBase(myImage.size()); + createRomAccessBase(myImage.size()); } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -46,7 +46,7 @@ void Cartridge4K::install(System& system) for(uInt16 addr = 0x1000; addr < 0x2000; addr += System::PAGE_SIZE) { access.directPeekBase = &myImage[addr & 0x0FFF]; - access.codeAccessBase = &myCodeAccessBase[addr & 0x0FFF]; + access.romAccessBase = &myRomAccessBase[addr & 0x0FFF]; mySystem->setPageAccess(addr, access); } } diff --git a/src/emucore/Cart4KSC.cxx b/src/emucore/Cart4KSC.cxx index fa36e7b0f..e65955735 100644 --- a/src/emucore/Cart4KSC.cxx +++ b/src/emucore/Cart4KSC.cxx @@ -25,7 +25,7 @@ Cartridge4KSC::Cartridge4KSC(const ByteBuffer& image, size_t size, { // Copy the ROM image into my buffer std::copy_n(image.get(), std::min(myImage.size(), size), myImage.begin()); - createCodeAccessBase(myImage.size()); + createRomAccessBase(myImage.size()); } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -49,7 +49,7 @@ void Cartridge4KSC::install(System& system) access.type = System::PageAccessType::WRITE; for(uInt16 addr = 0x1000; addr < 0x1080; addr += System::PAGE_SIZE) { - access.codeAccessBase = &myCodeAccessBase[addr & 0x007F]; + access.romAccessBase = &myRomAccessBase[addr & 0x007F]; mySystem->setPageAccess(addr, access); } @@ -58,7 +58,7 @@ void Cartridge4KSC::install(System& system) for(uInt16 addr = 0x1080; addr < 0x1100; addr += System::PAGE_SIZE) { access.directPeekBase = &myRAM[addr & 0x007F]; - access.codeAccessBase = &myCodeAccessBase[0x80 + (addr & 0x007F)]; + access.romAccessBase = &myRomAccessBase[0x80 + (addr & 0x007F)]; mySystem->setPageAccess(addr, access); } @@ -66,7 +66,7 @@ void Cartridge4KSC::install(System& system) for(uInt16 addr = 0x1100; addr < 0x2000; addr += System::PAGE_SIZE) { access.directPeekBase = &myImage[addr & 0x0FFF]; - access.codeAccessBase = &myCodeAccessBase[addr & 0x0FFF]; + access.romAccessBase = &myRomAccessBase[addr & 0x0FFF]; mySystem->setPageAccess(addr, access); } } diff --git a/src/emucore/CartAR.cxx b/src/emucore/CartAR.cxx index e5755d6dd..f4edb41ba 100644 --- a/src/emucore/CartAR.cxx +++ b/src/emucore/CartAR.cxx @@ -35,13 +35,13 @@ CartridgeAR::CartridgeAR(const ByteBuffer& image, size_t size, std::copy_n(ourDefaultHeader.data(), ourDefaultHeader.size(), myLoadImages.get()+myImage.size()); - // We use System::PageAccess.codeAccessBase, but don't allow its use + // We use System::PageAccess.romAccessBase, but don't allow its use // through a pointer, since the AR scheme doesn't support bankswitching // in the normal sense // // Instead, access will be through the getAccessFlags and setAccessFlags // methods below - createCodeAccessBase(mySize); + createRomAccessBase(mySize); } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -194,14 +194,14 @@ bool CartridgeAR::poke(uInt16 addr, uInt8) // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Device::AccessFlags CartridgeAR::getAccessFlags(uInt16 address) const { - return myCodeAccessBase[(address & 0x07FF) + + return myRomAccessBase[(address & 0x07FF) + myImageOffset[(address & 0x0800) ? 1 : 0]]; } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - void CartridgeAR::setAccessFlags(uInt16 address, Device::AccessFlags flags) { - myCodeAccessBase[(address & 0x07FF) + + myRomAccessBase[(address & 0x07FF) + myImageOffset[(address & 0x0800) ? 1 : 0]] |= flags; } #endif diff --git a/src/emucore/CartBF.cxx b/src/emucore/CartBF.cxx index b1f780699..df773d805 100644 --- a/src/emucore/CartBF.cxx +++ b/src/emucore/CartBF.cxx @@ -25,7 +25,7 @@ CartridgeBF::CartridgeBF(const ByteBuffer& image, size_t size, { // Copy the ROM image into my buffer std::copy_n(image.get(), std::min(myImage.size(), size), myImage.begin()); - createCodeAccessBase(myImage.size()); + createRomAccessBase(myImage.size()); } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -88,7 +88,7 @@ bool CartridgeBF::bank(uInt16 bank) for(uInt16 addr = (0x1F80 & ~System::PAGE_MASK); addr < 0x2000; addr += System::PAGE_SIZE) { - access.codeAccessBase = &myCodeAccessBase[myBankOffset + (addr & 0x0FFF)]; + access.romAccessBase = &myRomAccessBase[myBankOffset + (addr & 0x0FFF)]; mySystem->setPageAccess(addr, access); } @@ -97,7 +97,7 @@ bool CartridgeBF::bank(uInt16 bank) addr += System::PAGE_SIZE) { access.directPeekBase = &myImage[myBankOffset + (addr & 0x0FFF)]; - access.codeAccessBase = &myCodeAccessBase[myBankOffset + (addr & 0x0FFF)]; + access.romAccessBase = &myRomAccessBase[myBankOffset + (addr & 0x0FFF)]; mySystem->setPageAccess(addr, access); } return myBankChanged = true; diff --git a/src/emucore/CartBFSC.cxx b/src/emucore/CartBFSC.cxx index 00b5efc32..fdfac6f95 100644 --- a/src/emucore/CartBFSC.cxx +++ b/src/emucore/CartBFSC.cxx @@ -25,7 +25,7 @@ CartridgeBFSC::CartridgeBFSC(const ByteBuffer& image, size_t size, { // Copy the ROM image into my buffer std::copy_n(image.get(), std::min(myImage.size(), size), myImage.begin()); - createCodeAccessBase(myImage.size()); + createRomAccessBase(myImage.size()); } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -51,7 +51,7 @@ void CartridgeBFSC::install(System& system) access.type = System::PageAccessType::WRITE; for(uInt16 addr = 0x1000; addr < 0x1080; addr += System::PAGE_SIZE) { - access.codeAccessBase = &myCodeAccessBase[addr & 0x007F]; + access.romAccessBase = &myRomAccessBase[addr & 0x007F]; mySystem->setPageAccess(addr, access); } @@ -60,7 +60,7 @@ void CartridgeBFSC::install(System& system) for(uInt16 addr = 0x1080; addr < 0x1100; addr += System::PAGE_SIZE) { access.directPeekBase = &myRAM[addr & 0x007F]; - access.codeAccessBase = &myCodeAccessBase[0x80 + (addr & 0x007F)]; + access.romAccessBase = &myRomAccessBase[0x80 + (addr & 0x007F)]; mySystem->setPageAccess(addr, access); } @@ -127,7 +127,7 @@ bool CartridgeBFSC::bank(uInt16 bank) for(uInt16 addr = (0x1F80 & ~System::PAGE_MASK); addr < 0x2000; addr += System::PAGE_SIZE) { - access.codeAccessBase = &myCodeAccessBase[myBankOffset + (addr & 0x0FFF)]; + access.romAccessBase = &myRomAccessBase[myBankOffset + (addr & 0x0FFF)]; mySystem->setPageAccess(addr, access); } @@ -136,7 +136,7 @@ bool CartridgeBFSC::bank(uInt16 bank) addr += System::PAGE_SIZE) { access.directPeekBase = &myImage[myBankOffset + (addr & 0x0FFF)]; - access.codeAccessBase = &myCodeAccessBase[myBankOffset + (addr & 0x0FFF)]; + access.romAccessBase = &myRomAccessBase[myBankOffset + (addr & 0x0FFF)]; mySystem->setPageAccess(addr, access); } return myBankChanged = true; diff --git a/src/emucore/CartBUS.cxx b/src/emucore/CartBUS.cxx index c34593e73..1dc991563 100644 --- a/src/emucore/CartBUS.cxx +++ b/src/emucore/CartBUS.cxx @@ -49,7 +49,7 @@ CartridgeBUS::CartridgeBUS(const ByteBuffer& image, size_t size, std::copy_n(image.get(), std::min(myImage.size(), size), myImage.begin()); // Even though the ROM is 32K, only 28K is accessible to the 6507 - createCodeAccessBase(28_KB); + createRomAccessBase(28_KB); // Pointer to the program ROM (28K @ 0 byte offset) // which starts after the 2K BUS Driver and 2K C Code @@ -442,7 +442,7 @@ bool CartridgeBUS::bank(uInt16 bank) // Map Program ROM image into the system for(uInt16 addr = 0x1040; addr < 0x2000; addr += System::PAGE_SIZE) { - access.codeAccessBase = &myCodeAccessBase[myBankOffset + (addr & 0x0FFF)]; + access.romAccessBase = &myRomAccessBase[myBankOffset + (addr & 0x0FFF)]; mySystem->setPageAccess(addr, access); } return myBankChanged = true; diff --git a/src/emucore/CartCDF.cxx b/src/emucore/CartCDF.cxx index 052a1b523..48f3d3d0f 100644 --- a/src/emucore/CartCDF.cxx +++ b/src/emucore/CartCDF.cxx @@ -65,7 +65,7 @@ CartridgeCDF::CartridgeCDF(const ByteBuffer& image, size_t size, std::copy_n(image.get(), std::min(myImage.size(), size), myImage.begin()); // even though the ROM is 32K, only 28K is accessible to the 6507 - createCodeAccessBase(28_KB); + createRomAccessBase(28_KB); // Pointer to the program ROM (28K @ 0 byte offset) // which starts after the 2K CDF Driver and 2K C Code @@ -415,7 +415,7 @@ bool CartridgeCDF::bank(uInt16 bank) // Map Program ROM image into the system for(uInt16 addr = 0x1040; addr < 0x2000; addr += System::PAGE_SIZE) { - access.codeAccessBase = &myCodeAccessBase[myBankOffset + (addr & 0x0FFF)]; + access.romAccessBase = &myRomAccessBase[myBankOffset + (addr & 0x0FFF)]; mySystem->setPageAccess(addr, access); } return myBankChanged = true; diff --git a/src/emucore/CartCM.cxx b/src/emucore/CartCM.cxx index c460e72ff..6bead1b33 100644 --- a/src/emucore/CartCM.cxx +++ b/src/emucore/CartCM.cxx @@ -27,7 +27,7 @@ CartridgeCM::CartridgeCM(const ByteBuffer& image, size_t size, { // Copy the ROM image into my buffer std::copy_n(image.get(), std::min(myImage.size(), size), myImage.begin()); - createCodeAccessBase(myImage.size()); + createRomAccessBase(myImage.size()); } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -119,7 +119,7 @@ bool CartridgeCM::bank(uInt16 bank) for(uInt16 addr = 0x1000; addr < 0x1800; addr += System::PAGE_SIZE) { access.directPeekBase = &myImage[myBankOffset + (addr & 0x0FFF)]; - access.codeAccessBase = &myCodeAccessBase[myBankOffset + (addr & 0x0FFF)]; + access.romAccessBase = &myRomAccessBase[myBankOffset + (addr & 0x0FFF)]; mySystem->setPageAccess(addr, access); } @@ -131,12 +131,12 @@ bool CartridgeCM::bank(uInt16 bank) if(mySWCHA & 0x10) { access.directPeekBase = &myImage[myBankOffset + (addr & 0x0FFF)]; - access.codeAccessBase = &myCodeAccessBase[myBankOffset + (addr & 0x0FFF)]; + access.romAccessBase = &myRomAccessBase[myBankOffset + (addr & 0x0FFF)]; } else { access.directPeekBase = &myRAM[addr & 0x7FF]; - access.codeAccessBase = &myCodeAccessBase[myBankOffset + (addr & 0x07FF)]; + access.romAccessBase = &myRomAccessBase[myBankOffset + (addr & 0x07FF)]; } if((mySWCHA & 0x30) == 0x20) diff --git a/src/emucore/CartCTY.cxx b/src/emucore/CartCTY.cxx index 22472dc0f..40cae5597 100644 --- a/src/emucore/CartCTY.cxx +++ b/src/emucore/CartCTY.cxx @@ -28,7 +28,7 @@ CartridgeCTY::CartridgeCTY(const ByteBuffer& image, size_t size, { // Copy the ROM image into my buffer std::copy_n(image.get(), std::min(myImage.size(), size), myImage.begin()); - createCodeAccessBase(myImage.size()); + createRomAccessBase(myImage.size()); // Default to no tune data in case user is utilizing an old ROM myTuneData.fill(0); @@ -240,7 +240,7 @@ bool CartridgeCTY::bank(uInt16 bank) System::PageAccess access(this, System::PageAccessType::READ); for(uInt16 addr = 0x1080; addr < 0x2000; addr += System::PAGE_SIZE) { - access.codeAccessBase = &myCodeAccessBase[myBankOffset + (addr & 0x0FFF)]; + access.romAccessBase = &myRomAccessBase[myBankOffset + (addr & 0x0FFF)]; mySystem->setPageAccess(addr, access); } return myBankChanged = true; diff --git a/src/emucore/CartCV.cxx b/src/emucore/CartCV.cxx index e5ca47788..bea42e759 100644 --- a/src/emucore/CartCV.cxx +++ b/src/emucore/CartCV.cxx @@ -40,7 +40,7 @@ CartridgeCV::CartridgeCV(const ByteBuffer& image, size_t size, // Copy the RAM image into a buffer for use in reset() std::copy_n(image.get(), myInitialRAM.size(), myInitialRAM.begin()); } - createCodeAccessBase(myImage.size() + myRAM.size()); + createRomAccessBase(myImage.size() + myRAM.size()); } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -68,7 +68,7 @@ void CartridgeCV::install(System& system) for(uInt16 addr = 0x1800; addr < 0x2000; addr += System::PAGE_SIZE) { access.directPeekBase = &myImage[addr & 0x07FF]; - access.codeAccessBase = &myCodeAccessBase[addr & 0x07FF]; + access.romAccessBase = &myRomAccessBase[addr & 0x07FF]; mySystem->setPageAccess(addr, access); } @@ -76,7 +76,7 @@ void CartridgeCV::install(System& system) // Map access to this class, since we need to inspect all accesses to // check if RWP happens access.directPeekBase = nullptr; - access.codeAccessBase = nullptr; + access.romAccessBase = nullptr; access.type = System::PageAccessType::WRITE; for(uInt16 addr = 0x1400; addr < 0x1800; addr += System::PAGE_SIZE) mySystem->setPageAccess(addr, access); @@ -87,7 +87,7 @@ void CartridgeCV::install(System& system) for(uInt16 addr = 0x1000; addr < 0x1400; addr += System::PAGE_SIZE) { access.directPeekBase = &myRAM[addr & 0x03FF]; - access.codeAccessBase = &myCodeAccessBase[2048 + (addr & 0x03FF)]; + access.romAccessBase = &myRomAccessBase[2048 + (addr & 0x03FF)]; mySystem->setPageAccess(addr, access); } } diff --git a/src/emucore/CartCVPlus.cxx b/src/emucore/CartCVPlus.cxx index c70c53b0d..c0d9b01d2 100644 --- a/src/emucore/CartCVPlus.cxx +++ b/src/emucore/CartCVPlus.cxx @@ -30,7 +30,7 @@ CartridgeCVPlus::CartridgeCVPlus(const ByteBuffer& image, size_t size, // Copy the ROM image into my buffer std::copy_n(image.get(), mySize, myImage.get()); - createCodeAccessBase(mySize + myRAM.size()); + createRomAccessBase(mySize + myRAM.size()); } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -58,11 +58,11 @@ void CartridgeCVPlus::install(System& system) // Map access to this class, since we need to inspect all accesses to // check if RWP happens access.directPeekBase = access.directPokeBase = nullptr; - access.codeAccessBase = nullptr; + access.romAccessBase = nullptr; access.type = System::PageAccessType::WRITE; for(uInt16 addr = 0x1400; addr < 0x1800; addr += System::PAGE_SIZE) { - access.codeAccessBase = &myCodeAccessBase[mySize + (addr & 0x03FF)]; + access.romAccessBase = &myRomAccessBase[mySize + (addr & 0x03FF)]; mySystem->setPageAccess(addr, access); } @@ -71,7 +71,7 @@ void CartridgeCVPlus::install(System& system) for(uInt16 addr = 0x1000; addr < 0x1400; addr += System::PAGE_SIZE) { access.directPeekBase = &myRAM[addr & 0x03FF]; - access.codeAccessBase = &myCodeAccessBase[mySize + (addr & 0x03FF)]; + access.romAccessBase = &myRomAccessBase[mySize + (addr & 0x03FF)]; mySystem->setPageAccess(addr, access); } @@ -148,7 +148,7 @@ bool CartridgeCVPlus::bank(uInt16 bank) for(uInt16 addr = 0x1800; addr < 0x2000; addr += System::PAGE_SIZE) { access.directPeekBase = &myImage[offset + (addr & 0x07FF)]; - access.codeAccessBase = &myCodeAccessBase[offset + (addr & 0x07FF)]; + access.romAccessBase = &myRomAccessBase[offset + (addr & 0x07FF)]; mySystem->setPageAccess(addr, access); } diff --git a/src/emucore/CartDASH.cxx b/src/emucore/CartDASH.cxx index 2c85ada47..e893b6f07 100644 --- a/src/emucore/CartDASH.cxx +++ b/src/emucore/CartDASH.cxx @@ -30,7 +30,7 @@ CartridgeDASH::CartridgeDASH(const ByteBuffer& image, size_t size, // Copy the ROM image into my buffer std::copy_n(image.get(), mySize, myImage.get()); - createCodeAccessBase(mySize + myRAM.size()); + createRomAccessBase(mySize + myRAM.size()); } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -204,7 +204,7 @@ void CartridgeDASH::bankRAMSlot(uInt16 bank) if(!upper) access.directPeekBase = &myRAM[startCurrentBank + (addr & (RAM_BANK_SIZE - 1))]; - access.codeAccessBase = &myCodeAccessBase[mySize + startCurrentBank + (addr & (RAM_BANK_SIZE - 1))]; + access.romAccessBase = &myRomAccessBase[mySize + startCurrentBank + (addr & (RAM_BANK_SIZE - 1))]; mySystem->setPageAccess(addr, access); } } @@ -247,7 +247,7 @@ void CartridgeDASH::bankROMSlot(uInt16 bank) for (uInt16 addr = start; addr <= end; addr += System::PAGE_SIZE) { access.directPeekBase = &myImage[startCurrentBank + (addr & (ROM_BANK_SIZE - 1))]; - access.codeAccessBase = &myCodeAccessBase[startCurrentBank + (addr & (ROM_BANK_SIZE - 1))]; + access.romAccessBase = &myRomAccessBase[startCurrentBank + (addr & (ROM_BANK_SIZE - 1))]; mySystem->setPageAccess(addr, access); } } diff --git a/src/emucore/CartDF.cxx b/src/emucore/CartDF.cxx index d837f9631..7e4ed9c2c 100644 --- a/src/emucore/CartDF.cxx +++ b/src/emucore/CartDF.cxx @@ -25,7 +25,7 @@ CartridgeDF::CartridgeDF(const ByteBuffer& image, size_t size, { // Copy the ROM image into my buffer std::copy_n(image.get(), std::min(myImage.size(), size), myImage.begin()); - createCodeAccessBase(myImage.size()); + createRomAccessBase(myImage.size()); } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -84,7 +84,7 @@ bool CartridgeDF::bank(uInt16 bank) for(uInt16 addr = (0x1FC0 & ~System::PAGE_MASK); addr < 0x2000; addr += System::PAGE_SIZE) { - access.codeAccessBase = &myCodeAccessBase[myBankOffset + (addr & 0x0FFF)]; + access.romAccessBase = &myRomAccessBase[myBankOffset + (addr & 0x0FFF)]; mySystem->setPageAccess(addr, access); } @@ -93,7 +93,7 @@ bool CartridgeDF::bank(uInt16 bank) addr += System::PAGE_SIZE) { access.directPeekBase = &myImage[myBankOffset + (addr & 0x0FFF)]; - access.codeAccessBase = &myCodeAccessBase[myBankOffset + (addr & 0x0FFF)]; + access.romAccessBase = &myRomAccessBase[myBankOffset + (addr & 0x0FFF)]; mySystem->setPageAccess(addr, access); } return myBankChanged = true; diff --git a/src/emucore/CartDFSC.cxx b/src/emucore/CartDFSC.cxx index 1df44e638..530ef811c 100644 --- a/src/emucore/CartDFSC.cxx +++ b/src/emucore/CartDFSC.cxx @@ -25,7 +25,7 @@ CartridgeDFSC::CartridgeDFSC(const ByteBuffer& image, size_t size, { // Copy the ROM image into my buffer std::copy_n(image.get(), std::min(myImage.size(), size), myImage.begin()); - createCodeAccessBase(myImage.size()); + createRomAccessBase(myImage.size()); } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -51,7 +51,7 @@ void CartridgeDFSC::install(System& system) access.type = System::PageAccessType::WRITE; for(uInt16 addr = 0x1000; addr < 0x1080; addr += System::PAGE_SIZE) { - access.codeAccessBase = &myCodeAccessBase[addr & 0x007F]; + access.romAccessBase = &myRomAccessBase[addr & 0x007F]; mySystem->setPageAccess(addr, access); } @@ -60,7 +60,7 @@ void CartridgeDFSC::install(System& system) for(uInt16 addr = 0x1080; addr < 0x1100; addr += System::PAGE_SIZE) { access.directPeekBase = &myRAM[addr & 0x007F]; - access.codeAccessBase = &myCodeAccessBase[0x80 + (addr & 0x007F)]; + access.romAccessBase = &myRomAccessBase[0x80 + (addr & 0x007F)]; mySystem->setPageAccess(addr, access); } @@ -127,7 +127,7 @@ bool CartridgeDFSC::bank(uInt16 bank) for(uInt16 addr = (0x1FC0 & ~System::PAGE_MASK); addr < 0x2000; addr += System::PAGE_SIZE) { - access.codeAccessBase = &myCodeAccessBase[myBankOffset + (addr & 0x0FFF)]; + access.romAccessBase = &myRomAccessBase[myBankOffset + (addr & 0x0FFF)]; mySystem->setPageAccess(addr, access); } @@ -136,7 +136,7 @@ bool CartridgeDFSC::bank(uInt16 bank) addr += System::PAGE_SIZE) { access.directPeekBase = &myImage[myBankOffset + (addr & 0x0FFF)]; - access.codeAccessBase = &myCodeAccessBase[myBankOffset + (addr & 0x0FFF)]; + access.romAccessBase = &myRomAccessBase[myBankOffset + (addr & 0x0FFF)]; mySystem->setPageAccess(addr, access); } return myBankChanged = true; diff --git a/src/emucore/CartDPC.cxx b/src/emucore/CartDPC.cxx index e382c8707..2ac559a57 100644 --- a/src/emucore/CartDPC.cxx +++ b/src/emucore/CartDPC.cxx @@ -27,7 +27,7 @@ CartridgeDPC::CartridgeDPC(const ByteBuffer& image, size_t size, { // Make a copy of the entire image std::copy_n(image.get(), std::min(myImage.size(), size), myImage.begin()); - createCodeAccessBase(8_KB); + createRomAccessBase(8_KB); // Pointer to the program ROM (8K @ 0 byte offset) myProgramImage = myImage.data(); @@ -373,7 +373,7 @@ bool CartridgeDPC::bank(uInt16 bank) for(uInt16 addr = (0x1FF8 & ~System::PAGE_MASK); addr < 0x2000; addr += System::PAGE_SIZE) { - access.codeAccessBase = &myCodeAccessBase[myBankOffset + (addr & 0x0FFF)]; + access.romAccessBase = &myRomAccessBase[myBankOffset + (addr & 0x0FFF)]; mySystem->setPageAccess(addr, access); } @@ -382,7 +382,7 @@ bool CartridgeDPC::bank(uInt16 bank) addr += System::PAGE_SIZE) { access.directPeekBase = &myProgramImage[myBankOffset + (addr & 0x0FFF)]; - access.codeAccessBase = &myCodeAccessBase[myBankOffset + (addr & 0x0FFF)]; + access.romAccessBase = &myRomAccessBase[myBankOffset + (addr & 0x0FFF)]; mySystem->setPageAccess(addr, access); } return myBankChanged = true; diff --git a/src/emucore/CartDPCPlus.cxx b/src/emucore/CartDPCPlus.cxx index ab7230f78..5e92ec2a1 100644 --- a/src/emucore/CartDPCPlus.cxx +++ b/src/emucore/CartDPCPlus.cxx @@ -36,7 +36,7 @@ CartridgeDPCPlus::CartridgeDPCPlus(const ByteBuffer& image, size_t size, if(mySize < myImage.size()) myImage.fill(0); std::copy_n(image.get(), size, myImage.begin() + (myImage.size() - mySize)); - createCodeAccessBase(24_KB); + createRomAccessBase(24_KB); // Pointer to the program ROM (24K @ 3K offset; ignore first 3K) myProgramImage = myImage.data() + 3_KB; @@ -604,7 +604,7 @@ bool CartridgeDPCPlus::bank(uInt16 bank) // Map Program ROM image into the system for(uInt16 addr = 0x1080; addr < 0x2000; addr += System::PAGE_SIZE) { - access.codeAccessBase = &myCodeAccessBase[myBankOffset + (addr & 0x0FFF)]; + access.romAccessBase = &myRomAccessBase[myBankOffset + (addr & 0x0FFF)]; mySystem->setPageAccess(addr, access); } return myBankChanged = true; diff --git a/src/emucore/CartE0.cxx b/src/emucore/CartE0.cxx index 0c1921464..96029f903 100644 --- a/src/emucore/CartE0.cxx +++ b/src/emucore/CartE0.cxx @@ -25,7 +25,7 @@ CartridgeE0::CartridgeE0(const ByteBuffer& image, size_t size, { // Copy the ROM image into my buffer std::copy_n(image.get(), std::min(myImage.size(), size), myImage.begin()); - createCodeAccessBase(myImage.size()); + createRomAccessBase(myImage.size()); } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -61,13 +61,13 @@ void CartridgeE0::install(System& system) addr += System::PAGE_SIZE) { access.directPeekBase = &myImage[0x1C00 + (addr & 0x03FF)]; - access.codeAccessBase = &myCodeAccessBase[0x1C00 + (addr & 0x03FF)]; + access.romAccessBase = &myRomAccessBase[0x1C00 + (addr & 0x03FF)]; mySystem->setPageAccess(addr, access); } // Set the page accessing methods for the hot spots in the last segment access.directPeekBase = nullptr; - access.codeAccessBase = &myCodeAccessBase[0x1FC0]; // TJ: is this the correct address (or 0x1FE0)? + access.romAccessBase = &myRomAccessBase[0x1FC0]; // TJ: is this the correct address (or 0x1FE0)? access.type = System::PageAccessType::READ; for(uInt16 addr = (0x1FE0 & ~System::PAGE_MASK); addr < 0x2000; addr += System::PAGE_SIZE) @@ -144,7 +144,7 @@ void CartridgeE0::segmentZero(uInt16 slice) for(uInt16 addr = 0x1000; addr < 0x1400; addr += System::PAGE_SIZE) { access.directPeekBase = &myImage[offset + (addr & 0x03FF)]; - access.codeAccessBase = &myCodeAccessBase[offset + (addr & 0x03FF)]; + access.romAccessBase = &myRomAccessBase[offset + (addr & 0x03FF)]; mySystem->setPageAccess(addr, access); } myBankChanged = true; @@ -165,7 +165,7 @@ void CartridgeE0::segmentOne(uInt16 slice) for(uInt16 addr = 0x1400; addr < 0x1800; addr += System::PAGE_SIZE) { access.directPeekBase = &myImage[offset + (addr & 0x03FF)]; - access.codeAccessBase = &myCodeAccessBase[offset + (addr & 0x03FF)]; + access.romAccessBase = &myRomAccessBase[offset + (addr & 0x03FF)]; mySystem->setPageAccess(addr, access); } myBankChanged = true; @@ -186,7 +186,7 @@ void CartridgeE0::segmentTwo(uInt16 slice) for(uInt16 addr = 0x1800; addr < 0x1C00; addr += System::PAGE_SIZE) { access.directPeekBase = &myImage[offset + (addr & 0x03FF)]; - access.codeAccessBase = &myCodeAccessBase[offset + (addr & 0x03FF)]; + access.romAccessBase = &myRomAccessBase[offset + (addr & 0x03FF)]; mySystem->setPageAccess(addr, access); } myBankChanged = true; diff --git a/src/emucore/CartEF.cxx b/src/emucore/CartEF.cxx index f89e3b441..96c5cf0da 100644 --- a/src/emucore/CartEF.cxx +++ b/src/emucore/CartEF.cxx @@ -25,7 +25,7 @@ CartridgeEF::CartridgeEF(const ByteBuffer& image, size_t size, { // Copy the ROM image into my buffer std::copy_n(image.get(), std::min(myImage.size(), size), myImage.begin()); - createCodeAccessBase(myImage.size()); + createRomAccessBase(myImage.size()); } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -84,7 +84,7 @@ bool CartridgeEF::bank(uInt16 bank) for(uInt16 addr = (0x1FE0 & ~System::PAGE_MASK); addr < 0x2000; addr += System::PAGE_SIZE) { - access.codeAccessBase = &myCodeAccessBase[myBankOffset + (addr & 0x0FFF)]; + access.romAccessBase = &myRomAccessBase[myBankOffset + (addr & 0x0FFF)]; mySystem->setPageAccess(addr, access); } @@ -93,7 +93,7 @@ bool CartridgeEF::bank(uInt16 bank) addr += System::PAGE_SIZE) { access.directPeekBase = &myImage[myBankOffset + (addr & 0x0FFF)]; - access.codeAccessBase = &myCodeAccessBase[myBankOffset + (addr & 0x0FFF)]; + access.romAccessBase = &myRomAccessBase[myBankOffset + (addr & 0x0FFF)]; mySystem->setPageAccess(addr, access); } return myBankChanged = true; diff --git a/src/emucore/CartEFSC.cxx b/src/emucore/CartEFSC.cxx index 15f8470c0..8c9cdbb3c 100644 --- a/src/emucore/CartEFSC.cxx +++ b/src/emucore/CartEFSC.cxx @@ -25,7 +25,7 @@ CartridgeEFSC::CartridgeEFSC(const ByteBuffer& image, size_t size, { // Copy the ROM image into my buffer std::copy_n(image.get(), std::min(myImage.size(), size), myImage.begin()); - createCodeAccessBase(myImage.size()); + createRomAccessBase(myImage.size()); } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -51,7 +51,7 @@ void CartridgeEFSC::install(System& system) access.type = System::PageAccessType::WRITE; for(uInt16 addr = 0x1000; addr < 0x1080; addr += System::PAGE_SIZE) { - access.codeAccessBase = &myCodeAccessBase[addr & 0x007F]; + access.romAccessBase = &myRomAccessBase[addr & 0x007F]; mySystem->setPageAccess(addr, access); } @@ -60,7 +60,7 @@ void CartridgeEFSC::install(System& system) for(uInt16 addr = 0x1080; addr < 0x1100; addr += System::PAGE_SIZE) { access.directPeekBase = &myRAM[addr & 0x007F]; - access.codeAccessBase = &myCodeAccessBase[0x80 + (addr & 0x007F)]; + access.romAccessBase = &myRomAccessBase[0x80 + (addr & 0x007F)]; mySystem->setPageAccess(addr, access); } @@ -127,7 +127,7 @@ bool CartridgeEFSC::bank(uInt16 bank) for(uInt16 addr = (0x1FE0 & ~System::PAGE_MASK); addr < 0x2000; addr += System::PAGE_SIZE) { - access.codeAccessBase = &myCodeAccessBase[myBankOffset + (addr & 0x0FFF)]; + access.romAccessBase = &myRomAccessBase[myBankOffset + (addr & 0x0FFF)]; mySystem->setPageAccess(addr, access); } @@ -136,7 +136,7 @@ bool CartridgeEFSC::bank(uInt16 bank) addr += System::PAGE_SIZE) { access.directPeekBase = &myImage[myBankOffset + (addr & 0x0FFF)]; - access.codeAccessBase = &myCodeAccessBase[myBankOffset + (addr & 0x0FFF)]; + access.romAccessBase = &myRomAccessBase[myBankOffset + (addr & 0x0FFF)]; mySystem->setPageAccess(addr, access); } return myBankChanged = true; diff --git a/src/emucore/CartF0.cxx b/src/emucore/CartF0.cxx index 14ace4375..bb10ccd43 100644 --- a/src/emucore/CartF0.cxx +++ b/src/emucore/CartF0.cxx @@ -25,7 +25,7 @@ CartridgeF0::CartridgeF0(const ByteBuffer& image, size_t size, { // Copy the ROM image into my buffer std::copy_n(image.get(), std::min(myImage.size(), size), myImage.begin()); - createCodeAccessBase(myImage.size()); + createRomAccessBase(myImage.size()); } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -91,7 +91,7 @@ bool CartridgeF0::bank(uInt16 bank) for(uInt16 addr = (0x1FF0 & ~System::PAGE_MASK); addr < 0x2000; addr += System::PAGE_SIZE) { - access.codeAccessBase = &myCodeAccessBase[myBankOffset + (addr & 0x0FFF)]; + access.romAccessBase = &myRomAccessBase[myBankOffset + (addr & 0x0FFF)]; mySystem->setPageAccess(addr, access); } @@ -100,7 +100,7 @@ bool CartridgeF0::bank(uInt16 bank) addr += System::PAGE_SIZE) { access.directPeekBase = &myImage[myBankOffset + (addr & 0x0FFF)]; - access.codeAccessBase = &myCodeAccessBase[myBankOffset + (addr & 0x0FFF)]; + access.romAccessBase = &myRomAccessBase[myBankOffset + (addr & 0x0FFF)]; mySystem->setPageAccess(addr, access); } diff --git a/src/emucore/CartF4.cxx b/src/emucore/CartF4.cxx index 82d3f61bb..81e53a238 100644 --- a/src/emucore/CartF4.cxx +++ b/src/emucore/CartF4.cxx @@ -26,7 +26,7 @@ CartridgeF4::CartridgeF4(const ByteBuffer& image, size_t size, { // Copy the ROM image into my buffer std::copy_n(image.get(), std::min(myImage.size(), size), myImage.begin()); - createCodeAccessBase(myImage.size()); + createRomAccessBase(myImage.size()); } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -88,7 +88,7 @@ bool CartridgeF4::bank(uInt16 bank) for(uInt16 addr = (0x1FF4 & ~System::PAGE_MASK); addr < 0x2000; addr += System::PAGE_SIZE) { - access.codeAccessBase = &myCodeAccessBase[myBankOffset + (addr & 0x0FFF)]; + access.romAccessBase = &myRomAccessBase[myBankOffset + (addr & 0x0FFF)]; mySystem->setPageAccess(addr, access); } @@ -97,7 +97,7 @@ bool CartridgeF4::bank(uInt16 bank) addr += System::PAGE_SIZE) { access.directPeekBase = &myImage[myBankOffset + (addr & 0x0FFF)]; - access.codeAccessBase = &myCodeAccessBase[myBankOffset + (addr & 0x0FFF)]; + access.romAccessBase = &myRomAccessBase[myBankOffset + (addr & 0x0FFF)]; mySystem->setPageAccess(addr, access); } return myBankChanged = true; diff --git a/src/emucore/CartF4SC.cxx b/src/emucore/CartF4SC.cxx index 45ec2ec88..79e34e854 100644 --- a/src/emucore/CartF4SC.cxx +++ b/src/emucore/CartF4SC.cxx @@ -25,7 +25,7 @@ CartridgeF4SC::CartridgeF4SC(const ByteBuffer& image, size_t size, { // Copy the ROM image into my buffer std::copy_n(image.get(), std::min(myImage.size(), size), myImage.begin()); - createCodeAccessBase(myImage.size()); + createRomAccessBase(myImage.size()); } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -51,7 +51,7 @@ void CartridgeF4SC::install(System& system) access.type = System::PageAccessType::WRITE; for(uInt16 addr = 0x1000; addr < 0x1080; addr += System::PAGE_SIZE) { - access.codeAccessBase = &myCodeAccessBase[addr & 0x007F]; + access.romAccessBase = &myRomAccessBase[addr & 0x007F]; mySystem->setPageAccess(addr, access); } @@ -60,7 +60,7 @@ void CartridgeF4SC::install(System& system) for(uInt16 addr = 0x1080; addr < 0x1100; addr += System::PAGE_SIZE) { access.directPeekBase = &myRAM[addr & 0x007F]; - access.codeAccessBase = &myCodeAccessBase[0x80 + (addr & 0x007F)]; + access.romAccessBase = &myRomAccessBase[0x80 + (addr & 0x007F)]; mySystem->setPageAccess(addr, access); } @@ -127,7 +127,7 @@ bool CartridgeF4SC::bank(uInt16 bank) for(uInt16 addr = (0x1FF4 & ~System::PAGE_MASK); addr < 0x2000; addr += System::PAGE_SIZE) { - access.codeAccessBase = &myCodeAccessBase[myBankOffset + (addr & 0x0FFF)]; + access.romAccessBase = &myRomAccessBase[myBankOffset + (addr & 0x0FFF)]; mySystem->setPageAccess(addr, access); } @@ -136,7 +136,7 @@ bool CartridgeF4SC::bank(uInt16 bank) addr += System::PAGE_SIZE) { access.directPeekBase = &myImage[myBankOffset + (addr & 0x0FFF)]; - access.codeAccessBase = &myCodeAccessBase[myBankOffset + (addr & 0x0FFF)]; + access.romAccessBase = &myRomAccessBase[myBankOffset + (addr & 0x0FFF)]; mySystem->setPageAccess(addr, access); } return myBankChanged = true; diff --git a/src/emucore/CartF6.cxx b/src/emucore/CartF6.cxx index a5ed70ce3..8bf672695 100644 --- a/src/emucore/CartF6.cxx +++ b/src/emucore/CartF6.cxx @@ -25,7 +25,7 @@ CartridgeF6::CartridgeF6(const ByteBuffer& image, size_t size, { // Copy the ROM image into my buffer std::copy_n(image.get(), std::min(myImage.size(), size), myImage.begin()); - createCodeAccessBase(myImage.size()); + createRomAccessBase(myImage.size()); } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -128,7 +128,7 @@ bool CartridgeF6::bank(uInt16 bank) for(uInt16 addr = (0x1FF6 & ~System::PAGE_MASK); addr < 0x2000; addr += System::PAGE_SIZE) { - access.codeAccessBase = &myCodeAccessBase[myBankOffset + (addr & 0x0FFF)]; + access.romAccessBase = &myRomAccessBase[myBankOffset + (addr & 0x0FFF)]; mySystem->setPageAccess(addr, access); } @@ -137,7 +137,7 @@ bool CartridgeF6::bank(uInt16 bank) addr += System::PAGE_SIZE) { access.directPeekBase = &myImage[myBankOffset + (addr & 0x0FFF)]; - access.codeAccessBase = &myCodeAccessBase[myBankOffset + (addr & 0x0FFF)]; + access.romAccessBase = &myRomAccessBase[myBankOffset + (addr & 0x0FFF)]; mySystem->setPageAccess(addr, access); } return myBankChanged = true; diff --git a/src/emucore/CartF6SC.cxx b/src/emucore/CartF6SC.cxx index 513560824..dbcd4c340 100644 --- a/src/emucore/CartF6SC.cxx +++ b/src/emucore/CartF6SC.cxx @@ -25,7 +25,7 @@ CartridgeF6SC::CartridgeF6SC(const ByteBuffer& image, size_t size, { // Copy the ROM image into my buffer std::copy_n(image.get(), std::min(myImage.size(), size), myImage.begin()); - createCodeAccessBase(myImage.size()); + createRomAccessBase(myImage.size()); } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -51,7 +51,7 @@ void CartridgeF6SC::install(System& system) access.type = System::PageAccessType::WRITE; for(uInt16 addr = 0x1000; addr < 0x1080; addr += System::PAGE_SIZE) { - access.codeAccessBase = &myCodeAccessBase[addr & 0x007F]; + access.romAccessBase = &myRomAccessBase[addr & 0x007F]; mySystem->setPageAccess(addr, access); } @@ -60,7 +60,7 @@ void CartridgeF6SC::install(System& system) for(uInt16 addr = 0x1080; addr < 0x1100; addr += System::PAGE_SIZE) { access.directPeekBase = &myRAM[addr & 0x007F]; - access.codeAccessBase = &myCodeAccessBase[0x80 + (addr & 0x007F)]; + access.romAccessBase = &myRomAccessBase[0x80 + (addr & 0x007F)]; mySystem->setPageAccess(addr, access); } @@ -167,7 +167,7 @@ bool CartridgeF6SC::bank(uInt16 bank) for(uInt16 addr = (0x1FF6 & ~System::PAGE_MASK); addr < 0x2000; addr += System::PAGE_SIZE) { - access.codeAccessBase = &myCodeAccessBase[myBankOffset + (addr & 0x0FFF)]; + access.romAccessBase = &myRomAccessBase[myBankOffset + (addr & 0x0FFF)]; mySystem->setPageAccess(addr, access); } @@ -176,7 +176,7 @@ bool CartridgeF6SC::bank(uInt16 bank) addr += System::PAGE_SIZE) { access.directPeekBase = &myImage[myBankOffset + (addr & 0x0FFF)]; - access.codeAccessBase = &myCodeAccessBase[myBankOffset + (addr & 0x0FFF)]; + access.romAccessBase = &myRomAccessBase[myBankOffset + (addr & 0x0FFF)]; mySystem->setPageAccess(addr, access); } return myBankChanged = true; diff --git a/src/emucore/CartF8.cxx b/src/emucore/CartF8.cxx index 34e8ae7d7..cde6d47f0 100644 --- a/src/emucore/CartF8.cxx +++ b/src/emucore/CartF8.cxx @@ -25,7 +25,7 @@ CartridgeF8::CartridgeF8(const ByteBuffer& image, size_t size, { // Copy the ROM image into my buffer std::copy_n(image.get(), std::min(myImage.size(), size), myImage.begin()); - createCodeAccessBase(myImage.size()); + createRomAccessBase(myImage.size()); } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -109,7 +109,7 @@ bool CartridgeF8::bank(uInt16 bank) for(uInt16 addr = (0x1FF8 & ~System::PAGE_MASK); addr < 0x2000; addr += System::PAGE_SIZE) { - access.codeAccessBase = &myCodeAccessBase[myBankOffset + (addr & 0x0FFF)]; + access.romAccessBase = &myRomAccessBase[myBankOffset + (addr & 0x0FFF)]; mySystem->setPageAccess(addr, access); } @@ -118,7 +118,7 @@ bool CartridgeF8::bank(uInt16 bank) addr += System::PAGE_SIZE) { access.directPeekBase = &myImage[myBankOffset + (addr & 0x0FFF)]; - access.codeAccessBase = &myCodeAccessBase[myBankOffset + (addr & 0x0FFF)]; + access.romAccessBase = &myRomAccessBase[myBankOffset + (addr & 0x0FFF)]; mySystem->setPageAccess(addr, access); } return myBankChanged = true; diff --git a/src/emucore/CartF8SC.cxx b/src/emucore/CartF8SC.cxx index d07cf9cb7..549fbea35 100644 --- a/src/emucore/CartF8SC.cxx +++ b/src/emucore/CartF8SC.cxx @@ -25,7 +25,7 @@ CartridgeF8SC::CartridgeF8SC(const ByteBuffer& image, size_t size, { // Copy the ROM image into my buffer std::copy_n(image.get(), std::min(myImage.size(), size), myImage.begin()); - createCodeAccessBase(myImage.size()); + createRomAccessBase(myImage.size()); } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -51,7 +51,7 @@ void CartridgeF8SC::install(System& system) access.type = System::PageAccessType::WRITE; for(uInt16 addr = 0x1000; addr < 0x1080; addr += System::PAGE_SIZE) { - access.codeAccessBase = &myCodeAccessBase[addr & 0x007F]; + access.romAccessBase = &myRomAccessBase[addr & 0x007F]; mySystem->setPageAccess(addr, access); } @@ -60,7 +60,7 @@ void CartridgeF8SC::install(System& system) for(uInt16 addr = 0x1080; addr < 0x1100; addr += System::PAGE_SIZE) { access.directPeekBase = &myRAM[addr & 0x007F]; - access.codeAccessBase = &myCodeAccessBase[0x80 + (addr & 0x007F)]; + access.romAccessBase = &myRomAccessBase[0x80 + (addr & 0x007F)]; mySystem->setPageAccess(addr, access); } @@ -147,7 +147,7 @@ bool CartridgeF8SC::bank(uInt16 bank) for(uInt16 addr = (0x1FF8 & ~System::PAGE_MASK); addr < 0x2000; addr += System::PAGE_SIZE) { - access.codeAccessBase = &myCodeAccessBase[myBankOffset + (addr & 0x0FFF)]; + access.romAccessBase = &myRomAccessBase[myBankOffset + (addr & 0x0FFF)]; mySystem->setPageAccess(addr, access); } @@ -156,7 +156,7 @@ bool CartridgeF8SC::bank(uInt16 bank) addr += System::PAGE_SIZE) { access.directPeekBase = &myImage[myBankOffset + (addr & 0x0FFF)]; - access.codeAccessBase = &myCodeAccessBase[myBankOffset + (addr & 0x0FFF)]; + access.romAccessBase = &myRomAccessBase[myBankOffset + (addr & 0x0FFF)]; mySystem->setPageAccess(addr, access); } return myBankChanged = true; diff --git a/src/emucore/CartFA.cxx b/src/emucore/CartFA.cxx index eeef63016..e06b869b6 100644 --- a/src/emucore/CartFA.cxx +++ b/src/emucore/CartFA.cxx @@ -25,7 +25,7 @@ CartridgeFA::CartridgeFA(const ByteBuffer& image, size_t size, { // Copy the ROM image into my buffer std::copy_n(image.get(), std::min(myImage.size(), size), myImage.begin()); - createCodeAccessBase(myImage.size()); + createRomAccessBase(myImage.size()); } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -51,7 +51,7 @@ void CartridgeFA::install(System& system) access.type = System::PageAccessType::WRITE; for(uInt16 addr = 0x1000; addr < 0x1100; addr += System::PAGE_SIZE) { - access.codeAccessBase = &myCodeAccessBase[addr & 0x00FF]; + access.romAccessBase = &myRomAccessBase[addr & 0x00FF]; mySystem->setPageAccess(addr, access); } @@ -60,7 +60,7 @@ void CartridgeFA::install(System& system) for(uInt16 addr = 0x1100; addr < 0x1200; addr += System::PAGE_SIZE) { access.directPeekBase = &myRAM[addr & 0x00FF]; - access.codeAccessBase = &myCodeAccessBase[0x100 + (addr & 0x00FF)]; + access.romAccessBase = &myRomAccessBase[0x100 + (addr & 0x00FF)]; mySystem->setPageAccess(addr, access); } @@ -157,7 +157,7 @@ bool CartridgeFA::bank(uInt16 bank) for(uInt16 addr = (0x1FF8 & ~System::PAGE_MASK); addr < 0x2000; addr += System::PAGE_SIZE) { - access.codeAccessBase = &myCodeAccessBase[myBankOffset + (addr & 0x0FFF)]; + access.romAccessBase = &myRomAccessBase[myBankOffset + (addr & 0x0FFF)]; mySystem->setPageAccess(addr, access); } @@ -166,7 +166,7 @@ bool CartridgeFA::bank(uInt16 bank) addr += System::PAGE_SIZE) { access.directPeekBase = &myImage[myBankOffset + (addr & 0x0FFF)]; - access.codeAccessBase = &myCodeAccessBase[myBankOffset + (addr & 0x0FFF)]; + access.romAccessBase = &myRomAccessBase[myBankOffset + (addr & 0x0FFF)]; mySystem->setPageAccess(addr, access); } return myBankChanged = true; diff --git a/src/emucore/CartFA2.cxx b/src/emucore/CartFA2.cxx index ce83f4c78..e6325e9ac 100644 --- a/src/emucore/CartFA2.cxx +++ b/src/emucore/CartFA2.cxx @@ -35,7 +35,7 @@ CartridgeFA2::CartridgeFA2(const ByteBuffer& image, size_t size, // Copy the ROM image into my buffer std::copy_n(img_ptr, mySize, myImage.begin()); - createCodeAccessBase(mySize); + createRomAccessBase(mySize); } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -61,7 +61,7 @@ void CartridgeFA2::install(System& system) access.type = System::PageAccessType::WRITE; for(uInt16 addr = 0x1000; addr < 0x1100; addr += System::PAGE_SIZE) { - access.codeAccessBase = &myCodeAccessBase[addr & 0x00FF]; + access.romAccessBase = &myRomAccessBase[addr & 0x00FF]; mySystem->setPageAccess(addr, access); } @@ -71,7 +71,7 @@ void CartridgeFA2::install(System& system) for(uInt16 addr = 0x1100; addr < 0x1200; addr += System::PAGE_SIZE) { access.directPeekBase = &myRAM[addr & 0x00FF]; - access.codeAccessBase = &myCodeAccessBase[0x100 + (addr & 0x00FF)]; + access.romAccessBase = &myRomAccessBase[0x100 + (addr & 0x00FF)]; mySystem->setPageAccess(addr, access); } @@ -222,7 +222,7 @@ bool CartridgeFA2::bank(uInt16 bank) for(uInt16 addr = (0x1FF4 & ~System::PAGE_MASK); addr < 0x2000; addr += System::PAGE_SIZE) { - access.codeAccessBase = &myCodeAccessBase[myBankOffset + (addr & 0x0FFF)]; + access.romAccessBase = &myRomAccessBase[myBankOffset + (addr & 0x0FFF)]; mySystem->setPageAccess(addr, access); } @@ -231,7 +231,7 @@ bool CartridgeFA2::bank(uInt16 bank) addr += System::PAGE_SIZE) { access.directPeekBase = &myImage[myBankOffset + (addr & 0x0FFF)]; - access.codeAccessBase = &myCodeAccessBase[myBankOffset + (addr & 0x0FFF)]; + access.romAccessBase = &myRomAccessBase[myBankOffset + (addr & 0x0FFF)]; mySystem->setPageAccess(addr, access); } return myBankChanged = true; diff --git a/src/emucore/CartFC.cxx b/src/emucore/CartFC.cxx index 251ea5a30..5195e499e 100644 --- a/src/emucore/CartFC.cxx +++ b/src/emucore/CartFC.cxx @@ -26,7 +26,7 @@ CartridgeFC::CartridgeFC(const ByteBuffer& image, size_t size, { // Copy the ROM image into my buffer std::copy_n(image.get(), std::min(myImage.size(), size), myImage.begin()); - createCodeAccessBase(myImage.size()); + createRomAccessBase(myImage.size()); } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -113,7 +113,7 @@ bool CartridgeFC::bank(uInt16 bank) for (uInt16 addr = (0x1FF8 & ~System::PAGE_MASK); addr < 0x2000; addr += System::PAGE_SIZE) { - access.codeAccessBase = &myCodeAccessBase[myBankOffset + (addr & 0x0FFF)]; + access.romAccessBase = &myRomAccessBase[myBankOffset + (addr & 0x0FFF)]; mySystem->setPageAccess(addr, access); } @@ -122,7 +122,7 @@ bool CartridgeFC::bank(uInt16 bank) addr += System::PAGE_SIZE) { access.directPeekBase = &myImage[myBankOffset + (addr & 0x0FFF)]; - access.codeAccessBase = &myCodeAccessBase[myBankOffset + (addr & 0x0FFF)]; + access.romAccessBase = &myRomAccessBase[myBankOffset + (addr & 0x0FFF)]; mySystem->setPageAccess(addr, access); } myCurrentBank = myTargetBank; diff --git a/src/emucore/CartFE.cxx b/src/emucore/CartFE.cxx index 454cf4427..de5c088e9 100644 --- a/src/emucore/CartFE.cxx +++ b/src/emucore/CartFE.cxx @@ -26,7 +26,7 @@ CartridgeFE::CartridgeFE(const ByteBuffer& image, size_t size, { // Copy the ROM image into my buffer std::copy_n(image.get(), std::min(myImage.size(), size), myImage.begin()); - createCodeAccessBase(myImage.size()); + createRomAccessBase(myImage.size()); } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/emucore/CartMDM.cxx b/src/emucore/CartMDM.cxx index da6ddbf3a..6eaacee0b 100644 --- a/src/emucore/CartMDM.cxx +++ b/src/emucore/CartMDM.cxx @@ -29,7 +29,7 @@ CartridgeMDM::CartridgeMDM(const ByteBuffer& image, size_t size, // Copy the ROM image into my buffer std::copy_n(image.get(), mySize, myImage.get()); - createCodeAccessBase(mySize); + createRomAccessBase(mySize); } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -111,7 +111,7 @@ bool CartridgeMDM::bank(uInt16 bank) for(uInt16 addr = 0x1000; addr < 0x2000; addr += System::PAGE_SIZE) { access.directPeekBase = &myImage[myBankOffset + (addr & 0x0FFF)]; - access.codeAccessBase = &myCodeAccessBase[myBankOffset + (addr & 0x0FFF)]; + access.romAccessBase = &myRomAccessBase[myBankOffset + (addr & 0x0FFF)]; mySystem->setPageAccess(addr, access); } diff --git a/src/emucore/CartMNetwork.cxx b/src/emucore/CartMNetwork.cxx index b433c4d72..9c3213292 100644 --- a/src/emucore/CartMNetwork.cxx +++ b/src/emucore/CartMNetwork.cxx @@ -34,7 +34,7 @@ void CartridgeMNetwork::initialize(const ByteBuffer& image, size_t size) // Copy the ROM image into my buffer std::copy_n(image.get(), std::min(romSize(), size), myImage.get()); - createCodeAccessBase(romSize() + myRAM.size()); + createRomAccessBase(romSize() + myRAM.size()); myRAMSlice = bankCount() - 1; } @@ -70,7 +70,7 @@ void CartridgeMNetwork::setAccess(uInt16 addrFrom, uInt16 size, access.directPeekBase = &directData[directOffset + (addr & addrMask)]; else if(type == System::PageAccessType::WRITE) // all RAM writes mapped to ::poke() access.directPokeBase = nullptr; - access.codeAccessBase = &myCodeAccessBase[codeOffset + (addr & addrMask)]; + access.romAccessBase = &myRomAccessBase[codeOffset + (addr & addrMask)]; mySystem->setPageAccess(addr, access); } } @@ -86,7 +86,7 @@ void CartridgeMNetwork::install(System& system) for(uInt16 addr = (0x1FE0 & ~System::PAGE_MASK); addr < 0x2000; addr += System::PAGE_SIZE) { - access.codeAccessBase = &myCodeAccessBase[0x1fc0]; + access.romAccessBase = &myRomAccessBase[0x1fc0]; mySystem->setPageAccess(addr, access); } /*setAccess(0x1FE0 & ~System::PAGE_MASK, System::PAGE_SIZE, diff --git a/src/emucore/CartSB.cxx b/src/emucore/CartSB.cxx index 796ecfcdf..db8d4a051 100644 --- a/src/emucore/CartSB.cxx +++ b/src/emucore/CartSB.cxx @@ -29,7 +29,7 @@ CartridgeSB::CartridgeSB(const ByteBuffer& image, size_t size, // Copy the ROM image into my buffer std::copy_n(image.get(), mySize, myImage.get()); - createCodeAccessBase(mySize); + createRomAccessBase(mySize); } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -121,7 +121,7 @@ bool CartridgeSB::bank(uInt16 bank) for(uInt16 addr = 0x1000; addr < 0x2000; addr += System::PAGE_SIZE) { access.directPeekBase = &myImage[myBankOffset + (addr & 0x0FFF)]; - access.codeAccessBase = &myCodeAccessBase[myBankOffset + (addr & 0x0FFF)]; + access.romAccessBase = &myRomAccessBase[myBankOffset + (addr & 0x0FFF)]; mySystem->setPageAccess(addr, access); } return myBankChanged = true; diff --git a/src/emucore/CartUA.cxx b/src/emucore/CartUA.cxx index b9de6bf4b..b0643cf97 100644 --- a/src/emucore/CartUA.cxx +++ b/src/emucore/CartUA.cxx @@ -27,7 +27,7 @@ CartridgeUA::CartridgeUA(const ByteBuffer& image, size_t size, { // Copy the ROM image into my buffer std::copy_n(image.get(), std::min(myImage.size(), size), myImage.begin()); - createCodeAccessBase(myImage.size()); + createRomAccessBase(myImage.size()); } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -135,7 +135,7 @@ bool CartridgeUA::bank(uInt16 bank) for(uInt16 addr = 0x1000; addr < 0x2000; addr += System::PAGE_SIZE) { access.directPeekBase = &myImage[myBankOffset + (addr & 0x0FFF)]; - access.codeAccessBase = &myCodeAccessBase[myBankOffset + (addr & 0x0FFF)]; + access.romAccessBase = &myRomAccessBase[myBankOffset + (addr & 0x0FFF)]; mySystem->setPageAccess(addr, access); } return myBankChanged = true; diff --git a/src/emucore/CartWD.cxx b/src/emucore/CartWD.cxx index d6b2bc239..2a6ea653a 100644 --- a/src/emucore/CartWD.cxx +++ b/src/emucore/CartWD.cxx @@ -37,7 +37,7 @@ CartridgeWD::CartridgeWD(const ByteBuffer& image, size_t size, } else std::copy_n(image.get(), mySize, myImage.begin()); - createCodeAccessBase(8_KB); + createRomAccessBase(8_KB); } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -63,7 +63,7 @@ void CartridgeWD::install(System& system) for(uInt16 addr = 0x1000; addr < 0x1040; addr += System::PAGE_SIZE) { read.directPeekBase = &myRAM[addr & 0x003F]; - read.codeAccessBase = &myCodeAccessBase[addr & 0x003F]; + read.romAccessBase = &myRomAccessBase[addr & 0x003F]; mySystem->setPageAccess(addr, read); } @@ -73,7 +73,7 @@ void CartridgeWD::install(System& system) System::PageAccess write(this, System::PageAccessType::WRITE); for(uInt16 addr = 0x1040; addr < 0x1080; addr += System::PAGE_SIZE) { - write.codeAccessBase = &myCodeAccessBase[addr & 0x003F]; + write.romAccessBase = &myRomAccessBase[addr & 0x003F]; mySystem->setPageAccess(addr, write); } @@ -177,7 +177,7 @@ void CartridgeWD::segmentZero(uInt8 slice) // Skip first 128 bytes; it is always RAM for(uInt16 addr = 0x1080; addr < 0x1400; addr += System::PAGE_SIZE) { - access.codeAccessBase = &myCodeAccessBase[offset + (addr & 0x03FF)]; + access.romAccessBase = &myRomAccessBase[offset + (addr & 0x03FF)]; mySystem->setPageAccess(addr, access); } myOffset[0] = offset; @@ -191,7 +191,7 @@ void CartridgeWD::segmentOne(uInt8 slice) for(uInt16 addr = 0x1400; addr < 0x1800; addr += System::PAGE_SIZE) { - access.codeAccessBase = &myCodeAccessBase[offset + (addr & 0x03FF)]; + access.romAccessBase = &myRomAccessBase[offset + (addr & 0x03FF)]; mySystem->setPageAccess(addr, access); } myOffset[1] = offset; @@ -205,7 +205,7 @@ void CartridgeWD::segmentTwo(uInt8 slice) for(uInt16 addr = 0x1800; addr < 0x1C00; addr += System::PAGE_SIZE) { - access.codeAccessBase = &myCodeAccessBase[offset + (addr & 0x03FF)]; + access.romAccessBase = &myRomAccessBase[offset + (addr & 0x03FF)]; mySystem->setPageAccess(addr, access); } myOffset[2] = offset; @@ -225,7 +225,7 @@ void CartridgeWD::segmentThree(uInt8 slice) for(uInt16 addr = 0x1C00; addr < 0x2000; addr += System::PAGE_SIZE) { - access.codeAccessBase = &myCodeAccessBase[offset + (addr & 0x03FF)]; + access.romAccessBase = &myRomAccessBase[offset + (addr & 0x03FF)]; mySystem->setPageAccess(addr, access); } myOffset[3] = offset; diff --git a/src/emucore/CartX07.cxx b/src/emucore/CartX07.cxx index 0e0bb2869..a58b97abb 100644 --- a/src/emucore/CartX07.cxx +++ b/src/emucore/CartX07.cxx @@ -27,7 +27,7 @@ CartridgeX07::CartridgeX07(const ByteBuffer& image, size_t size, { // Copy the ROM image into my buffer std::copy_n(image.get(), std::min(myImage.size(), size), myImage.begin()); - createCodeAccessBase(myImage.size()); + createRomAccessBase(myImage.size()); } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -115,7 +115,7 @@ bool CartridgeX07::bank(uInt16 bank) for(uInt16 addr = 0x1000; addr < 0x2000; addr += System::PAGE_SIZE) { access.directPeekBase = &myImage[offset + (addr & 0x0FFF)]; - access.codeAccessBase = &myCodeAccessBase[offset + (addr & 0x0FFF)]; + access.romAccessBase = &myRomAccessBase[offset + (addr & 0x0FFF)]; mySystem->setPageAccess(addr, access); } return myBankChanged = true; diff --git a/src/emucore/System.cxx b/src/emucore/System.cxx index 2fa33a201..f11a05fe4 100644 --- a/src/emucore/System.cxx +++ b/src/emucore/System.cxx @@ -105,8 +105,8 @@ uInt8 System::peek(uInt16 addr, Device::AccessFlags flags) #ifdef DEBUGGER_SUPPORT // Set access type - if(access.codeAccessBase) - *(access.codeAccessBase + (addr & PAGE_MASK)) |= flags; + if(access.romAccessBase) + *(access.romAccessBase + (addr & PAGE_MASK)) |= flags; else access.device->setAccessFlags(addr, flags); #endif @@ -134,8 +134,8 @@ void System::poke(uInt16 addr, uInt8 value, Device::AccessFlags flags) #ifdef DEBUGGER_SUPPORT // Set access type - if (access.codeAccessBase) - *(access.codeAccessBase + (addr & PAGE_MASK)) |= flags; + if (access.romAccessBase) + *(access.romAccessBase + (addr & PAGE_MASK)) |= flags; else access.device->setAccessFlags(addr, flags); #endif @@ -165,8 +165,8 @@ Device::AccessFlags System::getAccessFlags(uInt16 addr) const { const PageAccess& access = getPageAccess(addr); - if(access.codeAccessBase) - return *(access.codeAccessBase + (addr & PAGE_MASK)); + if(access.romAccessBase) + return *(access.romAccessBase + (addr & PAGE_MASK)); else return access.device->getAccessFlags(addr); } @@ -176,8 +176,8 @@ void System::setAccessFlags(uInt16 addr, Device::AccessFlags flags) { const PageAccess& access = getPageAccess(addr); - if(access.codeAccessBase) - *(access.codeAccessBase + (addr & PAGE_MASK)) |= flags; + if(access.romAccessBase) + *(access.romAccessBase + (addr & PAGE_MASK)) |= flags; else access.device->setAccessFlags(addr, flags); } diff --git a/src/emucore/System.hxx b/src/emucore/System.hxx index 1262b6ad3..b400b1cdb 100644 --- a/src/emucore/System.hxx +++ b/src/emucore/System.hxx @@ -273,13 +273,17 @@ class System : public Serializable uInt8* directPokeBase{nullptr}; /** - Pointer to a lookup table for marking an address as CODE. A CODE - section is defined as any address that appears in the program + Pointer to a lookup table for marking an address as CODE, DATA, GFX, + COL etc. + A CODE section is defined as any address that appears in the program counter. Currently, this is used by the debugger/disassembler to conclusively determine if a section of address space is CODE, even if the disassembler failed to mark it as such. + A DATA, GFX, COL etc. section is defined as any ROM address from which + data is read. This is used by the debugger/disassembler to format + address sections accordingly. */ - Device::AccessFlags* codeAccessBase{nullptr}; + Device::AccessFlags* romAccessBase{nullptr}; /** Pointer to the device associated with this page or to the system's