diff --git a/src/engine/platform/sms.cpp b/src/engine/platform/sms.cpp index 325665003..114d67b05 100644 --- a/src/engine/platform/sms.cpp +++ b/src/engine/platform/sms.cpp @@ -301,7 +301,9 @@ void DivPlatformSMS::poke(std::vector& wlist) { } void DivPlatformSMS::setFlags(unsigned int flags) { - if ((flags&3)==2) { + if ((flags&3)==3) { + chipClock=COLOR_NTSC/2.0; + } else if ((flags&3)==2) { chipClock=4000000; } else if ((flags&3)==1) { chipClock=COLOR_PAL*4.0/5.0; diff --git a/src/gui/gui.cpp b/src/gui/gui.cpp index 10a7159c2..1a5a13f47 100644 --- a/src/gui/gui.cpp +++ b/src/gui/gui.cpp @@ -4544,6 +4544,10 @@ bool FurnaceGUI::loop() { e->setSysFlags(i,(flags&(~3))|2,restart); updateWindowTitle(); } + if (ImGui::RadioButton("Half NTSC (1.79MHz)",(flags&3)==3)) { + e->setSysFlags(i,(flags&(~3))|3,restart); + updateWindowTitle(); + } ImGui::Text("Chip type:"); if (ImGui::RadioButton("Sega VDP/Master System",((flags>>2)&3)==0)) { e->setSysFlags(i,(flags&(~12))|0,restart);