VOGONS

Common searches


First post, by rfnagel

User metadata
Rank Oldbie
Rank
Oldbie

Tetris Classic for Windows MIDI Music/Sound Problem

(cut 'n' pastes from a few previous messages that I've posted elsewhere here in the forums:

After building up my new(er) XP machine, and then subsequently discovering DOSBox, most everything I have will run just fine. That is, except for one that I'm trying to troubleshoot/figure out... Spectrum Holobyte's "Tetris Classic for Windows". It likes to find an MPU-401 at port address 330, which the SBLive under XPee (WDM drivers at; on mine at least; address DF20-DF3F) doesn't support <aarrgghh>, or even something as basic as a plain-jane OPL2/3 (again, unsupported with the SBLive under WXP).

I don't suppose that anyone would know of a Windows XP driver of sorts that would 'emulate' an MPU-401 at port address 330? Something that would show up in the device manager as such (MPU-401, port address 300, 310, 320, or 330... doesn't matter, as I can hack TCWs drivers to support other addresses), and then subsequently redirect everything directly to the the SBLive's MIDI section, or simply the Windows MIDI mapper? Drives me nutz, as the old Tetris Classic for Windows needs this, and is completely soundless without it (TCW uses MIDI not only for it's music, but for it's sound effects as well).

P.S. TCW uses the real old (the first 16-bit Windows incarnations, I think) Miles Sound Drivers: filenames are AILADLIB.DLL/AILCANVS.DLL/AILSBFM.DLL/MIDPAK.AD/etc... The AILCANVS.DLL driver file I can hack to support port address 300/310/320/330, but if there is no MPU-401 device named as such at one of those addresses in the Device Manager, you're SOL 🙁

P.P.S. The Microsoft Windows Wavetable GS Synthesizer (which also uses Windows WDM drivers, and which many motherboards' onboard sound chipset use for MIDI music synthesis) also will not work for TCW, as this software synth doesn't assign a true MPU-401 MIDI port address to it either.

But, some sort of 'dummy' generic MPU-401 driver (like I mentioned above) that would redirect to the Windows MIDI Mapper would allow TCW to work with Windows softsynth as well.

Thanks for any help 😀

Rich ¥Weeds¥ Nagel
http://www.richnagel.net

Reply 1 of 14, by Dr LF Toxic

User metadata
Rank Newbie
Rank
Newbie

I do not think its possible. What you are explaining is trying to trick the CPU into thinking that something is there, when it is not, and re-directing the data...Have you tried an older soundcard? (Said program may not support writing to PCI soundcards?)

Or a Virtual machine? Microsofts Virtual PC, or VMWare's Virtual Workstations might help you. (VPC is free, VMWare is not)

When theres games, there is the Toxic

Reply 2 of 14, by rfnagel

User metadata
Rank Oldbie
Rank
Oldbie
Dr LF Toxic wrote:

I do not think its possible. What you are explaining is trying to trick the CPU into thinking that something is there, when it is not, and re-directing the data.

I was thinking that something along the lines of a 're-director' might be in existance though, as there are 'virtual MIDI cable' utilities/drivers of sorts that redirect MIDI data from virtual MIDI OUTs to virtual MIDI INs. These drivers/utilites function as several MIDI devices in Windows (e.g. Hubbi's "MIDI Loopback Connector', and Jamie O'Connell's 'MIDI Yoke').

Dr LF Toxic wrote:

Have you tried an older soundcard? (Said program may not support writing to PCI soundcards?)

That I haven't tried... although I have a hunch it may not work (if the XP drivers are WDM).

Dr LF Toxic wrote:

Or a Virtual machine? Microsofts Virtual PC, or VMWare's Virtual Workstations might help you. (VPC is free, VMWare is not)

Thanks for the info, I'll check those out 😀 Although, it would be quite overkill to have to install Windows 3.x (or 9.x) under VMx just for a single game... but that might be the only solution.

Rich ¥Weeds¥ Nagel
http://www.richnagel.net

Reply 4 of 14, by HunterZ

User metadata
Rank l33t++
Rank
l33t++

Shame on them for using direct port access to do MIDI in Windows, when even Windows 3.1 had MIDI device drivers that would have worked! Also, WinXP and newer don't like to give programs direct port access even if the hardware is there to respond to it. I think you're pretty much screwed unless you want to try getting Windows 3.x to run under DOSBox (which people have done) or try getting your hands on the DOS version (apparently both DOS and Windows 3.x versions exist: http://www.mobygames.com/game/tetris-classic ).

Reply 6 of 14, by DosFreak

User metadata
Rank l33t++
Rank
l33t++
rfnagel wrote:

Thanks for the info, I'll check those out 😀 Although, it would be quite overkill to have to install Windows 3.x (or 9.x) under VMx just for a single game... but that might be the only solution.

Don't worry, if you plan on using newer os's you'll be playing more games in a VM. 😀

How To Ask Questions The Smart Way
Make your games work offline

Reply 7 of 14, by rfnagel

User metadata
Rank Oldbie
Rank
Oldbie
ugur_ben wrote:

You can play online and submit your score here : Tetris

Ummm... simply playing 'any' Tetris is not really quite the point. The point is, getting one of my old favs to run. I mean, I own a cazzilion Tetris games, so lack of something 'Tetris-like' to play isn't the problem <wink>.

HunterZ wrote:

or try getting your hands on the DOS version (apparently both DOS and Windows 3.x versions exist: http://www.mobygames.com/game/tetris-classic ).

Yep, I have the DOS version as well (works great under DOSBox). While gameplay is identical, the Windows version has slightly better resolution graphics.

batracio wrote:

Try VDMSound, it emulates both OPL2/3 and MPU-401 under Windows XP.

Thanks for the heads-up, will do 😀

DosFreak wrote:

Don't worry, if you plan on using newer os's you'll be playing more games in a VM. 😀

Agreed 😀

Rich ¥Weeds¥ Nagel
http://www.richnagel.net

Reply 8 of 14, by Jorpho

User metadata
Rank l33t++
Rank
l33t++
rfnagel wrote:
ugur_ben wrote:

You can play online and submit your score here : Tetris

Ummm... simply playing 'any' Tetris is not really quite the point. The point is, getting one of my old favs to run.

Um, he's probably a spambot.

batracio wrote:

Try VDMSound, it emulates both OPL2/3 and MPU-401 under Windows XP.

So does that mean that VDMSound is still useful for some things?

Reply 9 of 14, by rfnagel

User metadata
Rank Oldbie
Rank
Oldbie

BTW, isn't VDMSound only for DOS programs (similar to DOSBox), and not directly for Windows programs? IIRC I tried VDMSound a while back for TCW, and I don't remember it working (as TCW isn't a DOS program).

Rich ¥Weeds¥ Nagel
http://www.richnagel.net

Reply 10 of 14, by batracio

User metadata
Rank Member
Rank
Member
rfnagel wrote:

BTW, isn't VDMSound only for DOS programs (similar to DOSBox), and not directly for Windows programs? IIRC I tried VDMSound a while back for TCW, and I don't remember it working (as TCW isn't a DOS program).

Make a batch file that loads TCW.exe and run it with VDMSound. OPL2/3 and MPU-401 emulation will be available for the NTVDM session launched by the batch file. TCW.exe will run into that NTVDM session instead of running into Win32 subsystem, because it's a 16-bit application. However, VDMSound emulation will fail if TCW.exe tries to use Win16 multimedia API for sound fx or midi. It will work only if TCW.exe tries to access directly to OPL2/3 and MPU-401 hardware, as DOS applications do.

Reply 11 of 14, by rfnagel

User metadata
Rank Oldbie
Rank
Oldbie
batracio wrote:

Make a batch file that loads TCW.exe and run it with VDMSound. OPL2/3 and MPU-401 emulation will be available for the NTVDM session launched by the batch file. TCW.exe will run into that NTVDM session instead of running into Win32 subsystem, because it's a 16-bit application. However, VDMSound emulation will fail if TCW.exe tries to use Win16 multimedia API for sound fx or midi. It will work only if TCW.exe tries to access directly to OPL2/3 and MPU-401 hardware, as DOS applications do.

Thanks for the detailed info, I'll definately give that a shot 😀

Rich ¥Weeds¥ Nagel
http://www.richnagel.net

Reply 12 of 14, by rfnagel

User metadata
Rank Oldbie
Rank
Oldbie

Sorry to dig up this older thread.

I set up an older laptop (Dell Inspiron, 1.6GHz CPU with 1GB of RAM) and gave VDMSound a try on it with Tetris Classic for Windows (to see if that hopefully fixed the problem detailed above).

Nope, unfortunately, still the same error message by TCW (and no sound).

And another thing: When I uninstalled VDMSound, it totally screwed something up with the Windows Scripting Host (required to run VBS scripts)... had to do a Windows System Restore to a previous restore point to fix the problem 🙁

(...and people wonder why I *HATE* installers! Glad I didn't try this on my "main" desktop PC.)

Rich ¥Weeds¥ Nagel
http://www.richnagel.net

Reply 14 of 14, by rfnagel

User metadata
Rank Oldbie
Rank
Oldbie
bristlehog wrote:

Have you tried SoundFX?

Thanks for the heads-up, I'll check that one out 😀

Rich ¥Weeds¥ Nagel
http://www.richnagel.net