Bah, I cant find this bug to save my life.
(NOTE: It is 4AM at the moment)
here is the section of code where the thing happens..
I am exausted and it could possibly be something simple.Code:#include "C8memory.h" C8memory::C8memory() { Memory = new unsigned char [MEMORY_SIZE]; Registers = new unsigned char [REGISTERS]; Stack = new unsigned short [STACK]; Reset(); } C8memory::~C8memory() { delete [] Memory; delete [] Registers; delete [] Stack; } void C8memory::Reset() { memset(Memory, 0, MEMORY_SIZE); memset(Registers, 0, REGISTERS); memset(Stack, 0, STACK); PC = 0x200; Register_I = 0x200; SP = 0; } bool C8memory::LoadRom(char *filename) { std::ifstream rom(filename, std::ios::binary); if(!rom.is_open()) return false; rom.seekg(0, std::ios::end); const long file_size = rom.tellg(); rom.seekg(0, std::ios::beg); char *rom_buffer = new char [file_size]; rom.read(rom_buffer, file_size); rom.close(); memcpy(&Memory[0x200], rom_buffer, file_size); //<--HERE is the fault delete [] rom_buffer; return true; }
Sorry in advance if it is![]()



LinkBack URL
About LinkBacks



