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