W_O_W ŪŪ² ŪŪŪ ßßß  2003  ßß -p-l-a-y-e-r- ŪŪŪŪ ŪŪ ŪŪ ÜÜÜÜÜÜ ÜÜÜÜÜÜ ÜÜÜÜÜ ÜÜÜÜ ÜÜÜ ÜÜÜ Ū²Ū Ū Ū ŪŪ ŪŪ ŪŪŪ²ŪŪÜ ŪŪ ŽŪ²²ŪŪŪ²ŪŻ ŪŪŪŪ²ŪŪÜ ŪŪŪ ŪŪ Ū² Ū ŪŪ ŪßßŪŪ²Ū ŪŪ ²²ŪŪßŪŪßß ŽŪ²ŪßŪŪŪŻ ŪŪ ŪŪ Ū² ŪŪ ŪŪ Ū ŽŪŪ ŪŪ ŽŪŪŻ ŪŪŪŻ Ū²Ū ŪŪ² ŪŪŪŪ ²Ū Ū Ū ŪŪŪŻ ŪŪŪ ŪŪ²ŪÜÜÜ ŪŪŪ ÜŪŪŪŻ ŪŪ ŪŪ ŪŪŪ ²Ū Ū ŽŪ² ²Ū ŽŪŪŪŪŪŪŻ Ž²ŪŪŪ²Ūß ŪŪ ²² ŪŪ ŪŪ Ū ŪŪŪŻ Ū²ŪŻ ²ŪŪ²ßßß ŪŪŪßßŪŪŪ ŪŪŪ ŪŪ ŪŪŪ Ū Ž²Ū Ū²² ŽŪŪŪŻÜÜ Ū²Ū Ū²ŪŻ ŪŪŪ ŪŪŪ ŪŪ ŪŪÜŪŪŪŻ ŪŪ Ū²ŪŪŪ²ŪÜ ŪŪŪ ŽŪŪŪ DOS ŽŪ²ŪŻ ŽŪ²ŪŪŻ Ū²ŪŻ ŪŪŪ²²Ūß ŪŪŪ Ž²ŪŪ²ŪŪŪŪŻŽŪ²ŪŻ ŽŪ²Ż -M-I-D-I- ßßßßß ßßßßß ßßß ßßßßßß ßßßßßß ßßßßß ßßßßß ßßß Copyright (C) HiTech Laboratories, Denis Andrianov ĶĶĶĶĶĶÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ << D O C U M E N T A T I O N >> ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĶĶĶĶĶĶĶ -- Best viewed in the 50 line text mode -- 1. Introduction Writing software documentation 1.1 License is perhaps the most boring 1.2 What is Midier? task that a programmer must 1.3 Configuring for Best Sound tackle!!! 1.4 Running Midier 2. Using Midier 2.1 Command Line 2.2 Interface 3. What's New 4. Closing Words ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ³ INTRODUCTION ³ ĄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄŁ 1.1 License ÄÄÄÄÄÄÄÄÄÄÄÄŁ This software is licensed under the GNU license. Read COPYING.TXT for more details. However, if you modify the source code, please let me know... It's always interesting to analyze other people's ideas. See the last section if you would like to contact me. 1.2 What is Midier? ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄŁ Well, Midier is a DOS-based player of MID and RMI files. The thing that makes it different from many other DOS MIDI players is the fact that Midier supports all versions of the Sound Blaster card (at least in theory). After spending hours searching for various DOS MIDI software on the web, I found a bunch of quite impressive programs. However, most of them only supported GUS. Personally, I don't like the idea of MIDI files. What I really hate about them is that they sound differently on different hardware, unless you emulate the instruments, of course. Keep in mind that Midier does not do that! If you want a player which uses its own instruments for playback get something like Cubic Player. Anyway, enough of that. Midier handles random and ordered playlists that can be modified on the fly. Excellent command line support with wildcard compatibility and switches, that may override default settings stored in the configuration file, may help you integrate this software into a shell such as WinDos. Midier features a beautiful skinnable animated text-mode interface (ASCii-art), several playback modes and plenty of useful controls. 1.3 Configuring for Best Sound ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄŁ Midier can use an internal or an external synthesizer to produce sound. MPU-401 interface is well handled, so if your sound card supports it, please use it as it will enhance the sound quality dramatically. If you are not sure, you may want to experiment and try selecting the synthesizers one at a time. Configuring the sound output will involve editing MIDIER.BAT file and specifying appropriate command lines for the drivers loaded just before the TUI.EXE executable (SBMIDI and SBSIM). The contents of MIDIER.BAT is simply this. ŚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄæ ³ @echo off ³ ³ sbmidi.exe ³ ³ sbsim.com ³ ³ tui.exe %1 %2 %3 %4 %5 ³ ³ sbsim.com /u ³ ³ sbmidi.exe /u ³ ĄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄŁ The command line of SBMIDI.EXE driver is as follows. ŚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄæ ³ Usage: ³ ³ SBMIDI [/X] | [/Y] | [/U] | [/?] ³ ³ ³ ³ where ³ ³ [/X]: /G - General MIDI. ³ ³ /E - Extended MIDI (default). ³ ³ /B - Basic MIDI. ³ ³ ³ ³ [/Y]: /1 - Sound Blaster Music synthesizer (default). ³ ³ /2 - External Music Synthesizer. ³ ³ /3 - External Music Synthesizer (MPU401 Interface). ³ ³ ³ ³ [/U]: Unload the driver. ³ ³ ³ ³ [/?]: Display this help message. ³ ĄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄŁ Important!!! If you have a very old SoundBlaster card and you don't get any sound even with the most basic setup, try using the SB122OLD.EXE driver instead of SBMIDI.EXE. ...And the command line for SBSIM.COM. ŚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄæ ³ Usage: ³ ³ SBSIM [ options ] [ filename ] ³ ³ ³ ³ where options = one or more of: ³ ³ /H - display help message (this one!) ³ ³ /? - (same as /H) ³ ³ /Q - quiet mode - don't print messages ³ ³ /U - unload SBSIM ³ ³ ³ ³ and filename = name of config file to read ³ ³ If not specified, filename ³ ³ defaults to 'SBSIM.CFG'. ³ ĄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄŁ A word of caution: if you run TUI.EXE directly without having loaded the drivers, Midier will crash as soon as you attempt to play a file. So please avoid doing that and always use MIDIER.BAT to execute the player. 1.4 Running Midier ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄŁ Gee, that's a hard one. Try typing MIDIER at the DOS prompt or double clicking on the file in a shell such as WinDos. Note that you must be in the directory of Midier. ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ³ USING MIDIER ³ ĄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄŁ 2.1 Command Line ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄŁ Syntax: midier.bat [d:][path][file|@listfile] [/R|/O] [/L] [/GFX|/TXT] Options: /R or /O random or ordered list play respectively /L looped playback /GFX or /TXT graphics or text mode while playing respectively ž The above options effectively override the ones in the configuration file MIDIER.CFG. ž A playlist file specification must be followed by '@'. Also the file should not contain wildcards. ž The file name field may contain wildcards. All of the files matching the pattern will be placed in the playlist window. Examples: midier c:\music\midi\*.mid /r Will play all MID files in C:\MUSIC\MIDI in a random order. midier @midi.lst /o /gfx Will attempt to play files contained in MIDI.LST in an orderly fashion with the graphical "flame" mode switched on. midier onefile.rmi Will play a single file ONEFILE.RMI. 2.2 Interface ÄÄÄÄÄÄÄÄÄÄÄÄÄÄŁ The interface is fairly straight forward. The left window is your main file browsing tool. You can switch drives by pressing an appropriate drive letter. The rest is done with the cursor and the ENTER keys. The right window is the playlist window. To add a file to the playlist, simply select the file and press the right arrow key. To remove the file, press the left arrow key. Easy enough? Anyway, it's stupid to try and explain all of it here. Run the program and experiment! The F1 key will display all of the key combinations available for use with their corresponding description. Now, there are currently three playing modes available. Note that they will ONLY be activated during playback. You will see the default text interface screen when no files are being played. The modes are: 1. The Standard Text Mode -- This is the default interface, where you may select the files that you want to be played or construct a playlist. Neat and funny messages scroll at the top of the screen. 2. The Scrolling Mode -- Very similar to the previous mode, but instead of the messages you will see a scrollable text file. You can resize the main window frame so that a bigger portion of the file is visible. See the F1 screen and the CFG file for info on how to control this mode. 3. The GFX "Flame" Mode -- This is just a cool and very realistic animation of a flame. Looks nice. Try it and see. I will not go into any more detail. I encourage everyone to experiment on their own. Check out the MIDIER.CFG file. Apart from lots of interesting features that you may configure, this is the place where you may modify all of the colours that you see on the screen while the player is running. Also there are three predefined colour palette configurations that you may try. ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ³ WHAT'S NEW ³ ĄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄŁ ŚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ-ś ³ ž Version 2.50 ĄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ--ś - Documentation ;) - File scroller mode - Graphics flame mode - sets standard text mode - sets the flame mode - sets the file scrolling mode - Introduced scrolling control keys. - + and + resizes the file selector window - Skin support. Added many new "skin" commands to midier.cfg: * FrameCol * Frame2Col * FrameEdgeCol * FrameEdge2Col * FrameTextCol * MidierLogoCol * MessageCol * TextScrollCol * StatusCol * StatusPlayCol * FlagOnCol * FlagOffCol * TextPnlHiCol * TextPnlTextCol * ConfigPnlHiCol * ConfigPnlTextCol * HeadingCol - Colour attribute manipulation command to midier.cfg: * ColourXX R G B - Created three skins ready for use. - The following new commands have been added to midier.cfg: * FileWindowY * FileWindowHeight * ScrollFile * SaveScrollPos * ScrollByte * ScrollDir * ScrollSpeed - Updated the help window. - Configuration screen updated to reflect the new options - BUG FIX: it was possible to crash Midier if it was paused while playing a playlist. - Cleaned up the code - Source code released - And more that I don't remember... ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ³ CLOSING WORDS ³ ĄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄŁ I'm sorry that this doco is so brief, but I really do hate writing them. If you have any unresolved problems or questions, you can always E-mail them to me and I will try to get to you as soon as possible. Please write to: d_andrianov@mail15.com If that address fails, use: d_andrianov@hotmail.com Note that I check the second one much less frequently! To download the latest version of this program or to take a look at other DOS projects, visit: http://www.hitechlabs.tk/ HAVE FUN!!! And remember, donations are always welcomed...