diff --git a/BizHawk.Emulation.Cores/Consoles/WonderSwan/WonderSwan.cs b/BizHawk.Emulation.Cores/Consoles/WonderSwan/WonderSwan.cs
index ed2fdcccf8..ce15e8f2eb 100644
--- a/BizHawk.Emulation.Cores/Consoles/WonderSwan/WonderSwan.cs
+++ b/BizHawk.Emulation.Cores/Consoles/WonderSwan/WonderSwan.cs
@@ -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; }
diff --git a/output/dll/bizswan.dll b/output/dll/bizswan.dll
index 2203c861ef..97f73d2a6e 100644
Binary files a/output/dll/bizswan.dll and b/output/dll/bizswan.dll differ
diff --git a/wonderswan/bizswan/bizswan.vcxproj b/wonderswan/bizswan/bizswan.vcxproj
index fd15924816..8b97376655 100644
--- a/wonderswan/bizswan/bizswan.vcxproj
+++ b/wonderswan/bizswan/bizswan.vcxproj
@@ -101,7 +101,6 @@
-
diff --git a/wonderswan/bizswan/bizswan.vcxproj.filters b/wonderswan/bizswan/bizswan.vcxproj.filters
index 97d6f1b7b6..7ae23fe23a 100644
--- a/wonderswan/bizswan/bizswan.vcxproj.filters
+++ b/wonderswan/bizswan/bizswan.vcxproj.filters
@@ -112,9 +112,6 @@
Source Files
-
- Source Files
-
Source Files
diff --git a/wonderswan/gfx.cpp b/wonderswan/gfx.cpp
index a56cb27c45..43603ebf40 100644
--- a/wonderswan/gfx.cpp
+++ b/wonderswan/gfx.cpp
@@ -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()
{
diff --git a/wonderswan/gfx.h b/wonderswan/gfx.h
index e6a1a9a09a..9e020fd88a 100644
--- a/wonderswan/gfx.h
+++ b/wonderswan/gfx.h
@@ -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;
};
diff --git a/wonderswan/memory.cpp b/wonderswan/memory.cpp
index 434fa49d5f..1f76c4c576 100644
--- a/wonderswan/memory.cpp
+++ b/wonderswan/memory.cpp
@@ -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);
diff --git a/wonderswan/memory.h b/wonderswan/memory.h
index 3dce1ced7b..d2e94761b5 100644
--- a/wonderswan/memory.h
+++ b/wonderswan/memory.h
@@ -50,8 +50,6 @@ private:
bool language;
- bool wsc; // mono / color
-
public:
System *sys;
private:
diff --git a/wonderswan/system.cpp b/wonderswan/system.cpp
index a4baa2cafc..b94ded841c 100644
--- a/wonderswan/system.cpp
+++ b/wonderswan/system.cpp
@@ -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();
diff --git a/wonderswan/v30mz-ea.inc b/wonderswan/v30mz-ea.inc
deleted file mode 100644
index e69de29bb2..0000000000