Copyright (C) 1998 by Eamonn F. Martin
All Rights Reserved
BeatMaster is the latest in a stream of non-commercial software that I've produced over the past seventeen years. It was created because I needed a useful tool and had to make it myself (in C). It's only other purpose in this mad universe is to satisfy my latent desire for publicity.
BeatMaster is all my own work and I am (quite) proud of it. It successfully fulfills the purpose for which it was intended; to exploit the MIDI music capabilities of MY OWN home computer. Since it worked for me, I have made it available to others with similar needs.
This package contains the shareware edition of BeatMaster V2.1. Everything is included except the File-Save option. It must be distributed strictly in accordance with the terms of the LICENCE. The latest version of this package is available from the BeatMaster website, where you can also get the registered version of BeatMaster, browse through BeatMaster's documentation, download other BeatMaster-related files and contact the author.
MIDI is an acronym for Musical Instrument Digital Interface. It allows communication between synthesizers, sequencers, computers, rhythm machines, etc. through a standard interface.
All MIDI communication is achieved through multi-byte "messages" consisting of one STATUS BYTE followed by zero or more DATA BYTES (usually one or two). Status bytes serve to identify the message type and are indicated by having the most significant bit (MSB) set to one. Data bytes have the MSB set to zero and can thus hold values in the range 0..127.
For example, when a key is pressed on a MIDI keyboard, a NOTE-ON message is sent to the MIDI-OUT port. This consists of a NOTE-ON status byte and two data bytes which indicate the note-number and the velocity at which the key was pressed. When the key is released, a similar message is sent, but with a NOTE-OFF status byte.
A MIDI keyboard can receive as well as transmit MIDI messages. If a NOTE-ON message arrives from the MIDI-IN port, the keyboard will play the indicated note until the corresponding NOTE-OFF message is received. This allows the keyboard to be controlled by an external MIDI device in real-time.
A MIDI keyboard can transmit messages to a MIDI sequencer. By interleaving the messages with timing information as they arrive, a sequencer constructs a real-time representation of the output from the keyboard. This series of timed messages (or "track") can then be transmitted back to the keyboard causing it to reproduce the original notes.
Sequencers are often able to store several independent tracks. These are played simultaneously to reproduce a complete sequence. Software sequencers normally provide a visual representation of the contents of each track and allow data to be added, modified and removed. Tracks may even be created entirely from scratch within the sequencer, instead of recorded from a MIDI instrument. They can also be saved in data files on disk.
BeatMaster has been designed to be small, fast and efficient, allowing it to be used with even the most basic hardware setup.
Minimum Requirements Recommended Enhancements -------------------------------------------------------------------------- 100% IBM PC compatible 286 100% IBM PC compatible 486 or better VGA display adapter 384K of extended (XMS) memory PC sound card Sound Blaster or MPU-401 MIDI interface MIDI keyboard and synthesizer A mouseBeatMaster can control up to four independent MIDI interfaces concurrently, each of which may be connected to one or more MIDI devices. Timing can be controlled internally or by an external timing device using MIDI real-time clock events. BeatMaster can also generate timing-clock events for use by other devices.
Filename Ext Size Description -------------------------------------------------------------------------- Main Files BEATMAST EXE 243,744 The sequencer program itself TITLE ??? 146,092 BeatMaster title-screens display HELPTEXT COM 11,596 Help-text conversion utility HELPLINK DAT 1,192 Context-sensitive help data file ???????? HLP 243,958 On-line hypertext Help files -------------------------------------------------------------------------- Configuration Files DEFAULT IBK 3,204 Default FM instrument bank file (GM) DEFAULT KEY 803 General MIDI percussion map DEFAULT PRG 1,796 General MIDI program names DEFAULT CTL 2,651 Standard MIDI controller names DEFAULT SXE 3,850 Yamaha DB50XG system-exclusive events DB50XG KEY 1,093 Yamaha DB50XG default percussion map DB50XG CTL 432 Yamaha DB50XG controller names ???????? PAL 1,022 Colour palette configuration files -------------------------------------------------------------------------- Demonstration Sequences JAZZ MID 27,366 Standard MIDI demonstration sequence JAZZ BMS 27,847 The above file in BeatMaster format SMOKI BMS 13,454 Yamaha DB50XG demonstration sequence DEMO PLY 63 Demonstration playlist file -------------------------------------------------------------------------- Information Files README TXT 8,759 General description of BeatMaster UPDATES TXT 5,672 Changes made to the BeatMaster package LICENCE TXT 2,198 Distribution licence -------------------------------------------------------------------------- 45 files 746,792 bytes
BeatMaster installation basically involves extracting the files from the distribution archive into a new subdirectory on your hard disk. Once this is done, the program is ready to use. If you are upgrading from BeatMaster version 2.0 you can still use your old configuration files if you want to.
You may need to modify BeatMaster's default configuration to suit your own particular MIDI setup. This can be done from within the program using the functions provided on the OPTIONS MENU.
BeatMaster works fine within conventional memory but performance is improved with a little extended memory. To use this you must have an XMS driver such as HIMEM.SYS installed in your system. This is installed when your computer is started-up by a line in your CONFIG.SYS file. For example, to install a HIMEM.SYS driver file located on your C: drive in the DOS subdirectory, your CONFIG.SYS file should contain a line similar to the following:
DEVICE=C:\DOS\HIMEM.SYSIf your CONFIG.SYS file does not contain such a line and you have to add it, you will then need to re-start your computer to have the driver installed.
For reasons of speed and efficiency, BeatMaster has been designed to operate in a DOS environment. If you normally work in Windows, you may need to exit to (or reboot under) DOS to achieve optimum performance.
To start BeatMaster, change to the directory which contains the program, type 'BEATMAST' and press 'Enter'. After displaying initial messages the program tries to detect MIDI interfaces. The 'BLASTER' environment variable will be used to locate a Sound Blaster card. The default I/O port addresses for a Sound Blaster (220h) and an MPU-401 (330h) are also tested and the Sound Blaster's FM synthesizer is initialized.
If you are using a different I/O address for your Sound Blaster or MPU or if you have more than one MIDI interface installed, you will need to specify the addresses explicitly on the OPTIONS MENU. Once saved (see Save Options), the settings are automatically restored when the program is next started.
BeatMaster then searches for a program initialization file. This contains the initial settings for various system variables, including the names of several other files which are loaded as part of the initialization process. The section on FILES describes these files and how you can customize them.
The general command line format for starting BeatMaster is:
BEATMAST [/noxms] [/nomouse] [/nomidi] [/iINI_FILENAME] [SEQ_FILENAME...]The square-brackets ([]) are used to indicate that items are optional.
OPTION DESCRIPTION -------------------------------------------------------------------------- /noxms Prevents the use of an installed XMS driver. /nomouse Prevents the use of an installed mouse driver. /nomidi Prevents automatic MIDI interface detection. /iINI_FILENAME Specifies the name of a program initialization file. For example, to initialize using MYCONFIG.INI type: BEATMAST /iMYCONFIG SEQ_FILENAME... The initial sequence file or files to load or join. /? Display command line help
Much of BeatMaster can be controlled using a mouse. In order to use a mouse with BeatMaster you must install a mouse driver before you start the program. BeatMaster will automatically detect the presence of the mouse driver and configure itself for mouse operation as well as keyboard operation. You can start BeatMaster with the /nomouse command-line option to prevent the use of of an installed mouse driver.
When BeatMaster is used with a mouse, some extra items are included in the display. In the top-left corner of the screen is the Exit Button. Click on this to abort an operation (like pressing ESCAPE) or to leave the program. In the bottom corners of the screen are two horizontal arrows. You can click on these in all views as an alternative to pressing keyboard keys such as PAGE-UP and PAGE-DOWN. In some views there are also vertical arrows in the left or right border of the display. Click on these to scroll the contents of the view vertically.
Other mouse-sensitive areas are the INPUT/OUTPUT LINE, the VIEW TITLE LINE and the MENUS. The cursor for each view can also be positioned by a click.