home *** CD-ROM | disk | FTP | other *** search
/ Virtual Reality Zone / VRZONE.ISO / mac / PC / PCGLOVE / GLOVE / MIDIGL.ZIP / MIDIGLOV.DOC < prev    next >
Text File  |  1992-10-27  |  5KB  |  109 lines

  1. DOCUMENT FILE FOR MIDI ADDITION TO O2GLOVE by Mick Imfeld
  2. The filed in this Zip are files from o2glov.zip into which
  3. I spliced midi control functions using the Musicquest
  4. Toolkit.
  5.  
  6. HELPME!.DOC and THEGLOVE.DOC are included in unaltered form.
  7. These files tell how to hook the Nintendo Power Glove to
  8. the parallel port of an IBM compatible computer, and how to
  9. maximize the glove's performance.  
  10.  
  11. The files:
  12.  
  13. UF_GLOV1.CPP
  14. UF_GLOV2.CPP
  15. GLGRPH1.CPP
  16. GLGRPH2.CPP
  17. MO2GLOVE.PRJ
  18. MO2GLOVE.DSK
  19.  
  20. are my modifications of files by the same name (minus the 
  21. first letter "M" which I added so you would not overwrite
  22. your o2glove files of the same name if you unzip in the
  23. directory where you have the o2glove files stored) from
  24. o2glov.zip.  To produce midiglov.exe, change uf_glov1.cpp
  25. and glgrph1.cpp to uf_glove.cpp and glgrph.cpp.  To produce
  26. midiglo2.exe rename uf_glov2.cpp and glgrph2.cpp to
  27. glgrph.cpp and ul_glove.cpp.
  28.  
  29. Midiglov.exe and midiglo2.exe are executables file which will 
  30. behave in the same manner as o2glove.exe except that midi 
  31. transmissions are linked to the glove movements as well as the 
  32. graphic display.  For the difference in the two see PROBLEMS.
  33.  
  34. X-Axis:  the X Axis sends midi note numbers.  The note-on
  35. note-off function is controlled by the index finger of the
  36. glove.  (fist=off)  The program asks you how many notes you
  37. wish to spread over the 256 X axis values.
  38.  
  39. Y-Axis:  the Y Axis controls midi pitch bend messages, with
  40. up bending up (big surprise).  You are asked upon startup
  41. if you wish to turn this function on or off.  Pitch bend
  42. range must be done on your instrument for now, but it should
  43. be controlled in the software as the project develops.  
  44.  
  45. Z-Axis:  the Z Axis controls volume by sending midi controller
  46. 7 volume control messages.  If your midi instrument does not
  47. receive this controller the program probably will not work
  48. for you.  Some volume scaling is available depending on how
  49. far from the glove receivers the glove is placed when you
  50. center the glove.  Greater control over the volume range is needed.
  51.  
  52. PROGRAMMING:  In order to compile this program, besides adjusting
  53. the directory parameters and adjusting for the differences 
  54. between Turbo C++ 3.0 which I used and another compiler, you
  55. must have the files mcc.h and mcctkf.asm compiled for large
  56. model.  These files are contained in the Musicquest Programmers
  57. Toolkit.  (Note Musicquest compiles their large model obj as
  58. mcctkfl.obj, while I used the name mcctkf.obj.)
  59.  
  60. All I did was to locate the portion of the o2glove code where the
  61. glove parameters are sent to the graphics screen and insert a
  62. function which also sends the parameters to the above
  63. described functions on the midi card.  This is located in the
  64. file glgrph.cpp.  I added to the main program file ul_glove.cpp
  65. the interface initialization routines and some user input
  66. code, and interface close code.
  67.  
  68. I believe the program should function on any MPU 401 compatible card,
  69. although I have only tried it on an MQX32M.
  70.  
  71. PROBLEMS:  Obviously this is just a programming example and does
  72. not begin to touch the potential of the glove as a midi controller.
  73.  
  74. The biggest problem so far is that my method of sending note off
  75. messages does not catch all of the note on's generated by the glove.
  76. If the midi intstument receives the "all notes off" message, this
  77. is not a probem.  My Roland D-5 does.  My Keyboard model EPS 16+
  78. does not.  
  79.  
  80. I created midiglo2.exe for instruments which do not accept midi all
  81. note off messages.  The only thing I could think of (in the 2 hours since
  82. I discovered the problem) was to send multiple individual note off
  83. messages.  I have covered from two notes below the range to two notes
  84. above so as to catch the effect of the pitch bend.  It seems to slow
  85. down the whole works, so I am anxious to see what clever solutions our
  86. predigious programmer members come up with.
  87.  
  88. In fact, my hope is that a number of the experienced programmers here will
  89. take this idea and run with it, creating a wonderful new musical
  90. experience for enthusiasts like me.
  91.  
  92. DISCLAIMER:  This is freeware.  I can only offer it for free if you
  93. agree to waive all rights against me if the program crashes your
  94. comupter, overwrites your operating system and the last 10 years
  95. accounting records, melts down your synth and breaks the water pipes
  96. in the toilet, or any other damage I may have left out.  I an not
  97. a professional programmer.  I barely know enough to get this
  98. thing to work.  I do not profess to know anything about C++
  99. programming technique.  The whole thing is a kludge, but what
  100. the heck, I'm having a god tinme.
  101.  
  102. ACKNOWLEDGEMENTS:  To the extent this program works, please give
  103. credit to Mark Pflaging and all of the others who worked to
  104. create o2glove, and who are credited in various files in the
  105. o2glov.zip.
  106.  
  107. Mick Imfeld CIS 74676,37
  108. You can contact me by email or on graphdev Sections 10 & 11. 
  109.