I have been working on a MIDI project so I bookmarked the MIDI 1.0 standard and OCR'ed a missing section.
If this sounds of use to you here is the link to the document.
The internet archive was my original source for the MIDI 1.0 96.1 3rd ed document.
I also came across some MIDI 2.0 docs via AMEI (you will have to translate the Japanese in your browser). The English PDF’s are here. You can access the Github pages deployment via their github if you want to download all the pdf’s in one zip. The current v.0.1.16 deployment is here. The full official Association of Musical Electronics Industry (AMEI is based in Japan) home page also has some pdf’s scattered around it associated with their MIDI Standard Committee work.
As it was pointed out in comment on my reddit post, the "complete" document found around the internet is not current (but likely close enough for my purposes). I then went back and checked the versions on the MIDI association website and made the following tables. Current as of this post. Dates are based upon details in the documents, or online references or copyrights (marked with ?)
MIDI 1.0 Core
ref: https://midi.org/midi-1-0-core-specifications
Stanard | Desc | Download | Details | Filename | Size | Version | Date |
---|---|---|---|---|---|---|---|
MIDI 1.0 DETAILED SPECIFICATION | This is 1996 revision of the MIDI 1.0 specification. This document is a combination of the MIDI 1.0 Detailed Specification v 4.1.1 and the MIDI 1.0 Addendum v 4.2 |
Download | Details | M1_v4-2-1_MIDI_1-0_Detailed_Specification_96-1-4.pdf | 537.88 KB | 4.2.1 | February 1996 |
MIDI TIME CODE | For device synchronization, MIDI Time Code uses two basic types of messages, described as Quarter Frame and Full. This document is reprinted from the MIDI 1.0 Detailed Specification v 4.1.1 and the MIDI 1.0 Addendum v 4.2 |
Download | Details | RP-004-008_v4-2-1_MIDI_Time_Code_Specification_96-1-4.pdf |
81.09 KB | 4.2.1 | 1994? |
MIDI SHOW CONTROL | The purpose of MIDI Show Control is to allow MIDI systems to communicate with and to control dedicated intelligent control equipment in theatrical, live performance, multi-media, audio-visual and similar environments. | Download | Details | RP-002-014_v1-1-1_MIDI_Show_Control_Specification_96-1-4.pdf | 176.19 KB | 1.1.1 | 1995? |
MIDI MACHINE CONTROL | MIDI Machine Control is a general purpose protocol which initially allows MIDI systems to communicate with and to control some of the more traditional audio recording and production systems. | Download | Details | RP-013_v1-0_MIDI_Machine_Control_Specification_96-1-4.pdf |
3.6 MB | 1.0 | January 1992 |
MIDI 1.0 Addenda
ref: https://midi.org/midi-1-0-addenda
Standard | Description | Download | Details | Filename | Size | Version | Date |
---|---|---|---|---|---|---|---|
MIDI Implementation Chart version 2 | This revised version of the standard MIDI Implementation Chart is designed as a quick reference guide that allows users to identify at a glance which MIDI messages and functions are implemented by the device. | Download | Details | midi_chart-v2.pdf | 72.63 KB | 2.0 | 25 June 2019 or earlier ???? |
Renaming of CC91 and CC93 | Due to the fact that so many manufacturers use Control Change #91 and #93 in the same way, they should be renamed according to their common usage. | Download | Details | rp23.pdf | 26.82 KB | Approved by MMA 02/99 / Approved by AMEI 05/99. Contents Copyright 1999-2004 | |
Sound Controller Defaults (Revised) | CC 70 through 79 are defined as Sound Controllers. Some have default names, and some are left undefined. Control Change (CC) #75-78 (Sound Controllers 6-9) have been given default names. | Download | Details | rp21.pdf | 28.12 KB |
Approved by MMA 02/99 / Approved by AMEI 05/99. Contents Copyright 1999-2004 | |
Response to Data Increment/Decrement Controllers | This is a recommendation for expected response to Data Increment (MIDI controller #96) and Data Decrement (MIDI controller #97) MIDI messages. | Download | Details | rp18.pdf | 31.86 KB | Approved by MMA 9/97 / Approved by AMEI 10/97. Contents Copyright 1997-2004 | |
Response to Reset All Controllers | Defines a consistent response to the Reset All Controllers Channel Mode message (#121) | Download | Details | rp15.pdf | 32.88 KB | Approved by MMA 11/98 / Approved by AMEI 05/99. Contents Copyright 1997-2004 | |
File Reference SysEx Message | This message allows computer based MIDI devices to access files on a shared file system or network using a URL-style file specification. It allows the sounds in these files to be played using simple MIDI messages. | Download | Details | ca18.pdf | 51.96 KB | 11/4/98 (Revised 10/27/99) | |
Three Dimensional Sound Controllers | This specification defines MIDI Registered Parameter Number (RPN) controllers corresponding to the parameters that would be involved in order to allow synthesizers to render MIDI in 3D, and to allow content authors to create compelling 3D MIDI sequences. | Download | Details | rp49public.pdf | 124.82 KB | 1.0 | July 23, 2009 |
High Resolution Velocity Prefix | Defines MIDI Continuous Controller 88 (58H) as High Resolution Velocity Prefix to the subsequent Note On / Note Off message. | Download | Details | ca31.pdf | 29.68 KB | 22 Feb 2013 or earlier ???? | |
Default Pan Formula | Over the course of the development of MIDI, different manufacturers have implemented their own responses to CC#10. In addition, various AMEI/MMA Specification (such as GM2 and DLS2) have recommended response curves that are not all the same. | Download | Details | rp36.pdf | 29.33 KB | Approved by MMA 08/02 / Approved by AMEI 11/02. Contents Copyright 2002-200 | |
MIDI Bank Index Offset Extension to File Reference SysEx Message | This is an extension to the File Reference SysEx message (“CA-018”) providing a means of offsetting the mapping information in a DLS file by a MIDI bank index offset. | Download | Details | ca28.pdf |
46.18 KB | Jan 21 2001 | |
Redefinition of RPN01 and RPN02 (Channel Fine/Coarse Tuning) | With the approval of CA-025 (“Master Fine/Coarse Tuning”) there arises a naming conflict with existing Registered Parameter Numbers (RPNs) in the MIDI 1.0 Detailed Specification called Master Tuning. | Download | Details | rp22.pdf | 27.31 KB | Approved by MMA 02/99 / Approved by AMEI 05/99. Contents Copyright 1999-2004 | |
Sample Dump Size/Rate/Name Extensions | This CA adds an Extended Dump Header, capable of handling sample object sizes up to 32 GB (Gigabytes) with greater precision in calling out the sample rate; a new Extended Loop Point message for longer loops; and a Sample Name Transmission / Request pair, all implemented under the Sample Dump Extensions command tree. | Download | Details | ca19.pdf | 56.63 KB | 11/5/98 (rev 8/24/99 & 12/01/00) | |
MIDI Visual Control | This specification defines a way for MIDI to be used for control of visual presentation devices or systems. MIDI has expanded far beyond its original intention of being a control language for musical instruments. | Download | Details | rp50 MIDI Visual Control.pdf | 154.17 KB | 1.0 | February 15, 2011 |
MIDI Tuning (Updated Specification) | The MIDI Tuning specification allows the sharing of “microtunings” (user-defined scales other than 12-tone equal temperament) among instruments, and the switching of these tunings during real-time performance. | Download | Details | MIDI Tuning Updated Specification.pdf | 71.26 KB | Approved by MMA 02/99 / Approved by AMEI 05/99. Contents Copyright 1999-2004 | |
Controller Destination Setting | This proposal enables selecting the destination for Control Change messages, plus Channel Pressure and Polyphonic Key Pressure, using Universal Real Time System Exclusive messages. | Download | Details | ca22 Controller Destination SysEx Message.pdf | 49.97 KB | 2/28/99 | |
Key-Based Instrument Controllers | The Key-Based Instrument Controller message is intended to be a standard method of providing individual key-based instruments with the same performance control that is available for Channel-based instruments. | Download | Details | ca23 Key-based Instrument Controller SysEx Message.pdf | 47.15 KB | 2/28/99 | |
Global Parameter Control | This proposal allows the editing of global parameters in a device using Universal Real-Time System Exclusive messages. | Download | Details | ca24 Global Parameter Control SysEx Message.pdf | 55.81 KB | 3/05/99 | |
Master Fine/Course Tuning | These two new Universal Real Time SysEx messages are additional Device Control messages which control the overall tuning of a device. | Download | Details | ca25 Master Fine & Coarse Tuning SysEx Message.pdf | 49.08 KB | 3/02/99 | |
Modulation Depth Range RPN | This proposal defines Registered Parameter Number (RPN) #05 as Modulation Depth Range to be used to scale the effective range of Control Change 1 (Modulation Wheel). | Download | Details | ca26 RPN05 Modulation Depth Range.pdf | 47.35 KB | 3/02/99 | |
5 Pin DIN Electrical Specs | The MIDI 1.0 Specification includes an Electrical Specification which uses a 5-Pin DIN connector and 5 Volt electronics as was common at that time. | Download | Details | ca33 5 PIn DIN Electrical Spec.pdf |
240.21 KB | 2014 |