AY: add 1.10 and 2.10 rates

This commit is contained in:
tildearrow 2022-03-06 14:18:18 -05:00
parent e0eb0ad3f4
commit 2bfb84cd1e
4 changed files with 22 additions and 0 deletions

View File

@ -491,6 +491,12 @@ void DivPlatformAY8910::setFlags(unsigned int flags) {
case 8:
chipClock=COLOR_PAL*3.0/16.0;
break;
case 9:
chipClock=COLOR_PAL/4.0;
break;
case 10:
chipClock=2097152;
break;
default:
chipClock=COLOR_NTSC/2.0;
break;

View File

@ -552,6 +552,12 @@ void DivPlatformAY8930::setFlags(unsigned int flags) {
case 8:
chipClock=COLOR_PAL*3.0/16.0;
break;
case 9:
chipClock=COLOR_PAL/4.0;
break;
case 10:
chipClock=2097152;
break;
default:
chipClock=COLOR_NTSC/2.0;
break;

View File

@ -194,6 +194,8 @@ struct DivSong {
// - 6: 0.89MHz (Sunsoft 5B)
// - 7: 1.67MHz
// - 8: 0.83MHz (Sunsoft 5B on PAL)
// - 9: 1.10MHz (Gamate/VIC-20 PAL)
// - 10: 2.097152MHz (Game Boy)
// - bit 4-5: chip type (ignored on AY8930)
// - 0: AY-3-8910 or similar
// - 1: YM2149

View File

@ -4818,6 +4818,14 @@ bool FurnaceGUI::loop() {
e->setSysFlags(i,(flags&(~15))|8,restart);
updateWindowTitle();
}
if (ImGui::RadioButton("1.10MHz (Gamate/VIC-20 PAL)",(flags&15)==9)) {
e->setSysFlags(i,(flags&(~15))|9,restart);
updateWindowTitle();
}
if (ImGui::RadioButton("2^21Hz (Game Boy)",(flags&15)==10)) {
e->setSysFlags(i,(flags&(~15))|10,restart);
updateWindowTitle();
}
if (e->song.system[i]==DIV_SYSTEM_AY8910) {
ImGui::Text("Chip type:");
if (ImGui::RadioButton("AY-3-8910",(flags&0x30)==0)) {