initial commit

This commit is contained in:
Lauchmelder 2022-02-28 16:04:25 +01:00
commit ff8389a76b
No known key found for this signature in database
GPG key ID: C2403C69D78F011D
46 changed files with 9118 additions and 0 deletions

40
src/mappers/Mapper000.cpp Normal file
View file

@ -0,0 +1,40 @@
#include "Mapper000.hpp"
#include "../Log.hpp"
#include <fstream>
#include "../Cartridge.hpp"
Mapper000::Mapper000(Header& header, std::ifstream& ifs)
{
LOG_CORE_INFO("Allocating PRG ROM");
PRG_ROM = std::vector<Byte>(0x4000);
ifs.read((char*)PRG_ROM.data(), 0x4000);
LOG_CORE_INFO("Allocating CHR ROM");
CHR_ROM = std::vector<Byte>(0x2000);
ifs.read((char*)CHR_ROM.data(), 0x2000);
}
Byte Mapper000::ReadCPU(Word addr)
{
if (0x8000 <= addr && addr <= 0xFFFF)
{
return PRG_ROM[addr & 0x03FFF];
}
}
Byte Mapper000::ReadPPU(Word addr)
{
if (0x0000 <= addr && addr <= 0x1FFF)
{
return CHR_ROM[addr];
}
}
void Mapper000::WriteCPU(Word addr, Byte val)
{
}
void Mapper000::WritePPU(Word addr, Byte val)
{
}

19
src/mappers/Mapper000.hpp Normal file
View file

@ -0,0 +1,19 @@
#pragma once
#include <vector>
#include <fstream>
#include "../Mapper.hpp"
struct Header;
class Mapper000 :
public Mapper
{
public:
Mapper000(Header& header, std::ifstream& ifs);
virtual Byte ReadCPU(Word addr) override;
virtual Byte ReadPPU(Word addr) override;
virtual void WriteCPU(Word addr, Byte val) override;
virtual void WritePPU(Word addr, Byte val) override;
};