diff ffstools/cal2text/smallconv.c @ 142:d41edd329670

fc-cal2text utility written, compiles
author Mychaela Falconia <falcon@freecalypso.org>
date Mon, 27 Feb 2017 03:37:11 +0000
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/ffstools/cal2text/smallconv.c	Mon Feb 27 03:37:11 2017 +0000
@@ -0,0 +1,36 @@
+/*
+ * /gsm/rf/afcdac and /gsm/rf/stdmap each store a single 16-bit value,
+ * and are not tables in the rftw/rftr sense, hence the code in rftablewr.c
+ * does not handle these two.  However, in fc-cal2text we would like to
+ * handle their conversion from binary to ASCII the same way as the bigger
+ * tables, hence the two functions in this module.
+ */
+
+#include <sys/types.h>
+#include <stdio.h>
+#include <stdint.h>
+#include <endian.h>
+
+void
+write_afcdac_ascii(bin, outf)
+	uint16_t *bin;
+	FILE *outf;
+{
+	int i;
+
+	i = le16toh(*bin);
+	if (i >= 32768)
+		i -= 65536;
+	fprintf(outf, "%d\n", i);
+}
+
+void
+write_stdmap_ascii(bin, outf)
+	uint16_t *bin;
+	FILE *outf;
+{
+	int i;
+
+	i = le16toh(*bin);
+	fprintf(outf, "0x%04X\n", i);
+}