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