bizswan: controls work

This commit is contained in:
goyuken 2014-05-30 18:20:05 +00:00
parent 9d8390a4ec
commit d3a5733886
10 changed files with 10 additions and 19 deletions

View File

@ -16,7 +16,7 @@ namespace BizHawk.Emulation.Cores.WonderSwan
public static readonly ControllerDefinition WonderSwanController = new ControllerDefinition
{
Name = "WonderSwan Controller",
BoolButtons = { "Up X, Down X, Left X, Right X, Up Y, Down Y, Left Y, Right Y, Start, B, A, Power" }
BoolButtons = { "Up X", "Down X", "Left X", "Right X", "Up Y", "Down Y", "Left Y", "Right Y", "Start", "B", "A", "Power" }
};
public ControllerDefinition ControllerDefinition { get { return WonderSwanController; } }
public IController Controller { get; set; }

Binary file not shown.

View File

@ -101,7 +101,6 @@
</ItemGroup>
<ItemGroup>
<None Include="..\start.inc" />
<None Include="..\v30mz-ea.inc" />
<None Include="..\v30mz-modrm.inc" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />

View File

@ -112,9 +112,6 @@
<None Include="..\start.inc">
<Filter>Source Files</Filter>
</None>
<None Include="..\v30mz-ea.inc">
<Filter>Source Files</Filter>
</None>
<None Include="..\v30mz-modrm.inc">
<Filter>Source Files</Filter>
</None>

View File

@ -137,7 +137,7 @@ namespace MDFN_IEN_WSWAN
case 0x14: return(LCDControl);
case 0x15: return(LCDIcons);
case 0x60: return(VideoMode);
case 0xa0: return(sys->wsc ? 0x87 : 0x86);
case 0xa0: return(wsc ? 0x87 : 0x86);
case 0xa2: return(BTimerControl);
case 0xa4: return((HBTimerPeriod >> 0) & 0xFF);
case 0xa5: return((HBTimerPeriod >> 8) & 0xFF);
@ -549,6 +549,10 @@ namespace MDFN_IEN_WSWAN
}
}
void GFX::Init(bool color)
{
wsc = color;
}
void GFX::Reset()
{

View File

@ -20,6 +20,7 @@ public:
void Scanline(uint32 *target);
void SetPixelFormat();
void Init(bool color);
void Reset();
void Write(uint32 A, uint8 V);
uint8 Read(uint32 A);
@ -73,6 +74,8 @@ private:
uint16 HBCounter, VBCounter;
uint8 VideoMode;
bool wsc; // mono / color
public:
System *sys;
};

View File

@ -296,7 +296,6 @@ namespace MDFN_IEN_WSWAN
tmpname[16] = 0;
language = settings.language;
wsc = settings.color;
// WSwan_EEPROMInit() will also clear wsEEPROM
sys->eeprom.Init(tmpname, settings.byear, settings.bmonth, settings.bday, settings.sex, settings.blood);

View File

@ -50,8 +50,6 @@ private:
bool language;
bool wsc; // mono / color
public:
System *sys;
private:

View File

@ -68,7 +68,6 @@ namespace MDFN_IEN_WSWAN
void System::Advance(uint16 buttons, bool novideo, uint32 *surface, int16 *soundbuff, int &soundbuffsize)
{
memory.WSButtonStatus = buttons;
while (!gfx.ExecuteLine(surface, novideo))
{
@ -80,7 +79,6 @@ namespace MDFN_IEN_WSWAN
// how is this OK to reset? it's only used by the sound code, so once the sound for the frame has
// been collected, it's OK to zero. indeed, it should be done as there's no rollover protection
cpu.timestamp = 0;
}
// Source: http://graphics.stanford.edu/~seander/bithacks.html#RoundUpPowerOf2
@ -198,13 +196,10 @@ namespace MDFN_IEN_WSWAN
//MDFNMP_Init(16384, (1 << 20) / 1024);
// TODO: control WSC setting
memory.Init(settings);
gfx.Init(settings.color);
rtc.Init(settings.initialtime, settings.userealtime);
//MDFNGameInfo->fps = (uint32)((uint64)3072000 * 65536 * 256 / (159*256));
gfx.MakeTiles();
Reset();
@ -270,10 +265,6 @@ namespace MDFN_IEN_WSWAN
return true;
}
EXPORT System *bizswan_new()
{
return new System();