13ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru/*
23ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru *
33ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru * Copyright 2001-2011 Texas Instruments, Inc. - http://www.ti.com/
43ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru *
53ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru * Licensed under the Apache License, Version 2.0 (the "License");
63ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru * you may not use this file except in compliance with the License.
73ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru * You may obtain a copy of the License at
83ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru *
93ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru *    http://www.apache.org/licenses/LICENSE-2.0
103ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru *
113ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru * Unless required by applicable law or agreed to in writing, software
123ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru * distributed under the License is distributed on an "AS IS" BASIS,
133ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
143ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru * See the License for the specific language governing permissions and
153ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru * limitations under the License.
163ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru */
173ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru
183ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Querupackage com.ti.fm;
193ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru
203ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Querupublic interface IFmConstants {
213ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru
223ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    /*
233ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    * By setting this flag true, FM APIS can be used in blocking mode. else FM
243ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    * APIS will be non blocking
253ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    */
263ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    public static final boolean MAKE_FM_APIS_BLOCKING = false;
273ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru
283ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    /*
293ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    * By setting this flag true, FM RDS data(PS and RDS Text) can be sent to
303ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    * the application as bytearray. else FM RDS data(PS and RDS Text) will be
313ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    * sent to the application as String
323ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    */
333ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru
343ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    public static final boolean FM_SEND_RDS_IN_BYTEARRAY = false;
353ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru
363ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    public static final int FM_SEEK_IN_PROGRESS = 0xFF;
373ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru
383ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    public static final int FM_BAND_EUROPE_US = 0;
393ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru
403ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    public static final int FM_BAND_JAPAN = 1;
413ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru
423ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    /* Europe / US band limits */
433ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    public static final int FM_FIRST_FREQ_US_EUROPE_KHZ = 87500;
443ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru
453ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    public static final int FM_LAST_FREQ_US_EUROPE_KHZ = 108000;
463ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru
473ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    /* Japan band limits */
483ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    public static final int FM_FIRST_FREQ_JAPAN_KHZ = 76000;
493ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru
503ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    public static final int FM_LAST_FREQ_JAPAN_KHZ = 90000;
513ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru
523ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    public static final int DEF_VOL = 1;
533ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru
543ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    public static final int FM_MAX_VOLUME = 16383; //32767,//65535;
553ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru
563ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    /* volume states */
573ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru
583ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    public static final boolean VOL_REQ_STATE_IDLE = true;
593ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru
603ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    public static final boolean VOL_REQ_STATE_PENDING = false;
613ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru
623ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    public static final int FM_CHANNEL_SPACE = 2;
633ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru
643ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    public static final int FM_NOT_MUTE = 1;
653ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru
663ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    public static final int FM_RF_DEP_MUTE_OFF = 0;
673ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru
683ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    public static final int FM_RSSI_THRESHHOLD = 7;
693ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru
703ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    /* Mute constants */
713ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru
723ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    public static final int FM_MUTE = 0;
733ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru
743ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    public static final int FM_UNMUTE = 1;
753ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru
763ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    public static final int FM_ATT = 2;
773ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru
783ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    /* Fm Radio State */
793ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    public static final int STATE_ENABLED = 0;
803ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru
813ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    public static final int STATE_DISABLED = 1;
823ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru
833ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    public static final int STATE_ENABLING = 2;
843ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru
853ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    public static final int STATE_DISABLING = 3;
863ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru
873ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    public static final int STATE_PAUSE = 4;
883ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru
893ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    public static final int STATE_RESUME = 5;
903ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru
913ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    public static final int STATE_DEFAULT = 6;
923ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru
933ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    // public static final int FM_SUCCESS = 0 ;
943ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    /* FM Error Returns */
953ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    public static final int FM_FAILED = 0xFFF;
963ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru
973ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    public static final int FM_UNDEFINED_FREQ = 0xFFFFFFFF;
983ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru
993ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    public static final int FM_COMPLETE_SCAN_IS_NOT_IN_PROGRESS = 115;
1003ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru
1013ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    public static final int FM_COMPLETE_SCAN_STOPPED = 116;
1023ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru
1033ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    /* Recovery Params */
1043ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    // must be a long time to account for turning off stale btipsd + turning on
1053ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    // new one
1063ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    public static final long FM_RADIO_ON_TIMEOUT_MSEC = 20 * 1000;
1073ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru
1083ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    public static final long FM_RADIO_OFF_TIMEOUT_MSEC = 10 * 1000;
1093ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru
1103ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    /***********************************************************************************************
1113ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    * Look up tables for RDS data conversion
1123ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    ***********************************************************************************************/
1133ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    public static char[][] lookUpTable_G0 = {
1143ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          /* 0 */{
1153ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0000', '\u0001', '\u0002', '\u0003', '\u0004', '\u0005', '\u0006', '\u0007',
1163ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0008', '\u0009', '\u0000', '\u000b', '\u000c', '\u0000', '\u000e', '\u000f'
1173ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          },
1183ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          /* 1 */{
1193ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0010', '\u0011', '\u0012', '\u0013', '\u0014', '\u0015', '\u0016', '\u0017',
1203ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0018', '\u0019', '\u001a', '\u001b', '\u001c', '\u001d', '\u001e', '\u001f'
1213ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          },
1223ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          /* 2 */{
1233ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0020', '\u0021', '\u0022', '\u0023', '\u00A4', '\u0025', '\u0026', '\u0000',
1243ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0028', '\u0029', '\u002a', '\u002b', '\u002c', '\u002d', '\u002e', '\u2044'
1253ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          },
1263ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          /* 3 */{
1273ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0030', '\u0031', '\u0032', '\u0033', '\u0034', '\u0035', '\u0036', '\u0037',
1283ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0038', '\u0039', '\u003a', '\u003b', '\u003c', '\u003d', '\u003e', '\u003f'
1293ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          },
1303ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          /* 4 */{
1313ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0040', '\u0041', '\u0042', '\u0043', '\u0044', '\u0045', '\u0046', '\u0047',
1323ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0048', '\u0049', '\u004a', '\u004b', '\u004c', '\u004d', '\u004e', '\u004f'
1333ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          },
1343ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          /* 5 */{
1353ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0050', '\u0051', '\u0052', '\u0053', '\u0054', '\u0055', '\u0056', '\u0057',
1363ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0058', '\u0059', '\u005a', '\u005b', '\u0000', '\u005d', '\u005e', '\u005f'
1373ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          },
1383ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          /* 6 */{
1393ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0060', '\u0061', '\u0062', '\u0063', '\u0064', '\u0065', '\u0066', '\u0067',
1403ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0068', '\u0069', '\u006a', '\u006b', '\u006c', '\u006d', '\u006e', '\u006f'
1413ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          },
1423ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          /* 7 */{
1433ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0070', '\u0071', '\u0072', '\u0073', '\u0074', '\u0075', '\u0076', '\u0077',
1443ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0078', '\u0079', '\u007a', '\u007b', '\u007c', '\u007d', '\u0020', '\u0020'
1453ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          },
1463ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          /* 8 */{
1473ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u00E1', '\u00E0', '\u00E9', '\u00E8', '\u00ED', '\u00EC', '\u00F3', '\u00F2',
1483ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u00FA', '\u00F9', '\u00D1', '\u00C7', '\u015E', '\u03B2', '\u03AF', '\u0132'
1493ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          },
1503ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          /* 9 */{
1513ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u00E2', '\u00E4', '\u00EA', '\u00EB', '\u00EE', '\u00EF', '\u00F4', '\u00F6',
1523ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u00FB', '\u00FC', '\u00F1', '\u00E7', '\u015F', '\u0020', '\u00B9', '\u0133'
1533ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          },
1543ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          /* a */{
1553ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u00AA', '\u03B1', '\u00A9', '\u2030', '\u011E', '\u0115', '\u0148', '\u0151',
1563ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u03C0', '\u0020', '\u00A3', '\u0024', '\u2190', '\u2191', '\u2192', '\u2193'
1573ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          },
1583ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          /* b */{
1593ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u00b0', '\u00B9', '\u00B2', '\u00B3', '\u00B1', '\u0130', '\u0144', '\u0171',
1603ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u00B5', '\u00BF', '\u00F7', '\u00B0', '\u00BC', '\u00BD', '\u00BE', '\u00A7'
1613ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          },
1623ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          /* c */{
1633ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u00C1', '\u00C0', '\u00C9', '\u00C8', '\u00CD', '\u00CC', '\u00D3', '\u00D2',
1643ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u00DA', '\u00D9', '\u0158', '\u010C', '\u0160', '\u017D', '\u0110', '\u013F'
1653ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          },
1663ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          /* d */{
1673ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u00C2', '\u00C4', '\u00CA', '\u00CB', '\u00CE', '\u00CF', '\u00D4', '\u00D6',
1683ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u00DB', '\u00DC', '\u0159', '\u010D', '\u0161', '\u017E', '\u0111', '\u0140'
1693ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          },
1703ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          /* e */{
1713ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u00C3', '\u00C5', '\u01FC', '\u0152', '\u0177', '\u00DD', '\u00D5', '\u00D8',
1723ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u00FE', '\u014A', '\u0154', '\u0106', '\u015A', '\u0179', '\u0166', '\u00F0'
1733ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          },
1743ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          /* f */{
1753ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u00E3', '\u00E5', '\u01FD', '\u0153', '\u0175', '\u00FD', '\u00F5', '\u00F8',
1763ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u00DE', '\u014B', '\u0155', '\u0107', '\u015B', '\u017A', '\u0167', '\u0020'
1773ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          }
1783ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    };
1793ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru
1803ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    public static char[][] lookUpTable_G1 = {
1813ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          /* 0 */{
1823ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0000', '\u0001', '\u0002', '\u0003', '\u0004', '\u0005', '\u0006', '\u0007',
1833ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0008', '\u0009', '\u0000', '\u000b', '\u000c', '\u0000', '\u000e', '\u000f'
1843ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          },
1853ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          /* 1 */{
1863ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0010', '\u0011', '\u0012', '\u0013', '\u0014', '\u0015', '\u0016', '\u0017',
1873ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0018', '\u0019', '\u001a', '\u001b', '\u001c', '\u001d', '\u001e', '\u001f'
1883ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          },
1893ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          /* 2 */{
1903ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0020', '\u0021', '\u0022', '\u0023', '\u00A4', '\u0025', '\u0026', '\u0000',
1913ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0028', '\u0029', '\u002a', '\u002b', '\u002c', '\u002d', '\u002e', '\u2044'
1923ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          },
1933ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          /* 3 */{
1943ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0030', '\u0031', '\u0032', '\u0033', '\u0034', '\u0035', '\u0036', '\u0037',
1953ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0038', '\u0039', '\u003a', '\u003b', '\u003c', '\u003d', '\u003e', '\u003f'
1963ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          },
1973ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          /* 4 */{
1983ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0040', '\u0041', '\u0042', '\u0043', '\u0044', '\u0045', '\u0046', '\u0047',
1993ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0048', '\u0049', '\u004a', '\u004b', '\u004c', '\u004d', '\u004e', '\u004f'
2003ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          },
2013ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          /* 5 */{
2023ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0050', '\u0051', '\u0052', '\u0053', '\u0054', '\u0055', '\u0056', '\u0057',
2033ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0058', '\u0059', '\u005a', '\u005b', '\u0000', '\u005d', '\u005e', '\u005f'
2043ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          },
2053ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          /* 6 */{
2063ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0060', '\u0061', '\u0062', '\u0063', '\u0064', '\u0065', '\u0066', '\u0067',
2073ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0068', '\u0069', '\u006a', '\u006b', '\u006c', '\u006d', '\u006e', '\u006f'
2083ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          },
2093ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          /* 7 */{
2103ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0070', '\u0071', '\u0072', '\u0073', '\u0074', '\u0075', '\u0076', '\u0077',
2113ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0078', '\u0079', '\u007a', '\u007b', '\u007c', '\u007d', '\u0020', '\u0020'
2123ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          },
2133ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          /* 8 */{
2143ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u00E1', '\u00E0', '\u00E9', '\u00E8', '\u00ED', '\u00EC', '\u00F3', '\u00F2',
2153ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u00FA', '\u00F9', '\u00D1', '\u00C7', '\u015E', '\u03B2', '\u03AF', '\u0132'
2163ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          },
2173ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          /* 9 */{
2183ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u00E2', '\u00E4', '\u00EA', '\u00EB', '\u00EE', '\u00EF', '\u00D4', '\u00D6',
2193ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u00FB', '\u00FC', '\u00F1', '\u00E7', '\u015F', '\u0020', '\u00B9', '\u0133'
2203ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          },
2213ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          /* a */{
2223ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u00AA', '\u00a1', '\u00A9', '\u2030', '\u01CE', '\u0115', '\u0148', '\u0151',
2233ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0165', '\u0020', '\u00A3', '\u0024', '\u2190', '\u2191', '\u2192', '\u2193'
2243ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          },
2253ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          /* b */{
2263ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u00BA', '\u00B9', '\u00B2', '\u00B3', '\u00B1', '\u0130', '\u0144', '\u0171',
2273ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0163', '\u00BF', '\u00F7', '\u00B0', '\u00BC', '\u00BD', '\u00BE', '\u00A7'
2283ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          },
2293ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          /* c */{
2303ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0404', '\u042F', '\u0020', '\u0427', '\u0414', '\u042D', '\u0444', '\u0403',
2313ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u00c8', '\u0418', '\u0436', '\u045C', '\u041B', '\u045B', '\u0452', '\u044B'
2323ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          },
2333ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          /* d */{
2343ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u00FD', '\u0459', '\u00d2', '\u0448', '\u0446', '\u042E', '\u0449', '\u040A',
2353ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u040F', '\u0419', '\u0417', '\u010D', '\u0161', '\u017E', '\u00de', '\u00df'
2363ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          },
2373ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          /* e */{
2383ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u03A0', '\u03B1', '\u00e2', '\u00e3', '\u03B4', '\u03B5', '\u03C6', '\u03B3',
2393ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u00e8', '\u03B9', '\u2140', '\u03F0', '\u03BB', '\u03BC', '\u03B3', '\u03C9'
2403ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          },
2413ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          /* f */{
2423ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u03C0', '\u03A9', '\u037B', '\u00f3', '\u03C4', '\u03BE', '\u0398', '\u0393',
2433ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u039E', '\u03C5', '\u03B6', '\u03DB', '\u039B', '\u03A8', '\u0394', '\u0020'
2443ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          }
2453ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    };
2463ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru
2473ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    public static char[][] lookUpTable_G2 = {
2483ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          /* 0 */{
2493ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0000', '\u0001', '\u0002', '\u0003', '\u0004', '\u0005', '\u0006', '\u0007',
2503ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0008', '\u0009', '\u0000', '\u000b', '\u000c', '\u0000', '\u000e', '\u000f'
2513ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          },
2523ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          /* 1 */{
2533ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0010', '\u0011', '\u0012', '\u0013', '\u0014', '\u0015', '\u0016', '\u0017',
2543ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0018', '\u0019', '\u001a', '\u001b', '\u001c', '\u001d', '\u001e', '\u001f'
2553ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          },
2563ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          /* 2 */{
2573ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0020', '\u0021', '\u0022', '\u0023', '\u00A4', '\u0025', '\u0026', '\u0000',
2583ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0028', '\u0029', '\u002a', '\u002b', '\u002c', '\u002d', '\u002e', '\u2044'
2593ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          },
2603ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          /* 3 */{
2613ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0030', '\u0031', '\u0032', '\u0033', '\u0034', '\u0035', '\u0036', '\u0037',
2623ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0038', '\u0039', '\u003a', '\u003b', '\u003c', '\u003d', '\u003e', '\u003f'
2633ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          },
2643ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          /* 4 */{
2653ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0040', '\u0041', '\u0042', '\u0043', '\u0044', '\u0045', '\u0046', '\u0047',
2663ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0048', '\u0049', '\u004a', '\u004b', '\u004c', '\u004d', '\u004e', '\u004f'
2673ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          },
2683ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          /* 5 */{
2693ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0050', '\u0051', '\u0052', '\u0053', '\u0054', '\u0055', '\u0056', '\u0057',
2703ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0058', '\u0059', '\u005a', '\u005b', '\u0000', '\u005d', '\u005e', '\u005f'
2713ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          },
2723ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          /* 6 */{
2733ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0060', '\u0061', '\u0062', '\u0063', '\u0064', '\u0065', '\u0066', '\u0067',
2743ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0068', '\u0069', '\u006a', '\u006b', '\u006c', '\u006d', '\u006e', '\u006f'
2753ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          },
2763ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          /* 7 */{
2773ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0070', '\u0071', '\u0072', '\u0073', '\u0074', '\u0075', '\u0076', '\u0077',
2783ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0078', '\u0079', '\u007a', '\u007b', '\u007c', '\u007d', '\u0020', '\u0020'
2793ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          },
2803ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          /* 8 */{
2813ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\uEE92', '\uEE98', '\u0629', '\uEE9C', '\uFEA0', '\uFEA4', '\ufea8', '\u062f',
2823ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0630', '\ufe8d', '\ufe83', '\ufeb3', '\ufeb7', '\ufebb', '\ufebf', '\ufec1'
2833ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          },
2843ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          /* 9 */{
2853ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\ufec5', '\ufecb', '\ufecf', '\ufed3', '\ufed7', '\ufedb', '\ufedd', '\ufee3',
2863ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\ufee7', '\ufeeb', '\ufeed', '\ufef3', '\u2190', '\u2191', '\u2192', '\u2193'
2873ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          },
2883ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          /* a */{
2893ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u05d0', '\u05d1', '\u05d2', '\u05d3', '\u05d4', '\u05d5', '\u05d6', '\u05d7',
2903ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u05d8', '\u05d9', '\u05db', '\u05da', '\u05dc', '\u05de', '\u05dd', '\u05e0'
2913ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          },
2923ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          /* b */{
2933ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u05df', '\u05e1', '\u05e2', '\u05e4', '\u05e3', '\u05e6', '\u05e5', '\u05e7',
2943ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u05e8', '\u05e9', '\u05ea', '\u00B0', '\u00BC', '\u00BD', '\u00BE', '\u00A7'
2953ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          },
2963ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          /* c */{
2973ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u0404', '\u042F', '\u0020', '\u0427', '\u0414', '\u042D', '\u0444', '\u0403',
2983ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u00c8', '\u0418', '\u0436', '\u045C', '\u041B', '\u045B', '\u0452', '\u044B'
2993ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          },
3003ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          /* d */{
3013ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u00FD', '\u0459', '\u00d2', '\u0448', '\u0446', '\u042E', '\u0449', '\u040A',
3023ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u040F', '\u0419', '\u0417', '\u010D', '\u0161', '\u017E', '\u00de', '\u00df'
3033ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          },
3043ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          /* e */{
3053ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u03A0', '\u00C5', '\u01FC', '\u0152', '\u0177', '\u00DD', '\u00D5', '\u00D8',
3063ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u00FE', '\u014A', '\u03A3', '\u0106', '\u03BB', '\u03BC', '\u03B3', '\u03C9'
3073ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          },
3083ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          /* f */{
3093ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u03C0', '\u03A9', '\u037B', '\u00f3', '\u03C4', '\u03BE', '\u0398', '\u0393',
3103ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru                '\u039E', '\u03C5', '\u03B6', '\u03DB', '\u039B', '\u03A8', '\u0394', '\u0020'
3113ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru          }
3123ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    };
3133ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru
3143ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    /********* FM TX *************/
3153ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru
3163ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    public static final int FM_AF_CODE_NO_AF_AVAILABLE = 224;
3173ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru
3183ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    public static final int FM_RDS_PTY_CODE_NO_PROGRAM_UNDEFINED = 0;
3193ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru
3203ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    public static final int FM_RDS_PTY_CODE_MAX_VALUE = 31;
3213ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru
3223ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru    public static final int FM_RDS_SCROLL_SPEED_DEFUALT = 3;
3233ece7d9e08052989401e008bc397dbcd2557cfd0Jean-Baptiste Queru}
324