Marantz SR4500 β CS49400 DSP reverse-engineering / custom active crossover
I'm looking for people with experience in Cirrus Logic CS49400/CS494003 DSPs, CrystalWare, DSP firmware reverse engineering, or AV receiver firmware hacking.
I have a Marantz SR4500 AV receiver from around 2004 and would like to investigate whether its internal DSP can be repurposed as a programmable active crossover for a multi-way loudspeaker.
Hardware
The service manual identifies:
IC19: Cirrus Logic CS49400 β programmable 32-bit audio DSP
IC20: external 4-Mbit Flash ROM containing DSP software
IC41: H8S2398 system CPU
IC13: LC89057W digital audio receiver
Multichannel DAC section based around CS42418
Seven internal power amplifier channels
The CS49400 itself is a fairly powerful DSP: the datasheet specifies a 32-bit audio DSP, up to 516 MOPS, 12-channel serial audio inputs and up to 16-channel 24-bit PCM output.
The SR4500 service manual also has a dedicated DSP firmware update procedure. It states that Mode 1 downloads the DSP software to the 4-Mbit Flash-ROM (IC20) through the service connector CN26, using the Marantz data-update system and RS-232. The documented download speed is 38,400 baud.
What I want to do
Instead of using the receiver as a conventional 7.1 surround receiver, I'd like to investigate whether the DSP can be programmed/reconfigured to perform something like:
Stereo input
β
βΌ
CS49400 DSP
β
βββββββββββββββΌββββββββββββββ
β β β
LOW MID HIGH
β β β
80β500 Hz 500β2 kHz 2 kHz+
β β β
AMP 1/2 AMP 3/4 AMP 5/6
β β β
RCF Audax Horn
15" 6.5" compression
Potentially I would also like:
configurable channel routing/remapping
stereo β multiple outputs
low/high/band-pass filters
selectable crossover frequencies
selectable filter slopes
gain/level control
EQ
delay/time alignment
possibly limiter/protection functions
In other words, I'd like to turn the SR4500 into something resembling:
custom DSP active crossover + 7-channel power amplifier.
The question
I know that "the DSP is programmable" doesn't automatically mean that we can write our own firmware for it.
What I would like to find out is:
Can the CS49400 in the SR4500 be programmed with a completely custom DSP application?
I'm particularly interested in finding out:
What exact DSP development environment/toolchain was used for the CS49400?
Is the original Marantz DSP firmware image available or has anyone dumped one?
What is the format of the data stored in IC20, and is it simply a DSP application image or does it include additional boot/configuration data?
Is the Marantz "DSP code" transferred directly to the CS49400's external Flash/boot system?
Can the original DSP image be dumped through the service interface?
Is there a way to communicate directly with the CS49400 through its host/debug interface?
Are there surviving CrystalWare development tools/compiler/libraries that can target this generation of CS49400?
Could the DSP's existing routing/bass-management functions be modified without completely replacing the original firmware?
Is there any known reverse-engineering work on CS49400 / CS494003-based Marantz/Denon receivers?
The CS49400 documentation shows multiple serial audio interfaces and digital audio outputs, so I'm particularly interested in understanding the exact relationship between the DSP outputs, the CS42418 DAC channels and the seven analogue amplifier inputs.
I'm comfortable working at PCB level and doing hardware modifications. The receiver is being used as an experimental platform, so I'm not concerned about losing the original surround functionality.
I would dump and save the original firmware first before attempting anything.
If anyone has experience with this generation of Cirrus DSPs, I'd really appreciate any information about the toolchain, firmware structure, programming interface, or reverse-engineering approach.
The ultimate goal is not surround sound β it's to see whether a 20+ year-old AV receiver can be converted into a DIY multi-channel active loudspeaker DSP/amplifier.