User:Seldon/GSoC2007-ProjectDiary
2007-06-09 (Saturday) - analyzing current backend code
Today I am starting my Small Devices Backend project diary. Here I'll be posting all of the current progress information.
I have already ran a pocketSCUMM port on ACER n311 pocket PC. Now I am analyzing the current backend code.
2007-07-01 (Sunday) - back
I am finally back to the project after a prolonged exams period at the two Universities I am currently studying, and planning to catch with all the work on backends.
I have talked to _sev: we've successfully resolved some linker errors over the TightVNC - all that had to be done is to change the order of library paths. Funny. So, the most important tasks for right now are:
- come up with the description of current backends implementation;
- study the new idea of events to replace engine specific keymapping code in the backends ( [Scummvm-devel] RFC: Flexible keymapping via new EVENT_ (post 0.10) by Max)
2007-07-03 (Tuesday) - current backend architecture
Yesterday and today I went through all backend implementations (classes that extend OSystem). I gathered the information about all methods in OSystem class hierarchy and presented it the form of tables. There one can easily see all of the OSystem virtual functions, their overriding counterparts in backend implementations, as well backend specific functions. Based on this information it is easy to see what are the common methods for all backends, which of them are simply duplicated, etc.
Legend:
public method |
protected method |
private method |
OSystem | OSystem_Dreamcast : public OSystem |
virtual Audio::Mixer *getMixer | Audio::Mixer *getMixer |
virtual bool getFeatureState | bool getFeatureState |
virtual bool hasFeature | bool hasFeature |
virtual bool openCD | bool openCD |
virtual bool pollCD | bool pollCD |
virtual bool pollEvent | bool pollEvent |
virtual bool setGraphicsMode | bool setGraphicsMode |
virtual bool showMouse | bool showMouse |
virtual Common::EventManager *getEventManager | |
virtual Common::SaveFileManager *getSavefileManager | Common::SaveFileManager *getSavefileManager |
virtual Common::TimerManager *getTimerManager | Common::TimerManager *getTimerManager |
virtual const GraphicsMode *getSupportedGraphicsModes | const GraphicsMode *getSupportedGraphicsModes |
virtual Graphics::Surface *lockScreen | virtual Graphics::Surface *lockScreen |
virtual int getDefaultGraphicsMode | int getDefaultGraphicsMode |
virtual int getGraphicsMode | int getGraphicsMode |
virtual int getOutputSampleRate | int getOutputSampleRate |
virtual int getScreenChangeID | |
virtual int overlayToScreenX | int overlayToScreenX |
virtual int overlayToScreenY | int overlayToScreenY |
virtual int screenToOverlayX | int screenToOverlayX |
virtual int screenToOverlayY | int screenToOverlayY |
virtual int16 getHeight | int16 getHeight |
virtual int16 getOverlayHeight | int16 getOverlayHeight |
virtual int16 getOverlayWidth | int16 getOverlayWidth |
virtual int16 getWidth | int16 getWidth |
virtual MutexRef createMutex | MutexRef createMutex |
virtual OverlayColor ARGBToColor | OverlayColor ARGBToColor |
virtual OverlayColor RGBToColor | OverlayColor RGBToColor |
virtual uint32 getMillis | uint32 getMillis |
virtual void beginGFXTransaction | |
virtual void clearFocusRectangle | |
virtual void clearOverlay | void clearOverlay |
virtual void clearScreen | void clearScreen |
virtual void colorToARGB | void colorToARGB |
virtual void colorToRGB | void colorToRGB |
virtual void copyRectToOverlay | void copyRectToOverlay |
virtual void copyRectToScreen | void copyRectToScreen |
virtual void delayMillis | void delayMillis |
virtual void deleteMutex | void deleteMutex |
virtual void disableCursorPalette | void disableCursorPalette |
virtual void displayMessageOnOSD | |
virtual void endGFXTransaction | |
virtual void grabOverlay | void grabOverlay |
virtual void grabPalette | void grabPalette |
virtual void hideOverlay | void hideOverlay |
virtual void initBackend | virtual void initBackend |
virtual void initSize | void initSize |
virtual void lockMutex | void lockMutex |
virtual void playCD | void playCD |
virtual void quit | void quit |
virtual void setCursorPalette | void setCursorPalette |
virtual void setFeatureState | void setFeatureState |
virtual void setFocusRectangle | |
virtual void setMouseCursor | void setMouseCursor |
virtual void setPalette | void setPalette |
virtual void setShakePos | void setShakePos |
virtual void setWindowCaption | void setWindowCaption |
virtual void showOverlay | void showOverlay |
virtual void stopCD | void stopCD |
virtual void unlockMutex | void unlockMutex |
virtual void unlockScreen | virtual void unlockScreen |
virtual void updateCD | void updateCD |
virtual void updateScreen | void updateScreen |
virtual void warpMouse | void warpMouse |
void mouseToSoftKbd | |
void checkSound | |
void drawMouse | |
void setScaling | |
Common::SaveFileManager *createSavefileManager | |
OSystem | OSystem_DS : public OSystem |
virtual Audio::Mixer *getMixer | virtual Audio::Mixer* getMixer |
virtual bool getFeatureState | virtual bool getFeatureState |
virtual bool hasFeature | virtual bool hasFeature |
virtual bool openCD | virtual bool openCD |
virtual bool pollCD | virtual bool pollCD |
virtual bool pollEvent | virtual bool pollEvent |
virtual bool setGraphicsMode | virtual bool setGraphicsMode |
bool setGraphicsMode | bool setGraphicsMode |
virtual bool showMouse | virtual bool showMouse |
virtual Common::EventManager *getEventManager | |
virtual Common::SaveFileManager *getSavefileManager | virtual Common::SaveFileManager *getSavefileManager |
virtual Common::TimerManager *getTimerManager | virtual Common::TimerManager* getTimerManager |
virtual const GraphicsMode *getSupportedGraphicsModes | virtual const GraphicsMode *getSupportedGraphicsModes |
virtual Graphics::Surface *lockScreen | |
virtual int getDefaultGraphicsMode | virtual int getDefaultGraphicsMode |
virtual int getGraphicsMode | virtual int getGraphicsMode |
virtual int getOutputSampleRate | virtual int getOutputSampleRate |
virtual int getScreenChangeID | |
virtual int overlayToScreenX | |
virtual int overlayToScreenY | |
virtual int screenToOverlayX | |
virtual int screenToOverlayY | |
virtual int16 getHeight | virtual int16 getHeight |
virtual int16 getOverlayHeight | virtual int16 getOverlayHeight |
virtual int16 getOverlayWidth | virtual int16 getOverlayWidth |
virtual int16 getWidth | virtual int16 getWidth |
virtual MutexRef createMutex | virtual MutexRef createMutex |
virtual OverlayColor ARGBToColor | |
virtual OverlayColor RGBToColor | inline virtual OverlayColor RGBToColor |
virtual uint32 getMillis | virtual uint32 getMillis |
virtual void beginGFXTransaction | |
virtual void clearFocusRectangle | virtual void clearFocusRectangle |
virtual void clearOverlay | virtual void clearOverlay |
virtual void clearScreen | |
virtual void colorToARGB | |
virtual void colorToRGB | inline virtual void colorToRGB |
virtual void copyRectToOverlay | virtual void copyRectToOverlay |
virtual void copyRectToScreen | virtual void copyRectToScreen |
virtual void delayMillis | virtual void delayMillis |
virtual void deleteMutex | virtual void deleteMutex |
virtual void disableCursorPalette | |
virtual void displayMessageOnOSD | virtual void displayMessageOnOSD |
virtual void endGFXTransaction | |
virtual void grabOverlay | virtual void grabOverlay |
virtual void grabPalette | virtual void grabPalette |
virtual void hideOverlay | virtual void hideOverlay |
virtual void initBackend | virtual void initBackend |
virtual void initSize | virtual void initSize |
virtual void lockMutex | virtual void lockMutex |
virtual void playCD | virtual void playCD |
virtual void quit | virtual void quit |
virtual void setCursorPalette | |
virtual void setFeatureState | virtual void setFeatureState |
virtual void setFocusRectangle | virtual void setFocusRectangle |
virtual void setMouseCursor | virtual void setMouseCursor |
virtual void setPalette | virtual void setPalette |
virtual void setShakePos | virtual void setShakePos |
virtual void setWindowCaption | virtual void setWindowCaption |
virtual void showOverlay | virtual void showOverlay |
virtual void stopCD | virtual void stopCD |
virtual void unlockMutex | virtual void unlockMutex |
virtual void unlockScreen | |
virtual void updateCD | virtual void updateCD |
virtual void updateScreen | virtual void updateScreen |
virtual void warpMouse | virtual void warpMouse |
void addEvent | |
virtual void addAutoComplete | |
virtual void clearAutoComplete | |
virtual void clearSoundCallback | |
virtual void setCharactersEntered | |
bool isEventQueueEmpty | |
static int timerHandler | |
virtual bool grabRawScreen |
OSystem | OSystem_GP2X : public OSystem |
virtual Audio::Mixer *getMixer | virtual Audio::Mixer *getMixer |
virtual bool getFeatureState | virtual bool getFeatureState |
virtual bool hasFeature | virtual bool hasFeature |
virtual bool openCD | virtual bool openCD |
virtual bool pollCD | bool pollCD |
virtual bool pollEvent | virtual bool pollEvent |
virtual bool setGraphicsMode | virtual bool setGraphicsMode |
virtual bool showMouse | bool showMouse |
virtual Common::EventManager *getEventManager | |
virtual Common::SaveFileManager *getSavefileManager | virtual Common::SaveFileManager *getSavefileManager |
virtual Common::TimerManager *getTimerManager | virtual Common::TimerManager *getTimerManager |
virtual const GraphicsMode *getSupportedGraphicsModes | virtual const GraphicsMode *getSupportedGraphicsModes |
virtual Graphics::Surface *lockScreen | virtual Graphics::Surface *lockScreen |
virtual int getDefaultGraphicsMode | virtual int getDefaultGraphicsMode |
virtual int getGraphicsMode | virtual int getGraphicsMode |
virtual int getOutputSampleRate | virtual int getOutputSampleRate |
virtual int getScreenChangeID | int getScreenChangeID |
virtual int overlayToScreenX | |
virtual int overlayToScreenY | |
virtual int screenToOverlayX | |
virtual int screenToOverlayY | |
virtual int16 getHeight | int16 getHeight |
virtual int16 getOverlayHeight | int16 getOverlayHeight |
virtual int16 getOverlayWidth | int16 getOverlayWidth |
virtual int16 getWidth | int16 getWidth |
virtual MutexRef createMutex | MutexRef createMutex |
virtual OverlayColor ARGBToColor | |
virtual OverlayColor RGBToColor | OverlayColor RGBToColor |
virtual uint32 getMillis | uint32 getMillis |
virtual void beginGFXTransaction | void beginGFXTransaction |
virtual void clearFocusRectangle | |
virtual void clearOverlay | void clearOverlay |
virtual void clearScreen | |
virtual void colorToARGB | |
virtual void colorToRGB | void colorToRGB |
virtual void copyRectToOverlay | void copyRectToOverlay |
virtual void copyRectToScreen | void copyRectToScreen |
virtual void delayMillis | void delayMillis |
virtual void deleteMutex | void deleteMutex |
virtual void disableCursorPalette | void disableCursorPalette |
virtual void displayMessageOnOSD | void displayMessageOnOSD |
virtual void endGFXTransaction | void endGFXTransaction |
virtual void grabOverlay | void grabOverlay |
virtual void grabPalette | void grabPalette |
virtual void hideOverlay | void hideOverlay |
virtual void initBackend | virtual void initBackend |
virtual void initSize | void initSize |
virtual void lockMutex | void lockMutex |
virtual void playCD | void playCD |
virtual void quit | virtual void quit |
virtual void setCursorPalette | void setCursorPalette |
virtual void setFeatureState | virtual void setFeatureState |
virtual void setFocusRectangle | |
virtual void setMouseCursor | void setMouseCursor |
virtual void setPalette | void setPalette |
virtual void setShakePos | void setShakePos |
virtual void setWindowCaption | |
virtual void showOverlay | void showOverlay |
virtual void stopCD | void stopCD |
virtual void unlockMutex | void unlockMutex |
virtual void unlockScreen | virtual void unlockScreen |
virtual void updateCD | void updateCD |
virtual void updateScreen | void updateScreen |
virtual void warpMouse | void warpMouse |
void clearSoundCallback | |
virtual bool setSoundCallback | |
int effectiveScreenHeight | |
virtual bool remapKey | |
virtual bool saveScreenshot | |
virtual void addDirtyRect | |
virtual void blitCursor | |
virtual void undrawMouse | |
void addDirtyRgnAuto | |
void drawMouse | |
void fillMouseEvent | |
void handleKbdMouse | |
void handleScalerHotkeys | |
void hotswapGFXMode | |
void internUpdateScreen | |
void loadGFXMode | |
void makeChecksums | |
void moveStick | |
void setAspectRatioCorrection | |
void setFullscreenMode | |
void setMousePos | |
void setupIcon | |
void setZoomOnMouse | |
void unloadGFXMode |