Add int32_t read_int32(uint32_t addr) function

This commit is contained in:
tuz358
2018-03-05 15:25:24 +09:00
parent 570c51a594
commit e081afa419
2 changed files with 10 additions and 0 deletions

View File

@@ -14,6 +14,7 @@ public:
uint8_t read_uint8(uint32_t addr);
int8_t read_int8(uint32_t addr);
uint32_t read_uint32(uint32_t addr);
int32_t read_int32(uint32_t addr);
void write_uint8(uint32_t addr, uint8_t data);
void write_uint32(uint32_t addr, uint32_t data);
size_t get_memsize();

View File

@@ -24,6 +24,15 @@ uint32_t Memory::read_uint32(uint32_t addr){
return data;
}
int32_t Memory::read_int32(uint32_t addr){
int32_t data = 0x00;
for (int i = 0;i < 4;i++) {
data = data << 8;
data += this->memory[addr + i];
}
return data;
}
void Memory::write_uint8(uint32_t addr, uint8_t data){
this->memory[addr] = data;
}