Two Different Version of DXMCI.DLL!?

Get help, info, news and advice about the Transport Tycoon Deluxe patch.

Moderator: TTDPatch Moderators

Post Reply
User avatar
Treize
Engineer
Engineer
Posts: 21
Joined: 26 Jun 2004 23:54

Two Different Version of DXMCI.DLL!?

Post by Treize »

Their is a newer DLL found here http://home.amis.net/lkslavi/ , and an older one found on the TTDPatch homepage: http://www.ttdpatch.net/dxmci.zip. Is the one found on our homepage an older version of the first one, or are they two different DLLs?
Image
Patchman
Tycoon
Tycoon
Posts: 7575
Joined: 02 Oct 2002 18:57
Location: Ithaca, New York
Contact:

Post by Patchman »

Well if the newer one works, then use it. I understand it should sound better, but I haven't heard any reports on how well it works. I guess it'll work just as well as the one Norman and I have written (the one that's available at ttdpatch.net).
User avatar
mlw_1550
Engineer
Engineer
Posts: 98
Joined: 08 Mar 2004 00:39
Location: Good ol' Portugal

Post by mlw_1550 »

Well, the sound is indeed different. But the newest file produces an annoying behaviour. When loading a game from within a running game, the midi player doesn't start playing again, you have to stop an press play again...
That's CP 1564, a Montreal Locomotives Works built locomotive
Patchman
Tycoon
Tycoon
Posts: 7575
Joined: 02 Oct 2002 18:57
Location: Ithaca, New York
Contact:

Post by Patchman »

Well, email the author and politely ask him to fix it...
gulikoza
Engineer
Engineer
Posts: 10
Joined: 27 Jun 2004 18:59

Post by gulikoza »

well...newer...I'd rather classify it as different :D. As I explained in the readme, the name dxmci came to me when I was developing a library to translate MCI to DShow for Wing Commander 4 - only later I found out that dxmci already exists. But, it was fairly trivial to add TTD support in as well so I did it. But, I belive it has some problems. For some reason it's loosing notes on my system and the loading problem you mentioned - but I am not sure this is the problem with my library. I haven't checked it, but it might be that since Load function is a hack as well it somehow "forgets" to reset the music system. In any case...unfortunately I did not use my library while playing the game this summer - I ended up modifying Patchman's (your, right? :)) dxmci to use a different DirectMusic Port so that I could load my soundfonts to the soundcard.
Patchman
Tycoon
Tycoon
Posts: 7575
Joined: 02 Oct 2002 18:57
Location: Ithaca, New York
Contact:

Post by Patchman »

gulikoza wrote:In any case...unfortunately I did not use my library while playing the game this summer - I ended up modifying Patchman's (your, right? :)) dxmci to use a different DirectMusic Port so that I could load my soundfonts to the soundcard.
I'd like to know more about that. Using the MS synth never sounded very good in my ears, I'd like to use my SBLive soundfonts if I can.

But since I don't know anything about DirectMusic, I think you'll have to tell me what to change...
gulikoza
Engineer
Engineer
Posts: 10
Joined: 27 Jun 2004 18:59

Post by gulikoza »

Exactly why I tried my DirectShow approach...

Here's a diff file, it's not nice, but it works for me :D. The DirectMusic pointers should probably be made global and released at the end. I also can't remember why I modified the volume function...perhaps it didn't work with other ports. The configuration program will enumerate all DMusic ports, then it will simply dump the GUID structure of the selected port to the cfg file which is read by dxmci at startup. Again, this is not the best way to do it but I wanted to do something simple to try if it works and didn't feel like modifying it later :lol:
Attachments
DPortSelect.zip
(93.89 KiB) Downloaded 192 times
dxmci.diff
(2.42 KiB) Downloaded 214 times
Patchman
Tycoon
Tycoon
Posts: 7575
Joined: 02 Oct 2002 18:57
Location: Ithaca, New York
Contact:

Post by Patchman »

Thanks. I had some unspecified trouble installing the diff (all hunks failed with no indication why), but got it in nonetheless.

Then I found out that my compiler must be broken, no matter what I try, all compiled dlls hang TTD when loading. Bah. :?

In any case, I was going to try to have it always go through the Midi Mapper port, then people can choose the midi port simply in the control panel. That way there's no need to have a port setup app (which 15 times larger than the dll itself :))

[edit] Found the problem, gcc is setting the DLL entry point to the middle of some ASCII string, not DllMain@12, don't ask me why :?
gulikoza
Engineer
Engineer
Posts: 10
Joined: 27 Jun 2004 18:59

Post by gulikoza »

dunno...I didn't have any problems compiling in MinGW. Well, the DPortSelect is a MFC app made with vc6++ :D. I'm sure it could be done in some other way, but 100KB up or down it's not worth the time spent :P
Patchman
Tycoon
Tycoon
Posts: 7575
Joined: 02 Oct 2002 18:57
Location: Ithaca, New York
Contact:

Post by Patchman »

It's fixed now, apparently gcc stopped passing the -e option to the linker. Anyway, I found a web page with some more port info, thanks to the clues I got from your code, so now I'll scan the available ports for the midi mapper and use that.
Patchman
Tycoon
Tycoon
Posts: 7575
Joined: 02 Oct 2002 18:57
Location: Ithaca, New York
Contact:

Post by Patchman »

Here's a dxmci.dll version which will pick the Midi Mapper if it can, and use the software synthesizer otherwise. I'd be interested in hearing especially whether the volume control works, whether you get any music at all, and any other comments.
Attachments
dxmci_new.zip
(2.95 KiB) Downloaded 249 times
User avatar
Korenn
Tycoon
Tycoon
Posts: 1735
Joined: 26 Mar 2004 01:27
Location: Netherlands
Contact:

Post by Korenn »

tried it, seems to work with my standard midi thing installed, I'll try to download a synthesiser thingy tomorrow and check it with that too.
User avatar
krtaylor
Tycoon
Tycoon
Posts: 11784
Joined: 07 Feb 2003 01:58
Location: Texas, USA
Contact:

Post by krtaylor »

Is this new DXMCI.DLL the new standard file, or an experimental version?
Development Projects Site:
http://www.as-st.com/ttd
Japan, American Transition, Planeset, and Project Generic Stations available there
Patchman
Tycoon
Tycoon
Posts: 7575
Joined: 02 Oct 2002 18:57
Location: Ithaca, New York
Contact:

Post by Patchman »

For now it's experimental, but if it works then it'll become the new standard version distributed with 2.0.1.
User avatar
leroq
Engineer
Engineer
Posts: 10
Joined: 07 Jun 2004 20:11
Location: BBBerlin

Post by leroq »

This works fine on my SB Live with current KX driver and 140mb Fluid R3 soundfont. No MCI pauses between songs, but the TTD volume slider and levelmeter don't work (doesn't really matter though) 8)
Patchman
Tycoon
Tycoon
Posts: 7575
Joined: 02 Oct 2002 18:57
Location: Ithaca, New York
Contact:

Post by Patchman »

leroq wrote:This works fine on my SB Live with current KX driver and 140mb Fluid R3 soundfont. No MCI pauses between songs, but the TTD volume slider and levelmeter don't work (doesn't really matter though) 8)
Which output devices are selected in your midi mapper? (Not sure how to check that in XP; in 98 it's Control Panel->Multimedia->Midi)
User avatar
Korenn
Tycoon
Tycoon
Posts: 1735
Joined: 26 Mar 2004 01:27
Location: Netherlands
Contact:

Post by Korenn »

Control Panel -> Sound -> Audio
Post Reply

Return to “General TTDPatch”

Who is online

Users browsing this forum: No registered users and 15 guests