| 91 | } |
| 92 | |
| 93 | void updateTimeStr(struct tm timeInfo) { |
| 94 | if (bruceConfig.clock24hr) { |
| 95 | // Use 24 hour format |
| 96 | snprintf( |
| 97 | timeStr, sizeof(timeStr), "%02d:%02d:%02d", timeInfo.tm_hour, timeInfo.tm_min, timeInfo.tm_sec |
| 98 | ); |
| 99 | } else { |
| 100 | // Use 12 hour format with AM/PM |
| 101 | int hour12 = (timeInfo.tm_hour == 0) ? 12 |
| 102 | : (timeInfo.tm_hour > 12) ? timeInfo.tm_hour - 12 |
| 103 | : timeInfo.tm_hour; |
| 104 | const char *ampm = (timeInfo.tm_hour < 12) ? "AM" : "PM"; |
| 105 | |
| 106 | snprintf( |
| 107 | timeStr, sizeof(timeStr), "%02d:%02d:%02d %s", hour12, timeInfo.tm_min, timeInfo.tm_sec, ampm |
| 108 | ); |
| 109 | } |
| 110 | } |
| 111 | |
| 112 | void showDeviceInfo() { |
| 113 | ScrollableTextArea area = ScrollableTextArea("DEVICE INFO"); |
no outgoing calls
no test coverage detected