19
This commit is contained in:
@@ -27,6 +27,7 @@ public:
|
||||
/// @param address
|
||||
/// @return reference to memory at given address
|
||||
auto At(std::size_t address) -> ValueType &;
|
||||
auto At(std::size_t address) const -> ValueType;
|
||||
|
||||
/// Access memory at address relative to base pointer
|
||||
/// @param offset from base pointer
|
||||
|
@@ -11,6 +11,12 @@ auto Machine::At(std::size_t const i) -> ValueType & {
|
||||
return i < rom_.size() ? rom_[i] : ram_[i];
|
||||
}
|
||||
|
||||
auto Machine::At(std::size_t const i) const -> ValueType {
|
||||
if (i < rom_.size()) return rom_[i];
|
||||
if (auto it = ram_.find(i); it != ram_.end()) { return it->second; }
|
||||
return 0;
|
||||
}
|
||||
|
||||
auto Machine::Rel(std::size_t const i) -> ValueType & {
|
||||
return At(base_ + i);
|
||||
}
|
||||
|
Reference in New Issue
Block a user