[ scummvm-Bugs-646222 ] MI1/INDY3: MidiDriver chan. setup broken
noreply at sourceforge.net
noreply at sourceforge.net
Sat Nov 30 23:08:27 CET 2002
Bugs item #646222, was opened at 2002-11-30 22:08
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=418820&aid=646222&group_id=37116
Category: iMuse/Music
Group: Monkey Island 1
Status: Open
Resolution: None
Priority: 5
Submitted By: Mikesch Nepomuk (mnepomuk)
Assigned to: Nobody/Anonymous (nobody)
Summary: MI1/INDY3: MidiDriver chan. setup broken
Initial Comment:
Since the move of MidiDriver_ADLIB to backends the
music in monkeyvga and indy3 (-> all GF_SMALL_HEADER
games) is broken.
(Yes, it's anyway not right finished yet (looping), but
it sounds 2 weeks ago a lot better !)
Problem is in adlib.cpp: MidiDriver::adlib_setup_channel():
In case of the older games it must be always:
adlib_write(port + 0x40, instr->oplvl_1);
The yet (always) active
adlib_write(port + 0x40, (instr->oplvl_1 | 0x3F) -
vol_1 );
is just wrong. And as you see, it has nothing to do
with vol_1 or with instr->oplvl_1, it's the ORing with
0x3F. So it's nothing, I can work around with a better
instruments setup at resource loading time ;-)
Solution may be:
- extra MidiDriver for GF_SMALL_HEADER
- games features-flag in MidiDriver
Any suggestions ?
----------------------------------------------------------------------
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=418820&aid=646222&group_id=37116
More information about the Scummvm-tracker
mailing list