VOGONS


The Soundblaster DSP project

Topic actions

Reply 20 of 1052, by SirNickity

User metadata
Rank Oldbie
Rank
Oldbie

So, given that the MCUs are read-protected; that Creative produces like a gazillion variants of any given model that probably all require different FW versions to accommodate different board topologies; and that the microcode only has a few relatively simple things to do... wouldn't it just be easier to write a new (modular) firmware and adapt it to the common CTxxxx board variants, than to try and reverse-engineer a dozen different ROM versions once someone has successfully shock-therapy'd one of each MCU into spilling its guts? 😀

Reply 21 of 1052, by ranma42

User metadata
Rank Newbie
Rank
Newbie
stamasd wrote on 2016-08-28, 21:23:
Hm interesting. I was browsing stuff today and it looks like someone has decapped a DSP v4.05 already and there are high-resolut […]
Show full quote

Hm interesting. I was browsing stuff today and it looks like someone has decapped a DSP v4.05 already and there are high-resolution pictures of it available. It uses mask ROM so theoretically you can extract the microcode just by visually decoding the bit pattern from the file.

http://siliconpr0n.org/archive/doku.php?id=na … ive_tech:ct1741
http://siliconpr0n.org/map/creative_tech/ct17 … 741_rom_20x.jpg

Also I found a script to automate the process a bit
http://adamsblog.aperturelabs.com/2013/01/fun … asked-roms.html
https://github.com/ApertureLabsLtd/rompar

I may give it a go... though the high-rez image of the ROM array seems to be a bit truncated towards the left (or bottom, as it appears it's rotated 90 degrees clockwise) so I may not get a full readout.

(edit) scratch this, it's more than a bit truncated, it's missing about half of the ROM area. No go.
There is a lower resolution picture of the whole chip but it's too blurry to read the bits.

Has anyone tried extracting data from that image?

I strongly suspect the full ROM is a 16K rom and its truncated because the other half is empty (The 80C54 is a 16K rom variant of the 80C52).
Estimating the bit count the high-rez image seems to have 24 * 24 * 2 * 8 = 9216 bytes of content, which is exactly 9KB. This would account for the expected 8KB of ROM plus 1KB of manufacturing/testmode rom (The Snark Barker rom extraction video mentions a 512 byte mystery test mode rom area for the SB2.0 rom, which is also just 4KB, so both would be doubled here).

AFAICS the main issues are
1) image quality for rompar:
- uneven lighting and some very blurry areas where the stitching didn't work well? (lighting can probably be fixed in gimp/photoshop)
- rompar seems to need very straight lines, there seems to be some warping in the image where the rompar grid then doesn't match well anymore (could maybe just cut it up into sections and rompar those individually)

2) mystery rom layout. 24 x 24, two halves? I'd have expected power-of two row and column counts, with 24 x 24 probably some slicing and dicing is going on...

See also the attached annotated image, I think its easy to see the row/column select lines (annotated red/blue) and the data path for reading a byte, which all go onto a single bus (also nicely visible in the lowres full-chip image, which has 8 data lines coming out of the rom in that area). I think the bit order is flipped in alternating slices.
There's also a common ababbaba pattern for the row select.

Lets call these two mirrored 8x8 bit blocks. (4 column and 2 row selects per block, 8 bit read at a time). Overall I see 24x24 of these in the upper half and another 24x24 in the lower half, thus the 9216 bytes mentioned above.

Also, going to the opposite end of the rom image, there are 4x2 of the 8x8 blocks that are mostly all 0xff or 0x00. These can give a clue about the block read order I think, I suspect these are the end of either the normal rom or the manufacturing rom (which would be mostly 0xff or 0x00 followed by some final data bytes). These 4x2 blocks are interspersed with 4 of the in the top area and another 4 in the bottom area.

Attachments

Reply 22 of 1052, by digger

User metadata
Rank Oldbie
Rank
Oldbie

Has anyone ever tried flat-out asking Creative Labs to release the sources to these DSP firmwares? It would be a nice gesture for historic preservation, similar to Microsoft's recent release of the source code to early versions of MS-DOS, GWBASIC and the Windows 3.x file manager. It's not like they're making money off of the sales of their ISA sound cards anymore.

Reply 23 of 1052, by hard1k

User metadata
Rank Oldbie
Rank
Oldbie

I've tried to contact them several times on different matters, including requests for datasheets, etc. Never got any reply.

Fortex, the A3D & XG/OPL3 accelerator (Vortex 2 + YMF744 combo sound card)
AWE64 Legacy
Please have a look at my wishlist (hosted on Amibay)

Reply 25 of 1052, by hard1k

User metadata
Rank Oldbie
Rank
Oldbie

If they don't care for people releasing a replica of their product, why would they care for a vlogger?
I thought to approach them on some expo event, but with all this covid shit I don't know if/when that can be done.

Fortex, the A3D & XG/OPL3 accelerator (Vortex 2 + YMF744 combo sound card)
AWE64 Legacy
Please have a look at my wishlist (hosted on Amibay)

Reply 26 of 1052, by root42

User metadata
Rank l33t
Rank
l33t

Are you aware of Eric's reverse engineering project?

https://github.com/schlae/sb-firmware

These are two firmwares in source code. One by Creative, one from a clone company.

YouTube and Bonus
80486DX@33 MHz, 16 MiB RAM, Tseng ET4000 1 MiB, SnarkBarker & GUSar Lite, PC MIDI Card+X2+SC55+MT32, OSSC

Reply 27 of 1052, by maxtherabbit

User metadata
Rank l33t
Rank
l33t

I've got a SB16 with what I believe is a damaged CT1741 chip. Any progress with extracting the DSP firmware? I'd love to be able to burn a new Intel 80C52 with some code and make a replacement

Reply 28 of 1052, by Maelgrum

User metadata
Rank Member
Rank
Member
maxtherabbit wrote on 2022-01-06, 03:57:

I've got a SB16 with what I believe is a damaged CT1741 chip. Any progress with extracting the DSP firmware? I'd love to be able to burn a new Intel 80C52 with some code and make a replacement

see attachment:
ct1741_v405-d.bin
ct1741_v411-d.bin
ct1741_v413-d.bin

is decrypted firmware for CT1741. You can try to burn ))

Attachments

  • Filename
    sb16_ct1741.zip
    File size
    34.59 KiB
    Downloads
    145 downloads
    File license
    Public domain

Reply 29 of 1052, by Deksor

User metadata
Rank l33t
Rank
l33t

Nice ! now that we have the code we could also try to understand it and check why it is flawed.

Maybe it could also be used to make the SB16 backwards compatible with SB pro 2 ?

Trying to identify old hardware ? Visit The retro web - Project's thread The Retro Web project - a stason.org/TH99 alternative

Reply 30 of 1052, by Maelgrum

User metadata
Rank Member
Rank
Member
Deksor wrote on 2022-03-21, 18:05:

Nice ! now that we have the code we could also try to understand it and check why it is flawed.

Maybe it could also be used to make the SB16 backwards compatible with SB pro 2 ?

This can help - Sound Blaster Pro 2.0 firmware dump - CT1341 V302
ct1341_v302.bin

Attachments

  • Filename
    sbpro2_ct1341.zip
    File size
    1.9 KiB
    Downloads
    129 downloads
    File license
    Public domain

Reply 32 of 1052, by Maelgrum

User metadata
Rank Member
Rank
Member
Kahenraz wrote on 2022-03-21, 18:20:

It would be amazing if this can be used to fix DSP bugs found in chips on the less desirable Sound Blasters.

This is a way for deep Sound Blaster understanding - all undocumented commands, all bugs. Emulation of SB can be perfect ! ))
Or it can be a way for hardware replica's.

All glory to Malice (forums.bannister.org), who made almost all of this dumps.

Reply 33 of 1052, by RetroGamer4Ever

User metadata
Rank Oldbie
Rank
Oldbie

Unless you are in Singapore, it's not likely that you will ever get in touch with anyone from Creative Labs and be able to open a dialogue about older products they no longer sell. They are still working on DSPs and software, but I don't think they give a damn about any of their older products, as the ones they still sell are without support anymore and they have exited the internal soundcard market completely, in favor of external DAC/USB sound-chip products that don't have the functionality any of us want or need.

Reply 34 of 1052, by maxtherabbit

User metadata
Rank l33t
Rank
l33t
Maelgrum wrote on 2022-03-21, 17:53:
see attachment: ct1741_v405-d.bin ct1741_v411-d.bin ct1741_v413-d.bin […]
Show full quote
maxtherabbit wrote on 2022-01-06, 03:57:

I've got a SB16 with what I believe is a damaged CT1741 chip. Any progress with extracting the DSP firmware? I'd love to be able to burn a new Intel 80C52 with some code and make a replacement

see attachment:
ct1741_v405-d.bin
ct1741_v411-d.bin
ct1741_v413-d.bin

is decrypted firmware for CT1741. You can try to burn ))

Awesome!! I got a 89C52 to try this with - should I try to burn the encrypted or decrypted binary?

Reply 36 of 1052, by Horun

User metadata
Rank l33t++
Rank
l33t++
maxtherabbit wrote on 2022-09-25, 19:21:

it works! burned the decrypted binary to a AT89C52
20220925_142444.jpg

Good work Max ! Which DSP version did you use ? 4.05?

Hate posting a reply and then have to edit it because it made no sense 😁 First computer was an IBM 3270 workstation with CGA monitor. Stuff: https://archive.org/details/@horun

Reply 37 of 1052, by pentiumspeed

User metadata
Rank l33t
Rank
l33t
maxtherabbit wrote on 2022-09-25, 19:21:

it works! burned the decrypted binary to a AT89C52
20220925_142444.jpg

Excellent!! Next step is to document the binary fully and fix it right and donate this to creative with a creative pun on their bugs and make sure the binary is online so creative cannot stop that, I was waiting for long time till now.

On other hand, I'm not sure if hardmpu and other MPU card receation is done properly. I.E. all sounds off command done right?

Cheers,

Great Northern aka Canada.

Reply 39 of 1052, by maxtherabbit

User metadata
Rank l33t
Rank
l33t
Horun wrote on 2022-09-25, 22:10:
maxtherabbit wrote on 2022-09-25, 19:21:

it works! burned the decrypted binary to a AT89C52
20220925_142444.jpg

Good work Max ! Which DSP version did you use ? 4.05?

Yes, 4.05 decrypted