better mixing levels for PC-88 and PC-98

thanks Iyatemu for information!
This commit is contained in:
tildearrow 2025-06-11 19:32:05 -05:00
parent a27f76590f
commit 18a86fa6c8

View file

@ -577,37 +577,55 @@ void FurnaceGUI::initSystemPresets() {
SUB_ENTRY(
_("NEC PC-88 (with PC-8801-11)"), {
CH(DIV_SYSTEM_PCSPKR, 1.0f, 0, "clockSel=1"),
CH(DIV_SYSTEM_YM2203, 1.0f, 0, "clockSel=4") // external
CH(DIV_SYSTEM_YM2203, 1.0f, 0,
"clockSel=4\n"
"ssgVol=141\n"
) // external
}
);
SUB_ENTRY(
_("NEC PC-88 (with PC-8801-11; extended channel 3)"), {
CH(DIV_SYSTEM_PCSPKR, 1.0f, 0, "clockSel=1"),
CH(DIV_SYSTEM_YM2203_EXT, 1.0f, 0, "clockSel=4") // external
CH(DIV_SYSTEM_YM2203_EXT, 1.0f, 0,
"clockSel=4\n"
"ssgVol=141\n"
) // external
}
);
SUB_ENTRY(
_("NEC PC-88 (with PC-8801-11; CSM)"), {
CH(DIV_SYSTEM_PCSPKR, 1.0f, 0, "clockSel=1"),
CH(DIV_SYSTEM_YM2203_CSM, 1.0f, 0, "clockSel=4") // external
CH(DIV_SYSTEM_YM2203_CSM, 1.0f, 0,
"clockSel=4\n"
"ssgVol=141\n"
) // external
}
);
SUB_ENTRY(
_("NEC PC-88 (with PC-8801-23)"), {
CH(DIV_SYSTEM_PCSPKR, 1.0f, 0, "clockSel=1"),
CH(DIV_SYSTEM_YM2608, 1.0f, 0, "clockSel=1") // external
CH(DIV_SYSTEM_YM2608, 1.0f, 0,
"clockSel=1\n"
"ssgVol=149\n"
) // external
}
);
SUB_ENTRY(
_("NEC PC-88 (with PC-8801-23; extended channel 3)"), {
CH(DIV_SYSTEM_PCSPKR, 1.0f, 0, "clockSel=1"),
CH(DIV_SYSTEM_YM2608_EXT, 1.0f, 0, "clockSel=1") // external
CH(DIV_SYSTEM_YM2608_EXT, 1.0f, 0,
"clockSel=1\n"
"ssgVol=149\n"
) // external
}
);
SUB_ENTRY(
_("NEC PC-88 (with PC-8801-23; CSM)"), {
CH(DIV_SYSTEM_PCSPKR, 1.0f, 0, "clockSel=1"),
CH(DIV_SYSTEM_YM2608_CSM, 1.0f, 0, "clockSel=1") // external
CH(DIV_SYSTEM_YM2608_CSM, 1.0f, 0,
"clockSel=1\n"
"ssgVol=149\n"
) // external
}
);
SUB_ENTRY(
@ -619,7 +637,10 @@ void FurnaceGUI::initSystemPresets() {
SUB_ENTRY(
_("NEC PC-8801mk2SR (with PC-8801-10)"), {
CH(DIV_SYSTEM_PCSPKR, 1.0f, 0, "clockSel=1"),
CH(DIV_SYSTEM_YM2203, 1.0f, 0, "clockSel=4"), // internal
CH(DIV_SYSTEM_YM2203, 1.0f, 0,
"clockSel=4\n"
"ssgVol=154\n"
), // internal
CH(DIV_SYSTEM_AY8910, 1.0f, 0, "clockSel=15"), // external
CH(DIV_SYSTEM_AY8910, 1.0f, 0, "clockSel=15") // ""
}
@ -627,7 +648,10 @@ void FurnaceGUI::initSystemPresets() {
SUB_ENTRY(
_("NEC PC-8801mk2SR (with PC-8801-10; extended channel 3)"), {
CH(DIV_SYSTEM_PCSPKR, 1.0f, 0, "clockSel=1"),
CH(DIV_SYSTEM_YM2203_EXT, 1.0f, 0, "clockSel=4"), // internal
CH(DIV_SYSTEM_YM2203_EXT, 1.0f, 0,
"clockSel=4\n"
"ssgVol=154\n"
), // internal
CH(DIV_SYSTEM_AY8910, 1.0f, 0, "clockSel=15"), // external
CH(DIV_SYSTEM_AY8910, 1.0f, 0, "clockSel=15") // ""
}
@ -635,7 +659,10 @@ void FurnaceGUI::initSystemPresets() {
SUB_ENTRY(
_("NEC PC-8801mk2SR (with PC-8801-10; CSM)"), {
CH(DIV_SYSTEM_PCSPKR, 1.0f, 0, "clockSel=1"),
CH(DIV_SYSTEM_YM2203_CSM, 1.0f, 0, "clockSel=4"), // internal
CH(DIV_SYSTEM_YM2203_CSM, 1.0f, 0,
"clockSel=4\n"
"ssgVol=154\n"
), // internal
CH(DIV_SYSTEM_AY8910, 1.0f, 0, "clockSel=15"), // external
CH(DIV_SYSTEM_AY8910, 1.0f, 0, "clockSel=15") // ""
}
@ -643,112 +670,160 @@ void FurnaceGUI::initSystemPresets() {
SUB_ENTRY(
_("NEC PC-8801mk2SR (with PC-8801-11)"), {
CH(DIV_SYSTEM_PCSPKR, 1.0f, 0, "clockSel=1"),
CH(DIV_SYSTEM_YM2203, 1.0f, 0, "clockSel=4"), // internal
CH(DIV_SYSTEM_YM2203, 1.0f, 0,
"clockSel=4\n"
"ssgVol=154\n"
), // internal
CH(DIV_SYSTEM_YM2203, 1.0f, 0, "clockSel=4") // external
}
);
SUB_ENTRY(
_("NEC PC-8801mk2SR (with PC-8801-11; extended channel 3 on internal OPN)"), {
CH(DIV_SYSTEM_PCSPKR, 1.0f, 0, "clockSel=1"),
CH(DIV_SYSTEM_YM2203_EXT, 1.0f, 0, "clockSel=4"), // internal
CH(DIV_SYSTEM_YM2203_EXT, 1.0f, 0,
"clockSel=4\n"
"ssgVol=154\n"
), // internal
CH(DIV_SYSTEM_YM2203, 1.0f, 0, "clockSel=4") // external
}
);
SUB_ENTRY(
_("NEC PC-8801mk2SR (with PC-8801-11; extended channel 3 on external OPN)"), {
CH(DIV_SYSTEM_PCSPKR, 1.0f, 0, "clockSel=1"),
CH(DIV_SYSTEM_YM2203, 1.0f, 0, "clockSel=4"), // internal
CH(DIV_SYSTEM_YM2203, 1.0f, 0,
"clockSel=4\n"
"ssgVol=154\n"
), // internal
CH(DIV_SYSTEM_YM2203_EXT, 1.0f, 0, "clockSel=4") // external
}
);
SUB_ENTRY(
_("NEC PC-8801mk2SR (with PC-8801-11; extended channel 3 on both OPNs)"), {
CH(DIV_SYSTEM_PCSPKR, 1.0f, 0, "clockSel=1"),
CH(DIV_SYSTEM_YM2203_EXT, 1.0f, 0, "clockSel=4"), // internal
CH(DIV_SYSTEM_YM2203_EXT, 1.0f, 0,
"clockSel=4\n"
"ssgVol=154\n"
), // internal
CH(DIV_SYSTEM_YM2203_EXT, 1.0f, 0, "clockSel=4") // external
}
);
SUB_ENTRY(
_("NEC PC-8801mk2SR (with PC-8801-11; CSM on internal OPN)"), {
CH(DIV_SYSTEM_PCSPKR, 1.0f, 0, "clockSel=1"),
CH(DIV_SYSTEM_YM2203_CSM, 1.0f, 0, "clockSel=4"), // internal
CH(DIV_SYSTEM_YM2203_CSM, 1.0f, 0,
"clockSel=4\n"
"ssgVol=154\n"
), // internal
CH(DIV_SYSTEM_YM2203, 1.0f, 0, "clockSel=4") // external
}
);
SUB_ENTRY(
_("NEC PC-8801mk2SR (with PC-8801-11; CSM on external OPN)"), {
CH(DIV_SYSTEM_PCSPKR, 1.0f, 0, "clockSel=1"),
CH(DIV_SYSTEM_YM2203, 1.0f, 0, "clockSel=4"), // internal
CH(DIV_SYSTEM_YM2203, 1.0f, 0,
"clockSel=4\n"
"ssgVol=154\n"
), // internal
CH(DIV_SYSTEM_YM2203_CSM, 1.0f, 0, "clockSel=4") // external
}
);
SUB_ENTRY(
_("NEC PC-8801mk2SR (with PC-8801-11; CSM on both OPNs)"), {
CH(DIV_SYSTEM_PCSPKR, 1.0f, 0, "clockSel=1"),
CH(DIV_SYSTEM_YM2203_CSM, 1.0f, 0, "clockSel=4"), // internal
CH(DIV_SYSTEM_YM2203_CSM, 1.0f, 0,
"clockSel=4\n"
"ssgVol=154\n"
), // internal
CH(DIV_SYSTEM_YM2203_CSM, 1.0f, 0, "clockSel=4") // external
}
);
SUB_ENTRY(
_("NEC PC-8801mk2SR (with PC-8801-23)"), {
CH(DIV_SYSTEM_PCSPKR, 1.0f, 0, "clockSel=1"),
CH(DIV_SYSTEM_YM2203, 1.0f, 0, "clockSel=4"), // internal
CH(DIV_SYSTEM_YM2203, 1.0f, 0,
"clockSel=4\n"
"ssgVol=154\n"
), // internal
CH(DIV_SYSTEM_YM2608, 1.0f, 0, "clockSel=1") // external
}
);
SUB_ENTRY(
_("NEC PC-8801mk2SR (with PC-8801-23; extended channel 3 on internal OPN)"), {
CH(DIV_SYSTEM_PCSPKR, 1.0f, 0, "clockSel=1"),
CH(DIV_SYSTEM_YM2203_EXT, 1.0f, 0, "clockSel=4"), // internal
CH(DIV_SYSTEM_YM2203_EXT, 1.0f, 0,
"clockSel=4\n"
"ssgVol=154\n"
), // internal
CH(DIV_SYSTEM_YM2608, 1.0f, 0, "clockSel=1") // external
}
);
SUB_ENTRY(
_("NEC PC-8801mk2SR (with PC-8801-23; extended channel 3 on external OPN)"), {
CH(DIV_SYSTEM_PCSPKR, 1.0f, 0, "clockSel=1"),
CH(DIV_SYSTEM_YM2203, 1.0f, 0, "clockSel=4"), // internal
CH(DIV_SYSTEM_YM2203, 1.0f, 0,
"clockSel=4\n"
"ssgVol=154\n"
), // internal
CH(DIV_SYSTEM_YM2608_EXT, 1.0f, 0, "clockSel=1") // external
}
);
SUB_ENTRY(
_("NEC PC-8801mk2SR (with PC-8801-23; extended channel 3 on both OPNs)"), {
CH(DIV_SYSTEM_PCSPKR, 1.0f, 0, "clockSel=1"),
CH(DIV_SYSTEM_YM2203_EXT, 1.0f, 0, "clockSel=4"), // internal
CH(DIV_SYSTEM_YM2203_EXT, 1.0f, 0,
"clockSel=4\n"
"ssgVol=154\n"
), // internal
CH(DIV_SYSTEM_YM2608_EXT, 1.0f, 0, "clockSel=1") // external
}
);
SUB_ENTRY(
_("NEC PC-8801mk2SR (with PC-8801-23; CSM on internal OPN)"), {
CH(DIV_SYSTEM_PCSPKR, 1.0f, 0, "clockSel=1"),
CH(DIV_SYSTEM_YM2203_CSM, 1.0f, 0, "clockSel=4"), // internal
CH(DIV_SYSTEM_YM2203_CSM, 1.0f, 0,
"clockSel=4\n"
"ssgVol=154\n"
), // internal
CH(DIV_SYSTEM_YM2608, 1.0f, 0, "clockSel=1") // external
}
);
SUB_ENTRY(
_("NEC PC-8801mk2SR (with PC-8801-23; CSM on external OPN)"), {
CH(DIV_SYSTEM_PCSPKR, 1.0f, 0, "clockSel=1"),
CH(DIV_SYSTEM_YM2203, 1.0f, 0, "clockSel=4"), // internal
CH(DIV_SYSTEM_YM2203, 1.0f, 0,
"clockSel=4\n"
"ssgVol=154\n"
), // internal
CH(DIV_SYSTEM_YM2608_CSM, 1.0f, 0, "clockSel=1") // external
}
);
SUB_ENTRY(
_("NEC PC-8801mk2SR (with PC-8801-23; CSM on both OPNs)"), {
CH(DIV_SYSTEM_PCSPKR, 1.0f, 0, "clockSel=1"),
CH(DIV_SYSTEM_YM2203_CSM, 1.0f, 0, "clockSel=4"), // internal
CH(DIV_SYSTEM_YM2203_CSM, 1.0f, 0,
"clockSel=4\n"
"ssgVol=154\n"
), // internal
CH(DIV_SYSTEM_YM2608_CSM, 1.0f, 0, "clockSel=1") // external
}
);
SUB_ENTRY(
_("NEC PC-8801mk2SR (with HMB-20 HIBIKI-8800)"), {
CH(DIV_SYSTEM_PCSPKR, 1.0f, 0, "clockSel=1"),
CH(DIV_SYSTEM_YM2203, 1.0f, 0, "clockSel=4"), // internal
CH(DIV_SYSTEM_YM2203, 1.0f, 0,
"clockSel=4\n"
"ssgVol=154\n"
), // internal
CH(DIV_SYSTEM_YM2151, 1.0f, 0, "clockSel=2") // external; 4.0000MHz
}
);
SUB_ENTRY(
_("NEC PC-8801mk2SR (with HMB-20 HIBIKI-8800; extended channel 3)"), {
CH(DIV_SYSTEM_PCSPKR, 1.0f, 0, "clockSel=1"),
CH(DIV_SYSTEM_YM2203_EXT, 1.0f, 0, "clockSel=4"), // internal
CH(DIV_SYSTEM_YM2203_EXT, 1.0f, 0,
"clockSel=4\n"
"ssgVol=154\n"
), // internal
CH(DIV_SYSTEM_YM2151, 1.0f, 0, "clockSel=2") // external; 4.0000MHz
}
);
@ -885,19 +960,19 @@ void FurnaceGUI::initSystemPresets() {
);
SUB_ENTRY(
_("NEC PC-98 (with PC-9801-26/K)"), {
CH(DIV_SYSTEM_YM2203, 1.0f, 0, "clockSel=4"), // 3.9936MHz but some compatible card has 4MHz
CH(DIV_SYSTEM_YM2203, 1.0f, 0, "clockSel=4\nssgVol=77"), // 3.9936MHz but some compatible card has 4MHz
CH(DIV_SYSTEM_PCSPKR, 1.0f, 0, "clockSel=1")
}
);
SUB_ENTRY(
_("NEC PC-98 (with PC-9801-26/K; extended channel 3)"), {
CH(DIV_SYSTEM_YM2203_EXT, 1.0f, 0, "clockSel=4"), // 3.9936MHz but some compatible card has 4MHz
CH(DIV_SYSTEM_YM2203_EXT, 1.0f, 0, "clockSel=4\nssgVol=77"), // 3.9936MHz but some compatible card has 4MHz
CH(DIV_SYSTEM_PCSPKR, 1.0f, 0, "clockSel=1")
}
);
SUB_ENTRY(
_("NEC PC-98 (with PC-9801-26/K; CSM)"), {
CH(DIV_SYSTEM_YM2203_CSM, 1.0f, 0, "clockSel=4"), // 3.9936MHz but some compatible card has 4MHz
CH(DIV_SYSTEM_YM2203_CSM, 1.0f, 0, "clockSel=4\nssgVol=77"), // 3.9936MHz but some compatible card has 4MHz
CH(DIV_SYSTEM_PCSPKR, 1.0f, 0, "clockSel=1")
}
);
@ -987,7 +1062,7 @@ void FurnaceGUI::initSystemPresets() {
);
SUB_ENTRY(
_("NEC PC-98 (with PC-9801-86)"), { // -73 also has OPNA
CH(DIV_SYSTEM_YM2608, 1.0f, 0, "clockSel=1"),
CH(DIV_SYSTEM_YM2608, 1.0f, 0, "clockSel=1\nssgVol=64"),
CH(DIV_SYSTEM_PCM_DAC, 1.0f, 0, // 2x 16-bit Burr Brown DAC
"rate=44100\n"
"outDepth=15\n"
@ -1001,7 +1076,7 @@ void FurnaceGUI::initSystemPresets() {
);
SUB_ENTRY(
_("NEC PC-98 (with PC-9801-86; extended channel 3)"), { // -73 also has OPNA
CH(DIV_SYSTEM_YM2608_EXT, 1.0f, 0, "clockSel=1"),
CH(DIV_SYSTEM_YM2608_EXT, 1.0f, 0, "clockSel=1\nssgVol=64"),
CH(DIV_SYSTEM_PCM_DAC, 1.0f, 0,
"rate=44100\n"
"outDepth=15\n"
@ -1015,7 +1090,7 @@ void FurnaceGUI::initSystemPresets() {
);
SUB_ENTRY(
_("NEC PC-98 (with PC-9801-86; CSM)"), { // -73 also has OPNA
CH(DIV_SYSTEM_YM2608_CSM, 1.0f, 0, "clockSel=1"),
CH(DIV_SYSTEM_YM2608_CSM, 1.0f, 0, "clockSel=1\nssgVol=64"),
CH(DIV_SYSTEM_PCM_DAC, 1.0f, 0,
"rate=44100\n"
"outDepth=15\n"
@ -1029,7 +1104,7 @@ void FurnaceGUI::initSystemPresets() {
);
SUB_ENTRY(
_("NEC PC-98 (with PC-9801-86) stereo"), { // -73 also has OPNA
CH(DIV_SYSTEM_YM2608, 1.0f, 0, "clockSel=1"),
CH(DIV_SYSTEM_YM2608, 1.0f, 0, "clockSel=1\nssgVol=64"),
CH(DIV_SYSTEM_PCM_DAC, 1.0f, -1.0f, // 2x 16-bit Burr Brown DAC
"rate=44100\n"
"outDepth=15\n"
@ -1043,7 +1118,7 @@ void FurnaceGUI::initSystemPresets() {
);
SUB_ENTRY(
_("NEC PC-98 (with PC-9801-86; extended channel 3) stereo"), { // -73 also has OPNA
CH(DIV_SYSTEM_YM2608_EXT, 1.0f, 0, "clockSel=1"),
CH(DIV_SYSTEM_YM2608_EXT, 1.0f, 0, "clockSel=1\nssgVol=64"),
CH(DIV_SYSTEM_PCM_DAC, 1.0f, -1.0f,
"rate=44100\n"
"outDepth=15\n"
@ -1057,7 +1132,7 @@ void FurnaceGUI::initSystemPresets() {
);
SUB_ENTRY(
_("NEC PC-98 (with PC-9801-86; CSM) stereo"), { // -73 also has OPNA
CH(DIV_SYSTEM_YM2608_CSM, 1.0f, 0, "clockSel=1"),
CH(DIV_SYSTEM_YM2608_CSM, 1.0f, 0, "clockSel=1\nssgVol=64"),
CH(DIV_SYSTEM_PCM_DAC, 1.0f, -1.0f,
"rate=44100\n"
"outDepth=15\n"
@ -1071,25 +1146,25 @@ void FurnaceGUI::initSystemPresets() {
);
SUB_ENTRY(
_("NEC PC-98 (with PC-9801-73)"), {
CH(DIV_SYSTEM_YM2608, 1.0f, 0, "clockSel=1"),
CH(DIV_SYSTEM_YM2608, 1.0f, 0, "clockSel=1\nssgVol=64"),
CH(DIV_SYSTEM_PCSPKR, 1.0f, 0, "clockSel=1")
}
);
SUB_ENTRY(
_("NEC PC-98 (with PC-9801-73; extended channel 3)"), {
CH(DIV_SYSTEM_YM2608_EXT, 1.0f, 0, "clockSel=1"),
CH(DIV_SYSTEM_YM2608_EXT, 1.0f, 0, "clockSel=1\nssgVol=64"),
CH(DIV_SYSTEM_PCSPKR, 1.0f, 0, "clockSel=1")
}
);
SUB_ENTRY(
_("NEC PC-98 (with PC-9801-73; CSM)"), {
CH(DIV_SYSTEM_YM2608_CSM, 1.0f, 0, "clockSel=1"),
CH(DIV_SYSTEM_YM2608_CSM, 1.0f, 0, "clockSel=1\nssgVol=64"),
CH(DIV_SYSTEM_PCSPKR, 1.0f, 0, "clockSel=1")
}
);
SUB_ENTRY(
_("NEC PC-98 (with Sound Blaster 16 for PC-9800 w/PC-9801-26/K compatible)"), {
CH(DIV_SYSTEM_YM2203, 1.0f, 0, "clockSel=2"), // 4MHz
CH(DIV_SYSTEM_YM2203, 1.0f, 0, "clockSel=2\nssgVol=77"), // 4MHz
CH(DIV_SYSTEM_PCM_DAC, 1.0f, 0,
"rate=44100\n"
"outDepth=15\n"
@ -1101,7 +1176,7 @@ void FurnaceGUI::initSystemPresets() {
);
SUB_ENTRY(
_("NEC PC-98 (with Sound Blaster 16 for PC-9800 w/PC-9801-26/K compatible; extended channel 3)"), {
CH(DIV_SYSTEM_YM2203_EXT, 1.0f, 0, "clockSel=2"), // 4MHz
CH(DIV_SYSTEM_YM2203_EXT, 1.0f, 0, "clockSel=2\nssgVol=77"), // 4MHz
CH(DIV_SYSTEM_PCM_DAC, 1.0f, 0,
"rate=44100\n"
"outDepth=15\n"
@ -1113,7 +1188,7 @@ void FurnaceGUI::initSystemPresets() {
);
SUB_ENTRY(
_("NEC PC-98 (with Sound Blaster 16 for PC-9800 w/PC-9801-26/K compatible; CSM)"), {
CH(DIV_SYSTEM_YM2203_CSM, 1.0f, 0, "clockSel=2"), // 4MHz
CH(DIV_SYSTEM_YM2203_CSM, 1.0f, 0, "clockSel=2\nssgVol=77"), // 4MHz
CH(DIV_SYSTEM_PCM_DAC, 1.0f, 0,
"rate=44100\n"
"outDepth=15\n"
@ -1125,7 +1200,7 @@ void FurnaceGUI::initSystemPresets() {
);
SUB_ENTRY(
_("NEC PC-98 (with Sound Blaster 16 for PC-9800 w/PC-9801-26/K compatible in drums mode)"), {
CH(DIV_SYSTEM_YM2203, 1.0f, 0, "clockSel=2"), // 4MHz
CH(DIV_SYSTEM_YM2203, 1.0f, 0, "clockSel=2\nssgVol=77"), // 4MHz
CH(DIV_SYSTEM_PCM_DAC, 1.0f, 0,
"rate=44100\n"
"outDepth=15\n"
@ -1137,7 +1212,7 @@ void FurnaceGUI::initSystemPresets() {
);
SUB_ENTRY(
_("NEC PC-98 (with Sound Blaster 16 for PC-9800 w/PC-9801-26/K compatible in drums mode; extended channel 3)"), {
CH(DIV_SYSTEM_YM2203_EXT, 1.0f, 0, "clockSel=2"), // 4MHz
CH(DIV_SYSTEM_YM2203_EXT, 1.0f, 0, "clockSel=2\nssgVol=77"), // 4MHz
CH(DIV_SYSTEM_PCM_DAC, 1.0f, 0,
"rate=44100\n"
"outDepth=15\n"
@ -1149,7 +1224,7 @@ void FurnaceGUI::initSystemPresets() {
);
SUB_ENTRY(
_("NEC PC-98 (with Sound Blaster 16 for PC-9800 w/PC-9801-26/K compatible in drums mode; CSM)"), {
CH(DIV_SYSTEM_YM2203_CSM, 1.0f, 0, "clockSel=2"), // 4MHz
CH(DIV_SYSTEM_YM2203_CSM, 1.0f, 0, "clockSel=2\nssgVol=77"), // 4MHz
CH(DIV_SYSTEM_PCM_DAC, 1.0f, 0,
"rate=44100\n"
"outDepth=15\n"