Epson Research and Development
Page 3
Vancouver Design Center
Programming Notes and Examples
S1D13505
Issue Date: 01/02/05
X23A-G-003-07
Table of Contents
1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2 Initialization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.1
Miscellaneous . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3 Memory Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
3.1
Display Buffer Location . . . . . . . . . . . . . . . . . . . . . . . . . . 16
3.1.1
Memory Organization for One Bit-Per-Pixel (2 Colors/Gray Shades) . . . . . . . . 16
3.1.2
Memory Organization for Two Bit-Per-Pixel (4 Colors/Gray Shades) . . . . . . . . 17
3.1.3
Memory Organization for Four Bit-Per-Pixel (16 Colors/Gray Shades) . . . . . . . 17
3.1.4
Memory Organization for Eight Bit-Per-Pixel (256 Colors/16 Gray Shades) . . . . 18
3.1.5
Memory Organization for Fifteen Bit-Per-Pixel (32768 Colors/16 Gray Shades) . . 18
3.1.6
Memory Organization for Sixteen Bit-Per-Pixel (65536 Colors/16 Gray Shades) . . 19
4 Look-Up Table (LUT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
4.1
Look-Up Table Registers . . . . . . . . . . . . . . . . . . . . . . . . . . 20
4.2
Look-Up Table Organization . . . . . . . . . . . . . . . . . . . . . . . . 21
5 Advanced Techniques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
5.1
Virtual Display . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
5.1.1
Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
5.1.2
Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
5.2
Panning and Scrolling . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
5.2.1
Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
5.2.2
Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
5.3
Split Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
5.3.1
Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
5.3.2
Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
6 LCD Power Sequencing and Power Save Modes . . . . . . . . . . . . . . . . . . . 38
6.1
LCD Power Sequencing . . . . . . . . . . . . . . . . . . . . . . . . . . 38
6.1.1
Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
6.1.2
LCD Power Disable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
6.2
Software Power Save . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
6.2.1
Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
6.3
Hardware Power Save . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
7 Hardware Cursor/Ink Layer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
7.1
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
7.2
Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
7.3
Limitations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
7.3.1
Updating Hardware Cursor Addresses . . . . . . . . . . . . . . . . . . . . . . . . 46