RCS file: /cvsroot/scummvm/scummvm/sky/control.cpp,v
retrieving revision 1.90
diff -u -r1.90 control.cpp
|
|
|
1573 | 1573 | _skyScreen->halvePalette(); |
1574 | 1574 | _skyScreen->showScreen(screenData); |
1575 | 1575 | free(textBuf1); free(textBuf2); |
| 1576 | // __tom (FIXME): This is a poor method of turning |
| 1577 | // off music. ~GmMusic, ~AdlibMusic, and ~MT32Music |
| 1578 | // should do it themselves so the appropriate MIDI |
| 1579 | // controller events (e.g. 123/'All Notes Off') can |
| 1580 | // be sent. However, that requires a re-write of |
| 1581 | // other code and for now this fixes hanging notes |
| 1582 | // on MT-32 + other external GMIDI synths. |
| 1583 | _skyMusic->stopMusic(); |
1576 | 1584 | delay(1500); |
1577 | 1585 | ConfMan.flushToDisk(); |
1578 | 1586 | _system->quit(); |
RCS file: /cvsroot/scummvm/scummvm/sky/music/musicbase.h,v
retrieving revision 1.17
diff -u -r1.17 musicbase.h
|
|
|
53 | 53 | void loadSection(uint8 pSection); |
54 | 54 | void musicCommand(uint16 command); |
55 | 55 | void startMusic(uint16 param) { _onNextPoll.musicToProcess = param & 0xF; }; // 4 |
| 56 | void stopMusic(); // 7 |
56 | 57 | bool musicIsPlaying(void); |
57 | 58 | virtual void setVolume(uint8 volume) = 0; |
58 | 59 | uint8 giveVolume(void) { return (uint8)_musicVolume; }; |
… |
… |
|
87 | 88 | void setTempo(uint16 newTempo); // 2 |
88 | 89 | void pollMusic(); // 3 |
89 | 90 | void reinitFM(void) { _onNextPoll.doReInit = true; }; // 6 |
90 | | void stopMusic(); // 7 |
91 | 91 | void setFMVolume(uint16 param); // 13 |
92 | 92 | }; |
93 | 93 | |