#pragma once #include namespace mem { #define MEMTAG_NONE 0x00 #define MEMTAG_DATA 0x01 #define MEMTAG_INST 0x02 #define MEMTAG_CODE 0x04 #define MEMTAG_IGNORE 0x08 #define MEMTAG_TDATA 0x10 #define MEMTAG_TINST 0x20 #define MEMTAG_TREPEAT 0x40 #define MEMTAG_MODIFIED 0x80 #define MEMTAG_KNOWN 0x07 #define MEMTAG_TOUCHED 0x70 void reset(); uint8_t read(uint16_t address); void write(uint16_t address, uint8_t value); uint8_t getTag(uint16_t address); void setTag(uint16_t address, uint8_t value); void update_mapped(uint32_t dt); }