UNIF RT-01 board support
This commit is contained in:
parent
93f95be65c
commit
eeffa162e1
6 changed files with 39 additions and 1 deletions
|
@ -561,6 +561,7 @@
|
|||
<ClInclude Include="RomData.h" />
|
||||
<ClInclude Include="NtdecTc112.h" />
|
||||
<ClInclude Include="Rambo1.h" />
|
||||
<ClInclude Include="Rt01.h" />
|
||||
<ClInclude Include="Sachen74LS374N.h" />
|
||||
<ClInclude Include="Sachen74LS374NB.h" />
|
||||
<ClInclude Include="Sachen8259.h" />
|
||||
|
|
|
@ -1024,6 +1024,9 @@
|
|||
<ClInclude Include="Kaiser7016.h">
|
||||
<Filter>Nes\Mappers\Unif</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="Rt01.h">
|
||||
<Filter>Nes\Mappers\Unif</Filter>
|
||||
</ClInclude>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="stdafx.cpp">
|
||||
|
|
|
@ -161,6 +161,7 @@
|
|||
#include "OekaKids.h"
|
||||
#include "Racermate.h"
|
||||
#include "Rambo1.h"
|
||||
#include "Rt01.h"
|
||||
#include "Sachen_133.h"
|
||||
#include "Sachen_136.h"
|
||||
#include "Sachen_143.h"
|
||||
|
@ -255,6 +256,7 @@ const uint16_t MapperFactory::UnifKof97;
|
|||
const uint16_t MapperFactory::UnifKs7016;
|
||||
const uint16_t MapperFactory::UnifMalee;
|
||||
const uint16_t MapperFactory::UnifNovelDiamond;
|
||||
const uint16_t MapperFactory::UnifRt01;
|
||||
const uint16_t MapperFactory::UnifStreetHeroes;
|
||||
const uint16_t MapperFactory::UnifSmb2j;
|
||||
const uint16_t MapperFactory::UnifSuper24in1Sc03;
|
||||
|
@ -506,6 +508,7 @@ BaseMapper* MapperFactory::GetMapperFromID(RomData &romData)
|
|||
case MapperFactory::UnifKs7016: return new Kaiser7016();
|
||||
case MapperFactory::UnifMalee: return new Malee();
|
||||
case MapperFactory::UnifNovelDiamond: return new NovelDiamond();
|
||||
case MapperFactory::UnifRt01: return new Rt01();
|
||||
case MapperFactory::UnifSmb2j: return new Smb2j();
|
||||
case MapperFactory::UnifStreetHeroes: return new MMC3_StreetHeroes();
|
||||
case MapperFactory::UnifSuper24in1Sc03: return new MMC3_Super24in1Sc03();
|
||||
|
|
|
@ -35,6 +35,7 @@ class MapperFactory
|
|||
static const uint16_t UnifSuper40in1Ws = 65512;
|
||||
static const uint16_t UnifCc21 = 65511;
|
||||
static const uint16_t UnifKs7016 = 65510;
|
||||
static const uint16_t UnifRt01 = 65509;
|
||||
|
||||
static shared_ptr<BaseMapper> InitializeFromFile(string romFilename, stringstream *filestream, string ipsFilename, int32_t archiveFileIndex);
|
||||
};
|
||||
|
|
30
Core/Rt01.h
Normal file
30
Core/Rt01.h
Normal file
|
@ -0,0 +1,30 @@
|
|||
#pragma once
|
||||
#include "stdafx.h"
|
||||
#include "BaseMapper.h"
|
||||
|
||||
class Rt01 : public BaseMapper
|
||||
{
|
||||
protected:
|
||||
uint16_t GetPRGPageSize() { return 0x4000; }
|
||||
uint16_t GetCHRPageSize() { return 0x800; }
|
||||
bool AllowRegisterRead() override { return true; }
|
||||
|
||||
void InitMapper() override
|
||||
{
|
||||
SelectPRGPage(0, 0);
|
||||
SelectPRGPage(1, 0);
|
||||
SelectCHRPage(0, 0);
|
||||
SelectCHRPage(1, 0);
|
||||
SelectCHRPage(2, 0);
|
||||
SelectCHRPage(3, 0);
|
||||
}
|
||||
|
||||
uint8_t ReadRegister(uint16_t addr) override
|
||||
{
|
||||
if((addr >= 0xCE80 && addr < 0xCF00) || (addr >= 0xFE80 && addr < 0xFF00)) {
|
||||
return 0xF2 | (rand() & 0x0D);
|
||||
} else {
|
||||
return InternalReadRam(addr);
|
||||
}
|
||||
}
|
||||
};
|
|
@ -155,7 +155,7 @@ private:
|
|||
{ "EH8813A", MapperFactory::UnknownBoard },
|
||||
{ "HP898F", MapperFactory::UnknownBoard },
|
||||
{ "F-15", MapperFactory::UnknownBoard },
|
||||
{ "RT-01", MapperFactory::UnknownBoard },
|
||||
{ "RT-01", MapperFactory::UnifRt01 },
|
||||
{ "81-01-31-C", MapperFactory::UnknownBoard },
|
||||
{ "8-IN-1", MapperFactory::UnknownBoard },
|
||||
{ "WS", MapperFactory::UnifSuper40in1Ws }
|
||||
|
|
Loading…
Add table
Reference in a new issue