Added support for flash memory inspection
This commit is contained in:
@@ -723,7 +723,8 @@ namespace Bloom::Targets::Microchip::Avr::Avr8Bit
|
||||
TargetMemoryAddressRange(
|
||||
ramStartAddress,
|
||||
ramStartAddress + this->targetParameters->ramSize.value() - 1
|
||||
)
|
||||
),
|
||||
TargetMemoryAccess(true, true, true)
|
||||
)
|
||||
));
|
||||
|
||||
@@ -735,6 +736,7 @@ namespace Bloom::Targets::Microchip::Avr::Avr8Bit
|
||||
flashStartAddress,
|
||||
flashStartAddress + this->targetParameters->flashSize.value() - 1
|
||||
),
|
||||
TargetMemoryAccess(true, true, false),
|
||||
this->targetParameters->flashPageSize
|
||||
)
|
||||
));
|
||||
@@ -749,7 +751,8 @@ namespace Bloom::Targets::Microchip::Avr::Avr8Bit
|
||||
TargetMemoryAddressRange(
|
||||
eepromStartAddress,
|
||||
eepromStartAddress + this->targetParameters->eepromSize.value() - 1
|
||||
)
|
||||
),
|
||||
TargetMemoryAccess(true, true, true)
|
||||
)
|
||||
));
|
||||
}
|
||||
|
||||
@@ -61,19 +61,39 @@ namespace Bloom::Targets
|
||||
}
|
||||
};
|
||||
|
||||
struct TargetMemoryAccess
|
||||
{
|
||||
bool readable = false;
|
||||
bool writeable = false;
|
||||
bool writeableDuringDebugSession = false;
|
||||
|
||||
TargetMemoryAccess(
|
||||
bool readable,
|
||||
bool writeable,
|
||||
bool writeableDuringDebugSession
|
||||
)
|
||||
: readable(readable)
|
||||
, writeable(writeable)
|
||||
, writeableDuringDebugSession(writeableDuringDebugSession)
|
||||
{}
|
||||
};
|
||||
|
||||
struct TargetMemoryDescriptor
|
||||
{
|
||||
TargetMemoryType type;
|
||||
TargetMemoryAddressRange addressRange;
|
||||
TargetMemoryAccess access;
|
||||
std::optional<TargetMemorySize> pageSize;
|
||||
|
||||
TargetMemoryDescriptor(
|
||||
TargetMemoryType type,
|
||||
TargetMemoryAddressRange addressRange,
|
||||
TargetMemoryAccess access,
|
||||
std::optional<TargetMemorySize> pageSize = std::nullopt
|
||||
)
|
||||
: type(type)
|
||||
, addressRange(addressRange)
|
||||
, access(access)
|
||||
, pageSize(pageSize)
|
||||
{};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user