X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/cff3511b75d95143bcd315ade417a41aa1d8316e..42f5a704c8bd14f9bac30b61a76effaededc74e8:/lib/gdi/gfbdc.cpp diff --git a/lib/gdi/gfbdc.cpp b/lib/gdi/gfbdc.cpp index 02ebc4ff..a4f65ebc 100644 --- a/lib/gdi/gfbdc.cpp +++ b/lib/gdi/gfbdc.cpp @@ -7,11 +7,8 @@ #include -gFBDC *gFBDC::instance; - gFBDC::gFBDC() { - instance=this; fb=new fbClass; if (!fb->Available()) @@ -27,7 +24,6 @@ gFBDC::~gFBDC() { delete fb; delete[] surface.clut.data; - instance=0; } void gFBDC::calcRamp() @@ -84,7 +80,7 @@ void gFBDC::setPalette() fb->PutCMAP(); } -void gFBDC::exec(gOpcode *o) +void gFBDC::exec(const gOpcode *o) { switch (o->opcode) { @@ -124,9 +120,13 @@ void gFBDC::exec(gOpcode *o) ++t; + fb->blit(); fb->waitVSync(); break; } + case gOpcode::flush: + fb->blit(); + break; default: gDC::exec(o); break; @@ -178,7 +178,7 @@ void gFBDC::setResolution(int xres, int yres) surface.data = fb->lfb; surface.offset = 0; - surface.data_phys = 50*1024*1024; // FIXME + surface.data_phys = fb->getPhysAddr(); int fb_size = surface.stride * surface.y; @@ -231,7 +231,4 @@ void gFBDC::reloadSettings() setPalette(); } -// eAutoInitPtr init_gFBDC(eAutoInitNumbers::graphic-1, "GFBDC"); -#ifndef SDLDC eAutoInitPtr init_gFBDC(eAutoInitNumbers::graphic-1, "GFBDC"); -#endif