home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga Elysian Archive
/
AmigaElysianArchive.iso
/
sound
/
midi
/
midi20.arc
/
XFile.9
< prev
Wrap
Text File
|
1988-11-12
|
8KB
|
257 lines
MIDI LIBRARY DISK
=================
v2.0 - 12-Nov-88
This is the MIDI Library distribution disk. It contains the MIDI
Library, utilities, user and programmer documentation, and example
programs.
For those new to the MIDI Library, I suggest looking in the "docs"
directory first. Depending on your preference, you may wish to examine
"library.doc" which describes the fundamental concepts behind the MIDI
Library, or "utils.doc" which describes the included set of CLI based
MIDI Utilities.
Revisions
---------
v2.0 - 12-Nov-88
. midi.library
. Major overhaul to improve speed - resulting in about 3 to 4
times improvement in speed for PutMidiMsg, PutMidiStream,
GetMidiMsg, FreeMidiMsg
. Added MidiPacket's (see GetMidiPacket() and
FreeMidiPacket())
. Rewrote all C modules in Assembly
. Redesigned PutMidiStream
. Added early test of Route MsgFlags to reduce processing
time on trivial messages
. Added default RouteInfo to MDest's (see
SetDefaultMRouteInfo(), and routing functions)
. Added MListSignal's to inform interested parties of
changes to the public node lists (see CreateMListSignal()
and DeleteMListSignal())
. Fixed MidiMsgType() to work as originally described: now
returns 0 on all undefined messages
. docs
. revised library.doc to include MidiPackets
. remade midi.doc to include new functions
. added benchmark.doc
. updated binding libraries to include new functions
. include files
. added new sys/ex id's from MIDI 1.0 Spec v4.0
. added new controllers #'s from MIDI 1.0 Spec v4.0
. added MTC qtr frame message constants
. added midifile.h for some MIDI File constants
. rsx
. manufacturer id is now specified in hex rather than
decimal
. now supports filtering for 3-byte manufacturer ID's
. tsx
. Workbench support
. new utilities: playmf & dmf to play and display (respectively)
MIDI Files
v1.5d - 14-Sep-88
. minor changes to midi.h & midi.i
v1.5c - 15-Jun-88
. Fixed bugs in "rsx"
. Fixed bugs in "ychk"
v1.5b - 29-May-88
. Aztec libraries have now been created using v3.6a (were
previously created using v3.4)
v1.5a - 16-May-88
. Located some inconsistencies in midi.[h|i] that have now been
fixed.
. Added Iota sys/ex id (00-0008) to midi.[h|i].
. Changed MID_EXTENSION to MID_XAMERICA in midi.[h|i]
. Changed implementation of 3 byte id's in midi.[h|i]
. now are long ints with all 24 bits of id
. use macros (MAKE_MIDX() and SPLIT_MIDX()) to deal w/ converting
discrete bytes to 3 byte ids
. Added 3 byte sys/ex id support to mm.
v1.5 - 22-Apr-88
. A bug in the CtrlMatch system that was previously unnoticed
has been fixed
. The function of the RIMatch.flags (formerly .count) has been
changed to allow negating the inclusion logic and to filter 3
byte manufacturer id's
. AmigaBasic programming examples from Jim McConkey are now
included
v1.4 - 04-Apr-88
. The utilities in c directory now generally use arp.library for
various things. Because of this, arp.library v1.1 is included
in the libs directory just in case you don't already have it.
(NOTE: for size reasons it is not included in the ARC file)
. MidiIn & MidiOut task priorities have been increased to +30 to
avoid interference from input.device. (You can rearrange windows
now without slowing down MIDI transfer to/from these nodes
assuming your own task priorities are around +25)
. new utility: ychk - checks Yamaha bulk dump files for errors.
(see doc/utils.doc)
. some utilities have been enhanced (see doc/utils.doc)
v1.3 - 25-Jan-88
. Added Reset Controller mode message (Bn 79 00)
v1.2a - 29-Dec-87
. Modified midi.h & midi.i to include new stuff (noted w/ IMA
Bulletin references).
v1.2 - 29-Nov-87
. First disk-based release.
. Added MTC Qtr Frame message support (F1)
. Added Lock/UnlockMRoutes() & FlushMDest()
v1.1
. Initial .arc file release.
Contents
--------
basic - AmigaBasic programming examples provided by Jim McConkey.
See basic/readme for more info on these files.
c - contains some CLI-based utilities that use the MIDI Library.
See utils.doc in the docs directory for more info on these.
docs - documentation
bind.doc - Usage documenation for bind and zlib (included in
the fd directory).
library.doc - Programmers reference to the MIDI Library. It
describes in detail proper usage of the
Library.
midi.doc - MIDI Library function "autodoc". It contains
a description of each MIDI Library function.
utils.doc - Describes the MIDI Utilities in the c directory.
examples - Programming examples. Contains C source code for sample
programs that use MIDI Library.
fd - contains a .fd file, binding libraries and a binding maker.
The binding libraries are used to link your programs to the
MIDI Library functions. By their very nature, binding routines
are compiler specific. Included are libraries for both Lattice
and Aztec C.
bind - The binding builder. There is more info on bind in
bind.doc in the docs directory. In general, though,
you should be able to make bindings for any compiler
by using bind.
bindfile - A file used by bind.
makefile - a makefile for the included binding libraries.
It gives you sample usage of the bind program.
midi-lattice.lib - Lattice C compatible bindings library.
It should work with Alink or Blink.
midi.lib - An Aztec C compatible bindings library for small
code/data model.
midil.lib - An Aztec C compatible bindings library for large
code/data model.
midi_lib.fd - The .FD file for the MIDI LIbrary. You should
be able to use this to allow access to the
MIDI Library from AmigaBasic. Also this file
is read by bind to create bindings libraries.
zlib - A simple Amiga object module librarian. See bind.doc
for more info on this. (Arp v1.1 Join can handle the
job now, feel free to use it instead of zlib)
include.h - C Language include files.
midi/midi.h - contains the structure definitions for normal
usage of the MIDI library and constants
defined for MIDI status bytes, controllers,
etc.
midi/midibase.h - defines structures used when examining the
inner workings of the MIDI library. This
need not be included by the casual user.
midi/midifile.h - defines some constants for MIDI Files.
include.i - Assembly Languange include files.
midi/midi.i - contains the structure definitions for normal
usage of the MIDI library and constants
defined for MIDI status bytes, controllers,
etc.
midi/midibase.i - defines structures used when examining the
inner workings of the MIDI library. This
need not be included by the casual user.
libs - contains "midi.library" and "arp.library". Copy these to
your LIBS: directory.
(arp.library is not included in the ARC file as it is
probably available on the system from which you downloaded
this file)
Copyright & Distributions
-------------------------
The MIDI Library and related files are Copyright (C) 1987, 1988,
Pregnant Badger Music. All rights reserved. The contents of this disk
may be freely distributed. The MIDI Library and the MIDI Utilties may
be included with commercial products with the following provisos:
1. Pregnant Badger Music should be kept informed of your intent to
release products that make use of the MIDI Library so that we may
keep you informed of changes, updates, etc.
2. The above copyright notice should be included somewhere in the
documentation accompanying any such commercial products.
Bill Barton
Pregnant Badger Music
1111 El Sur Way
Sacramento, CA 95864
(916) 487-9472
Bix: peabody
Plink: peabody
Delphi: bbarton (I don't get over there very often)
Member of the International MIDI Association.
ARP is Copyright (C) 1987, 1988 by Arp Authors
Arp Support
c/o Microsmiths, Inc
PO Box 561
Cambridge, MA 02140
Basic examples are provided by:
Jim McConkey
Triangle Audio, Inc.
P.O. Box 1108
Sterling, VA 22170
(thanks, Jim)
Yamaha is tm of Nippon Gakki Co, Ltd.