// // Created by Palindromic Bread Loaf on 7/21/25. // #ifndef SYSTEM_H #define SYSTEM_H #include #include #include "cpu.h" #include "ppu.h" #include "apu.h" #include "bus.h" // Main SNES System class class System { std::unique_ptr cpu; std::unique_ptr ppu; std::unique_ptr apu; std::unique_ptr bus; std::vector cartridge_data; bool running; public: System(); ~System(); bool LoadROM(const std::string& filename); void Reset(); void Run(); void Step(); void Shutdown(); }; #endif //SYSTEM_H