#ifndef MEMORY_H #define MEMORY_H #include #include extern uint8_t* memory; void mem_init(); void mem_register_mmio(uint32_t address, uint32_t size, uint32_t reg_size, void* fn_write, void* fn_read); void mem_write8(uint32_t address, uint8_t value); void mem_write16(uint32_t address, uint16_t value); void mem_write32(uint32_t address, uint32_t value); uint8_t mem_read8(uint32_t address); uint16_t mem_read16(uint32_t address); uint32_t mem_read32(uint32_t address); uint32_t mem_fetch(uint32_t address); #endif