2011-01-11 02:55:51 +00:00
|
|
|
|
namespace BizHawk.Emulation.Consoles.Sega
|
|
|
|
|
{
|
2011-10-11 03:52:44 +00:00
|
|
|
|
partial class Genesis
|
2011-01-11 02:55:51 +00:00
|
|
|
|
{
|
|
|
|
|
public bool SegaCD = false;
|
|
|
|
|
|
2011-10-11 03:52:44 +00:00
|
|
|
|
public byte ReadIO(int offset)
|
2011-01-11 02:55:51 +00:00
|
|
|
|
{
|
2011-10-11 03:52:44 +00:00
|
|
|
|
offset &= 3;
|
|
|
|
|
byte value;
|
2011-01-11 02:55:51 +00:00
|
|
|
|
switch (offset)
|
|
|
|
|
{
|
|
|
|
|
case 0: // version
|
2011-10-11 03:52:44 +00:00
|
|
|
|
value = (byte) (SegaCD ? 0x00 : 0x20);
|
2011-01-11 02:55:51 +00:00
|
|
|
|
switch((char)RomData[0x01F0])
|
|
|
|
|
{
|
|
|
|
|
case 'J': value |= 0x00; break;
|
|
|
|
|
case 'U': value |= 0x80; break;
|
|
|
|
|
case 'E': value |= 0xC0; break;
|
|
|
|
|
case 'A': value |= 0xC0; break;
|
|
|
|
|
case '4': value |= 0x80; break;
|
|
|
|
|
default: value |= 0x80; break;
|
|
|
|
|
}
|
2011-10-11 03:52:44 +00:00
|
|
|
|
//value |= 1; // US
|
2011-01-11 02:55:51 +00:00
|
|
|
|
return value;
|
|
|
|
|
}
|
|
|
|
|
return 0xFF;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public void WriteIO(int offset, int value)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|