User:Seldon/GSoC2007-ProjectDiary

From ScummVM :: Wiki
Jump to navigation Jump to search

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
OSystem OSystem_GP32 : public OSystem
virtual Audio::Mixer *getMixer  
virtual bool getFeatureState bool getFeatureState
virtual bool hasFeature bool hasFeature
virtual bool openCD  
virtual bool pollCD  
virtual bool pollEvent bool pollEvent
virtual bool setGraphicsMode bool setGraphicsMode
bool setGraphicsMode bool setGraphicsMode
virtual bool showMouse bool showMouse
virtual Common::EventManager *getEventManager  
virtual Common::SaveFileManager *getSavefileManager  
virtual 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  
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  
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  
virtual void displayMessageOnOSD 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 initSize void initSize
virtual void lockMutex void lockMutex
virtual void playCD  
virtual void quit void quit
virtual 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  
virtual void unlockMutex void unlockMutex
virtual void unlockScreen virtual void unlockScreen
virtual void updateCD  
virtual void updateScreen void updateScreen
virtual void warpMouse void warpMouse
   
  void clearSoundCallback
  void fillMouseEvent
  void handleKbdMouse
  bool setSoundCallback
  void setTimerCallback