Page 1 of 1

Restored sound card MIDI by rolling back dos update file

Posted: Sun Apr 07, 2013 12:23 am
by mbrantley
I just restored MIDI functions for my SoundBlaster card by rolling back dos.library.kmod to version 53.90. There's a current thread over at Amigans about lost MIDI functionality of sound cards since a recent update, but thought I would mention this here as well.

Re: Restored sound card MIDI by rolling back dos update file

Posted: Sun Apr 07, 2013 1:23 am
by LyleHaze
Mike,
this is the best place to post it, since this is where support happens. ;)

I've been doing a bit of detective work on this.
So far, we have confirmed that it happens with all three gameport CAMD drivers:
The EMU10kX, the Envy24HT, and the VIA686.

I have the ability to get inside CAMD.library, and I can confirm that the drivers
never even attempt to load up.

I have opened bugzilla report #8328, and I'll do whatever I can to support
finding and fixing this issue.

Thanks for your help,
Lyle

Re: Restored sound card MIDI [fixed]

Posted: Sun Apr 07, 2013 8:18 pm
by LyleHaze
More information:

I was wrong, the problem IS in camd.library.
:oops:

The fix is in the pipeline, and will be distributed after appropriate testing.

If you need gameport CAMD support before the new library is available,
any dos_lib.kmod at or before version 53.115 will allow camd to load drivers.

When available, camd.library 53.3 will resolve the problem correctly.

Thank you for your patience.
Lyle

Re: Restored sound card MIDI [fixed]

Posted: Mon Apr 08, 2013 6:12 pm
by ssolie
LyleHaze wrote:The fix is in the pipeline, and will be distributed after appropriate testing.
In the mean time, I do not recommend that users roll back dos.library.

I'll make the camd.library update available soon-ish. ;)

Re: Restored sound card MIDI [fixed]

Posted: Mon Apr 08, 2013 9:42 pm
by Raziel
LyleHaze wrote:More information:

I was wrong, the problem IS in camd.library.
:oops:

The fix is in the pipeline, and will be distributed after appropriate testing.

If you need gameport CAMD support before the new library is available,
any dos_lib.kmod at or before version 53.115 will allow camd to load drivers.

When available, camd.library 53.3 will resolve the problem correctly.

Thank you for your patience.
Lyle
Thanks a lot Lyle

Might you share what the problem was?
Im just so curious ;-)

Thaks to ssolie for the soonish availability ;-)

Take care

Hubert

Re: Restored sound card MIDI [fixed]

Posted: Mon Apr 08, 2013 10:27 pm
by LyleHaze
Raziel wrote:
Might you share what the problem was?
Im just so curious ;-)
Since I don't work on DOS, I really can not give any more
information, as it would all be guesswork.

I can say that the developer who handles DOS was
very helpful.

It has been a LONG time since CAMD needed any bug repairs.
Hopefully it will be another long time before the next one. :)

Re: Restored sound card MIDI [fixed]

Posted: Tue Apr 09, 2013 9:58 am
by colinw
Raziel wrote:
Might you share what the problem was?
Im just so curious ;-)

Hubert
In a nutshell, the problems was a small bug in camd.library.

Incase you also want to know the entire nuts and bolts details of this issue, here it is....

I discovered late last year that I was getting a bug report about being unable to scan directories with a particular
piece of software, but only when using a particular filesystem. This turned out to be a discrepancy between the way
the dos.library handled ExamineDir() emulation for older filesystems and when newer supporting filesystems did it.

Basically, one of the data items was always being supplied by the emulator, whether you asked for it or not.
This would not normally be a problem, because you SHOULD have specified the correct flags for the respective
data items you actually wanted, but when the faulty code ran on a non emulated ExamineDir() filesystem,
it only gave you the items you specificly asked for, as expected.
This would make the faulty application code break that "assumed" the previously unspecified data item would
still be forthcomming.

At dos.library 53.116 I tightened up the ExamineDir() emulator to behave exactly like a supporting filesystem,
and as the documentation specified, so there were no inconsistencies between emulated and supported calls.
This small change made any faulty code consistently show up this problem, regardless of the filesystem in use.

It's just that no-one noticed this for a while, camd.lib wasn't really a high trafic area.

Re: Restored sound card MIDI by rolling back dos update file

Posted: Tue Apr 09, 2013 2:05 pm
by Raziel
@LyleHaze

Thank you very much for the fix :-)

@colinw

Wow :-)

Thank you very much for the deep insight.
I love to read about discovering and squashing bugs, dont know why...im strange ;-)

Take care

Hubert

Re: Restored sound card MIDI by rolling back dos update file

Posted: Tue Apr 09, 2013 8:03 pm
by samo79
Raziel wrote:I love to read about discovering and squashing bugs, dont know why...im strange ;-)
You are not the only one :D