From 4e1c6d78c2b243c8556bab3e697939a1f7d87f58 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Fri, 4 Feb 2022 16:21:18 -0500 Subject: [PATCH] fix Neo Geo detuning --- src/engine/engine.cpp | 5 +++++ src/engine/platform/ym2610shared.h | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/engine/engine.cpp b/src/engine/engine.cpp index e3bdc2473..6a57c0da3 100644 --- a/src/engine/engine.cpp +++ b/src/engine/engine.cpp @@ -1545,6 +1545,11 @@ bool DivEngine::loadDMF(unsigned char* file, size_t len) { ds.linearPitch=true; ds.loopModality=0; + // Neo Geo detune + if (ds.system[0]==DIV_SYSTEM_YM2610 || ds.system[0]==DIV_SYSTEM_YM2610_EXT) { + ds.tuning=443.23; + } + logI("reading module data...\n"); if (ds.version>0x0c) { ds.hilightA=reader.readC(); diff --git a/src/engine/platform/ym2610shared.h b/src/engine/platform/ym2610shared.h index d7c792d07..f09bdec27 100644 --- a/src/engine/platform/ym2610shared.h +++ b/src/engine/platform/ym2610shared.h @@ -26,4 +26,4 @@ static int orderedOps[4]={ #define rWrite(a,v) if (!skipRegisterWrites) {pendingWrites[a]=v;} #define immWrite(a,v) if (!skipRegisterWrites) {writes.emplace(a,v); if (dumpWrites) {addWrite(a,v);} } -#define CHIP_FREQBASE 9509775 \ No newline at end of file +#define CHIP_FREQBASE 9440540 \ No newline at end of file