@@ -920,90 +920,92 @@ struct TrackTune : PageComponent {
920920struct TonesNumber : PageComponent {
921921
922922 void view () {
923- genericOptionView (" tones" , _number_of_tones , line, col, selected);
923+ genericOptionView (" tones" , generative_303[_selected_track]. number_of_tones , line, col, selected);
924924 }
925925
926926 void change (int16_t data) {
927- data = parseData (data, 1 , 7 , _number_of_tones );
928- _number_of_tones = data;
927+ data = parseData (data, 1 , 7 , generative_303[_selected_track]. number_of_tones );
928+ generative_303[_selected_track]. number_of_tones = data;
929929 }
930930
931931} tonesNumberComponent;
932932
933933struct LowOctave : PageComponent {
934934
935935 void view () {
936- genericOptionView (" octave" , _lower_octave , line, col, selected);
936+ genericOptionView (" octave" , generative_303[_selected_track]. lower_octave , line, col, selected);
937937 }
938938
939939 void change (int16_t data) {
940- data = parseData (data, 1 , 11 , _lower_octave );
941- _lower_octave = data;
940+ data = parseData (data, 1 , 11 , generative_303[_selected_track]. lower_octave );
941+ generative_303[_selected_track]. lower_octave = data;
942942 }
943943
944944} lowOctaveComponent;
945945
946946struct RangeOctave : PageComponent {
947947
948948 void view () {
949- genericOptionView (" octaves" , _range_octave , line, col, selected);
949+ genericOptionView (" octaves" , generative_303[_selected_track]. range_octave , line, col, selected);
950950 }
951951
952952 void change (int16_t data) {
953- data = parseData (data, 1 , 11 , _range_octave );
954- _range_octave = data;
953+ data = parseData (data, 1 , 11 , generative_303[_selected_track]. range_octave );
954+ generative_303[_selected_track]. range_octave = data;
955955 }
956956
957957} rangeOctaveComponent;
958958
959959struct AccentAmount : PageComponent {
960960
961961 void view () {
962- genericOptionView (" accent" , _accent_probability, line, col, selected);
962+ uint8_t accent_probability = AcidSequencer.is303 (_selected_track) ? generative_303[_selected_track].accent_probability : generative_808[_selected_track-TRACK_NUMBER_303].accent_probability ;
963+ genericOptionView (" accent" , accent_probability, line, col, selected);
963964 }
964965
965966 void change (int16_t data) {
966- data = parseData (data, 0 , 100 , _accent_probability);
967- _accent_probability = data;
967+ uint8_t * accent_probability = AcidSequencer.is303 (_selected_track) ? &generative_303[_selected_track].accent_probability : &generative_808[_selected_track-TRACK_NUMBER_303].accent_probability ;
968+ data = parseData (data, 0 , 100 , *accent_probability);
969+ *accent_probability = data;
968970 }
969-
971+
970972} accentAmountComponent;
971973
972974struct SlideAmount : PageComponent {
973975
974976 void view () {
975- genericOptionView (" slide" , _slide_probability , line, col, selected);
977+ genericOptionView (" slide" , generative_303[_selected_track]. slide_probability , line, col, selected);
976978 }
977979
978980 void change (int16_t data) {
979- data = parseData (data, 0 , 100 , _slide_probability );
980- _slide_probability = data;
981+ data = parseData (data, 0 , 100 , generative_303[_selected_track]. slide_probability );
982+ generative_303[_selected_track]. slide_probability = data;
981983 }
982984
983985} slideAmountComponent;
984986
985987struct TieAmount : PageComponent {
986988
987989 void view () {
988- genericOptionView (" tie" , _tie_probability , line, col, selected);
990+ genericOptionView (" tie" , generative_303[_selected_track]. tie_probability , line, col, selected);
989991 }
990992
991993 void change (int16_t data) {
992- data = parseData (data, 0 , 100 , _tie_probability );
993- _tie_probability = data;
994+ data = parseData (data, 0 , 100 , generative_303[_selected_track]. tie_probability );
995+ generative_303[_selected_track]. tie_probability = data;
994996 }
995997
996998} tieAmountComponent;
997999
9981000struct RollAmount : PageComponent {
9991001
10001002 void view () {
1001- genericOptionView (" roll" , _roll_probability , line, col, selected);
1003+ genericOptionView (" roll" , generative_808[_selected_track-TRACK_NUMBER_303]. roll_probability , line, col, selected);
10021004 }
10031005
10041006 void change (int16_t data) {
1005- data = parseData (data, 0 , 100 , _roll_probability );
1006- _roll_probability = data;
1007+ data = parseData (data, 0 , 100 , generative_808[_selected_track-TRACK_NUMBER_303]. roll_probability );
1008+ generative_808[_selected_track-TRACK_NUMBER_303]. roll_probability = data;
10071009 }
10081010
10091011} rollAmountComponent;
@@ -1034,13 +1036,15 @@ struct TrackFill : PageComponent {
10341036 }
10351037
10361038 void view () {
1037- genericOptionView (" fill" , _generative_fill, line, col, selected, true );
1039+ uint8_t generative_fill = AcidSequencer.is303 (_selected_track) ? generative_303[_selected_track].generative_fill : generative_808[_selected_track-TRACK_NUMBER_303].generative_fill ;
1040+ genericOptionView (" fill" , generative_fill, line, col, selected, true );
10381041 }
10391042
10401043 void change (int16_t data) {
10411044 // clearStackNote(_selected_track);
1042- data = parseData (data, 1 , 100 , _generative_fill);
1043- _generative_fill = data;
1045+ uint8_t * generative_fill = AcidSequencer.is303 (_selected_track) ? &generative_303[_selected_track].generative_fill : &generative_808[_selected_track-TRACK_NUMBER_303].generative_fill ;
1046+ data = parseData (data, 1 , 100 , *generative_fill);
1047+ *generative_fill = data;
10441048 }
10451049
10461050} fillComponent;
0 commit comments