annotate hrutil/cod-out-endian.c @ 609:a2b2ca082dd7 default tip

hrutil: new program gsmhr-tfo-xfrm-dc
author Mychaela Falconia <falcon@freecalypso.org>
date Tue, 24 Feb 2026 04:16:57 +0000
parents hrutil/tw5b-out-cod.c@129c895a0564
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
557
129c895a0564 hrutil: new program gsmhr-cod2hex
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
1 /*
609
a2b2ca082dd7 hrutil: new program gsmhr-tfo-xfrm-dc
Mychaela Falconia <falcon@freecalypso.org>
parents: 557
diff changeset
2 * The helper function implemented in this module emits an encoder output
a2b2ca082dd7 hrutil: new program gsmhr-tfo-xfrm-dc
Mychaela Falconia <falcon@freecalypso.org>
parents: 557
diff changeset
3 * array of params (*.cod format) in either BE or LE format. This helper
a2b2ca082dd7 hrutil: new program gsmhr-tfo-xfrm-dc
Mychaela Falconia <falcon@freecalypso.org>
parents: 557
diff changeset
4 * function will be used for gsmhr-etsi-enc and gsmhr-tfo-xfrm-dc utilities,
a2b2ca082dd7 hrutil: new program gsmhr-tfo-xfrm-dc
Mychaela Falconia <falcon@freecalypso.org>
parents: 557
diff changeset
5 * which need to both read and write ETSI-format files that are subject to
a2b2ca082dd7 hrutil: new program gsmhr-tfo-xfrm-dc
Mychaela Falconia <falcon@freecalypso.org>
parents: 557
diff changeset
6 * endian concerns.
557
129c895a0564 hrutil: new program gsmhr-cod2hex
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
7 */
129c895a0564 hrutil: new program gsmhr-cod2hex
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
8
129c895a0564 hrutil: new program gsmhr-cod2hex
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
9 #include <stdint.h>
129c895a0564 hrutil: new program gsmhr-cod2hex
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
10 #include <stdio.h>
129c895a0564 hrutil: new program gsmhr-cod2hex
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
11 #include "../libgsmhr1/tw_gsmhr.h"
129c895a0564 hrutil: new program gsmhr-cod2hex
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
12
129c895a0564 hrutil: new program gsmhr-cod2hex
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
13 void
609
a2b2ca082dd7 hrutil: new program gsmhr-tfo-xfrm-dc
Mychaela Falconia <falcon@freecalypso.org>
parents: 557
diff changeset
14 emit_cod_to_endian(outf, params, big_endian)
557
129c895a0564 hrutil: new program gsmhr-cod2hex
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
15 FILE *outf;
129c895a0564 hrutil: new program gsmhr-cod2hex
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
16 int16_t *params;
129c895a0564 hrutil: new program gsmhr-cod2hex
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
17 {
609
a2b2ca082dd7 hrutil: new program gsmhr-tfo-xfrm-dc
Mychaela Falconia <falcon@freecalypso.org>
parents: 557
diff changeset
18 uint8_t file_bytes[GSMHR_NUM_PARAMS_ENC * 2], *dp;
a2b2ca082dd7 hrutil: new program gsmhr-tfo-xfrm-dc
Mychaela Falconia <falcon@freecalypso.org>
parents: 557
diff changeset
19 unsigned n;
a2b2ca082dd7 hrutil: new program gsmhr-tfo-xfrm-dc
Mychaela Falconia <falcon@freecalypso.org>
parents: 557
diff changeset
20 uint16_t val;
557
129c895a0564 hrutil: new program gsmhr-cod2hex
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
21
609
a2b2ca082dd7 hrutil: new program gsmhr-tfo-xfrm-dc
Mychaela Falconia <falcon@freecalypso.org>
parents: 557
diff changeset
22 dp = file_bytes;
a2b2ca082dd7 hrutil: new program gsmhr-tfo-xfrm-dc
Mychaela Falconia <falcon@freecalypso.org>
parents: 557
diff changeset
23 for (n = 0; n < GSMHR_NUM_PARAMS_ENC; n++) {
a2b2ca082dd7 hrutil: new program gsmhr-tfo-xfrm-dc
Mychaela Falconia <falcon@freecalypso.org>
parents: 557
diff changeset
24 val = params[n];
a2b2ca082dd7 hrutil: new program gsmhr-tfo-xfrm-dc
Mychaela Falconia <falcon@freecalypso.org>
parents: 557
diff changeset
25 if (big_endian) {
a2b2ca082dd7 hrutil: new program gsmhr-tfo-xfrm-dc
Mychaela Falconia <falcon@freecalypso.org>
parents: 557
diff changeset
26 *dp++ = val >> 8;
a2b2ca082dd7 hrutil: new program gsmhr-tfo-xfrm-dc
Mychaela Falconia <falcon@freecalypso.org>
parents: 557
diff changeset
27 *dp++ = val;
a2b2ca082dd7 hrutil: new program gsmhr-tfo-xfrm-dc
Mychaela Falconia <falcon@freecalypso.org>
parents: 557
diff changeset
28 } else {
a2b2ca082dd7 hrutil: new program gsmhr-tfo-xfrm-dc
Mychaela Falconia <falcon@freecalypso.org>
parents: 557
diff changeset
29 *dp++ = val;
a2b2ca082dd7 hrutil: new program gsmhr-tfo-xfrm-dc
Mychaela Falconia <falcon@freecalypso.org>
parents: 557
diff changeset
30 *dp++ = val >> 8;
a2b2ca082dd7 hrutil: new program gsmhr-tfo-xfrm-dc
Mychaela Falconia <falcon@freecalypso.org>
parents: 557
diff changeset
31 }
a2b2ca082dd7 hrutil: new program gsmhr-tfo-xfrm-dc
Mychaela Falconia <falcon@freecalypso.org>
parents: 557
diff changeset
32 }
a2b2ca082dd7 hrutil: new program gsmhr-tfo-xfrm-dc
Mychaela Falconia <falcon@freecalypso.org>
parents: 557
diff changeset
33 fwrite(file_bytes, 2, GSMHR_NUM_PARAMS_ENC, outf);
557
129c895a0564 hrutil: new program gsmhr-cod2hex
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
34 }