diff --git a/Core/BaseMapper.cpp b/Core/BaseMapper.cpp index 7c70505d..32208c9d 100644 --- a/Core/BaseMapper.cpp +++ b/Core/BaseMapper.cpp @@ -14,7 +14,7 @@ #include "CPU.h" void BaseMapper::WriteRegister(uint16_t addr, uint8_t value) { } -void BaseMapper::WriteEPSG(uint16_t addr, uint8_t value) { _epsgaudio->WriteRegister(addr, value); } +void BaseMapper::WriteEPSM(uint16_t addr, uint8_t value) { _epsmaudio->WriteRegister(addr, value); } uint8_t BaseMapper::ReadRegister(uint16_t addr) { return 0; } void BaseMapper::InitMapper(RomData &romData) { } void BaseMapper::Reset(bool softReset) { } @@ -510,9 +510,9 @@ void BaseMapper::StreamState(bool saving) ArrayInfo chrMemoryType = { _chrMemoryType, 0x40 }; ArrayInfo prgMemoryAccess = { _prgMemoryAccess, 0x100 }; ArrayInfo chrMemoryAccess = { _chrMemoryAccess, 0x40 }; - SnapshotInfo epsgaudio{ _epsgaudio.get() }; + SnapshotInfo epsmaudio{ _epsmaudio.get() }; - Stream(_mirroringType, chrRam, workRam, saveRam, nametableRam, prgMemoryOffset, chrMemoryOffset, prgMemoryType, chrMemoryType, prgMemoryAccess, chrMemoryAccess, epsgaudio); + Stream(_mirroringType, chrRam, workRam, saveRam, nametableRam, prgMemoryOffset, chrMemoryOffset, prgMemoryType, chrMemoryType, prgMemoryAccess, chrMemoryAccess, epsmaudio); if(!saving) { RestorePrgChrState(); @@ -639,7 +639,7 @@ void BaseMapper::Initialize(RomData &romData) InitMapper(); InitMapper(romData); - _epsgaudio.reset(new EPSGAudio(_console)); + _epsmaudio.reset(new EPSMAudio(_console)); //Load battery data if present LoadBattery(); @@ -782,7 +782,8 @@ uint8_t BaseMapper::DebugReadRAM(uint16_t addr) void BaseMapper::WriteRAM(uint16_t addr, uint8_t value) { - if((addr == 0x4016) & (_console->GetCpu()->GetCycleCount() % 2 == 1)){ WriteEPSG(addr, value); } + if((addr == 0x4016) & (_console->GetCpu()->GetCycleCount() % 2 == 1)){ WriteEPSM(addr, value); } + if ((addr >= 0x401c && addr <= 0x401f)) { WriteEPSM(addr, value); } if(_isWriteRegisterAddr[addr]) { if(_hasBusConflicts) { uint8_t prgValue = _prgPages[addr >> 8][(uint8_t)addr]; diff --git a/Core/BaseMapper.h b/Core/BaseMapper.h index 06aec97d..f390eb3b 100644 --- a/Core/BaseMapper.h +++ b/Core/BaseMapper.h @@ -10,7 +10,7 @@ #include "RomData.h" #include "Console.h" #include "CPU.h" -#include "EPSGAudio.h" +#include "EPSMAudio.h" class BaseControlDevice; @@ -106,7 +106,7 @@ protected: uint8_t InternalReadRam(uint16_t addr); virtual void WriteRegister(uint16_t addr, uint8_t value); - virtual void WriteEPSG(uint16_t addr, uint8_t value); + virtual void WriteEPSM(uint16_t addr, uint8_t value); virtual uint8_t ReadRegister(uint16_t addr); void SelectPrgPage4x(uint16_t slot, uint16_t page, PrgMemoryType memoryType = PrgMemoryType::PrgRom); @@ -158,7 +158,7 @@ protected: public: static constexpr uint32_t NametableCount = 0x10; static constexpr uint32_t NametableSize = 0x400; - unique_ptr _epsgaudio; + unique_ptr _epsmaudio; void Initialize(RomData &romData); virtual ~BaseMapper(); @@ -168,7 +168,7 @@ public: virtual void SetNesModel(NesModel model) { } virtual void ProcessCpuClock() { } - virtual void ProcessEPSGClock() { _epsgaudio->Clock(); } + virtual void ProcessEPSMClock() { _epsmaudio->Clock(); } virtual void NotifyVRAMAddressChange(uint16_t addr); virtual void GetMemoryRanges(MemoryRanges &ranges) override; diff --git a/Core/Console.cpp b/Core/Console.cpp index bcf59440..9b03835c 100644 --- a/Core/Console.cpp +++ b/Core/Console.cpp @@ -465,7 +465,7 @@ bool Console::Initialize(VirtualFile &romFile, VirtualFile &patchFile, bool forP void Console::ProcessCpuClock() { - _mapper->ProcessEPSGClock(); + _mapper->ProcessEPSMClock(); _mapper->ProcessCpuClock(); _apu->ProcessCpuClock(); } diff --git a/Core/Core.vcxproj b/Core/Core.vcxproj index 30bd4148..8f945204 100644 --- a/Core/Core.vcxproj +++ b/Core/Core.vcxproj @@ -559,7 +559,7 @@ - + diff --git a/Core/Core.vcxproj.filters b/Core/Core.vcxproj.filters index dc4fa6b9..12c08d32 100644 --- a/Core/Core.vcxproj.filters +++ b/Core/Core.vcxproj.filters @@ -1508,9 +1508,6 @@ Nes\Mappers\EPSG - - Nes\Mappers\EPSG - Nes\Mappers @@ -1520,6 +1517,9 @@ Nes\Mappers\EPSG + + Nes\Mappers\EPSG + diff --git a/Core/EPSGAudio.h b/Core/EPSMAudio.h similarity index 81% rename from Core/EPSGAudio.h rename to Core/EPSMAudio.h index f263de39..29ec59cc 100644 --- a/Core/EPSGAudio.h +++ b/Core/EPSMAudio.h @@ -9,9 +9,9 @@ #include #include "ym3438.h" -using EPSGSSGAudio = SSGAudio; +using EPSMSSGAudio = SSGAudio; -class EPSGAudio : public EPSGSSGAudio +class EPSMAudio : public EPSMSSGAudio { private: ym3438_t _chip; @@ -42,7 +42,7 @@ private: int16_t summedOutput = 0; for (size_t x = 0; x < 2; x++) { - _console->GetApu()->AddExpansionAudioDelta(x == 0 ? AudioChannel::EPSG_L : AudioChannel::EPSG_R, _currentOutputs[x] - _lastOutputs[x]); + _console->GetApu()->AddExpansionAudioDelta(x == 0 ? AudioChannel::EPSM_L : AudioChannel::EPSM_R, _currentOutputs[x] - _lastOutputs[x]); _lastOutputs[x] = _currentOutputs[x]; } } @@ -58,7 +58,7 @@ private: if (_inputBuffer[cycle].wrote) { - std::cout << "EPSG CHIP DOUBLE WRITE" << std::endl; + std::cout << "EPSM CHIP DOUBLE WRITE" << std::endl; } _inputBuffer[cycle] = { @@ -71,13 +71,13 @@ private: uint32_t getClockFrequency() { - return _console->GetSettings()->GetEPSGClockFrequency() / 6; + return _console->GetSettings()->GetEPSMClockFrequency() / 6; } protected: void StreamState(bool saving) override { - EPSGSSGAudio::StreamState(saving); + EPSMSSGAudio::StreamState(saving); ArrayInfo lastOutputs{ _lastOutputs, 2 }; ArrayInfo currentOutputs{ _currentOutputs, 2 }; @@ -89,7 +89,7 @@ protected: void ClockAudio() override { - EPSGSSGAudio::ClockAudio(); + EPSMSSGAudio::ClockAudio(); _clock += getClockFrequency() / (double)_console->GetCpu()->GetClockRate(_console->GetModel()); @@ -132,11 +132,11 @@ protected: virtual uint32_t GetSSGClockFrequency() { - return EPSGSSGAudio::GetSSGClockFrequency() * (_console->GetSettings()->GetEPSGClockFrequency() / 3579545.0 ); + return EPSMSSGAudio::GetSSGClockFrequency() * (_console->GetSettings()->GetEPSMClockFrequency() / 3579545.0 ); } public: - EPSGAudio(shared_ptr console) : EPSGSSGAudio(console) + EPSMAudio(shared_ptr console) : EPSMSSGAudio(console) { memset(_lastOutputs, 0, sizeof(_lastOutputs)); memset(_currentOutputs, 0, sizeof(_currentOutputs)); @@ -173,10 +173,14 @@ public: const uint8_t a04016 = (writeAddr & 0xF000) == 0xE000; const uint8_t a14016 = !!(writeAddr & 0xF); - EPSGSSGAudio::WriteRegister(writeAddr, writeValue); + EPSMSSGAudio::WriteRegister(writeAddr, writeValue); WriteToChip(a04016 | (a14016 << 1), writeValue); } } + if (addr == 0x401c) { addr = 0xC000; } + if (addr == 0x401d) { addr = 0xE000; } + if (addr == 0x401e) { addr = 0xC002; } + if (addr == 0x401f) { addr = 0xE002; } switch(addr) { case 0xC000: @@ -186,7 +190,7 @@ public: const uint8_t a0 = (addr & 0xF000) == 0xE000; const uint8_t a1 = !!(addr & 0xF); - EPSGSSGAudio::WriteRegister(addr, value); + EPSMSSGAudio::WriteRegister(addr, value); WriteToChip(a0 | (a1 << 1), value); break; diff --git a/Core/EmulationSettings.h b/Core/EmulationSettings.h index faa85e60..4e079972 100644 --- a/Core/EmulationSettings.h +++ b/Core/EmulationSettings.h @@ -117,8 +117,8 @@ enum class AudioChannel VRC7 = 8, Namco163 = 9, Sunsoft5B = 10, - EPSG_L = 11, - EPSG_R = 12, + EPSM_L = 11, + EPSM_R = 12, }; enum class EqualizerFilterType @@ -659,7 +659,7 @@ private: bool _audioSettingsChanged = false; uint32_t _audioLatency = 50; - uint32_t _EPSGClockFrequency = 3579545; + uint32_t _EPSMClockFrequency = 3579545; double _channelVolume[13] = { 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 }; double _channelPanning[13] = { 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 0.0, 2.0 }; EqualizerFilterType _equalizerFilterType = EqualizerFilterType::None; @@ -991,9 +991,9 @@ public: _audioSettingsChanged = true; } - void SetEPSGClockFrequency(uint32_t clockFrequency) + void SetEPSMClockFrequency(uint32_t clockFrequency) { - _EPSGClockFrequency = clockFrequency; + _EPSMClockFrequency = clockFrequency; _audioSettingsChanged = true; } @@ -1168,9 +1168,9 @@ public: return _audioLatency; } - uint32_t GetEPSGClockFrequency() + uint32_t GetEPSMClockFrequency() { - return _EPSGClockFrequency; + return _EPSMClockFrequency; } void SetVideoFilterType(VideoFilterType videoFilterType) diff --git a/Core/MemoryManager.cpp b/Core/MemoryManager.cpp index c5907390..ce330890 100644 --- a/Core/MemoryManager.cpp +++ b/Core/MemoryManager.cpp @@ -133,7 +133,7 @@ void MemoryManager::Write(uint16_t addr, uint8_t value, MemoryOperationType oper { if(_console->DebugProcessRamOperation(operationType, addr, value)) { _ramWriteHandlers[addr]->WriteRAM(addr, value); - if (addr == 0x4016) { + if ((addr == 0x4016) | (addr >= 0x401c && addr <= 0x401f)) { _ramWriteHandlers[0xE000]->WriteRAM(addr, value); } } diff --git a/Core/NsfLoader.cpp b/Core/NsfLoader.cpp index dac9ef80..4468c3b4 100644 --- a/Core/NsfLoader.cpp +++ b/Core/NsfLoader.cpp @@ -91,7 +91,10 @@ void NsfLoader::InitializeFromHeader(RomData &romData) chips.push_back("Sunsoft 5B"); } if (header.SoundChips & 0x40) { - chips.push_back("EPSG"); + chips.push_back("VT02"); + } + if (header.SoundChips & 0x80) { + chips.push_back("EPSM"); } if(chips.empty()) { chips.push_back(""); diff --git a/Core/NsfMapper.cpp b/Core/NsfMapper.cpp index 00cb1a76..1f9f2b13 100644 --- a/Core/NsfMapper.cpp +++ b/Core/NsfMapper.cpp @@ -27,7 +27,7 @@ void NsfMapper::InitMapper() _fdsAudio.reset(new FdsAudio(_console)); _namcoAudio.reset(new Namco163Audio(_console)); _sunsoftAudio.reset(new Sunsoft5bAudio(_console)); - _epsgAudio.reset(new EPSGAudio(_console)); + _epsmAudio.reset(new EPSMAudio(_console)); SetCpuMemoryMapping(0x3F00, 0x3FFF, PrgMemoryType::WorkRam, 0x2000, MemoryAccessType::Read); memcpy(GetWorkRam() + 0x2000, _nsfBios, 0x100); @@ -109,8 +109,9 @@ void NsfMapper::InitMapper(RomData& romData) AddRegisterRange(0x4040, 0x4092, MemoryOperation::Any); } - if(_nsfHeader.SoundChips & NsfSoundChips::EPSG) { + if(_nsfHeader.SoundChips & NsfSoundChips::EPSM) { AddRegisterRange(0x4016, 0x4016, MemoryOperation::Write); + AddRegisterRange(0x401c, 0x401f, MemoryOperation::Write); } } @@ -277,8 +278,8 @@ void NsfMapper::ProcessCpuClock() if(_nsfHeader.SoundChips & NsfSoundChips::FDS) { _fdsAudio->Clock(); } - if (_nsfHeader.SoundChips & NsfSoundChips::EPSG) { - _epsgAudio->Clock(); + if (_nsfHeader.SoundChips & NsfSoundChips::EPSM) { + _epsmAudio->Clock(); } } @@ -358,7 +359,11 @@ void NsfMapper::WriteRegister(uint16_t addr, uint8_t value) }*/ } else if((_nsfHeader.SoundChips & NsfSoundChips::Sunsoft) && addr >= 0xC000 && addr <= 0xFFFF) { _sunsoftAudio->WriteRegister(addr, value); - } else { + } + else if ((_nsfHeader.SoundChips & NsfSoundChips::EPSM) && addr >= 0x401C && addr <= 0x401F) { + _epsmAudio->WriteRegister(addr, value); + } + else { switch(addr) { case 0x3E10: _irqReloadValue = (_irqReloadValue & 0xFF00) | value; break; case 0x3E11: _irqReloadValue = (_irqReloadValue & 0xFF) | (value << 8); break; @@ -409,7 +414,7 @@ void NsfMapper::WriteRegister(uint16_t addr, uint8_t value) break; case 0x4016: - _epsgAudio->WriteRegister(addr, value); + _epsmAudio->WriteRegister(addr, value); break; } @@ -490,7 +495,7 @@ void NsfMapper::StreamState(bool saving) SnapshotInfo fdsAudio { _fdsAudio.get() }; SnapshotInfo namcoAudio { _namcoAudio.get() }; SnapshotInfo sunsoftAudio { _sunsoftAudio.get() }; - SnapshotInfo epsgAudio{ _epsgAudio.get() }; + SnapshotInfo epsgAudio{ _epsmAudio.get() }; Stream( _model, _needInit, _irqEnabled, _irqReloadValue, _irqCounter, _irqStatus, _debugIrqStatus, _mmc5MultiplierValues[0], _mmc5MultiplierValues[1], diff --git a/Core/NsfMapper.h b/Core/NsfMapper.h index ce7198b5..bfb5ea44 100644 --- a/Core/NsfMapper.h +++ b/Core/NsfMapper.h @@ -6,7 +6,7 @@ #include "FdsAudio.h" #include "Namco163Audio.h" #include "Sunsoft5bAudio.h" -#include "EPSGAudio.h" +#include "EPSMAudio.h" enum class NsfIrqType { @@ -27,7 +27,8 @@ private: MMC5 = 0x08, Namco = 0x10, Sunsoft = 0x20, - EPSG = 0x40 + VT02 = 0x40, + EPSM = 0x80 }; NesModel _model; @@ -39,7 +40,7 @@ private: unique_ptr _fdsAudio; unique_ptr _namcoAudio; unique_ptr _sunsoftAudio; - unique_ptr _epsgAudio; + unique_ptr _epsmAudio; bool _needInit = false; bool _irqEnabled = false; diff --git a/Core/SSGAudio.h b/Core/SSGAudio.h index b7fc3d87..dd0d1fd7 100644 --- a/Core/SSGAudio.h +++ b/Core/SSGAudio.h @@ -4,8 +4,89 @@ #include "APU.h" #include "BaseExpansionAudio.h" #include "Console.h" +#include "emu2149.h" +//#define SSG_USE_OLD_EMU +#ifndef SSG_USE_OLD_EMU +#define SSG_USE_EMU2149 +#endif +#ifdef SSG_USE_EMU2149 +template +class SSGAudio : public BaseExpansionAudio +{ +private: + std::unique_ptr _psg; + uint8_t _currentRegister; + int16_t _lastOutput; + int16_t _currentOutput; + double _clock; + bool _processTick; + static constexpr uint8_t cycleCount = 1; + + void UpdateOutputLevel() + { + (_console->GetApu()->AddExpansionAudioDelta(channels, _currentOutput - _lastOutput), ...); + _lastOutput = _currentOutput; + } + +protected: + void StreamState(bool saving) override + { + BaseExpansionAudio::StreamState(saving); + ValueInfo psg{ _psg.get() }; + Stream( _currentRegister, _lastOutput, _clock, psg); + } + + void ClockAudio() override + { + _clock += GetSSGClockFrequency() / (double)_console->GetCpu()->GetClockRate(_console->GetModel()); + + while (_clock >= cycleCount) + { + _currentOutput = 0; + + for (uint8_t cycle = 0; cycle < cycleCount; cycle++) + { + _clock--; + _currentOutput = PSG_calc(_psg.get()); + } + + _currentOutput /= 26; + + UpdateOutputLevel(); + } + } + + virtual uint32_t GetSSGClockFrequency() + { + return _console->GetCpu()->GetClockRate(_console->GetModel()) / 2; + } + +public: + SSGAudio(shared_ptr console) : BaseExpansionAudio(console), _psg{ PSG_new(1 , 1), &PSG_delete } + { + _currentRegister = 0; + _lastOutput = 0; + _clock = 0; + PSG_reset(_psg.get()); + } + + void WriteRegister(uint16_t addr, uint8_t value) + { + switch (addr) { + case 0xC000: + _currentRegister = value; + break; + + case 0xE000: + if (_currentRegister <= 0xF) + PSG_writeReg(_psg.get(), _currentRegister, value); + break; + } + } +}; +#else template class SSGAudio : public BaseExpansionAudio { @@ -142,4 +223,5 @@ public: break; } } -}; \ No newline at end of file +}; +#endif \ No newline at end of file diff --git a/Core/SoundMixer.cpp b/Core/SoundMixer.cpp index d59e0054..7ff27191 100644 --- a/Core/SoundMixer.cpp +++ b/Core/SoundMixer.cpp @@ -275,8 +275,8 @@ int16_t SoundMixer::GetOutputVolume(bool forRightChannel) #else GetChannelOutput(AudioChannel::VRC7, forRightChannel) + #endif - GetChannelOutput(AudioChannel::EPSG_L, forRightChannel) * 4 + - GetChannelOutput(AudioChannel::EPSG_R, forRightChannel) * 4 + GetChannelOutput(AudioChannel::EPSM_L, forRightChannel) * 4 + + GetChannelOutput(AudioChannel::EPSM_R, forRightChannel) * 4 ); } diff --git a/Core/emu2149.cpp b/Core/emu2149.cpp index 41641c79..6660ea10 100644 --- a/Core/emu2149.cpp +++ b/Core/emu2149.cpp @@ -8,18 +8,18 @@ 2002 03-02 : Version 1.12 -- Removed PSG_init & PSG_close. 2002 10-13 : Version 1.14 -- Fixed the envelope unit. 2003 09-19 : Version 1.15 -- Added PSG_setMask and PSG_toggleMask - 2004 01-11 : Version 1.16 -- Fixed the envelope problem where the envelope - frequency register is written before key-on. + 2004 01-11 : Version 1.16 -- Fixed the envelope problem where the envelope + frequency register is written before key-on. 2015 12-13 : Version 1.17 -- Changed own integer types to C99 stdint.h types. 2016 09-06 : Version 1.20 -- Support per-channel output. References: - psg.vhd -- 2000 written by Kazuhiro Tsujikawa. - s_fme7.c -- 1999,2000 written by Mamiya (NEZplug). - ay8910.c -- 1998-2001 Author unknown (MAME). - MSX-Datapack -- 1991 ASCII Corp. - AY-3-8910 data sheet - + psg.vhd -- 2000 written by Kazuhiro Tsujikawa. + s_fme7.c -- 1999,2000 written by Mamiya (NEZplug). + ay8910.c -- 1998-2001 Author unknown (MAME). + MSX-Datapack -- 1991 ASCII Corp. + AY-3-8910 data sheet + *****************************************************************************/ #include "stdafx.h" #include @@ -29,347 +29,354 @@ static uint32_t voltbl[2][32] = { {0x00, 0x01, 0x01, 0x02, 0x02, 0x03, 0x03, 0x04, 0x05, 0x06, 0x07, 0x09, - 0x0B, 0x0D, 0x0F, 0x12, - 0x16, 0x1A, 0x1F, 0x25, 0x2D, 0x35, 0x3F, 0x4C, 0x5A, 0x6A, 0x7F, 0x97, - 0xB4, 0xD6, 0xFF, 0xFF}, - {0x00, 0x00, 0x01, 0x01, 0x02, 0x02, 0x03, 0x03, 0x05, 0x05, 0x07, 0x07, - 0x0B, 0x0B, 0x0F, 0x0F, - 0x16, 0x16, 0x1F, 0x1F, 0x2D, 0x2D, 0x3F, 0x3F, 0x5A, 0x5A, 0x7F, 0x7F, - 0xB4, 0xB4, 0xFF, 0xFF} + 0x0B, 0x0D, 0x0F, 0x12, + 0x16, 0x1A, 0x1F, 0x25, 0x2D, 0x35, 0x3F, 0x4C, 0x5A, 0x6A, 0x7F, 0x97, + 0xB4, 0xD6, 0xFF, 0xFF}, + {0x00, 0x00, 0x03, 0x03, 0x04, 0x04, 0x06, 0x06, 0x09, 0x09, 0x0D, 0x0D, + 0x12, 0x12, 0x1D, 0x1D, + 0x22, 0x22, 0x37, 0x37, 0x4D, 0x4D, 0x62, 0x62, 0x82, 0x82, 0xA6, 0xA6, + 0xD0, 0xD0, 0xFF, 0xFF} }; static uint8_t regmsk[16] = { - 0xff, 0x0f, 0xff, 0x0f, 0xff, 0x0f, 0x1f, 0x3f, - 0x1f, 0x1f, 0x1f, 0xff, 0xff, 0x0f, 0xff, 0xff + 0xff, 0x0f, 0xff, 0x0f, 0xff, 0x0f, 0x1f, 0x3f, + 0x1f, 0x1f, 0x1f, 0xff, 0xff, 0x0f, 0xff, 0xff }; #define GETA_BITS 24 static void -internal_refresh (PSG * psg) +internal_refresh(PSG* psg) { - if (psg->quality) - { - psg->base_incr = 1 << GETA_BITS; - psg->realstep = (uint32_t) ((1 << 31) / psg->rate); - psg->psgstep = (uint32_t) ((1 << 31) / (psg->clk / 16)); - psg->psgtime = 0; - } - else - { - psg->base_incr = - (uint32_t) ((double) psg->clk * (1 << GETA_BITS) / (16 * psg->rate)); - } + if (psg->quality) + { + psg->base_incr = 1 << GETA_BITS; + psg->realstep = (uint32_t)((1 << 31) / psg->rate); + psg->psgstep = (uint32_t)((1 << 31) / (psg->clk / 8)); + psg->psgtime = 0; + } + else + { + psg->base_incr = + (uint32_t)((double)psg->clk * (1 << GETA_BITS) / (8 * psg->rate)); + } } void -PSG_set_rate (PSG * psg, uint32_t r) +PSG_set_clock(PSG* psg, uint32_t c) { - psg->rate = r ? r : 44100; - internal_refresh (psg); + psg->clk = c; + internal_refresh(psg); } void -PSG_set_quality (PSG * psg, uint32_t q) +PSG_set_rate(PSG* psg, uint32_t r) { - psg->quality = q; - internal_refresh (psg); -} - -PSG * -PSG_new (uint32_t c, uint32_t r) -{ - PSG *psg; - - psg = (PSG *) malloc (sizeof (PSG)); - if (psg == NULL) - return NULL; - - PSG_setVolumeMode (psg, EMU2149_VOL_DEFAULT); - psg->clk = c; - psg->rate = r ? r : 44100; - PSG_set_quality (psg, 0); - - return psg; + psg->rate = r ? r : 44100; + internal_refresh(psg); } void -PSG_setVolumeMode (PSG * psg, int type) +PSG_set_quality(PSG* psg, uint32_t q) { - switch (type) - { - case 1: - psg->voltbl = voltbl[EMU2149_VOL_YM2149]; - break; - case 2: - psg->voltbl = voltbl[EMU2149_VOL_AY_3_8910]; - break; - default: - psg->voltbl = voltbl[EMU2149_VOL_DEFAULT]; - break; - } + psg->quality = q; + internal_refresh(psg); +} + +PSG* +PSG_new(uint32_t c, uint32_t r) +{ + PSG* psg; + + psg = (PSG*)malloc(sizeof(PSG)); + if (psg == NULL) + return NULL; + + PSG_setVolumeMode(psg, EMU2149_VOL_DEFAULT); + psg->clk = c; + psg->rate = r ? r : 44100; + PSG_set_quality(psg, 0); + + return psg; +} + +void +PSG_setVolumeMode(PSG* psg, int type) +{ + switch (type) + { + case 1: + psg->voltbl = voltbl[EMU2149_VOL_YM2149]; + break; + case 2: + psg->voltbl = voltbl[EMU2149_VOL_AY_3_8910]; + break; + default: + psg->voltbl = voltbl[EMU2149_VOL_DEFAULT]; + break; + } } uint32_t -PSG_setMask (PSG *psg, uint32_t mask) +PSG_setMask(PSG* psg, uint32_t mask) { - uint32_t ret = 0; - if(psg) - { - ret = psg->mask; - psg->mask = mask; - } - return ret; + uint32_t ret = 0; + if (psg) + { + ret = psg->mask; + psg->mask = mask; + } + return ret; } uint32_t -PSG_toggleMask (PSG *psg, uint32_t mask) +PSG_toggleMask(PSG* psg, uint32_t mask) { - uint32_t ret = 0; - if(psg) - { - ret = psg->mask; - psg->mask ^= mask; - } - return ret; + uint32_t ret = 0; + if (psg) + { + ret = psg->mask; + psg->mask ^= mask; + } + return ret; } void -PSG_reset (PSG * psg) +PSG_reset(PSG* psg) { - int i; + int i; - psg->base_count = 0; + psg->base_count = 0; - for (i = 0; i < 3; i++) - { - psg->count[i] = 0x1000; - psg->freq[i] = 0; - psg->edge[i] = 0; - psg->volume[i] = 0; - psg->ch_out[i] = 0; - } + for (i = 0; i < 3; i++) + { + psg->count[i] = 0x1000; + psg->freq[i] = 0; + psg->edge[i] = 0; + psg->volume[i] = 0; + psg->ch_out[i] = 0; + } - psg->mask = 0; + psg->mask = 0; - for (i = 0; i < 16; i++) - psg->reg[i] = 0; - psg->adr = 0; + for (i = 0; i < 16; i++) + psg->reg[i] = 0; + psg->adr = 0; - psg->noise_seed = 0xffff; - psg->noise_count = 0x40; - psg->noise_freq = 0; + psg->noise_seed = 0xffff; + psg->noise_count = 0x40; + psg->noise_freq = 0; - psg->env_volume = 0; - psg->env_ptr = 0; - psg->env_freq = 0; - psg->env_count = 0; - psg->env_pause = 1; + psg->env_volume = 0; + psg->env_ptr = 0; + psg->env_freq = 0; + psg->env_count = 0; + psg->env_pause = 1; - psg->out = 0; + psg->out = 0; } void -PSG_delete (PSG * psg) +PSG_delete(PSG* psg) { - free (psg); + free(psg); } uint8_t -PSG_readIO (PSG * psg) +PSG_readIO(PSG* psg) { - return (uint8_t) (psg->reg[psg->adr]); + return (uint8_t)(psg->reg[psg->adr]); } uint8_t -PSG_readReg (PSG * psg, uint32_t reg) +PSG_readReg(PSG* psg, uint32_t reg) { - return (uint8_t) (psg->reg[reg & 0x1f]); + return (uint8_t)(psg->reg[reg & 0x1f]); } void -PSG_writeIO (PSG * psg, uint32_t adr, uint32_t val) +PSG_writeIO(PSG* psg, uint32_t adr, uint32_t val) { - if (adr & 1) - PSG_writeReg (psg, psg->adr, val); - else - psg->adr = val & 0x1f; + if (adr & 1) + PSG_writeReg(psg, psg->adr, val); + else + psg->adr = val & 0x1f; } static inline void -update_output (PSG * psg) +update_output(PSG* psg) { - int i, noise; - uint32_t incr; + int i, noise; + uint32_t incr; - psg->base_count += psg->base_incr; - incr = (psg->base_count >> GETA_BITS); - psg->base_count &= (1 << GETA_BITS) - 1; + psg->base_count += psg->base_incr; + incr = (psg->base_count >> GETA_BITS); + psg->base_count &= (1 << GETA_BITS) - 1; - /* Envelope */ - psg->env_count += incr; - while (psg->env_count>=0x10000 && psg->env_freq!=0) - { - if (!psg->env_pause) - { - if(psg->env_face) - psg->env_ptr = (psg->env_ptr + 1) & 0x3f ; - else - psg->env_ptr = (psg->env_ptr + 0x3f) & 0x3f; - } + /* Envelope */ + psg->env_count += incr; + while (psg->env_count >= 0x10000 && psg->env_freq != 0) + { + if (!psg->env_pause) + { + if (psg->env_face) + psg->env_ptr = (psg->env_ptr + 1) & 0x3f; + else + psg->env_ptr = (psg->env_ptr + 0x3f) & 0x3f; + } - if (psg->env_ptr & 0x20) /* if carry or borrow */ - { - if (psg->env_continue) - { - if (psg->env_alternate^psg->env_hold) psg->env_face ^= 1; - if (psg->env_hold) psg->env_pause = 1; - psg->env_ptr = psg->env_face?0:0x1f; - } - else - { - psg->env_pause = 1; - psg->env_ptr = 0; - } - } + if (psg->env_ptr & 0x20) /* if carry or borrow */ + { + if (psg->env_continue) + { + if (psg->env_alternate ^ psg->env_hold) psg->env_face ^= 1; + if (psg->env_hold) psg->env_pause = 1; + psg->env_ptr = psg->env_face ? 0 : 0x1f; + } + else + { + psg->env_pause = 1; + psg->env_ptr = 0; + } + } - psg->env_count -= psg->env_freq; - } + psg->env_count -= psg->env_freq; + } - /* Noise */ - psg->noise_count += incr; - if (psg->noise_count & 0x40) - { - if (psg->noise_seed & 1) - psg->noise_seed ^= 0x24000; - psg->noise_seed >>= 1; - psg->noise_count -= psg->noise_freq?psg->noise_freq:(1<<1); - } - noise = psg->noise_seed & 1; + /* Noise */ + psg->noise_count += incr; + if (psg->noise_count & 0x40) + { + if (psg->noise_seed & 1) + psg->noise_seed ^= 0x24000; + psg->noise_seed >>= 1; + psg->noise_count -= psg->noise_freq ? psg->noise_freq : (1 << 1); + } + noise = psg->noise_seed & 1; - /* Tone */ - for (i = 0; i < 3; i++) - { - psg->count[i] += incr; - if (psg->count[i] & 0x1000) - { - if (psg->freq[i] > 1) - { - psg->edge[i] = !psg->edge[i]; - psg->count[i] -= psg->freq[i]; - } - else - { - psg->edge[i] = 1; - } - } + /* Tone */ + for (i = 0; i < 3; i++) + { + psg->count[i] += incr; + if (psg->count[i] & 0x1000) + { + if (psg->freq[i] > 1) + { + psg->edge[i] = !psg->edge[i]; + psg->count[i] -= psg->freq[i]; + } + else + { + psg->edge[i] = 1; + } + } - if (psg->mask&PSG_MASK_CH(i)) - continue; + if (psg->mask & PSG_MASK_CH(i)) + continue; - if ((psg->tmask[i]||psg->edge[i]) && (psg->nmask[i]||noise)) - { - if (!(psg->volume[i] & 32)) - psg->ch_out[i] += (psg->voltbl[psg->volume[i] & 31] << 4); - else - psg->ch_out[i] += (psg->voltbl[psg->env_ptr] << 4); - } + if ((psg->tmask[i] || psg->edge[i]) && (psg->nmask[i] || noise)) + { + if (!(psg->volume[i] & 32)) + psg->ch_out[i] += (psg->voltbl[psg->volume[i] & 31] << 4); + else + psg->ch_out[i] += (psg->voltbl[psg->env_ptr] << 4); + } - psg->ch_out[i] >>= 1; + psg->ch_out[i] >>= 1; - } + } } -static inline int16_t -mix_output(PSG *psg) { - return (int16_t)(psg->out = psg->ch_out[0] + psg->ch_out[1] + psg->ch_out[2]); +static inline int16_t +mix_output(PSG* psg) { + return (int16_t)(psg->out = psg->ch_out[0] + psg->ch_out[1] + psg->ch_out[2]); } int16_t -PSG_calc (PSG * psg) +PSG_calc(PSG* psg) { - if (!psg->quality) { - update_output(psg); - return mix_output(psg); - } + if (!psg->quality) { + update_output(psg); + return mix_output(psg); + } - /* Simple rate converter */ - while (psg->realstep > psg->psgtime) - { - psg->psgtime += psg->psgstep; - update_output(psg); - } - psg->psgtime = psg->psgtime - psg->realstep; + /* Simple rate converter */ + while (psg->realstep > psg->psgtime) + { + psg->psgtime += psg->psgstep; + update_output(psg); + } + psg->psgtime = psg->psgtime - psg->realstep; - return mix_output(psg); + return mix_output(psg); } void -PSG_writeReg (PSG * psg, uint32_t reg, uint32_t val) +PSG_writeReg(PSG* psg, uint32_t reg, uint32_t val) { - int c; + int c; - if (reg > 15) return; + if (reg > 15) return; - val &= regmsk[reg]; + val &= regmsk[reg]; - psg->reg[reg] = (uint8_t) (val & 0xff); - switch (reg) - { - case 0: - case 2: - case 4: - case 1: - case 3: - case 5: - c = reg >> 1; - psg->freq[c] = ((psg->reg[c * 2 + 1] & 15) << 8) + psg->reg[c * 2]; - break; + psg->reg[reg] = (uint8_t)(val & 0xff); + switch (reg) + { + case 0: + case 2: + case 4: + case 1: + case 3: + case 5: + c = reg >> 1; + psg->freq[c] = ((psg->reg[c * 2 + 1] & 15) << 8) + psg->reg[c * 2]; + break; - case 6: - psg->noise_freq = (val & 31) << 1; - break; + case 6: + psg->noise_freq = (val & 31) << 1; + break; - case 7: - psg->tmask[0] = (val & 1); - psg->tmask[1] = (val & 2); - psg->tmask[2] = (val & 4); - psg->nmask[0] = (val & 8); - psg->nmask[1] = (val & 16); - psg->nmask[2] = (val & 32); - break; + case 7: + psg->tmask[0] = (val & 1); + psg->tmask[1] = (val & 2); + psg->tmask[2] = (val & 4); + psg->nmask[0] = (val & 8); + psg->nmask[1] = (val & 16); + psg->nmask[2] = (val & 32); + break; - case 8: - case 9: - case 10: - psg->volume[reg - 8] = val << 1; - break; - - case 11: - case 12: - psg->env_freq = (psg->reg[12] << 8) + psg->reg[11]; - break; + case 8: + case 9: + case 10: + psg->volume[reg - 8] = val << 1; + break; - case 13: - psg->env_continue = (val >> 3) & 1; - psg->env_attack = (val >> 2) & 1; - psg->env_alternate = (val >> 1) & 1; - psg->env_hold = val & 1; - psg->env_face = psg->env_attack; - psg->env_pause = 0; - psg->env_count = 0x10000 - psg->env_freq; - psg->env_ptr = psg->env_face?0:0x1f; - break; + case 11: + case 12: + psg->env_freq = (psg->reg[12] << 8) + psg->reg[11]; + break; - case 14: - case 15: - default: - break; - } + case 13: + psg->env_continue = (val >> 3) & 1; + psg->env_attack = (val >> 2) & 1; + psg->env_alternate = (val >> 1) & 1; + psg->env_hold = val & 1; + psg->env_face = psg->env_attack; + psg->env_pause = 0; + psg->env_count = 0x10000 - psg->env_freq; + psg->env_ptr = psg->env_face ? 0 : 0x1f; + break; - return; + case 14: + case 15: + default: + break; + } + + return; } \ No newline at end of file diff --git a/Core/emu2149.h b/Core/emu2149.h index 538edf75..338e0ad5 100644 --- a/Core/emu2149.h +++ b/Core/emu2149.h @@ -15,74 +15,75 @@ extern "C" { #endif - typedef struct __PSG - { + typedef struct __PSG + { - /* Volume Table */ - uint32_t *voltbl; + /* Volume Table */ + uint32_t* voltbl; - uint8_t reg[0x20]; - int32_t out; + uint8_t reg[0x20]; + int32_t out; - uint32_t clk, rate, base_incr, quality; + uint32_t clk, rate, base_incr, quality; - uint32_t count[3]; - uint32_t volume[3]; - uint32_t freq[3]; - uint32_t edge[3]; - uint32_t tmask[3]; - uint32_t nmask[3]; - uint32_t mask; + uint32_t count[3]; + uint32_t volume[3]; + uint32_t freq[3]; + uint32_t edge[3]; + uint32_t tmask[3]; + uint32_t nmask[3]; + uint32_t mask; - uint32_t base_count; + uint32_t base_count; - uint32_t env_volume; - uint32_t env_ptr; - uint32_t env_face; + uint32_t env_volume; + uint32_t env_ptr; + uint32_t env_face; - uint32_t env_continue; - uint32_t env_attack; - uint32_t env_alternate; - uint32_t env_hold; - uint32_t env_pause; - uint32_t env_reset; + uint32_t env_continue; + uint32_t env_attack; + uint32_t env_alternate; + uint32_t env_hold; + uint32_t env_pause; + uint32_t env_reset; - uint32_t env_freq; - uint32_t env_count; + uint32_t env_freq; + uint32_t env_count; - uint32_t noise_seed; - uint32_t noise_count; - uint32_t noise_freq; + uint32_t noise_seed; + uint32_t noise_count; + uint32_t noise_freq; - /* rate converter */ - uint32_t realstep; - uint32_t psgtime; - uint32_t psgstep; + /* rate converter */ + uint32_t realstep; + uint32_t psgtime; + uint32_t psgstep; - /* I/O Ctrl */ - uint32_t adr; + /* I/O Ctrl */ + uint32_t adr; - /* output of channels */ - int16_t ch_out[3]; + /* output of channels */ + int16_t ch_out[3]; - } PSG; + } PSG; + + void PSG_set_quality(PSG* psg, uint32_t q); + void PSG_set_clock(PSG* psg, uint32_t c); + void PSG_set_rate(PSG* psg, uint32_t r); + PSG* PSG_new(uint32_t clk, uint32_t rate); + void PSG_reset(PSG*); + void PSG_delete(PSG*); + void PSG_writeReg(PSG*, uint32_t reg, uint32_t val); + void PSG_writeIO(PSG* psg, uint32_t adr, uint32_t val); + uint8_t PSG_readReg(PSG* psg, uint32_t reg); + uint8_t PSG_readIO(PSG* psg); + int16_t PSG_calc(PSG*); + void PSG_setVolumeMode(PSG* psg, int type); + uint32_t PSG_setMask(PSG*, uint32_t mask); + uint32_t PSG_toggleMask(PSG*, uint32_t mask); - void PSG_set_quality (PSG * psg, uint32_t q); - void PSG_set_rate (PSG * psg, uint32_t r); - PSG *PSG_new (uint32_t clk, uint32_t rate); - void PSG_reset (PSG *); - void PSG_delete (PSG *); - void PSG_writeReg (PSG *, uint32_t reg, uint32_t val); - void PSG_writeIO (PSG * psg, uint32_t adr, uint32_t val); - uint8_t PSG_readReg (PSG * psg, uint32_t reg); - uint8_t PSG_readIO (PSG * psg); - int16_t PSG_calc (PSG *); - void PSG_setVolumeMode (PSG * psg, int type); - uint32_t PSG_setMask (PSG *, uint32_t mask); - uint32_t PSG_toggleMask (PSG *, uint32_t mask); - #ifdef __cplusplus } #endif -#endif +#endif \ No newline at end of file diff --git a/GUI.NET/Config/AudioInfo.cs b/GUI.NET/Config/AudioInfo.cs index 5a01f31f..51eef6fb 100644 --- a/GUI.NET/Config/AudioInfo.cs +++ b/GUI.NET/Config/AudioInfo.cs @@ -6,7 +6,7 @@ namespace Mesen.GUI.Config { public string AudioDevice = ""; public bool EnableAudio = true; - public bool EnableEPSG = true; + public bool EnableEPSM = true; public bool DisableDynamicSampleRate = false; @@ -24,10 +24,10 @@ namespace Mesen.GUI.Config [MinMax(0, 100)] public UInt32 Vrc7Volume = 100; [MinMax(0, 100)] public UInt32 Namco163Volume = 100; [MinMax(0, 100)] public UInt32 Sunsoft5bVolume = 100; - [MinMax(0, 100)] public UInt32 EPSGVolume_L = 50; - [MinMax(0, 100)] public UInt32 EPSGVolume_R = 50; + [MinMax(0, 100)] public UInt32 EPSMVolume_L = 50; + [MinMax(0, 100)] public UInt32 EPSMVolume_R = 50; - [MinMax(10000, 32000000)] public UInt32 EPSGClockFrequency = 3579545; + [MinMax(10000, 32000000)] public UInt32 EPSMClockFrequency = 3579545; [MinMax(-100, 100)] public Int32 Square1Panning = 0; [MinMax(-100, 100)] public Int32 Square2Panning = 0; @@ -40,8 +40,8 @@ namespace Mesen.GUI.Config [MinMax(-100, 100)] public Int32 Vrc7Panning = 0; [MinMax(-100, 100)] public Int32 Namco163Panning = 0; [MinMax(-100, 100)] public Int32 Sunsoft5bPanning = 0; - [MinMax(-100, 100)] public Int32 EPSGPanning_L = -100; - [MinMax(-100, 100)] public Int32 EPSGPanning_R = 100; + [MinMax(-100, 100)] public Int32 EPSMPanning_L = -100; + [MinMax(-100, 100)] public Int32 EPSMPanning_R = 100; [ValidValues(11025, 22050, 44100, 48000, 96000)] public UInt32 SampleRate = 48000; public bool ReduceSoundInBackground = true; @@ -121,10 +121,10 @@ namespace Mesen.GUI.Config InteropEmu.SetChannelVolume(AudioChannel.VRC7, ConvertVolume(audioInfo.Vrc7Volume)); InteropEmu.SetChannelVolume(AudioChannel.Namco163, ConvertVolume(audioInfo.Namco163Volume)); InteropEmu.SetChannelVolume(AudioChannel.Sunsoft5B, ConvertVolume(audioInfo.Sunsoft5bVolume)); - InteropEmu.SetChannelVolume(AudioChannel.EPSG_L, ConvertVolume(audioInfo.EPSGVolume_L)); - InteropEmu.SetChannelVolume(AudioChannel.EPSG_R, ConvertVolume(audioInfo.EPSGVolume_R)); - InteropEmu.SetChannelVolume(AudioChannel.EPSG_L, audioInfo.EnableEPSG ? AudioInfo.ConvertVolume(audioInfo.EPSGVolume_L) : 0); - InteropEmu.SetChannelVolume(AudioChannel.EPSG_R, audioInfo.EnableEPSG ? AudioInfo.ConvertVolume(audioInfo.EPSGVolume_R) : 0); + InteropEmu.SetChannelVolume(AudioChannel.EPSM_L, ConvertVolume(audioInfo.EPSMVolume_L)); + InteropEmu.SetChannelVolume(AudioChannel.EPSM_R, ConvertVolume(audioInfo.EPSMVolume_R)); + InteropEmu.SetChannelVolume(AudioChannel.EPSM_L, audioInfo.EnableEPSM ? AudioInfo.ConvertVolume(audioInfo.EPSMVolume_L) : 0); + InteropEmu.SetChannelVolume(AudioChannel.EPSM_R, audioInfo.EnableEPSM ? AudioInfo.ConvertVolume(audioInfo.EPSMVolume_R) : 0); InteropEmu.SetChannelPanning(AudioChannel.Square1, ConvertPanning(audioInfo.Square1Panning)); InteropEmu.SetChannelPanning(AudioChannel.Square2, ConvertPanning(audioInfo.Square2Panning)); @@ -137,10 +137,10 @@ namespace Mesen.GUI.Config InteropEmu.SetChannelPanning(AudioChannel.VRC7, ConvertPanning(audioInfo.Vrc7Panning)); InteropEmu.SetChannelPanning(AudioChannel.Namco163, ConvertPanning(audioInfo.Namco163Panning)); InteropEmu.SetChannelPanning(AudioChannel.Sunsoft5B, ConvertPanning(audioInfo.Sunsoft5bPanning)); - InteropEmu.SetChannelPanning(AudioChannel.EPSG_L, ConvertPanning(audioInfo.EPSGPanning_L)); - InteropEmu.SetChannelPanning(AudioChannel.EPSG_R, ConvertPanning(audioInfo.EPSGPanning_R)); + InteropEmu.SetChannelPanning(AudioChannel.EPSM_L, ConvertPanning(audioInfo.EPSMPanning_L)); + InteropEmu.SetChannelPanning(AudioChannel.EPSM_R, ConvertPanning(audioInfo.EPSMPanning_R)); - InteropEmu.SetEPSGClockFrequency(audioInfo.EPSGClockFrequency); + InteropEmu.SetEPSMClockFrequency(audioInfo.EPSMClockFrequency); InteropEmu.SetEqualizerFilterType(audioInfo.EnableEqualizer ? audioInfo.EqualizerFilterType : EqualizerFilterType.None); diff --git a/GUI.NET/Controls/ctrlNsfPlayer.Designer.cs b/GUI.NET/Controls/ctrlNsfPlayer.Designer.cs index 4b28ccdc..6a18d768 100644 --- a/GUI.NET/Controls/ctrlNsfPlayer.Designer.cs +++ b/GUI.NET/Controls/ctrlNsfPlayer.Designer.cs @@ -46,7 +46,7 @@ this.lblSunsoft = new System.Windows.Forms.Label(); this.lblVrc6 = new System.Windows.Forms.Label(); this.lblVrc7 = new System.Windows.Forms.Label(); - this.lblEpsg = new System.Windows.Forms.Label(); + this.lblEpsm = new System.Windows.Forms.Label(); this.lblSoundChips = new System.Windows.Forms.Label(); this.trkVolume = new System.Windows.Forms.TrackBar(); this.flowLayoutPanel1 = new System.Windows.Forms.FlowLayoutPanel(); @@ -268,7 +268,7 @@ this.tableLayoutPanel3.Controls.Add(this.lblSunsoft, 3, 0); this.tableLayoutPanel3.Controls.Add(this.lblVrc6, 4, 0); this.tableLayoutPanel3.Controls.Add(this.lblVrc7, 5, 0); - this.tableLayoutPanel3.Controls.Add(this.lblEpsg, 6, 0); + this.tableLayoutPanel3.Controls.Add(this.lblEpsm, 6, 0); this.tableLayoutPanel3.Dock = System.Windows.Forms.DockStyle.Fill; this.tableLayoutPanel3.Location = new System.Drawing.Point(101, 66); this.tableLayoutPanel3.Name = "tableLayoutPanel3"; @@ -357,18 +357,18 @@ this.lblVrc7.TabIndex = 3; this.lblVrc7.Text = "VRC7"; // - // lblEpsg + // lblEpsm // - this.lblEpsg.AutoSize = true; - this.lblEpsg.BackColor = System.Drawing.Color.Transparent; - this.lblEpsg.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.lblEpsg.ForeColor = System.Drawing.Color.White; - this.lblEpsg.Location = new System.Drawing.Point(220, 0); - this.lblEpsg.Margin = new System.Windows.Forms.Padding(0); - this.lblEpsg.Name = "lblEpsg"; - this.lblEpsg.Size = new System.Drawing.Size(35, 13); - this.lblEpsg.TabIndex = 3; - this.lblEpsg.Text = "EPSG"; + this.lblEpsm.AutoSize = true; + this.lblEpsm.BackColor = System.Drawing.Color.Transparent; + this.lblEpsm.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.lblEpsm.ForeColor = System.Drawing.Color.White; + this.lblEpsm.Location = new System.Drawing.Point(220, 0); + this.lblEpsm.Margin = new System.Windows.Forms.Padding(0); + this.lblEpsm.Name = "lblEpsm"; + this.lblEpsm.Size = new System.Drawing.Size(35, 13); + this.lblEpsm.TabIndex = 3; + this.lblEpsm.Text = "EPSM"; // // lblSoundChips // @@ -743,7 +743,7 @@ private System.Windows.Forms.Label lblSunsoft; private System.Windows.Forms.Label lblVrc6; private System.Windows.Forms.Label lblVrc7; - private System.Windows.Forms.Label lblEpsg; + private System.Windows.Forms.Label lblEpsm; private System.Windows.Forms.Label lblMmc5; private System.Windows.Forms.Label lblNamco; private System.Windows.Forms.Label lblFds; diff --git a/GUI.NET/Controls/ctrlNsfPlayer.cs b/GUI.NET/Controls/ctrlNsfPlayer.cs index db288cd8..bdc8f730 100644 --- a/GUI.NET/Controls/ctrlNsfPlayer.cs +++ b/GUI.NET/Controls/ctrlNsfPlayer.cs @@ -274,7 +274,7 @@ namespace Mesen.GUI.Controls lblMmc5.ForeColor = (header.SoundChips & 0x08) == 0x08 ? Color.White : Color.Gray; lblNamco.ForeColor = (header.SoundChips & 0x10) == 0x10 ? Color.White : Color.Gray; lblSunsoft.ForeColor = (header.SoundChips & 0x20) == 0x20 ? Color.White : Color.Gray; - lblEpsg.ForeColor = (header.SoundChips & 0x40) == 0x40 ? Color.White : Color.Gray; + lblEpsm.ForeColor = (header.SoundChips & 0x80) == 0x80 ? Color.White : Color.Gray; if (InteropEmu.IsPaused()) { btnPause.Image = Properties.Resources.Play; diff --git a/GUI.NET/Debugger/frmApuViewer.Designer.cs b/GUI.NET/Debugger/frmApuViewer.Designer.cs index 84e6f53f..245df7e5 100644 --- a/GUI.NET/Debugger/frmApuViewer.Designer.cs +++ b/GUI.NET/Debugger/frmApuViewer.Designer.cs @@ -41,7 +41,7 @@ this.chkVrc7 = new System.Windows.Forms.CheckBox(); this.chkDmc = new System.Windows.Forms.CheckBox(); this.chkSunsoft = new System.Windows.Forms.CheckBox(); - this.chkEPSG = new System.Windows.Forms.CheckBox(); + this.chkEPSM = new System.Windows.Forms.CheckBox(); this.chkVrc6 = new System.Windows.Forms.CheckBox(); this.grpSquare1 = new System.Windows.Forms.GroupBox(); this.ctrlSquareInfo1 = new Mesen.GUI.Debugger.Controls.ctrlSquareInfo(); @@ -119,7 +119,7 @@ this.tableLayoutPanel2.Controls.Add(this.chkVrc7, 2, 1); this.tableLayoutPanel2.Controls.Add(this.chkDmc, 0, 4); this.tableLayoutPanel2.Controls.Add(this.chkSunsoft, 1, 3); - this.tableLayoutPanel2.Controls.Add(this.chkEPSG, 1, 4); + this.tableLayoutPanel2.Controls.Add(this.chkEPSM, 1, 4); this.tableLayoutPanel2.Controls.Add(this.chkVrc6, 2, 0); this.tableLayoutPanel2.Dock = System.Windows.Forms.DockStyle.Fill; this.tableLayoutPanel2.Location = new System.Drawing.Point(3, 16); @@ -273,19 +273,19 @@ this.chkSunsoft.UseVisualStyleBackColor = true; this.chkSunsoft.CheckedChanged += new System.EventHandler(this.chkSoundChannel_CheckedChanged); // - // chkEPSG + // chkEPSM // - this.chkEPSG.AutoSize = true; - this.chkEPSG.Checked = true; - this.chkEPSG.CheckState = System.Windows.Forms.CheckState.Checked; - this.chkEPSG.Location = new System.Drawing.Point(99, 80); - this.chkEPSG.Margin = new System.Windows.Forms.Padding(3, 0, 3, 3); - this.chkEPSG.Name = "chkEPSG"; - this.chkEPSG.Size = new System.Drawing.Size(78, 17); - this.chkEPSG.TabIndex = 10; - this.chkEPSG.Text = "EPSG"; - this.chkEPSG.UseVisualStyleBackColor = true; - this.chkEPSG.CheckedChanged += new System.EventHandler(this.chkSoundChannel_CheckedChanged); + this.chkEPSM.AutoSize = true; + this.chkEPSM.Checked = true; + this.chkEPSM.CheckState = System.Windows.Forms.CheckState.Checked; + this.chkEPSM.Location = new System.Drawing.Point(99, 80); + this.chkEPSM.Margin = new System.Windows.Forms.Padding(3, 0, 3, 3); + this.chkEPSM.Name = "chkEPSM"; + this.chkEPSM.Size = new System.Drawing.Size(78, 17); + this.chkEPSM.TabIndex = 10; + this.chkEPSM.Text = "EPSM"; + this.chkEPSM.UseVisualStyleBackColor = true; + this.chkEPSM.CheckedChanged += new System.EventHandler(this.chkSoundChannel_CheckedChanged); // // chkVrc6 // @@ -475,6 +475,6 @@ private System.Windows.Forms.CheckBox chkVrc7; private System.Windows.Forms.CheckBox chkVrc6; private System.Windows.Forms.CheckBox chkSunsoft; - private System.Windows.Forms.CheckBox chkEPSG; + private System.Windows.Forms.CheckBox chkEPSM; } } \ No newline at end of file diff --git a/GUI.NET/Debugger/frmApuViewer.cs b/GUI.NET/Debugger/frmApuViewer.cs index 6d0b5761..05e53549 100644 --- a/GUI.NET/Debugger/frmApuViewer.cs +++ b/GUI.NET/Debugger/frmApuViewer.cs @@ -68,8 +68,8 @@ namespace Mesen.GUI.Debugger InteropEmu.SetChannelVolume(AudioChannel.VRC7, chkVrc7.Checked ? 1 : 0); InteropEmu.SetChannelVolume(AudioChannel.MMC5, chkMmc5.Checked ? 1 : 0); InteropEmu.SetChannelVolume(AudioChannel.Sunsoft5B, chkSunsoft.Checked ? 1 : 0); - InteropEmu.SetChannelVolume(AudioChannel.EPSG_L, chkEPSG.Checked ? AudioInfo.ConvertVolume(audioInfo.EPSGVolume_L) : 0); - InteropEmu.SetChannelVolume(AudioChannel.EPSG_R, chkEPSG.Checked ? AudioInfo.ConvertVolume(audioInfo.EPSGVolume_R) : 0); + InteropEmu.SetChannelVolume(AudioChannel.EPSM_L, chkEPSM.Checked ? AudioInfo.ConvertVolume(audioInfo.EPSMVolume_L) : 0); + InteropEmu.SetChannelVolume(AudioChannel.EPSM_R, chkEPSM.Checked ? AudioInfo.ConvertVolume(audioInfo.EPSMVolume_R) : 0); } } } diff --git a/GUI.NET/Forms/Config/frmAudioConfig.Designer.cs b/GUI.NET/Forms/Config/frmAudioConfig.Designer.cs index 7a84563c..0f7209a2 100644 --- a/GUI.NET/Forms/Config/frmAudioConfig.Designer.cs +++ b/GUI.NET/Forms/Config/frmAudioConfig.Designer.cs @@ -43,12 +43,12 @@ namespace Mesen.GUI.Forms.Config this.trkVrc7Vol = new Mesen.GUI.Controls.ctrlTrackbar(); this.trkNamco163Vol = new Mesen.GUI.Controls.ctrlTrackbar(); this.trkSunsoft5b = new Mesen.GUI.Controls.ctrlTrackbar(); - this.trkEPSGVol_L = new Mesen.GUI.Controls.ctrlTrackbar(); - this.trkEPSGVol_R = new Mesen.GUI.Controls.ctrlTrackbar(); + this.trkEPSMVol_L = new Mesen.GUI.Controls.ctrlTrackbar(); + this.trkEPSMVol_R = new Mesen.GUI.Controls.ctrlTrackbar(); this.tableLayoutPanel2 = new System.Windows.Forms.TableLayoutPanel(); this.lblVolumeReductionSettings = new System.Windows.Forms.Label(); this.chkEnableAudio = new System.Windows.Forms.CheckBox(); - this.chkEnableEPSG = new System.Windows.Forms.CheckBox(); + this.chkEnableEPSM = new System.Windows.Forms.CheckBox(); this.lblSampleRate = new System.Windows.Forms.Label(); this.lblAudioLatency = new System.Windows.Forms.Label(); this.cboSampleRate = new System.Windows.Forms.ComboBox(); @@ -81,8 +81,8 @@ namespace Mesen.GUI.Forms.Config this.trkVrc7Pan = new Mesen.GUI.Controls.ctrlHorizontalTrackbar(); this.trkNamcoPan = new Mesen.GUI.Controls.ctrlHorizontalTrackbar(); this.trkSunsoftPan = new Mesen.GUI.Controls.ctrlHorizontalTrackbar(); - this.trkEPSGPan_L = new Mesen.GUI.Controls.ctrlHorizontalTrackbar(); - this.trkEPSGPan_R = new Mesen.GUI.Controls.ctrlHorizontalTrackbar(); + this.trkEPSMPan_L = new Mesen.GUI.Controls.ctrlHorizontalTrackbar(); + this.trkEPSMPan_R = new Mesen.GUI.Controls.ctrlHorizontalTrackbar(); this.tpgEqualizer = new System.Windows.Forms.TabPage(); this.groupBox1 = new System.Windows.Forms.GroupBox(); this.chkEnableEqualizer = new System.Windows.Forms.CheckBox(); @@ -147,8 +147,8 @@ namespace Mesen.GUI.Forms.Config this.tableLayoutPanel3 = new System.Windows.Forms.TableLayoutPanel(); this.chkDisableDynamicSampleRate = new Mesen.GUI.Controls.ctrlRiskyOption(); this.chkDisableNoiseModeFlag = new Mesen.GUI.Controls.ctrlRiskyOption(); - this.nudEPSGClockFrequency = new Mesen.GUI.Controls.MesenNumericUpDown(); - this.lblEPSGClockFrequency = new System.Windows.Forms.Label(); + this.nudEPSMClockFrequency = new Mesen.GUI.Controls.MesenNumericUpDown(); + this.lblEPSMClockFrequency = new System.Windows.Forms.Label(); this.chkSilenceTriangleHighFreq = new System.Windows.Forms.CheckBox(); this.chkSwapDutyCycles = new Mesen.GUI.Controls.ctrlRiskyOption(); this.chkReduceDmcPopping = new System.Windows.Forms.CheckBox(); @@ -223,8 +223,8 @@ namespace Mesen.GUI.Forms.Config this.tableLayoutPanel1.Controls.Add(this.trkVrc7Vol, 3, 1); this.tableLayoutPanel1.Controls.Add(this.trkNamco163Vol, 4, 1); this.tableLayoutPanel1.Controls.Add(this.trkSunsoft5b, 6, 0); - this.tableLayoutPanel1.Controls.Add(this.trkEPSGVol_L, 5, 1); - this.tableLayoutPanel1.Controls.Add(this.trkEPSGVol_R, 6, 1); + this.tableLayoutPanel1.Controls.Add(this.trkEPSMVol_L, 5, 1); + this.tableLayoutPanel1.Controls.Add(this.trkEPSMVol_R, 6, 1); this.tableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill; this.tableLayoutPanel1.Location = new System.Drawing.Point(3, 16); this.tableLayoutPanel1.Name = "tableLayoutPanel1"; @@ -415,35 +415,35 @@ namespace Mesen.GUI.Forms.Config this.trkSunsoft5b.Text = "Sunsoft"; this.trkSunsoft5b.Value = 50; // - // trkEPSGVol_L + // trkEPSMVol_L // - this.trkEPSGVol_L.Anchor = System.Windows.Forms.AnchorStyles.Top; - this.trkEPSGVol_L.Location = new System.Drawing.Point(364, 160); - this.trkEPSGVol_L.Margin = new System.Windows.Forms.Padding(0); - this.trkEPSGVol_L.Maximum = 100; - this.trkEPSGVol_L.MaximumSize = new System.Drawing.Size(63, 160); - this.trkEPSGVol_L.Minimum = 0; - this.trkEPSGVol_L.MinimumSize = new System.Drawing.Size(63, 160); - this.trkEPSGVol_L.Name = "trkEPSGVol_L"; - this.trkEPSGVol_L.Size = new System.Drawing.Size(63, 160); - this.trkEPSGVol_L.TabIndex = 22; - this.trkEPSGVol_L.Text = "EPSG Left"; - this.trkEPSGVol_L.Value = 100; + this.trkEPSMVol_L.Anchor = System.Windows.Forms.AnchorStyles.Top; + this.trkEPSMVol_L.Location = new System.Drawing.Point(364, 160); + this.trkEPSMVol_L.Margin = new System.Windows.Forms.Padding(0); + this.trkEPSMVol_L.Maximum = 100; + this.trkEPSMVol_L.MaximumSize = new System.Drawing.Size(63, 160); + this.trkEPSMVol_L.Minimum = 0; + this.trkEPSMVol_L.MinimumSize = new System.Drawing.Size(63, 160); + this.trkEPSMVol_L.Name = "trkEPSMVol_L"; + this.trkEPSMVol_L.Size = new System.Drawing.Size(63, 160); + this.trkEPSMVol_L.TabIndex = 22; + this.trkEPSMVol_L.Text = "EPSM Left"; + this.trkEPSMVol_L.Value = 100; // - // trkEPSGVol_R + // trkEPSMVol_R // - this.trkEPSGVol_R.Anchor = System.Windows.Forms.AnchorStyles.Top; - this.trkEPSGVol_R.Location = new System.Drawing.Point(432, 160); - this.trkEPSGVol_R.Margin = new System.Windows.Forms.Padding(0); - this.trkEPSGVol_R.Maximum = 100; - this.trkEPSGVol_R.MaximumSize = new System.Drawing.Size(63, 160); - this.trkEPSGVol_R.Minimum = 0; - this.trkEPSGVol_R.MinimumSize = new System.Drawing.Size(63, 160); - this.trkEPSGVol_R.Name = "trkEPSGVol_R"; - this.trkEPSGVol_R.Size = new System.Drawing.Size(63, 160); - this.trkEPSGVol_R.TabIndex = 22; - this.trkEPSGVol_R.Text = "EPSG Right"; - this.trkEPSGVol_R.Value = 100; + this.trkEPSMVol_R.Anchor = System.Windows.Forms.AnchorStyles.Top; + this.trkEPSMVol_R.Location = new System.Drawing.Point(432, 160); + this.trkEPSMVol_R.Margin = new System.Windows.Forms.Padding(0); + this.trkEPSMVol_R.Maximum = 100; + this.trkEPSMVol_R.MaximumSize = new System.Drawing.Size(63, 160); + this.trkEPSMVol_R.Minimum = 0; + this.trkEPSMVol_R.MinimumSize = new System.Drawing.Size(63, 160); + this.trkEPSMVol_R.Name = "trkEPSMVol_R"; + this.trkEPSMVol_R.Size = new System.Drawing.Size(63, 160); + this.trkEPSMVol_R.TabIndex = 22; + this.trkEPSMVol_R.Text = "EPSM Right"; + this.trkEPSMVol_R.Value = 100; // // tableLayoutPanel2 // @@ -451,7 +451,7 @@ namespace Mesen.GUI.Forms.Config this.tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle()); this.tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle()); this.tableLayoutPanel2.Controls.Add(this.chkEnableAudio, 0, 0); - this.tableLayoutPanel2.Controls.Add(this.chkEnableEPSG, 0, 0); + this.tableLayoutPanel2.Controls.Add(this.chkEnableEPSM, 0, 0); this.tableLayoutPanel2.Controls.Add(this.lblSampleRate, 0, 2); this.tableLayoutPanel2.Controls.Add(this.lblAudioLatency, 0, 3); this.tableLayoutPanel2.Controls.Add(this.cboSampleRate, 1, 2); @@ -502,17 +502,17 @@ namespace Mesen.GUI.Forms.Config this.chkEnableAudio.Text = "Enable Audio"; this.chkEnableAudio.UseVisualStyleBackColor = true; // - // chkEnableEPSG + // chkEnableEPSM // - this.chkEnableEPSG.AutoSize = true; - this.tableLayoutPanel2.SetColumnSpan(this.chkEnableEPSG, 2); - this.chkEnableEPSG.Location = new System.Drawing.Point(6, 6); - this.chkEnableEPSG.Margin = new System.Windows.Forms.Padding(6, 6, 6, 3); - this.chkEnableEPSG.Name = "chkEnableEPSG"; - this.chkEnableEPSG.Size = new System.Drawing.Size(91, 17); - this.chkEnableEPSG.TabIndex = 3; - this.chkEnableEPSG.Text = "Enable EPSG"; - this.chkEnableEPSG.UseVisualStyleBackColor = true; + this.chkEnableEPSM.AutoSize = true; + this.tableLayoutPanel2.SetColumnSpan(this.chkEnableEPSM, 2); + this.chkEnableEPSM.Location = new System.Drawing.Point(6, 6); + this.chkEnableEPSM.Margin = new System.Windows.Forms.Padding(6, 6, 6, 3); + this.chkEnableEPSM.Name = "chkEnableEPSM"; + this.chkEnableEPSM.Size = new System.Drawing.Size(91, 17); + this.chkEnableEPSM.TabIndex = 3; + this.chkEnableEPSM.Text = "Enable EPSM"; + this.chkEnableEPSM.UseVisualStyleBackColor = true; // // lblSampleRate // @@ -802,8 +802,8 @@ namespace Mesen.GUI.Forms.Config this.tableLayoutPanel6.Controls.Add(this.trkVrc7Pan, 1, 3); this.tableLayoutPanel6.Controls.Add(this.trkNamcoPan, 1, 4); this.tableLayoutPanel6.Controls.Add(this.trkSunsoftPan, 0, 6); - this.tableLayoutPanel6.Controls.Add(this.trkEPSGPan_L, 0, 5); - this.tableLayoutPanel6.Controls.Add(this.trkEPSGPan_R, 1, 5); + this.tableLayoutPanel6.Controls.Add(this.trkEPSMPan_L, 0, 5); + this.tableLayoutPanel6.Controls.Add(this.trkEPSMPan_R, 1, 5); this.tableLayoutPanel6.Dock = System.Windows.Forms.DockStyle.Fill; this.tableLayoutPanel6.Location = new System.Drawing.Point(3, 3); this.tableLayoutPanel6.Name = "tableLayoutPanel6"; @@ -984,35 +984,35 @@ namespace Mesen.GUI.Forms.Config this.trkSunsoftPan.Text = "Sunsoft"; this.trkSunsoftPan.Value = 0; // - // trkEPSGPan_L + // trkEPSMPan_L // - this.trkEPSGPan_L.Anchor = System.Windows.Forms.AnchorStyles.Top; - this.trkEPSGPan_L.Location = new System.Drawing.Point(12, 275); - this.trkEPSGPan_L.Margin = new System.Windows.Forms.Padding(0); - this.trkEPSGPan_L.Maximum = 100; - this.trkEPSGPan_L.MaximumSize = new System.Drawing.Size(63, 160); - this.trkEPSGPan_L.Minimum = -100; - this.trkEPSGPan_L.MinimumSize = new System.Drawing.Size(206, 55); - this.trkEPSGPan_L.Name = "trkEPSGPan_L"; - this.trkEPSGPan_L.Size = new System.Drawing.Size(206, 55); - this.trkEPSGPan_L.TabIndex = 22; - this.trkEPSGPan_L.Text = "EPSG Left"; - this.trkEPSGPan_L.Value = -100; + this.trkEPSMPan_L.Anchor = System.Windows.Forms.AnchorStyles.Top; + this.trkEPSMPan_L.Location = new System.Drawing.Point(12, 275); + this.trkEPSMPan_L.Margin = new System.Windows.Forms.Padding(0); + this.trkEPSMPan_L.Maximum = 100; + this.trkEPSMPan_L.MaximumSize = new System.Drawing.Size(63, 160); + this.trkEPSMPan_L.Minimum = -100; + this.trkEPSMPan_L.MinimumSize = new System.Drawing.Size(206, 55); + this.trkEPSMPan_L.Name = "trkEPSMPan_L"; + this.trkEPSMPan_L.Size = new System.Drawing.Size(206, 55); + this.trkEPSMPan_L.TabIndex = 22; + this.trkEPSMPan_L.Text = "EPSM Left"; + this.trkEPSMPan_L.Value = -100; // - // trkEPSGPan_R + // trkEPSMPan_R // - this.trkEPSGPan_R.Anchor = System.Windows.Forms.AnchorStyles.Top; - this.trkEPSGPan_R.Location = new System.Drawing.Point(244, 275); - this.trkEPSGPan_R.Margin = new System.Windows.Forms.Padding(0); - this.trkEPSGPan_R.Maximum = 100; - this.trkEPSGPan_R.MaximumSize = new System.Drawing.Size(63, 160); - this.trkEPSGPan_R.Minimum = -100; - this.trkEPSGPan_R.MinimumSize = new System.Drawing.Size(206, 55); - this.trkEPSGPan_R.Name = "trkEPSGPan_R"; - this.trkEPSGPan_R.Size = new System.Drawing.Size(206, 55); - this.trkEPSGPan_R.TabIndex = 22; - this.trkEPSGPan_R.Text = "EPSG Right"; - this.trkEPSGPan_R.Value = 100; + this.trkEPSMPan_R.Anchor = System.Windows.Forms.AnchorStyles.Top; + this.trkEPSMPan_R.Location = new System.Drawing.Point(244, 275); + this.trkEPSMPan_R.Margin = new System.Windows.Forms.Padding(0); + this.trkEPSMPan_R.Maximum = 100; + this.trkEPSMPan_R.MaximumSize = new System.Drawing.Size(63, 160); + this.trkEPSMPan_R.Minimum = -100; + this.trkEPSMPan_R.MinimumSize = new System.Drawing.Size(206, 55); + this.trkEPSMPan_R.Name = "trkEPSMPan_R"; + this.trkEPSMPan_R.Size = new System.Drawing.Size(206, 55); + this.trkEPSMPan_R.TabIndex = 22; + this.trkEPSMPan_R.Text = "EPSM Right"; + this.trkEPSMPan_R.Value = 100; // // tpgEqualizer // @@ -1988,8 +1988,8 @@ namespace Mesen.GUI.Forms.Config this.tableLayoutPanel3.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F)); this.tableLayoutPanel3.Controls.Add(this.chkDisableDynamicSampleRate, 0, 2); this.tableLayoutPanel3.Controls.Add(this.chkDisableNoiseModeFlag, 0, 4); - this.tableLayoutPanel3.Controls.Add(this.nudEPSGClockFrequency, 0, 5); - this.tableLayoutPanel3.Controls.Add(this.lblEPSGClockFrequency, 0, 5); + this.tableLayoutPanel3.Controls.Add(this.nudEPSMClockFrequency, 0, 5); + this.tableLayoutPanel3.Controls.Add(this.lblEPSMClockFrequency, 0, 5); this.tableLayoutPanel3.Controls.Add(this.chkSilenceTriangleHighFreq, 0, 0); this.tableLayoutPanel3.Controls.Add(this.chkSwapDutyCycles, 0, 3); this.tableLayoutPanel3.Controls.Add(this.chkReduceDmcPopping, 0, 1); @@ -2027,47 +2027,47 @@ namespace Mesen.GUI.Forms.Config this.chkDisableNoiseModeFlag.TabIndex = 3; this.chkDisableNoiseModeFlag.Text = "Disable noise channel mode flag"; // - // nudEPSGClockFrequency + // nudEPSMClockFrequency // - this.nudEPSGClockFrequency.DecimalPlaces = 0; - this.nudEPSGClockFrequency.Dock = System.Windows.Forms.DockStyle.Fill; - this.nudEPSGClockFrequency.Increment = new decimal(new int[] { + this.nudEPSMClockFrequency.DecimalPlaces = 0; + this.nudEPSMClockFrequency.Dock = System.Windows.Forms.DockStyle.Fill; + this.nudEPSMClockFrequency.Increment = new decimal(new int[] { 100000, 0, 0, 0}); - this.nudEPSGClockFrequency.IsHex = false; - this.nudEPSGClockFrequency.Location = new System.Drawing.Point(3, 147); - this.nudEPSGClockFrequency.Maximum = new decimal(new int[] { + this.nudEPSMClockFrequency.IsHex = false; + this.nudEPSMClockFrequency.Location = new System.Drawing.Point(3, 147); + this.nudEPSMClockFrequency.Maximum = new decimal(new int[] { 32000000, 0, 0, 0}); - this.nudEPSGClockFrequency.MaximumSize = new System.Drawing.Size(10000, 20); - this.nudEPSGClockFrequency.Minimum = new decimal(new int[] { + this.nudEPSMClockFrequency.MaximumSize = new System.Drawing.Size(10000, 20); + this.nudEPSMClockFrequency.Minimum = new decimal(new int[] { 10000, 0, 0, 0}); - this.nudEPSGClockFrequency.MinimumSize = new System.Drawing.Size(200, 21); - this.nudEPSGClockFrequency.Name = "nudEPSGClockFrequency"; - this.nudEPSGClockFrequency.Size = new System.Drawing.Size(457, 21); - this.nudEPSGClockFrequency.TabIndex = 3; - this.nudEPSGClockFrequency.Value = new decimal(new int[] { + this.nudEPSMClockFrequency.MinimumSize = new System.Drawing.Size(200, 21); + this.nudEPSMClockFrequency.Name = "nudEPSMClockFrequency"; + this.nudEPSMClockFrequency.Size = new System.Drawing.Size(457, 21); + this.nudEPSMClockFrequency.TabIndex = 3; + this.nudEPSMClockFrequency.Value = new decimal(new int[] { 10000, 0, 0, 0}); // - // lblEPSGClockFrequency + // lblEPSMClockFrequency // - this.lblEPSGClockFrequency.Anchor = System.Windows.Forms.AnchorStyles.Left; - this.lblEPSGClockFrequency.AutoSize = true; - this.lblEPSGClockFrequency.Location = new System.Drawing.Point(3, 125); - this.lblEPSGClockFrequency.Name = "lblEPSGClockFrequency"; - this.lblEPSGClockFrequency.Size = new System.Drawing.Size(228, 13); - this.lblEPSGClockFrequency.TabIndex = 3; - this.lblEPSGClockFrequency.Text = "EPSG Clock Frequency (default is 3579545Hz)"; + this.lblEPSMClockFrequency.Anchor = System.Windows.Forms.AnchorStyles.Left; + this.lblEPSMClockFrequency.AutoSize = true; + this.lblEPSMClockFrequency.Location = new System.Drawing.Point(3, 125); + this.lblEPSMClockFrequency.Name = "lblEPSMClockFrequency"; + this.lblEPSMClockFrequency.Size = new System.Drawing.Size(228, 13); + this.lblEPSMClockFrequency.TabIndex = 3; + this.lblEPSMClockFrequency.Text = "EPSM Clock Frequency (default is 3579545Hz)"; // // chkSilenceTriangleHighFreq // @@ -2166,7 +2166,7 @@ namespace Mesen.GUI.Forms.Config private System.Windows.Forms.GroupBox grpVolume; private System.Windows.Forms.TableLayoutPanel tableLayoutPanel2; private System.Windows.Forms.CheckBox chkEnableAudio; - private System.Windows.Forms.CheckBox chkEnableEPSG; + private System.Windows.Forms.CheckBox chkEnableEPSM; private System.Windows.Forms.Label lblAudioLatency; private MesenNumericUpDown nudLatency; private System.Windows.Forms.Label lblLatencyMs; @@ -2188,8 +2188,8 @@ namespace Mesen.GUI.Forms.Config private Controls.ctrlTrackbar trkVrc7Vol; private Controls.ctrlTrackbar trkNamco163Vol; private Controls.ctrlTrackbar trkSunsoft5b; - private Controls.ctrlTrackbar trkEPSGVol_L; - private Controls.ctrlTrackbar trkEPSGVol_R; + private Controls.ctrlTrackbar trkEPSMVol_L; + private Controls.ctrlTrackbar trkEPSMVol_R; private System.Windows.Forms.TabControl tabMain; private System.Windows.Forms.TabPage tpgGeneral; private System.Windows.Forms.TabPage tpgVolume; @@ -2230,8 +2230,8 @@ namespace Mesen.GUI.Forms.Config private Controls.ctrlHorizontalTrackbar trkVrc7Pan; private Controls.ctrlHorizontalTrackbar trkNamcoPan; private Controls.ctrlHorizontalTrackbar trkSunsoftPan; - private Controls.ctrlHorizontalTrackbar trkEPSGPan_L; - private Controls.ctrlHorizontalTrackbar trkEPSGPan_R; + private Controls.ctrlHorizontalTrackbar trkEPSMPan_L; + private Controls.ctrlHorizontalTrackbar trkEPSMPan_R; private Controls.ctrlHorizontalTrackbar trkSquare1Pan; private System.Windows.Forms.FlowLayoutPanel flowLayoutPanel5; private System.Windows.Forms.CheckBox chkCrossFeedEnabled; @@ -2239,8 +2239,8 @@ namespace Mesen.GUI.Forms.Config private System.Windows.Forms.Label lblCrossFeedRatio; private Controls.ctrlHorizontalTrackbar trkTrianglePan; private ctrlRiskyOption chkDisableNoiseModeFlag; - private MesenNumericUpDown nudEPSGClockFrequency; - private System.Windows.Forms.Label lblEPSGClockFrequency; + private MesenNumericUpDown nudEPSMClockFrequency; + private System.Windows.Forms.Label lblEPSMClockFrequency; private System.Windows.Forms.TabPage tpgEqualizer; private System.Windows.Forms.TableLayoutPanel tlpEqualizer; private ctrlTrackbar trkBand6Gain; diff --git a/GUI.NET/Forms/Config/frmAudioConfig.cs b/GUI.NET/Forms/Config/frmAudioConfig.cs index 2f8fb3f6..ae0fdb57 100644 --- a/GUI.NET/Forms/Config/frmAudioConfig.cs +++ b/GUI.NET/Forms/Config/frmAudioConfig.cs @@ -31,7 +31,7 @@ namespace Mesen.GUI.Forms.Config cboAudioDevice.Items.AddRange(InteropEmu.GetAudioDevices().ToArray()); AddBinding("EnableAudio", chkEnableAudio); - AddBinding("EnableEPSG", chkEnableEPSG); + AddBinding("EnableEPSM", chkEnableEPSM); AddBinding("MasterVolume", trkMaster); AddBinding("Square1Volume", trkSquare1Vol); AddBinding("Square2Volume", trkSquare2Vol); @@ -44,8 +44,8 @@ namespace Mesen.GUI.Forms.Config AddBinding("Vrc7Volume", trkVrc7Vol); AddBinding("Namco163Volume", trkNamco163Vol); AddBinding("Sunsoft5bVolume", trkSunsoft5b); - AddBinding("EPSGVolume_L", trkEPSGVol_L); - AddBinding("EPSGVolume_R", trkEPSGVol_R); + AddBinding("EPSMVolume_L", trkEPSMVol_L); + AddBinding("EPSMVolume_R", trkEPSMVol_R); AddBinding("Square1Panning", trkSquare1Pan); AddBinding("Square2Panning", trkSquare2Pan); @@ -58,10 +58,10 @@ namespace Mesen.GUI.Forms.Config AddBinding("Vrc7Panning", trkVrc7Pan); AddBinding("Namco163Panning", trkNamcoPan); AddBinding("Sunsoft5bPanning", trkSunsoftPan); - AddBinding("EPSGPanning_L", trkEPSGPan_L); - AddBinding("EPSGPanning_R", trkEPSGPan_R); + AddBinding("EPSMPanning_L", trkEPSMPan_L); + AddBinding("EPSMPanning_R", trkEPSMPan_R); - AddBinding("EPSGClockFrequency", nudEPSGClockFrequency); + AddBinding("EPSMClockFrequency", nudEPSMClockFrequency); AddBinding("AudioLatency", nudLatency); AddBinding("SampleRate", cboSampleRate); diff --git a/GUI.NET/Forms/frmAbout.Designer.cs b/GUI.NET/Forms/frmAbout.Designer.cs index 88dead84..fff2067b 100644 --- a/GUI.NET/Forms/frmAbout.Designer.cs +++ b/GUI.NET/Forms/frmAbout.Designer.cs @@ -26,695 +26,741 @@ /// private void InitializeComponent() { - System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(frmAbout)); - this.tableLayoutPanel = new System.Windows.Forms.TableLayoutPanel(); - this.grpAcknowledgements = new System.Windows.Forms.GroupBox(); - this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel(); - this.lblEmulation = new System.Windows.Forms.Label(); - this.lblAudio = new System.Windows.Forms.Label(); - this.lblGeneral = new System.Windows.Forms.Label(); - this.flowLayoutPanel4 = new System.Windows.Forms.FlowLayoutPanel(); - this.ctrlLinkLabel1 = new Mesen.GUI.Controls.ctrlLinkLabel(); - this.ctrlLinkLabel2 = new Mesen.GUI.Controls.ctrlLinkLabel(); - this.ctrlLinkLabel3 = new Mesen.GUI.Controls.ctrlLinkLabel(); - this.ctrlLinkLabel4 = new Mesen.GUI.Controls.ctrlLinkLabel(); - this.ctrlLinkLabel5 = new Mesen.GUI.Controls.ctrlLinkLabel(); - this.ctrlLinkLabel6 = new Mesen.GUI.Controls.ctrlLinkLabel(); - this.ctrlLinkLabel7 = new Mesen.GUI.Controls.ctrlLinkLabel(); - this.lblVideo = new System.Windows.Forms.Label(); - this.flowLayoutPanel5 = new System.Windows.Forms.FlowLayoutPanel(); - this.ctrlLinkLabel9 = new Mesen.GUI.Controls.ctrlLinkLabel(); - this.ctrlLinkLabel10 = new Mesen.GUI.Controls.ctrlLinkLabel(); - this.ctrlLinkLabel11 = new Mesen.GUI.Controls.ctrlLinkLabel(); - this.ctrlLinkLabel12 = new Mesen.GUI.Controls.ctrlLinkLabel(); - this.flowLayoutPanel6 = new System.Windows.Forms.FlowLayoutPanel(); - this.ctrlLinkLabel13 = new Mesen.GUI.Controls.ctrlLinkLabel(); - this.ctrlLinkLabel15 = new Mesen.GUI.Controls.ctrlLinkLabel(); - this.lblUsedSoftware = new System.Windows.Forms.Label(); - this.flowLayoutPanel7 = new System.Windows.Forms.FlowLayoutPanel(); - this.ctrlLinkLabel8 = new Mesen.GUI.Controls.ctrlLinkLabel(); - this.ctrlLinkLabel14 = new Mesen.GUI.Controls.ctrlLinkLabel(); - this.ctrlLinkLabel16 = new Mesen.GUI.Controls.ctrlLinkLabel(); - this.lblCheats = new System.Windows.Forms.Label(); - this.lblCheatDatabase = new System.Windows.Forms.Label(); - this.lblSpecialThanks = new System.Windows.Forms.Label(); - this.flowLayoutPanel3 = new System.Windows.Forms.FlowLayoutPanel(); - this.lblBuildDateLabel = new System.Windows.Forms.Label(); - this.lblBuildDate = new System.Windows.Forms.Label(); - this.logoPictureBox = new System.Windows.Forms.PictureBox(); - this.labelProductName = new System.Windows.Forms.Label(); - this.labelCopyright = new System.Windows.Forms.Label(); - this.flowLayoutPanel1 = new System.Windows.Forms.FlowLayoutPanel(); - this.lblWebsite = new System.Windows.Forms.Label(); - this.lblLink = new System.Windows.Forms.Label(); - this.okButton = new System.Windows.Forms.Button(); - this.picDonate = new System.Windows.Forms.PictureBox(); - this.lblDonate = new System.Windows.Forms.Label(); - this.flowLayoutPanel2 = new System.Windows.Forms.FlowLayoutPanel(); - this.labelVersion = new System.Windows.Forms.Label(); - this.lblMesenVersion = new System.Windows.Forms.Label(); - this.tableLayoutPanel.SuspendLayout(); - this.grpAcknowledgements.SuspendLayout(); - this.tableLayoutPanel1.SuspendLayout(); - this.flowLayoutPanel4.SuspendLayout(); - this.flowLayoutPanel5.SuspendLayout(); - this.flowLayoutPanel6.SuspendLayout(); - this.flowLayoutPanel7.SuspendLayout(); - this.flowLayoutPanel3.SuspendLayout(); - ((System.ComponentModel.ISupportInitialize)(this.logoPictureBox)).BeginInit(); - this.flowLayoutPanel1.SuspendLayout(); - ((System.ComponentModel.ISupportInitialize)(this.picDonate)).BeginInit(); - this.flowLayoutPanel2.SuspendLayout(); - this.SuspendLayout(); - // - // tableLayoutPanel - // - this.tableLayoutPanel.AutoSize = true; - this.tableLayoutPanel.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink; - this.tableLayoutPanel.ColumnCount = 2; - this.tableLayoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 84F)); - this.tableLayoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F)); - this.tableLayoutPanel.Controls.Add(this.grpAcknowledgements, 0, 5); - this.tableLayoutPanel.Controls.Add(this.flowLayoutPanel3, 1, 2); - this.tableLayoutPanel.Controls.Add(this.logoPictureBox, 0, 0); - this.tableLayoutPanel.Controls.Add(this.labelProductName, 1, 0); - this.tableLayoutPanel.Controls.Add(this.labelCopyright, 1, 3); - this.tableLayoutPanel.Controls.Add(this.flowLayoutPanel1, 1, 4); - this.tableLayoutPanel.Controls.Add(this.okButton, 1, 7); - this.tableLayoutPanel.Controls.Add(this.picDonate, 0, 7); - this.tableLayoutPanel.Controls.Add(this.lblDonate, 0, 6); - this.tableLayoutPanel.Controls.Add(this.flowLayoutPanel2, 1, 1); - this.tableLayoutPanel.Dock = System.Windows.Forms.DockStyle.Fill; - this.tableLayoutPanel.Location = new System.Drawing.Point(5, 5); - this.tableLayoutPanel.Name = "tableLayoutPanel"; - this.tableLayoutPanel.RowCount = 9; - this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle()); - this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle()); - this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle()); - this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle()); - this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle()); - this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle()); - this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle()); - this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle()); - this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F)); - this.tableLayoutPanel.Size = new System.Drawing.Size(337, 344); - this.tableLayoutPanel.TabIndex = 0; - // - // grpAcknowledgements - // - this.tableLayoutPanel.SetColumnSpan(this.grpAcknowledgements, 2); - this.grpAcknowledgements.Controls.Add(this.tableLayoutPanel1); - this.grpAcknowledgements.Dock = System.Windows.Forms.DockStyle.Fill; - this.grpAcknowledgements.Location = new System.Drawing.Point(3, 91); - this.grpAcknowledgements.Name = "grpAcknowledgements"; - this.grpAcknowledgements.Size = new System.Drawing.Size(331, 189); - this.grpAcknowledgements.TabIndex = 34; - this.grpAcknowledgements.TabStop = false; - this.grpAcknowledgements.Text = "Acknowledgements"; - // - // tableLayoutPanel1 - // - this.tableLayoutPanel1.ColumnCount = 2; - this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle()); - this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F)); - this.tableLayoutPanel1.Controls.Add(this.lblEmulation, 0, 4); - this.tableLayoutPanel1.Controls.Add(this.lblAudio, 0, 3); - this.tableLayoutPanel1.Controls.Add(this.lblGeneral, 0, 1); - this.tableLayoutPanel1.Controls.Add(this.flowLayoutPanel4, 1, 1); - this.tableLayoutPanel1.Controls.Add(this.lblVideo, 0, 2); - this.tableLayoutPanel1.Controls.Add(this.flowLayoutPanel5, 1, 2); - this.tableLayoutPanel1.Controls.Add(this.flowLayoutPanel6, 1, 3); - this.tableLayoutPanel1.Controls.Add(this.lblUsedSoftware, 0, 0); - this.tableLayoutPanel1.Controls.Add(this.flowLayoutPanel7, 1, 4); - this.tableLayoutPanel1.Controls.Add(this.lblCheats, 0, 5); - this.tableLayoutPanel1.Controls.Add(this.lblCheatDatabase, 1, 5); - this.tableLayoutPanel1.Controls.Add(this.lblSpecialThanks, 0, 6); - this.tableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill; - this.tableLayoutPanel1.Location = new System.Drawing.Point(3, 16); - this.tableLayoutPanel1.Name = "tableLayoutPanel1"; - this.tableLayoutPanel1.RowCount = 8; - this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle()); - this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle()); - this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle()); - this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle()); - this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle()); - this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle()); - this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle()); - this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F)); - this.tableLayoutPanel1.Size = new System.Drawing.Size(325, 170); - this.tableLayoutPanel1.TabIndex = 0; - // - // lblEmulation - // - this.lblEmulation.AutoSize = true; - this.lblEmulation.Location = new System.Drawing.Point(3, 85); - this.lblEmulation.Name = "lblEmulation"; - this.lblEmulation.Size = new System.Drawing.Size(56, 13); - this.lblEmulation.TabIndex = 8; - this.lblEmulation.Text = "Emulation:"; - // - // lblAudio - // - this.lblAudio.Anchor = System.Windows.Forms.AnchorStyles.Left; - this.lblAudio.AutoSize = true; - this.lblAudio.Location = new System.Drawing.Point(3, 69); - this.lblAudio.Name = "lblAudio"; - this.lblAudio.Size = new System.Drawing.Size(37, 13); - this.lblAudio.TabIndex = 5; - this.lblAudio.Text = "Audio:"; - // - // lblGeneral - // - this.lblGeneral.AutoSize = true; - this.lblGeneral.Location = new System.Drawing.Point(3, 18); - this.lblGeneral.Name = "lblGeneral"; - this.lblGeneral.Size = new System.Drawing.Size(47, 13); - this.lblGeneral.TabIndex = 0; - this.lblGeneral.Text = "General:"; - // - // flowLayoutPanel4 - // - this.flowLayoutPanel4.Controls.Add(this.ctrlLinkLabel1); - this.flowLayoutPanel4.Controls.Add(this.ctrlLinkLabel2); - this.flowLayoutPanel4.Controls.Add(this.ctrlLinkLabel3); - this.flowLayoutPanel4.Controls.Add(this.ctrlLinkLabel4); - this.flowLayoutPanel4.Controls.Add(this.ctrlLinkLabel5); - this.flowLayoutPanel4.Controls.Add(this.ctrlLinkLabel6); - this.flowLayoutPanel4.Controls.Add(this.ctrlLinkLabel7); - this.flowLayoutPanel4.Location = new System.Drawing.Point(62, 18); - this.flowLayoutPanel4.Margin = new System.Windows.Forms.Padding(0); - this.flowLayoutPanel4.Name = "flowLayoutPanel4"; - this.flowLayoutPanel4.Size = new System.Drawing.Size(263, 31); - this.flowLayoutPanel4.TabIndex = 2; - // - // ctrlLinkLabel1 - // - this.ctrlLinkLabel1.AutoSize = true; - this.ctrlLinkLabel1.Cursor = System.Windows.Forms.Cursors.Hand; - this.ctrlLinkLabel1.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Underline); - this.ctrlLinkLabel1.ForeColor = System.Drawing.Color.Blue; - this.ctrlLinkLabel1.Link = "https://github.com/richgel999/miniz"; - this.ctrlLinkLabel1.Location = new System.Drawing.Point(3, 0); - this.ctrlLinkLabel1.Name = "ctrlLinkLabel1"; - this.ctrlLinkLabel1.Size = new System.Drawing.Size(30, 13); - this.ctrlLinkLabel1.TabIndex = 0; - this.ctrlLinkLabel1.Text = "miniz"; - // - // ctrlLinkLabel2 - // - this.ctrlLinkLabel2.AutoSize = true; - this.ctrlLinkLabel2.Cursor = System.Windows.Forms.Cursors.Hand; - this.ctrlLinkLabel2.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Underline); - this.ctrlLinkLabel2.ForeColor = System.Drawing.Color.Blue; - this.ctrlLinkLabel2.Link = "https://lodev.org/lodepng/"; - this.ctrlLinkLabel2.Location = new System.Drawing.Point(39, 0); - this.ctrlLinkLabel2.Name = "ctrlLinkLabel2"; - this.ctrlLinkLabel2.Size = new System.Drawing.Size(50, 13); - this.ctrlLinkLabel2.TabIndex = 1; - this.ctrlLinkLabel2.Text = "picoPNG"; - // - // ctrlLinkLabel3 - // - this.ctrlLinkLabel3.AutoSize = true; - this.ctrlLinkLabel3.Cursor = System.Windows.Forms.Cursors.Hand; - this.ctrlLinkLabel3.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Underline); - this.ctrlLinkLabel3.ForeColor = System.Drawing.Color.Blue; - this.ctrlLinkLabel3.Link = "https://www.lua.org/"; - this.ctrlLinkLabel3.Location = new System.Drawing.Point(95, 0); - this.ctrlLinkLabel3.Name = "ctrlLinkLabel3"; - this.ctrlLinkLabel3.Size = new System.Drawing.Size(25, 13); - this.ctrlLinkLabel3.TabIndex = 2; - this.ctrlLinkLabel3.Text = "Lua"; - // - // ctrlLinkLabel4 - // - this.ctrlLinkLabel4.AutoSize = true; - this.ctrlLinkLabel4.Cursor = System.Windows.Forms.Cursors.Hand; - this.ctrlLinkLabel4.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Underline); - this.ctrlLinkLabel4.ForeColor = System.Drawing.Color.Blue; - this.ctrlLinkLabel4.Link = "https://www.7-zip.org/"; - this.ctrlLinkLabel4.Location = new System.Drawing.Point(126, 0); - this.ctrlLinkLabel4.Name = "ctrlLinkLabel4"; - this.ctrlLinkLabel4.Size = new System.Drawing.Size(31, 13); - this.ctrlLinkLabel4.TabIndex = 3; - this.ctrlLinkLabel4.Text = "7-Zip"; - // - // ctrlLinkLabel5 - // - this.ctrlLinkLabel5.AutoSize = true; - this.ctrlLinkLabel5.Cursor = System.Windows.Forms.Cursors.Hand; - this.ctrlLinkLabel5.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Underline); - this.ctrlLinkLabel5.ForeColor = System.Drawing.Color.Blue; - this.ctrlLinkLabel5.Link = "https://github.com/microsoft/DirectXTK"; - this.ctrlLinkLabel5.Location = new System.Drawing.Point(163, 0); - this.ctrlLinkLabel5.Name = "ctrlLinkLabel5"; - this.ctrlLinkLabel5.Size = new System.Drawing.Size(56, 13); - this.ctrlLinkLabel5.TabIndex = 4; - this.ctrlLinkLabel5.Text = "DirectXTK"; - // - // ctrlLinkLabel6 - // - this.ctrlLinkLabel6.AutoSize = true; - this.ctrlLinkLabel6.Cursor = System.Windows.Forms.Cursors.Hand; - this.ctrlLinkLabel6.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Underline); - this.ctrlLinkLabel6.ForeColor = System.Drawing.Color.Blue; - this.ctrlLinkLabel6.Link = "http://hexbox.sourceforge.net/"; - this.ctrlLinkLabel6.Location = new System.Drawing.Point(3, 13); - this.ctrlLinkLabel6.Name = "ctrlLinkLabel6"; - this.ctrlLinkLabel6.Size = new System.Drawing.Size(69, 13); - this.ctrlLinkLabel6.TabIndex = 5; - this.ctrlLinkLabel6.Text = "Be.HexEditor"; - // - // ctrlLinkLabel7 - // - this.ctrlLinkLabel7.AutoSize = true; - this.ctrlLinkLabel7.Cursor = System.Windows.Forms.Cursors.Hand; - this.ctrlLinkLabel7.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Underline); - this.ctrlLinkLabel7.ForeColor = System.Drawing.Color.Blue; - this.ctrlLinkLabel7.Link = "https://github.com/PavelTorgashov/FastColoredTextBox"; - this.ctrlLinkLabel7.Location = new System.Drawing.Point(78, 13); - this.ctrlLinkLabel7.Name = "ctrlLinkLabel7"; - this.ctrlLinkLabel7.Size = new System.Drawing.Size(102, 13); - this.ctrlLinkLabel7.TabIndex = 6; - this.ctrlLinkLabel7.Text = "FastColoredTextBox"; - // - // lblVideo - // - this.lblVideo.Anchor = System.Windows.Forms.AnchorStyles.Left; - this.lblVideo.AutoSize = true; - this.lblVideo.Location = new System.Drawing.Point(3, 51); - this.lblVideo.Name = "lblVideo"; - this.lblVideo.Size = new System.Drawing.Size(37, 13); - this.lblVideo.TabIndex = 3; - this.lblVideo.Text = "Video:"; - // - // flowLayoutPanel5 - // - this.flowLayoutPanel5.Controls.Add(this.ctrlLinkLabel9); - this.flowLayoutPanel5.Controls.Add(this.ctrlLinkLabel10); - this.flowLayoutPanel5.Controls.Add(this.ctrlLinkLabel11); - this.flowLayoutPanel5.Controls.Add(this.ctrlLinkLabel12); - this.flowLayoutPanel5.Dock = System.Windows.Forms.DockStyle.Fill; - this.flowLayoutPanel5.Location = new System.Drawing.Point(62, 49); - this.flowLayoutPanel5.Margin = new System.Windows.Forms.Padding(0); - this.flowLayoutPanel5.Name = "flowLayoutPanel5"; - this.flowLayoutPanel5.Size = new System.Drawing.Size(263, 18); - this.flowLayoutPanel5.TabIndex = 4; - // - // ctrlLinkLabel9 - // - this.ctrlLinkLabel9.AutoSize = true; - this.ctrlLinkLabel9.Cursor = System.Windows.Forms.Cursors.Hand; - this.ctrlLinkLabel9.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Underline); - this.ctrlLinkLabel9.ForeColor = System.Drawing.Color.Blue; - this.ctrlLinkLabel9.Link = "https://en.wikipedia.org/wiki/Hqx"; - this.ctrlLinkLabel9.Location = new System.Drawing.Point(3, 0); - this.ctrlLinkLabel9.Name = "ctrlLinkLabel9"; - this.ctrlLinkLabel9.Size = new System.Drawing.Size(30, 13); - this.ctrlLinkLabel9.TabIndex = 8; - this.ctrlLinkLabel9.Text = "HQX"; - // - // ctrlLinkLabel10 - // - this.ctrlLinkLabel10.AutoSize = true; - this.ctrlLinkLabel10.Cursor = System.Windows.Forms.Cursors.Hand; - this.ctrlLinkLabel10.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Underline); - this.ctrlLinkLabel10.ForeColor = System.Drawing.Color.Blue; - this.ctrlLinkLabel10.Link = "http://www.scale2x.it/"; - this.ctrlLinkLabel10.Location = new System.Drawing.Point(39, 0); - this.ctrlLinkLabel10.Name = "ctrlLinkLabel10"; - this.ctrlLinkLabel10.Size = new System.Drawing.Size(45, 13); - this.ctrlLinkLabel10.TabIndex = 9; - this.ctrlLinkLabel10.Text = "Scale2x"; - // - // ctrlLinkLabel11 - // - this.ctrlLinkLabel11.AutoSize = true; - this.ctrlLinkLabel11.Cursor = System.Windows.Forms.Cursors.Hand; - this.ctrlLinkLabel11.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Underline); - this.ctrlLinkLabel11.ForeColor = System.Drawing.Color.Blue; - this.ctrlLinkLabel11.Link = "https://vdnoort.home.xs4all.nl/emulation/2xsai/"; - this.ctrlLinkLabel11.Location = new System.Drawing.Point(90, 0); - this.ctrlLinkLabel11.Name = "ctrlLinkLabel11"; - this.ctrlLinkLabel11.Size = new System.Drawing.Size(85, 13); - this.ctrlLinkLabel11.TabIndex = 10; - this.ctrlLinkLabel11.Text = "Super Eagle/Sai"; - // - // ctrlLinkLabel12 - // - this.ctrlLinkLabel12.AutoSize = true; - this.ctrlLinkLabel12.Cursor = System.Windows.Forms.Cursors.Hand; - this.ctrlLinkLabel12.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Underline); - this.ctrlLinkLabel12.ForeColor = System.Drawing.Color.Blue; - this.ctrlLinkLabel12.Link = "https://sourceforge.net/projects/xbrz/"; - this.ctrlLinkLabel12.Location = new System.Drawing.Point(181, 0); - this.ctrlLinkLabel12.Name = "ctrlLinkLabel12"; - this.ctrlLinkLabel12.Size = new System.Drawing.Size(34, 13); - this.ctrlLinkLabel12.TabIndex = 11; - this.ctrlLinkLabel12.Text = "xBRZ"; - // - // flowLayoutPanel6 - // - this.flowLayoutPanel6.Controls.Add(this.ctrlLinkLabel13); - this.flowLayoutPanel6.Controls.Add(this.ctrlLinkLabel15); - this.flowLayoutPanel6.Dock = System.Windows.Forms.DockStyle.Fill; - this.flowLayoutPanel6.Location = new System.Drawing.Point(62, 67); - this.flowLayoutPanel6.Margin = new System.Windows.Forms.Padding(0); - this.flowLayoutPanel6.Name = "flowLayoutPanel6"; - this.flowLayoutPanel6.Size = new System.Drawing.Size(263, 18); - this.flowLayoutPanel6.TabIndex = 6; - // - // ctrlLinkLabel13 - // - this.ctrlLinkLabel13.AutoSize = true; - this.ctrlLinkLabel13.Cursor = System.Windows.Forms.Cursors.Hand; - this.ctrlLinkLabel13.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Underline); - this.ctrlLinkLabel13.ForeColor = System.Drawing.Color.Blue; - this.ctrlLinkLabel13.Link = "http://slack.net/~ant/libs/audio.html"; - this.ctrlLinkLabel13.Location = new System.Drawing.Point(3, 0); - this.ctrlLinkLabel13.Name = "ctrlLinkLabel13"; - this.ctrlLinkLabel13.Size = new System.Drawing.Size(82, 13); - this.ctrlLinkLabel13.TabIndex = 8; - this.ctrlLinkLabel13.Text = "blip_buf (blargg)"; - // - // ctrlLinkLabel15 - // - this.ctrlLinkLabel15.AutoSize = true; - this.ctrlLinkLabel15.Cursor = System.Windows.Forms.Cursors.Hand; - this.ctrlLinkLabel15.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Underline); - this.ctrlLinkLabel15.ForeColor = System.Drawing.Color.Blue; - this.ctrlLinkLabel15.Link = "https://github.com/nothings/stb"; - this.ctrlLinkLabel15.Location = new System.Drawing.Point(91, 0); - this.ctrlLinkLabel15.Name = "ctrlLinkLabel15"; - this.ctrlLinkLabel15.Size = new System.Drawing.Size(55, 13); - this.ctrlLinkLabel15.TabIndex = 9; - this.ctrlLinkLabel15.Text = "stb_vorbis"; - // - // lblUsedSoftware - // - this.lblUsedSoftware.AutoSize = true; - this.tableLayoutPanel1.SetColumnSpan(this.lblUsedSoftware, 2); - this.lblUsedSoftware.Location = new System.Drawing.Point(3, 0); - this.lblUsedSoftware.Name = "lblUsedSoftware"; - this.lblUsedSoftware.Padding = new System.Windows.Forms.Padding(0, 0, 0, 5); - this.lblUsedSoftware.Size = new System.Drawing.Size(198, 18); - this.lblUsedSoftware.TabIndex = 7; - this.lblUsedSoftware.Text = "This software uses the following libraries:"; - // - // flowLayoutPanel7 - // - this.flowLayoutPanel7.Controls.Add(this.ctrlLinkLabel16); - this.flowLayoutPanel7.Controls.Add(this.ctrlLinkLabel8); - this.flowLayoutPanel7.Controls.Add(this.ctrlLinkLabel14); - this.flowLayoutPanel7.Dock = System.Windows.Forms.DockStyle.Fill; - this.flowLayoutPanel7.Location = new System.Drawing.Point(62, 85); - this.flowLayoutPanel7.Margin = new System.Windows.Forms.Padding(0); - this.flowLayoutPanel7.Name = "flowLayoutPanel7"; - this.flowLayoutPanel7.Size = new System.Drawing.Size(263, 31); - this.flowLayoutPanel7.TabIndex = 9; - // - // ctrlLinkLabel8 - // - this.ctrlLinkLabel8.AutoSize = true; - this.ctrlLinkLabel8.Cursor = System.Windows.Forms.Cursors.Hand; - this.ctrlLinkLabel8.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Underline); - this.ctrlLinkLabel8.ForeColor = System.Drawing.Color.Blue; - this.ctrlLinkLabel8.Link = "http://slack.net/~ant/libs/ntsc.html"; - this.ctrlLinkLabel8.Location = new System.Drawing.Point(113, 0); - this.ctrlLinkLabel8.Name = "ctrlLinkLabel8"; - this.ctrlLinkLabel8.Size = new System.Drawing.Size(88, 13); - this.ctrlLinkLabel8.TabIndex = 7; - this.ctrlLinkLabel8.Text = "nes_ntsc (blargg)"; - // - // ctrlLinkLabel14 - // - this.ctrlLinkLabel14.AutoSize = true; - this.ctrlLinkLabel14.Cursor = System.Windows.Forms.Cursors.Hand; - this.ctrlLinkLabel14.Link = null; - this.ctrlLinkLabel14.Location = new System.Drawing.Point(3, 13); - this.ctrlLinkLabel14.Name = "ctrlLinkLabel14"; - this.ctrlLinkLabel14.Size = new System.Drawing.Size(162, 13); - this.ctrlLinkLabel14.TabIndex = 8; - this.ctrlLinkLabel14.Text = "VRC7 Audio (Mitsutaka Okazaki)"; - // - // ctrlLinkLabel16 - // - this.ctrlLinkLabel16.AutoSize = true; - this.ctrlLinkLabel16.Cursor = System.Windows.Forms.Cursors.Hand; - this.ctrlLinkLabel16.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Underline); - this.ctrlLinkLabel16.ForeColor = System.Drawing.Color.Blue; - this.ctrlLinkLabel16.Link = "http://www.qmtpro.com/~nes/nintendulator/"; - this.ctrlLinkLabel16.Location = new System.Drawing.Point(3, 0); - this.ctrlLinkLabel16.Name = "ctrlLinkLabel16"; - this.ctrlLinkLabel16.Size = new System.Drawing.Size(104, 13); - this.ctrlLinkLabel16.TabIndex = 9; - this.ctrlLinkLabel16.Text = "NSF BIOS (Quietust)"; - // - // lblCheats - // - this.lblCheats.Anchor = System.Windows.Forms.AnchorStyles.Left; - this.lblCheats.AutoSize = true; - this.lblCheats.Location = new System.Drawing.Point(3, 116); - this.lblCheats.Name = "lblCheats"; - this.lblCheats.Size = new System.Drawing.Size(43, 13); - this.lblCheats.TabIndex = 10; - this.lblCheats.Text = "Cheats:"; - // - // lblCheatDatabase - // - this.lblCheatDatabase.Anchor = System.Windows.Forms.AnchorStyles.Left; - this.lblCheatDatabase.AutoSize = true; - this.lblCheatDatabase.Location = new System.Drawing.Point(65, 116); - this.lblCheatDatabase.Name = "lblCheatDatabase"; - this.lblCheatDatabase.Size = new System.Drawing.Size(142, 13); - this.lblCheatDatabase.TabIndex = 11; - this.lblCheatDatabase.Text = "Mighty Mo (Cheat Database)"; - // - // lblSpecialThanks - // - this.lblSpecialThanks.AutoSize = true; - this.tableLayoutPanel1.SetColumnSpan(this.lblSpecialThanks, 2); - this.lblSpecialThanks.Location = new System.Drawing.Point(3, 139); - this.lblSpecialThanks.Margin = new System.Windows.Forms.Padding(3, 10, 3, 0); - this.lblSpecialThanks.Name = "lblSpecialThanks"; - this.lblSpecialThanks.Size = new System.Drawing.Size(298, 26); - this.lblSpecialThanks.TabIndex = 12; - this.lblSpecialThanks.Text = "And thank you to everybody who has contributed in any way! (donations, bug report" + + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(frmAbout)); + this.tableLayoutPanel = new System.Windows.Forms.TableLayoutPanel(); + this.grpAcknowledgements = new System.Windows.Forms.GroupBox(); + this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel(); + this.lblEmulation = new System.Windows.Forms.Label(); + this.lblAudio = new System.Windows.Forms.Label(); + this.lblGeneral = new System.Windows.Forms.Label(); + this.flowLayoutPanel4 = new System.Windows.Forms.FlowLayoutPanel(); + this.ctrlLinkLabel1 = new Mesen.GUI.Controls.ctrlLinkLabel(); + this.ctrlLinkLabel2 = new Mesen.GUI.Controls.ctrlLinkLabel(); + this.ctrlLinkLabel3 = new Mesen.GUI.Controls.ctrlLinkLabel(); + this.ctrlLinkLabel4 = new Mesen.GUI.Controls.ctrlLinkLabel(); + this.ctrlLinkLabel5 = new Mesen.GUI.Controls.ctrlLinkLabel(); + this.ctrlLinkLabel6 = new Mesen.GUI.Controls.ctrlLinkLabel(); + this.ctrlLinkLabel7 = new Mesen.GUI.Controls.ctrlLinkLabel(); + this.lblVideo = new System.Windows.Forms.Label(); + this.flowLayoutPanel5 = new System.Windows.Forms.FlowLayoutPanel(); + this.ctrlLinkLabel9 = new Mesen.GUI.Controls.ctrlLinkLabel(); + this.ctrlLinkLabel10 = new Mesen.GUI.Controls.ctrlLinkLabel(); + this.ctrlLinkLabel11 = new Mesen.GUI.Controls.ctrlLinkLabel(); + this.ctrlLinkLabel12 = new Mesen.GUI.Controls.ctrlLinkLabel(); + this.flowLayoutPanel6 = new System.Windows.Forms.FlowLayoutPanel(); + this.ctrlLinkLabel13 = new Mesen.GUI.Controls.ctrlLinkLabel(); + this.ctrlLinkLabel15 = new Mesen.GUI.Controls.ctrlLinkLabel(); + this.lblUsedSoftware = new System.Windows.Forms.Label(); + this.flowLayoutPanel7 = new System.Windows.Forms.FlowLayoutPanel(); + this.ctrlLinkLabel16 = new Mesen.GUI.Controls.ctrlLinkLabel(); + this.ctrlLinkLabel8 = new Mesen.GUI.Controls.ctrlLinkLabel(); + this.ctrlLinkLabel14 = new Mesen.GUI.Controls.ctrlLinkLabel(); + this.ctrlLinkLabel18 = new Mesen.GUI.Controls.ctrlLinkLabel(); + this.ctrlLinkLabel19 = new Mesen.GUI.Controls.ctrlLinkLabel(); + this.ctrlLinkLabel20 = new Mesen.GUI.Controls.ctrlLinkLabel(); + this.lblCheats = new System.Windows.Forms.Label(); + this.lblCheatDatabase = new System.Windows.Forms.Label(); + this.lblSpecialThanks = new System.Windows.Forms.Label(); + this.flowLayoutPanel3 = new System.Windows.Forms.FlowLayoutPanel(); + this.lblBuildDateLabel = new System.Windows.Forms.Label(); + this.lblBuildDate = new System.Windows.Forms.Label(); + this.logoPictureBox = new System.Windows.Forms.PictureBox(); + this.labelProductName = new System.Windows.Forms.Label(); + this.labelCopyright = new System.Windows.Forms.Label(); + this.flowLayoutPanel1 = new System.Windows.Forms.FlowLayoutPanel(); + this.lblWebsite = new System.Windows.Forms.Label(); + this.lblLink = new System.Windows.Forms.Label(); + this.okButton = new System.Windows.Forms.Button(); + this.picDonate = new System.Windows.Forms.PictureBox(); + this.lblDonate = new System.Windows.Forms.Label(); + this.flowLayoutPanel2 = new System.Windows.Forms.FlowLayoutPanel(); + this.labelVersion = new System.Windows.Forms.Label(); + this.lblMesenVersion = new System.Windows.Forms.Label(); + this.tableLayoutPanel.SuspendLayout(); + this.grpAcknowledgements.SuspendLayout(); + this.tableLayoutPanel1.SuspendLayout(); + this.flowLayoutPanel4.SuspendLayout(); + this.flowLayoutPanel5.SuspendLayout(); + this.flowLayoutPanel6.SuspendLayout(); + this.flowLayoutPanel7.SuspendLayout(); + this.flowLayoutPanel3.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.logoPictureBox)).BeginInit(); + this.flowLayoutPanel1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.picDonate)).BeginInit(); + this.flowLayoutPanel2.SuspendLayout(); + this.SuspendLayout(); + // + // tableLayoutPanel + // + this.tableLayoutPanel.AutoSize = true; + this.tableLayoutPanel.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink; + this.tableLayoutPanel.ColumnCount = 2; + this.tableLayoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 84F)); + this.tableLayoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F)); + this.tableLayoutPanel.Controls.Add(this.grpAcknowledgements, 0, 5); + this.tableLayoutPanel.Controls.Add(this.flowLayoutPanel3, 1, 2); + this.tableLayoutPanel.Controls.Add(this.logoPictureBox, 0, 0); + this.tableLayoutPanel.Controls.Add(this.labelProductName, 1, 0); + this.tableLayoutPanel.Controls.Add(this.labelCopyright, 1, 3); + this.tableLayoutPanel.Controls.Add(this.flowLayoutPanel1, 1, 4); + this.tableLayoutPanel.Controls.Add(this.okButton, 1, 7); + this.tableLayoutPanel.Controls.Add(this.picDonate, 0, 7); + this.tableLayoutPanel.Controls.Add(this.lblDonate, 0, 6); + this.tableLayoutPanel.Controls.Add(this.flowLayoutPanel2, 1, 1); + this.tableLayoutPanel.Dock = System.Windows.Forms.DockStyle.Fill; + this.tableLayoutPanel.Location = new System.Drawing.Point(5, 5); + this.tableLayoutPanel.Name = "tableLayoutPanel"; + this.tableLayoutPanel.RowCount = 8; + this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle()); + this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle()); + this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle()); + this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle()); + this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle()); + this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle()); + this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle()); + this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle()); + this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20F)); + this.tableLayoutPanel.Size = new System.Drawing.Size(337, 352); + this.tableLayoutPanel.TabIndex = 0; + // + // grpAcknowledgements + // + this.tableLayoutPanel.SetColumnSpan(this.grpAcknowledgements, 2); + this.grpAcknowledgements.Controls.Add(this.tableLayoutPanel1); + this.grpAcknowledgements.Dock = System.Windows.Forms.DockStyle.Fill; + this.grpAcknowledgements.Location = new System.Drawing.Point(3, 91); + this.grpAcknowledgements.Name = "grpAcknowledgements"; + this.grpAcknowledgements.Size = new System.Drawing.Size(331, 199); + this.grpAcknowledgements.TabIndex = 34; + this.grpAcknowledgements.TabStop = false; + this.grpAcknowledgements.Text = "Acknowledgements"; + // + // tableLayoutPanel1 + // + this.tableLayoutPanel1.ColumnCount = 2; + this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle()); + this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F)); + this.tableLayoutPanel1.Controls.Add(this.lblEmulation, 0, 4); + this.tableLayoutPanel1.Controls.Add(this.lblAudio, 0, 3); + this.tableLayoutPanel1.Controls.Add(this.lblGeneral, 0, 1); + this.tableLayoutPanel1.Controls.Add(this.flowLayoutPanel4, 1, 1); + this.tableLayoutPanel1.Controls.Add(this.lblVideo, 0, 2); + this.tableLayoutPanel1.Controls.Add(this.flowLayoutPanel5, 1, 2); + this.tableLayoutPanel1.Controls.Add(this.flowLayoutPanel6, 1, 3); + this.tableLayoutPanel1.Controls.Add(this.lblUsedSoftware, 0, 0); + this.tableLayoutPanel1.Controls.Add(this.flowLayoutPanel7, 1, 4); + this.tableLayoutPanel1.Controls.Add(this.lblCheats, 0, 5); + this.tableLayoutPanel1.Controls.Add(this.lblCheatDatabase, 1, 5); + this.tableLayoutPanel1.Controls.Add(this.lblSpecialThanks, 1, 6); + this.tableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.tableLayoutPanel1.Location = new System.Drawing.Point(3, 16); + this.tableLayoutPanel1.Name = "tableLayoutPanel1"; + this.tableLayoutPanel1.RowCount = 7; + this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle()); + this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle()); + this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle()); + this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle()); + this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 40F)); + this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle()); + this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle()); + this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle()); + this.tableLayoutPanel1.Size = new System.Drawing.Size(325, 180); + this.tableLayoutPanel1.TabIndex = 0; + // + // lblEmulation + // + this.lblEmulation.AutoSize = true; + this.lblEmulation.Location = new System.Drawing.Point(3, 85); + this.lblEmulation.Name = "lblEmulation"; + this.lblEmulation.Size = new System.Drawing.Size(56, 13); + this.lblEmulation.TabIndex = 8; + this.lblEmulation.Text = "Emulation:"; + // + // lblAudio + // + this.lblAudio.Anchor = System.Windows.Forms.AnchorStyles.Left; + this.lblAudio.AutoSize = true; + this.lblAudio.Location = new System.Drawing.Point(3, 69); + this.lblAudio.Name = "lblAudio"; + this.lblAudio.Size = new System.Drawing.Size(37, 13); + this.lblAudio.TabIndex = 5; + this.lblAudio.Text = "Audio:"; + // + // lblGeneral + // + this.lblGeneral.AutoSize = true; + this.lblGeneral.Location = new System.Drawing.Point(3, 18); + this.lblGeneral.Name = "lblGeneral"; + this.lblGeneral.Size = new System.Drawing.Size(47, 13); + this.lblGeneral.TabIndex = 0; + this.lblGeneral.Text = "General:"; + // + // flowLayoutPanel4 + // + this.flowLayoutPanel4.Controls.Add(this.ctrlLinkLabel1); + this.flowLayoutPanel4.Controls.Add(this.ctrlLinkLabel2); + this.flowLayoutPanel4.Controls.Add(this.ctrlLinkLabel3); + this.flowLayoutPanel4.Controls.Add(this.ctrlLinkLabel4); + this.flowLayoutPanel4.Controls.Add(this.ctrlLinkLabel5); + this.flowLayoutPanel4.Controls.Add(this.ctrlLinkLabel6); + this.flowLayoutPanel4.Controls.Add(this.ctrlLinkLabel7); + this.flowLayoutPanel4.Location = new System.Drawing.Point(62, 18); + this.flowLayoutPanel4.Margin = new System.Windows.Forms.Padding(0); + this.flowLayoutPanel4.Name = "flowLayoutPanel4"; + this.flowLayoutPanel4.Size = new System.Drawing.Size(263, 31); + this.flowLayoutPanel4.TabIndex = 2; + // + // ctrlLinkLabel1 + // + this.ctrlLinkLabel1.AutoSize = true; + this.ctrlLinkLabel1.Cursor = System.Windows.Forms.Cursors.Hand; + this.ctrlLinkLabel1.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Underline); + this.ctrlLinkLabel1.ForeColor = System.Drawing.Color.Blue; + this.ctrlLinkLabel1.Link = "https://github.com/richgel999/miniz"; + this.ctrlLinkLabel1.Location = new System.Drawing.Point(3, 0); + this.ctrlLinkLabel1.Name = "ctrlLinkLabel1"; + this.ctrlLinkLabel1.Size = new System.Drawing.Size(30, 13); + this.ctrlLinkLabel1.TabIndex = 0; + this.ctrlLinkLabel1.Text = "miniz"; + // + // ctrlLinkLabel2 + // + this.ctrlLinkLabel2.AutoSize = true; + this.ctrlLinkLabel2.Cursor = System.Windows.Forms.Cursors.Hand; + this.ctrlLinkLabel2.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Underline); + this.ctrlLinkLabel2.ForeColor = System.Drawing.Color.Blue; + this.ctrlLinkLabel2.Link = "https://lodev.org/lodepng/"; + this.ctrlLinkLabel2.Location = new System.Drawing.Point(39, 0); + this.ctrlLinkLabel2.Name = "ctrlLinkLabel2"; + this.ctrlLinkLabel2.Size = new System.Drawing.Size(50, 13); + this.ctrlLinkLabel2.TabIndex = 1; + this.ctrlLinkLabel2.Text = "picoPNG"; + // + // ctrlLinkLabel3 + // + this.ctrlLinkLabel3.AutoSize = true; + this.ctrlLinkLabel3.Cursor = System.Windows.Forms.Cursors.Hand; + this.ctrlLinkLabel3.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Underline); + this.ctrlLinkLabel3.ForeColor = System.Drawing.Color.Blue; + this.ctrlLinkLabel3.Link = "https://www.lua.org/"; + this.ctrlLinkLabel3.Location = new System.Drawing.Point(95, 0); + this.ctrlLinkLabel3.Name = "ctrlLinkLabel3"; + this.ctrlLinkLabel3.Size = new System.Drawing.Size(25, 13); + this.ctrlLinkLabel3.TabIndex = 2; + this.ctrlLinkLabel3.Text = "Lua"; + // + // ctrlLinkLabel4 + // + this.ctrlLinkLabel4.AutoSize = true; + this.ctrlLinkLabel4.Cursor = System.Windows.Forms.Cursors.Hand; + this.ctrlLinkLabel4.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Underline); + this.ctrlLinkLabel4.ForeColor = System.Drawing.Color.Blue; + this.ctrlLinkLabel4.Link = "https://www.7-zip.org/"; + this.ctrlLinkLabel4.Location = new System.Drawing.Point(126, 0); + this.ctrlLinkLabel4.Name = "ctrlLinkLabel4"; + this.ctrlLinkLabel4.Size = new System.Drawing.Size(31, 13); + this.ctrlLinkLabel4.TabIndex = 3; + this.ctrlLinkLabel4.Text = "7-Zip"; + // + // ctrlLinkLabel5 + // + this.ctrlLinkLabel5.AutoSize = true; + this.ctrlLinkLabel5.Cursor = System.Windows.Forms.Cursors.Hand; + this.ctrlLinkLabel5.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Underline); + this.ctrlLinkLabel5.ForeColor = System.Drawing.Color.Blue; + this.ctrlLinkLabel5.Link = "https://github.com/microsoft/DirectXTK"; + this.ctrlLinkLabel5.Location = new System.Drawing.Point(163, 0); + this.ctrlLinkLabel5.Name = "ctrlLinkLabel5"; + this.ctrlLinkLabel5.Size = new System.Drawing.Size(56, 13); + this.ctrlLinkLabel5.TabIndex = 4; + this.ctrlLinkLabel5.Text = "DirectXTK"; + // + // ctrlLinkLabel6 + // + this.ctrlLinkLabel6.AutoSize = true; + this.ctrlLinkLabel6.Cursor = System.Windows.Forms.Cursors.Hand; + this.ctrlLinkLabel6.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Underline); + this.ctrlLinkLabel6.ForeColor = System.Drawing.Color.Blue; + this.ctrlLinkLabel6.Link = "http://hexbox.sourceforge.net/"; + this.ctrlLinkLabel6.Location = new System.Drawing.Point(3, 13); + this.ctrlLinkLabel6.Name = "ctrlLinkLabel6"; + this.ctrlLinkLabel6.Size = new System.Drawing.Size(69, 13); + this.ctrlLinkLabel6.TabIndex = 5; + this.ctrlLinkLabel6.Text = "Be.HexEditor"; + // + // ctrlLinkLabel7 + // + this.ctrlLinkLabel7.AutoSize = true; + this.ctrlLinkLabel7.Cursor = System.Windows.Forms.Cursors.Hand; + this.ctrlLinkLabel7.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Underline); + this.ctrlLinkLabel7.ForeColor = System.Drawing.Color.Blue; + this.ctrlLinkLabel7.Link = "https://github.com/PavelTorgashov/FastColoredTextBox"; + this.ctrlLinkLabel7.Location = new System.Drawing.Point(78, 13); + this.ctrlLinkLabel7.Name = "ctrlLinkLabel7"; + this.ctrlLinkLabel7.Size = new System.Drawing.Size(102, 13); + this.ctrlLinkLabel7.TabIndex = 6; + this.ctrlLinkLabel7.Text = "FastColoredTextBox"; + // + // lblVideo + // + this.lblVideo.Anchor = System.Windows.Forms.AnchorStyles.Left; + this.lblVideo.AutoSize = true; + this.lblVideo.Location = new System.Drawing.Point(3, 51); + this.lblVideo.Name = "lblVideo"; + this.lblVideo.Size = new System.Drawing.Size(37, 13); + this.lblVideo.TabIndex = 3; + this.lblVideo.Text = "Video:"; + // + // flowLayoutPanel5 + // + this.flowLayoutPanel5.Controls.Add(this.ctrlLinkLabel9); + this.flowLayoutPanel5.Controls.Add(this.ctrlLinkLabel10); + this.flowLayoutPanel5.Controls.Add(this.ctrlLinkLabel11); + this.flowLayoutPanel5.Controls.Add(this.ctrlLinkLabel12); + this.flowLayoutPanel5.Dock = System.Windows.Forms.DockStyle.Fill; + this.flowLayoutPanel5.Location = new System.Drawing.Point(62, 49); + this.flowLayoutPanel5.Margin = new System.Windows.Forms.Padding(0); + this.flowLayoutPanel5.Name = "flowLayoutPanel5"; + this.flowLayoutPanel5.Size = new System.Drawing.Size(263, 18); + this.flowLayoutPanel5.TabIndex = 4; + // + // ctrlLinkLabel9 + // + this.ctrlLinkLabel9.AutoSize = true; + this.ctrlLinkLabel9.Cursor = System.Windows.Forms.Cursors.Hand; + this.ctrlLinkLabel9.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Underline); + this.ctrlLinkLabel9.ForeColor = System.Drawing.Color.Blue; + this.ctrlLinkLabel9.Link = "https://en.wikipedia.org/wiki/Hqx"; + this.ctrlLinkLabel9.Location = new System.Drawing.Point(3, 0); + this.ctrlLinkLabel9.Name = "ctrlLinkLabel9"; + this.ctrlLinkLabel9.Size = new System.Drawing.Size(30, 13); + this.ctrlLinkLabel9.TabIndex = 8; + this.ctrlLinkLabel9.Text = "HQX"; + // + // ctrlLinkLabel10 + // + this.ctrlLinkLabel10.AutoSize = true; + this.ctrlLinkLabel10.Cursor = System.Windows.Forms.Cursors.Hand; + this.ctrlLinkLabel10.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Underline); + this.ctrlLinkLabel10.ForeColor = System.Drawing.Color.Blue; + this.ctrlLinkLabel10.Link = "http://www.scale2x.it/"; + this.ctrlLinkLabel10.Location = new System.Drawing.Point(39, 0); + this.ctrlLinkLabel10.Name = "ctrlLinkLabel10"; + this.ctrlLinkLabel10.Size = new System.Drawing.Size(45, 13); + this.ctrlLinkLabel10.TabIndex = 9; + this.ctrlLinkLabel10.Text = "Scale2x"; + // + // ctrlLinkLabel11 + // + this.ctrlLinkLabel11.AutoSize = true; + this.ctrlLinkLabel11.Cursor = System.Windows.Forms.Cursors.Hand; + this.ctrlLinkLabel11.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Underline); + this.ctrlLinkLabel11.ForeColor = System.Drawing.Color.Blue; + this.ctrlLinkLabel11.Link = "https://vdnoort.home.xs4all.nl/emulation/2xsai/"; + this.ctrlLinkLabel11.Location = new System.Drawing.Point(90, 0); + this.ctrlLinkLabel11.Name = "ctrlLinkLabel11"; + this.ctrlLinkLabel11.Size = new System.Drawing.Size(85, 13); + this.ctrlLinkLabel11.TabIndex = 10; + this.ctrlLinkLabel11.Text = "Super Eagle/Sai"; + // + // ctrlLinkLabel12 + // + this.ctrlLinkLabel12.AutoSize = true; + this.ctrlLinkLabel12.Cursor = System.Windows.Forms.Cursors.Hand; + this.ctrlLinkLabel12.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Underline); + this.ctrlLinkLabel12.ForeColor = System.Drawing.Color.Blue; + this.ctrlLinkLabel12.Link = "https://sourceforge.net/projects/xbrz/"; + this.ctrlLinkLabel12.Location = new System.Drawing.Point(181, 0); + this.ctrlLinkLabel12.Name = "ctrlLinkLabel12"; + this.ctrlLinkLabel12.Size = new System.Drawing.Size(34, 13); + this.ctrlLinkLabel12.TabIndex = 11; + this.ctrlLinkLabel12.Text = "xBRZ"; + // + // flowLayoutPanel6 + // + this.flowLayoutPanel6.Controls.Add(this.ctrlLinkLabel13); + this.flowLayoutPanel6.Controls.Add(this.ctrlLinkLabel15); + this.flowLayoutPanel6.Dock = System.Windows.Forms.DockStyle.Fill; + this.flowLayoutPanel6.Location = new System.Drawing.Point(62, 67); + this.flowLayoutPanel6.Margin = new System.Windows.Forms.Padding(0); + this.flowLayoutPanel6.Name = "flowLayoutPanel6"; + this.flowLayoutPanel6.Size = new System.Drawing.Size(263, 18); + this.flowLayoutPanel6.TabIndex = 6; + // + // ctrlLinkLabel13 + // + this.ctrlLinkLabel13.AutoSize = true; + this.ctrlLinkLabel13.Cursor = System.Windows.Forms.Cursors.Hand; + this.ctrlLinkLabel13.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Underline); + this.ctrlLinkLabel13.ForeColor = System.Drawing.Color.Blue; + this.ctrlLinkLabel13.Link = "http://slack.net/~ant/libs/audio.html"; + this.ctrlLinkLabel13.Location = new System.Drawing.Point(3, 0); + this.ctrlLinkLabel13.Name = "ctrlLinkLabel13"; + this.ctrlLinkLabel13.Size = new System.Drawing.Size(82, 13); + this.ctrlLinkLabel13.TabIndex = 8; + this.ctrlLinkLabel13.Text = "blip_buf (blargg)"; + // + // ctrlLinkLabel15 + // + this.ctrlLinkLabel15.AutoSize = true; + this.ctrlLinkLabel15.Cursor = System.Windows.Forms.Cursors.Hand; + this.ctrlLinkLabel15.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Underline); + this.ctrlLinkLabel15.ForeColor = System.Drawing.Color.Blue; + this.ctrlLinkLabel15.Link = "https://github.com/nothings/stb"; + this.ctrlLinkLabel15.Location = new System.Drawing.Point(91, 0); + this.ctrlLinkLabel15.Name = "ctrlLinkLabel15"; + this.ctrlLinkLabel15.Size = new System.Drawing.Size(55, 13); + this.ctrlLinkLabel15.TabIndex = 9; + this.ctrlLinkLabel15.Text = "stb_vorbis"; + // + // lblUsedSoftware + // + this.lblUsedSoftware.AutoSize = true; + this.tableLayoutPanel1.SetColumnSpan(this.lblUsedSoftware, 2); + this.lblUsedSoftware.Location = new System.Drawing.Point(3, 0); + this.lblUsedSoftware.Name = "lblUsedSoftware"; + this.lblUsedSoftware.Padding = new System.Windows.Forms.Padding(0, 0, 0, 5); + this.lblUsedSoftware.Size = new System.Drawing.Size(198, 18); + this.lblUsedSoftware.TabIndex = 7; + this.lblUsedSoftware.Text = "This software uses the following libraries:"; + // + // flowLayoutPanel7 + // + this.flowLayoutPanel7.Controls.Add(this.ctrlLinkLabel16); + this.flowLayoutPanel7.Controls.Add(this.ctrlLinkLabel8); + this.flowLayoutPanel7.Controls.Add(this.ctrlLinkLabel14); + this.flowLayoutPanel7.Controls.Add(this.ctrlLinkLabel18); + this.flowLayoutPanel7.Controls.Add(this.ctrlLinkLabel19); + this.flowLayoutPanel7.Controls.Add(this.ctrlLinkLabel20); + this.flowLayoutPanel7.Dock = System.Windows.Forms.DockStyle.Fill; + this.flowLayoutPanel7.Location = new System.Drawing.Point(62, 85); + this.flowLayoutPanel7.Margin = new System.Windows.Forms.Padding(0); + this.flowLayoutPanel7.Name = "flowLayoutPanel7"; + this.flowLayoutPanel7.Size = new System.Drawing.Size(263, 40); + this.flowLayoutPanel7.TabIndex = 9; + // + // ctrlLinkLabel16 + // + this.ctrlLinkLabel16.AutoSize = true; + this.ctrlLinkLabel16.Cursor = System.Windows.Forms.Cursors.Hand; + this.ctrlLinkLabel16.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Underline); + this.ctrlLinkLabel16.ForeColor = System.Drawing.Color.Blue; + this.ctrlLinkLabel16.Link = "http://www.qmtpro.com/~nes/nintendulator/"; + this.ctrlLinkLabel16.Location = new System.Drawing.Point(3, 0); + this.ctrlLinkLabel16.Name = "ctrlLinkLabel16"; + this.ctrlLinkLabel16.Size = new System.Drawing.Size(104, 13); + this.ctrlLinkLabel16.TabIndex = 9; + this.ctrlLinkLabel16.Text = "NSF BIOS (Quietust)"; + // + // ctrlLinkLabel8 + // + this.ctrlLinkLabel8.AutoSize = true; + this.ctrlLinkLabel8.Cursor = System.Windows.Forms.Cursors.Hand; + this.ctrlLinkLabel8.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Underline); + this.ctrlLinkLabel8.ForeColor = System.Drawing.Color.Blue; + this.ctrlLinkLabel8.Link = "http://slack.net/~ant/libs/ntsc.html"; + this.ctrlLinkLabel8.Location = new System.Drawing.Point(113, 0); + this.ctrlLinkLabel8.Name = "ctrlLinkLabel8"; + this.ctrlLinkLabel8.Size = new System.Drawing.Size(88, 13); + this.ctrlLinkLabel8.TabIndex = 7; + this.ctrlLinkLabel8.Text = "nes_ntsc (blargg)"; + // + // ctrlLinkLabel14 + // + this.ctrlLinkLabel14.AutoSize = true; + this.ctrlLinkLabel14.Cursor = System.Windows.Forms.Cursors.Hand; + this.ctrlLinkLabel14.Link = null; + this.ctrlLinkLabel14.Location = new System.Drawing.Point(3, 13); + this.ctrlLinkLabel14.Name = "ctrlLinkLabel14"; + this.ctrlLinkLabel14.Size = new System.Drawing.Size(162, 13); + this.ctrlLinkLabel14.TabIndex = 8; + this.ctrlLinkLabel14.Text = "VRC7 Audio (Mitsutaka Okazaki)"; + // + // ctrlLinkLabel18 + // + this.ctrlLinkLabel18.AutoSize = true; + this.ctrlLinkLabel18.Cursor = System.Windows.Forms.Cursors.Hand; + this.ctrlLinkLabel18.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Underline); + this.ctrlLinkLabel18.ForeColor = System.Drawing.Color.Blue; + this.ctrlLinkLabel18.Link = "https://github.com/nukeykt/Nuked-OPN2"; + this.ctrlLinkLabel18.Location = new System.Drawing.Point(171, 13); + this.ctrlLinkLabel18.Name = "ctrlLinkLabel18"; + this.ctrlLinkLabel18.Size = new System.Drawing.Size(71, 13); + this.ctrlLinkLabel18.TabIndex = 8; + this.ctrlLinkLabel18.Text = "Nuked-OPN2"; + // + // ctrlLinkLabel19 + // + this.ctrlLinkLabel19.AutoSize = true; + this.ctrlLinkLabel19.Cursor = System.Windows.Forms.Cursors.Hand; + this.ctrlLinkLabel19.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Underline); + this.ctrlLinkLabel19.ForeColor = System.Drawing.Color.Blue; + this.ctrlLinkLabel19.Link = "https://github.com/nukeykt/Nuked-OPLL"; + this.ctrlLinkLabel19.Location = new System.Drawing.Point(3, 26); + this.ctrlLinkLabel19.Name = "ctrlLinkLabel19"; + this.ctrlLinkLabel19.Size = new System.Drawing.Size(69, 13); + this.ctrlLinkLabel19.TabIndex = 8; + this.ctrlLinkLabel19.Text = "Nuked-OPLL"; + // + // ctrlLinkLabel20 + // + this.ctrlLinkLabel20.AutoSize = true; + this.ctrlLinkLabel20.Cursor = System.Windows.Forms.Cursors.Hand; + this.ctrlLinkLabel20.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Underline); + this.ctrlLinkLabel20.ForeColor = System.Drawing.Color.Blue; + this.ctrlLinkLabel20.Link = "https://github.com/digital-sound-antiques/emu2149"; + this.ctrlLinkLabel20.Location = new System.Drawing.Point(78, 26); + this.ctrlLinkLabel20.Name = "ctrlLinkLabel20"; + this.ctrlLinkLabel20.Size = new System.Drawing.Size(51, 13); + this.ctrlLinkLabel20.TabIndex = 8; + this.ctrlLinkLabel20.Text = "emu2149"; + // + // lblCheats + // + this.lblCheats.Anchor = System.Windows.Forms.AnchorStyles.Left; + this.lblCheats.AutoSize = true; + this.lblCheats.Location = new System.Drawing.Point(3, 125); + this.lblCheats.Name = "lblCheats"; + this.lblCheats.Size = new System.Drawing.Size(43, 13); + this.lblCheats.TabIndex = 10; + this.lblCheats.Text = "Cheats:"; + // + // lblCheatDatabase + // + this.lblCheatDatabase.Anchor = System.Windows.Forms.AnchorStyles.Left; + this.lblCheatDatabase.AutoSize = true; + this.lblCheatDatabase.Location = new System.Drawing.Point(65, 125); + this.lblCheatDatabase.Name = "lblCheatDatabase"; + this.lblCheatDatabase.Size = new System.Drawing.Size(142, 13); + this.lblCheatDatabase.TabIndex = 11; + this.lblCheatDatabase.Text = "Mighty Mo (Cheat Database)"; + // + // lblSpecialThanks + // + this.lblSpecialThanks.AutoSize = true; + this.tableLayoutPanel1.SetColumnSpan(this.lblSpecialThanks, 2); + this.lblSpecialThanks.Location = new System.Drawing.Point(3, 148); + this.lblSpecialThanks.Margin = new System.Windows.Forms.Padding(3, 10, 3, 0); + this.lblSpecialThanks.Name = "lblSpecialThanks"; + this.lblSpecialThanks.Size = new System.Drawing.Size(298, 26); + this.lblSpecialThanks.TabIndex = 12; + this.lblSpecialThanks.Text = "And thank you to everybody who has contributed in any way! (donations, bug report" + "s, testing, sharing information, etc.)"; - // - // flowLayoutPanel3 - // - this.flowLayoutPanel3.Controls.Add(this.lblBuildDateLabel); - this.flowLayoutPanel3.Controls.Add(this.lblBuildDate); - this.flowLayoutPanel3.Location = new System.Drawing.Point(84, 38); - this.flowLayoutPanel3.Margin = new System.Windows.Forms.Padding(0, 3, 0, 0); - this.flowLayoutPanel3.Name = "flowLayoutPanel3"; - this.flowLayoutPanel3.Size = new System.Drawing.Size(250, 15); - this.flowLayoutPanel3.TabIndex = 32; - // - // lblBuildDateLabel - // - this.lblBuildDateLabel.Anchor = System.Windows.Forms.AnchorStyles.Left; - this.lblBuildDateLabel.AutoSize = true; - this.lblBuildDateLabel.Location = new System.Drawing.Point(6, 0); - this.lblBuildDateLabel.Margin = new System.Windows.Forms.Padding(6, 0, 3, 0); - this.lblBuildDateLabel.Name = "lblBuildDateLabel"; - this.lblBuildDateLabel.Size = new System.Drawing.Size(59, 13); - this.lblBuildDateLabel.TabIndex = 0; - this.lblBuildDateLabel.Text = "Build Date:"; - this.lblBuildDateLabel.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; - // - // lblBuildDate - // - this.lblBuildDate.Anchor = System.Windows.Forms.AnchorStyles.Left; - this.lblBuildDate.AutoSize = true; - this.lblBuildDate.Location = new System.Drawing.Point(71, 0); - this.lblBuildDate.Name = "lblBuildDate"; - this.lblBuildDate.Size = new System.Drawing.Size(65, 13); - this.lblBuildDate.TabIndex = 1; - this.lblBuildDate.Text = ""; - // - // logoPictureBox - // - this.logoPictureBox.Anchor = System.Windows.Forms.AnchorStyles.Top; - this.logoPictureBox.Image = global::Mesen.GUI.Properties.Resources.MesenLogo; - this.logoPictureBox.Location = new System.Drawing.Point(12, 12); - this.logoPictureBox.Margin = new System.Windows.Forms.Padding(4, 12, 0, 5); - this.logoPictureBox.Name = "logoPictureBox"; - this.tableLayoutPanel.SetRowSpan(this.logoPictureBox, 5); - this.logoPictureBox.Size = new System.Drawing.Size(64, 65); - this.logoPictureBox.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage; - this.logoPictureBox.TabIndex = 12; - this.logoPictureBox.TabStop = false; - // - // labelProductName - // - this.labelProductName.Dock = System.Windows.Forms.DockStyle.Fill; - this.labelProductName.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.labelProductName.Location = new System.Drawing.Point(90, 0); - this.labelProductName.Margin = new System.Windows.Forms.Padding(6, 0, 3, 0); - this.labelProductName.Name = "labelProductName"; - this.labelProductName.Size = new System.Drawing.Size(244, 17); - this.labelProductName.TabIndex = 19; - this.labelProductName.Text = "Mesen"; - this.labelProductName.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; - // - // labelCopyright - // - this.labelCopyright.Dock = System.Windows.Forms.DockStyle.Fill; - this.labelCopyright.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.labelCopyright.Location = new System.Drawing.Point(90, 53); - this.labelCopyright.Margin = new System.Windows.Forms.Padding(6, 0, 3, 0); - this.labelCopyright.Name = "labelCopyright"; - this.labelCopyright.Size = new System.Drawing.Size(244, 17); - this.labelCopyright.TabIndex = 21; - this.labelCopyright.Text = "© 2020 M. Bibaud (aka Sour)"; - this.labelCopyright.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; - // - // flowLayoutPanel1 - // - this.flowLayoutPanel1.Controls.Add(this.lblWebsite); - this.flowLayoutPanel1.Controls.Add(this.lblLink); - this.flowLayoutPanel1.Location = new System.Drawing.Point(84, 70); - this.flowLayoutPanel1.Margin = new System.Windows.Forms.Padding(0); - this.flowLayoutPanel1.Name = "flowLayoutPanel1"; - this.flowLayoutPanel1.Size = new System.Drawing.Size(236, 18); - this.flowLayoutPanel1.TabIndex = 26; - // - // lblWebsite - // - this.lblWebsite.AutoSize = true; - this.lblWebsite.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.lblWebsite.Location = new System.Drawing.Point(6, 0); - this.lblWebsite.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); - this.lblWebsite.Name = "lblWebsite"; - this.lblWebsite.Size = new System.Drawing.Size(61, 16); - this.lblWebsite.TabIndex = 25; - this.lblWebsite.Text = "Website:"; - this.lblWebsite.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; - // - // lblLink - // - this.lblLink.AutoSize = true; - this.lblLink.Cursor = System.Windows.Forms.Cursors.Hand; - this.lblLink.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Underline, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.lblLink.ForeColor = System.Drawing.Color.Blue; - this.lblLink.Location = new System.Drawing.Point(67, 2); - this.lblLink.Margin = new System.Windows.Forms.Padding(0, 2, 3, 0); - this.lblLink.Name = "lblLink"; - this.lblLink.Size = new System.Drawing.Size(80, 13); - this.lblLink.TabIndex = 26; - this.lblLink.Text = "www.mesen.ca"; - this.lblLink.Click += new System.EventHandler(this.lblLink_Click); - // - // okButton - // - this.okButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); - this.okButton.DialogResult = System.Windows.Forms.DialogResult.Cancel; - this.okButton.Location = new System.Drawing.Point(259, 317); - this.okButton.Name = "okButton"; - this.okButton.Size = new System.Drawing.Size(75, 23); - this.okButton.TabIndex = 24; - this.okButton.Text = "&OK"; - // - // picDonate - // - this.picDonate.Anchor = System.Windows.Forms.AnchorStyles.Left; - this.picDonate.Cursor = System.Windows.Forms.Cursors.Hand; - this.picDonate.Image = ((System.Drawing.Image)(resources.GetObject("picDonate.Image"))); - this.picDonate.Location = new System.Drawing.Point(3, 317); - this.picDonate.Name = "picDonate"; - this.picDonate.Size = new System.Drawing.Size(78, 22); - this.picDonate.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage; - this.picDonate.TabIndex = 29; - this.picDonate.TabStop = false; - this.picDonate.Click += new System.EventHandler(this.picDonate_Click); - // - // lblDonate - // - this.lblDonate.AutoSize = true; - this.tableLayoutPanel.SetColumnSpan(this.lblDonate, 2); - this.lblDonate.Location = new System.Drawing.Point(0, 288); - this.lblDonate.Margin = new System.Windows.Forms.Padding(0, 5, 0, 0); - this.lblDonate.Name = "lblDonate"; - this.lblDonate.Size = new System.Drawing.Size(271, 26); - this.lblDonate.TabIndex = 30; - this.lblDonate.Text = "If you want to support Mesen, please consider donating.\r\nThank you for your suppo" + + // + // flowLayoutPanel3 + // + this.flowLayoutPanel3.Controls.Add(this.lblBuildDateLabel); + this.flowLayoutPanel3.Controls.Add(this.lblBuildDate); + this.flowLayoutPanel3.Location = new System.Drawing.Point(84, 38); + this.flowLayoutPanel3.Margin = new System.Windows.Forms.Padding(0, 3, 0, 0); + this.flowLayoutPanel3.Name = "flowLayoutPanel3"; + this.flowLayoutPanel3.Size = new System.Drawing.Size(250, 15); + this.flowLayoutPanel3.TabIndex = 32; + // + // lblBuildDateLabel + // + this.lblBuildDateLabel.Anchor = System.Windows.Forms.AnchorStyles.Left; + this.lblBuildDateLabel.AutoSize = true; + this.lblBuildDateLabel.Location = new System.Drawing.Point(6, 0); + this.lblBuildDateLabel.Margin = new System.Windows.Forms.Padding(6, 0, 3, 0); + this.lblBuildDateLabel.Name = "lblBuildDateLabel"; + this.lblBuildDateLabel.Size = new System.Drawing.Size(59, 13); + this.lblBuildDateLabel.TabIndex = 0; + this.lblBuildDateLabel.Text = "Build Date:"; + this.lblBuildDateLabel.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // lblBuildDate + // + this.lblBuildDate.Anchor = System.Windows.Forms.AnchorStyles.Left; + this.lblBuildDate.AutoSize = true; + this.lblBuildDate.Location = new System.Drawing.Point(71, 0); + this.lblBuildDate.Name = "lblBuildDate"; + this.lblBuildDate.Size = new System.Drawing.Size(65, 13); + this.lblBuildDate.TabIndex = 1; + this.lblBuildDate.Text = ""; + // + // logoPictureBox + // + this.logoPictureBox.Anchor = System.Windows.Forms.AnchorStyles.Top; + this.logoPictureBox.Image = global::Mesen.GUI.Properties.Resources.MesenLogo; + this.logoPictureBox.Location = new System.Drawing.Point(12, 12); + this.logoPictureBox.Margin = new System.Windows.Forms.Padding(4, 12, 0, 5); + this.logoPictureBox.Name = "logoPictureBox"; + this.tableLayoutPanel.SetRowSpan(this.logoPictureBox, 5); + this.logoPictureBox.Size = new System.Drawing.Size(64, 65); + this.logoPictureBox.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage; + this.logoPictureBox.TabIndex = 12; + this.logoPictureBox.TabStop = false; + // + // labelProductName + // + this.labelProductName.Dock = System.Windows.Forms.DockStyle.Fill; + this.labelProductName.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.labelProductName.Location = new System.Drawing.Point(90, 0); + this.labelProductName.Margin = new System.Windows.Forms.Padding(6, 0, 3, 0); + this.labelProductName.Name = "labelProductName"; + this.labelProductName.Size = new System.Drawing.Size(244, 17); + this.labelProductName.TabIndex = 19; + this.labelProductName.Text = "Mesen"; + this.labelProductName.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // labelCopyright + // + this.labelCopyright.Dock = System.Windows.Forms.DockStyle.Fill; + this.labelCopyright.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.labelCopyright.Location = new System.Drawing.Point(90, 53); + this.labelCopyright.Margin = new System.Windows.Forms.Padding(6, 0, 3, 0); + this.labelCopyright.Name = "labelCopyright"; + this.labelCopyright.Size = new System.Drawing.Size(244, 17); + this.labelCopyright.TabIndex = 21; + this.labelCopyright.Text = "© 2020 M. Bibaud (aka Sour)"; + this.labelCopyright.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // flowLayoutPanel1 + // + this.flowLayoutPanel1.Controls.Add(this.lblWebsite); + this.flowLayoutPanel1.Controls.Add(this.lblLink); + this.flowLayoutPanel1.Location = new System.Drawing.Point(84, 70); + this.flowLayoutPanel1.Margin = new System.Windows.Forms.Padding(0); + this.flowLayoutPanel1.Name = "flowLayoutPanel1"; + this.flowLayoutPanel1.Size = new System.Drawing.Size(236, 18); + this.flowLayoutPanel1.TabIndex = 26; + // + // lblWebsite + // + this.lblWebsite.AutoSize = true; + this.lblWebsite.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.lblWebsite.Location = new System.Drawing.Point(6, 0); + this.lblWebsite.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); + this.lblWebsite.Name = "lblWebsite"; + this.lblWebsite.Size = new System.Drawing.Size(61, 16); + this.lblWebsite.TabIndex = 25; + this.lblWebsite.Text = "Website:"; + this.lblWebsite.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // lblLink + // + this.lblLink.AutoSize = true; + this.lblLink.Cursor = System.Windows.Forms.Cursors.Hand; + this.lblLink.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Underline, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.lblLink.ForeColor = System.Drawing.Color.Blue; + this.lblLink.Location = new System.Drawing.Point(67, 2); + this.lblLink.Margin = new System.Windows.Forms.Padding(0, 2, 3, 0); + this.lblLink.Name = "lblLink"; + this.lblLink.Size = new System.Drawing.Size(80, 13); + this.lblLink.TabIndex = 26; + this.lblLink.Text = "www.mesen.ca"; + this.lblLink.Click += new System.EventHandler(this.lblLink_Click); + // + // okButton + // + this.okButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); + this.okButton.DialogResult = System.Windows.Forms.DialogResult.Cancel; + this.okButton.Location = new System.Drawing.Point(259, 327); + this.okButton.Name = "okButton"; + this.okButton.Size = new System.Drawing.Size(75, 23); + this.okButton.TabIndex = 24; + this.okButton.Text = "&OK"; + // + // picDonate + // + this.picDonate.Anchor = System.Windows.Forms.AnchorStyles.Left; + this.picDonate.Cursor = System.Windows.Forms.Cursors.Hand; + this.picDonate.Image = ((System.Drawing.Image)(resources.GetObject("picDonate.Image"))); + this.picDonate.Location = new System.Drawing.Point(3, 327); + this.picDonate.Name = "picDonate"; + this.picDonate.Size = new System.Drawing.Size(78, 22); + this.picDonate.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage; + this.picDonate.TabIndex = 29; + this.picDonate.TabStop = false; + this.picDonate.Click += new System.EventHandler(this.picDonate_Click); + // + // lblDonate + // + this.lblDonate.AutoSize = true; + this.tableLayoutPanel.SetColumnSpan(this.lblDonate, 2); + this.lblDonate.Location = new System.Drawing.Point(0, 298); + this.lblDonate.Margin = new System.Windows.Forms.Padding(0, 5, 0, 0); + this.lblDonate.Name = "lblDonate"; + this.lblDonate.Size = new System.Drawing.Size(271, 26); + this.lblDonate.TabIndex = 30; + this.lblDonate.Text = "If you want to support Mesen, please consider donating.\r\nThank you for your suppo" + "rt!"; - // - // flowLayoutPanel2 - // - this.flowLayoutPanel2.Controls.Add(this.labelVersion); - this.flowLayoutPanel2.Controls.Add(this.lblMesenVersion); - this.flowLayoutPanel2.Location = new System.Drawing.Point(84, 20); - this.flowLayoutPanel2.Margin = new System.Windows.Forms.Padding(0, 3, 0, 0); - this.flowLayoutPanel2.Name = "flowLayoutPanel2"; - this.flowLayoutPanel2.Size = new System.Drawing.Size(250, 15); - this.flowLayoutPanel2.TabIndex = 31; - // - // labelVersion - // - this.labelVersion.Anchor = System.Windows.Forms.AnchorStyles.Left; - this.labelVersion.AutoSize = true; - this.labelVersion.Location = new System.Drawing.Point(6, 0); - this.labelVersion.Margin = new System.Windows.Forms.Padding(6, 0, 3, 0); - this.labelVersion.Name = "labelVersion"; - this.labelVersion.Size = new System.Drawing.Size(45, 13); - this.labelVersion.TabIndex = 0; - this.labelVersion.Text = "Version:"; - this.labelVersion.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; - // - // lblMesenVersion - // - this.lblMesenVersion.Anchor = System.Windows.Forms.AnchorStyles.Left; - this.lblMesenVersion.AutoSize = true; - this.lblMesenVersion.Location = new System.Drawing.Point(57, 0); - this.lblMesenVersion.Name = "lblMesenVersion"; - this.lblMesenVersion.Size = new System.Drawing.Size(53, 13); - this.lblMesenVersion.TabIndex = 1; - this.lblMesenVersion.Text = ""; - // - // frmAbout - // - this.AcceptButton = this.okButton; - this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); - this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.AutoSize = true; - this.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink; - this.CancelButton = this.okButton; - this.ClientSize = new System.Drawing.Size(347, 354); - this.Controls.Add(this.tableLayoutPanel); - this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle; - this.MaximizeBox = false; - this.MinimizeBox = false; - this.Name = "frmAbout"; - this.Padding = new System.Windows.Forms.Padding(5); - this.ShowInTaskbar = false; - this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent; - this.Text = "About - Mesen"; - this.tableLayoutPanel.ResumeLayout(false); - this.tableLayoutPanel.PerformLayout(); - this.grpAcknowledgements.ResumeLayout(false); - this.tableLayoutPanel1.ResumeLayout(false); - this.tableLayoutPanel1.PerformLayout(); - this.flowLayoutPanel4.ResumeLayout(false); - this.flowLayoutPanel4.PerformLayout(); - this.flowLayoutPanel5.ResumeLayout(false); - this.flowLayoutPanel5.PerformLayout(); - this.flowLayoutPanel6.ResumeLayout(false); - this.flowLayoutPanel6.PerformLayout(); - this.flowLayoutPanel7.ResumeLayout(false); - this.flowLayoutPanel7.PerformLayout(); - this.flowLayoutPanel3.ResumeLayout(false); - this.flowLayoutPanel3.PerformLayout(); - ((System.ComponentModel.ISupportInitialize)(this.logoPictureBox)).EndInit(); - this.flowLayoutPanel1.ResumeLayout(false); - this.flowLayoutPanel1.PerformLayout(); - ((System.ComponentModel.ISupportInitialize)(this.picDonate)).EndInit(); - this.flowLayoutPanel2.ResumeLayout(false); - this.flowLayoutPanel2.PerformLayout(); - this.ResumeLayout(false); - this.PerformLayout(); + // + // flowLayoutPanel2 + // + this.flowLayoutPanel2.Controls.Add(this.labelVersion); + this.flowLayoutPanel2.Controls.Add(this.lblMesenVersion); + this.flowLayoutPanel2.Location = new System.Drawing.Point(84, 20); + this.flowLayoutPanel2.Margin = new System.Windows.Forms.Padding(0, 3, 0, 0); + this.flowLayoutPanel2.Name = "flowLayoutPanel2"; + this.flowLayoutPanel2.Size = new System.Drawing.Size(250, 15); + this.flowLayoutPanel2.TabIndex = 31; + // + // labelVersion + // + this.labelVersion.Anchor = System.Windows.Forms.AnchorStyles.Left; + this.labelVersion.AutoSize = true; + this.labelVersion.Location = new System.Drawing.Point(6, 0); + this.labelVersion.Margin = new System.Windows.Forms.Padding(6, 0, 3, 0); + this.labelVersion.Name = "labelVersion"; + this.labelVersion.Size = new System.Drawing.Size(45, 13); + this.labelVersion.TabIndex = 0; + this.labelVersion.Text = "Version:"; + this.labelVersion.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // lblMesenVersion + // + this.lblMesenVersion.Anchor = System.Windows.Forms.AnchorStyles.Left; + this.lblMesenVersion.AutoSize = true; + this.lblMesenVersion.Location = new System.Drawing.Point(57, 0); + this.lblMesenVersion.Name = "lblMesenVersion"; + this.lblMesenVersion.Size = new System.Drawing.Size(53, 13); + this.lblMesenVersion.TabIndex = 1; + this.lblMesenVersion.Text = ""; + // + // frmAbout + // + this.AcceptButton = this.okButton; + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.AutoSize = true; + this.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink; + this.CancelButton = this.okButton; + this.ClientSize = new System.Drawing.Size(347, 362); + this.Controls.Add(this.tableLayoutPanel); + this.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F); + this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "frmAbout"; + this.Padding = new System.Windows.Forms.Padding(5); + this.ShowInTaskbar = false; + this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent; + this.Text = "About - Mesen"; + this.tableLayoutPanel.ResumeLayout(false); + this.tableLayoutPanel.PerformLayout(); + this.grpAcknowledgements.ResumeLayout(false); + this.tableLayoutPanel1.ResumeLayout(false); + this.tableLayoutPanel1.PerformLayout(); + this.flowLayoutPanel4.ResumeLayout(false); + this.flowLayoutPanel4.PerformLayout(); + this.flowLayoutPanel5.ResumeLayout(false); + this.flowLayoutPanel5.PerformLayout(); + this.flowLayoutPanel6.ResumeLayout(false); + this.flowLayoutPanel6.PerformLayout(); + this.flowLayoutPanel7.ResumeLayout(false); + this.flowLayoutPanel7.PerformLayout(); + this.flowLayoutPanel3.ResumeLayout(false); + this.flowLayoutPanel3.PerformLayout(); + ((System.ComponentModel.ISupportInitialize)(this.logoPictureBox)).EndInit(); + this.flowLayoutPanel1.ResumeLayout(false); + this.flowLayoutPanel1.PerformLayout(); + ((System.ComponentModel.ISupportInitialize)(this.picDonate)).EndInit(); + this.flowLayoutPanel2.ResumeLayout(false); + this.flowLayoutPanel2.PerformLayout(); + this.ResumeLayout(false); + this.PerformLayout(); } @@ -757,6 +803,9 @@ private Controls.ctrlLinkLabel ctrlLinkLabel12; private System.Windows.Forms.FlowLayoutPanel flowLayoutPanel6; private Controls.ctrlLinkLabel ctrlLinkLabel13; + private Controls.ctrlLinkLabel ctrlLinkLabel18; + private Controls.ctrlLinkLabel ctrlLinkLabel19; + private Controls.ctrlLinkLabel ctrlLinkLabel20; private System.Windows.Forms.Label lblUsedSoftware; private System.Windows.Forms.FlowLayoutPanel flowLayoutPanel7; private Controls.ctrlLinkLabel ctrlLinkLabel8; diff --git a/GUI.NET/InteropEmu.cs b/GUI.NET/InteropEmu.cs index 1a52b858..80e04b60 100644 --- a/GUI.NET/InteropEmu.cs +++ b/GUI.NET/InteropEmu.cs @@ -208,7 +208,7 @@ namespace Mesen.GUI [DllImport(DLLPath)] public static extern void SetBandGain(int band, double gain); [DllImport(DLLPath)] public static extern void SetSampleRate(UInt32 sampleRate); [DllImport(DLLPath)] public static extern void SetAudioLatency(UInt32 msLatency); - [DllImport(DLLPath)] public static extern void SetEPSGClockFrequency(UInt32 clockFrequency); + [DllImport(DLLPath)] public static extern void SetEPSMClockFrequency(UInt32 clockFrequency); [DllImport(DLLPath)] public static extern void SetAudioFilterSettings(AudioFilterSettings settings); [DllImport(DLLPath)] public static extern void SetRunAheadFrames(UInt32 frameCount); @@ -2302,8 +2302,8 @@ namespace Mesen.GUI VRC7 = 8, Namco163 = 9, Sunsoft5B = 10, - EPSG_L = 11, - EPSG_R= 12 + EPSM_L = 11, + EPSM_R= 12 } public enum EqualizerFilterType diff --git a/InteropDLL/ConsoleWrapper.cpp b/InteropDLL/ConsoleWrapper.cpp index 7d3e8ab1..02b721ac 100644 --- a/InteropDLL/ConsoleWrapper.cpp +++ b/InteropDLL/ConsoleWrapper.cpp @@ -633,7 +633,7 @@ namespace InteropEmu { DllExport void __stdcall SetMasterVolume(double volume, double volumeReduction, ConsoleId consoleId) { GetConsoleById(consoleId)->GetSettings()->SetMasterVolume(volume, volumeReduction); } DllExport void __stdcall SetSampleRate(uint32_t sampleRate) { _settings->SetSampleRate(sampleRate); } DllExport void __stdcall SetAudioLatency(uint32_t msLatency) { _settings->SetAudioLatency(msLatency); } - DllExport void __stdcall SetEPSGClockFrequency(uint32_t clockFrequency) { _settings->SetEPSGClockFrequency(clockFrequency); } + DllExport void __stdcall SetEPSMClockFrequency(uint32_t clockFrequency) { _settings->SetEPSMClockFrequency(clockFrequency); } DllExport void __stdcall SetAudioFilterSettings(AudioFilterSettings settings) { _settings->SetAudioFilterSettings(settings); } DllExport void __stdcall SetRunAheadFrames(uint32_t frameCount) { _settings->SetRunAheadFrames(frameCount); }