[Scummvm-cvs-logs] SF.net SVN: scummvm: [31648] scummvm/trunk/engines/made
thebluegr at users.sourceforge.net
thebluegr at users.sourceforge.net
Mon Apr 21 20:40:28 CEST 2008
Revision: 31648
http://scummvm.svn.sourceforge.net/scummvm/?rev=31648&view=rev
Author: thebluegr
Date: 2008-04-21 11:40:28 -0700 (Mon, 21 Apr 2008)
Log Message:
-----------
Code merge
Modified Paths:
--------------
scummvm/trunk/engines/made/made.cpp
scummvm/trunk/engines/made/pmvplayer.cpp
scummvm/trunk/engines/made/pmvplayer.h
scummvm/trunk/engines/made/screen.cpp
scummvm/trunk/engines/made/screen.h
Modified: scummvm/trunk/engines/made/made.cpp
===================================================================
--- scummvm/trunk/engines/made/made.cpp 2008-04-21 17:47:00 UTC (rev 31647)
+++ scummvm/trunk/engines/made/made.cpp 2008-04-21 18:40:28 UTC (rev 31648)
@@ -80,7 +80,7 @@
if (cd_num >= 0)
_system->openCD(cd_num);
- _pmvPlayer = new PmvPlayer(_system, _mixer);
+ _pmvPlayer = new PmvPlayer(this, _mixer);
_res = new ProjectReader();
_screen = new Screen(this);
_dat = new GameDatabase();
Modified: scummvm/trunk/engines/made/pmvplayer.cpp
===================================================================
--- scummvm/trunk/engines/made/pmvplayer.cpp 2008-04-21 17:47:00 UTC (rev 31647)
+++ scummvm/trunk/engines/made/pmvplayer.cpp 2008-04-21 18:40:28 UTC (rev 31648)
@@ -24,10 +24,11 @@
*/
#include "made/pmvplayer.h"
+#include "made/screen.h"
namespace Made {
-PmvPlayer::PmvPlayer(OSystem *system, Audio::Mixer *mixer) : _fd(NULL), _system(system), _mixer(mixer) {
+PmvPlayer::PmvPlayer(MadeEngine *vm, Audio::Mixer *mixer) : _fd(NULL), _vm(vm), _mixer(mixer) {
}
PmvPlayer::~PmvPlayer() {
@@ -68,7 +69,7 @@
// Read palette
_fd->read(_palette, 768);
- updatePalette();
+ _vm->_screen->setRGBPalette(_palette);
uint32 frameCount = 0;
uint16 chunkCount = 0;
@@ -144,7 +145,7 @@
firstTime = false;
}
- updatePalette();
+ _vm->_screen->setRGBPalette(_palette);
handleEvents();
updateScreen();
@@ -153,7 +154,7 @@
delete[] frameData;
while (_mixer->getSoundElapsedTime(_audioStreamHandle) < frameCount * frameDelay) {
- _system->delayMillis(10);
+ _vm->_system->delayMillis(10);
}
}
@@ -180,7 +181,7 @@
void PmvPlayer::handleEvents() {
Common::Event event;
- while (_system->getEventManager()->pollEvent(event)) {
+ while (_vm->_system->getEventManager()->pollEvent(event)) {
switch (event.type) {
case Common::EVENT_KEYDOWN:
if (event.kbd.keycode == Common::KEYCODE_ESCAPE)
@@ -196,20 +197,9 @@
}
}
-void PmvPlayer::updatePalette() {
- byte colors[1024];
- for (int i = 0; i < 256; i++) {
- colors[i * 4 + 0] = _palette[i * 3 + 0];
- colors[i * 4 + 1] = _palette[i * 3 + 1];
- colors[i * 4 + 2] = _palette[i * 3 + 2];
- colors[i * 4 + 3] = 0;
- }
- _system->setPalette(colors, 0, 256);
-}
-
void PmvPlayer::updateScreen() {
- _system->copyRectToScreen((const byte*)_surface->pixels, _surface->pitch, 0, 0, _surface->w, _surface->h);
- _system->updateScreen();
+ _vm->_system->copyRectToScreen((const byte*)_surface->pixels, _surface->pitch, 0, 0, _surface->w, _surface->h);
+ _vm->_system->updateScreen();
}
void PmvPlayer::decompressPalette(byte *palData, byte *outPal, uint32 palDataSize) {
Modified: scummvm/trunk/engines/made/pmvplayer.h
===================================================================
--- scummvm/trunk/engines/made/pmvplayer.h 2008-04-21 17:47:00 UTC (rev 31647)
+++ scummvm/trunk/engines/made/pmvplayer.h 2008-04-21 18:40:28 UTC (rev 31648)
@@ -36,16 +36,17 @@
#include "made/graphics.h"
#include "made/sound.h"
+#include "made/made.h"
namespace Made {
class PmvPlayer {
public:
- PmvPlayer(OSystem *system, Audio::Mixer *mixer);
+ PmvPlayer(MadeEngine *vm, Audio::Mixer *mixer);
~PmvPlayer();
void play(const char *filename);
protected:
- OSystem *_system;
+ MadeEngine *_vm;
Audio::Mixer *_mixer;
Common::File *_fd;
Audio::AppendableAudioStream *_audioStream;
@@ -55,7 +56,6 @@
bool _abort;
void readChunk(uint32 &chunkType, uint32 &chunkSize);
void handleEvents();
- void updatePalette();
void updateScreen();
void decompressPalette(byte *palData, byte *outPal, uint32 palDataSize);
};
Modified: scummvm/trunk/engines/made/screen.cpp
===================================================================
--- scummvm/trunk/engines/made/screen.cpp 2008-04-21 17:47:00 UTC (rev 31647)
+++ scummvm/trunk/engines/made/screen.cpp 2008-04-21 18:40:28 UTC (rev 31648)
@@ -73,7 +73,15 @@
}
-void Screen::setPalette(byte *palette, int start, int count) {
+void Screen::setRGBPalette(byte *palette, int start, int count) {
+ byte colors[1024];
+ for (int i = 0; i < count; i++) {
+ colors[i * 4 + 0] = palette[i * 3 + 0];
+ colors[i * 4 + 1] = palette[i * 3 + 1];
+ colors[i * 4 + 2] = palette[i * 3 + 2];
+ colors[i * 4 + 3] = 0;
+ }
+ _vm->_system->setPalette(colors, start, count);
}
uint16 Screen::updateChannel(uint16 channelIndex) {
Modified: scummvm/trunk/engines/made/screen.h
===================================================================
--- scummvm/trunk/engines/made/screen.h 2008-04-21 17:47:00 UTC (rev 31647)
+++ scummvm/trunk/engines/made/screen.h 2008-04-21 18:40:28 UTC (rev 31648)
@@ -61,7 +61,7 @@
void clearScreen();
void drawSurface(Graphics::Surface *source, int x, int y);
- void setPalette(byte *palette, int start, int count);
+ void setRGBPalette(byte *palette, int start = 0, int count = 256);
uint16 updateChannel(uint16 channelIndex);
void deleteChannel(uint16 channelIndex);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Scummvm-git-logs
mailing list