M-ACPA

M-Audio Capture and Playback Adapter/A

@6E6C.ADF M-ACPA/A
MACPA.DGS M-ACPA Diagnostics

190-159 M-Audio Capture And Playback Adapter/A Upgrade Kit
191-192 Enhancements To The Audio And Video Multimedia Adapters From IBM
189-101 ACPA for PS/2, ACPA/A for PS/2, and VCA/A for PS/2

Bradly Parker's MWAVE stuff (Readme) (thanks Adrian)
Installing the M-ACPA under Win95 (by Peter Wendt)

Drivers & Software
   Reworked Support Packages (by Tim N. Clarke)
   Original Support Packages
   Source Code
Documentation
   TMS320 Documentation
ACPA Long (Rev. A)
ACPA Short (Rev. B, Rev. D sticker)
ACPA Short "Ultimedia" (Rev. C)
ACPA Block and Functional Diagrams
Win95 Experiences (William Walsh)
Sound Blaster Support (William Walsh and Christian Holzapfel)
M-ACPA Installation Files, Peter and VDD for M-ACPA
ACPA Construction
ACPA Source
Specs and Technical Data
ADF Sections

Based on William Walsh's M-ACPA page. Original HERE.


Drivers & Software

Audiocap.exe ACPA Adapter/A Option Disk (720KB, use FORCEDOS under NT)
   zipped image (720K) (by Wild Bill)
   zipped files (by Wild Bill)
ACPADIAG.EXE DOS based M-ACPA Diagnostics
AIL2.ZIP IBM Adapter Interface Library v2.14 (originally HERE, thx Tim)
   Predecessor to Miles Sound System. Some useful testing and demo programs.

Reworked Support Packages (by Tim N. Clarke)

MACPAOPT.ZIP
MACPAWIN.ZIP
MACPADDK.ZIP

Changes:

  • All README, *.DOC/*.PRT files now have .TXT extensions.
  • All packages are now at Windows 3.1x driver level v1.03 rather than v1.02
    (by application of the Windows 3.1x CSD package to them).
  • Provided as *.ZIP packages, for simplicity.

Original Support Packages

M-Audio Capture Drivers and APIs 1 of 2
M-Audio Capture Drivers and APIs 2 of 2
M-Audio Capture Drivers Docs
M-Audio Support files for Windows 3.1
M-Audio Support files for Win-CSD (Corrective Service)
Drivers for Audio Capture/Playback (Readme file)

Virtual Device Driver DOS/Win3.1x/OS2

Source Code

ACPA Source
ACPA Low Level Driver Source 1/2
More ACPA stuff (copy or different?)

JPEG API Source Files - Win, OS/2, DOS (User's Guide)


Documentation

US5054360 Method and apparatus for simultaneous output of digital audio and MIDI synthesized music
US5043931 Wrap test system and method [audio-mute wrap]

ACPA Installation and Technical Reference Manual (includes POS info)

IBM M-ACPA Audio Application Programming Interface Functional Description "C"
AUDIODD.txt Audio Device Drivers for IBM Personal Computers (AUDIO DD) v 1.02

TMS320 Documentation

TMS320 Second Generation Digital Signal Processors Datasheet
TMS320C2x Application Notes
TMS320 Family Development Support Reference Guide
TMS320C2x User's Guide
TMS320C2x DSP Programmers Reference Card
Real-Time MIDI Music Synthesis Algorithms, (ABS/OLA, SMS) for the TMS320C32 DSP
TMS320C62x DSP Library Programmer's Reference

TI TMS320C25 Technical Documents   [To Texas Instruments]
An Optimizing Compiler for the TMS320C25 DSP Processor
DSP-93 Programming Guide [TMS320C25 based]


ACPA Long (Rev. A)

Blue Takamisawa A5W-K Relay (muting)
U20 Crystal CS5126 16-bit Stereo ADC
U61,64 Cypress CG7C185-35VC
U63 TI TMS320C25FNL DSP
Y1 22.5792 MHz (ADC)
Y2 40 MHz (DSP)

Jumper JPR4

This is the only way to jumper it. Experiment if you are curious.


ACPA Short (Rev. B, Rev. D sticker) P/N 95F1288, FCC ID ANOMACPAMC [P] [P] (photo A. Paterakis)

Made for IBM by Rexxon/Tecmar.

J1 CD Audio (see J1 below)
J2 AUX (see J2 below)
J3 Header for external ADC osc
JPR1,2 Ground jumpers
JPR3 Enable on-board ADC osc
K1 Takamisawa A5W-K Relay (muting)
OSC1 22.5792 / 40.0 MHz dual osc
P1 Line In Jack Connector
P2 Microphone Jack Connector
P3 Line Out Jack Connector
P4 Speakers Jack Connector
P5 Solder pads for 2x30 pin header
U1,3,5 NS LF347M Quad Op-Amp
U2 LM386 Audio op-amp (Mic)
U6 LM386 Audio op-amp (Headphones)
U4 Intersil DG211CY 4-chan switch
U8 NEC µPD6355G 16-bit DAC
U12 Crystal CS5126-KL 16-bit Stereo ADC
U13 TI CF62357APQ
U16 TI TMS320C25FNL DSP
U17,18 Cypress CY7C185-20VC 8Kx8 SRAM

OSC1 Dual output 22.5792 / 40.0 MHz oscillator. The 22.5792 MHz output (#1, pin 1) is used as a clock for the ADC (U12), and is also connected to the interface chip U13. The other 40.0 MHz output (#2, pin 8) serves as an external clock for the DSP (U16). Datasheet

J1 CD Audio

J2 AUX

JPR1 connects Micro Channel pin B1 - Audio Ground to the analog ground plane [pic].
JPR2 connects the ground planes of the digital and analog portion of the card together.
JPR3 connects the on-board 22.5792 MHz oscillator to the ADC (U12). If you remove this jumper you MUST supply an external clock via the J3 header otherwise the card won't be functional (the system will likely hang when the hardware is accessed).

J3

Pin Signal
1 Ground
2 ADC Clock In
3 Ground

P5 - DSP Expansion Connector (solder pads only)

Ed. After researching the TMS320 DSP, I saw the block diagram for a TMS320C50 development kit. That 30-pin artifact is for an I/O Expansion Connector. Remember, the ACPA is not just a simple audio card, but instead is an advanced signal processing adapter. The Audiovation is a cheaper audio card (with MWAVE technology).

P5 Pinout (mapped by Tomas Slavotinek):

PinSignalPinSignal
1CLKIN (40 MHz OSC)31+12 Vdc (via 10 Ω R)
2-RS32READY
3Not Connected33-INT2
4Ground34Ground
5+5 Vdc35-HOLD
6CLKX36CLKR
7D1537D14
8D1338D12
9D1139D10
10D940D8
11D741D6
12D542D4
13D343D2
14D144D0
15DR45DX
16Ground46-HOLDA
17+5 Vdc47Ground
18-STRB48FSX
19-PS49R/-W
20-IS50FSR
21A051-DS
22A252A1
23A453A3
24A654A5
25A855A7
26A1056A9
27A1257A11
28A1458A13
29+5 Vdc59A15
30Ground60Ground

Louis' more detailed version HERE.
Description of the individual signals can be found in the TMS320C25FNL Datasheet.

Major Tom about Ground Control (JPR1/2)

Major Tom bounces one off the Ionosphere:
   The reason why you often want to *separate* the two return paths (grounds), is to reduce the level of digital noise in your analog signal(s) - audio in this case. The Micro Channel bus was designed with this in mind and the analog audio signal on pin B2 has its own return path - "analog" ground on pin B1.

It looks like the designers of the card were testing different ground configurations to see what will give the best results (possibly in various different system units). The analog portion of the card is rather complex so maybe it caused more trouble than good when all of it was grounded through just that one pin. In any case, looks like the variant with interconnected grounds won, so they permanently connected them with some traces on the back side (with an option to separate them by cutting the traces, if you really wish to). Early samples likely had the ground planes connected through the jumpers, and one could simply remove/add jumpers to see what effect it has on the SNR and other characteristics.

PCB Markings

Etched on the back:
COPYRIGHT REXON/TECMAR INC 1991
MANUFACTURED FOR IBM
IBM P/N 95F1288 Rev ___ [Three Underscores].
Note: You may see a small sticker with the Revision letter over the three underscores.
M-ACPA/A ADAPTER 943055 REV B SOLDER SIDE

Etched on the front:
M-ACPA/A ADAPTER 943055 REV B COMP SIDE

Silkscreened on the front:
ASSEMBLY REV ___, Sticker: D


ACPA Short "Ultimedia" (Rev. C) P/N 95F1255 (?)

Made for IBM by Rexxon/Tecmar.

J2 CD Audio
K1/Q1? Takamisawa A5W-K Relay (muting)
OSC1 22.5792 / 40.0 MHz dual osc
P4 Ultimedia Front Panel
T1-7 TDK ZJYS-2 (ZJYS51R5-2P) Chokes
U2 LM386 Audio op-amp (Mic)
U3 LM386 Audio op-amp (Headphones)
U6 Intersil DG211CY 4-chan switch
U12 Crystal CS5126-JL 16-bit Stereo ADC
U13 TI CF62357APQ (MCA bus interface?)
U16 TI TMS320C25FNL DSP
U17,18 Cypress CY7C185-20VC
? TL084C Quad Op-Amp

K1? The component ID is not visible on the C version.

OSC1 Dual output 22.5792 / 40.0 MHz oscillator. The 22.5792 MHz output (#1, pin 1) is used as a clock for the ADC (U12), and it's also connected to the interface chip U13. The other 40.0 MHz output (#2, pin 8) serves as an external clock for the main DSP (U16). Datasheet

J2 Pinout

PCB Markings

Etched on the back:
95F1255 Rev B
M-ACPA/A MMFP #2 943706 REV B COMP SIDE

Etched on the front:
M-ACPA/A MMFP #2 943706 REV B SOLDER SIDE

Silkscreened on the front:
ASSEMBLY REV ___, Sticker: B

Note: The "MMFP" suffix probably stands for "Multi Media Front Panel", indicating that this revision was likely slated for the 57 / M57 / 9577.


ACPA Block Diagram (Extract from US Patent 5,054,360)

Functional Diagram

The M-ACPA has audio input jacks for both microphone and line. The difference is that the microphone jack is connected to an amplifier to boost the signal. The output of most external audio devices is suitable for the line-input. A signal from an analog audio source is digitized by the analog-to-digital converter. The digitized signal is compressed to save storage and is stored in the M-ACPA shared memory. MMPM/2 reads the shared memory and stores the audio in the PS/2 memory.


Audio Mute

Peter Wendt says:
   I have the M-ACPA in various machines - one of them is a Server 85 (33 MHz planar) with Kingston Turbochip 586-133 installed. Works nice.

But:

  • it's not Sound Blaster compatible and will never be
  • volume control and mixer don't work (consequently - requires SB comp. card)
  • the audio-mute is a relay, which causes a loud clicking noise in the output
  • the .MID-files sound a bit odd since the instrument tables differ

Apart from that it works pretty good and the audio quality is a lot better compared to ISA-sound card. The digitizer part (analog in) is 10X-better than on any other ISA-card due to the better signal / noise ratio of the MCA. I use one ACPA to digitize my old analog records.


Windows 95 Experiences (Win95 setup procedure here)

The M-ACPA sounds pretty darn good when playing waveform audio.

The MIDI implementation doesn't sound at all good under Windows 95. Some notes seem to be over-emphasized and others you can barely hear. Some wave sounds come through a bit strangely and others play fine. I can't explain that. This might be compression related. As with Audiovation, using 16 bit programs is your best bet for proper sound playback. Most 32 bit programs won't even see that you have the ACPA installed. I didn't try recording from any source.

Warning: You get no volume control on the ACPA that I can see. It looks to me as though the outputs are "full on" under Windows 95. For your ears' sake, use earphones or speakers that have an inline volume control.

MP3 files played nicely on my 9585-0XF using an old 16-bit version of Fraunhofer's MP3 decoder software and a Kingston 133MHz TurboChip CPU upgrade. To multitask I had to turn down the decoding quality a bit. You'd be hard pressed to hear the difference from ordinary computer speakers though.


Sound Blaster Support? (from William Walsh, original HERE)

Yes, in at least some sense of the term. Christian Holzapfel turned on the unobtainium mill and cranked this out:

Yes, it is true! While sorting my floppy disks I found one named "Virtual device driver vor M-Audio Capture and playback Adapter", which came with my 9577-STG a few years ago. However, I uploaded the content HERE (dead, local ZIP) so everyone can experience this.

These are the magic files:

19.10.1992 14:15 79.808 ACPA.DLL
26.10.1992 14:31 65.747 ACPAD2.SYS
19.11.1992 13:15 67.636 ACPADD2.SYS
01.09.1992 14:06 112.468 IBMMME.DRV
23.09.1992 12:00 14.957 IBMMPC.DSP
12.01.1994 15:38 1.062 MAUDIO.TXT
12.11.1992 11:31 799 MINIDD.SYS
24.11.1992 09:49 2.243 README.DOS
24.11.1992 15:17 1.865 README.OS2
24.11.1992 09:49 3.003 README.WIN
19.11.1992 10:01 91.273 SVAUDIO.386
23.11.1992 13:11 28.921 SVAUDIO.EXE
23.11.1992 13:22 18.432 SVAUDIO.SYS
20.08.1992 10:02 3.584 VAUDIO.SYS
23.11.1992 14:44 277 WININST.BAT

It needs to be installed manually, just read the appropriate file, "README.WIN" in most cases; WININST.BAT only does half of the job, so don't care about it. The emulation only works within a Windows DOS session, so the DOS driver seems useless to me. It is designed for Windows 3.1, but it also works under Windows 98 SE, I tested them both successfully. There mustn't be any other MACPA driver installed, not even the great one with the .inf from Peter. However, after you installed this one, sound works great within Windows too, although you don't see a device in the device manager.

There are not less than 4 readme files in the package, and useful information is spread all over:

"The VDD will allow you to run most Sound Blaster and MPU-401/MT32 or LAPC applications within a Windows DOS session.  Do NOT run the SVAUDIO.EXE. The VDD will attempt to map the sounds requested by the application to the nearest M-ACPA sound.  In most cases this is quite acceptable, but in any case it will sound different."

[README.WIN / README.OS2]

"If you turn music on for Sound Blaster support and specify port 240, music comes out great."

[MAUDIO.TXT]

"(3) The M-ACPA must be set to Interrupt 5 for the Sound Blaster emulation to have any chance of working. Otherwise, it may lock up your machine."

[MAUDIO.TXT]

So, if you configure your DOS sound application (a.k.a. "game") to Int 5, I/O 240, everything works fine. If you need to specify a DMA channel, well... I locked up my '95 on every try. The reasons for this are clear, the MACPA simply doesn't need/support a DMA channel.

I tried "DOOM" without SFX and "Skyroads" with SFX, they both work, and the music themes are recognizable, but still sound a bit strange. Why this is, I can't say.

One more thing I noticed, all the files on the disk are dated later than the ones on any MACPA option/driver package. If you run "Audiover.exe" from the M-ACPA Win driver Corrective Service disk, it tells you the installed driver only supports up to 22.050 KHz, Mono, 8-bit. If this is true, I cannot say. It doesn't sound that bad, but this is just my perception.

It looks to be an unfinished, unofficial driver set, since I could not find any information about it anywhere. Finally, the README.DOS says: "Error handling is not very robust at this time. Be prepared to reboot." :-) I had no problems so far, however.

What you need is here. (ZIP format!) It should be said that this is beta quality software (if that much!) and it may do Bad Things to your system.


M-ACPA Installation Files, Peter and VDD for M-ACPA

MACPAWIN.EXE & MACPACSD.EXE
ACPA.DRV 33.008 07.01.94 19:14
AUDIO.DLL 78.912 07.01.94 19:10
AUDIOVER.EXE 20.816 10.01.94 11:23
OEMSETUP.INF 2.018 30.06.92 10:05
README 12.976 24.07.92 15:02
WIN.CMD 88 24.07.92 14:56
IBMAUDS.DSP 14.957 30.06.92 11:07
IBMMPC.DSP 14.957 30.06.92 12:11
IBMPCMP.DSP 7.277 30.06.92 12:07
IBMPCMR.DSP 7.277 30.06.92 12:08
ACPADD.SYS 55.737 30.06.92 11:46
READ.ME 4.762 10.01.94 16:25
MACPA.INF 3.979 07.06.98 14:25
 
 
VDD for M-ACPA
ACPA.DLL 79,808 10/19/1992 09:15
ACPAD2.SYS 65,747 10/26/1992 09:31
ACPADD2.SYS 67,636 11/19/1992 08:15
IBMMME.DRV 112,468 09/01/1992 09:06
IBMMPC.DSP 14,957 09/23/1992 07:00
MAUDIO.TXT 1,062 01/12/1994 10:38
MINIDD.SYS 799 11/12/1992 06:31
README.DOS 2,243 11/24/1992 04:49
README.OS2 1,865 11/24/1992 10:17
README.WIN 3,003 11/24/1992 04:49
SVAUDIO.386 91,273 11/19/1992 05:01
SVAUDIO.EXE 28,921 11/23/1992 08:11
SVAUDIO.SYS 18,432 11/23/1992 08:22
VAUDIO.SYS 3,584 08/20/1992 05:02
WININST.BAT 277 11/23/1992 09:44


ACPA Construction

Brad Parker said:
   I know Audiovation sounds really good, and specs out good to, but I'm working on an audio related project that needs to run under Linux, so the ACPA series cards are my only real choice, unless you know of a OSS compatible Audiovation driver for Linux.

I Looked at both the M-ACPA/A and ARPA audio stages tonite and they are functionally identical (Think you said that on your page).

Four small transistors near the center are for the Microphone gain stage and are probably acting as an impedance matching circuit, the two small transistors near the top act as buffers for the line in stage.

Three additional gain blocks are made up of the three quad operational amplifiers marked TL084C, the C being CMOS. These are low noise, hi impedance devices that use bi-fet transistor technology internally. Each TL084 contains four Op-Amp devices. Generally they sound good and  can be considered an "upgrade" part.

The "speaker" outputs, and I use that term loosely, are powered by two LM386 power Op-Amps. They will drive headphones, but are not known for their fidelity. They could be bypassed, yielding a second set of line outputs. I'll poke around with an oscilloscope but I think the spot where the inputs come in through the coupling capacitors, marked C35 and C36 on M-ACPA and C15 and C17 on ARPA, looks likely.

I just noticed that ARPA only has 3 voltage regulators, while M-ACPA has 4. The LM 317 and LM 337 imply a dual rail power supply with a positive and a negative rail on the M-ACPA, while ARPA appears single ended. This could mean that M-ACPA has more dynamic range, greater output levels and less TIM distortion than ARPA. The 317/337 pair are adjustable, so I don't know what their output voltage is, but if I designed the thing, I'd tap the +/- 12 volt and regulate it 10 or 11 volts.


ACPA Source

Brad Parker said:
   Been looking at the IBM ACPA source very carefully, trying to figure out how it works. I have noticed many very interesting details. Here's what  I think I know:

ACPA works a lot like Mwave, in that there is a TI DSP that it is loaded with an operating system (ACPA OS?). This indicates that Mwave followed IBM's usual evolutionary, not revolutionary model.

The ACPA OS runs the programs that play, record and loopback. Dave Weis ported the OS and it loads and runs the playback program he also ported. There is only 8K of memory on it, so I don't think a Sound Blaster emulation like Mwave's is possible. I'm going to add record capability by porting the record program module.

The card doesn't use interrupts, it reads and writes directly to I/O ports, MCA superiority at work. Looks like it can be treated as a block device which means that direct DAT record/playback (ala SGI) is possible. That's a job for whoever supports the mt utility.

The ACPA supports just about every sample rate I can think of, including a 48K professional format that was used with M-motion and would probably work with DAT and ADAT. ACPA also supports a mono 88K rate, which would make very good quality recordings. The only major one missing is the current 96K fad. Of course we are only recording with 16 bit resolution, not 20 or 24 bit like the modern stuff. Then again, they have to down convert to put it on a 16 bit CD. I read on the Pro Audio NG that bit rate and sample rate conversion is a big pain. The consensus there is to record at the sample rate and resolution of your target media, 16 bit 44.1 KHz, or for commercial reproduction, 16 bit 48 KHz.

I think the most interesting thing I found out is that the original IBM driver supports up to 4 ACPAs concurrently! Keeps track of the separate stereo audio streams and everything. Very nice for my purposes. Don't think OS/2 every took advantage of that. Hopefully the Linux stuff will work out that way :-)

If I can pull this off, I'm going to attempt a port for Audiovation. I finally got a copy of the Mwave developer's kit. It's very Win 3.XX orientated, but the Sound Blaster emulator might be ported to work with Linux directly, without all the dual boot monkey business that goes on now.


Specs and Technical Data

Marketing Part Number :  92F3379 (92F1255 and 92F1288 resp.)
Service Part Number   :  95F1256
Feature Code          :  3909
POS ID                :  6E6C


Sample Width         Sampling Rate         Data Size
(KB/sec.)
-----------------------------------------------------------
8-bit             8.000 KS/second            8
8-bit            11.025 KS/second           11
8-bit            22.500 KS/second           22
8-bit            44.100 KS/second           44
16-bit            8.000 KS/second           16
16-bit           11.025 KS/second           22
16-bit           22.500 KS/second           44
16-bit           44.100 KS/second           88
-----------------------------------------------------------
(KS/second = 1000s samples per second)


Audio Mode                          Data Size
in KiloBytes
(estimated)
-----------------------------------------------------------
Compact disc 16-bit Stereo            10,500
16-bit PCM 22.050 KS/sec. - Mono       2,640
8-bit  PCM 11.025 KS/sec. - Mono         660
Voice - Mono                             330
MIDI - Stereo                             12 *
-----------------------------------------------------------
(* Note:  MIDI cannot be used to store the human voice.)

ACPA Specifications

Input Analog Performance

Input Sampling Rate         44.1 KHz (stereo)
88.2 KHz (mono)
Input Channel Bandwidth     12 Hz to 20 KHz
3dB cutoff (typical)
Dynamic Range               16-bit resolution
Signal-to-noise ratio       80dB (typical)
Line level input impedence  30K ohms (typical)
Line level voltage          7 volts peak-peak max.
Microphone input impedence  20K Ohms (typical)
Microphone gain             +33/+45 dB
S(N+D)                      78 dB (typical)

Output Analog Performance

Output Sampling Rate        88.2 KHz Both Channels
Output Channel Bandwidth    12 Hz to 24 KHz
3dB cutoff (typical)

Dynamic Range               16-bit resolution
Signal-to-noise ratio       80dB (typical)
Line level input impedence  10K ohms minimum
Line level voltage          7.0 volts peak-peak max.
Speaker/Headphone drive     at least 4 ohms or over
Speaker power               110 mW typical (8 ohm load)
S(N+D)                      78 dB (typical)


Connectors

Microphone input (1)        Mini-phone jack (3.5mm)
Speaker (1)                 Mini-stereo phone jack (3.5mm)
Line (2: 1 In, 1 Out)       Mini-stereo phone jack (3.5mm)

Test Condition              1 KHz, +7 dBV

Power Consumption

+5V                        1.5 A
+12V                        55 mA
-12V                        55 mA


Note: The 55 miliamps from the -12 volts exceeds the 40
miliamps per slot available in the MicroChannel
computer. This will not cause a problem in most
systems, since most boards use very little -12 volt
power.

From: IBM Audio Capture & Playback Adapter Installation and Reference Manual (P/N 34F2795) (written and published for IBM by Tecmar)


AdapterId 06e6c "ACPA/A"

Address Selection
   Base address of M-ACPA/A. Choose one which does not conflict with any other installed board.
   <"FDC0-FDC7">, FDC8-FDCF, FDD0-FDD7, FDD8-FDDF, Disable

Interrupt Selection
   Interrupt level. Minimize amount of interrupt sharing by assigning other boards to different levels.
   <"Interrupt 3">, 4, 5, 6, 9, 10, 11, 12

Content created and/or collected by:
Louis F. Ohland, Peter H. Wendt, David L. Beem, William R. Walsh, Tatsuo Sunagawa, Tomáš Slavotínek, Jim Shorney, Tim N. Clarke, Kevin Bowling, and many others.

Ardent Tool of Capitalism is maintained by Tomáš Slavotínek.
Last update: 24 Mar 2024 - Changelog | About | Legal & Contact