cs352a55@cs.iastate.edu (Class login) (11/27/90)
Hi, sorry for the typos in the subject.... my reader is not accepting BS for deletion character. Anyway, I'm writing a score editor for my IBM PC... Why? I'll be getting a MPU401 Clone card from MusicQuest for a christmas present, and I dont know of any cheap (<$20) software to drive it with... The only problem is, I'm not big at writing fancy looking graphical displays and I've never worked with a score editor before in my life. I was wondering what are some of the nice features which I could put into the program? This is what I currently have (or will have, once I get the code entered): ---------------------------------------------------------------- the display is all text (dont have time to figger out how to draw the notes) and looks like this: +-----------------------------------+ |Current Cursor info Notes under the cursor |and Key/Accents | | | | | | Notes/Staff etc | | | | | |Block info/volume controls etc | +-----------------------------------+ The Key/Accent stuff is a list of where to automatically add #/flats. The notes are stored as: Time of activation, Option, Track, Note/Data, Length, Tie. Time of activation is a longint; there are 96 time units=1 measure Option=0 ==> Volume, 1==> Change voice, 255==>Note Track=0..15 Note/Data ==> the MIDIwise note number Length=Length in time units Tie= 0==> No tie; note is normal; 1==> Tie exists, dont send a ENDNOTE. ------------------------------------------------------------------------ The control keys (in the editor) are currently set at: cursor up/down -> move pointer up/down a note on the staff. cursor Left/Right -> Move pointer to where next note should be/most recent note shift+cursor left/Right -> move pointer +/- one time unit +/-/N -> Change note under cursor/Next note entered to sharp/flat/normal ./, -> chanbe note under cursor/Next Note to "dotted" or "not dotted" T -> Select track number to work in 1,2,4,8,6,3 -> Enter a note at current cursor... 6 => sixteenth, 3==>1/32th ~/` -> Change note under cursor/Next Note to "Tied" or "Not Tied" Various other functions: CTRL/F - File options... Load/Save/Merge/New/Quit... Most of these have track ie, save tracks 1 to 5, merge in track 7 (from origin or cursor posn) CTRL/D - Display options... Which tracks get displayed, in which color CTRL/B - Block options... Delete, Save, Copy/Cut, Transpose, Play CTRL/P - Paste block (Does not act like Insert) P - Play.... Right now all I'll be able to use is my PC speakers... ugh Any additional, not to hard to program stuff would be welcome. --------------------------------------------------------------------------- I am using Turbo Pascal 5.5 for my programming... if necessary I can integrate assembly for the midi in/out stuff (Once I get my midicard)... I've heard that MusicQuest provides tech docs for free. Currently my program has the basic Data Structure stuff... for a lot of my operations, I am using something like: InitBlock(from time, to time) while not eoblock getanote do stuff to it end Whooops gotta go now... my ride will be here in 5 mins... Any suggestions, get-this-package's, discussions, requests for source, comments, elucidations, or kamikazes (what a drink!) to: WEN10@ISUVAX.BITNET <=== Preferred cs352a55@zippy.cs.iastate.edu Sunny Gulati Wallace 9360 McCowen Ames IA 50013 515-296-9537 Over breaks: either 515-292-4516 or 612-363-4849 (home sweet home) I may not get this program finished till December.... I'm done blabbing now. Go do something constructive. Bye.