Mapper 140 (Jaleco JF 11 & 14) support

This commit is contained in:
Souryo 2016-01-23 16:02:11 -05:00
parent 18b202473e
commit b5ca36f2d2
4 changed files with 31 additions and 0 deletions

View File

@ -368,6 +368,7 @@
<ClInclude Include="HdVideoFilter.h" />
<ClInclude Include="IremLrog017.h" />
<ClInclude Include="IremTamS1.h" />
<ClInclude Include="JalecoJf11_14.h" />
<ClInclude Include="JalecoJf16.h" />
<ClInclude Include="JalecoJf17_19.h" />
<ClInclude Include="Mapper107.h" />

View File

@ -452,6 +452,9 @@
<ClInclude Include="Mapper230.h">
<Filter>Nes\Mappers</Filter>
</ClInclude>
<ClInclude Include="JalecoJf11_14.h">
<Filter>Nes\Mappers</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<ClCompile Include="stdafx.cpp">

25
Core/JalecoJf11_14.h Normal file
View File

@ -0,0 +1,25 @@
#pragma once
#include "stdafx.h"
#include "BaseMapper.h"
class JalecoJf11_14 : public BaseMapper
{
protected:
virtual uint16_t RegisterStartAddress() { return 0x6000; }
virtual uint16_t RegisterEndAddress() { return 0x7FFF; }
virtual uint16_t GetPRGPageSize() { return 0x8000; }
virtual uint16_t GetCHRPageSize() { return 0x2000; }
void InitMapper()
{
SelectPRGPage(0, 0);
SelectCHRPage(0, 0);
}
void WriteRegister(uint16_t addr, uint8_t value)
{
SelectPRGPage(0, (value >> 4) & 0x03);
SelectCHRPage(0, value & 0x0F);
}
};

View File

@ -14,6 +14,7 @@
#include "IremG101.h"
#include "IremLrog017.h"
#include "IremTamS1.h"
#include "JalecoJf11_14.h"
#include "JalecoJf16.h"
#include "JalecoJf17_19.h"
#include "JalecoJfxx.h"
@ -146,6 +147,7 @@ BaseMapper* MapperFactory::GetMapperFromID(ROMLoader &romLoader)
case 113: return new Nina03_06(true);
case 115: return new MMC3_115();
case 119: return new MMC3_ChrRam(0x40, 0x7F, 8);
case 140: return new JalecoJf11_14();
case 145: return new Sachen_145();
case 146: return new Nina03_06(false);
case 147: return new Sachen_147();