public static void Main(String[] args)
 {
     Emulator main = new Emulator();
     main.Processor = new Processor();
     main.Memory = new Memory();
     Rom rom = new Rom();
     rom.LoadFromFile();
     main.LoadRom(rom);
     main.Run();
 }
        private void LoadRom(Rom rom)
        {
            Memory.Reset();
            Processor.Reset();
            //if the type is 0 it's a rom only cartridge giving it a different address space, or something.
            for (int i = 0; i < 0x8000; ++i)
                Memory.Data[i] = rom.Data[i];

            //ignore the checking stuff, it's not really needed to be honest
            //nintendo logo check, complement check, checksum (not used regardless)

            //reset the video?
        }