Specifications
ESS Technology, Inc. SAM0025A-062397 59
ES1879 DATA SHEET
PROGRAMMING THE ES1879
PRELIMINARY
Pro
g
rammin
g
the ES1879 Mixer
The ES1879 has a set of mixer registers that are backward
compatible with the Sound Blaster Pro. However, some of
the registers have an “extended” or “alternate” way of
accessing the registers to provide for greater functionality.
Commanding the ES1879 Mixer Registers
There are two I/O addresses used by the mixer:
Audio_Base+4h is the address port; Audio_Base+5h is
the data port. In the Sound Blaster Pro, Audio_Base+4h is
write only, while Audio_Base+5h is read/write.
Writing Data to the ES1879 Mixer Registers
To set a mixer register, write its address to
Audio_Base+4h, then write the data to Audio_Base+5h.
Reading Data from the ES1879 Mixer Registers
To read a mixer register, write its address to
Audio_Base+4h, then read the data from Audio_Base+5.
Resetting the Mixer Registers
The Mixer registers are not affected by software reset. To
reset the registers to initial conditions, write any value to
mixer register 00h:
1. Write 00h to Audio_Base+4h (select mixer register
00h).
2. Write 00h to Audio_Base+5h (write 00h to the selected
mixer register).
Extended Access to SB Pro Mixer Volume Controls
The Sound Blaster Pro mixer volume controls are mostly
3 bits per channel. Bits 0 and 4 are always high when read.
The ES1879 offers an alternative way to write each Mixer
register. Use the “Extended Access” registers for volume
control of 4 bits/channel. If the Sound Blaster Pro-
compatible interface is used, bits 0 and 4 are cleared by a
write and forced high on all reads. See Table 20 for a list
of Sound Blaster Pro registers and the extended access
counterparts.
For example, if you write 00h to Sound Blaster Pro register
04h, you will read back 11h because bits 0 and 4 are “stuck
high” on reads. Inside the register, these bits are “stuck
low,” so that writing 00h is the same as writing 11h.
If you write or read using address 14h instead of 04h, you
have direct access to all 8 bits of this Mixer register.
Extended Access to Mic Mix Volume
If Sound Blaster Compatibility mode register address 0Ah
is used to control Mic Mix Volume, only bits 2 and 1 are
significant. Bit 0 is stuck high on reads and stuck low on
writes. Furthermore, this is a mono control, which prevents
panning.
For extended access, use register address 1Ah instead.
Register 1Ah offers 4 bits/channel for pan control of the
mono microphone input to the mixer.
Access to this register via address 0Ah is mapped as
follows:
Table 20 Sound Blaster Pro/Extended Access Registers
Register Function
Extended Access Register
for 4 Bits/Channel
04h DAC Volume 14h
22h Master Volume 32h
26h FM Volume 36h
28h CD (Aux) Volume 38h
2Eh Line Volume 3Eh
Write to 0Ah D2=0, D1=0 Mic Mix Volume = 00h
D2=0, D1=1 Mic Mix Volume = 55h
D2=1, D1=0 Mic Mix Volume = AAh
D2=1, D1=1 Mic Mix Volume = FFh
Read from
0Ah
D2 = Mic Mix Volume register bit 3
D1 = Mic Mix Volume register bit 2
D0 = 1
Others are undefined.










