comparison SIM-data-formats @ 39:ce044aa49baf

SIM-data-formats: minor updates, including \E addition
author Mychaela Falconia <falcon@freecalypso.org>
date Thu, 25 Mar 2021 00:57:08 +0000
parents ec184dad4877
children 7609ff4be49f
comparison
equal deleted inserted replaced
38:ec184dad4877 39:ce044aa49baf
1 FreeCalypso is developing a family of several different tools that operate on 1 FreeCalypso is developing a family of several different tools that operate on
2 SIM cards and user data (primarily phonebooks) stored in them, accessing the 2 SIM cards and user data (primarily phonebooks) stored in them, accessing the
3 same underlying data through various mechanisms: 3 same underlying data through various mechanisms:
4 4
5 * Our current fc-simtool utility operates on SIM cards inserted into a smart 5 * fc-simtool in our FC SIM tools suite operates on SIM cards inserted into a
6 card "reader" device, without going through any kind of phone or other GSM 6 smart card "reader" device, without going through any kind of phone or other
7 device - most direct manipulation of SIM user data content. 7 GSM device - most direct manipulation of SIM user data content.
8 8
9 * We have plans to develop a companion utility (tentatively named fc-simint) 9 * Our FC host tools suite features a new utility called fc-simint - it is a
10 that will operate on SIM cards inserted into Calypso phones or FC modem 10 front end to fc-simtool that operates on SIM cards inserted into Calypso
11 boards, working on the same principle as fc-loadtool (suspending and bypassing 11 phones or FC modem boards, working on the same principle as fc-loadtool
12 the Calypso device's regular operational firmware), but operating on the 12 (suspending and bypassing the Calypso device's regular operational firmware),
13 device's SIM interface rather than its flash. This companion utility is 13 but operating on the device's SIM interface rather than its flash.
14 planned to replicate the end-user-oriented functionality of fc-simtool.
15 14
16 * We have a FreeCalypso User Phone Tools suite that communicates with FC modem 15 * We have a FreeCalypso User Phone Tools suite that communicates with FC modem
17 boards and the future FC phone handset via AT commands. We have plans to add 16 boards and the future FC phone handset via AT commands. We have plans to add
18 phonebook manipulation commands to this suite (based on AT+CPBR and AT+CPBW), 17 phonebook manipulation commands to this suite (based on AT+CPBR and AT+CPBW),
19 reading and writing phonebook data files in the same format as fc-simtool. 18 reading and writing phonebook data files in the same format as fc-simtool.
58 becoming \" 57 becoming \"
59 58
60 * GSM7 escape sequences for ASCII characters [\]^ and {|}~ are recognized and 59 * GSM7 escape sequences for ASCII characters [\]^ and {|}~ are recognized and
61 converted to these ASCII characters; \ is then escaped in the output as \\ 60 converted to these ASCII characters; \ is then escaped in the output as \\
62 61
62 * GSM7 escape sequence for the Euro currency symbol is recognized and converted
63 to \E
64
63 * GSM7 code points corresponding to CR and LF are represented as \r and \n 65 * GSM7 code points corresponding to CR and LF are represented as \r and \n
64 66
65 * GSM7 escape characters that are not part of a valid sequence for [\]^ or {|}~ 67 * GSM7 escape characters that are not part of a valid sequence for [\]^ or {|}~
66 are represented as \e 68 (or for \E) are represented as \e
67 69
68 * All other GSM7 characters that cannot be represented in ASCII in any other 70 * All other GSM7 characters that cannot be represented in ASCII in any other
69 way are represented as \xX escapes, where xX is a two-digit hexadecimal number 71 way are represented as \xX escapes, where xX is a two-digit hexadecimal number
70 in the range between 00 and 7F, inclusive. 72 in the range between 00 and 7F, inclusive.
71 73
93 input parser always interprets any backslash (\) characters as escapes; it 95 input parser always interprets any backslash (\) characters as escapes; it
94 understands all of the same escapes sequences which we emit in output: 96 understands all of the same escapes sequences which we emit in output:
95 97
96 \" literal " 98 \" literal "
97 \\ literal \ (encoded in GSM 03.38 as another form of escape) 99 \\ literal \ (encoded in GSM 03.38 as another form of escape)
100 \E Euro currency symbol (ditto)
98 \e GSM 03.38 escape character 0x1B 101 \e GSM 03.38 escape character 0x1B
99 \n GSM 03.38 LF character 0x0A 102 \n GSM 03.38 LF character 0x0A
100 \r GSM 03.38 CR character 0x0D 103 \r GSM 03.38 CR character 0x0D
101 \xX GSM 03.38 code point xX, passed through literally 104 \xX GSM 03.38 code point xX, passed through literally
102 105
113 Phonebook file format 116 Phonebook file format
114 ===================== 117 =====================
115 118
116 fc-simtool pb-dump command displays SIM phonebook content on the terminal or 119 fc-simtool pb-dump command displays SIM phonebook content on the terminal or
117 saves it in a file in the format defined here, and other tools such as 120 saves it in a file in the format defined here, and other tools such as
118 fc-simtool pb-update command need to be able to read back the same format 121 fc-simtool pb-restore and pb-update commands need to be able to read back the
119 losslessly. The phonebook file format is hereby shown by way of example: 122 same format losslessly. The phonebook file format is hereby shown by way of
123 example:
120 124
121 #1: #646#,0x81 "Check Minutes" 125 #1: #646#,0x81 "Check Minutes"
122 #2: #674#,0x81 "Check Text Usage" 126 #2: #674#,0x81 "Check Text Usage"
123 #3: #225#,0x81 "Check Balance" 127 #3: #225#,0x81 "Check Balance"
124 #4: 8675309,0x81 "Jenny" 128 #4: 8675309,0x81 "Jenny"