To LUGNET HomepageTo LUGNET News HomepageTo LUGNET Guide Homepage
 Help on Searching
 
Post new message to lugnet.robotics.rcxOpen lugnet.robotics.rcx in your NNTP NewsreaderTo LUGNET News Traffic PageSign In (Members)
 Robotics / RCX / 1959
1958  |  1960
Subject: 
reading music thru an RCX
Newsgroups: 
lugnet.robotics.rcx
Date: 
Mon, 10 Feb 2003 01:47:46 GMT
Viewed: 
2569 times
  
Anybody already write code to play notes thru the RCX as they are chosen, keep
a history of the notes, replay the assembled tune, etc.?

---

I think I mean to be asking for a public domain GUI.  Courtesy l.r.r. recently,
I've already got .java code sending x23 PlayTone (aka lasm playt) commands.
But I'm thinking the GUI we'd want would be regular Western left-to-right
top-to-bottom readable musical notation.

That is, present at least a treble clef, maybe a base clef as an option.  While
in the key of C, find E G B D F on the lines of the treble clef, find the notes
F A C E in between, work harder to get sharps alias flats.

Click on a line to add a note to the music, and incidentally to play that same
note immediately.  Default to a quarter note, get others from a pallette, even
silent rests of note-like duration if you want.

By A of the treble clef in the key of C we mean a pure 440Hz tone.  ln of the
twelfth root of two is the difference between the ln Hz of C C# D D# E F F# G
G# A A# B, repeat.  The # sharp notes appear where black keys do on a piano.

Beats begin at 110 per minute (thus about 545 ms/beat), and in the default 4/4
timing we would allot four beats to each whole note.

---

Anybody got anything like this already?

If it's in .java, I could just use it, else I'd probably have to work harder,
to cover all the Mac/ Linux/ Win platforms that matter to me.

I ask because I know a six year old who volunteered to type hex nybbles into an
RCX via IR this morning ("What are you doing?" "Making your robot beep."
"Can I?").

The child tried 5100 thru 5105, which work (aka PlaySystemSound aka lasm
plays).  Driven by curiousity, the child persistently retried with 5106 thru
510F which as documented do not work.  The child gently sneered at my code
failing to accept the letter O as equivalent to the digit 0.  Eventually the
child gently sneered at typing altogether, and asked "Can we make buttons?".

So I made an 8 x 12 array of buttons, one octave to a row, each button
resembling a chiclet.  But playing A B C involves moving the mouse from the
right hand A B to the left hand C ... an unusable result.

Some hours passed, then came a chili cookoff, where one musician suggested the
GUI of click on a line to add a note, another had a metronome, another guessed
the units for the "110" default were beats per minute, and then my watch agreed
when we tried 60 beats per minute.  Middle C = 262 Hz and octave = multiply by
two came some days ago from a 1969 encyclopedia, and was confirmed last night
by a musician asserting that the next A up = 440 Hz.

Anybody already write code to play notes thru the RCX as they are chosen, keep
a history of the notes, replay it, etc.?

Cluelessly, curiously, thankfully yours.    Pat LaVarre



Message has 2 Replies:
  Re: reading music thru an RCX
 
(...) Without being able to answer the question, I can add that relevant Unicode may include: (URL) bytes) u1D11A five-line staff u1D11E G clef u1D112 F clef u1D13B whole rest u1D13C half rest u1D13D quarter rest u1D13E eighth rest u1D15D whole note (...) (22 years ago, 10-Feb-03, to lugnet.robotics.rcx)
  Re: reading music thru an RCX
 
(...) Something quite like what you describe is the Brick Piano in BricxCC. Unfortunately, in the current release there is a nasty bug that I just added which makes the Brick Piano mostly useless at the moment. It is fixed in the next release (which (...) (22 years ago, 10-Feb-03, to lugnet.robotics.rcx)

4 Messages in This Thread:


Entire Thread on One Page:
Nested:  All | Brief | Compact | Dots
Linear:  All | Brief | Compact
    

Custom Search

©2005 LUGNET. All rights reserved. - hosted by steinbruch.info GbR