[CM] Trouble using tunings
Anthony Kozar
anthonykozar@sbcglobal.net
Tue, 04 Oct 2005 02:42:14 -0400
Thanks for looking into this Rick. I suppose that I should have updated to
CM 2.4.x by now, but I got CM/CLM/CMN all into the same image several years
ago and have just stuck with it.
Looking into the problem some more myself, I have traced the error to
retrieving the note name from the scale's internal hash table. For some
reason, (gethash 'a4 (scale-table #!meantone)) returns nil nil, even though
running the following command clearly shows a key a4 in the table:
(maphash #'(lambda (k v) (format t "~A = ~A~%" k v))
(scale-table #!meantone))
result:
110 = (#S(sd :note d8 :keynum 110 :octave 9 :class 2 :name d :accidental
nil))
r = (#S(sd :note r :keynum -1 :octave nil :class nil :name nil :accidental
nil))
62 = (#S(sd :note d4 :keynum 62 :octave 5 :class 2 :name d :accidental nil))
[.....]
a4 = (#S(sd :note a4 :keynum 69 :octave 5 :class 9 :name a :accidental nil))
[.....]
Interestingly, (gethash 'r (scale-table #!meantone)) does work, but none of
the other note names that I have tried do.
I do not really understand how gethash could be misbehaving if that is
really what is happening. (My MCL image was saved right after loading CM
AFAIK).
*shrug*
...
OH! Just discovered that the symbols in the hash table seem to have extra
characters. 'a4 is in there as '\a4 and 'gs1 as '|gs1| for example. Does
this make any sense??
Anthony Kozar
anthonykozar AT sbcglobal DOT net
http://akozar.spymac.net/
Rick Taube wrote on 10/3/05 7:44 PM:
> Hi -- I dont have MCL anymore so if I can't build 2.3.4 in openmcl im
> not sure if ill be able to debug it.
> FWIW it does work in 2.7.0: