Source-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: [chap-midi] src/sys/dev/ic



Module Name:    src
Committed By:   chap
Date:           Sun Jun 11 04:19:07 UTC 2006

Modified Files:
        src/sys/dev/ic [chap-midi]: opl.c

Log Message:
Add relevelv and repitchv methods to opl: it now responds to channel volume
and expression controls, and changes to them are applied in real time to
voices already sounding, so dynamics sound right. This by itself makes a
remarkable difference in listenability. Pitch bend and tuning changes are
not applied to voices already sounding--even though I tried; for now they
apply only to subsequently played notes. I don't know if there is a way
to make this chip change frequency without stopping and rearticulating the
voice; the documentation has no detail on that point, and my attempt at
just writing the freq registers while it is sounding has no effect. So, I
do not know this chip well enough to finish making pitch controls work on
sounding notes, but if there is a way to do it then somebody who knows how
should have a very easy time adding that detail.

The opl device I tested on does play sharp, offering an easy test for the
new channel tuning support. :) Setting RPN 1 to 45:0 gets it right on the
money. Of course it's reset on close, which doesn't make it easy to send
a tuning adjustment and then run a favorite player program. It might be
that a sysctl (per midisyn instance) to set an initial tuning default
would be useful for that case.


To generate a diff of this commit:
cvs rdiff -r1.24.2.5 -r1.24.2.6 src/sys/dev/ic/opl.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.




Home | Main Index | Thread Index | Old Index