Add octaves to Piano Roll
This commit is contained in:
parent
b57f03f963
commit
b57095ead6
22
src/main.cpp
22
src/main.cpp
|
@ -623,8 +623,20 @@ void displayNoteRoll(xmp_module_info *mi, xmp_frame_info *fi) {
|
||||||
chtype no_pair = COLOR_PAIR(5);
|
chtype no_pair = COLOR_PAIR(5);
|
||||||
for (int y = vOffset; y < ins; y++) {
|
for (int y = vOffset; y < ins; y++) {
|
||||||
if (!dynamicRoll) { prMin = 0; prMax = 144; }
|
if (!dynamicRoll) { prMin = 0; prMax = 144; }
|
||||||
|
else if (y == vOffset) {
|
||||||
|
for (int l = 0; l < (96/12); l++) {
|
||||||
|
int cnote = (l*12);
|
||||||
|
if (cnote < prMin && l == (prMin / 12)) {
|
||||||
|
wmove(dis, 0, 0);
|
||||||
|
wprintw(dis, "<%i", l);
|
||||||
|
} else if (cnote <= prMax && cnote >= prMin) {
|
||||||
|
wmove(dis, 0, (((cnote - prMin) * (COLS - 5)) / (prMax - prMin))+3);
|
||||||
|
wprintw(dis, "%i", l);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
if (y > (LINES - 5)+vOffset || y < 0) continue;
|
if (y > (LINES - 5)+vOffset || y < 0) continue;
|
||||||
wmove(dis, y-vOffset, 0);
|
wmove(dis, y-vOffset+1, 0);
|
||||||
wattron(dis, no_pair);
|
wattron(dis, no_pair);
|
||||||
wprintw(dis, "%02X", y);
|
wprintw(dis, "%02X", y);
|
||||||
wattroff(dis, no_pair);
|
wattroff(dis, no_pair);
|
||||||
|
@ -642,15 +654,15 @@ void displayNoteRoll(xmp_module_info *mi, xmp_frame_info *fi) {
|
||||||
int note = ((cinfo.note - prMin) * (COLS - 5)) / (dynamicRoll?(prMax - prMin):96);
|
int note = ((cinfo.note - prMin) * (COLS - 5)) / (dynamicRoll?(prMax - prMin):96);
|
||||||
if (cinfo.instrument != y) continue;
|
if (cinfo.instrument != y) continue;
|
||||||
|
|
||||||
wmove(dis, y-vOffset, note+3);
|
wmove(dis, y-vOffset+1, note+3);
|
||||||
if (cinfo.volume >= 32)
|
if (cinfo.volume >= 32)
|
||||||
waddstr(dis, "#");
|
waddstr(dis, "#");
|
||||||
else if (cinfo.volume >= 16 && (char)mvwinch(dis, y-vOffset, note+3) != '#')
|
else if (cinfo.volume >= 16 && (char)mvwinch(dis, y-vOffset+1, note+3) != '#')
|
||||||
waddstr(dis, "=");
|
waddstr(dis, "=");
|
||||||
else if (cinfo.volume > 0 && ((char)mvwinch(dis, y-vOffset, note+3) != '-' || (char)mvwinch(dis, y-vOffset, note+3) != '#'))
|
else if (cinfo.volume > 0 && ((char)mvwinch(dis, y-vOffset+1, note+3) != '-' || (char)mvwinch(dis, y-vOffset, note+3) != '#'))
|
||||||
waddstr(dis, "-");
|
waddstr(dis, "-");
|
||||||
}
|
}
|
||||||
wmove(dis, y, COLS-4);
|
wmove(dis, y+1, COLS-4);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user