VII LCD CONTROLLER BLOCK: LCD CONTROLLER
B-VII-2-24 EPSON S1C33L03 FUNCTION PART
The starting position of the view port is changed by modifying the screen 1 start address register described above.
For example, when the start address is incremented by 16 bits, the pixel displayed at the 17th dot on line 1 moves
to the beginning of the line, and the 16 leading pixels move off the screen. This is the basic operation for panning
an image. However, when this operation is performed, the 16 leading pixels on line 2 are normally displayed at the
end of line 1, resulting in dislocation of the image. To prevent this problem, set an address offset between the last
piece of pixel data on a line and the first piece of pixel data on the next line.
Virtual screen
View port
(LCD panel size)
Horizontal
panel size
Offset
A (HW)
Virtual screen
View port
(LCD panel size)
Horizontal
panel size
B
C
B + C = A (HW)
Figure 2.18 Offsets Comprising a Virtual Screen
Set the offset value in the MADOFS[7:0] (D[7:0])/memory address offset register (0x39FFF1) as a halfword
address. Be aware that if this address is calculated from the number of pixels, the offset value may change
depending on the display mode. When configuring a 248-pixel virtual screen on a horizontal 200-pixel LCD panel,
for example, an offset of 48 pixels is required. The offset value in 1-bpp mode is 3, whereas that in 8-bpp mode is
24.
This setting allows the view port to be moved horizontally (panned) by an amount equal to the offset, by changing
the screen 1 start address register. The values set in the screen 1 start address register are halfword addresses.
Therefore, the view port is moved in 16-pixel units in 1-bpp mode, in 8-pixel units in 2-bpp mode, in 4-pixel units
in 4-bpp mode, and in 2-pixel units in 8-bpp mode.
Movement of the virtual screen in the vertical direction is determined by the installed memory capacity, which is
limited to a maximum of 256K bytes of display memory. To scroll the view port down by one line, set a one-line-
equivalent address plus an offset address in the screen 1 start address register. To scroll the view port up,
decrement the register value. The view port can also be moved in a diagonal direction by controlling addresses. To
scroll the view port in only the horizontal direction, do not add an offset (leave it at 0).
Even when a virtual screen is used, the split-screen display described above is possible. Screen 2 can be panned or
scrolled in the same way as for screen 1. Figure 2.19 shows an LCD-panel configuration when a virtual screen and
split-screen display are used.
Screen 1
start
address
S1VSIZE
+ 1 (lines)
LDVSIZE
+ 1 (lines)
LCD panel
Screen 1
Screen 2
(LDHSIZE + 1) × 16 (pixels)
Virtual screen in the display memory
Screen 1 view port
Image 1
Image 2
Screen 2 view port
(LDHSIZE+1) × 16 / BPP
(HW)
BPP = 1, 2, 4, or 8 (bpp)
Screen 2
start
address
Offset
(HW)
Figure 2.19 Virtual Screen and Split-Screen Display
Note:In portrait mode (described later), the memory address offset register (0x39FFF1) has no effect.