[Scummvm-cvs-logs] CVS: scummvm/saga animation.cpp,1.9,1.10 events.cpp,1.12,1.13 input.cpp,1.3,1.4 music.h,1.7,1.8 render.cpp,1.13,1.14 render.h,1.8,1.9 saga.cpp,1.22,1.23 saga.h,1.16,1.17 scene.cpp,1.12,1.13 sndres.cpp,1.15,1.16 render_mod.h,1.6,NONE
Eugene Sandulenko
sev at users.sourceforge.net
Sat Jul 31 16:01:12 CEST 2004
- Previous message: [Scummvm-cvs-logs] CVS: scummvm/saga image.cpp,1.10,1.11 saga.h,1.15,1.16
- Next message: [Scummvm-cvs-logs] CVS: scummvm/scumm scumm.h,1.434,1.435 resource.cpp,1.232,1.233 akos.cpp,1.136,1.137
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Update of /cvsroot/scummvm/scummvm/saga
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7666
Modified Files:
animation.cpp events.cpp input.cpp music.h render.cpp render.h
saga.cpp saga.h scene.cpp sndres.cpp
Removed Files:
render_mod.h
Log Message:
Objectize render.cpp
Index: animation.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/saga/animation.cpp,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -d -r1.9 -r1.10
--- animation.cpp 31 Jul 2004 19:10:47 -0000 1.9
+++ animation.cpp 31 Jul 2004 23:00:48 -0000 1.10
@@ -29,7 +29,7 @@
#include "console_mod.h"
#include "game_mod.h"
#include "events_mod.h"
-#include "render_mod.h"
+#include "render.h"
#include "animation.h"
@@ -180,7 +180,7 @@
GAME_GetDisplayInfo(&disp_info);
- RENDER_GetBufferInfo(&buf_info);
+ _vm->_render->getBufferInfo(&buf_info);
display_buf = buf_info.r_bg_buf;
anim = AnimInfo.anim_tbl[anim_id];
Index: events.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/saga/events.cpp,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -d -r1.12 -r1.13
--- events.cpp 31 Jul 2004 13:34:43 -0000 1.12
+++ events.cpp 31 Jul 2004 23:00:48 -0000 1.13
@@ -36,7 +36,7 @@
#include "interface_mod.h"
#include "text_mod.h"
#include "palanim_mod.h"
-#include "render_mod.h"
+#include "render.h"
#include "game_mod.h"
#include "sndres.h"
#include "music.h"
@@ -174,7 +174,7 @@
case R_TRANSITION_EVENT:
switch (event->op) {
case EVENT_DISSOLVE:
- RENDER_GetBufferInfo(&buf_info);
+ _vm->_render->getBufferInfo(&buf_info);
SCENE_GetBGInfo(&bg_info);
TRANSITION_Dissolve(buf_info.r_bg_buf, buf_info.r_bg_buf_w, buf_info.r_bg_buf_h,
buf_info.r_bg_buf_w, bg_info.bg_buf, bg_info.bg_p, 0, event_pc);
@@ -251,7 +251,7 @@
back_buf = GFX_GetBackBuffer();
- RENDER_GetBufferInfo(&rbuf_info);
+ _vm->_render->getBufferInfo(&rbuf_info);
SCENE_GetBGInfo(&bginfo);
bg_pt.x = bginfo.bg_x;
Index: input.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/saga/input.cpp,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -d -r1.3 -r1.4
--- input.cpp 25 Jun 2004 20:01:31 -0000 1.3
+++ input.cpp 31 Jul 2004 23:00:48 -0000 1.4
@@ -26,7 +26,7 @@
#include "saga/actor_mod.h"
#include "saga/console_mod.h"
#include "saga/interface_mod.h"
-#include "saga/render_mod.h"
+#include "saga/render.h"
#include "saga/scene_mod.h"
#include "saga/script_mod.h"
@@ -81,16 +81,16 @@
INTERFACE_Draw();
break;
case 282: // F1
- RENDER_ToggleFlag(RF_SHOW_FPS);
+ _vm->_render->toggleFlag(RF_SHOW_FPS);
break;
case 283: // F2
- RENDER_ToggleFlag(RF_PALETTE_TEST);
+ _vm->_render->toggleFlag(RF_PALETTE_TEST);
break;
case 284: // F3
- RENDER_ToggleFlag(RF_TEXT_TEST);
+ _vm->_render->toggleFlag(RF_TEXT_TEST);
break;
case 285: // F4
- RENDER_ToggleFlag(RF_OBJECTMAP_TEST);
+ _vm->_render->toggleFlag(RF_OBJECTMAP_TEST);
break;
case 9: // Tab
STHREAD_DebugStep();
@@ -102,7 +102,7 @@
break;
case 19: // pause
case 112: // p
- RENDER_ToggleFlag(RF_RENDERPAUSE);
+ _vm->_render->toggleFlag(RF_RENDERPAUSE);
break;
case 27: // Esc
// Skip to next scene skip target
Index: music.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/saga/music.h,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -d -r1.7 -r1.8
--- music.h 29 May 2004 21:04:44 -0000 1.7
+++ music.h 31 Jul 2004 23:00:48 -0000 1.8
@@ -106,7 +106,6 @@
private:
- SagaEngine *_vm;
SoundMixer *_mixer;
MusicPlayer *_player;
Index: render.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/saga/render.cpp,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -d -r1.13 -r1.14
--- render.cpp 31 Jul 2004 12:37:36 -0000 1.13
+++ render.cpp 31 Jul 2004 23:00:48 -0000 1.14
@@ -40,21 +40,17 @@
#include "actionmap_mod.h"
#include "objectmap_mod.h"
-#include "render_mod.h"
#include "render.h"
namespace Saga {
-static R_RENDER_MODULE RenderModule;
-static OSystem *_system;
-
const char *test_txt = "The quick brown fox jumped over the lazy dog. She sells sea shells down by the sea shore.";
-int RENDER_Register() {
+int Render::reg(void) {
return R_SUCCESS;
}
-int RENDER_Init(OSystem *system) {
+Render::Render(OSystem *system) : _system(system), _initialized(false) {
R_GAME_DISPLAYINFO disp_info;
int tmp_w, tmp_h, tmp_bytepp;
@@ -62,19 +58,19 @@
GAME_GetDisplayInfo(&disp_info);
if (GFX_Init(system, disp_info.logical_w, disp_info.logical_h) != R_SUCCESS) {
- return R_FAILURE;
+ return;
}
// Initialize FPS timer callback
- g_timer->installTimerProc(&RENDER_FpsTimer, 1000, _vm);
+ g_timer->installTimerProc(&fpsTimerCallback, 1000000, this);
// Create background buffer
- RenderModule.r_bg_buf_w = disp_info.logical_w;
- RenderModule.r_bg_buf_h = disp_info.logical_h;
- RenderModule.r_bg_buf = (byte *)calloc(disp_info.logical_w, disp_info.logical_h);
+ _bg_buf_w = disp_info.logical_w;
+ _bg_buf_h = disp_info.logical_h;
+ _bg_buf = (byte *)calloc(disp_info.logical_w, disp_info.logical_h);
- if (RenderModule.r_bg_buf == NULL) {
- return R_MEM;
+ if (_bg_buf == NULL) {
+ return;
}
// Allocate temp buffer for animation decoding,
@@ -83,25 +79,30 @@
tmp_h = disp_info.logical_h + 4; // BG unbanking requres extra rows
tmp_bytepp = 1;
- RenderModule.r_tmp_buf = (byte *)calloc(1, tmp_w * tmp_h * tmp_bytepp);
- if (RenderModule.r_tmp_buf == NULL) {
-
- free(RenderModule.r_bg_buf);
- return R_MEM;
+ _tmp_buf = (byte *)calloc(1, tmp_w * tmp_h * tmp_bytepp);
+ if (_tmp_buf == NULL) {
+ free(_bg_buf);
+ return;
}
- RenderModule.r_tmp_buf_w = tmp_w;
- RenderModule.r_tmp_buf_h = tmp_h;
+ _tmp_buf_w = tmp_w;
+ _tmp_buf_h = tmp_h;
- RenderModule.r_backbuf_surface = GFX_GetBackBuffer();
+ _backbuf_surface = GFX_GetBackBuffer();
- _system = system;
- RenderModule.initialized = 1;
+ _initialized = true;
+}
- return R_SUCCESS;
+Render::~Render(void) {
+ free(_bg_buf);
+ free(_tmp_buf);
}
-int RENDER_DrawScene() {
+bool Render::initialized() {
+ return _initialized;
+}
+
+int Render::drawScene() {
R_SURFACE *backbuf_surface;
R_GAME_DISPLAYINFO disp_info;
R_SCENE_INFO scene_info;
@@ -111,13 +112,13 @@
int fps_width;
R_POINT mouse_pt;
- if (!RenderModule.initialized) {
+ if (!_initialized) {
return R_FAILURE;
}
- RenderModule.r_framecount++;
+ _framecount++;
- backbuf_surface = RenderModule.r_backbuf_surface;
+ backbuf_surface = _backbuf_surface;
// Get mouse coordinates
mouse_pt = SYSINPUT_GetMousePos();
@@ -131,7 +132,7 @@
SCENE_Draw(backbuf_surface);
// Display scene maps, if applicable
- if (RENDER_GetFlags() & RF_OBJECTMAP_TEST) {
+ if (getFlags() & RF_OBJECTMAP_TEST) {
OBJECTMAP_Draw(backbuf_surface, &mouse_pt, GFX_GetWhite(), GFX_GetBlack());
ACTIONMAP_Draw(backbuf_surface, GFX_MatchColor(R_RGB_RED));
}
@@ -148,15 +149,15 @@
SYSINPUT_ProcessInput();
// Display rendering information
- if (RenderModule.r_flags & RF_SHOW_FPS) {
- sprintf(txt_buf, "%d", RenderModule.r_fps);
+ if (_flags & RF_SHOW_FPS) {
+ sprintf(txt_buf, "%d", _fps);
fps_width = FONT_GetStringWidth(SMALL_FONT_ID, txt_buf, 0, FONT_NORMAL);
FONT_Draw(SMALL_FONT_ID, backbuf_surface, txt_buf, 0, backbuf_surface->buf_w - fps_width, 2,
GFX_GetWhite(), GFX_GetBlack(), FONT_OUTLINE);
}
// Display "paused game" message, if applicable
- if (RenderModule.r_flags & RF_RENDERPAUSE) {
+ if (_flags & RF_RENDERPAUSE) {
int msg_len = strlen(R_PAUSEGAME_MSG);
int msg_w = FONT_GetStringWidth(BIG_FONT_ID, R_PAUSEGAME_MSG, msg_len, FONT_OUTLINE);
FONT_Draw(BIG_FONT_ID, backbuf_surface, R_PAUSEGAME_MSG, msg_len,
@@ -168,13 +169,13 @@
INTERFACE_Update(&mouse_pt, UPDATE_MOUSEMOVE);
// Display text formatting test, if applicable
- if (RenderModule.r_flags & RF_TEXT_TEST) {
+ if (_flags & RF_TEXT_TEST) {
TEXT_Draw(MEDIUM_FONT_ID, backbuf_surface, test_txt, mouse_pt.x, mouse_pt.y,
GFX_GetWhite(), GFX_GetBlack(), FONT_OUTLINE | FONT_CENTERED);
}
// Display palette test, if applicable
- if (RenderModule.r_flags & RF_PALETTE_TEST) {
+ if (_flags & RF_PALETTE_TEST) {
GFX_DrawPalette(backbuf_surface);
}
@@ -188,47 +189,49 @@
return R_SUCCESS;
}
-unsigned int RENDER_GetFrameCount() {
- return RenderModule.r_framecount;
+unsigned int Render::getFrameCount() {
+ return _framecount;
}
-unsigned int RENDER_ResetFrameCount() {
- unsigned int framecount = RenderModule.r_framecount;
+unsigned int Render::resetFrameCount() {
+ unsigned int framecount = _framecount;
- RenderModule.r_framecount = 0;
+ _framecount = 0;
return framecount;
}
-void RENDER_FpsTimer(void *refCon) {
- RenderModule.r_fps = RenderModule.r_framecount;
- RenderModule.r_framecount = 0;
+void Render::fpsTimerCallback(void *refCon) {
+ ((Render *)refCon)->fpsTimer();
+}
- return;
+void Render::fpsTimer(void) {
+ _fps = _framecount;
+ _framecount = 0;
}
-unsigned int RENDER_GetFlags() {
- return RenderModule.r_flags;
+unsigned int Render::getFlags() {
+ return _flags;
}
-void RENDER_SetFlag(unsigned int flag) {
- RenderModule.r_flags |= flag;
+void Render::setFlag(unsigned int flag) {
+ _flags |= flag;
}
-void RENDER_ToggleFlag(unsigned int flag) {
- RenderModule.r_flags ^= flag;
+void Render::toggleFlag(unsigned int flag) {
+ _flags ^= flag;
}
-int RENDER_GetBufferInfo(R_BUFFER_INFO *r_bufinfo) {
+int Render::getBufferInfo(R_BUFFER_INFO *r_bufinfo) {
assert(r_bufinfo != NULL);
- r_bufinfo->r_bg_buf = RenderModule.r_bg_buf;
- r_bufinfo->r_bg_buf_w = RenderModule.r_bg_buf_w;
- r_bufinfo->r_bg_buf_h = RenderModule.r_bg_buf_h;
+ r_bufinfo->r_bg_buf = _bg_buf;
+ r_bufinfo->r_bg_buf_w = _bg_buf_w;
+ r_bufinfo->r_bg_buf_h = _bg_buf_h;
- r_bufinfo->r_tmp_buf = RenderModule.r_tmp_buf;
- r_bufinfo->r_tmp_buf_w = RenderModule.r_tmp_buf_w;
- r_bufinfo->r_tmp_buf_h = RenderModule.r_tmp_buf_h;
+ r_bufinfo->r_tmp_buf = _tmp_buf;
+ r_bufinfo->r_tmp_buf_w = _tmp_buf_w;
+ r_bufinfo->r_tmp_buf_h = _tmp_buf_h;
return R_SUCCESS;
}
Index: render.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/saga/render.h,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -d -r1.8 -r1.9
--- render.h 2 May 2004 15:44:19 -0000 1.8
+++ render.h 31 Jul 2004 23:00:48 -0000 1.9
@@ -26,37 +26,68 @@
#ifndef SAGA_RENDER_H_
#define SAGA_RENDER_H_
-namespace Saga {
+#include "saga/sprite_mod.h"
-// Render module CVAR defaults
-#define R_FULLSCREEN_DEFAULT 0
-#define R_DOUBLERES_DEFAULT 1
-#define R_HICOLOR_DEFAULT 1
+namespace Saga {
#define R_PAUSEGAME_MSG "PAWS GAME"
+enum RENDER_FLAGS {
+ RF_SHOW_FPS = 0x01,
+ RF_PALETTE_TEST = 0x02,
+ RF_TEXT_TEST = 0x04,
+ RF_OBJECTMAP_TEST = 0x08,
+ RF_RENDERPAUSE = 0x10,
+ RF_GAMEPAUSE = 0x20
+};
-struct R_RENDER_MODULE {
- int initialized;
-
- // Module data
- R_SURFACE *r_backbuf_surface;
-
+struct R_BUFFER_INFO {
byte *r_bg_buf;
int r_bg_buf_w;
int r_bg_buf_h;
byte *r_tmp_buf;
int r_tmp_buf_w;
int r_tmp_buf_h;
+};
- R_SPRITELIST *r_test_sprite;
+class Render {
+public:
+ int reg(void);
+ Render(OSystem *system);
+ ~Render(void);
+ bool initialized();
+ int drawScene(void);
+ unsigned int getFlags(void);
+ void setFlag(unsigned int);
+ void toggleFlag(unsigned int);
+ unsigned int getFrameCount(void);
+ unsigned int resetFrameCount(void);
+ int getBufferInfo(R_BUFFER_INFO *);
- unsigned int r_fps;
- unsigned int r_framecount;
- unsigned int r_flags;
- int r_mode;
-};
+private:
+ static void fpsTimerCallback(void *refCon);
+ void fpsTimer(void);
-void RENDER_FpsTimer(void *refCon);
+ SagaEngine *_vm;
+ OSystem *_system;
+ bool _initialized;
+
+ // Module data
+ R_SURFACE *_backbuf_surface;
+
+ byte *_bg_buf;
+ int _bg_buf_w;
+ int _bg_buf_h;
+ byte *_tmp_buf;
+ int _tmp_buf_w;
+ int _tmp_buf_h;
+
+ R_SPRITELIST *_test_sprite;
+
+ unsigned int _fps;
+ unsigned int _framecount;
+ unsigned int _flags;
+ int _mode;
+};
} // End of namespace Saga
Index: saga.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/saga/saga.cpp,v
retrieving revision 1.22
retrieving revision 1.23
diff -u -d -r1.22 -r1.23
--- saga.cpp 31 Jul 2004 13:34:43 -0000 1.22
+++ saga.cpp 31 Jul 2004 23:00:48 -0000 1.23
@@ -37,7 +37,7 @@
#include "timer.h"
#include "rscfile_mod.h"
-#include "render_mod.h"
+#include "render.h"
#include "actor_mod.h"
#include "animation.h"
#include "console_mod.h"
@@ -117,10 +117,8 @@
// Register engine modules
CON_Register(); // Register console cvars first
- RENDER_Register();
GAME_Register();
- _anim->reg();
ACTIONMAP_Register();
OBJECTMAP_Register();
SCRIPT_Register();
@@ -196,7 +194,8 @@
}
// Initialize graphics
- if (RENDER_Init(_system) != R_SUCCESS) {
+ _render = new Render(_system);
+ if (!_render->initialized()) {
return;
}
@@ -206,6 +205,9 @@
debug(0, "Sound disabled.");
}
+ _render->reg();
+ _anim->reg();
+
SYSTIMER_ResetMSCounter();
// Begin Main Engine Loop
@@ -213,7 +215,7 @@
SCENE_Start();
for (;;) {
- if (RENDER_GetFlags() & RF_RENDERPAUSE) {
+ if (_render->getFlags() & RF_RENDERPAUSE) {
// Freeze time while paused
SYSTIMER_ResetMSCounter();
} else {
@@ -226,7 +228,7 @@
STHREAD_ExecThreads(msec);
}
// Per frame processing
- RENDER_DrawScene();
+ _render->drawScene();
SYSTIMER_Sleep(0);
}
}
@@ -242,6 +244,7 @@
CVAR_Shutdown();
EVENT_Shutdown();
+ delete _render;
delete _sndRes;
// Shutdown system modules */
delete _music;
Index: saga.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/saga/saga.h,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -d -r1.16 -r1.17
--- saga.h 31 Jul 2004 20:50:34 -0000 1.16
+++ saga.h 31 Jul 2004 23:00:48 -0000 1.17
@@ -42,6 +42,7 @@
class Sound;
class Music;
class Anim;
+class Render;
using Common::MemoryReadStream;
@@ -69,6 +70,7 @@
Sound *_sound;
Music *_music;
Anim *_anim;
+ Render *_render;
private:
int decodeBGImageRLE(const byte *inbuf, size_t inbuf_len, byte *outbuf, size_t outbuf_len);
Index: scene.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/saga/scene.cpp,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -d -r1.12 -r1.13
--- scene.cpp 31 Jul 2004 13:49:26 -0000 1.12
+++ scene.cpp 31 Jul 2004 23:00:48 -0000 1.13
@@ -38,7 +38,7 @@
#include "script_mod.h"
#include "objectmap_mod.h"
#include "palanim_mod.h"
-#include "render_mod.h"
+#include "render.h"
#include "rscfile_mod.h"
#include "text_mod.h"
@@ -725,7 +725,7 @@
assert(SceneModule.init);
- RENDER_GetBufferInfo(&buf_info);
+ _vm->_render->getBufferInfo(&buf_info);
GAME_GetDisplayInfo(&disp_info);
bg_pt.x = 0;
Index: sndres.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/saga/sndres.cpp,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -d -r1.15 -r1.16
--- sndres.cpp 27 Jun 2004 21:30:33 -0000 1.15
+++ sndres.cpp 31 Jul 2004 23:00:48 -0000 1.16
@@ -36,7 +36,7 @@
namespace Saga {
-SndRes::SndRes(SagaEngine *vm) {
+SndRes::SndRes(SagaEngine *vm) : _vm(vm) {
int result;
/* Load sound module resource file contexts */
@@ -53,7 +53,6 @@
// Grab sound resource information for the current game
GAME_GetSoundInfo(&_snd_info);
- _vm = vm;
_init = 1;
}
--- render_mod.h DELETED ---
- Previous message: [Scummvm-cvs-logs] CVS: scummvm/saga image.cpp,1.10,1.11 saga.h,1.15,1.16
- Next message: [Scummvm-cvs-logs] CVS: scummvm/scumm scumm.h,1.434,1.435 resource.cpp,1.232,1.233 akos.cpp,1.136,1.137
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the Scummvm-git-logs
mailing list