47 static void _FillRectOpt32(
GUI_DEVICE * pDevice,
int x0,
int y0,
int x1,
int y1) {
52 U32 Off, Off0, RemPixels, NumLines, RemLines, OffLine, RemItems;
56 RemPixels = x1 - x0 + 1;
57 NumLines = y1 - y0 + 1;
58 OffLine = pContext->vxSizePhys;
62 Off0 = XY2OFF32(pContext->vxSizePhys, x0, y0);
64 for (RemLines = NumLines; RemLines; RemLines--) {
66 Off = Off0 + OffLine * (RemLines - 1);
68 ColorIndex =
READ_MEM32(pContext->VRAMAddr, Off);
69 ColorIndex ^= IndexMask;
76 Off = XY2OFF32(pContext->vxSizePhys, x0, y0);
77 pDest0 =
OFF2PTR32(pContext->VRAMAddr, Off);
79 if (RemPixels >= 16) {
80 for (RemLines = NumLines; RemLines; RemLines--) {
82 pDest = pDest0 + OffLine * (RemLines - 1);
102 }
while (RemItems >= 16);
105 RemPixels -= (RemPixels >> 4) << 4;
108 for (RemLines = NumLines; RemLines; RemLines--) {
109 RemItems = RemPixels;
110 pDest = pDest0 + OffLine * (RemLines - 1);
114 }
while (--RemItems);
GUI_SADDR GUI_CONTEXT * GUI_pContext
#define LCD__GetColorIndex()
tLCDDEV_GetIndexMask * pfGetIndexMask
#define WRITE_MEM32P(p, Data)
const LCD_API_COLOR_CONV * pColorConvAPI
#define OFF2PTR32(VRAMAddr, Off)
#define READ_MEM32(VRAMAddr, Off)
#define WRITE_MEM32(VRAMAddr, Off, Data)