Microwired - LMC1992 for Musicians


The LMC1992 is the piece of silicon that gives bass, treble, volume and panning controls on quite a few Atari 16/32 machines. Microwire is the low-level interface which allows the LMC to be setup. So strictly speaking there is a difference between LMC1992 and microwire, but in Atari 16/32 tech-speak the terms are used interchangably ;)

The three computers that include a LMC1992 and microwire are the STe, Mega STe and TT. Microwire is not available on ST, Mega ST or Falcon... However volume and panning microwire features are emulated in maxYMiser on Falcon.

LMC1992 software features have been available ever since the STe first came out, and music programs like TCB Tracker and ProTracker usually include a little interface to setup the microwire. But maxYMiser DMA is the first software to allow the musician creative use of LMC1992, and you can set up the chip each step with effect commands. The family of microwire effect commands look like this: U??.

I didn't explore using microwire too much in music so far, and in reality there may not actually be too many possibilities. On the other hand microwire is too cool to ignore, and you should definately at least try using it ;)


The problems

Microwire definately has its disadvantages:

Global fadeout

The holy grail of chip musicians! YM only gives 16 volume levels - not enough for a smooth fade out. Microwire answers our prayers and at last there is the possibility to smoothly fade in and out our music. For example, set up a series of effect codes like this:

UA0	-0dB   Maximum volume
U9F	-2dB
U9E	-4dB
U9D	-6dB
...
U83	-58dB
U82	-60dB
U81	-62dB
U80	-64dB  Minimum volume

Fix STe output distortion

You've probably noticed maximum microwire volume on STe gives quite some distortion :( This is easy to fix by lowering the master volume with something like a U9F or a U9E at the start of your music. You might also notice some distortion when you boost the bass or treble levels. Again you can reduce this distortion by lowering the master volume.


Panning

You can pan your music to any position in the stereo field. Heres an example of a panning sweep from left to right:

UC0	Hand left panning
UC1
UC2
...
UCE
UCF
UD0	Center panning	
UD1
UD2
...
UDE
UDF
UE0	Hard right panning
You'll notice the panning does not quite give 'correct' levels around the center position. Actually I copied the FastTracker2 panning system. If there are complaints I'll implement an acoustically correct version.


Bass/treble boost and cut

Microwire gives some simple tone control:

U00	-12dB bass
U01	-10
U02	-8
U03	-6
U04	-4
U05	-2
U06	0dB bass	
U07	+2
U08	+4
U09	+6
U0A	+8
U0B	+10
U0C	+12dB bass
and similarly for the treble:

U00	-12dB treble
...
U06	0dB treble
...
U0C	+12dB treble

Filtering

RA and Damo both independantly explained to me an idea for a filter effect achieved by manipulating the bass and treble controls together. I tried it and found you often need to adjust the master volume control also to avoid distortions... but YES it is possible to achieve some kinds of filtering this way!

However, the bass and treble controls aren't very strong, and I personally found the different effects a little weak and to be honest slightly lame :( However, 505 and Dma-Sc sent me some maxYMiser test songs where they tried some LMC filtering with OK results. Go ahead and try it - but don't get too excited, and be prepared for slight dissapointment.

Try boosting or cutting the treble and bass together each step:

U00 U10
U01 U11
U02 U12
U03 U13
U04 U14
U05 U15
U06 U16
U07 U17
U08 U18
U09 U19
U0A U1A
U0B U1B
U0C U1C
A different filter effect can be found by increasing the bass while reducing the treble and visa versa:

U00 U1C
U01 U1B
U02 U1A
U03 U19
U04 U18
U05 U17
U06 U16
U07 U15
U08 U14
U09 U13
U0A U12
U0B U11
U0C U10

You'll also need to adjust the master volume slightly to avoid distortions, but these adjustments are best made by ear. Other filter effects are possible with different adjustments, just experiment ;)


Finally

Have fun - get microwired ;)

gwEm
Oct 2005


Back to maxYMiser main page