AAron@image.soe.clarkson.edu (AAron nAAs) (07/16/90)
I am having a problem understanding this information about the volume and tone controller, question at the bottom. This is all the info I have on it. >Information from "Atari STE Developer Information Addendum" >STE DMA Sound registers >Register Access Description >FF8922 R/W MICROWIRE data register >FF8924 R/W MICROWIRE mask register >Volume/controller commands (device address is always 10) >-------------------------------------------------------- >011 DDD DDD Set master volume > 000 000 -80 dB > 010 100 -40 dB > 101 XXX 0 dB >101 xDD DDD Set left channel volume > 00 000 -40 dB > 01 010 -20 dB > 10 1xx 0 dB > >100 xDD DDD Set right channel volume > 00 000 -40 dB > 01 010 -20 dB > 10 1xx 0 dB > >010 xxD DDD Set treble > 0 000 -12 dB > 0 110 0 dB > 1 100 +12 dB > >001 xxD DDD Set bass > 0 000 -12 dB > 0 110 0 dB > 1 100 +12 dB > >000 xxx xDD Set mix > 00 -12 dB > 01 Mix GI sound output (ST sound chip) > 10 Do not mix GI sound output > 11 Reserved >---------------------------------------------------------- > >The volume and tone controller of the STE is connected via a MICROWIRE >bus interface. The idea behind this is that further devices can be added >to the bus in the future. The MICROWIRE bus is a simple three wire >serial connection, with a protocol to allow multiple devices to be >controlled individually. > >In the general case, the data stream consists of N address bits, >followed by zero or more don't care bits, and then M bits of data. The >actual hardware interface in the STE consists of two 16 bit read/write >registers, one for the data to be shifted out, and a mask indicating >which bits are valid. > >A one in any bit of the mask indicates that the corresponding bit in the >data register is valid. Data transmission starts as soon as the data >register has been written to, so the mask register must be loaded first. >Sending takes approximately sixteen micro-seconds, and if the data >register is read during this time, a 'snap-shot' of the data being >shifted out will be obtained. This means that if you wait for either >register to return to its original state, you can be sure that sending >has been completed. > >The volume/tone controller is addressed by a two bit address field of >%10 (binary) and a nine bit data field. Table One details the commands >that can be sent to the device, and the addresses of the MICROWIRE >registers in the STEs memory map. Actually sending these commands is >easier than it looks. Simply set the mask register to $07FF, and place >the data in the lower nine bits with %10 in the upper two bits. > >For example, setting the mask to $07FF and the data register to $04C4 >will set the master volume to $14. That's all there is to it! > > >Regards, > >Mathew Lodge Are the Master/Left/Right volume, Treble, Bass and Mix levels all restricted to the two or three values listed in the table? How about the example? $04C4 is 0 0 0 0 0|1 0|0 1 1|0 0 0|1 0 0| | | | | | |dev| MVol | | | | | |this and this | | |aren't in the same row of the table!!! and it says that sets the volume to $14 (20 dec.) That isn't even listed in the table, only 0,40 and 80 !!! Does all of this make sense to anyone? I would like to understand the volume/controller to add this stuff to my STe sound player program!! BTW, if you would like the current version of the sound player, write to me and I will send it to you, I already have it prepared to send... AAron nAAs AAron@sun.soe.clarkson.edu
hyc@math.lsa.umich.edu (Howard Chu) (07/17/90)
In article <1990Jul16.025531.29249@sun.soe.clarkson.edu> AAron@image.soe.clarkson.edu (AAron nAAs) writes:
Think of these values as being tick-marks on, say, a thermometer. They're
just guidepoints; you can stick other values in and will get other sound
levels out. These points just show the trned and the available range.
%>Volume/controller commands (device address is always 10)
%>--------------------------------------------------------
%
%>011 DDD DDD Set master volume
%> 000 000 -80 dB
%> 010 100 -40 dB
%> 101 XXX 0 dB
%Are the Master/Left/Right volume, Treble, Bass and Mix levels all restricted
%to the two or three values listed in the table?
--
-- Howard Chu @ University of Michigan
one million data bits stored on a chip, one million bits per chip
if one of those data bits happens to flip,
one million data bits stored on the chip...