/******************************************************************************************************************** * * Allwinner SoCs display driver. * * Copyright (C) 2016 Allwinner. * * This file is licensed under the terms of the GNU General Public * License version 2. This program is licensed "as is" without any * warranty of any kind, whether express or implied. * * Melis * the Easy Portable/Player Operation System * (c) Copyright 2012-2020 * All Rights Reserved * * File : * By : libaiao * Version : v1.00 * Data : * Note : eink 设备控制时序数据和waveform数据 * Version : v2.00 * By : liuli * Note : eink 设备控制时序数据和waveform数据已经分开,现在只存放timing数据 ********************************************************************************************************************** */ #include "include/timing_ctrl.h" static struct timing_ctrl_manager *g_timing_ctrl_mgr; struct timing_ctrl_manager *get_timing_ctrl_mgr(void) { return g_timing_ctrl_mgr; } const __u32 eink_ctrl_line_index_tbl[EINK_LCD_H + 1] = { 0, 0, 0, 0, 0, /* line1--line5 */ 1, /* line6 */ 2, /* line7 */ 3, /* line8 */ 3, /* line9(解决右边少显示一行的问题)*/ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* line9--line608,共600行 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 2 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 3 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 4 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 5 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 6 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 7 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 8 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 9 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 10, 100 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 1 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 2 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 3 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 4 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 5 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 6 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 7 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 8 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 9 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 10, 200 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 1 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 2 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 3 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 4 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 5 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 6 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 7 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 8 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 9 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 10, 300 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 1 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 2 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 3 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 4 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 5 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 6 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 7 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 8 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 9 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 10, 400 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 1 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 2 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 3 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 4 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 5 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 6 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 7 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 8 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 9 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 10, 500 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 1 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 2 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 3 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 4 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 5 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 6 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 7 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 8 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 9 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 10, 600 */ #if (EINK_PANEL_H >= 758) 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 1 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 2 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 3 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 4 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 5 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 6 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 7 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 8 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 9 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 10, 700 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 1 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 2 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 3 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 4 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 5 */ 4, 4, 4, 4, 4, 4, 4, 4, /* 6 , 758 */ #endif #if (EINK_PANEL_H >= 1080) 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 1 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 2 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 3 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 4 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 5 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 6 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 7 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 8 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 9 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 10, 600 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 1 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 2 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 3 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 4 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 5 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 6 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 7 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 8 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 9 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 10, 958 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 1 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 2 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 3 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 4 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 5 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 6 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 7 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 8 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 9 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 10, 1058 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 1068 */ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, /* 1078 */ 4, 4, /* 1080 */ #endif 4, 5, /* line609 */ 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, /* line610--line620 */ }; /* NEW_CTRL_DATA */ const __u32 eink_ctrl_tbl_GC16_COMMON[8][EINK_WF_WIDTH] = { /* line1--line5; 共5行 */ /* 1 2 3 4 5 6 7 8 9 10 */ {0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, #if (EINK_PANEL_W >= 1024) /* 256 data */ 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, #endif #if (EINK_PANEL_W >= 1440) /* 360 data */ 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, #endif 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303, 0xA00000|0xFF030303 }, /* line6 */ /* 1 2 3 4 5 6 7 8 9 10 */ {0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, /* $14 */ 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, /* 1 2 3 4 5 6 7 $108 9 10 */ 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, #if (EINK_PANEL_W >= 1024) /* 256 data */ 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, #endif #if (EINK_PANEL_W >= 1440) /* 360 data */ 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, #endif 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, /* 1 2 3 4 5 6 7 8 9 10 */ 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, /* 1 2 3 4 $215 6 7 8 9 10 */ 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x208000|0xff030303, 0x208000|0xff030303, 0x208000|0xff030303, 0x208000|0xff030303, 0x208000|0xff030303, 0x208000|0xff030303, 0x208000|0xff030303, 0x208000|0xff030303, 0x208000|0xff030303, 0x208000|0xff030303, 0x208000|0xff030303, 0x208000|0xff030303, 0x208000|0xff030303, 0x208000|0xff030303, 0x208000|0xff030303, 0x208000|0xff030303, 0x208000|0xff030303, 0x208000|0xff030303, 0x208000|0xff030303, 0x208000|0xff030303, 0x208000|0xff030303, 0x208000|0xff030303, 0x208000|0xff030303, 0x208000|0xff030303, 0x208000|0xff030303, 0x208000|0xff030303, 0x208000|0xff030303, 0x208000|0xff030303, 0x208000|0xff030303, 0x208000|0xff030303, 0x208000|0xff030303, 0x208000|0xff030303, 0x208000|0xff030303, 0x208000|0xff030303, 0x208000|0xff030303, 0x208000|0xff030303, 0x208000|0xff030303, 0x208000|0xff030303, 0x208000|0xff030303, 0x208000|0xff030303, 0x208000|0xff030303, 0x208000|0xff030303, 0x208000|0xff030303 }, /* line7 */ /* 1 2 3 4 5 6 7 8 9 10 */ {0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0x608000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, #if (EINK_PANEL_W >= 1024) /* 256 data */ 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, #endif #if (EINK_PANEL_W >= 1440) /* 360 data */ 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, #endif 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, /* 1 2 3 2 4 2 5 2 6 2 7 2 8 2 9 2 10 2 2 */ 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, /* 1 2 3 2 4 2 $215 2 6 2 7 2 8 2 9 2 10 2 2 */ 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303 }, /* line8 */ /* 1 2 3 4 5 6 7 8 9 10 */ {0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, #if (EINK_PANEL_W >= 1024) /* 256 data */ 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, #endif #if (EINK_PANEL_W >= 1440) /* 360 data */ 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, #endif 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, /* 1 2 3 2 4 2 5 2 6 2 7 2 8 2 9 2 10 2 2 */ 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, /* 1 2 3 2 4 2 $215 2 6 2 7 2 8 2 9 2 10 2 2 */ 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303 }, /* line9-line608, 共600行 */ /* 1 2 3 4 5 6 7 8 9 10 */ {0xE0A000|0xff030303, 0xE0A000|0xff030303, 0xE0A000|0xff030303, 0xE0A000|0xff030303, 0xE0A000|0xff030303, 0xE0A000|0xff030303, 0xE0A000|0xff030303, 0xE0A000|0xff030303, 0xE0A000|0xff030303, 0xE0A000|0xff030303, /* 1 2 $13 2 $14 2 $15 2 6 2 7 2 8 2 $19 2 10 2 2 */ 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xF08000|0xff030303, 0xD08000|0xff030303, 0xD08000|0xff030303, 0xD08000|0xff030303, 0xD08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, #if (EINK_PANEL_W >= 1024) /* 256 data */ 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, #endif #if (EINK_PANEL_W >= 1440) /* 360 data */ 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, #endif 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, /* 1 2 3 2 4 2 5 2 6 2 7 2 8 2 9 2 10 2 2 */ 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, /* 211 212 213 212 214 212 215 212 216 212 217 212 218 212 219 212 210 212 212 */ 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xF08000|0xff030303, 0xB08000|0xff030303, 0xB08000|0xff030303, 0xB08000|0xff030303, 0xB08000|0xff030303, 0xB08000|0xff030303, 0xB08000|0xff030303, 0xB08000|0xff030303, 0xB08000|0xff030303, 0xB08000|0xff030303, 0xB08000|0xff030303, 0xB08000|0xff030303, 0xB08000|0xff030303, 0xB08000|0xff030303, 0xB08000|0xff030303, 0xB08000|0xff030303, 0xB08000|0xff030303, 0xB08000|0xff030303, 0xB08000|0xff030303, 0xB08000|0xff030303, 0xB08000|0xff030303, 0xB08000|0xff030303, 0xB08000|0xff030303, 0xB08000|0xff030303, 0xB08000|0xff030303, 0xB08000|0xff030303, 0xB08000|0xff030303, 0xB08000|0xff030303, 0xB08000|0xff030303, 0xB08000|0xff030303, 0xB08000|0xff030303, 0xB08000|0xff030303, 0xB08000|0xff030303, 0xB08000|0xff030303, 0xB08000|0xff030303, 0xB08000|0xff030303, /* 251 252 253 252 254 252 255 252 $256 252 257 252 258 252 252 252 252 */ 0xB08000|0xff030303, 0xB08000|0xff030303, 0xB08000|0xff030303, 0xB08000|0xff030303, 0xB08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303 }, /* 以上为有效数据行 */ /* 以下为场结束部分 */ /* line609 */ /* 1 2 3 4 $5 6 7 8 9 10 */ {0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, #if (EINK_PANEL_W >= 1024) /* 256 data */ 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, #endif #if (EINK_PANEL_W >= 1440) /* 360 data */ 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, #endif 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, /* 1 2 3 2 3 4 2 3 5 2 3 6 2 3 $7 2 3 8 2 39 2 3 10 2 3 2 3 */ 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, /* 21 212 213 212 214 212 215 212 216 212 217 212 218 212 219 212 210 212 212 */ 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xE08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303 }, /* line610-620 */ /* 1 2 3 4 $5 6 $7 8 9 10 */ {0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, #if (EINK_PANEL_W >= 1024) /* 256 data */ 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, #endif #if (EINK_PANEL_W >= 1440) /* 360 data */ 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, #endif 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, /* 1 2 3 2 4 2 5 2 6 2 $7 2 8 2 9 2 10 2 2 */ 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303, 0xA08000|0xff030303 }, }; /* Description : wavedata buffer must call this function to init conctrl data, this interface is for 8-bits data TCON Input : eink_timing_info -- specify the eink panel timing parameter Ouput : timing_buf -- timing para buffer address(virturl address) Return : 0 -- success, others -- fail */ int init_eink_ctrl_data(unsigned long timing_vaddr) { int ret = 0; u32 row, col = 0, row_temp = 0; const u32 *p_ctrl_gc_tbl = NULL; u32 *p_ctrl_line = NULL; u32 wav_width = 0, wav_height = 0; u32 hync_len = 0, vync_len = 0; u32 h_data_len = 0, v_data_len = 0; u32 *point = NULL; A13_WAVEDATA *global_ctrl_buffer = NULL; A13_WAVEDATA *src = NULL; TIMING_INFO *dest = NULL; struct eink_panel_info *panel_info; struct timing_info *timing; struct eink_manager *mgr = get_eink_manager(); if (mgr == NULL) { pr_err("%s:Eink Mgr is NULL\n", __func__); return -1; } panel_info = &mgr->panel_info; timing = &mgr->timing_info; if ((timing_vaddr == 0) || (panel_info == NULL) || (timing == NULL)) { pr_err("%s: input param is null\n", __func__); return -EINVAL; } hync_len = timing->lsl + timing->lbl + timing->lel; vync_len = timing->fsl + timing->fbl + timing->fel; h_data_len = panel_info->width >> 2; v_data_len = panel_info->height; wav_width = h_data_len + hync_len; wav_height = v_data_len + vync_len; global_ctrl_buffer = (A13_WAVEDATA *)kzalloc(wav_width * wav_height * sizeof(A13_WAVEDATA), GFP_KERNEL); if (global_ctrl_buffer == NULL) { pr_err("%s: alloc memory for global control buffer fail, size=0x%x\n", __func__, (unsigned int)(wav_width * wav_height * sizeof(A13_WAVEDATA))); return -ENOMEM; } point = (u32 *)global_ctrl_buffer; p_ctrl_gc_tbl = (u32 *)eink_ctrl_tbl_GC16_COMMON[4]; p_ctrl_line = (u32 *)eink_ctrl_line_index_tbl; /* line1--line8 */ for (row = 0; row < (timing->fsl + timing->fbl); row++) { row_temp = *p_ctrl_line++; for (col = 0; col < wav_width; col++) { *point = eink_ctrl_tbl_GC16_COMMON[row_temp][col]; point++; } } /* p_ctrl_line += 600;*/ /* point += 600*258;*/ for (; row < (wav_height - timing->fel); row++) { row_temp = *p_ctrl_line++; /* for (col = 0; col < (eink_timing_info->lsl + * eink_timing_info->lbl); col++) { *point = (*(p_ctrl_gc_tbl + col)); point++; } point += h_data_len; col += h_data_len; */ for (col = 0; col < wav_width; col++) { *point = (*(p_ctrl_gc_tbl + col)); point++; } } for (; row < wav_height; row++) { row_temp = *p_ctrl_line++; for (col = 0; col < wav_width; col++) { *point = eink_ctrl_tbl_GC16_COMMON[row_temp][col]; point++; } } src = global_ctrl_buffer; dest = (TIMING_INFO *)timing_vaddr; for (row = 0; row < wav_height; row++) { for (col = 0; col < wav_width; col++) { dest->bits.mode = src->bits.mode; dest->bits.oeh = src->bits.oeh; dest->bits.leh = src->bits.leh; dest->bits.sth = src->bits.sth; dest->bits.ckv = src->bits.ckv; dest->bits.stv = src->bits.stv; dest->bits.res0 = 0;//3; dest++; src++; } } if (global_ctrl_buffer != NULL) { kfree(global_ctrl_buffer); global_ctrl_buffer = NULL; } return ret; } static s32 timing_ctrl_set_open_func(struct timing_ctrl_manager *mgr, EINK_PANEL_FUNC func, u32 delay) { EINK_INFO_MSG("\n"); if (func) { EINK_INFO_MSG("\n"); mgr->open_flow.func[mgr->open_flow.func_num].func = func; mgr->open_flow.func[mgr->open_flow.func_num].delay = delay; mgr->open_flow.func_num++; } return 0; } static s32 timing_ctrl_set_close_func(struct timing_ctrl_manager *mgr, EINK_PANEL_FUNC func, u32 delay) { EINK_INFO_MSG("\n"); if (func) { mgr->close_flow.func[mgr->close_flow.func_num].func = func; mgr->close_flow.func[mgr->close_flow.func_num].delay = delay; mgr->close_flow.func_num++; } return 0; } s32 timing_ctrl_mgr_enable(struct timing_ctrl_manager *mgr) { int ret = 0, i = 0; unsigned long flags = 0; spin_lock_irqsave(&mgr->tlock, flags); if (mgr->enabled) { pr_warn("timing mgr already enable!\n"); spin_unlock_irqrestore(&mgr->tlock, flags); return 0; } spin_unlock_irqrestore(&mgr->tlock, flags); #ifdef TIMING_FROM_MEM u32 hsync = 0, vsync = 0; struct timing_buf_cfg cfg_buf; struct timing_info *timing = &mgr->info; u32 coor_x = 0, coor_y = 0; hsync = timing->lsl + timing->lbl + timing->ldl + timing->lel; vsync = timing->fsl + timing->fbl + timing->fdl + timing->fel; mgr->timing_size = hsync * vsync; mgr->timing_vaddr = eink_malloc(mgr->timing_size, &mgr->timing_paddr); if (mgr->timing_vaddr == NULL) { pr_err("%s: timing buf malloc faile\n", __func__); ret = -ENOMEM; goto timing_buf_err; } ret = init_eink_ctrl_data((unsigned long)mgr->timing_vaddr); if (ret) { pr_err("%s:fail to init ctrl data\n", __func__); ret = -EINVAL; goto timing_buf_err; } eink_cache_sync(mgr->timing_vaddr, mgr->timing_size); EINK_INFO_MSG("timing vaddr=0x%p, paddr=0x%p\n", mgr->timing_vaddr, (void *)mgr->timing_paddr); save_as_bin_file((__u8 *)mgr->timing_vaddr, "/tmp/timing_test.bin", mgr->timing_size, 0); cfg_buf.addr = mgr->timing_paddr; cfg_buf.width = hsync - 1; cfg_buf.pitch = hsync; cfg_buf.height = vsync - 1; coor_x = timing->lsl + timing->lbl; coor_y = timing->fsl + timing->fbl; eink_timing_config_coor(coor_x, coor_y); eink_config_timing_buf(&cfg_buf); #else eink_config_timing_param(&mgr->info); eink_timing_gen_enable(); #endif for (i = 0; i < EINK_GPIO_NUM; i++) { mgr->gpio_hdl[i] = 0; if (mgr->eink_gpio_used[i]) { mgr->gpio_hdl[i] = eink_sys_gpio_request(&mgr->eink_gpio[i], 1); } } mgr->open_flow.func_num = 0;/* reset when standby */ if (mgr->panel_func.cfg_open_flow) mgr->panel_func.cfg_open_flow(); else { pr_err("%s:cfg_open_flow is NULL\n", __func__); ret = -EINVAL; return ret; } EINK_INFO_MSG("func num = %d\n", mgr->open_flow.func_num); for (i = 0; i < mgr->open_flow.func_num; i++) { EINK_INFO_MSG("0x%p\n", mgr->open_flow.func[i].func); if (mgr->open_flow.func[i].func) { mgr->open_flow.func[i].func(); EINK_INFO_MSG("open flow:step %d finish, to delay %d\n", i, mgr->open_flow.func[i].delay); if (mgr->open_flow.func[i].delay != 0) mdelay(mgr->open_flow.func[i].delay); } } spin_lock_irqsave(&mgr->tlock, flags); mgr->enabled = 1; spin_unlock_irqrestore(&mgr->tlock, flags); return ret; #ifdef TIMING_FROM_MEM timing_buf_err: if (mgr->timing_vaddr) eink_free(mgr->timing_vaddr, (void *)mgr->timing_paddr, mgr->timing_size); return ret; #endif } int timing_ctrl_mgr_disable(struct timing_ctrl_manager *mgr) { int i = 0; unsigned long flags = 0; spin_lock_irqsave(&mgr->tlock, flags); if (mgr->enabled == 0) { pr_warn("timing mgr already disable!\n"); spin_unlock_irqrestore(&mgr->tlock, flags); return 0; } spin_unlock_irqrestore(&mgr->tlock, flags); mgr->close_flow.func_num = 0; if (mgr->panel_func.cfg_close_flow) mgr->panel_func.cfg_close_flow(); else { pr_err("%s:cfg_close_flow is NULL\n", __func__); return -1; } for (i = 0; i < mgr->close_flow.func_num; i++) { if (mgr->close_flow.func[i].func) { mgr->close_flow.func[i].func(); EINK_INFO_MSG("close flow:step %d finish, to delay %d\n", i, mgr->close_flow.func[i].delay); if (mgr->close_flow.func[i].delay != 0) mdelay(mgr->close_flow.func[i].delay); } } for (i = 0; i < EINK_GPIO_NUM; i++) { if (mgr->gpio_hdl[i]) { eink_sys_gpio_release(mgr->gpio_hdl[i]); mgr->eink_gpio[i].mul_sel = 7; mgr->gpio_hdl[i] = eink_sys_gpio_request(&mgr->eink_gpio[i], 1); eink_sys_gpio_release(mgr->gpio_hdl[i]); mgr->gpio_hdl[i] = 0; } } #ifdef TIMING_FROM_MEM if (mgr->timing_vaddr) eink_free(mgr->timing_vaddr, (void *)mgr->timing_paddr, mgr->timing_size); #endif spin_lock_irqsave(&mgr->tlock, flags); mgr->enabled = 0; spin_unlock_irqrestore(&mgr->tlock, flags); return 0; } int timing_ctrl_mgr_init(struct init_para *para) { int ret = 0; struct timing_ctrl_manager *timing_ctrl_mgr = NULL; struct eink_manager *eink_mgr = get_eink_manager(); if (eink_mgr == NULL) { pr_err("%s:eink_mgr is NULL!\n", __func__); return -1; } timing_ctrl_mgr = (struct timing_ctrl_manager *)kmalloc(sizeof(struct timing_ctrl_manager), GFP_KERNEL | __GFP_ZERO); if (timing_ctrl_mgr == NULL) { pr_err("%s:timing manager malloc failed!\n", __func__); ret = -ENOMEM; goto timing_mgr_err; } memcpy(&timing_ctrl_mgr->info, ¶->timing_info, sizeof(struct timing_info)); memcpy(timing_ctrl_mgr->eink_gpio_used, para->eink_gpio_used, EINK_GPIO_NUM * sizeof(unsigned int)); memcpy(timing_ctrl_mgr->eink_gpio, para->eink_gpio, EINK_GPIO_NUM * sizeof(struct eink_gpio_cfg)); timing_ctrl_mgr->enable = timing_ctrl_mgr_enable; timing_ctrl_mgr->disable = timing_ctrl_mgr_disable; timing_ctrl_mgr->set_open_func = timing_ctrl_set_open_func; timing_ctrl_mgr->set_close_func = timing_ctrl_set_close_func; timing_ctrl_mgr->enabled = 0; eink_mgr->timing_ctrl_mgr = timing_ctrl_mgr; g_timing_ctrl_mgr = timing_ctrl_mgr; /* init eink panel func */ eink_panel_init(); return 0; timing_mgr_err: kfree(timing_ctrl_mgr); return ret; } s32 eink_set_panel_funcs(char *name, struct eink_panel_func *eink_cfg) { struct timing_ctrl_manager *timing_ctrl_mgr = NULL; char primary_key[20], drv_name[32]; s32 ret = 0; EINK_INFO_MSG("PANEL:%s come in!\n", name); timing_ctrl_mgr = g_timing_ctrl_mgr; if (timing_ctrl_mgr == NULL) { pr_err("set panel funcs NULL hdl!\n"); return -EINVAL; } sprintf(primary_key, "eink"); ret = eink_sys_script_get_item(primary_key, "eink_panel_name", (int *)drv_name, 2); EINK_INFO_MSG("syscfg_drv_name %s, set_panel_name %s\n", drv_name, name); if ((ret == 2) && !strcmp(drv_name, name)) { memset(&timing_ctrl_mgr->panel_func, 0, sizeof(struct eink_panel_func)); timing_ctrl_mgr->panel_func.cfg_open_flow = eink_cfg->cfg_open_flow; timing_ctrl_mgr->panel_func.cfg_close_flow = eink_cfg->cfg_close_flow; return 0; } return -1; }