diff --git a/emulator.cpp b/emulator.cpp index f3844e2..d953179 100644 --- a/emulator.cpp +++ b/emulator.cpp @@ -1,7 +1,5 @@ #include "include/emulator.h" -Instructions instructions; -Memory memory; void Emulator::init(size_t memorysize, FILE *bin){ memory.init(memorysize); @@ -27,6 +25,11 @@ uint8_t Emulator::read_next_opcode(){ return opcode; } +uint8_t Emulator::read_uint8(uint32_t addr){ + uint8_t data = memory.read_uint8(addr); + return data; +} + uint32_t Emulator::get_eip(){ return instructions.eip; } diff --git a/include/emulator.h b/include/emulator.h index 99687b4..5dde730 100644 --- a/include/emulator.h +++ b/include/emulator.h @@ -8,10 +8,14 @@ class Emulator{ public: + Instructions instructions; + Memory memory; + void init(size_t memorysize, FILE *bin); void free(); void exec(uint8_t opcode); void dump_registers(); uint8_t read_next_opcode(); + uint8_t read_uint8(uint32_t addr); uint32_t get_eip(); };