Merge pull request #1844 from akumanatt/bifurcator

Add Bifurcator support
This commit is contained in:
tildearrow 2024-04-21 03:28:55 -05:00 committed by GitHub
commit a6357525d9
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
17 changed files with 513 additions and 2 deletions

View file

@ -2091,6 +2091,22 @@ void DivEngine::registerSystems() {
}
);
sysDefs[DIV_SYSTEM_BIFURCATOR]=new DivSysDef(
"Bifurcator", NULL, 0xf2, 0, 4, false, true, 0, false, 0, 0, 0,
"a fantasy sound chip using logistic map iterations to generate sound.",
{"Channel 1", "Channel 2", "Channel 3", "Channel 4"},
{"CH1", "CH2", "CH3", "CH4"},
{DIV_CH_NOISE, DIV_CH_NOISE, DIV_CH_NOISE, DIV_CH_NOISE},
{DIV_INS_BIFURCATOR, DIV_INS_BIFURCATOR, DIV_INS_BIFURCATOR, DIV_INS_BIFURCATOR},
{},
{
{0x10, {DIV_CMD_BIFURCATOR_STATE_LOAD, "10xx: Load low byte of channel sample state", constVal<0>, effectVal}},
{0x11, {DIV_CMD_BIFURCATOR_STATE_LOAD, "11xx: Load high byte of channel sample state", constVal<1>, effectVal}},
{0x12, {DIV_CMD_BIFURCATOR_PARAMETER, "12xx: Set low byte of channel parameter", constVal<0>, effectVal}},
{0x13, {DIV_CMD_BIFURCATOR_PARAMETER, "13xx: Set high byte of channel parameter", constVal<1>, effectVal}},
}
);
sysDefs[DIV_SYSTEM_DUMMY]=new DivSysDef(
"Dummy System", NULL, 0xfd, 0, 8, false, true, 0, false, 0, 0, 0,
"this is a system designed for testing purposes.",