Added support for mapper 288 (GKCX1 multicarts)

This commit is contained in:
Sour 2018-07-08 14:25:59 -04:00
parent 3b94ed0352
commit 2914078e8f
4 changed files with 28 additions and 1 deletions

View file

@ -531,6 +531,7 @@
<ClInclude Include="DragonFighter.h" />
<ClInclude Include="DrawScreenBufferCommand.h" />
<ClInclude Include="FdsSystemActionManager.h" />
<ClInclude Include="Gkcx1.h" />
<ClInclude Include="HdPackConditions.h" />
<ClInclude Include="IBarcodeReader.h" />
<ClInclude Include="IBattery.h" />

View file

@ -1447,6 +1447,9 @@
<ClInclude Include="NESHeader.h">
<Filter>Nes\RomLoader</Filter>
</ClInclude>
<ClInclude Include="Gkcx1.h">
<Filter>Nes\Mappers\Unif</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<ClCompile Include="stdafx.cpp">

22
Core/Gkcx1.h Normal file
View file

@ -0,0 +1,22 @@
#pragma once
#include "stdafx.h"
#include "BaseMapper.h"
class Gkcx1 : public BaseMapper
{
protected:
uint16_t GetPRGPageSize() override { return 0x8000; }
uint16_t GetCHRPageSize() override { return 0x2000; }
void InitMapper() override
{
SelectPRGPage(0, 0);
SelectCHRPage(0, 0);
}
void WriteRegister(uint16_t addr, uint8_t value) override
{
SelectPRGPage(0, (addr >> 3) & 0x03);
SelectCHRPage(0, addr & 0x07);
}
};

View file

@ -57,6 +57,7 @@
#include "FDS.h"
#include "FrontFareast.h"
#include "Ghostbusters63in1.h"
#include "Gkcx1.h"
#include "GoldenFive.h"
#include "Gs2004.h"
#include "Gs2013.h"
@ -556,7 +557,7 @@ BaseMapper* MapperFactory::GetMapperFromID(RomData &romData)
case 285: return new A65AS();
case 286: return new Bs5();
case 287: return new MMC3_Bmc411120C(); //+ K-3088
case 288: break; //GKCXIN1
case 288: return new Gkcx1();
case 289: return new Bmc60311C();
case 290: return new BmcNtd03();
//291