Merge pull request #164 from g0wfv/develop

DStar & DMR: Disable HD44780 scrolling to solve audio decode issues.
This commit is contained in:
Jonathan Naylor
2016-09-29 20:16:12 +01:00
committed by GitHub
2 changed files with 66 additions and 7 deletions

View File

@@ -404,7 +404,8 @@ void CHD44780::writeDStarInt(const char* my1, const char* my2, const char* your,
}
::lcdPosition(m_fd, 0, (m_rows / 2) - 1);
::lcdPrintf(m_fd, "%.8s/%.4s", my1, my2);
::lcdPutchar(m_fd, 0);
::lcdPrintf(m_fd, " %.8s/%.4s", my1, my2);
::lcdPosition(m_fd, m_cols - 1, (m_rows / 2) - 1);
if (strcmp(type, "R") == 0) {
@@ -422,12 +423,19 @@ void CHD44780::writeDStarInt(const char* my1, const char* my2, const char* your,
}
if (strcmp(reflector, " ") != 0) {
::sprintf(m_buffer3, " via %.8s", reflector);
strcat(m_buffer1, m_buffer3);
if (m_rows == 2 && m_cols == 40) {
::sprintf(m_buffer3, " via %.8s", reflector);
strcat(m_buffer1, m_buffer3);
} else if (m_rows > 2) {
::sprintf(m_buffer3, "via %.8s", reflector);
::lcdPosition(m_fd, 0, (m_rows / 2) + 1);
::lcdPrintf(m_fd, "%.*s", m_cols, m_buffer3);
}
}
::lcdPosition(m_fd, 0, (m_rows / 2));
::lcdPrintf(m_fd, "%.*s", m_cols, m_buffer1);
::lcdPutchar(m_fd, 1);
::lcdPrintf(m_fd, " %.*s", m_cols, m_buffer1);
// Start the D-Star scroll timer if text in m_buffer1 will not fit in the space available
if (strlen(m_buffer1) > m_cols) {
@@ -863,8 +871,10 @@ void CHD44780::clockInt(unsigned int ms)
m_clockDisplayTimer.start();
}
/* Scrolling disabled for now as it is slowing things down just enough to screw with the audio processing! */
// DMR Slot 1 scrolling
if (m_dmrScrollTimer1.isRunning() && m_dmrScrollTimer1.hasExpired()) {
if (1 != 1 && m_dmrScrollTimer1.isRunning() && m_dmrScrollTimer1.hasExpired()) {
strncat(m_buffer1, m_buffer1, 1); // Move the first character to the end of the buffer
memmove(m_buffer1, m_buffer1 + 1, strlen(m_buffer1)); // Strip the first character
::lcdPosition(m_fd, 2, (m_rows / 2) - 1); // Position on the LCD
@@ -873,7 +883,7 @@ void CHD44780::clockInt(unsigned int ms)
}
// DMR Slot 2 scrolling
if (m_dmrScrollTimer2.isRunning() && m_dmrScrollTimer2.hasExpired()) {
if (1 != 1 && m_dmrScrollTimer2.isRunning() && m_dmrScrollTimer2.hasExpired()) {
strncat(m_buffer2, m_buffer2, 1);
memmove(m_buffer2, m_buffer2 + 1, strlen(m_buffer2));
::lcdPosition(m_fd, 2, (m_rows / 2));
@@ -882,7 +892,7 @@ void CHD44780::clockInt(unsigned int ms)
}
// D-Star scrolling
if (m_dstarScrollTimer.isRunning() && m_dstarScrollTimer.hasExpired()) {
if (1 != 1 && m_dstarScrollTimer.isRunning() && m_dstarScrollTimer.hasExpired()) {
strncat(m_buffer1, m_buffer1, 1);
memmove(m_buffer1, m_buffer1 + 1, strlen(m_buffer1));
::lcdPosition(m_fd, 0, (m_rows / 2));

View File

@@ -56,3 +56,52 @@ IDLE SCREEN LAYOUTS
2| HH:MM:SS | 2| |
3|MMDVM Idle| 3|MMDVM Idle|
+--------------------+ +--------------------+
D-STAR LAYOUTS
-------------
16 x 2
------
0 1
0123456789012345
+----------------+
0|F AAAAAAAA/AAAAX|
1|T AAAAAAAA |
+----------------+
40 x 2
------
0 1 2 3
0123456789012345678901234567890123456789
+----------------------------------------+
0|F AAAAAAAA/AAAA X|
1|T AAAAAAAA via AAAAAAAA |
+----------------------------------------+
16 x 4
------
0 1
0123456789012345
+----------------+
0|D-Star |
1|F AAAAAAAA/AAAAX|
2|T AAAAAAAA |
3|via AAAAAAAA |
+----------------+
20 x 4
------
0 1
01234567890123456479
+--------------------+
0|D-Star |
1|F AAAAAAAA/AAAA X|
2|T AAAAAAAA |
3|via AAAAAAAA |
+--------------------+