Skip to content

Commit ca5d41c

Browse files
authored
Merge pull request #53 from mxmxmx/de-buchlarize-global
[OC] bump to v.1.3.0
2 parents 35e5b6e + 834589d commit ca5d41c

24 files changed

+2017
-1587
lines changed

software/o_c_REV/APP_ASR.ino

+9-18
Original file line numberDiff line numberDiff line change
@@ -513,17 +513,19 @@ public:
513513

514514
// _pitch can do other things now --
515515
switch (get_turing_CV()) {
516-
517-
case 1: // LEN, 1-32
516+
517+
case 1: // mult
518+
_mult += ((_pitch + 63) >> 7);
519+
break;
520+
case 2: // LEN, 1-32
518521
_length += ((_pitch + 255) >> 9);
519522
CONSTRAIN(_length, 1, 32);
520523
break;
521-
case 2: // P
524+
case 3: // P
522525
_probability += ((_pitch + 7) >> 4);
523526
CONSTRAIN(_probability, 0, 255);
524527
break;
525-
default: // mult
526-
_mult += ((_pitch + 63) >> 7);
528+
default:
527529
break;
528530
}
529531

@@ -722,13 +724,6 @@ private:
722724
ASRSettings enabled_settings_[ASR_SETTING_LAST];
723725
};
724726

725-
const char* const mult[NUM_INPUT_SCALING] = {
726-
"0.05", "0.10", "0.15", "0.20", "0.25", "0.30", "0.35", "0.40", "0.45", "0.50",
727-
"0.55", "0.60", "0.65", "0.70", "0.75", "0.80", "0.85", "0.90", "0.95", "1.00",
728-
"1.05", "1.10", "1.15", "1.20", "1.25", "1.30", "1.35", "1.40", "1.45", "1.50",
729-
"1.55", "1.60", "1.65", "1.70", "1.75", "1.80", "1.85", "1.90", "1.95", "2.00"
730-
};
731-
732727
const char* const asr_input_sources[] = {
733728
"CV1", "TM", "ByteB", "IntSq"
734729
};
@@ -737,10 +732,6 @@ const char* const asr_cv4_destinations[] = {
737732
"oct", "root", "trns", "buf.l", "igain"
738733
};
739734

740-
const char* const tm_CV_destinations[] = {
741-
"rng", "len", "p"
742-
};
743-
744735
const char* const bb_CV_destinations[] = {
745736
"igain", "eqn", "P0", "P1", "P2"
746737
};
@@ -756,14 +747,14 @@ SETTINGS_DECLARE(ASR, ASR_SETTING_LAST) {
756747
{ 0, 0, 11, "root", OC::Strings::note_names_unpadded, settings::STORAGE_TYPE_U8 },
757748
{ 65535, 1, 65535, "mask", NULL, settings::STORAGE_TYPE_U16 }, // mask
758749
{ 0, 0, ASR_HOLD_BUF_SIZE - 1, "buf.index", NULL, settings::STORAGE_TYPE_U8 },
759-
{ MULT_ONE, 0, NUM_INPUT_SCALING - 1, "input gain", mult, settings::STORAGE_TYPE_U8 },
750+
{ MULT_ONE, 0, NUM_INPUT_SCALING - 1, "input gain", OC::Strings::mult, settings::STORAGE_TYPE_U8 },
760751
{ 0, 0, OC::kNumDelayTimes - 1, "trigger delay", OC::Strings::trigger_delay_times, settings::STORAGE_TYPE_U8 },
761752
{ 4, 4, ASR_HOLD_BUF_SIZE - 1, "hold (buflen)", NULL, settings::STORAGE_TYPE_U8 },
762753
{ 0, 0, ASR_CHANNEL_SOURCE_LAST -1, "CV source", asr_input_sources, settings::STORAGE_TYPE_U4 },
763754
{ 0, 0, ASR_DEST_LAST - 1, "CV4 dest. ->", asr_cv4_destinations, settings::STORAGE_TYPE_U4 },
764755
{ 16, 1, 32, "> LFSR length", NULL, settings::STORAGE_TYPE_U8 },
765756
{ 128, 0, 255, "> LFSR p", NULL, settings::STORAGE_TYPE_U8 },
766-
{ 0, 0, 2, "> LFSR CV1", tm_CV_destinations, settings::STORAGE_TYPE_U8 }, // ??
757+
{ 0, 0, 3, "> LFSR CV1", OC::Strings::TM_aux_cv_destinations, settings::STORAGE_TYPE_U8 }, // ??
767758
{ 0, 0, 15, "> BB eqn", OC::Strings::bytebeat_equation_names, settings::STORAGE_TYPE_U8 },
768759
{ 8, 1, 255, "> BB P0", NULL, settings::STORAGE_TYPE_U8 },
769760
{ 12, 1, 255, "> BB P1", NULL, settings::STORAGE_TYPE_U8 },

software/o_c_REV/APP_AUTOMATONNETZ.ino

+4
Original file line numberDiff line numberDiff line change
@@ -341,7 +341,11 @@ SETTINGS_DECLARE(AutomatonnetzState, GRID_SETTING_LAST) {
341341
{8, 0, 8*GRID_DIMENSION - 1, "dx", NULL, settings::STORAGE_TYPE_I8},
342342
{4, 0, 8*GRID_DIMENSION - 1, "dy", NULL, settings::STORAGE_TYPE_I8},
343343
{MODE_MAJOR, 0, MODE_LAST-1, "Mode", mode_names, settings::STORAGE_TYPE_U8},
344+
#ifdef BUCHLA_4U
345+
{0, 0, 7, "Oct", NULL, settings::STORAGE_TYPE_I8},
346+
#else
344347
{0, -3, 3, "Oct", NULL, settings::STORAGE_TYPE_I8},
348+
#endif
345349
{ 0, 0, OC::kNumDelayTimes - 1, "TrDly", OC::Strings::trigger_delay_times, settings::STORAGE_TYPE_U8 },
346350
{OUTPUTA_MODE_ROOT, OUTPUTA_MODE_ROOT, OUTPUTA_MODE_LAST - 1, "OutA", outputa_mode_names, settings::STORAGE_TYPE_U4},
347351
{CLEAR_MODE_ZERO, CLEAR_MODE_ZERO, CLEAR_MODE_LAST - 1, "Clr", clear_mode_names, settings::STORAGE_TYPE_U4},

software/o_c_REV/APP_A_SEQ.ino

+7-2
Original file line numberDiff line numberDiff line change
@@ -1282,7 +1282,8 @@ public:
12821282
if (_playmode != PM_ARP) {
12831283
_out = (display_mask_ >> clk_cnt_) & 1u;
12841284
step_state_ = _out ? ON : OFF;
1285-
_out = (_out && _change) ? true : false;
1285+
_out = (_out && _change) ? true : false;
1286+
Serial.println(step_state_);
12861287
}
12871288
else {
12881289
step_state_ = ON;
@@ -1598,7 +1599,11 @@ public:
15981599
switch (_mode) {
15991600

16001601
case 0: // gate
1601-
_output = get_step_gate();
1602+
#ifdef BUCHLA_4U
1603+
_output = (get_step_gate() == ON) ? OC::DAC::get_octave_offset(dacChannel, OCTAVES - OC::DAC::kOctaveZero - 0x2) : OC::DAC::get_zero_offset(dacChannel);
1604+
#else
1605+
_output = (get_step_gate() == ON) ? OC::DAC::get_octave_offset(dacChannel, OCTAVES - OC::DAC::kOctaveZero - 0x1) : OC::DAC::get_zero_offset(dacChannel);
1606+
#endif
16021607
break;
16031608
case 1: // copy
16041609
_output = OC::DAC::pitch_to_scaled_voltage_dac(dacChannel, get_step_pitch_aux(), 0, OC::DAC::get_voltage_scaling(dacChannel));

software/o_c_REV/APP_BBGEN.ino

+1-1
Original file line numberDiff line numberDiff line change
@@ -181,7 +181,7 @@ public:
181181
gate_raised_ = gate_raised;
182182

183183
// TODO Scale range or offset?
184-
uint32_t value = OC::DAC::get_zero_offset(dac_channel) + bb_.ProcessSingleSample(gate_state);
184+
uint32_t value = OC::DAC::get_zero_offset(dac_channel) + bb_.ProcessSingleSample(gate_state, OC::DAC::MAX_VALUE - OC::DAC::get_zero_offset(dac_channel));
185185
OC::DAC::set<dac_channel>(value);
186186
}
187187

software/o_c_REV/APP_BYTEBEATGEN.ino

+5-1
Original file line numberDiff line numberDiff line change
@@ -312,7 +312,11 @@ public:
312312

313313
// TODO Scale range or offset?
314314
uint16_t b = bytebeat_.ProcessSingleSample(gate_state);
315-
uint32_t value = OC::DAC::get_zero_offset(dac_channel) + (int16_t)b;
315+
#ifdef BUCHLA_4U
316+
uint32_t value = OC::DAC::get_zero_offset(dac_channel) + b;
317+
#else
318+
uint32_t value = OC::DAC::get_zero_offset(dac_channel) + (int16_t)b;
319+
#endif
316320
OC::DAC::set<dac_channel>(value);
317321

318322

0 commit comments

Comments
 (0)