NES - Finish up remaining SxROM boards
This commit is contained in:
parent
c9d0f7a2fb
commit
e0af256a33
|
@ -190,7 +190,7 @@ namespace BizHawk.Emulation.Consoles.Nintendo.Boards
|
||||||
{
|
{
|
||||||
base.Initialize(romInfo, nes);
|
base.Initialize(romInfo, nes);
|
||||||
|
|
||||||
Debug.Assert(RomInfo.PRG_Size == 1 || RomInfo.PRG_Size == 2 || RomInfo.PRG_Size == 4 || RomInfo.PRG_Size == 8 || RomInfo.PRG_Size == 16);
|
Debug.Assert(RomInfo.PRG_Size == 1 || RomInfo.PRG_Size == 2 || RomInfo.PRG_Size == 4 || RomInfo.PRG_Size == 8 || RomInfo.PRG_Size == 16 || RomInfo.PRG_Size == 32);
|
||||||
prg_mask = RomInfo.PRG_Size - 1;
|
prg_mask = RomInfo.PRG_Size - 1;
|
||||||
|
|
||||||
Debug.Assert(RomInfo.CRAM_Size == -1, "don't specify in gamedb, it is redundant");
|
Debug.Assert(RomInfo.CRAM_Size == -1, "don't specify in gamedb, it is redundant");
|
||||||
|
@ -242,7 +242,6 @@ namespace BizHawk.Emulation.Consoles.Nintendo.Boards
|
||||||
romInfo.CHR_Size = 16;
|
romInfo.CHR_Size = 16;
|
||||||
break;
|
break;
|
||||||
case "SIROM":
|
case "SIROM":
|
||||||
Debug.Assert(1 == 2, "TODO: Please contact the emulator authors and tell them which game uses SIROM!");
|
|
||||||
romInfo.PRG_Size = 2;
|
romInfo.PRG_Size = 2;
|
||||||
RomInfo.CRAM_Size = 0;
|
RomInfo.CRAM_Size = 0;
|
||||||
RomInfo.PRAM_Size = 0;
|
RomInfo.PRAM_Size = 0;
|
||||||
|
@ -257,8 +256,16 @@ namespace BizHawk.Emulation.Consoles.Nintendo.Boards
|
||||||
RomInfo.CRAM_Size = 0;
|
RomInfo.CRAM_Size = 0;
|
||||||
break;
|
break;
|
||||||
case "SLROM":
|
case "SLROM":
|
||||||
|
Debug.Assert(RomInfo.CHR_Size == -1, "don't specify in gamedb, it is redundant");
|
||||||
|
romInfo.CHR_Size = 16;
|
||||||
|
RomInfo.PRAM_Size = 0;
|
||||||
|
RomInfo.CRAM_Size = 0;
|
||||||
break;
|
break;
|
||||||
case "SL1ROM":
|
case "SL1ROM":
|
||||||
|
Debug.Assert(RomInfo.CHR_Size == -1, "don't specify in gamedb, it is redundant");
|
||||||
|
romInfo.CHR_Size = 16;
|
||||||
|
RomInfo.PRAM_Size = 0;
|
||||||
|
RomInfo.CRAM_Size = 0;
|
||||||
break;
|
break;
|
||||||
case "SL2ROM":
|
case "SL2ROM":
|
||||||
//these boards have CHR roms and nothing else interesting
|
//these boards have CHR roms and nothing else interesting
|
||||||
|
@ -266,10 +273,19 @@ namespace BizHawk.Emulation.Consoles.Nintendo.Boards
|
||||||
RomInfo.PRAM_Size = 0;
|
RomInfo.PRAM_Size = 0;
|
||||||
break;
|
break;
|
||||||
case "SL3ROM":
|
case "SL3ROM":
|
||||||
|
RomInfo.CRAM_Size = 0;
|
||||||
|
RomInfo.PRAM_Size = 0;
|
||||||
break;
|
break;
|
||||||
case "SLRROM":
|
case "SLRROM":
|
||||||
|
RomInfo.CRAM_Size = 0;
|
||||||
|
RomInfo.PRAM_Size = 0;
|
||||||
break;
|
break;
|
||||||
case "SMROM":
|
case "SMROM":
|
||||||
|
Debug.Assert(RomInfo.CHR_Size == -1, "don't specify in gamedb, it is redundant");
|
||||||
|
RomInfo.CHR_Size = 0;
|
||||||
|
RomInfo.PRAM_Size = 0;
|
||||||
|
RomInfo.CRAM_Size = 8;
|
||||||
|
RomInfo.PRG_Size = 16;
|
||||||
break;
|
break;
|
||||||
case "SNROM":
|
case "SNROM":
|
||||||
Debug.Assert(RomInfo.CHR_Size == -1, "don't specify in gamedb, it is redundant");
|
Debug.Assert(RomInfo.CHR_Size == -1, "don't specify in gamedb, it is redundant");
|
||||||
|
@ -278,10 +294,23 @@ namespace BizHawk.Emulation.Consoles.Nintendo.Boards
|
||||||
RomInfo.PRAM_Size = 8;
|
RomInfo.PRAM_Size = 8;
|
||||||
break;
|
break;
|
||||||
case "SOROM":
|
case "SOROM":
|
||||||
|
Debug.Assert(RomInfo.CHR_Size == -1, "don't specify in gamedb, it is redundant");
|
||||||
|
romInfo.CHR_Size = 0;
|
||||||
|
RomInfo.CRAM_Size = 8;
|
||||||
|
RomInfo.PRAM_Size = 16;
|
||||||
break;
|
break;
|
||||||
case "SUROM":
|
case "SUROM":
|
||||||
|
Debug.Assert(RomInfo.CHR_Size == -1, "don't specify in gamedb, it is redundant");
|
||||||
|
RomInfo.PRG_Size = 32;
|
||||||
|
RomInfo.PRAM_Size = 8;
|
||||||
|
RomInfo.CRAM_Size = 8;
|
||||||
|
RomInfo.CHR_Size = 0;
|
||||||
break;
|
break;
|
||||||
case "SXROM":
|
case "SXROM":
|
||||||
|
Debug.Assert(RomInfo.CHR_Size == -1, "don't specify in gamedb, it is redundant");
|
||||||
|
RomInfo.PRAM_Size = 32;
|
||||||
|
RomInfo.CHR_Size = 0;
|
||||||
|
RomInfo.CRAM_Size = 8;
|
||||||
break;
|
break;
|
||||||
default: throw new InvalidOperationException();
|
default: throw new InvalidOperationException();
|
||||||
}
|
}
|
||||||
|
@ -296,7 +325,7 @@ namespace BizHawk.Emulation.Consoles.Nintendo.Boards
|
||||||
else cram = new byte[0];
|
else cram = new byte[0];
|
||||||
|
|
||||||
//some boards contain PRAM. we only understand one size right now. set it up if it is there.
|
//some boards contain PRAM. we only understand one size right now. set it up if it is there.
|
||||||
Debug.Assert(RomInfo.PRAM_Size == 0 || RomInfo.PRAM_Size == 8);
|
Debug.Assert(RomInfo.PRAM_Size == 0 || RomInfo.PRAM_Size == 8 || RomInfo.PRAM_Size == 16 || RomInfo.PRAM_Size == 32);
|
||||||
if (RomInfo.PRAM_Size != 0)
|
if (RomInfo.PRAM_Size != 0)
|
||||||
{
|
{
|
||||||
pram = new byte[RomInfo.PRAM_Size * 1024];
|
pram = new byte[RomInfo.PRAM_Size * 1024];
|
||||||
|
|
|
@ -19,6 +19,9 @@ namespace BizHawk.Emulation.Consoles.Nintendo
|
||||||
//Dragon Warrior (SBROM) - Black screen only
|
//Dragon Warrior (SBROM) - Black screen only
|
||||||
//Family Feud - Fails to get past intro screen
|
//Family Feud - Fails to get past intro screen
|
||||||
//Air Wolf - Black screen
|
//Air Wolf - Black screen
|
||||||
|
//Boyo and His Blob - Hangs on intro screen
|
||||||
|
//Goal = graphics garble (looks identical to Zelda 2 problem)
|
||||||
|
//Nobunaga's Ambition - black screen
|
||||||
|
|
||||||
//the main rom class that contains all information necessary for the board to operate
|
//the main rom class that contains all information necessary for the board to operate
|
||||||
public class RomInfo
|
public class RomInfo
|
||||||
|
|
|
@ -2330,19 +2330,24 @@ BD377B49DCC269C6270EC0EA6336BAF5 Adventures of Lolo (U) NES board=SEROM;PRG=2;
|
||||||
A4309FA076EBEDDCB28A25F53746D4DC Bard's Tale, The Tales of the Unknown (U) NES board=SNROM;PRG=8;bat
|
A4309FA076EBEDDCB28A25F53746D4DC Bard's Tale, The Tales of the Unknown (U) NES board=SNROM;PRG=8;bat
|
||||||
12B0DBC4F2B22A50D0BB53C4929217F0 Blaster Master (U) NES board=SL2ROM;PRG=8;CHR=16
|
12B0DBC4F2B22A50D0BB53C4929217F0 Blaster Master (U) NES board=SL2ROM;PRG=8;CHR=16
|
||||||
FFCC592A3F063C1DCC87CB5E0F81C8AF Bomberman II (U) NES board=SNROM;PRG=8
|
FFCC592A3F063C1DCC87CB5E0F81C8AF Bomberman II (U) NES board=SNROM;PRG=8
|
||||||
|
F182863A759F547E59FE98B2142F1B37 Boy and His Blob, A - Trouble on Blobolonia (U) NES board=SLROM;PRG=8
|
||||||
629FCEEC5476CDD3FAA371891905EA02 Bubble Bobble (U) NES board=SFROM;PRG=8;CHR=4
|
629FCEEC5476CDD3FAA371891905EA02 Bubble Bobble (U) NES board=SFROM;PRG=8;CHR=4
|
||||||
6BC8F54DC358AA35F6259715E5143B37 Bug's Bunny Crazy Castle (U) NES board=SBROM;PRG=4;CHR=4
|
6BC8F54DC358AA35F6259715E5143B37 Bug's Bunny Crazy Castle (U) NES board=SBROM;PRG=4;CHR=4
|
||||||
755F9086B0567243B3CE25CC8A6DFD17 Castlevania II - Simon's Quest (U) NES board=SL2ROM;PRG=8;CHR=16
|
755F9086B0567243B3CE25CC8A6DFD17 Castlevania II - Simon's Quest (U) NES board=SL2ROM;PRG=8;CHR=16
|
||||||
|
E734AD3125A2DC0D1D1F07BECD2B6478 Demon Sword (U) NES board=SL1ROM;PRG=8
|
||||||
E8382F82570BC616B0BCC02C843C1B79 Dragon Warrior (U) NES board=SAROM;CHR=2;PRG=4
|
E8382F82570BC616B0BCC02C843C1B79 Dragon Warrior (U) NES board=SAROM;CHR=2;PRG=4
|
||||||
CCDB4563C9004d862DCF3A98C7937C22 Dragon Warrior 2 (U) NES board=SNROM;PRG=16;bat
|
CCDB4563C9004d862DCF3A98C7937C22 Dragon Warrior 2 (U) NES board=SNROM;PRG=16;bat
|
||||||
E2297D6FBD42A09b162E84507ACF4C04 Family Feud (U) NES board=SHROM;PRG=2
|
E2297D6FBD42A09b162E84507ACF4C04 Family Feud (U) NES board=SHROM;PRG=2
|
||||||
24AE5EDF8375162F91A6846D3202E3D6 Final Fantasy (U) NES board=SNROM;PRG=16;bat
|
24AE5EDF8375162F91A6846D3202E3D6 Final Fantasy (U) NES board=SNROM;PRG=16;bat
|
||||||
881ECC27F0D3B10ED63DCC68C2B20ADC Final Fantasy (J) NES board=SNROM;PRG=16;bat
|
881ECC27F0D3B10ED63DCC68C2B20ADC Final Fantasy (J) NES board=SNROM;PRG=16;bat
|
||||||
|
C5B8631BC83FFD1F30C85C355ED592AB Frankenstein - The Monster Returns NES board=SLRROM;PRG=8;CHR=16
|
||||||
|
A58EE614F9BC3F59393180BB52689DDC Goal! NES board=SL3ROM;PRG=16;CHR=16
|
||||||
9A857B52042A11D021D596E5EE528585 Kid Icarus (UE) NES board=SNROM;PRG=8
|
9A857B52042A11D021D596E5EE528585 Kid Icarus (UE) NES board=SNROM;PRG=8
|
||||||
D9A1631D5C32D35594B9484862A26CBA Legend of Zelda, The (Rev 0) (U) NES board=SNROM;PRG=8;bat
|
D9A1631D5C32D35594B9484862A26CBA Legend of Zelda, The (Rev 0) (U) NES board=SNROM;PRG=8;bat
|
||||||
63D7BD4604203F833C64E0DF7B2AF949 Mechanized Attack (U) NES board=SCROM;PRG=4
|
63D7BD4604203F833C64E0DF7B2AF949 Mechanized Attack (U) NES board=SCROM;PRG=4
|
||||||
0527A0EE512F69E08B8DB6DC97964632 Mega Man 2 (U) NES board=SGROM;PRG=16
|
0527A0EE512F69E08B8DB6DC97964632 Mega Man 2 (U) NES board=SGROM;PRG=16
|
||||||
B2D2D9ED68B3E5E0D29053EA525BD37C Metroid (U) NES board=SNROM;PRG=8
|
B2D2D9ED68B3E5E0D29053EA525BD37C Metroid (U) NES board=SNROM;PRG=8
|
||||||
|
AAD319732327BD12BC808D7D51C16554 Nobunaga's Ambition (U) NES board=SOROM;PRG=16;bat
|
||||||
E12F3FD85F96F9A61FE38626A1B5CEFA Spot (J) NES board=SNROM;PRG=8
|
E12F3FD85F96F9A61FE38626A1B5CEFA Spot (J) NES board=SNROM;PRG=8
|
||||||
44F5B716CF5EE0164C151106D0E68DCE Spot (U) NES board=SNROM;PRG=8
|
44F5B716CF5EE0164C151106D0E68DCE Spot (U) NES board=SNROM;PRG=8
|
||||||
88C0493FB1146834836C0FF4F3E06E45 Zelda II - The Adventure of Link (U) NES board=SKROM;PRG=8
|
88C0493FB1146834836C0FF4F3E06E45 Zelda II - The Adventure of Link (U) NES board=SKROM;PRG=8
|
||||||
|
|
Loading…
Reference in New Issue