35 lines
576 B
C++
35 lines
576 B
C++
//
|
|
// Created by Selim Mustafaev on 11.08.2023.
|
|
//
|
|
|
|
#ifndef NES_NES_H
|
|
#define NES_NES_H
|
|
|
|
#include "Cpu.h"
|
|
#include "Rom.h"
|
|
#include <filesystem>
|
|
|
|
namespace nes {
|
|
|
|
namespace fs = std::filesystem;
|
|
|
|
class Nes {
|
|
public:
|
|
Nes();
|
|
void runRom(const fs::path& path);
|
|
void reset();
|
|
|
|
public: // For debug
|
|
uint8_t read(uint16_t address);
|
|
void write(uint16_t address, uint8_t value);
|
|
|
|
private:
|
|
std::unique_ptr<Bus> _bus;
|
|
std::unique_ptr<Cpu> _cpu;
|
|
std::unique_ptr<Rom> _rom;
|
|
};
|
|
|
|
}
|
|
|
|
#endif //NES_NES_H
|