VOGONS


MPU-401 Intelligent mode

Topic actions

First post, by Srecko

User metadata
Rank Member
Rank
Member

I implemented most "intelligent" playback functions of original Roland's MPU-401 for use with Dosbox and Roland MT-32 emulator, based on documentation someone posted (linked) on this forum.
The patch is available here.😀
Required modifications to dosbox's config files and PIC code are also included.
I was able to find only 4 games/demos to test it and they now work with emulation (using latest MT-32 sources in dosbox):

Innocent until Caught (Core Design,'93)
Curse of Enchantia (Psygnosis,'92)
David Wolf (Dynamix,'90)
Ecargxus (demo by TPC,'92)

Games are available at The Underdogs, demo at pouet.net .
Please let me know if there are any games/demos/programs that use "intelligent" mode, working or not.
Candidates: Those using strange MPU commands (other than 3F and FF), or resetting MPU 401
with FF and giving-up after that (I found out that original MPU-401 runs IRQ after reset 😕 ).

edit - now the link should work (but if it doesn't, look at "patches" section on sf.net)

Last edited by Srecko on 2004-02-15, 14:02. Edited 1 time in total.

Reply 1 of 50, by eL_PuSHeR

User metadata
Rank l33t++
Rank
l33t++

Thank you for the heads up and good work. 😎

EDIT: Your link doesn't seem to work right now... 😕

Reply 3 of 50, by puttesnutte

User metadata
Rank Newbie
Rank
Newbie

Congratulations!
I can't even get David Wolf to play MT-32 music using a real MT-32 connected to a real Roland MPU-401 interface installed in my 486 DX2-66 running MS-DOS 6.22...

I don't know if these games use intelligent mode, but I had problems getting the following early Legend Entertainment games to work with the hardware mentioned above:

Spellcasting 101, 201 & 301
Gateway 1 & 2
Eric the Unready
TimeQuest

I think I changed some IRQ-setting on the 486's IO-card to get them to work. Most other games supporting the MT-32 had worked perfectly without having to change this.

And (as I mentioned somewhere else in the forum) all Sierra SCI0-games (King's Quest 4, Space Quest 3, Larry 2 & 3, Police Quest 2, Quest for Glory 1 & 2, Codename Iceman, Colonel's Bequest, King's Quest 1 Remake, Conquests of Camelot, Hoyle 1 & 2) fail to work with an MT-32 connected to the MIDI-port of a SoundBlaster. (there is a patch to fix this)

Reply 4 of 50, by robertmo

User metadata
Rank l33t++
Rank
l33t++

I implemented most "intelligent" playback functions of original Roland's MPU-401 for use with Dosbox and Roland MT-32 emulator

Will it be possible to use it with real mt-32 too? Will it be implemented in the rjpa's CVS so we could test it with real mt-32?
(I know that dosbox's old mpu-401 emulator was already emulating some intelligent mode instructions, and we could use it with real mt-32)

Reply 5 of 50, by Srecko

User metadata
Rank Member
Rank
Member

It should work (in same way as with old emulator). If this will be included in dosbox source, then it'll be in the builds.
Legend ent. games are still problematic (sending wrong data to mt32).

Reply 6 of 50, by robertmo

User metadata
Rank l33t++
Rank
l33t++

Spellcasting 201
Timequest
Spellcasting 301
Frederik Pohl's Gateway
Companions Of Xanth
Gateway II: Homeworld
Eric The Unready

^Those games work properly with mt32 (on my Duron with SCC-1).

I couldn't force Spellcasting 101 to work with mt32 (even on a 386 with scc-1)

Reply 7 of 50, by robertmo

User metadata
Rank l33t++
Rank
l33t++

Spellcasting 101 works too.
For all the above games you can use "game mt32 2 330",but with s101 it will freeze though it works with "game mt32 2" and "game mt32".

Reply 8 of 50, by robertmo

User metadata
Rank l33t++
Rank
l33t++

A-10 Tank Killer (Dynamix)
David Wolf (Dynamix)
Laser Squad (Krisalis)

^They work with my scc-1 and require it

Reply 9 of 50, by Stiletto

User metadata
Rank l33t++
Rank
l33t++
Srecko wrote:

I implemented most "intelligent" playback functions of original Roland's MPU-401 for use with Dosbox and Roland MT-32 emulator, based on documentation someone posted (linked) on this forum.

Thanks. No amount of nagging seemed to be helping. 😁

"I see a little silhouette-o of a man, Scaramouche, Scaramouche, will you
do the Fandango!" - Queen

Stiletto

Reply 10 of 50, by Srecko

User metadata
Rank Member
Rank
Member

Qbix merged the patch with CVS today, so it'll be in the builds soon.
Please check patch page at sourceforge.net for known bugs/problems if you find any bugs 😦

Note: intelligent mode emulation is disabled by default (compatibility problems with few games). There is option in the config file, "midi" section.

Legend Entertainment games (Spellcasting, Gateway, etc.) don't work. I couldn't configure A10 to play MT-32 sound (The Underdogs version).

Reply 11 of 50, by vladr

User metadata
Rank Oldbie
Rank
Oldbie

Legend games "work" to a certain extent if the PIC patch is also merged, but the timing is waaaaay off.

V.

Reply 12 of 50, by Qbix

User metadata
Rank DOSBox Author
Rank
DOSBox Author

I merged the pic patch as well.
I also changed the priorities a bit. So maybe it's better now

Water flows down the stream
How to ask questions the smart way!

Reply 13 of 50, by Srecko

User metadata
Rank Member
Rank
Member

I think I finally know what is wrong with Legend games. Emulator expects that interrupt routine sends data to mpu401. But in this case game sends data after interrupt is finished.
Currently emulator only receives data until irq is over.

Reply 14 of 50, by robertmo

User metadata
Rank l33t++
Rank
l33t++

Srecko: underdogs' version of a-10 tank killer doesn't have install.com file (I wonder why...).
Just make a file a10.cfg and edit it with hex editor: 08 10
It works with emulator.

Reply 15 of 50, by Srecko

User metadata
Rank Member
Rank
Member

OK, Legend games work now and changes are in CVS. Slowdown problems are also gone.
Thanks for that A10 hint.

Reply 16 of 50, by robertmo

User metadata
Rank l33t++
Rank
l33t++

thanks to this file:
http://www.dcee.net/Files/Games/siermt32.arj
i have found another game that wasn't supported by previous dosbox's mpu-401 tricks:
Zeliard (Game Arts/Sierra'91)
It works in emulator now.

Reply 17 of 50, by robertmo

User metadata
Rank l33t++
Rank
l33t++

some more, working now 😉 :

Sabre Team (Krisalis '94)
Shadoworlds (Krisalis '93)
Hired Guns (Psygnosis '93)

Reply 18 of 50, by robertmo

User metadata
Rank l33t++
Rank
l33t++

It Came From The Desert (Cinemaware '91)

works with my scc-1 and require it, but doesn't work with emulated intelligent mpu-401

Re: It came from the Desert - MPU-401

huge/i
^ this runs setup