home *** CD-ROM | disk | FTP | other *** search
/ ARM Club 3 / TheARMClub_PDCD3.iso / hensa / sound / a188_1 / !In-Out / !Help < prev    next >
Text File  |  1992-11-24  |  11KB  |  357 lines

  1. ------------------------------------------------------------
  2.  
  3. !In-Out  -     Desktop MIDI Utility    - Release version 2.0
  4.   
  5. ------------------------------------------------------------
  6.  
  7. If you have a MIDI port fitted to your RISC OS computer, it
  8. is probable that you have been in the situation where you
  9. have to swap the leads about at the back of the computer, 
  10. if you use a system with limited desk space, or use a
  11. momitor plinth or if you are composing 'on the fly' swapping
  12. leads about is the last thing you want to do.
  13.  
  14. The lead swapping problem is usually caused by Application X
  15. wanting the lead setup different to Application Y. 
  16.  
  17. Unfortunately this is a common problem with MIDI throughout
  18. the computing and music world.  This Application serves to
  19. iron out the problem by reducing the need to change leads
  20. (by reducing the use of the thru port).  It achieves this by
  21. making MIDI Out Port behave much like the MIDI Thru Port,
  22. except what goes out can be controlled and altered.
  23.  
  24. Of course, one of the program's greatest strengths is that
  25. it can be used in conjunction with the THRU Port.
  26.  
  27.  
  28. ------------------------------------------------------------
  29.  
  30.  
  31. Instructions For Use :
  32.  
  33. Load the application from within the Desktop by double
  34. clicking on the !In-Out Icon.  !In-Out will then install
  35. itself on the icon bar.  Clicking on this icon will open the
  36. "MIDI Play" window.  
  37.  
  38. This window consists of four groupings of icons, and three
  39. individual icons.  The groupings will now be explained.
  40.  
  41.  
  42. The Mouse in !In-Out.
  43. ---------------------
  44.  Clicking : A click is a press and release of a mouse
  45. button. Pressing : A press is a press and hold of a mouse
  46. button.
  47.  
  48. !In-Out understands both Clicks and Presses.  A click on
  49. one of the arrow icons will alter the value of it's info
  50. icon by 1.  A press will alter that value many times until
  51. the mouse button is released or the max/min limit for that
  52. icon has been reached.  Holding down shift while clicking
  53. or pressing will increase the alteration.
  54.  
  55.  
  56. Input Chan / Output Chan.
  57. -------------------------
  58.  
  59. This Icon group lets you control exactly what can go in and
  60. out,and on what channel.   
  61.  
  62. The Input Channel can be in one of 17 states, ie.
  63.  
  64.     channel 1-16 or 'All'.
  65.  
  66. Where a number is shown, that corresponding MIDI Channel
  67. will be the one which gets 'processed'.  
  68.  
  69. If 'All' is showing then channels 0-16 are merged and put
  70. through the output channel.
  71.  
  72. The Output Channel can also be in one of 17 states, again,
  73.  
  74.     channel 1-16 or 'All'.
  75.  
  76. Where a number is shown, that is used as the output channel.
  77.  
  78. Where 'ALL' is shown the Input Channel is Disregarded and
  79. EVERY channel gets processed, the resulting output being
  80. left on the same channel.
  81.  
  82. All data received is transmitted through the MIDI out port,
  83. therefore, if you have data which is not processed it will
  84. be sent on immediately
  85.  
  86. Examples :
  87.  
  88.  
  89. You select the Input Channel to be : 1
  90.               Output Channel to be : 2
  91.  
  92. Play in on channel 1 -> out on channel 2.
  93. Play in on channel 2 -> out on channel 2.
  94. Play in on channel 3 -> out on channel 3.
  95.  
  96.  
  97. You select Input Channel to be : All
  98.           Output Channel to be : 2
  99.  
  100. Play in on channel 1 -> out on channel 2.
  101. Play in on channel 2 -> out on channel 2.
  102. Play in on channel 3 -> out on channel 2.
  103.  
  104.  
  105. You select Input Channel to be : 1    
  106.           Output Channel to be : All
  107.  
  108. Play in on channel 1 -> out on channel 1.
  109. Play in on channel 2 -> out on channel 2.
  110. Play in on channel 3 -> out on channel 3.
  111.  
  112.  
  113.  
  114. Control In / Control Out.
  115. -------------------------
  116.  
  117. MIDI Controllers, such as the Modulation, Sustain, and
  118. Volume are transmitted as Control Change messages.  !In-Out
  119. can intercept these messages and alter them.
  120.  
  121. Since all MIDI devices use the same codes (in theory -
  122. occasionally there is a difference) it is easy to transform
  123. a Modulation Message into a Volume Controller message.
  124.  
  125. The use of this function will only be limited by the
  126. hardware you are using at the receiving end.
  127.  
  128. Example Codes :
  129.  
  130.    1 - Modulation Depth
  131.    2 - Breath Controller
  132.    4 - Foot Controller
  133.    5 - Portamento Time
  134.    7 - Volume Level
  135.   10 - Stereo Panning
  136.   11 - Expression 
  137.   64 - Sustain Pedal
  138.   65 - Portamento Pedal
  139.   66 - Sostenuto Pedal
  140.  
  141. You should refer to the manual of your MIDI instrument/s to
  142. check which codes are recognized.
  143.  
  144. Example :
  145.  
  146.  
  147. You select Control In to be : 1  (Modulation)
  148.           Control Out to be : 10 (Stereo Panning)
  149.  
  150. Playing your instrument now and using the modulation device
  151. will alter the stereo positioning of the sound being
  152. produced. 
  153.  
  154.  
  155.  
  156. Transpose
  157. ---------
  158.  
  159. When a note is played it can be automatically transposed up
  160. or down 48 semitones, 8 octaves in total.  Transpose works
  161. with the Channel Group to 'Process' whatever In-Out channels
  162. have been selected.
  163.  
  164. Clicking on the transpose info icon will reset the
  165. transposition level to 0.
  166.  
  167.  
  168.  
  169. Velocity
  170. --------
  171.  
  172. The velocity of a note (how hard the keyboard is hit) can be
  173. implicitly set by !In-Out.  Some of the least costly MIDI
  174. keyboards can only transmit at one velocity, usually 64. 
  175. The velocity option can re-set this velocity to anywhere
  176. between 1 (soft) and 127 (hard).  If 'Off' is selected, then
  177. the velocity is left unchanged.
  178.  
  179. ------------------------------------------------------------
  180.  
  181. Un-Grouped Icons :
  182. ------------------
  183.  
  184. Tx All Off
  185. ----------
  186.  
  187. An annoying habit of MIDI is that it can occasionally forget
  188. which notes are turned on, sometimes through error, and
  189. sometimes through the wrong lead being disconnected at the
  190. wrong time.  When this happens any notes not turned off will
  191. continue playing.  Luckily MIDI has a command to deal with
  192. this.
  193.  
  194. The "Tx All Off" icon transmits (Tx) this "All Notes Off"
  195. message to all connected MIDI instruments.
  196.  
  197.  
  198. Tx Reset
  199. --------
  200.  
  201. When a MIDI instrument becomes so confused that you can't
  202. understand it, or it can't understand you, use the "Tx
  203. Reset" icon to reset the instrument to it's default state. 
  204. This command has different effects on different instruments.
  205.  
  206.  
  207.  
  208. Play
  209. ----
  210. While the play icon is "pressed" all input is redirected to
  211. the MIDI out port, having been processed in whatever way
  212. specified by the operator.
  213.  
  214. Clicking on Play will invert "press" the icon, from here on
  215. you are in Play-Mode.  Clicking the mouse again will stop
  216. any playing.
  217.  
  218. ------------------------------------------------------------
  219.             
  220.  
  221. The program is RISC OS 2&3 compliant and runs as a
  222. co-operative task.  The program was originated on RISC OS 2
  223. and finalised on RISC OS 3 therefore it is advisable that
  224. you use the improved sound and IRQ modules supplied on the
  225. RISC OS 2 Extras Disc if you are not a Risc OS 3 user.
  226.  
  227. If you have a MIDI interface which does not work correctly
  228. with this software then PLEASE get in touch with some
  229. details and I'll see what I can do about getting an updated
  230. version to you.  I only have one type of interface so this
  231. has only been tested on that.  I use the Acorn A3000 User
  232. Port/MIDI internal Upgrade - AKA 12.  Any feedback from
  233. users who are succesful in using this would be welcomed.
  234.  
  235. Any problems, 'donations', ideas, bugs, updates etc, I can be
  236. contacted at :
  237.  
  238. 34 Glenavon Road
  239. Mannamead
  240. Plymouth
  241. PL3 4PN
  242.  
  243. I can be contacted more easily (for some) through University
  244. of Plymouth E-MAIL / JANET until July 1995.
  245.  
  246.  s11865@uk.ac.plym.pa   
  247.  
  248. ( Where "s11865" is my Username, "plym.pa" is the computer.)
  249.  
  250. ------------------------------------------------------------
  251.  
  252.  
  253. The Law.
  254. --------
  255.  
  256. This application is supplied 'as is'.  If you use it, it's
  257. you're fault if it, or anything connected to it goes wrong. 
  258. This program is not guaranteed to be suitable for any
  259. purpose in any way. 
  260.  
  261. I reserve the right to remove future versions from the
  262. Public Domain.  
  263.  
  264.  
  265.  
  266. Distribution.
  267. -------------
  268.  
  269. This program is in the public domain and may be copied
  270. freely and redistributed, provided all of the original files
  271. remain intact and unaltered.  The 8 original files
  272. associated with !In-Out are :
  273.  
  274. !Boot        !Help
  275. !Run         !RunImage
  276. !Sprites     PlayCode
  277. Sprites      Templates
  278.  
  279.  
  280. This application may not be distributed by PD Libraries
  281. until they have registered with me and thereby gained my written
  282. permission to do so.
  283.  
  284. No site lisence is required for this program, although I
  285. would advise anybody storing it on a LAN/WAN to also
  286. register with me.
  287.        
  288. This is  so that :
  289.  
  290. a) I can supply any updated versions as and when they become
  291. available and avoid inconsistencies arising due to out of
  292. date copies, and 
  293. b) I can have some idea of how much use it gets/is.
  294.  
  295.  
  296. ------------------------------------------------------------
  297.  
  298.     All versions © R J Boakes (August - November 1992)  
  299.  
  300. ------------------------------------------------------------
  301.  
  302.  
  303. Development History of !In-Out :
  304.  
  305. 1.6 - 7 August 92
  306. Original release version with play routine mostly in BASIC
  307. V.  This lead to slow reaction, and, in conjuntion with the
  308. De-Bugging tool which was on the bottom of the play window,
  309. a delay could be noticed when playing quick chords.  Very
  310. few, if any but my own copies of this are in existance now
  311. since only a few were distributed locally for testing
  312. purposes.
  313.  
  314. 1.7 - September 92 - Info window added.
  315.  
  316. 1.7i - October 92  - Improved (i)cons.
  317.  
  318. 1.8 - November 92
  319. Assembler routines improved for the actual conversion of the
  320. midi message.
  321.  
  322. 2.0 - 14 November 92
  323. The play routine has been completely re-coded by
  324. hand in ARM Assembler to give a huge speed improvement.
  325. The front end has also been refined to give smoother icon
  326. changing and updating.
  327.  
  328. 2.0s - 24 November 92
  329. New info window sprite that should work on Risc OS 2 added,
  330. new version to Hensa, thanks for the message Andrew.
  331.  
  332. -----------------------------------------------------------
  333.  
  334. ** 3.0 - ??? Ideas so far... ...now under way.
  335.  
  336. The current version uses the MIDI SWI's for operation. 
  337. While this is perfectly legal, I'm still not happy with it. 
  338. The major addition to version 3 will be a hopefully faster,
  339. newer assembler version accessing the MIDI UART or the SIRQ.  
  340. Echo, by setting Delay and Duration.  System Exclusive
  341. Recognition.  A filter system to cut out unwanted messages
  342. from the controlling MIDI instrument, ie. SysEx, Prog Change
  343. etc.  A Control Panel, for initiating Prog Changes etc.  The
  344. ability through this panel to load groups of program
  345. changes, controls, program setup etc.  Thereby acting as an
  346. easy setup for any equipment linked to the computer, and
  347. making live performances much simpler than manual pressing
  348. of buttons and turning of knobs.  Some sort of link with the
  349. System Sound modules, eg, with input controller on 1 and
  350. output controller on 10, the modulation wheel could change
  351. the Arc's stereo...
  352.  
  353. -----------------------------------------------------------
  354.  
  355. Use and Enjoy.
  356.  
  357. R.J.Boakes 14/11/92