Listing 7. Adding Left-Right Reverse Functionality to NVScreenInit
if(pNv->ShadowFB) {
RefreshAreaFuncPtr refreshArea = NVRefreshArea;
if(pNv->Flip){
pNv->PointerMoved = pScrn->PointerMoved;
pScrn->PointerMoved = NVPointerMoved;
refreshArea = NVRefreshAreaFlip;
}
else if(pNv->Rotate) {
pNv->PointerMoved = pScrn->PointerMoved;
pScrn->PointerMoved = NVPointerMoved;
switch(pScrn->bitsPerPixel) {
case 8: refreshArea = NVRefreshArea8; break;
case 16: refreshArea = NVRefreshArea16; break;
case 32: refreshArea = NVRefreshArea32; break;
}
}
ShadowFBInit(pScreen, refreshArea);
}