Changes

MIDI

5,349 bytes added, 13 April
/* Weblinks */
[[Category:Music and sound]][[Category:Electronic Component]]
 
''Musical Instrument Digital Interface (MIDI)''
The original MIDI (Musical Instrument Digital Interface) protocol was developed in 1983 by Dave Smith and Ikutaro Kakehashi to enable communication between electronic instruments.
== Software Protocol ==
Basically transmits MIDI is a set of commands like key onthat a synthesizer, key offsampler, plus pitch/volume parametersor software interprets to generate sound.The commands are:
Write more{| class="wikitable"|-! Status Byte (Hex) !! Message Type !! Data Bytes !! Description|-| 0x8 || Note Off || 2 || Stops a note; data bytes set the note number (0–127) and release velocity (0–127, often unused).|-| 0x9 || Note On || 2 || Starts a note; data bytes are note number (0–127) and velocity (0–127, loudness; 0 acts as Note Off).|-| 0xA || Polyphonic Key Pressure || 2 || Adjusts pressure on one note; data bytes are note number (0–127) and pressure value (0–127).|-| 0xB || Control Change || 2 || Changes a controller (e.g., volume, pan, modulation); data bytes are controller number (0–127) and value (0–127).|-| 0xC || Program Change || 1 || Switches instrument; data byte is program number (0–127, e.g., piano, guitar).|-| 0xD || Channel Pressure || 1 || Applies pressure to all notes on a channel; data byte is pressure value (0–127).|-| 0xE || Pitch Bend || 2 || Bends pitch; two data bytes form a 14-bit value (0–16383, 8192 = no bend).|-| 0xF || System Messages || Varies || System-wide commands (e.g., sync, start/stop); data bytes vary by message type.|} A MIDI message is typically 1-3 bytes long: *Status Byte: Defines the message type (e.g., Note On) and channel (0-15, displayed as 1-16). Each status byte has a '1' as its most significant bit.*Data Bytes: Provide specifics (e.g., note number, velocity). Each data byte has a '0' as its most significant bit. The 16-channel system lets one controller command multiple devices or voices independently. For example, Channel 1 could trigger a drum kit while Channel 2 plays a bassline. MIDI doesn’t contain audio data. This makes MIDI files tiny compared to audio files—think kilobytes versus megabytes.
== Hardware Protocol ==
* MIDI is one-directional (MIDI OUT implements only TX, no RX, and MIDI IN implements only RX, no TX)
* There are no control signals like CTS/RTS/DSR/DTR used
 
The standard in MIDI interface was the MPU-401, first introduced as a standalone hardware by Roland in 1984, and then integrated into PC soundcards.
 
The MPU-401 had 2 modes:
* In UART mode, it acted as any other MIDI interface, passing MIDI data between the computer and external MIDI devices
* In intelligent mode, the PC offloaded the MIDI playback task to the interface, freeing the PC to do other tasks while the music was playing
== Schematic ==
* [[DIY MIDI Interface from CPCAI magazine]]
* [[DIY MIDI Interface from CPCinfos magazine]] by Thierry MANGION, port &FAF0 [http://cpcrulez.fr/hardware_montage_8x-interface_MIDI-part_2__CNFO.htm]
* [[Willy|Willy MIDI]] General MIDI Wavetable Synth
* [[RSF3]] Multi-purpose expansion card including MIDI synth. It is EMR MIDI compatible [https://youtu.be/YOjV9AaIVKM Source]
== MIDI software for the CPC ==
* [[EMR Miditrack Performer]] (ElectroMusic Research)
== Presentation in ACU magazine magazines ==
<gallery>
image:MIDI test ACU Feb1989 p2.jpg|[[Amstrad Computer User]] reviews MIDI on CPC (page 2/3)
image:MIDI test ACU Feb1989 p3.jpg|[[Amstrad Computer User]] reviews MIDI on CPC (page 3/3)
</gallery>
 
== Presentation in CPCAI magazine ==
 
<gallery>
image:MIDI CPCAI.jpg|[[CPC Amstrad International]] 2/1987 reviews MIDI on CPC (pages 16-22)
</gallery>
 
== DIY MIDI Interface from CPCAI ==
 
<gallery>
image:MIDI Interface CPCAI.jpg|[[CPC Amstrad International]] 2/1987 published a DIY MIDI interface & software for CPC (pages 24-31)
</gallery>
General MIDI (GM) is a standardized specification for electronic musical instruments and synthesizers, introduced in 1991 by the MIDI Manufacturers Association and the Japan MIDI Standards Committee.
General MIDI aimed to ensure consistency across devices by defining a uniform set of 128 instrument sounds (called "patches"), such as piano, violin, and drums, organized in a specific program change order, along with standardized channel assignments : {| class="wikitable"! Piano !! Chromatic Percussion !! Organ !! Guitar !! Bass !! Strings !! Ensemble !! Brass|-| 1. Acoustic Grand Piano || 9. Celesta || 17. Drawbar Organ || 25. Acoustic Guitar (enylon) || 33.gAcoustic Bass || 41., channel Violin || 49. String Ensemble 1 || 57. Trumpet|-| 2. Bright Acoustic Piano || 10 for percussion. Glockenspiel || 18. Percussive Organ || 26. Acoustic Guitar (steel)|| 34. Electric Bass (finger) || 42. Viola || 50. String Ensemble 2 || 58. Trombone|-| 3. Electric Grand Piano || 11. Music Box || 19. Rock Organ || 27. Electric Guitar (jazz) || 35. Electric Bass (pick) || 43. Cello || 51. Synth Strings 1 || 59. Tuba|-| 4. Honky-tonk Piano || 12. Vibraphone || 20. Church Organ || 28. Electric Guitar (clean) || 36. Fretless Bass || 44. Contrabass || 52. Synth Strings 2 || 60. Muted Trumpet|-| 5. Electric Piano 1 || 13. Marimba || 21. Reed Organ || 29. Electric Guitar (muted) || 37. Slap Bass 1 || 45. Tremolo Strings || 53. Choir Aahs || 61. French Horn|-| 6. Electric Piano 2 || 14. Xylophone || 22. Accordion || 30. Overdriven Guitar || 38. Slap Bass 2 || 46. Pizzicato Strings || 54. Voice Oohs || 62. Brass Section|-| 7. Harpsichord || 15. Tubular Bells || 23. Harmonica || 31. Distortion Guitar || 39. Synth Bass 1 || 47. Orchestral Harp || 55. Synth Voice || 63. Synth Brass 1|-| 8. Clavi || 16. Dulcimer || 24. Tango Accordion || 32. Guitar Harmonics || 40. Synth Bass 2 || 48. Timpani || 56. Orchestra Hit || 64. Synth Brass 2|-! Reed !! Pipe !! Synth Lead !! Synth !! Synth Effects !! Ethnic !! Percussive !! Sound Effects|-| 65. Soprano Sax || 73. Piccolo || 81. Lead 1 (square) || 89. Pad 1 (new age) || 97. FX 1 (rain) || 105. Sitar || 113. Tinkle Bell || 121. Guitar Fret Noise|-| 66. Alto Sax || 74. Flute || 82. Lead 2 (sawtooth) || 90. Pad 2 (warm) || 98. FX 2 (soundtrack) || 106. Banjo || 114. Agogo || 122. Breath Noise|-| 67. Tenor Sax || 75. Recorder || 83. Lead 3 (calliope) || 91. Pad 3 (polysynth) || 99. FX 3 (crystal) || 107. Shamisen || 115. Steel Drums || 123. Seashore|-| 68. Baritone Sax || 76. Pan Flute || 84. Lead 4 (chiff) || 92. Pad 4 (choir) || 100. FX 4 (atmosphere) || 108. Koto || 116. Woodblock || 124. Bird Tweet|-| 69. Oboe || 77. Blown Bottle || 85. Lead 5 (charang) || 93. Pad 5 (bowed) || 101. FX 5 (brightness) || 109. Kalimba || 117. Taiko Drum || 125. Telephone Ring|-| 70. English Horn || 78. Shakuhachi || 86. Lead 6 (voice) || 94. Pad 6 (metallic) || 102. FX 6 (goblins) || 110. Bagpipe || 118. Melodic Tom || 126. Helicopter|-| 71. Bassoon || 79. Whistle || 87. Lead 7 (fifths) || 95. Pad 7 (halo) || 103. FX 7 (echoes) || 111. Fiddle || 119. Synth Drum || 127. Applause|-| 72. Clarinet || 80. Ocarina || 88. Lead 8 (bass+lead) || 96. Pad 8 (sweep) || 104. FX 8 (sci-fi) || 112. Shanai || 120. Reverse Cymbal || 128. Gunshot|} Note: In the actual MIDI data bytes, the instrument numbers are 0-127 (zero-indexed). But in user interfaces and documentation, these are typically displayed as 1-128 (one-indexed) to be more intuitive for musicians.
This General MIDI allowed musicians and composers to create music that would sound reasonably similar on any GM-compliant device, solving the patchwork compatibility issues of early MIDI systems.
General MIDI largely superseded the previous Roland MT-32 de-facto standard and quickly became foundational in music production, video game soundtracks, and consumer electronics.
* http://en.wikipedia.org/wiki/MIDI_1.0 - wikipedia on MIDI 1.0
* http://en.wikipedia.org/wiki/Musical_Instrument_Digital_Interface - wikipedia on MIDI in general
* [http://tgv777.free.fr/index.php/fichiers-midi/ MIDI Files] [https://musical-artifacts.com/artifacts?order=most_downloaded&q=midi+soundfont MIDI SoundFonts]
* [https://youtu.be/LFWBqUK4G_Q E1M1 Using 40 Different Soundfonts! Comparison w/ Doom MIDI] by [[Doomkid]]
[[Category:Peripherals]] [[Category:Music_and_soundMusic and sound]][[Category:DIY| ]] [[Category:Hardware| ]]
13,056
edits