diff options
author | Benjamin Haisch | 2008-04-23 23:22:02 +0000 |
---|---|---|
committer | Benjamin Haisch | 2008-04-23 23:22:02 +0000 |
commit | efeb8a319370bc913dc93f21b77aedeaa3777b7d (patch) | |
tree | c6d7898fa4a26a6d6f340e86d4ec1a840923afbe /engines/made/resource.cpp | |
parent | 6562a7cd8abae364b1ca481e4cbdab8f422feaf9 (diff) | |
download | scummvm-rg350-efeb8a319370bc913dc93f21b77aedeaa3777b7d.tar.gz scummvm-rg350-efeb8a319370bc913dc93f21b77aedeaa3777b7d.tar.bz2 scummvm-rg350-efeb8a319370bc913dc93f21b77aedeaa3777b7d.zip |
Added (early) midi player code.
Added "screen flash" effect.
Implemented opcodes:
- o1_PLAYMUS
- o1_STOPMUS
- o1_ISMUS
- o1_FLASH
- o1_LOADSND
- o1_LOADMUS
svn-id: r31682
Diffstat (limited to 'engines/made/resource.cpp')
-rw-r--r-- | engines/made/resource.cpp | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/engines/made/resource.cpp b/engines/made/resource.cpp index cb7cf6e7f5..4450d86c31 100644 --- a/engines/made/resource.cpp +++ b/engines/made/resource.cpp @@ -205,6 +205,22 @@ const char *MenuResource::getString(uint index) const { return NULL; } +/* XmidiResource */ + +XmidiResource::XmidiResource() : _data(NULL), _size(0) { +} + +XmidiResource::~XmidiResource() { + if (_data) + delete[] _data; +} + +void XmidiResource::load(byte *source, int size) { + _data = new byte[size]; + _size = size; + memcpy(_data, source, size); +} + /* ProjectReader */ ProjectReader::ProjectReader() { @@ -269,6 +285,10 @@ MenuResource *ProjectReader::getMenu(int index) { return createResource<MenuResource>(kResMENU, index); } +XmidiResource *ProjectReader::getXmidi(int index) { + return createResource<XmidiResource>(kResXMID, index); +} + void ProjectReader::loadIndex(ResourceSlots *slots) { _fd->readUint32LE(); // skip INDX _fd->readUint32LE(); // skip index size |