Skip to content

Commit be8c58e

Browse files
committed
[SGU] Update with SGU-1 v0.1.0
1 parent 549b5ef commit be8c58e

File tree

2 files changed

+26
-22
lines changed

2 files changed

+26
-22
lines changed

ext/firmware

src/ui/ui_sgu1.cc

Lines changed: 25 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -46,36 +46,40 @@ static void ui_util_s8(int8_t val) {
4646

4747
static void _ui_sgu1_op_flags(uint8_t reg, uint8_t value) {
4848
switch (reg) {
49-
// R0 [7]TRM [6]VIB [5]FIX [4]--- [3:0]MUL
49+
// R0: [7]TRM [6]VIB [5:4]KSR [3:0]MUL
5050
case 0: {
5151
ImGui::Text(
52-
"%s %s %s --- MUL:%01X",
53-
SGU_OP0_TRM(value) ? "TRM" : " ",
54-
SGU_OP0_VIB(value) ? "VIB" : " ",
55-
SGU_OP0_FIX(value) ? "FIX" : " ",
52+
"%s %s MUL:%01X MUL:%01X",
53+
SGU_OP0_TRM(value) ? "TRM" : "t..",
54+
SGU_OP0_VIB(value) ? "VIB" : "v..",
55+
SGU_OP0_KSR(value),
5656
SGU_OP0_MUL(value));
5757
} break;
58-
// R1 [7:6]KSL [5:0]TL(0..63)
58+
// R1: [7:6]KSL [5:0]TL_lo6
5959
case 1: {
6060
ImGui::Text("KSL:%01X TL:%02X", SGU_OP1_KSL(value), SGU_OP1_TL_LO6(value));
6161
} break;
62-
// R2 [7:4]AR_lo4 [3:0]DR_lo4
62+
// R2: [7:4]AR_lo4 [3:0]DR_lo4
6363
case 2: {
6464
ImGui::Text("AR:%01X DR:%01X", SGU_OP2_AR_LO4(value), SGU_OP2_DR_LO4(value));
6565
} break;
66-
// R3 [7:4]SL(0..15) [3:0]RR(0..15)
66+
// R3: [7:4]SL [3:0]RR
6767
case 3: {
6868
ImGui::Text("SL:%01X RR:%01X", SGU_OP3_SL(value), SGU_OP3_RR(value));
6969
} break;
70-
// R4 [7:5]DT [4:0]SR(0..31)
70+
// R4: [7:5]DT [4:0]SR
7171
case 4: {
7272
ImGui::Text("DT:%01X SR:%02X", SGU_OP4_DT(value), SGU_OP4_SR(value));
7373
} break;
74-
// R5 [7:5]DELAY [4:3]KSR [2:0]WPAR
74+
// R5: [7:5]DELAY [4]FIX [3:0]WPAR
7575
case 5: {
76-
ImGui::Text("DEL:%01X KSR:%01X WPAR:%01X", SGU_OP5_DELAY(value), SGU_OP5_KSR(value), SGU_OP5_WPAR(value));
76+
ImGui::Text(
77+
"DEL:%01X %s WPAR:%01X",
78+
SGU_OP5_DELAY(value),
79+
SGU_OP5_FIX(value) ? "FIX" : " ",
80+
SGU_OP5_WPAR(value));
7781
} break;
78-
// R6 [7]TRMD [6]VIBD [5]SYNC [4]RING [3:1]MOD [0]TL_msb
82+
// R6: [7]TRMD [6]VIBD [5]SYNC [4]RING [3:1]MOD [0]TL_msb
7983
case 6: {
8084
ImGui::Text(
8185
"%s %s %s %s MOD:%01X TL>:%01X",
@@ -86,7 +90,7 @@ static void _ui_sgu1_op_flags(uint8_t reg, uint8_t value) {
8690
SGU_OP6_MOD(value),
8791
SGU_OP6_TL_MSB(value));
8892
} break;
89-
// R7 [7:5]OUT [4]AR_msb [3]DR_msb [2:0]WAVE
93+
// R7: [7:5]OUT [4]AR_msb [3]DR_msb [2:0]WAVE
9094
case 7: {
9195
ImGui::Text(
9296
"OUT:%01X AR>:%01X DR>:%01X WAV:%01X",
@@ -119,7 +123,7 @@ static void _ui_sgu1_draw_state(ui_sgu1_t* win) {
119123

120124
ImGui::PushStyleColor(
121125
ImGuiCol_PlotLines,
122-
(su->chan[i].flags0 & SGU1_FLAGS0_CTL_KEYON) ? on_ch_col : off_ch_col);
126+
(su->chan[i].flags0 & SGU1_FLAGS0_CTL_GATE) ? on_ch_col : off_ch_col);
123127
ImGui::PlotLines(
124128
"##samples",
125129
sgu->voice[i].sample_buffer,
@@ -274,19 +278,19 @@ static void _ui_sgu1_draw_state(ui_sgu1_t* win) {
274278
for (int i = 0; i < SGU_CHNS; i++) {
275279
ImGui::PushID(i);
276280
ImGui::PushStyleVar(ImGuiStyleVar_FramePadding, ImVec2(0.0f, 0.0f));
277-
if (ImGui::Button((su->chan[i].flags0 & SGU1_FLAGS0_CTL_KEYON) ? "ON" : "OFF")) {
278-
if (su->chan[i].flags0 & SGU1_FLAGS0_CTL_KEYON) {
281+
if (ImGui::Button((su->chan[i].flags0 & SGU1_FLAGS0_CTL_GATE) ? "ON" : "OFF")) {
282+
if (su->chan[i].flags0 & SGU1_FLAGS0_CTL_GATE) {
279283
sgu1_direct_reg_write(
280284
sgu,
281-
(uint16_t)(i * SGU_REGS_PER_CH + SGU_OP_PER_CH * SGU_OP_REGS + SGU1_CHAN_FLAGS0),
282-
su->chan[i].flags0 & ~SGU1_FLAGS0_CTL_KEYON);
283-
su->chan[i].flags0 &= ~SGU1_FLAGS0_CTL_KEYON;
285+
(uint16_t)(i * SGU_REGS_PER_CH + SGU_OP_PER_CH * SGU_OP_REGS + SGU1_CHN_FLAGS0),
286+
su->chan[i].flags0 & ~SGU1_FLAGS0_CTL_GATE);
287+
su->chan[i].flags0 &= ~SGU1_FLAGS0_CTL_GATE;
284288
}
285289
else {
286290
sgu1_direct_reg_write(
287291
sgu,
288-
(uint16_t)(i * SGU_REGS_PER_CH + SGU_OP_PER_CH * SGU_OP_REGS + SGU1_CHAN_FLAGS0),
289-
su->chan[i].flags0 | SGU1_FLAGS0_CTL_KEYON);
292+
(uint16_t)(i * SGU_REGS_PER_CH + SGU_OP_PER_CH * SGU_OP_REGS + SGU1_CHN_FLAGS0),
293+
su->chan[i].flags0 | SGU1_FLAGS0_CTL_GATE);
290294
}
291295
}
292296
ImGui::PopStyleVar();

0 commit comments

Comments
 (0)