Difference between revisions of "User:Seldon/GSoC2007-ProjectDiary"
Line 23: | Line 23: | ||
|- class=xl2915771 height=18 style='height:13.5pt' | |- class=xl2915771 height=18 style='height:13.5pt' | ||
| height=18 class=xl3015771 width=444 style='height:13.5pt;width:333pt' | OSystem | | height=18 class=xl3015771 width=444 style='height:13.5pt;width:333pt' | OSystem | ||
| class=xl3115771 width=444 style='border-left:none;width:333pt' | OSystem_Dreamcast | | class=xl3115771 width=444 style='border-left:none;width:333pt' | OSystem_Dreamcast : public OSystem | ||
: public OSystem | |||
|- height=18 style='height:13.5pt' | |- height=18 style='height:13.5pt' | ||
| height=18 class=xl2315771 style='height:13.5pt' | virtual Audio::Mixer | | height=18 class=xl2315771 style='height:13.5pt' | virtual Audio::Mixer |
Revision as of 11:46, 4 July 2007
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 arhitecture
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:
OSystem | OSystem_Dreamcast : public OSystem |
virtual Audio::Mixer
|
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
|
virtual
Common::TimerManager *getTimerManager |
Common::TimerManager
|
virtual const
GraphicsMode *getSupportedGraphicsModes |
const GraphicsMode
|
virtual Graphics::Surface
|
virtual Graphics::Surface
|
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
| |
<![if supportMisalignedColumns]> |