diff options
Diffstat (limited to 'linux')
| -rw-r--r-- | linux/ael2005_conf.h | 775 | 
1 files changed, 775 insertions, 0 deletions
| diff --git a/linux/ael2005_conf.h b/linux/ael2005_conf.h new file mode 100644 index 0000000..6a6e417 --- /dev/null +++ b/linux/ael2005_conf.h @@ -0,0 +1,775 @@ +/******************************************************************************* + * + *  NetFPGA-10G http://www.netfpga.org + * + *  File: + *        ael2005_conf.h + * + *  Project: + *        nic + * + *  Author: + *        M. Forconesi (Cambridge Team) + * + *  Description: + *        Configures the AEL2005 PHY chips on the NetFPGA-10G. + * + *  Copyright notice: + *        Copyright (C) 2010, 2011 The Board of Trustees of The Leland Stanford + *                                 Junior University + * + *  Licence: + *        This file is part of the NetFPGA 10G development base package. + * + *        This file is free code: you can redistribute it and/or modify it under + *        the terms of the GNU Lesser General Public License version 2.1 as + *        published by the Free Software Foundation. + * + *        This package is distributed in the hope that it will be useful, but + *        WITHOUT ANY WARRANTY; without even the implied warranty of + *        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU + *        Lesser General Public License for more details. + * + *        You should have received a copy of the GNU Lesser General Public + *        License along with the NetFPGA source package.  If not, see + *        http://www.gnu.org/licenses/. + * + */ + +#define NF10_IOCTL_CMD_READ_STAT (SIOCDEVPRIVATE+0) +#define NF10_IOCTL_CMD_WRITE_REG (SIOCDEVPRIVATE+1) +#define NF10_IOCTL_CMD_READ_REG (SIOCDEVPRIVATE+2) + +#define PMA_MDIO_DEVICE_ADDRESS 1 +#define PCS_MDIO_DEVICE_ADDRESS 3 +#define PHY_XS_MDIO_DEVICE_ADDRESS 4 + +#define PMA_CTL_REGISTER_ADDRESS 0x0 +#define PMA_STATUS_REGISTER_ADDRESS 0x1 +#define PMA_RESET_REGISTER_VALUE 0x8000 +#define PMA_SYS_LOOPBACK_REGISTER_VALUE 0x1 +#define PMA_RCV_SIG_DETECTED_ADDRESS 0xa + +#define PCS_STATUS_REGISTER_ADDRESS 0x1 +#define PHY_XS_STATUS_REGISTER_ADDRESS 0x1 + +#define AEL_MICRO_CONTROLLER_CTL_ADDRESS 0xc04a + +#define AEL_I2C_CTRL 0xc30a +#define AEL_I2C_DATA 0xc30b +#define AEL_I2C_STAT 0xc30c + +#define XEL_MDIOCNTR_OFFSET 0x07F0 //< MDIO Control +#define XEL_MDIOCNTR_STATUS_MASK 0x00000001  //< MDIO transfer in +#define XEL_MDIO_ADDRESS_SHIFT      0x5     /**< PHY Address shift*/ +#define XEL_MDIO_ADDRESS_MASK       0x00003E0   /**< PHY Address mask */ +#define XEL_MDIOADDR_OFFSET 0x07E4 // < MDIO Address offset +#define XEL_MDIOWR_OFFSET  0x07E8 //< MDIO write data +#define XEL_MDIOCNTR_ENABLE_MASK    0x00000008  /**<  MDIO Enable */ +#define XEL_MDIORD_OFFSET 0x07EC  //< MDIO read data +#define XEL_MDIO_OP_45_ADDRESS      0x00000000  /**< PHY address access */ +#define XEL_MDIO_OP_45_WRITE        0x00000400  /**< PHY write access */ +#define XEL_MDIO_OP_45_READ_INC     0x00000800  /**< PHY read inc access */ +#define XEL_MDIO_OP_45_READ     0x00000C00  /**< PHY read access */ +#define XEL_MDIO_CLAUSE_45              0x00001000      /**< PHY Clause type access */ + +/* PHY module I2C device address */ +#define MODULE_DEV_ADDR	 0xa0 +#define SFF_DEV_ADDR	 0xa2 + +enum { +	MODE_TWINAX, +	MODE_SR, +	MODE_LR, // Not supported +	MODE_LRM // Not supported +}; + +void simple_wr(int file_ptr, uint32_t address, uint32_t value); +uint32_t simple_rd(int file_ptr, uint32_t address); +int XEmacLite_PhyWrite(int file_ptr, uint32_t PhyAddress, uint32_t RegNum, uint32_t opcode, uint32_t clause, uint16_t PhyData); +int XEmacLite_PhyRead(int file_ptr, uint32_t PhyAddress, uint32_t RegNum, uint32_t opcode, uint32_t clause, uint16_t *PhyDataPtr); +int ael2005_write (int file_ptr, uint32_t PhyAddr, uint32_t PhyDev, uint16_t address, uint16_t data); +int ael2005_read (int file_ptr, uint32_t PhyAddr, uint32_t PhyDev, uint16_t address, uint16_t *data); +int ael2005_i2c_read (int file_ptr, uint32_t PhyAddress, uint16_t dev_addr, uint16_t word_addr, uint16_t *data); +int test_initialize(int file_ptr, uint32_t PhyAddress, int mode); +int ael2005_initialize(int file_ptr, uint32_t dev, int mode); +int ael2005_initialize_1g(int file_ptr, uint32_t dev, int mode); +int ael2005_reset(int file_ptr, uint32_t dev); +int test_status(int file_ptr); +int ael2005_sys_loopback(int file_ptr, uint32_t dev); +void ael2005_sleep(int ms); + +const uint16_t regs0[] = { +        0xc220, 0x711C +        }; + +const uint16_t regs1_1g[] = { +        0xc220, 0x744C +        }; + +// software reset and magic registers +const uint16_t reset[] = { +        0x0000, 0xa040, +        0xc001, 0x0428, +        0xc017, 0xfeb0, +        0xc013, 0xf341, +        0xc210, 0x8000, +        0xc210, 0x8100, +        0xc210, 0x8000, +        0xc210, 0x0000 +        }; + +// unpause the microprocessor +const uint16_t regs1[] = { +        0xca00, 0x0080, +        0xca12, 0x0000 +        }; + +// main Twinax EDC program +const uint16_t twinax_edc[] = { +        0xc04a, 0x5a00, +        0xcc00, 0x4009, +        0xcc01, 0x27ff, +        0xcc02, 0x300f, +        0xcc03, 0x40aa, +        0xcc04, 0x401c, +        0xcc05, 0x401e, +        0xcc06, 0x2ff4, +        0xcc07, 0x3cd4, +        0xcc08, 0x2035, +        0xcc09, 0x3145, +        0xcc0a, 0x6524, +        0xcc0b, 0x26a2, +        0xcc0c, 0x3012, +        0xcc0d, 0x1002, +        0xcc0e, 0x29c2, +        0xcc0f, 0x3002, +        0xcc10, 0x1002, +        0xcc11, 0x2072, +        0xcc12, 0x3012, +        0xcc13, 0x1002, +        0xcc14, 0x22cd, +        0xcc15, 0x301d, +        0xcc16, 0x2e52, +        0xcc17, 0x3012, +        0xcc18, 0x1002, +        0xcc19, 0x28e2, +        0xcc1a, 0x3002, +        0xcc1b, 0x1002, +        0xcc1c, 0x628f, +        0xcc1d, 0x2ac2, +        0xcc1e, 0x3012, +        0xcc1f, 0x1002, +        0xcc20, 0x5553, +        0xcc21, 0x2ae2, +        0xcc22, 0x3002, +        0xcc23, 0x1302, +        0xcc24, 0x401e, +        0xcc25, 0x2be2, +        0xcc26, 0x3012, +        0xcc27, 0x1002, +        0xcc28, 0x2da2, +        0xcc29, 0x3012, +        0xcc2a, 0x1002, +        0xcc2b, 0x2ba2, +        0xcc2c, 0x3002, +        0xcc2d, 0x1002, +        0xcc2e, 0x5ee3, +        0xcc2f, 0x305, +        0xcc30, 0x400e, +        0xcc31, 0x2bc2, +        0xcc32, 0x3002, +        0xcc33, 0x1002, +        0xcc34, 0x2b82, +        0xcc35, 0x3012, +        0xcc36, 0x1002, +        0xcc37, 0x5663, +        0xcc38, 0x302, +        0xcc39, 0x401e, +        0xcc3a, 0x6f72, +        0xcc3b, 0x1002, +        0xcc3c, 0x628f, +        0xcc3d, 0x2be2, +        0xcc3e, 0x3012, +        0xcc3f, 0x1002, +        0xcc40, 0x22cd, +        0xcc41, 0x301d, +        0xcc42, 0x2e52, +        0xcc43, 0x3012, +        0xcc44, 0x1002, +        0xcc45, 0x2522, +        0xcc46, 0x3012, +        0xcc47, 0x1002, +        0xcc48, 0x2da2, +        0xcc49, 0x3012, +        0xcc4a, 0x1002, +        0xcc4b, 0x2ca2, +        0xcc4c, 0x3012, +        0xcc4d, 0x1002, +        0xcc4e, 0x2fa4, +        0xcc4f, 0x3cd4, +        0xcc50, 0x6624, +        0xcc51, 0x410b, +        0xcc52, 0x56b3, +        0xcc53, 0x3c4, +        0xcc54, 0x2fb2, +        0xcc55, 0x3002, +        0xcc56, 0x1002, +        0xcc57, 0x220b, +        0xcc58, 0x303b, +        0xcc59, 0x56b3, +        0xcc5a, 0x3c3, +        0xcc5b, 0x866b, +        0xcc5c, 0x400c, +        0xcc5d, 0x23a2, +        0xcc5e, 0x3012, +        0xcc5f, 0x1002, +        0xcc60, 0x2da2, +        0xcc61, 0x3012, +        0xcc62, 0x1002, +        0xcc63, 0x2ca2, +        0xcc64, 0x3012, +        0xcc65, 0x1002, +        0xcc66, 0x2fb4, +        0xcc67, 0x3cd4, +        0xcc68, 0x6624, +        0xcc69, 0x56b3, +        0xcc6a, 0x3c3, +        0xcc6b, 0x866b, +        0xcc6c, 0x401c, +        0xcc6d, 0x2205, +        0xcc6e, 0x3035, +        0xcc6f, 0x5b53, +        0xcc70, 0x2c52, +        0xcc71, 0x3002, +        0xcc72, 0x13c2, +        0xcc73, 0x5cc3, +        0xcc74, 0x317, +        0xcc75, 0x2522, +        0xcc76, 0x3012, +        0xcc77, 0x1002, +        0xcc78, 0x2da2, +        0xcc79, 0x3012, +        0xcc7a, 0x1002, +        0xcc7b, 0x2b82, +        0xcc7c, 0x3012, +        0xcc7d, 0x1002, +        0xcc7e, 0x5663, +        0xcc7f, 0x303, +        0xcc80, 0x401e, +        0xcc81, 0x004, +        0xcc82, 0x2c42, +        0xcc83, 0x3012, +        0xcc84, 0x1002, +        0xcc85, 0x6f72, +        0xcc86, 0x1002, +        0xcc87, 0x628f, +        0xcc88, 0x2304, +        0xcc89, 0x3c84, +        0xcc8a, 0x6436, +        0xcc8b, 0xdff4, +        0xcc8c, 0x6436, +        0xcc8d, 0x2ff5, +        0xcc8e, 0x3005, +        0xcc8f, 0x8656, +        0xcc90, 0xdfba, +        0xcc91, 0x56a3, +        0xcc92, 0xd05a, +        0xcc93, 0x21c2, +        0xcc94, 0x3012, +        0xcc95, 0x1392, +        0xcc96, 0xd05a, +        0xcc97, 0x56a3, +        0xcc98, 0xdfba, +        0xcc99, 0x383, +        0xcc9a, 0x6f72, +        0xcc9b, 0x1002, +        0xcc9c, 0x28c5, +        0xcc9d, 0x3005, +        0xcc9e, 0x4178, +        0xcc9f, 0x5653, +        0xcca0, 0x384, +        0xcca1, 0x22b2, +        0xcca2, 0x3012, +        0xcca3, 0x1002, +        0xcca4, 0x2be5, +        0xcca5, 0x3005, +        0xcca6, 0x41e8, +        0xcca7, 0x5653, +        0xcca8, 0x382, +        0xcca9, 0x002, +        0xccaa, 0x4258, +        0xccab, 0x2474, +        0xccac, 0x3c84, +        0xccad, 0x6437, +        0xccae, 0xdff4, +        0xccaf, 0x6437, +        0xccb0, 0x2ff5, +        0xccb1, 0x3c05, +        0xccb2, 0x8757, +        0xccb3, 0xb888, +        0xccb4, 0x9787, +        0xccb5, 0xdff4, +        0xccb6, 0x6724, +        0xccb7, 0x866a, +        0xccb8, 0x6f72, +        0xccb9, 0x1002, +        0xccba, 0x2d01, +        0xccbb, 0x3011, +        0xccbc, 0x1001, +        0xccbd, 0xc620, +        0xccbe, 0x14e5, +        0xccbf, 0xc621, +        0xccc0, 0xc53d, +        0xccc1, 0xc622, +        0xccc2, 0x3cbe, +        0xccc3, 0xc623, +        0xccc4, 0x4452, +        0xccc5, 0xc624, +        0xccc6, 0xc5c5, +        0xccc7, 0xc625, +        0xccc8, 0xe01e, +        0xccc9, 0xc627, +        0xccca, 0x000, +        0xcccb, 0xc628, +        0xcccc, 0x000, +        0xcccd, 0xc62b, +        0xccce, 0x000, +        0xcccf, 0xc62c, +        0xccd0, 0x000, +        0xccd1, 0x000, +        0xccd2, 0x2d01, +        0xccd3, 0x3011, +        0xccd4, 0x1001, +        0xccd5, 0xc620, +        0xccd6, 0x000, +        0xccd7, 0xc621, +        0xccd8, 0x000, +        0xccd9, 0xc622, +        0xccda, 0x0ce, +        0xccdb, 0xc623, +        0xccdc, 0x07f, +        0xccdd, 0xc624, +        0xccde, 0x032, +        0xccdf, 0xc625, +        0xcce0, 0x000, +        0xcce1, 0xc627, +        0xcce2, 0x000, +        0xcce3, 0xc628, +        0xcce4, 0x000, +        0xcce5, 0xc62b, +        0xcce6, 0x000, +        0xcce7, 0xc62c, +        0xcce8, 0x000, +        0xcce9, 0x000, +        0xccea, 0x2d01, +        0xcceb, 0x3011, +        0xccec, 0x1001, +        0xcced, 0xc502, +        0xccee, 0x609f, +        0xccef, 0xc600, +        0xccf0, 0x2a6e, +        0xccf1, 0xc601, +        0xccf2, 0x2a2c, +        0xccf3, 0xc60c, +        0xccf4, 0x5400, +        0xccf5, 0xc710, +        0xccf6, 0x700, +        0xccf7, 0xc718, +        0xccf8, 0x700, +        0xccf9, 0xc720, +        0xccfa, 0x4700, +        0xccfb, 0xc728, +        0xccfc, 0x700, +        0xccfd, 0xc729, +        0xccfe, 0x1207, +        0xccff, 0xc801, +        0xcd00, 0x7f50, +        0xcd01, 0xc802, +        0xcd02, 0x7760, +        0xcd03, 0xc803, +        0xcd04, 0x7fce, +        0xcd05, 0xc804, +        0xcd06, 0x520e, +        0xcd07, 0xc805, +        0xcd08, 0x5c11, +        0xcd09, 0xc806, +        0xcd0a, 0x3c51, +        0xcd0b, 0xc807, +        0xcd0c, 0x4061, +        0xcd0d, 0xc808, +        0xcd0e, 0x49c1, +        0xcd0f, 0xc809, +        0xcd10, 0x3840, +        0xcd11, 0xc80a, +        0xcd12, 0x000, +        0xcd13, 0xc821, +        0xcd14, 0x002, +        0xcd15, 0xc822, +        0xcd16, 0x046, +        0xcd17, 0xc844, +        0xcd18, 0x182f, +        0xcd19, 0xc013, +        0xcd1a, 0xf341, +        0xcd1b, 0xc01a, +        0xcd1c, 0x446, +        0xcd1d, 0xc024, +        0xcd1e, 0x1000, +        0xcd1f, 0xc025, +        0xcd20, 0xa00, +        0xcd21, 0xc026, +        0xcd22, 0xc0c, +        0xcd23, 0xc027, +        0xcd24, 0xc0c, +        0xcd25, 0xc029, +        0xcd26, 0x0a0, +        0xcd27, 0xc030, +        0xcd28, 0xa00, +        0xcd29, 0xc03c, +        0xcd2a, 0x01c, +        0xcd2b, 0x000, +        0xcd2c, 0x2b84, +        0xcd2d, 0x3c74, +        0xcd2e, 0x6435, +        0xcd2f, 0xdff4, +        0xcd30, 0x6435, +        0xcd31, 0x2806, +        0xcd32, 0x3006, +        0xcd33, 0x8565, +        0xcd34, 0x2b24, +        0xcd35, 0x3c24, +        0xcd36, 0x6436, +        0xcd37, 0x1002, +        0xcd38, 0x2b24, +        0xcd39, 0x3c24, +        0xcd3a, 0x6436, +        0xcd3b, 0x4045, +        0xcd3c, 0x8656, +        0xcd3d, 0x1002, +        0xcd3e, 0x2807, +        0xcd3f, 0x31a7, +        0xcd40, 0x20c4, +        0xcd41, 0x3c24, +        0xcd42, 0x6724, +        0xcd43, 0x1002, +        0xcd44, 0x2807, +        0xcd45, 0x3187, +        0xcd46, 0x20c4, +        0xcd47, 0x3c24, +        0xcd48, 0x6724, +        0xcd49, 0x1002, +        0xcd4a, 0x2514, +        0xcd4b, 0x3c64, +        0xcd4c, 0x6436, +        0xcd4d, 0xdff4, +        0xcd4e, 0x6436, +        0xcd4f, 0x1002, +        0xcd50, 0x2806, +        0xcd51, 0x3cb6, +        0xcd52, 0xc161, +        0xcd53, 0x6134, +        0xcd54, 0x6135, +        0xcd55, 0x5443, +        0xcd56, 0x303, +        0xcd57, 0x6524, +        0xcd58, 0x00b, +        0xcd59, 0x1002, +        0xcd5a, 0xd019, +        0xcd5b, 0x2104, +        0xcd5c, 0x3c24, +        0xcd5d, 0x2105, +        0xcd5e, 0x3805, +        0xcd5f, 0x6524, +        0xcd60, 0xdff4, +        0xcd61, 0x4005, +        0xcd62, 0x6524, +        0xcd63, 0x2e8d, +        0xcd64, 0x303d, +        0xcd65, 0x5dd3, +        0xcd66, 0x306, +        0xcd67, 0x2ff7, +        0xcd68, 0x38f7, +        0xcd69, 0x60b7, +        0xcd6a, 0xdffd, +        0xcd6b, 0x00a, +        0xcd6c, 0x1002, +        0xcd6d, 0 +                }; + +// main SR EDC program +const uint16_t sr_edc[] = { +        0xc003, 0x181, +        0xc010, 0x448a, +        0xc04a, 0x5200, +        0xcc00, 0x2ff4, +		0xcc01, 0x3cd4, +		0xcc02, 0x2015, +		0xcc03, 0x3105, +		0xcc04, 0x6524, +		0xcc05, 0x27ff, +		0xcc06, 0x300f, +		0xcc07, 0x2c8b, +		0xcc08, 0x300b, +		0xcc09, 0x4009, +		0xcc0a, 0x400e, +		0xcc0b, 0x2f72, +		0xcc0c, 0x3002, +		0xcc0d, 0x1002, +		0xcc0e, 0x2172, +		0xcc0f, 0x3012, +		0xcc10, 0x1002, +		0xcc11, 0x25d2, +		0xcc12, 0x3012, +		0xcc13, 0x1002, +		0xcc14, 0xd01e, +		0xcc15, 0x27d2, +		0xcc16, 0x3012, +		0xcc17, 0x1002, +		0xcc18, 0x2004, +		0xcc19, 0x3c84, +		0xcc1a, 0x6436, +		0xcc1b, 0x2007, +		0xcc1c, 0x3f87, +		0xcc1d, 0x8676, +		0xcc1e, 0x40b7, +		0xcc1f, 0xa746, +		0xcc20, 0x4047, +		0xcc21, 0x5673, +		0xcc22, 0x2982, +		0xcc23, 0x3002, +		0xcc24, 0x13d2, +		0xcc25, 0x8bbd, +		0xcc26, 0x2862, +		0xcc27, 0x3012, +		0xcc28, 0x1002, +		0xcc29, 0x2092, +		0xcc2a, 0x3012, +		0xcc2b, 0x1002, +		0xcc2c, 0x5cc3, +		0xcc2d, 0x314, +		0xcc2e, 0x2942, +		0xcc2f, 0x3002, +		0xcc30, 0x1002, +		0xcc31, 0xd019, +		0xcc32, 0x2032, +		0xcc33, 0x3012, +		0xcc34, 0x1002, +		0xcc35, 0x2a04, +		0xcc36, 0x3c74, +		0xcc37, 0x6435, +		0xcc38, 0x2fa4, +		0xcc39, 0x3cd4, +		0xcc3a, 0x6624, +		0xcc3b, 0x5563, +		0xcc3c, 0x2d42, +		0xcc3d, 0x3002, +		0xcc3e, 0x13d2, +		0xcc3f, 0x464d, +		0xcc40, 0x2862, +		0xcc41, 0x3012, +		0xcc42, 0x1002, +		0xcc43, 0x2032, +		0xcc44, 0x3012, +		0xcc45, 0x1002, +		0xcc46, 0x2fb4, +		0xcc47, 0x3cd4, +		0xcc48, 0x6624, +		0xcc49, 0x5563, +		0xcc4a, 0x2d42, +		0xcc4b, 0x3002, +		0xcc4c, 0x13d2, +		0xcc4d, 0x2ed2, +		0xcc4e, 0x3002, +		0xcc4f, 0x1002, +		0xcc50, 0x2fd2, +		0xcc51, 0x3002, +		0xcc52, 0x1002, +		0xcc53, 0x004, +		0xcc54, 0x2942, +		0xcc55, 0x3002, +		0xcc56, 0x1002, +		0xcc57, 0x2092, +		0xcc58, 0x3012, +		0xcc59, 0x1002, +		0xcc5a, 0x5cc3, +		0xcc5b, 0x317, +		0xcc5c, 0x2f72, +		0xcc5d, 0x3002, +		0xcc5e, 0x1002, +		0xcc5f, 0x2942, +		0xcc60, 0x3002, +		0xcc61, 0x1002, +		0xcc62, 0x22cd, +		0xcc63, 0x301d, +		0xcc64, 0x2862, +		0xcc65, 0x3012, +		0xcc66, 0x1002, +		0xcc67, 0x2ed2, +		0xcc68, 0x3002, +		0xcc69, 0x1002, +		0xcc6a, 0x2d72, +		0xcc6b, 0x3002, +		0xcc6c, 0x1002, +		0xcc6d, 0x628f, +		0xcc6e, 0x2112, +		0xcc6f, 0x3012, +		0xcc70, 0x1002, +		0xcc71, 0x5aa3, +		0xcc72, 0x2dc2, +		0xcc73, 0x3002, +		0xcc74, 0x1312, +		0xcc75, 0x6f72, +		0xcc76, 0x1002, +		0xcc77, 0x2807, +		0xcc78, 0x31a7, +		0xcc79, 0x20c4, +		0xcc7a, 0x3c24, +		0xcc7b, 0x6724, +		0xcc7c, 0x1002, +		0xcc7d, 0x2807, +		0xcc7e, 0x3187, +		0xcc7f, 0x20c4, +		0xcc80, 0x3c24, +		0xcc81, 0x6724, +		0xcc82, 0x1002, +		0xcc83, 0x2514, +		0xcc84, 0x3c64, +		0xcc85, 0x6436, +		0xcc86, 0xdff4, +		0xcc87, 0x6436, +		0xcc88, 0x1002, +		0xcc89, 0x40a4, +		0xcc8a, 0x643c, +		0xcc8b, 0x4016, +		0xcc8c, 0x8c6c, +		0xcc8d, 0x2b24, +		0xcc8e, 0x3c24, +		0xcc8f, 0x6435, +		0xcc90, 0x1002, +		0xcc91, 0x2b24, +		0xcc92, 0x3c24, +		0xcc93, 0x643a, +		0xcc94, 0x4025, +		0xcc95, 0x8a5a, +		0xcc96, 0x1002, +		0xcc97, 0x2731, +		0xcc98, 0x3011, +		0xcc99, 0x1001, +		0xcc9a, 0xc7a0, +		0xcc9b, 0x100, +		0xcc9c, 0xc502, +		0xcc9d, 0x53ac, +		0xcc9e, 0xc503, +		0xcc9f, 0xd5d5, +		0xcca0, 0xc600, +		0xcca1, 0x2a6d, +		0xcca2, 0xc601, +		0xcca3, 0x2a4c, +		0xcca4, 0xc602, +		0xcca5, 0x111, +		0xcca6, 0xc60c, +		0xcca7, 0x5900, +		0xcca8, 0xc710, +		0xcca9, 0x700, +		0xccaa, 0xc718, +		0xccab, 0x700, +		0xccac, 0xc720, +		0xccad, 0x4700, +		0xccae, 0xc801, +		0xccaf, 0x7f50, +		0xccb0, 0xc802, +		0xccb1, 0x7760, +		0xccb2, 0xc803, +		0xccb3, 0x7fce, +		0xccb4, 0xc804, +		0xccb5, 0x5700, +		0xccb6, 0xc805, +		0xccb7, 0x5f11, +		0xccb8, 0xc806, +		0xccb9, 0x4751, +		0xccba, 0xc807, +		0xccbb, 0x57e1, +		0xccbc, 0xc808, +		0xccbd, 0x2700, +		0xccbe, 0xc809, +		0xccbf, 0x000, +		0xccc0, 0xc821, +		0xccc1, 0x002, +		0xccc2, 0xc822, +		0xccc3, 0x014, +		0xccc4, 0xc832, +		0xccc5, 0x1186, +		0xccc6, 0xc847, +		0xccc7, 0x1e02, +		0xccc8, 0xc013, +		0xccc9, 0xf341, +		0xccca, 0xc01a, +		0xcccb, 0x446, +		0xcccc, 0xc024, +		0xcccd, 0x1000, +		0xccce, 0xc025, +		0xcccf, 0xa00, +		0xccd0, 0xc026, +		0xccd1, 0xc0c, +		0xccd2, 0xc027, +		0xccd3, 0xc0c, +		0xccd4, 0xc029, +		0xccd5, 0x0a0, +		0xccd6, 0xc030, +		0xccd7, 0xa00, +		0xccd8, 0xc03c, +		0xccd9, 0x01c, +		0xccda, 0xc005, +		0xccdb, 0x7a06, +		0xccdc, 0x000, +		0xccdd, 0x2731, +		0xccde, 0x3011, +		0xccdf, 0x1001, +		0xcce0, 0xc620, +		0xcce1, 0x000, +		0xcce2, 0xc621, +		0xcce3, 0x03f, +		0xcce4, 0xc622, +		0xcce5, 0x000, +		0xcce6, 0xc623, +		0xcce7, 0x000, +		0xcce8, 0xc624, +		0xcce9, 0x000, +		0xccea, 0xc625, +		0xcceb, 0x000, +		0xccec, 0xc627, +		0xcced, 0x000, +		0xccee, 0xc628, +		0xccef, 0x000, +		0xccf0, 0xc62c, +		0xccf1, 0x000, +		0xccf2, 0x000, +		0xccf3, 0x2806, +		0xccf4, 0x3cb6, +		0xccf5, 0xc161, +		0xccf6, 0x6134, +		0xccf7, 0x6135, +		0xccf8, 0x5443, +		0xccf9, 0x303, +		0xccfa, 0x6524, +		0xccfb, 0x00b, +		0xccfc, 0x1002, +		0xccfd, 0x2104, +		0xccfe, 0x3c24, +		0xccff, 0x2105, +		0xcd00, 0x3805, +		0xcd01, 0x6524, +		0xcd02, 0xdff4, +		0xcd03, 0x4005, +		0xcd04, 0x6524, +		0xcd05, 0x1002, +		0xcd06, 0x5dd3, +		0xcd07, 0x306, +		0xcd08, 0x2ff7, +		0xcd09, 0x38f7, +		0xcd0a, 0x60b7, +		0xcd0b, 0xdffd, +		0xcd0c, 0x00a, +		0xcd0d, 0x1002, +		0xcd0e, 0 +                }; | 
