How to use Midpak/Digpak with the Tandy 3-voice Chip ---------------------------------------------------- [Thanks to James S. Blackmon for this information.] You can use the Midpak/Digpak drivers to play MIDI's on the 3-voice chip. These programs can also be used to play sound files, but there are better programs for that. If you have the Tandy DAC (1000SL's, TL's, RL's, RLX's, and RSX's), try Playwav in tspak181.zip. If you just have the 3-voice (original 1000, A, HD, EX, HX, SX, and TX), try Play3voi (pl3voi04.zip). Other programs that just play on the PC speaker will also work on systems that only have the 3-voice. To start, download both midpak.zip and digimidi.zip (yes, you need *both* of them). Decompress midpak.zip into its own directory. Decompress MIDIFORM.EXE from digimidi.zip into the same directory, like this: C:\MIDPAK> PKUNZIP \DWNLDDIR\DIGIMIDI THEAUDIO/MIDIFORM.EXE Note that you have to specify "THEAUDIO/MIDIFORM.EXE", not just "MIDIFORM.EXE". (Alternately, you could just decompress the entire Digimidi .zip into its own directory and get MIDIFORM.EXE from there - takes a lot of disk space, though.) Go to the Midpak directory and run DEMO.BAT. You will be asked to select a sound driver. Select either "Tandy SL/TL" if you have that (or an SL/2, TL/2, TL/3, RL, RL-HD, RLX, or RLX-HD) or "IBM Internal Speaker, Foreground" if you have an original 1000, A, HD, EX, HX, SX, or TX. Sorry, the "Tandy TX/EX/HX/SX & PCjr" driver sounds like crap (the "IBM Internal Speaker background" driver sounds bad too). Not that I will stop you if you want to use them :-). Next it will ask you to select a MIDI driver. Select "Tandy". You will see a warning that the Tandy driver doesn't sound very good. It doesn't, but it's better than nothing :-). Play the digitized sound files and see if you can hear something. Scroll down to the bottom of the MIDI list. The ones that *don't* say "Adlib orchestration" or "Roland orchestration" you can try to play. The "Bach Tacatta Fugue" (that's how they spell it) should sound OK on the 3-voice chip. When you're done, type "UNLOAD" to unload the drivers. If all went well, it's time to weed out the directory and get rid of files you don't need. You need to keep these files: IBMSND.COM (if you used the IBM speaker driver above) MIDIFORM.EXE (from digimidi.zip) MIDPAK.AD MIDPAK.ADV MIDPAK.COM MPLAY.EXE PLAY.EXE TANSLTL.COM (if you used the Tandy SL/TL driver above) Unless you want to hear the demo again, you don't need the rest of it. Now, to play a standard MIDI file, you first need to use MIDIFORM.EXE to convert it to .XMI, like this: MIDIFORM BALLADE.XMI BALLADE.MID Load the drivers (yes, you need both the sound and MIDI drivers). If you have a pre-SL system without the Tandy DAC, type this: IBMSND MIDPAK If you have an SL or later, type this: TANSLTL MIDPAK Now, to play the MIDI, type this: MPLAY BALLADE (Do not give an extension.) The 3-voice chip is not a very good MIDI device. You will probably have to download and convert a whole bunch of them to get a few that sound good. Anyway, when you're done playing MIDI's, unload the drivers like this: MIDPAK U IBMSND U Or: MIDPAK U TANSLTL U To play a sound file, you first need to convert it with Sox. If you are doing anything at all with sound, you really need Sox. You can find it various places. Here's one: ftp://ftp.simtel.net/pub/simtelnet/msdos/sound/sox7dos.zip PLAY.EXE plays headerless 8-bit mono unsigned PCM at about 9kHz. You need to use Sox to convert what you have to that, like so: SOX THEFILE.AU -r 9000 -u -b THEFILE.RAW Case is significant for the options. In this example, "thefile.au" is the input file, and "thefile.raw" is the converted file for Digpak. Always use the ".raw" extension on the output file so that Sox won't attach a header to the file. Here's another example: SOX WHATSIT.WAV -r 9000 -u -b WHATSIT.RAW You get the idea :-). After the sound file is converted, load your sound driver: IBMSND or: TANSLTL (Note: you don't need to load MIDPAK just to play a regular sound file.) Play the file like this: PLAY THEFILE.RAW (This time, specify the extension.) When you're done playing sound files, unload the driver: IBMSND U or: TANSLTL U Of course, you can make batch files to automate all this. Midpak/Digpak is not the best thing around for playing sound files on a Tandy. PLAY.EXE is limited to files of 64k or less. The latest version of John Ball's Playsnd, for example, will use the Digpak sound driver (IBMSND) to play sounds, and contains native support for the Tandy DAC (i.e., without Digpak). Playsnd can play longer files and understands various file formats so you don't need to use Sox to convert things for it. Play3voi sounds pretty good on the TX, so I'm told :-) - it plays .WAV's and works on systems without a DAC. There are lots of programs around that play sound on the PC speaker, and they all work on Tandy's. For the Tandy DAC, try Playsnd, Playwav (from Tspak), or Dmsound. Each has its pluses and minuses. Midpak is, however, the only way to play a MIDI on a Tandy (unless you buy a soundcard). With only 3 MIDI channels, it doesn't sound very good for most MIDI's, though. Still, it can be amusing if you've already heard all your .SNG's 300 times :-), and if you shop around for MIDI's that sound good.