FreeCalypso > hg > fc-sim-tools
comparison serial/main.c @ 53:fbedb67d234f
serial: fix parity for inverse coding convention
Important note: it is my (Mother Mychaela's) understanding that
SIM cards with inverse coding convention are extremely rare,
and I have never seen such a card. Therefore, our support for
the inverse coding convention will likely remain forever untested.
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Sun, 21 Mar 2021 20:46:09 +0000 |
parents | be27d1c85861 |
children |
comparison
equal
deleted
inserted
replaced
52:0fec41a10131 | 53:fbedb67d234f |
---|---|
4 | 4 |
5 #include <stdio.h> | 5 #include <stdio.h> |
6 #include <stdlib.h> | 6 #include <stdlib.h> |
7 | 7 |
8 extern unsigned baud_base, baud_spenh; | 8 extern unsigned baud_base, baud_spenh; |
9 extern int inverse_coding; | |
9 | 10 |
10 main(argc, argv) | 11 main(argc, argv) |
11 char **argv; | 12 char **argv; |
12 { | 13 { |
13 char inbuf[576]; | 14 char inbuf[576]; |
18 fprintf(stderr, "usage: %s ttyport baud\n", argv[0]); | 19 fprintf(stderr, "usage: %s ttyport baud\n", argv[0]); |
19 exit(1); | 20 exit(1); |
20 } | 21 } |
21 open_serial_port(argv[1]); | 22 open_serial_port(argv[1]); |
22 parse_baud_spenh_arg(argv[2]); | 23 parse_baud_spenh_arg(argv[2]); |
23 set_serial_params(baud_base); | 24 set_serial_params(baud_base, -1); |
24 set_serial_nonblock(0); | 25 set_serial_nonblock(0); |
25 serial_card_reset(); | 26 serial_card_reset(); |
26 rc = collect_atr(); | 27 rc = collect_atr(); |
27 if (rc < 0) | 28 if (rc < 0) |
28 exit(1); | 29 exit(1); |
29 print_atr("A"); | 30 print_atr("A"); |
31 set_serial_params(baud_base, inverse_coding); | |
30 if (baud_spenh) | 32 if (baud_spenh) |
31 spenh_logic(); | 33 spenh_logic(); |
32 putchar('\n'); | 34 putchar('\n'); |
33 fflush(stdout); | 35 fflush(stdout); |
34 | 36 |