FreeCalypso > hg > freecalypso-tools
comparison ffstools/caltools/c1xx-calextr.c @ 297:b1ac1bd1dbbf
c1xx-calextr: table conversion implemented
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Sat, 18 Nov 2017 17:45:10 +0000 |
parents | 77d561735b07 |
children | 734b38f634db |
comparison
equal
deleted
inserted
replaced
296:77d561735b07 | 297:b1ac1bd1dbbf |
---|---|
63 exit(1); | 63 exit(1); |
64 } | 64 } |
65 close(fd); | 65 close(fd); |
66 } | 66 } |
67 | 67 |
68 do_rx_agcparams(band, compal_data) | |
69 struct band *band; | |
70 u_char *compal_data; | |
71 { | |
72 u_char rx_agcparams_table[8]; | |
73 | |
74 bcopy(compal_data, rx_agcparams_table, 2); | |
75 /* the remaining fields are constants unchanged from TI */ | |
76 rx_agcparams_table[2] = 40; | |
77 rx_agcparams_table[3] = 0; | |
78 rx_agcparams_table[4] = 40; | |
79 rx_agcparams_table[5] = 0; | |
80 rx_agcparams_table[6] = 44; | |
81 rx_agcparams_table[7] = 0; | |
82 /* ASCII and binary write-out to be implemented */ | |
83 } | |
84 | |
85 do_tx_levels(band, compal_data) | |
86 struct band *band; | |
87 u_char *compal_data; | |
88 { | |
89 u_char tx_levels_table[128], *sp, *dp; | |
90 unsigned num_levels, n; | |
91 | |
92 bzero(tx_levels_table, sizeof tx_levels_table); | |
93 num_levels = band->end_plnum - band->start_plnum; | |
94 sp = compal_data; | |
95 dp = tx_levels_table + band->start_plnum * 4; | |
96 for (n = 0; n < num_levels; n++) { | |
97 *dp++ = *sp++; | |
98 *dp++ = *sp++; | |
99 *dp++ = n; | |
100 *dp++ = 0; | |
101 } | |
102 /* ASCII and binary write-out to be implemented */ | |
103 } | |
104 | |
68 process_band_record(band, offset) | 105 process_band_record(band, offset) |
69 struct band *band; | 106 struct band *band; |
70 unsigned offset; | 107 unsigned offset; |
71 { | 108 { |
72 u_char *record; | 109 u_char *record; |
82 } | 119 } |
83 if (bcmp(record + band->magic2_offset + 8, record_magic, 4)) { | 120 if (bcmp(record + band->magic2_offset + 8, record_magic, 4)) { |
84 printf("bad magic3, skipping\n"); | 121 printf("bad magic3, skipping\n"); |
85 return(-1); | 122 return(-1); |
86 } | 123 } |
87 /* Rx GMagic and Tx levels extraction to be filled */ | 124 do_rx_agcparams(band, record + 4); |
125 do_tx_levels(band, record + band->magic2_offset + 12); | |
88 return(0); | 126 return(0); |
89 } | 127 } |
90 | 128 |
91 process_sector_data() | 129 process_sector_data() |
92 { | 130 { |