Support for 255-in-1 rom
This commit is contained in:
parent
493b51585b
commit
b34d3d2760
7 changed files with 30 additions and 1 deletions
|
@ -716,6 +716,7 @@
|
||||||
<ClInclude Include="Types.h" />
|
<ClInclude Include="Types.h" />
|
||||||
<ClInclude Include="UnifBoards.h" />
|
<ClInclude Include="UnifBoards.h" />
|
||||||
<ClInclude Include="UnifLoader.h" />
|
<ClInclude Include="UnifLoader.h" />
|
||||||
|
<ClInclude Include="Unl255in1.h" />
|
||||||
<ClInclude Include="Unl43272.h" />
|
<ClInclude Include="Unl43272.h" />
|
||||||
<ClInclude Include="UnlPuzzle.h" />
|
<ClInclude Include="UnlPuzzle.h" />
|
||||||
<ClInclude Include="VideoHud.h" />
|
<ClInclude Include="VideoHud.h" />
|
||||||
|
|
|
@ -1129,6 +1129,9 @@
|
||||||
<ClInclude Include="MMC3_Fk23C.h">
|
<ClInclude Include="MMC3_Fk23C.h">
|
||||||
<Filter>Nes\Mappers\Unif</Filter>
|
<Filter>Nes\Mappers\Unif</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
<ClInclude Include="Unl255in1.h">
|
||||||
|
<Filter>Nes\Mappers\Unif</Filter>
|
||||||
|
</ClInclude>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ClCompile Include="stdafx.cpp">
|
<ClCompile Include="stdafx.cpp">
|
||||||
|
|
|
@ -217,6 +217,7 @@
|
||||||
#include "Txc22211B.h"
|
#include "Txc22211B.h"
|
||||||
#include "Txc22211C.h"
|
#include "Txc22211C.h"
|
||||||
#include "TxSRom.h"
|
#include "TxSRom.h"
|
||||||
|
#include "Unl255in1.h"
|
||||||
#include "Unl43272.h"
|
#include "Unl43272.h"
|
||||||
#include "UnlPci556.h"
|
#include "UnlPci556.h"
|
||||||
#include "UnlPuzzle.h"
|
#include "UnlPuzzle.h"
|
||||||
|
@ -535,6 +536,7 @@ BaseMapper* MapperFactory::GetMapperFromID(RomData &romData)
|
||||||
case UnifBoards::Super40in1Ws: return new Super40in1Ws();
|
case UnifBoards::Super40in1Ws: return new Super40in1Ws();
|
||||||
case UnifBoards::T262: return new T262();
|
case UnifBoards::T262: return new T262();
|
||||||
case UnifBoards::Tf1201: return new Tf1201();
|
case UnifBoards::Tf1201: return new Tf1201();
|
||||||
|
case UnifBoards::Unl255in1: return new Unl255in1();
|
||||||
case UnifBoards::Unl43272: return new Unl43272();
|
case UnifBoards::Unl43272: return new Unl43272();
|
||||||
case UnifBoards::UnlPuzzle: return new UnlPuzzle();
|
case UnifBoards::UnlPuzzle: return new UnlPuzzle();
|
||||||
|
|
||||||
|
|
|
@ -51,5 +51,6 @@ namespace UnifBoards {
|
||||||
UnlPuzzle,
|
UnlPuzzle,
|
||||||
Fk23C,
|
Fk23C,
|
||||||
Fk23Ca,
|
Fk23Ca,
|
||||||
|
Unl255in1,
|
||||||
};
|
};
|
||||||
}
|
}
|
|
@ -7,6 +7,7 @@ std::unordered_map<string, int> UnifLoader::_boardMappings = std::unordered_map<
|
||||||
{ "13in1JY110", UnifBoards::UnknownBoard },
|
{ "13in1JY110", UnifBoards::UnknownBoard },
|
||||||
{ "190in1", UnifBoards::Bmc190in1 },
|
{ "190in1", UnifBoards::Bmc190in1 },
|
||||||
{ "22211", 132 },
|
{ "22211", 132 },
|
||||||
|
{ "255in1", UnifBoards::Unl255in1 }, //Doesn't actually exist as a UNIF file (used to assign a mapper to the 255-in-1 rom)
|
||||||
{ "3D-BLOCK", UnifBoards::UnknownBoard },
|
{ "3D-BLOCK", UnifBoards::UnknownBoard },
|
||||||
{ "411120-C", UnifBoards::Bmc411120C },
|
{ "411120-C", UnifBoards::Bmc411120C },
|
||||||
{ "42in1ResetSwitch", 226 },
|
{ "42in1ResetSwitch", 226 },
|
||||||
|
|
21
Core/Unl255in1.h
Normal file
21
Core/Unl255in1.h
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
#pragma once
|
||||||
|
#include "stdafx.h"
|
||||||
|
#include "BaseMapper.h"
|
||||||
|
|
||||||
|
class Unl255in1 : public BaseMapper
|
||||||
|
{
|
||||||
|
protected:
|
||||||
|
virtual uint16_t GetPRGPageSize() override { return 0x8000; }
|
||||||
|
virtual uint16_t GetCHRPageSize() override { return 0x2000; }
|
||||||
|
|
||||||
|
void InitMapper() override
|
||||||
|
{
|
||||||
|
WriteRegister(0x8000, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
void WriteRegister(uint16_t addr, uint8_t value) override
|
||||||
|
{
|
||||||
|
SelectCHRPage(0, addr & 0x07);
|
||||||
|
SelectPRGPage(0, (addr >> 2) & 0x03);
|
||||||
|
}
|
||||||
|
};
|
|
@ -368,7 +368,7 @@
|
||||||
1E66861F,Playchoice,,,,1,128,128,,0,0,0,,,
|
1E66861F,Playchoice,,,,1,128,128,,0,0,0,,,
|
||||||
1EB4A920,NesNtsc,AVE-NINA-06,NINA-06,,79,32,32,,0,0,0,v,,
|
1EB4A920,NesNtsc,AVE-NINA-06,NINA-06,,79,32,32,,0,0,0,v,,
|
||||||
1EBB5B42,NesNtsc,NES-SNROM,NES-SNROM-06,MMC1B2,1,128,,8,8,0,0,,FourPlayer,
|
1EBB5B42,NesNtsc,NES-SNROM,NES-SNROM-06,MMC1B2,1,128,,8,8,0,0,,FourPlayer,
|
||||||
1EC1DFEB,NesNtsc,,,,217,64,32,,0,0,0,v,,
|
1EC1DFEB,NesNtsc,UNL-255in1,,,65000,64,32,,0,0,0,v,,
|
||||||
1ED48C5C,Famicom,HVC-UNROM,HVC-UNROM-09,,2,128,,8,0,0,0,v,,
|
1ED48C5C,Famicom,HVC-UNROM,HVC-UNROM-09,,2,128,,8,0,0,0,v,,
|
||||||
1ED5C801,NesPal,NES-TSROM,NES-TSROM-08,MMC3B,4,256,128,,8,0,0,,,
|
1ED5C801,NesPal,NES-TSROM,NES-TSROM-08,MMC3B,4,256,128,,8,0,0,,,
|
||||||
1ED7D6BE,Famicom,HVC-TLROM,HVC-TLROM-02,MMC3A,4,128,128,,0,0,0,,,
|
1ED7D6BE,Famicom,HVC-TLROM,HVC-TLROM-02,MMC3A,4,128,128,,0,0,0,,,
|
||||||
|
|
Loading…
Add table
Reference in a new issue