SDRPlusPlus/decoder_modules/m17_decoder/src/base40.cpp

16 lines
357 B
C++
Raw Normal View History

2021-09-28 20:46:19 +02:00
#include <base40.h>
void decode_callsign_base40(uint64_t encoded, char *callsign) {
if (encoded >= 262144000000000) { // 40^9
*callsign = 0;
return;
}
char *p = callsign;
for (; encoded > 0; p++) {
*p = " ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-/."[encoded % 40];
encoded /= 40;
}
*p = 0;
return;
}